On Sat, Feb 24, 2018 at 1:44 AM, Joao De Almeida Pereira < jdealmeidapere...@pivotal.io> wrote:
> Hi Hackers, > After the removal of the Webkit environment we gave a shot to add electron > as our runtime environment. We were able to do it with some degree of > success. > The links to get a version running with electron are: > Windows: https://storage.googleapis.com/pgadmin- > binaries/releases/pgAdmin%204%20Setup%203.0.0.exe > Mac: https://storage.googleapis.com/pgadmin-binaries/releases/pgAdmin%204- > 3.0.0.dmg > Ubuntu: https://storage.googleapis.com/pgadmin- > binaries/releases/pgAdmin4_3.0.0_amd64.deb > RPM: https://storage.googleapis.com/pgadmin-binaries/releases/pgAdmin4-3. > 0.0.x86_64.rpm > > After successful installation on my Ubuntu machine, the app couldn't started. > What did we accomplish: > - Use Electron as a runtime and packaging solution for the application > - Support opening new windows when the preferences ask for them > - Make the application generally work > - Use Chrome as a default browser for the application > - Building scripts for all platforms using `yarn`, please review Readme > - The packaged Python version is 3.6 to Mac and Linux, and 3.4 to Windows > - In our point of view it is a simpler way to generate the installers > > Work in progress: > - No random port for the server, so you can only start 1 instance per > machine > - Tab support, there is no native support for tabs in Electron. It is > possible to do that, and eventually you will see a option in the menu to > create a new tab, but for this PoC we decided to disable the creation of > tabs. Tabs need to be implemented using HTML and cannot be ripped of from > the current window, like in Chrome > - Did not test in CentOS, but tested in Ubuntu and it is working (We > tried but the electron required GLIBC 2.25 that was not on the version of > CentOS that we had) > - In Linux despite the fact that we close the window, the application is > still running and need to be killed by hand > - We didn't test Debigger opening in new window > - Loading screen has no reference to pgAdmin > - No logging file for the runtime > - Windows we are using python 3.4 and using prior version of psycopg2 > 2.5.6 and pycrypto 2.6.1 (The version of psycopg2 is not the correct one, > this is because we couldn't find a precompile version of psycopg2) > - This is just a spike and the code looks pretty messy. This need to be > changed in order to make it more readable and have some tests around it > > Please give it a try and let us know what you think about it. If you find > any problem let us know as well. > This is just a Proof Of Concept, where the majority of the application > should be running correctly but there might be some glitches, > > You can find the code in: https://github.com/greenplum-db/pgadmin4/tree/ > electron-over-master > Readme: https://github.com/greenplum-db/pgadmin4/blob/ > electron-over-master/electron/README.md > > Thanks > Joao >