public inbox for [email protected]
help / color / mirror / Atom feedFrom: Dave Page <[email protected]>
To: Sarah McAlear <[email protected]>
Cc: George Gelashvili <[email protected]>
Cc: Surinder Kumar <[email protected]>
Cc: Ashesh Vashi <[email protected]>
Cc: Shruti B Iyer <[email protected]>
Cc: Joao Pedro De Almeida Pereira <[email protected]>
Cc: Murtuza Zabuawala <[email protected]>
Cc: pgadmin-hackers <[email protected]>
Subject: Re: [pgadmin-hackers] [pgAdmin4] [PATCH] History Tab rewrite in React
Date: Wed, 21 Jun 2017 15:38:36 +0100
Message-ID: <CA+OCxox=EXYk4GcAhTMtrDf83KSk=4ugkXU30syJfwvhuXhmZw@mail.gmail.com> (raw)
In-Reply-To: <CAGRPzo897rVzpzJT4yhPS4YGMFuGKy3RUWd3175YC=sfKVDOwQ@mail.gmail.com>
References: <CAFS4TJYDRi6fs+wrhkj89gFe3xaFOkoApCK+AU2O4DfU2XfXog@mail.gmail.com>
<CAKKotZQSTtJVkBKMeFi9vTrPugBEbEE38dhbbn-hr+hpd0Qzbw@mail.gmail.com>
<CA+OCxowChMtZzaSwrG5Sganh4LiMQcgL7BpoqhTxZga30DqDXw@mail.gmail.com>
<CAKKotZRmvbScMdUtjMgUJdRe-EXaqDoDbYBxrMZrkbVDVR_iUg@mail.gmail.com>
<CA+OCxow3e=q9w_e=Kkw1ebZJ82EM8RyFmiTaXihdqhX6HbzZhw@mail.gmail.com>
<CAFS4TJapVubRP_BK01GwYjfN7zpaTbCMX+CROC4mV93aL08DOg@mail.gmail.com>
<CA+OCxozPDpP_5zdLjOSQhiGHgzE-QDsFv8-WyC8-XTxf5+uSJg@mail.gmail.com>
<CAE+jjakzXbzvtai0Z2q0bXfecMhDzZwtn+p8mQwV7kfRGPON_Q@mail.gmail.com>
<CA+OCxoxkM--KjFWt7FkJm+mrL5sA9jdZ59YN7=n=2ZMrkH8iSg@mail.gmail.com>
<CAFS4TJaZA0U_BtiUBdx1jT6Z5bQzMQbjhwrjimDLgfkTb=gWJg@mail.gmail.com>
<CAE+jjakrsf7f41LyCy6BWvjrsH9FyKK98koO0MgUkR0qmbk-uw@mail.gmail.com>
<CA+OCxoxH+5gAjw17rWQb-jqNBeQGgOs4Q=GZ7KEwdmGHOQrsBw@mail.gmail.com>
<CAHowoHZJtKn8F9XuiK2yFT=_OcgG7Ctx83iiFab17PwexajfDQ@mail.gmail.com>
<CA+OCxozz7pbMQi_h-USovgwA2XkVzpeAUuK-zcro4La-_KjgtA@mail.gmail.com>
<CAFS4TJYRuaRkHguU_BkMAa4vv7Xy_aa37B4M4HSbJ0h2QpmcFA@mail.gmail.com>
<CA+OCxozdD8_4uyu9f+CJTjtH0x8bcKoeNMtRDcSHXSKStAPwbQ@mail.gmail.com>
<CAE+jjakmryMDovhh+OMsw=FSTj5W62CuhbdQS4WpjcLSs9jO4g@mail.gmail.com>
<CAM5-9D-wS-9qwMwvpUCwc8s=KumY+k8pkM7tOt1eysuFvq3n-w@mail.gmail.com>
<CAFS4TJZtCDqoenHREPC7PEopwYVyPGUh0_9WtxQKNV2w_WLAjw@mail.gmail.com>
<CAM5-9D9cm88KaiNjAwyNQG7+0FNxcAEJ6xaWTS9+pJ-6uLLTWQ@mail.gmail.com>
<CAGRPzo-byoSsREPZxJ-bEbse2c2emFF5UMD=SGCJHWduk8kiCA@mail.gmail.com>
<CA+OCxox3vW4dpK5w9LuL=axXpp_xR5V14oLbGYoe4N9zSOP3dA@mail.gmail.com>
<CAHowoHa-xGTQgckQC431jusaHD2Eg3S0KCrn24yt9uiS0ow7bA@mail.gmail.com>
<CA+OCxoy3gVbGiPL3hi250Ya0qMOURYOERH5XxYrnrt2Co2v-xw@mail.gmail.com>
<CAHowoHZFkDQrMO0-e2gx3ffo3kB56Qwb3jT2S1M7Sc8Bpo0Usw@mail.gmail.com>
<CA+OCxoxtxBO-mWfUokBu1WG8VH4E6MrHj16mrKT=L0svYvKfGg@mail.gmail.com>
<CACrUwhJ_YXJuZGbBrMKrCTq5qQ3JJ8zrpTu_fauOC1KXcmADNg@mail.gmail.com>
<CA+OCxowHBoAMBE9Np--JupNneYGe__=4Zwm2JMSPGD2U6=S2Lg@mail.gmail.com>
<CACrUwhJdAefbqff7VT8E6WR=+SZH-JcomH4DbVA_nwwaO1672A@mail.gmail.com>
<CA+OCxozwJsocmphyejzF1iMSJR7+h5bYzwT4GFDRcf7qtFQ_2g@mail.gmail.com>
<CA+OCxoyodd+KC85ZhirkhAeqGpx8iBE2niHp48oe39x-xoDrAw@mail.gmail.com>
<CACrUwhKPtLNc-J1uXE1eOZjrtRnTtqo_7YpZThNauvgw=HSwJQ@mail.gmail.com>
<CA+OCxowLGDK6zZR3sPRcW28FCQ5zKQT6KXR=fvSLfMQYYe4-ZQ@mail.gmail.com>
<CA+OCxoyc1FbDytDT87Ti80Zw0=KxOScn9DK93KpOYR5Er7=RXQ@mail.gmail.com>
<CAG7mmoyCYSqQOqfUyzMfd7jmQf0k6Q1w-8bKbgMQhriaoNV5kg@mail.gmail.com>
<CA+OCxoxBYQLPvEWWYHitgieR=o26qtAbLAtcVmD4Uoom79PNAQ@mail.gmail.com>
<CAM5-9D8OV8VHy15fWtMXRdqu8uv4+J3LBK1p0eYBeT0aG-z3Pg@mail.gmail.com>
<CA+OCxoxJJMZ3tzqFnAQ=EL+07USakio5Hp4PbiaL4hJrgF0+Mg@mail.gmail.com>
<CAM5-9D9ATPWydO8mrzOQMakRXq86fvMqaXPG1ddxYmEhpE79LA@mail.gmail.com>
<CA+OCxozzaXo6NU+41CUPrgCkZk-pjN6k_VtewD8Ya3bb+_f_nQ@mail.gmail.com>
<CAHowoHbcOZviGVDvu1zzsaeH0EYNq+t-pUo3cba=V8FFCaUikg@mail.gmail.com>
<CA+OCxoyatuVJQJyJtCVcqk2D2r+za+E_jQS_PHxjLB8Ne-FGUw@mail.gmail.com>
<CAGRPzo897rVzpzJT4yhPS4YGMFuGKy3RUWd3175YC=sfKVDOwQ@mail.gmail.com>
List-Unsubscribe: <https://lists.postgresql.org/manage/>, <mailto:[email protected]>
Hi
On Wed, Jun 21, 2017 at 3:23 PM, Sarah McAlear <[email protected]> wrote:
> Hello!
>
> Thank you for committing the patch!
>
> We are currently looking into CEF
> (https://bitbucket.org/chromiumembedded/cef) as an alternative to QTWebKit.
> So far it looks promising. It works on all platforms. It is the base for
> Google Chrome, so it should be maintained for some time to come. Version 60
> is currently in development. At this point we are developing a prototype for
> Mac as a proof of concept. We will keep you posted as we go.
Cool - we looked at CEF before, but...
> We are able to launch the server in one terminal and launch our browser app
> in another and use pgAdmin from that app.
... if memory serves, the problem we found was that on Windows it's
built using VC++ 2015, which doesn't play nicely with Python which
uses 2013 (as do the PostgreSQL utilities). Moving everything to 2015
would be non-trivial to say the least.
> It would be useful to have a framework to follow to decide what library will
> be used to support pgAdmin in the future. What metrics are you currently
> using? What data should we collect on prototypes in order to help the
> selection process?
Oh, it's highly scientific :-p. As the biggest issue between the
options is finding one which will work with our set of dependencies,
and supports new windows/tearable tabs (if it were no longer to be
embedded in our runtime), it's really down to:
- Getting a startup time of ~20 seconds or less in my test VM and on
my 16GB i7 SSD based desktop under Windows 10
- Ensuring that node expansion/load times are basically instant with a
local database server.
> Thanks!
> João & Sarah
>
> On Wed, Jun 21, 2017 at 6:37 AM, Dave Page <[email protected]> wrote:
>>
>> Hi George
>>
>> On Tue, Jun 20, 2017 at 10:29 PM, George Gelashvili
>> <[email protected]> wrote:
>> > We learned that the underlying issue was related to react-dom's
>> > SyntheticEvent.augmentClass function being undefined.
>> >
>> > This seems to be caused by attempted property assignment after the
>> > SyntheticEvent had been replaced by a Proxy of itself. This works fine
>> > in
>> > Chromium et al, but QtWebKit doesn't deal with Proxy Event objects well.
>> > Moving the augmentClass definition and assignment up above the Proxy
>> > stuff
>> > resolves the issue in a PR to React:
>> > https://github.com/facebook/react/pull/10011
>> >
>> > This has a decent chance of being rejected, as QtWebKit appears to be
>> > losing
>> > support.
>> >
>> > While and if this is being sorted out, we vendorized React, as one does.
>> > Here are patches on the version we were using previously, and the fix
>> > from
>> > the above PR.
>>
>> Thanks - committed.
>>
>> > We started talking to some Pivotal folks about QtWebKit to see if we can
>> > fix
>> > the Proxy Event issue in the browser.
>> > We are also looking into replacements for QtWebKit.
>>
>> Yeah, so here's the current state of play there:
>>
>> - Some major Linuxes don't seem to have added QtWebEngine to their
>> packages yet.
>>
>> - QtWebEngine has multiple issues under Windows; it's *very* slow, and
>> doesn't play nicely with some graphics cards and Remote Desktop.
>>
>> - QtWebKit (official) has rendering issues, and has been deprecated by Qt.
>>
>> - QtWebKit (annulen) fixes the rendering issues, and generally works
>> well, but is very slow on Windows (though not as bad as QtWebEngine).
>>
>> - QtWebKit (annulen) is a fork, which may or may not live for long.
>> It's also still quite far behind the latest WebKit code.
>>
>> - ActiveQt is looking extremely promising on Windows, embedding IE as
>> the browser. It's speed is on par with QtWebKit on Mac. We're
>> currently working on handling multiple tabs/windows and sharing
>> cookies between them.
>>
>> - Electron and Node-Webkit are performant options, but don't support
>> tabs, and may not even support multiple windows in the same session.
>>
>> Neel is currently working on the ActiveQt option for Windows. I've
>> been very impressed by its speed, and of course, JS support is per the
>> installed version of IE. If that pans out, we could potentially move
>> back to QtWebEngine on Linux/Mac (where the latest versions may well
>> be improved), and use ActiveQt on Windows, thus dropping WebKit
>> altogether.
>>
>> Another option would be to help get the annulen QtWebKit port up to
>> par; fix the performance issues on Windows, and get it up to the
>> latest WebKit code. That seems like it would take much more work, and
>> I don't think our team has the capacity for that. If yours does, then
>> it's certainly worth exploring.
>>
>> Ashesh is also planning to spend a little more time looking more
>> deeply at Electron/Node-Webkit as well as other options, once he's
>> finished his current work.
>>
>> Other thoughts/experiences are definitely welcome.
>>
>> --
>> Dave Page
>> Blog: http://pgsnake.blogspot.com
>> Twitter: @pgsnake
>>
>> EnterpriseDB UK: http://www.enterprisedb.com
>> The Enterprise PostgreSQL Company
>
>
--
Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake
EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise PostgreSQL Company
view thread (45+ messages)
reply
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: [email protected]
Cc: [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected]
Subject: Re: [pgadmin-hackers] [pgAdmin4] [PATCH] History Tab rewrite in React
In-Reply-To: <CA+OCxox=EXYk4GcAhTMtrDf83KSk=4ugkXU30syJfwvhuXhmZw@mail.gmail.com>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox