Re: PATCH: pgAdmin4 windows installer

From: Dave Page <dpage(at)pgadmin(dot)org>
To: Paresh More <paresh(dot)more(at)enterprisedb(dot)com>
Cc: pgadmin-hackers <pgadmin-hackers(at)postgresql(dot)org>, Sandeep Thakkar <sandeep(dot)thakkar(at)enterprisedb(dot)com>, Hamid Quddus <hamid(dot)quddus(at)enterprisedb(dot)com>
Subject: Re: PATCH: pgAdmin4 windows installer
Date: 2016-05-26 13:43:05
Message-ID: CA+OCxoxXq2bWG+EQjMKDNH-we2VJcKzPGMub=SVVfjdfum+PHA@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgadmin-hackers

Hi

On Fri, May 20, 2016 at 9:33 AM, Paresh More <paresh(dot)more(at)enterprisedb(dot)com>
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<major> (added the
v, as <major> 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

In response to

Responses

Browse pgadmin-hackers by date

  From Date Subject
Next Message Dave Page 2016-05-26 14:27:09 pgAdmin 4 commit: s/domain-constraints/domain_constraints for consisten
Previous Message Murtuza Zabuawala 2016-05-26 13:35:14 PATCH: To fix an issue with port validation (pgAdmin4)