Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b5vZB-0001gn-Pk for pgadmin-hackers@arkaria.postgresql.org; Thu, 26 May 2016 13:43: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 1b5vZB-0004Yo-1n for pgadmin-hackers@arkaria.postgresql.org; Thu, 26 May 2016 13:43: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 1b5vZA-0004Yh-DE for pgadmin-hackers@postgresql.org; Thu, 26 May 2016 13:43:12 +0000 Received: from mail-ig0-x234.google.com ([2607:f8b0:4001:c05::234]) by magus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.84_2) (envelope-from ) id 1b5vZ5-0000GM-At for pgadmin-hackers@postgresql.org; Thu, 26 May 2016 13:43:11 +0000 Received: by mail-ig0-x234.google.com with SMTP id l10so47339284igk.0 for ; Thu, 26 May 2016 06:43:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=pgadmin-org.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc; bh=TH0Nzk3A41fw+XIV6ZFYKk05bLwE5BS/O1tDZeU++78=; b=B6fyvf8N7ZGUqkgUBACEvbqPle07OFFC3qLnwaN0WA9OH0BUVS3D9OqGQ3okbj14AI x3mXM1ro4rgMIBBaCdBdJ3jpuDAn6GzG4OLsiTix+iyljttROaG7a2XdyodicFSfYqXz o4kUmUR4v5dA5n+XUqkGPGXCxtVAFjh68TS9heD+FACOWbGBDdkEsCxCVzA8/nUZqD76 hoeOTXVQe01/h5g9sKUWEZ49l7sLDbjYVTrt9kMItUoN5SqDbz4YrzWASbeouZt3bna2 16w1UOQg1cEHPptrF4eryiZ5eX1yBcrbh57CpwVJsdaQYTyaXQ4/qb55+P5+Y8t5DZ20 Vgig== 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=TH0Nzk3A41fw+XIV6ZFYKk05bLwE5BS/O1tDZeU++78=; b=IDsSC+vRWfK33kEVr73jK/OH1c9SdW3hEa4PJpdLeCwzbGH3vtJHCDzVEprK1XgHx+ xSlE/Z5ICnWE0qXAaYoqCgSKSurj5XdDON1zmZf52tUVwfSz9xl/+7UKZKoMkNCcA8+8 RIVwKy2n3I9EXKZIAKmHebUWYVg30Thrl55gyGBBls9HFiP6Ytu+QK1BFp5q9MsEnOy7 GZm+eWsXC3iRFhVogUheAPv92iYvYKGSq0bcSWSc0CjwXSbQpyYUv+Dh9EbytGhGcDO4 PKPBL8U38A3udgCKLMj4aP11gH5toctr49rg5LDBE1NAAZRhXZb3DXGp3EOOXaCJTjG2 8ntQ== X-Gm-Message-State: ALyK8tIr5jtOeLJ09bowiYbgQaTFjICPlG1WKQK/6qXH9mvWSEUaMlg8spJR1IcE7xzBsbOvUtNxgSMy1xqVvw== MIME-Version: 1.0 X-Received: by 10.50.79.138 with SMTP id j10mr3245251igx.69.1464270185136; Thu, 26 May 2016 06:43:05 -0700 (PDT) Received: by 10.64.236.101 with HTTP; Thu, 26 May 2016 06:43:05 -0700 (PDT) In-Reply-To: References: Date: Thu, 26 May 2016 14:43:05 +0100 Message-ID: Subject: Re: PATCH: pgAdmin4 windows installer From: Dave Page To: Paresh More Cc: pgadmin-hackers , Sandeep Thakkar , Hamid Quddus Content-Type: multipart/alternative; boundary=089e0122ab743dbbd80533bef834 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 --089e0122ab743dbbd80533bef834 Content-Type: text/plain; charset=UTF-8 Hi On Fri, May 20, 2016 at 9:33 AM, Paresh More wrote: > Hello Dave. > > Attached are two patch for pgAdmin4-windows > > pgAdmin4_createDB.patch > - patch for pgAdmin4.py to autocreate database configuration if does not > exist. > - Now pgadmin.db would be not be bundled with installer, it would be > created if pgAdmin4.py is executed for the first time. > This is committed. > > *pgAdmin4_windows.patch* > - Environment variables once set will over ride the existing script > variables. > - Issue related to path with quotes are removed. > - New Readme.txt is added. > - Modified Error reporting. > - Python check was missing related to which requirement file it should > pick for creating private environment based on python version is also fixed. > Attached is an update to this patch, which modifies the following: - Avoids trashing a pre-existing config_local.py, and creates a very simple one in the staging directory. - Various tidy-ups of Make.bat. - Change the default path to %ProgramFiles%\pgAdmin 4\v (added the v, as on it's own looks weird) Please update further to address the following issues. I need this completed ASAP, thanks: - Make.bat should take a "clean" parameter, to cleanup all output it creates in normal mode. - The package name in the installer should be set from config.py as the version is. - I see the following error: error: [Error 183] Cannot create a file when that file already exists: 'build\\bdist.win32\\wheel\\importlib-1.0.3.data\\..' ---------------------------------------- Failed building wheel for importlib - And the following error: C:\Users\dpage\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\link.exe /DLL /nologo /INCREMENTAL:NO /LIBPATH:c:\python27\Libs /LIBPATH:c:\users\dpage\documents\pgadmin4\pkg\win32\release\ve_python\libs /LIBPATH:c:\users\dpage\documents\pgadmin4\pkg\win32\release\ve_python\PCbuild /LIBPATH:c:\users\dpage\documents\pgadmin4\pkg\win32\release\ve_python\PC\VS9.0 /LIBPATH:C:/PROGRA~1/PG/pg95/lib ws2_32.lib advapi32.lib secur32.lib libpq.lib shfolder.lib build\temp.win32-2.7\Release\psycopg\psycopgmodule.obj build\temp.win32-2.7\Release\psycopg\green.obj build\temp.win32-2.7\Release\psycopg\pqpath.obj build\temp.win32-2.7\Release\psycopg\utils.obj build\temp.win32-2.7\Release\psycopg\bytes_format.obj build\temp.win32-2.7\Release\psycopg\connection_int.obj build\temp.win32-2.7\Release\psycopg\connection_type.obj build\temp.win32-2.7\Release\psycopg\cursor_int.obj build\temp.win32-2.7\Release\psycopg\cursor_type.obj build\temp.win32-2.7\Release\psycopg\diagnostics_type.obj build\temp.win32-2.7\Release\psycopg\error_type.obj build\temp.win32-2.7\Release\psycopg\lobject_int.obj build\temp.win32-2.7\Release\psycopg\lobject_type.obj build\temp.win32-2.7\Release\psycopg\notify_type.obj build\temp.win32-2.7\Release\psycopg\xid_type.obj build\temp.win32-2.7\Release\psycopg\adapter_asis.obj build\temp.win32-2.7\Release\psycopg\adapter_binary.obj build\temp.win32-2.7\Release\psycopg\adapter_datetime.obj build\temp.win32-2.7\Release\psycopg\adapter_list.obj build\temp.win32-2.7\Release\psycopg\adapter_pboolean.obj build\temp.win32-2.7\Release\psycopg\adapter_pdecimal.obj build\temp.win32-2.7\Release\psycopg\adapter_pint.obj build\temp.win32-2.7\Release\psycopg\adapter_pfloat.obj build\temp.win32-2.7\Release\psycopg\adapter_qstring.obj build\temp.win32-2.7\Release\psycopg\microprotocols.obj build\temp.win32-2.7\Release\psycopg\microprotocols_proto.obj build\temp.win32-2.7\Release\psycopg\typecast.obj /OUT:build\lib.win32-2.7\psycopg2\_psycopg.pyd /IMPLIB:build\temp.win32-2.7\Release\psycopg\_psycopg.lib /MANIFESTFILE:build\temp.win32-2.7\Release\psycopg\_psycopg.pyd.manifest LINK : fatal error LNK1181: cannot open input file 'libpq.lib' error: command 'C:\\Users\\dpage\\AppData\\Local\\Programs\\Common\\Microsoft\\Visual C++ for Python\\9.0\\VC\\Bin\\link.exe' failed with exit status 1181 ---------------------------------------- Failed building wheel for psycopg2 %PGDIR% is set to: C:/Program Files (x86)/PostgreSQL/9.5, but note that /LIBPATH is including "C:/PROGRA~1/PG/pg95/lib". - As far as I can see, the Helpfiles are not built or bundled (talk to Sandeep about this) - No Start Menu icon is created. - Why is 3rd_party_licences.txt included? We don't need that. - pkg/win32/installer.iss should be added to a .gitignore file. - SplashScreen.bmp doesn't seem to be used (though it is referenced from the installer config file. - Running the app fails with the following (I suspect because of the psycopg2 issue above): --------------------------- Setup --------------------------- Unable to execute file: C:\Program Files (x86)\pgAdmin 4\v1\runtime\pgAdmin4.exe CreateProcess failed; code 2. The system cannot find the file specified. --------------------------- OK --------------------------- The only file in that directory is python27.dll. This is probably caused by this: fatal error LNK1112: module machine type 'x64' conflicts with target machine type 'X86' - The Add/Remove Programs entry text should be: "pgAdmin 4 v1", thus allowing v1.1 to be a bug-fix release, and 2.0 to be the next major version. - Any pre-existing pgadmin4.db is being shipped. - Any pre-existing *.pyc files are being shipped. -- Dave Page Blog: http://pgsnake.blogspot.com Twitter: @pgsnake EnterpriseDB UK: http://www.enterprisedb.com The Enterprise PostgreSQL Company --089e0122ab743dbbd80533bef834 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable
Hi

On Fri, May 20, 2016 at 9:33 AM, Paresh More <paresh.more= @enterprisedb.com> wrote:
Hello Dave.

Attached are two patch for pgAdmin4-window= s=C2=A0

pgAdmin4_createD= B.patch
- patch for=C2=A0pgAdmin4.py to autocreate database configuration if does not exist.= =C2=A0
- Now pgadmin.db would be not be=C2=A0bundled= =C2=A0with installer, it would be created if pgAdmin4.py is executed for th= e first time.

Thi= s is committed.
=C2=A0

pgAdmin4_windows.patch
- Envir= onment variables once set will over ride the existing script variables.
- Issue related to path with quotes are removed.
- New Rea= dme.txt is added.
- Modified Error reporting.
- Python = check was missing related to which requirement file it should pick for crea= ting private environment based on python version is also fixed.
=

Attached is an update to this patch, which= modifies the following:

- Avoids trashing a pre-e= xisting config_local.py, and creates a very simple one in the staging direc= tory.

- Various tidy-ups of Make.bat.
- Change the default path to %ProgramFiles%\pgAdmin 4\v<maj= or> (added the v, as <major> on it's own looks weird)

Please update further to address the following issues. I n= eed this completed ASAP, thanks:

- Make.bat s= hould take a "clean" parameter, to cleanup all output it creates = in normal mode.

- The package name in the installe= r should be set from config.py as the version is.

= - I see the following error:

=C2=A0 error: [Error = 183] Cannot create a file when that file already exists: 'build\\bdist.= win32\\wheel\\importlib-1.0.3.data\\..'

=C2=A0= ----------------------------------------
=C2=A0 Failed building = wheel for importlib
=C2=A0=C2=A0
- And the following er= ror:

=C2=A0 C:\Users\dpage\AppData\Local\Programs\= Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\link.exe /DLL /nologo /IN= CREMENTAL:NO /LIBPATH:c:\python27\Libs /LIBPATH:c:\users\dpage\documents\pg= admin4\pkg\win32\release\ve_python\libs /LIBPATH:c:\users\dpage\documents\p= gadmin4\pkg\win32\release\ve_python\PCbuild /LIBPATH:c:\users\dpage\documen= ts\pgadmin4\pkg\win32\release\ve_python\PC\VS9.0 /LIBPATH:C:/PROGRA~1/PG/pg= 95/lib ws2_32.lib advapi32.lib secur32.lib libpq.lib shfolder.lib build\tem= p.win32-2.7\Release\psycopg\psycopgmodule.obj build\temp.win32-2.7\Release\= psycopg\green.obj build\temp.win32-2.7\Release\psycopg\pqpath.obj build\tem= p.win32-2.7\Release\psycopg\utils.obj build\temp.win32-2.7\Release\psycopg\= bytes_format.obj build\temp.win32-2.7\Release\psycopg\connection_int.obj bu= ild\temp.win32-2.7\Release\psycopg\connection_type.obj build\temp.win32-2.7= \Release\psycopg\cursor_int.obj build\temp.win32-2.7\Release\psycopg\cursor= _type.obj build\temp.win32-2.7\Release\psycopg\diagnostics_type.obj build\t= emp.win32-2.7\Release\psycopg\error_type.obj build\temp.win32-2.7\Release\p= sycopg\lobject_int.obj build\temp.win32-2.7\Release\psycopg\lobject_type.ob= j build\temp.win32-2.7\Release\psycopg\notify_type.obj build\temp.win32-2.7= \Release\psycopg\xid_type.obj build\temp.win32-2.7\Release\psycopg\adapter_= asis.obj build\temp.win32-2.7\Release\psycopg\adapter_binary.obj build\temp= .win32-2.7\Release\psycopg\adapter_datetime.obj build\temp.win32-2.7\Releas= e\psycopg\adapter_list.obj build\temp.win32-2.7\Release\psycopg\adapter_pbo= olean.obj build\temp.win32-2.7\Release\psycopg\adapter_pdecimal.obj build\t= emp.win32-2.7\Release\psycopg\adapter_pint.obj build\temp.win32-2.7\Release= \psycopg\adapter_pfloat.obj build\temp.win32-2.7\Release\psycopg\adapter_qs= tring.obj build\temp.win32-2.7\Release\psycopg\microprotocols.obj build\tem= p.win32-2.7\Release\psycopg\microprotocols_proto.obj build\temp.win32-2.7\R= elease\psycopg\typecast.obj /OUT:build\lib.win32-2.7\psycopg2\_psycopg.pyd = /IMPLIB:build\temp.win32-2.7\Release\psycopg\_psycopg.lib /MANIFESTFILE:bui= ld\temp.win32-2.7\Release\psycopg\_psycopg.pyd.manifest
=C2=A0 LI= NK : fatal error LNK1181: cannot open input file 'libpq.lib'
<= div>=C2=A0 error: command 'C:\\Users\\dpage\\AppData\\Local\\Programs\\= Common\\Microsoft\\Visual C++ for Python\\9.0\\VC\\Bin\\link.exe' faile= d with exit status 1181

=C2=A0 -------------------= ---------------------
=C2=A0 Failed building wheel for psycopg2
=C2=A0=C2=A0
=C2=A0 %PGDIR% is set to: C:/Program Files = (x86)/PostgreSQL/9.5, but note that /LIBPATH is including "C:/PROGRA~1= /PG/pg95/lib".
=C2=A0=C2=A0
- As far as I can see,= the Helpfiles are not built or bundled (talk to Sandeep about this)
<= div>
- No Start Menu icon is created.

- Why is 3rd_party_licences.txt included? We don't need that.

- pkg/win32/installer.iss should be added to a .gitignore= file.

- SplashScreen.bmp doesn't seem to be u= sed (though it is referenced from the installer config file.

=
- Running the app fails with the following (I suspect because of= the psycopg2 issue above):

----------------------= -----
Setup
---------------------------
Unabl= e to execute file:
C:\Program Files (x86)\pgAdmin 4\v1\runtime\pg= Admin4.exe

CreateProcess failed; code 2.
The system cannot find the file specified.
---------------------= ------
OK =C2=A0=C2=A0
---------------------------

The only file in that directory is python27.dll. This = is probably caused by this:

fatal error LNK1112: m= odule machine type 'x64' conflicts with target machine type 'X8= 6'

- The Add/Remove Programs entry text should= be: "pgAdmin 4 v1", thus allowing v1.1 to be a bug-fix release, = and 2.0 to be the next major version.

- Any pre-ex= isting pgadmin4.db is being shipped.

- Any pre-exi= sting *.pyc files are being shipped.

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

EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise Postgr= eSQL Company
--089e0122ab743dbbd80533bef834--