Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b8qGj-0000Ln-Qe for pgadmin-hackers@arkaria.postgresql.org; Fri, 03 Jun 2016 14:40:14 +0000 Received: from localhost ([127.0.0.1] helo=postgresql.org) by malur.postgresql.org with smtp (Exim 4.84_2) (envelope-from ) id 1b8qGj-000323-1q for pgadmin-hackers@arkaria.postgresql.org; Fri, 03 Jun 2016 14:40:13 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1b8qGi-00030u-AC for pgadmin-hackers@postgresql.org; Fri, 03 Jun 2016 14:40:12 +0000 Received: from mail-qg0-x22d.google.com ([2607:f8b0:400d:c04::22d]) by magus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.84_2) (envelope-from ) id 1b8qGY-0007JI-7b for pgadmin-hackers@postgresql.org; Fri, 03 Jun 2016 14:40:11 +0000 Received: by mail-qg0-x22d.google.com with SMTP id q32so12566358qgq.3 for ; Fri, 03 Jun 2016 07:40:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=enterprisedb-com.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc; bh=r8ToFQItfbP8A5gvf+YRuKJiy97D/hPyMKlZ+cqBeXk=; b=GQWerzb/8+Z7YSP5WR5EB6UK+MrLO5dJOsr2e3XxE+WG/By0laMlhlvr8EncMIQphi HhnuY0dplXqAE4A9m02ZU+lkSrpevipTqbwG0M6l4WT9Bo7am7AAlxc8sor8Yh/bW+St 65OAt8i2SNoPk2lu3KAtXvDtaIz29gxHDepFdobwD4nDrLHgCU1QJhhtqucE+pMqgR88 t4Tr5XF4gk6C1pKlq7QzoX5tnUQONy3i6l24n2QDrdoeVlLX/6DinHkYGrp3D1suv8gl 29ClOPont95Db6a/wvT1FlT+swm3Ccp93NyLMrJDDy7z6h5/7iOaljoz/LU0ODPgl8sh rT7w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc; bh=r8ToFQItfbP8A5gvf+YRuKJiy97D/hPyMKlZ+cqBeXk=; b=c12ujF7LGq37GkDaec58vG9l6JUf9/K3qwFYa/G3PK9R3i7MdE5FsUpqF6CzO/yHyP UNtez1VUcineUr2s6YSxInaP69UmEbe2gUpvrUpJ+Bf1s8+Kt8csWUc8uK4IKYEMVyms B3e8Qk71MxdtVmENpVs8UJoyVRwMSj0AeKu08CIJVySE5qR0/t3MV0rlJ5bmnbzLuvrv bxDrpim/z1rL6EDUYrHRJ9Oh5mLkX3aPkNihbqwxxm/lUoWeQ3alDHc/ys0KGlZ2xxZv C+v4wx5+x7gOKNjvRURJUzfhedrNiR2UH4SUft1E19+mlp+o2RPSV29PPrJHHJVlHROz 9iOQ== X-Gm-Message-State: ALyK8tKpjn/3N3evGdp68h4t0YZadGLhmoza6AThw8PlS7XveucQC/gQmvzGTLwJ+DhMPrk8wv0Za98O6rirKCW4 MIME-Version: 1.0 X-Received: by 10.140.21.164 with SMTP id 33mr3439465qgl.80.1464964800095; Fri, 03 Jun 2016 07:40:00 -0700 (PDT) Received: by 10.140.101.198 with HTTP; Fri, 3 Jun 2016 07:39:59 -0700 (PDT) In-Reply-To: References: Date: Fri, 3 Jun 2016 20:09:59 +0530 Message-ID: Subject: Re: Patch for pgAdmin4 RPM package From: Sandeep Thakkar To: Dave Page Cc: pgadmin-hackers , Hamid Quddus , =?UTF-8?B?RGV2cmltIEfDnE5Ew5xa?= Content-Type: multipart/alternative; boundary=001a11c13aca84becf053460b282 X-Pg-Spam-Score: -2.6 (--) List-Archive: List-Help: List-ID: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: X-Mailing-List: pgadmin-hackers Precedence: bulk Sender: pgadmin-hackers-owner@postgresql.org --001a11c13aca84becf053460b282 Content-Type: text/plain; charset=UTF-8 Do you mean to say when a python app is launched, it imports some modules automatically and in that sense it knows about where it's site-packages are? May be, but how the pgAdmin4 runtime will know where the Web App is installed? The changes that I have done to the runtime is to let it know the path of the Web App which is present in "/site-packages/pgadmin4-web-v1/pgAdmin4.py" The changes done are not to set the PythonPath like we did for appbundle because I thought it is not needed and it will automatically load the modules from the site-packages, but it is to set the ApplicationPath. I missed something? or misunderstood something? On Fri, Jun 3, 2016 at 7:39 PM, Dave Page wrote: > Hi, > > Well, I have to wonder why we need the changes to the runtime? We're > linking the runtime with the same build of Python that's already on the > system - doesn't it know where it's site-packages are already? I could see > us needing this is we were using a distro-independent build of Python and > wanted to find the OS site-packages location, but we're not. > > > On Fri, Jun 3, 2016 at 10:15 AM, Sandeep Thakkar < > sandeep.thakkar@enterprisedb.com> wrote: > >> Hi Dave, >> >> how about changes in the pgadmin4 source code for conf.py and Server.cpp? >> Looks okay? >> >> On Fri, Jun 3, 2016 at 2:41 PM, Sandeep Thakkar < >> sandeep.thakkar@enterprisedb.com> wrote: >> >>> Thanks Dave. >>> >>> On Fri, Jun 3, 2016 at 2:08 PM, Dave Page wrote: >>> >>>> Hi >>>> >>>> On Thu, Jun 2, 2016 at 4:23 PM, Sandeep Thakkar >>>> wrote: >>>> > Hi Devrim, Hi Dave, >>>> > >>>> > I have updated the patch. The earlier patch may fail because of app >>>> bundle >>>> > commit in git. >>>> > >>>> > For testing, you may define the source tarball location as : >>>> > Source0: >>>> > >>>> http://bugatti.pn.in.enterprisedb.com/temp/pgadmin4/%{name}-v%{version}.tar.gz >>>> > >>>> > Known issue that I'm still working on: >>>> > 1. web rpm has a dependency on doc. But, even if I install doc, the >>>> web >>>> > still complains. Here is the scenario: >>>> > [root@localhost tmp]# rpm -ivh >>>> > dist/noarch/pgadmin4-web-1.0_dev-1.rhel7.noarch.rpm >>>> > error: Failed dependencies: >>>> > pgadmin4-doc = 1.0_dev is needed by >>>> pgadmin4-web-1.0_dev-1.rhel7.noarch >>>> > ... ( trimmed the python dependencies list here...) >>>> > >>>> > [root@localhost tmp]# rpm -ivh >>>> > dist/noarch/pgadmin4-docs-1.0_dev-1.rhel7.noarch.rpm >>>> > Preparing... >>>> ################################# >>>> > [100%] >>>> > Updating / installing... >>>> > 1:pgadmin4-docs-1.0_dev-1.rhel7 >>>> ################################# >>>> > [100%] >>>> > >>>> > >>>> > [root@localhost tmp]# yum list | grep pgadmin4-docs >>>> > pgadmin4-docs.noarch 1.0_dev-1.rhel7 >>>> > installed >>>> > >>>> > >>>> > [root@localhost tmp]# rpm -ivh >>>> > dist/noarch/pgadmin4-web-1.0_dev-1.rhel7.noarch.rpm >>>> > error: Failed dependencies: >>>> > pgadmin4-doc = 1.0_dev is needed by >>>> pgadmin4-web-1.0_dev-1.rhel7.noarch >>>> >>>> You have a typo - the Requires line is for pgadmin4-doc, but the RPM >>>> is pgadmin4-docs. >>>> >>>> Oh, right. >>> >>> >>>> Other review comments: >>>> >>>> - We have multiple identical pgadmin4.spec.in's in the patch. We need >>>> to get that down to a single file. >>>> >>>> - In fact, why do we need a directory for each distro at all? As far >>>> as I can see, the only difference is the $DIST definition, which is >>>> surely something we can get programmatically very easily. It seems to >>>> me we could reduce this all to 3 files - Makefile, README and >>>> pgadmin4.spec.in >>>> >>>> Agree. I copied the structure from somewhere thinking this is good to >>> have more OS specific changes. >>> >>> >>>> - make rpm has a dependency on make prep. This has 2 issues as far as I >>>> can see: >>>> >>>> - It does a git pull, which is bad. If I'm making an RPM from within >>>> the source tree, I want it for the current source. The git pull only >>>> makes sense for external builds, i.e. in a much larger automated build >>>> system. >>>> >>>> - It goes and grabs the source code and patches from the FTP site. >>>> Again, this is not what I want for an "in-tree" build. I want to use >>>> the source code as I have it now. >>>> >>>> Okay. got it. Will remove downloading the tarballs and build the cloned >>> source. >>> >>> >>>> -- >>>> Dave Page >>>> Blog: http://pgsnake.blogspot.com >>>> Twitter: @pgsnake >>>> >>>> EnterpriseDB UK: http://www.enterprisedb.com >>>> The Enterprise PostgreSQL Company >>>> >>> >>> >>> >>> -- >>> Sandeep Thakkar >>> >>> >> >> >> -- >> Sandeep Thakkar >> Lead Software Engineer >> >> >> Phone: +91.20.30589505 >> >> Website: www.enterprisedb.com >> EnterpriseDB Blog: http://blogs.enterprisedb.com/ >> Follow us on Twitter: http://www.twitter.com/enterprisedb >> >> This e-mail message (and any attachment) is intended for the use of the >> individual or entity to whom it is addressed. This message contains >> information from EnterpriseDB Corporation that may be privileged, >> confidential, or exempt from disclosure under applicable law. If you are >> not the intended recipient or authorized to receive this for the intended >> recipient, any use, dissemination, distribution, retention, archiving, or >> copying of this communication is strictly prohibited. If you have received >> this e-mail in error, please notify the sender immediately by reply e-mail >> and delete this message. >> > > > > -- > Dave Page > Blog: http://pgsnake.blogspot.com > Twitter: @pgsnake > > EnterpriseDB UK: http://www.enterprisedb.com > The Enterprise PostgreSQL Company > -- Sandeep Thakkar Lead Software Engineer Phone: +91.20.30589505 Website: www.enterprisedb.com EnterpriseDB Blog: http://blogs.enterprisedb.com/ Follow us on Twitter: http://www.twitter.com/enterprisedb This e-mail message (and any attachment) is intended for the use of the individual or entity to whom it is addressed. This message contains information from EnterpriseDB Corporation that may be privileged, confidential, or exempt from disclosure under applicable law. If you are not the intended recipient or authorized to receive this for the intended recipient, any use, dissemination, distribution, retention, archiving, or copying of this communication is strictly prohibited. If you have received this e-mail in error, please notify the sender immediately by reply e-mail and delete this message. --001a11c13aca84becf053460b282 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable
Do you mean to say when a python app is launched, it impor= ts some modules automatically and in that sense it knows about where it'= ;s site-packages are? May be, but how the pgAdmin4 runtime will know where = the Web App is installed?=C2=A0

The changes that I have = done to the runtime is to let it know the path of the Web App which is pres= ent in "/site-packages/pgadmin4-web-v1/pgAdmin4.py" The changes d= one are not to set the PythonPath like we did for appbundle because I thoug= ht it is not needed and it will automatically load the modules from the sit= e-packages, but it is to set the ApplicationPath.

= I missed something? or misunderstood something?=C2=A0

On Fri, Jun 3, 2016 at = 7:39 PM, Dave Page <dpage@pgadmin.org> wrote:
Hi,

Well, I have to= wonder why we need the changes to the runtime? We're linking the runti= me with the same build of Python that's already on the system - doesn&#= 39;t it know where it's site-packages are already? I could see us needi= ng this is we were using a distro-independent build of Python and wanted to= find the OS site-packages location, but we're not.


On Fri, Jun 3, 2016 at 10:15 AM, Sandeep Thakkar <sandeep.thakkar@enterprisedb.com> wrote:
Hi Dave,=C2=A0

how abo= ut changes in the pgadmin4 source code for conf.py and Server.cpp? Looks ok= ay?

On Fri, Jun 3, 2016 at 2:41 PM, Sandeep Thakkar &= lt;sa= ndeep.thakkar@enterprisedb.com> wrote:
Thanks Dave.=C2=A0

On Fri, Jun 3, 2016 at 2:08 P= M, Dave Page <dpage@pgadmin.org> wrote:
Hi

On Thu, Jun 2, 2016 at 4:23 PM, Sandeep Thakkar
<s= andeep.thakkar@enterprisedb.com> wrote:
> Hi Devrim, Hi Dave,
>
> I have updated the patch. The earlier patch may fail because of app bu= ndle
> commit in git.
>
> For testing, you may define the source tarball location as :
> Source0:
> http://bu= gatti.pn.in.enterprisedb.com/temp/pgadmin4/%{name}-v%{version}.tar.gz >
> Known issue that I'm still working on:
> 1. web rpm has a dependency on doc. But, even if I install doc, the we= b
> still complains. Here is the scenario:
> [root@localhost tmp]# rpm -ivh
> dist/noarch/pgadmin4-web-1.0_dev-1.rhel7.noarch.rpm
> error: Failed dependencies:
> pgadmin4-doc =3D 1.0_dev is needed by pgadmin4-web-1.0_dev-1.rhel7.noa= rch
> ... ( trimmed the python dependencies list here...)
>
> [root@localhost tmp]# rpm -ivh
> dist/noarch/pgadmin4-docs-1.0_dev-1.rhel7.noarch.rpm
> Preparing...=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 #################################
> [100%]
> Updating / installing...
>=C2=A0 =C2=A0 1:pgadmin4-docs-1.0_dev-1.rhel7=C2=A0 =C2=A0 ############= #####################
> [100%]
>
>
> [root@localhost tmp]# yum list | grep pgadmin4-docs
> pgadmin4-docs.noarch=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 1.0_dev-1.rhel7
> installed
>
>
> [root@localhost tmp]# rpm -ivh
> dist/noarch/pgadmin4-web-1.0_dev-1.rhel7.noarch.rpm
> error: Failed dependencies:
> pgadmin4-doc =3D 1.0_dev is needed by pgadmin4-web-1.0_dev-1.rhel7.noa= rch

You have a typo - the Requires line is for pgadmin4-doc, but th= e RPM
is pgadmin4-docs.

Oh, right.
=C2=A0
Other review comments:

- We have multiple identical pgadmin4.spec.in's in the patch. We need=
to get that down to a single file.

- In fact, why do we need a directory for each distro at all? As far
as I can see, the only difference is the $DIST definition, which is
surely something we can get programmatically very easily. It seems to
me we could reduce this all to 3 files - Makefile, README and
pg= admin4.spec.in

Agree. I copied the structure from somewhere t= hinking this is good to have more OS specific changes.
=C2= =A0
- make rpm has a dependency on make prep. This has 2 issues as far as I can= see:

=C2=A0 - It does a git pull, which is bad. If I'm making an RPM from wi= thin
the source tree, I want it for the current source. The git pull only
makes sense for external builds, i.e. in a much larger automated build
system.

=C2=A0 - It goes and grabs the source code and patches from the FTP site. Again, this is not what I want for an "in-tree" build. I want to = use
the source code as I have it now.

Okay. got it. Will remov= e downloading the tarballs and build the cloned source.
=C2= =A0
--
Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake

EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise PostgreSQL Company


--
Sandeep Thakkar




-= -
Sandeep Thakkar
Lead Software Engineer


Phone: +91.20.30589505

Website: www.enterprisedb.com
EnterpriseDB Blog:
http://blogs.enterprisedb.com/
Follow us on Twitter: http://www.t= witter.com/enterprisedb

This e-mail message (and any attachment)= is intended for the use of the individual or entity to whom it is addresse= d. This message contains information from EnterpriseDB Corporation that may= be privileged, confidential, or exempt from disclosure under applicable la= w. If you are not the intended recipient or authorized to receive this for = the intended recipient, any use, dissemination, distribution, retention, ar= chiving, or copying of this communication is strictly prohibited. If you ha= ve received this e-mail in error, please notify the sender immediately by r= eply e-mail and delete this message.



--
Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @= pgsnake

EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise PostgreSQL= Company



--
Sandeep Thakkar
Lead Software Engineer


Phone: +91.20.30589505

Website: <= a href=3D"http://www.enterprisedb.com" target=3D"_blank">www.enterprisedb.c= om
EnterpriseDB Blog: http://blogs.enterprisedb.com/
Follow us on Twitter: = http://ww= w.twitter.com/enterprisedb

This e-mail message (and any attachme= nt) is intended for the use of the individual or entity to whom it is addre= ssed. This message contains information from EnterpriseDB Corporation that = may be privileged, confidential, or exempt from disclosure under applicable= law. If you are not the intended recipient or authorized to receive this f= or the intended recipient, any use, dissemination, distribution, retention,= archiving, or copying of this communication is strictly prohibited. If you= have received this e-mail in error, please notify the sender immediately b= y reply e-mail and delete this message.
--001a11c13aca84becf053460b282--