Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dKiyo-0000aG-8W for pgadmin-hackers@arkaria.postgresql.org; Tue, 13 Jun 2017 10:23:22 +0000 Received: from localhost ([127.0.0.1] helo=postgresql.org) by malur.postgresql.org with smtp (Exim 4.84_2) (envelope-from ) id 1dKiyn-00069e-LN for pgadmin-hackers@arkaria.postgresql.org; Tue, 13 Jun 2017 10:23:21 +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 1dKiyT-0005jP-Cx for pgadmin-hackers@postgresql.org; Tue, 13 Jun 2017 10:23:01 +0000 Received: from mail-it0-x234.google.com ([2607:f8b0:4001:c0b::234]) by magus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.84_2) (envelope-from ) id 1dKiyM-0007uD-UE for pgadmin-hackers@postgresql.org; Tue, 13 Jun 2017 10:23:00 +0000 Received: by mail-it0-x234.google.com with SMTP id l6so26330448iti.1 for ; Tue, 13 Jun 2017 03:22:54 -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:from:date:message-id:subject:to :cc; bh=URYzYOqFdRNFE29/IreRiRvc+LxvkiRV8V0dm7E9G8Q=; b=ww+9XGofDxeQm9tsA6YFaCPUoYwWiuAXDjy3+LjOU9MzxgUEVBvV3LXOwnLQfKpm4l WzFiYqUlVewgDQN3dVQ7ohxc2wCsl2AjDT67gVokp4UDu91NugjMkiuGQ0es19cpW8Oz f1HZe+xRSHObfUuRsxKVcdKDpx7D2dMuqXcMara0IU4L/D2IGa+kmIXQUHDUhn1qZFjM uZhDqAlv6hs1wqhFkF32//0P1LzGmaK8ChWqyTiRwxSVqTqBy1G29QDeFlur6Q23CSBY VRDD2EbbUNgvsxSsuc4fsZDikFGpK/eM28TFbXSn1OzHDQl1hR1b47cWe7ncpkUrwgwc uPKQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=URYzYOqFdRNFE29/IreRiRvc+LxvkiRV8V0dm7E9G8Q=; b=ooyLJPawV4WN7yaetTOWE7r2QP1cFSicGr4xVuRpiz7uNLljqakki08v447vK9hmif ymb+GsQwCTbCyZrE8ynwrammA/KvFGtyjicG3Kshlr5Ly4mQwiAYgImVyWHP2RKlcm1i WnPbgedl9TDQFXGlP3gr7fvXykzUSMukyE1lwkiejPFcDrADbQLg01FAp7xTpnNds6aj 5lxqPK+IG93lQRZq8EnS6SXKLxSo7uqHpBdhb1qmwhk90FWoqH5jF4k9c1gqU/BR7W++ 8evsl9vcGE2/X8Kmre/yL8g8AJLd1SMUjDx7cHZe947kFDSC3YfC3RBmJ4IQSQ1sfF/W TreA== X-Gm-Message-State: AODbwcDo3k45my7YPML8Df2R9y8wqx3BpzBshovJzn4aB+jWx4Ma+L3a HvaIgDw3vpfhg+dPC+vc2lsKMLOtaKqhGKM= X-Received: by 10.36.6.19 with SMTP id 19mr17035165itv.44.1497349373103; Tue, 13 Jun 2017 03:22:53 -0700 (PDT) MIME-Version: 1.0 Received: by 10.107.133.67 with HTTP; Tue, 13 Jun 2017 03:22:32 -0700 (PDT) In-Reply-To: References: From: Ashesh Vashi Date: Tue, 13 Jun 2017 15:52:32 +0530 Message-ID: Subject: Re: [pgAdmin4] [PATCH] History Tab rewrite in React To: Dave Page Cc: Shruti B Iyer , Surinder Kumar , Joao Pedro De Almeida Pereira , Murtuza Zabuawala , pgadmin-hackers Content-Type: multipart/alternative; boundary="001a113f7a767d269c0551d4d16c" 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 --001a113f7a767d269c0551d4d16c Content-Type: text/plain; charset="UTF-8" On Tue, Jun 13, 2017 at 2:47 PM, Dave Page wrote: > And then I find a problem. Sigh. > > When running in the desktop runtime, under QtWekKit (the forked, > updated version that is by far the best of the browser engines we've > used), we get the attached error at startup. I don't see this under > QtWebEngine, though as we've already found, that's not usable for > other reasons. > > Is this fixable? > As per 'http://qtwebkit.blogspot.in/2016/08/qtwebkit-im-back.html': " *WebKit engine itself has not been updated since Qt 5.2 release. That's why it didn't support recent changes in Web standards that happened after 2013, including: new JavaScript language standard ES2015 (also known as ES6), as well as improvements in DOM API and CSS.* *...* " Could this be a reason? -- Thanks, Ashesh > > On Tue, Jun 13, 2017 at 9:52 AM, Dave Page wrote: > > Hi > > > > On Mon, Jun 12, 2017 at 7:22 PM, Shruti B Iyer wrote: > >> Hi Dave, > >> > >> We regenerated the patch to add new tasks to package.json to compile > react > >> code for development and to not minimize it. This should fix the error > you > >> captured in the screenshot. > >> > >> The new task to lint and bundle everything for development is: > >> yarn run bundle:dev > >> > >> The new task only bundle everything is: > >> yarn run webpacker:dev > >> > >> We also changed the task test:feature to bundle without optimization > before > >> we start the tests. > >> > >> When we ran these commands in our machine, they did not display any > error. > >> Is it possible that you forgot to run yarn install before running the > >> webpacker task? We are asking this because the errors look like missing > node > >> packages. > > > > I did run an install, yes. This patch does work though, so applied - > thanks! > > > > Could you answer my earlier question about the need for the delay in > > app_starter.py please? > > > > Thanks. > > > >> On Mon, Jun 12, 2017 at 12:15 PM Dave Page wrote: > >>> > >>> To add to that; running the JS tests gives: > >>> > >>> ERROR in ./regression/javascript/history/query_history_entry_spec.jsx > >>> Module not found: Error: Can't resolve 'jasmine-enzyme' in > >>> '/Users/dpage/git/pgadmin4/web/regression/javascript/history' > >>> @ ./regression/javascript/history/query_history_entry_spec.jsx > 13:21-46 > >>> > >>> ERROR in ./pgadmin/static/jsx/history/query_history_entry.jsx > >>> Module not found: Error: Can't resolve 'immutability-helper' in > >>> '/Users/dpage/git/pgadmin4/web/pgadmin/static/jsx/history' > >>> @ ./pgadmin/static/jsx/history/query_history_entry.jsx 13:26-56 > >>> @ ./regression/javascript/history/query_history_entry_spec.jsx > >>> > >>> ERROR in ./pgadmin/static/jsx/history/query_history_entry.jsx > >>> Module not found: Error: Can't resolve 'moment' in > >>> '/Users/dpage/git/pgadmin4/web/pgadmin/static/jsx/history' > >>> @ ./pgadmin/static/jsx/history/query_history_entry.jsx 17:14-31 > >>> @ ./regression/javascript/history/query_history_entry_spec.jsx > >>> > >>> ERROR in ./regression/javascript/history/query_history_spec.jsx > >>> Module not found: Error: Can't resolve 'jasmine-enzyme' in > >>> '/Users/dpage/git/pgadmin4/web/regression/javascript/history' > >>> @ ./regression/javascript/history/query_history_spec.jsx 19:21-46 > >>> webpack: Failed to compile. > >>> PhantomJS 2.1.1 (Mac OS X 0.0.0) ERROR > >>> Error: Cannot find module "immutability-helper" > >>> at regression/javascript/history/query_history_entry_spec.jsx:30705 > >>> > >>> > >>> PhantomJS 2.1.1 (Mac OS X 0.0.0) ERROR > >>> Error: Cannot find module "immutability-helper" > >>> at regression/javascript/history/query_history_spec.jsx:30705 > >>> > >>> > >>> error Command failed with exit code 1. > >>> info Visit https://yarnpkg.com/en/docs/cli/run for documentation about > >>> this command. > >>> error Command failed with exit code 1. > >>> info Visit https://yarnpkg.com/en/docs/cli/run for documentation about > >>> this command. > >>> > >>> > >>> Also, while I think of it, why the addition of the delay to > >>> app_starter.py? > >>> > >>> > >>> On Mon, Jun 12, 2017 at 5:12 PM, Dave Page wrote: > >>> > Hi, > >>> > > >>> > So 01 and 02 are now committed :-). > >>> > > >>> > 03 has a couple of problems though (likely the same): > >>> > > >>> > - Running the webpacker results in: > >>> > > >>> > (pgadmin4)piranha:web dpage$ yarn run webpacker > >>> > yarn run v0.24.4 > >>> > $ yarn run webpack -- --optimize-minimize --config webpack.config.js > >>> > yarn run v0.24.4 > >>> > $ "/Users/dpage/git/pgadmin4/web/node_modules/.bin/webpack" > >>> > --optimize-minimize --config webpack.config.js > >>> > (node:19446) DeprecationWarning: loaderUtils.parseQuery() received a > >>> > non-string value which can be problematic, see > >>> > https://github.com/webpack/loader-utils/issues/56 > >>> > parseQuery() will be replaced with getOptions() in the next major > >>> > version of loader-utils. > >>> > Hash: a5e75aa70eb6b09bdb78 > >>> > Version: webpack 2.3.3 > >>> > Time: 3983ms > >>> > Asset Size Chunks Chunk Names > >>> > reactComponents.js 222 kB 0 [emitted] reactComponents > >>> > history.js 1.58 kB 1 [emitted] history > >>> > [0] /Users/dpage/git/pgadmin4/web/~/process/browser.js 5.42 kB > {0} > >>> > [built] > >>> > [18] /Users/dpage/git/pgadmin4/web/~/react-dom/lib/ > ReactReconciler.js > >>> > 6.21 kB {0} [built] > >>> > [19] /Users/dpage/git/pgadmin4/web/~/react/lib/React.js 2.69 kB > {0} > >>> > [built] > >>> > [31] /Users/dpage/git/pgadmin4/web/~/react/react.js 56 bytes {0} > >>> > [built] > >>> > [80] ./js/history/history_collection.js 1.91 kB {1} [built] > >>> > [81] ./jsx/history/query_history.jsx 3.65 kB {0} [built] > >>> > [82] /Users/dpage/git/pgadmin4/web/~/react-dom/index.js 59 bytes > {0} > >>> > [built] > >>> > [83] ./js/history/index.js 690 bytes {1} [built] > >>> > [84] ./jsx/components.jsx 599 bytes {0} [built] > >>> > [85] ./jsx/history/query_history_entry.jsx 5.21 kB {0} [built] > >>> > [113] /Users/dpage/git/pgadmin4/web/~/react-dom/lib/ReactDOM.js > 5.14 > >>> > kB {0} [built] > >>> > [175] /Users/dpage/git/pgadmin4/web/~/react/lib/ReactDOMFactories. > js > >>> > 5.53 kB {0} [built] > >>> > [176] /Users/dpage/git/pgadmin4/web/~/react/lib/ReactPropTypes.js > >>> > 15.8 kB {0} [built] > >>> > [177] /Users/dpage/git/pgadmin4/web/~/react/lib/ > ReactPureComponent.js > >>> > 1.32 kB {0} [built] > >>> > [178] /Users/dpage/git/pgadmin4/web/~/react/lib/ReactVersion.js 350 > >>> > bytes {0} [built] > >>> > + 167 hidden modules > >>> > > >>> > ERROR in ./jsx/history/query_history_entry.jsx > >>> > Module not found: Error: Can't resolve 'immutability-helper' in > >>> > '/Users/dpage/git/pgadmin4/web/pgadmin/static/jsx/history' > >>> > @ ./jsx/history/query_history_entry.jsx 13:26-56 > >>> > @ ./jsx/history/query_history.jsx > >>> > @ ./jsx/components.jsx > >>> > > >>> > ERROR in ./jsx/history/query_history_entry.jsx > >>> > Module not found: Error: Can't resolve 'moment' in > >>> > '/Users/dpage/git/pgadmin4/web/pgadmin/static/jsx/history' > >>> > @ ./jsx/history/query_history_entry.jsx 17:14-31 > >>> > @ ./jsx/history/query_history.jsx > >>> > @ ./jsx/components.jsx > >>> > error Command failed with exit code 2. > >>> > info Visit https://yarnpkg.com/en/docs/cli/run for documentation > about > >>> > this command. > >>> > error Command failed with exit code 1. > >>> > info Visit https://yarnpkg.com/en/docs/cli/run for documentation > about > >>> > this command > >>> > > >>> > > >>> > - If I try to run pgAdmin, I get a script error in the UI, and > console > >>> > output as attached (sorry for the screenshot, I've yet to find a good > >>> > way to copy/paste that info without losing the formatting). > >>> > > >>> > Thanks. > >>> > > >>> > > >>> > On Mon, Jun 12, 2017 at 3:53 PM, Shruti B Iyer > wrote: > >>> >> Hi Hackers, > >>> >> > >>> >> Attached are the updated patches that apply on top of master. > >>> >> > >>> >> Thanks, > >>> >> Shruti & Joao > >>> >> > >>> >> > >>> >> On Mon, Jun 12, 2017 at 10:44 AM Dave Page > wrote: > >>> >>> > >>> >>> Hi Shruti > >>> >>> > >>> >>> On Mon, Jun 12, 2017 at 3:24 PM, Shruti B Iyer > >>> >>> wrote: > >>> >>> > > >>> >>> > Hello Dave, > >>> >>> > > >>> >>> > Thanks for making those fixes and sharing them with us. We tried > >>> >>> > applying > >>> >>> > the patch and it looks like there are some missing file changes > from > >>> >>> > your > >>> >>> > patch that were present in ours, like the Make.bat file changes. > But > >>> >>> > we > >>> >>> > will > >>> >>> > add them when we send you the new patches. > >>> >>> > >>> >>> Hmm, I wonder if I missed them because I applied the patch in a sub > >>> >>> directory. > >>> >>> > >>> >>> > While trying to generate the new patches we realized some tests > are > >>> >>> > failing > >>> >>> > in master branch due to an internal server error: > >>> >>> > > >>> >>> > 2017-06-12 10:04:11,938: INFO werkzeug: 127.0.0.1 - - > [12/Jun/2017 > >>> >>> > 10:04:11] > >>> >>> > "GET /browser/table/sql/1/1/12669/2200/81920 HTTP/1.1" 500 - > >>> >>> > Traceback (most recent call last): > >>> >>> > File > >>> >>> > > >>> >>> > > >>> >>> > "/Users/pivotal/.pyenv/versions/2.7.10/envs/pgadmin/ > lib/python2.7/site-packages/flask/app.py", > >>> >>> > line 2000, in __call__ > >>> >>> > return self.wsgi_app(environ, start_response) > >>> >>> > File > >>> >>> > > >>> >>> > > >>> >>> > "/Users/pivotal/.pyenv/versions/2.7.10/envs/pgadmin/ > lib/python2.7/site-packages/flask/app.py", > >>> >>> > line 1991, in wsgi_app > >>> >>> > response = self.make_response(self.handle_exception(e)) > >>> >>> > File > >>> >>> > > >>> >>> > > >>> >>> > "/Users/pivotal/.pyenv/versions/2.7.10/envs/pgadmin/ > lib/python2.7/site-packages/flask/app.py", > >>> >>> > line 1567, in handle_exception > >>> >>> > reraise(exc_type, exc_value, tb) > >>> >>> > File > >>> >>> > > >>> >>> > > >>> >>> > "/Users/pivotal/.pyenv/versions/2.7.10/envs/pgadmin/ > lib/python2.7/site-packages/flask/app.py", > >>> >>> > line 1988, in wsgi_app > >>> >>> > response = self.full_dispatch_request() > >>> >>> > File > >>> >>> > > >>> >>> > > >>> >>> > "/Users/pivotal/.pyenv/versions/2.7.10/envs/pgadmin/ > lib/python2.7/site-packages/flask/app.py", > >>> >>> > line 1641, in full_dispatch_request > >>> >>> > rv = self.handle_user_exception(e) > >>> >>> > File > >>> >>> > > >>> >>> > > >>> >>> > "/Users/pivotal/.pyenv/versions/2.7.10/envs/pgadmin/ > lib/python2.7/site-packages/flask/app.py", > >>> >>> > line 1544, in handle_user_exception > >>> >>> > reraise(exc_type, exc_value, tb) > >>> >>> > File > >>> >>> > > >>> >>> > > >>> >>> > "/Users/pivotal/.pyenv/versions/2.7.10/envs/pgadmin/ > lib/python2.7/site-packages/flask/app.py", > >>> >>> > line 1639, in full_dispatch_request > >>> >>> > rv = self.dispatch_request() > >>> >>> > File > >>> >>> > > >>> >>> > > >>> >>> > "/Users/pivotal/.pyenv/versions/2.7.10/envs/pgadmin/ > lib/python2.7/site-packages/flask/app.py", > >>> >>> > line 1625, in dispatch_request > >>> >>> > return self.view_functions[rule.endpoint](**req.view_args) > >>> >>> > File > >>> >>> > > >>> >>> > > >>> >>> > "/Users/pivotal/.pyenv/versions/2.7.10/envs/pgadmin/ > lib/python2.7/site-packages/flask/views.py", > >>> >>> > line 84, in view > >>> >>> > return self.dispatch_request(*args, **kwargs) > >>> >>> > File > >>> >>> > "/Users/pivotal/workspace/pgadmin4/web/pgadmin/browser/ > utils.py", > >>> >>> > line 235, in dispatch_request > >>> >>> > return method(*args, **kwargs) > >>> >>> > File > >>> >>> > > >>> >>> > > >>> >>> > "/Users/pivotal/workspace/pgadmin4/web/pgadmin/browser/ > server_groups/servers/databases/schemas/tables/__init__.py", > >>> >>> > line 315, in wrap > >>> >>> > return f(*args, **kwargs) > >>> >>> > File > >>> >>> > > >>> >>> > > >>> >>> > "/Users/pivotal/workspace/pgadmin4/web/pgadmin/browser/ > server_groups/servers/databases/schemas/tables/__init__.py", > >>> >>> > line 2555, in sql > >>> >>> > data = self._formatter(did, scid, tid, data) > >>> >>> > File > >>> >>> > > >>> >>> > > >>> >>> > "/Users/pivotal/workspace/pgadmin4/web/pgadmin/browser/ > server_groups/servers/databases/schemas/tables/__init__.py", > >>> >>> > line 1081, in _formatter > >>> >>> > data = self._columns_formatter(tid, data) > >>> >>> > File > >>> >>> > > >>> >>> > > >>> >>> > "/Users/pivotal/workspace/pgadmin4/web/pgadmin/browser/ > server_groups/servers/databases/schemas/tables/__init__.py", > >>> >>> > line 663, in _columns_formatter > >>> >>> > column['attlen'] = matchObj.group(1) > >>> >>> > AttributeError: 'NoneType' object has no attribute 'group' > >>> >>> > > >>> >>> > Was this introduced in a previous patch? > >>> >>> > >>> >>> Yes, it looks like it. For some reason it's not failing on the > Jenkins > >>> >>> server though. I'll ask Khushboo to fix it. > >>> >>> > >>> >>> > We will recreate the patches and send them ASAP. > >>> >>> > >>> >>> Thanks! > >>> >>> > >>> >>> > Thanks > >>> >>> > Shruti & Joao > >>> >>> > > >>> >>> > On Mon, Jun 12, 2017 at 6:59 AM Dave Page > wrote: > >>> >>> >> > >>> >>> >> Hi > >>> >>> >> > >>> >>> >> OK, so Ashesh and I spend much of the morning on this. > >>> >>> >> > >>> >>> >> Patch 01 - Applied. > >>> >>> >> Patch 02: > >>> >>> >> > >>> >>> >> - karma.conf.js wouldn't patch; I've manually handled that. > >>> >>> >> - test-main.js wouldn't patch. The diff looked like it was > trying > >>> >>> >> to > >>> >>> >> empty it; I have removed it instead. > >>> >>> >> - The imports in pgAdmin4.py need to be made after the app root > is > >>> >>> >> added to the path. > >>> >>> >> - The JS bundler should be in pgadmin/utils, not pgadmin/tools > >>> >>> >> (which > >>> >>> >> is intended for plugin modules) > >>> >>> >> - The tests were failing following some changes Ashesh pushed > >>> >>> >> earlier > >>> >>> >> to add a client-side url_for function. > >>> >>> >> - pgAdmin4.py was attempting to run the bundler on every > startup. > >>> >>> >> I've > >>> >>> >> wrapped those called in "if config.DEBUG:" conditionals, as > >>> >>> >> typically > >>> >>> >> an installation for an end-user will be in a read-only > directory. > >>> >>> >> > >>> >>> >> We've fixed all of that in the attached patch. I'm not sure why > >>> >>> >> it's > >>> >>> >> so much bigger than yours. > >>> >>> >> > >>> >>> >> The following issues are outstanding; please take a look at > them: > >>> >>> >> > >>> >>> >> - There is no update to the Windows installer generation code > >>> >>> >> (needed > >>> >>> >> in 2 places unfortunately; Make.bat and Make-MinGW.bat). > >>> >>> >> > >>> >>> >> - The updates to the other packages call "yarn run webpacker" > which > >>> >>> >> is > >>> >>> >> an undefined target. > >>> >>> >> > >>> >>> >> I haven't looked at patch 03 yet, but Ashesh did tell me it > won't > >>> >>> >> apply for him. Patch 4 is also untested at this stage. > >>> >>> >> > >>> >>> >> If the issues above can be fixed, we can get patch 2 applied > then > >>> >>> >> move > >>> >>> >> on from there. > >>> >>> >> > >>> >>> >> I'll hold off on Harshal's patch for the Query Tool's load on > >>> >>> >> demand > >>> >>> >> to give you a chance to get this done. > >>> >>> >> > >>> >>> >> Thanks. > >>> >>> >> > >>> >>> >> On Sat, Jun 10, 2017 at 2:52 AM, George Gelashvili > >>> >>> >> wrote: > >>> >>> >> > Hi Dave, > >>> >>> >> > > >>> >>> >> > Our patch touches code also changed by the patches that were > >>> >>> >> > recently > >>> >>> >> > committed. > >>> >>> >> > That's likely what's causing this issue. We've rebased on top > of > >>> >>> >> > the > >>> >>> >> > new > >>> >>> >> > state of master. > >>> >>> >> > > >>> >>> >> > We had initially kept the yarn.lock .gitignored, but ran into > an > >>> >>> >> > issue > >>> >>> >> > rather early on where an upgraded dependency introduced a > >>> >>> >> > regression. > >>> >>> >> > Checking-in the yarn.lock provides the "know your dependency > >>> >>> >> > version" > >>> >>> >> > benefit of vendorizing code without vendorization's drawback > of > >>> >>> >> > having > >>> >>> >> > to > >>> >>> >> > manually manage your dependencies. > >>> >>> >> > > >>> >>> >> > It is safe to delete a yarn.lock before applying a patch, as > you > >>> >>> >> > are > >>> >>> >> > authoring master. It provides a history of the versions of > each > >>> >>> >> > dependency > >>> >>> >> > that were working at the point in time of the commit. By > >>> >>> >> > contrast, > >>> >>> >> > package.json provides approximate versions and leaves room for > >>> >>> >> > fixes/improvements by the dependency authors to be pulled in > as > >>> >>> >> > they > >>> >>> >> > become > >>> >>> >> > available. > >>> >>> >> > > >>> >>> >> > To run linter and tests: > >>> >>> >> > > >>> >>> >> > The tasks that Grunt used to manage are now defined as a set > of > >>> >>> >> > scripts > >>> >>> >> > in > >>> >>> >> > the package.json > >>> >>> >> > After applying the patches--which may require deleting > yarn.lock > >>> >>> >> > for > >>> >>> >> > the > >>> >>> >> > first patch--you should cd web && yarn install > >>> >>> >> > > >>> >>> >> > Then yarn test will run the linter, jasmine specs, and python > >>> >>> >> > tests > >>> >>> >> > including feature tests, in that order, exiting early if there > >>> >>> >> > are > >>> >>> >> > failures/errors. > >>> >>> >> > At the moment, the CheckForViewData test is failing on master > as > >>> >>> >> > well > >>> >>> >> > as > >>> >>> >> > in > >>> >>> >> > each of these patches; that should be resolved as RM2477. > >>> >>> >> > > >>> >>> >> > Thanks! > >>> >>> >> > George and Matt > >>> >>> >> > > >>> >>> >> > > >>> >>> >> > On Thu, Jun 8, 2017 at 9:15 AM, Dave Page > >>> >>> >> > wrote: > >>> >>> >> >> > >>> >>> >> >> Hi George > >>> >>> >> >> > >>> >>> >> >> On Wed, Jun 7, 2017 at 10:21 PM, George Gelashvili > >>> >>> >> >> wrote: > >>> >>> >> >> > Hi Dave, > >>> >>> >> >> > > >>> >>> >> >> > I split the linting out into an intermediate commit, and > >>> >>> >> >> > rebased > >>> >>> >> >> > on > >>> >>> >> >> > top > >>> >>> >> >> > of > >>> >>> >> >> > master. > >>> >>> >> >> > >>> >>> >> >> Unfortunately, it still doesn't apply: > >>> >>> >> >> > >>> >>> >> >> error: patch failed: web/regression/javascript/ > test-main.js:1 > >>> >>> >> >> error: removal patch leaves file contents > >>> >>> >> >> error: web/regression/javascript/test-main.js: patch does > not > >>> >>> >> >> apply > >>> >>> >> >> Checking patch web/regression/requirements.txt... > >>> >>> >> >> Checking patch web/webpack.config.js... > >>> >>> >> >> Checking patch web/webpack.test.config.js... > >>> >>> >> >> Checking patch web/yarn.lock... > >>> >>> >> >> error: web/yarn.lock: already exists in working directory > >>> >>> >> >> Applied patch .gitignore cleanly. > >>> >>> >> >> Applied patch Make.bat cleanly. > >>> >>> >> >> Applied patch README cleanly. > >>> >>> >> >> Applied patch pkg/mac/build.sh cleanly. > >>> >>> >> >> Applied patch pkg/pip/build.sh cleanly. > >>> >>> >> >> Applied patch pkg/src/build.sh cleanly. > >>> >>> >> >> Applied patch web/.eslintrc.js cleanly. > >>> >>> >> >> Applied patch web/karma.conf.js cleanly. > >>> >>> >> >> Applied patch web/package.json cleanly. > >>> >>> >> >> Applied patch web/pgAdmin4.py cleanly. > >>> >>> >> >> Applied patch web/pgadmin/static/jsx/components.jsx cleanly. > >>> >>> >> >> Applied patch web/pgadmin/tools/javascript/__init__.py > cleanly. > >>> >>> >> >> Applied patch web/pgadmin/tools/javascript/ > javascript_bundler.py > >>> >>> >> >> cleanly. > >>> >>> >> >> Applied patch web/pgadmin/tools/javascript/tests/__init__.py > >>> >>> >> >> cleanly. > >>> >>> >> >> Applied patch > >>> >>> >> >> web/pgadmin/tools/javascript/tests/test_javascript_bundler. > py > >>> >>> >> >> cleanly. > >>> >>> >> >> Applied patch web/regression/README cleanly. > >>> >>> >> >> Applied patch > >>> >>> >> >> web/regression/javascript/jasmine_capture_warnings_ > beforeall.js > >>> >>> >> >> cleanly. > >>> >>> >> >> Applied patch web/regression/requirements.txt cleanly. > >>> >>> >> >> Applied patch web/webpack.config.js cleanly. > >>> >>> >> >> Applied patch web/webpack.test.config.js cleanly. > >>> >>> >> >> > >>> >>> >> >> The second (lint update) patch is even worse, with > significant > >>> >>> >> >> number > >>> >>> >> >> change that just don't want to apply. > >>> >>> >> >> > >>> >>> >> >> Clearly yarn.lock needs to be removed from there repo. > >>> >>> >> >> > >>> >>> >> >> Once I can apply a version of this, how should I be running > the > >>> >>> >> >> linter > >>> >>> >> >> and the unit tests? > >>> >>> >> >> > >>> >>> >> >> -- > >>> >>> >> >> 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 > >>> >>> >> > >>> >>> >> -- > >>> >>> >> Sent via pgadmin-hackers mailing list > >>> >>> >> (pgadmin-hackers@postgresql.org) > >>> >>> >> To make changes to your subscription: > >>> >>> >> http://www.postgresql.org/mailpref/pgadmin-hackers > >>> >>> > >>> >>> > >>> >>> > >>> >>> -- > >>> >>> 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 > >>> > >>> > >>> > >>> -- > >>> 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 > > > > -- > Dave Page > Blog: http://pgsnake.blogspot.com > Twitter: @pgsnake > > EnterpriseDB UK: http://www.enterprisedb.com > The Enterprise PostgreSQL Company > > > -- > Sent via pgadmin-hackers mailing list (pgadmin-hackers@postgresql.org) > To make changes to your subscription: > http://www.postgresql.org/mailpref/pgadmin-hackers > > --001a113f7a767d269c0551d4d16c Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
On T= ue, Jun 13, 2017 at 2:47 PM, Dave Page <dpage@pgadmin.org> w= rote:
And then I find = a problem. Sigh.

When running in the desktop runtime, under QtWekKit (the forked,
updated version that is by far the best of the browser engines we've used), we get the attached error at startup. I don't see this under
QtWebEngine, though as we've already found, that's not usable for other reasons.

Is this fixable?
"
WebKit engine itself has not= been updated since Qt 5.2 release. That's why it didn't support re= cent changes in Web standards that happened after 2013, including: new Java= Script language standard ES2015 (also known as ES6), as well as improvement= s in DOM API and CSS.
...
"=C2=A0

Could this be a reason?

-- Thanks= , Ashesh

On Tue, Jun 13, 2017 at 9:52 AM, Dave Page <dpage@pgadmin.org> wrote:
> Hi
>
> On Mon, Jun 12, 2017 at 7:22 PM, Shruti B Iyer <siyer@pivotal.io> wrote:
>> Hi Dave,
>>
>> We regenerated the patch to add new tasks to package.json to compi= le react
>> code for development and to not minimize it. This should fix the e= rror you
>> captured in the screenshot.
>>
>> The new task to lint and bundle everything for development is:
>> yarn run bundle:dev
>>
>> The new task only bundle everything is:
>> yarn run webpacker:dev
>>
>> We also changed the task test:feature to bundle without optimizati= on before
>> we start the tests.
>>
>> When we ran these commands in our machine, they did not display an= y error.
>> Is it possible that you forgot to run yarn install before running = the
>> webpacker task? We are asking this because the errors look like mi= ssing node
>> packages.
>
> I did run an install, yes. This patch does work though, so applied - t= hanks!
>
> Could you answer my earlier question about the need for the delay in > app_starter.py please?
>
> Thanks.
>
>> On Mon, Jun 12, 2017 at 12:15 PM Dave Page <dpage@pgadmin.org> wrote:
>>>
>>> To add to that; running the JS tests gives:
>>>
>>> ERROR in ./regression/javascript/history/query_history_en= try_spec.jsx
>>> Module not found: Error: Can't resolve 'jasmine-enzyme= ' in
>>> '/Users/dpage/git/pgadmin4/web/regression/javascript/= history'
>>>=C2=A0 @ ./regression/javascript/history/query_history_ent= ry_spec.jsx 13:21-46
>>>
>>> ERROR in ./pgadmin/static/jsx/history/query_history_entry= .jsx
>>> Module not found: Error: Can't resolve 'immutability-h= elper' in
>>> '/Users/dpage/git/pgadmin4/web/pgadmin/static/jsx/history'
>>>=C2=A0 @ ./pgadmin/static/jsx/history/query_history_entry.= jsx 13:26-56
>>>=C2=A0 @ ./regression/javascript/history/query_history_ent= ry_spec.jsx
>>>
>>> ERROR in ./pgadmin/static/jsx/history/query_history_entry= .jsx
>>> Module not found: Error: Can't resolve 'moment' in=
>>> '/Users/dpage/git/pgadmin4/web/pgadmin/static/jsx/history'
>>>=C2=A0 @ ./pgadmin/static/jsx/history/query_history_entry.= jsx 17:14-31
>>>=C2=A0 @ ./regression/javascript/history/query_history_ent= ry_spec.jsx
>>>
>>> ERROR in ./regression/javascript/history/query_history_sp= ec.jsx
>>> Module not found: Error: Can't resolve 'jasmine-enzyme= ' in
>>> '/Users/dpage/git/pgadmin4/web/regression/javascript/= history'
>>>=C2=A0 @ ./regression/javascript/history/query_history_spe= c.jsx 19:21-46
>>> webpack: Failed to compile.
>>> PhantomJS 2.1.1 (Mac OS X 0.0.0) ERROR
>>>=C2=A0 =C2=A0Error: Cannot find module "immutability-helpe= r"
>>>=C2=A0 =C2=A0at regression/javascript/history/query_histor= y_entry_spec.jsx:30705
>>>
>>>
>>> PhantomJS 2.1.1 (Mac OS X 0.0.0) ERROR
>>>=C2=A0 =C2=A0Error: Cannot find module "immutability-helpe= r"
>>>=C2=A0 =C2=A0at regression/javascript/history/query_histor= y_spec.jsx:30705
>>>
>>>
>>> error Command failed with exit code 1.
>>> info Visit https://yarnpkg.com/en/docs/cli/run<= /a> for documentation about
>>> this command.
>>> error Command failed with exit code 1.
>>> info Visit
https://yarnpkg.com/en/docs/cli/run<= /a> for documentation about
>>> this command.
>>>
>>>
>>> Also, while I think of it, why the addition of the delay to >>> app_starter.py?
>>>
>>>
>>> On Mon, Jun 12, 2017 at 5:12 PM, Dave Page <
dpage@pgadmin.org> wrote:
>>> > Hi,
>>> >
>>> > So 01 and 02 are now committed :-).
>>> >
>>> > 03 has a couple of problems though (likely the same):
>>> >
>>> > - Running the webpacker results in:
>>> >
>>> > (pgadmin4)piranha:web dpage$ yarn run webpacker
>>> > yarn run v0.24.4
>>> > $ yarn run webpack -- --optimize-minimize --config webpac= k.config.js
>>> > yarn run v0.24.4
>>> > $ "/Users/dpage/git/pgadmin4/web/node_modules/.= bin/webpack"
>>> > --optimize-minimize --config webpack.config.js
>>> > (node:19446) DeprecationWarning: loaderUtils.parseQuery()= received a
>>> > non-string value which can be problematic, see
>>> > https://github.com/webpack/l= oader-utils/issues/56
>>> > parseQuery() will be replaced with getOptions() in the ne= xt major
>>> > version of loader-utils.
>>> > Hash: a5e75aa70eb6b09bdb78
>>> > Version: webpack 2.3.3
>>> > Time: 3983ms
>>> >=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 Asset=C2= =A0 =C2=A0 =C2=A0Size=C2=A0 Chunks=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0= =C2=A0Chunk Names
>>> > reactComponents.js=C2=A0 =C2=A0222 kB=C2=A0 =C2=A0 =C2=A0= =C2=A00=C2=A0 [emitted]=C2=A0 reactComponents
>>> >=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0history.js=C2=A0 1.58 kB= =C2=A0 =C2=A0 =C2=A0 =C2=A01=C2=A0 [emitted]=C2=A0 history
>>> >=C2=A0 =C2=A0 [0] /Users/dpage/git/pgadmin4/web/~/pro= cess/browser.js 5.42 kB {0}
>>> > [built]
>>> >=C2=A0 =C2=A0[18] /Users/dpage/git/pgadmin4/web/~/rea= ct-dom/lib/ReactReconciler.js
>>> > 6.21 kB {0} [built]
>>> >=C2=A0 =C2=A0[19] /Users/dpage/git/pgadmin4/web/~/rea= ct/lib/React.js 2.69 kB {0}
>>> > [built]
>>> >=C2=A0 =C2=A0[31] /Users/dpage/git/pgadmin4/web/~/rea= ct/react.js 56 bytes {0}
>>> > [built]
>>> >=C2=A0 =C2=A0[80] ./js/history/history_collection.js = 1.91 kB {1} [built]
>>> >=C2=A0 =C2=A0[81] ./jsx/history/query_history.jsx 3.6= 5 kB {0} [built]
>>> >=C2=A0 =C2=A0[82] /Users/dpage/git/pgadmin4/web/~/rea= ct-dom/index.js 59 bytes {0}
>>> > [built]
>>> >=C2=A0 =C2=A0[83] ./js/history/index.js 690 bytes {1} [bui= lt]
>>> >=C2=A0 =C2=A0[84] ./jsx/components.jsx 599 bytes {0} [buil= t]
>>> >=C2=A0 =C2=A0[85] ./jsx/history/query_history_entry.j= sx 5.21 kB {0} [built]
>>> >=C2=A0 [113] /Users/dpage/git/pgadmin4/web/~/react-do= m/lib/ReactDOM.js 5.14
>>> > kB {0} [built]
>>> >=C2=A0 [175] /Users/dpage/git/pgadmin4/web/~/react/li= b/ReactDOMFactories.js
>>> > 5.53 kB {0} [built]
>>> >=C2=A0 [176] /Users/dpage/git/pgadmin4/web/~/react/li= b/ReactPropTypes.js
>>> > 15.8 kB {0} [built]
>>> >=C2=A0 [177] /Users/dpage/git/pgadmin4/web/~/react/li= b/ReactPureComponent.js
>>> > 1.32 kB {0} [built]
>>> >=C2=A0 [178] /Users/dpage/git/pgadmin4/web/~/react/li= b/ReactVersion.js 350
>>> > bytes {0} [built]
>>> >=C2=A0 =C2=A0 =C2=A0+ 167 hidden modules
>>> >
>>> > ERROR in ./jsx/history/query_history_entry.jsx
>>> > Module not found: Error: Can't resolve 'immutabil= ity-helper' in
>>> > '/Users/dpage/git/pgadmin4/web/pgadmin/static/js= x/history'
>>> >=C2=A0 @ ./jsx/history/query_history_entry.jsx 13:26-= 56
>>> >=C2=A0 @ ./jsx/history/query_history.jsx
>>> >=C2=A0 @ ./jsx/components.jsx
>>> >
>>> > ERROR in ./jsx/history/query_history_entry.jsx
>>> > Module not found: Error: Can't resolve 'moment= 9; in
>>> > '/Users/dpage/git/pgadmin4/web/pgadmin/static/js= x/history'
>>> >=C2=A0 @ ./jsx/history/query_history_entry.jsx 17:14-= 31
>>> >=C2=A0 @ ./jsx/history/query_history.jsx
>>> >=C2=A0 @ ./jsx/components.jsx
>>> > error Command failed with exit code 2.
>>> > info Visit https://yarnpkg.com/en/docs/cli= /run for documentation about
>>> > this command.
>>> > error Command failed with exit code 1.
>>> > info Visit https://yarnpkg.com/en/docs/cli= /run for documentation about
>>> > this command
>>> >
>>> >
>>> > - If I try to run pgAdmin, I get a script error in the UI= , and console
>>> > output as attached (sorry for the screenshot, I've ye= t to find a good
>>> > way to copy/paste that info without losing the formatting= ).
>>> >
>>> > Thanks.
>>> >
>>> >
>>> > On Mon, Jun 12, 2017 at 3:53 PM, Shruti B Iyer <siyer@pivotal.io> wrote:
>>> >> Hi Hackers,
>>> >>
>>> >> Attached are the updated patches that apply on top of= master.
>>> >>
>>> >> Thanks,
>>> >> Shruti & Joao
>>> >>
>>> >>
>>> >> On Mon, Jun 12, 2017 at 10:44 AM Dave Page <dpage@pgadmin.org> wrote:
>>> >>>
>>> >>> Hi Shruti
>>> >>>
>>> >>> On Mon, Jun 12, 2017 at 3:24 PM, Shruti B Iyer &l= t;siyer@pivotal.io>
>>> >>> wrote:
>>> >>> >
>>> >>> > Hello Dave,
>>> >>> >
>>> >>> > Thanks for making those fixes and sharing th= em with us. We tried
>>> >>> > applying
>>> >>> > the patch and it looks like there are some m= issing file changes from
>>> >>> > your
>>> >>> > patch that were present in ours, like the Ma= ke.bat file changes. But
>>> >>> > we
>>> >>> > will
>>> >>> > add them when we send you the new patches. >>> >>>
>>> >>> Hmm, I wonder if I missed them because I applied = the patch in a sub
>>> >>> directory.
>>> >>>
>>> >>> > While trying to generate the new patches we = realized some tests are
>>> >>> > failing
>>> >>> > in master branch due to an internal server e= rror:
>>> >>> >
>>> >>> > 2017-06-12 10:04:11,938: INFO werkzeug: 127.= 0.0.1 - - [12/Jun/2017
>>> >>> > 10:04:11]
>>> >>> > "GET /browser/table/sql/1/1/12669/= 2200/81920 HTTP/1.1" 500 -
>>> >>> > Traceback (most recent call last):
>>> >>> >=C2=A0 =C2=A0File
>>> >>> >
>>> >>> >
>>> >>> > "/Users/pivotal/.pyenv/versions/2.= 7.10/envs/pgadmin/lib/python2.7/site-packages/flask/app.py",=
>>> >>> > line 2000, in __call__
>>> >>> >=C2=A0 =C2=A0 =C2=A0return self.wsgi_app(envi= ron, start_response)
>>> >>> >=C2=A0 =C2=A0File
>>> >>> >
>>> >>> >
>>> >>> > "/Users/pivotal/.pyenv/versions/2.= 7.10/envs/pgadmin/lib/python2.7/site-packages/flask/app.py",=
>>> >>> > line 1991, in wsgi_app
>>> >>> >=C2=A0 =C2=A0 =C2=A0response =3D self.make_re= sponse(self.handle_exception(e))
>>> >>> >=C2=A0 =C2=A0File
>>> >>> >
>>> >>> >
>>> >>> > "/Users/pivotal/.pyenv/versions/2.= 7.10/envs/pgadmin/lib/python2.7/site-packages/flask/app.py",=
>>> >>> > line 1567, in handle_exception
>>> >>> >=C2=A0 =C2=A0 =C2=A0reraise(exc_type, exc_val= ue, tb)
>>> >>> >=C2=A0 =C2=A0File
>>> >>> >
>>> >>> >
>>> >>> > "/Users/pivotal/.pyenv/versions/2.= 7.10/envs/pgadmin/lib/python2.7/site-packages/flask/app.py",=
>>> >>> > line 1988, in wsgi_app
>>> >>> >=C2=A0 =C2=A0 =C2=A0response =3D self.full_di= spatch_request()
>>> >>> >=C2=A0 =C2=A0File
>>> >>> >
>>> >>> >
>>> >>> > "/Users/pivotal/.pyenv/versions/2.= 7.10/envs/pgadmin/lib/python2.7/site-packages/flask/app.py",=
>>> >>> > line 1641, in full_dispatch_request
>>> >>> >=C2=A0 =C2=A0 =C2=A0rv =3D self.handle_user_e= xception(e)
>>> >>> >=C2=A0 =C2=A0File
>>> >>> >
>>> >>> >
>>> >>> > "/Users/pivotal/.pyenv/versions/2.= 7.10/envs/pgadmin/lib/python2.7/site-packages/flask/app.py",=
>>> >>> > line 1544, in handle_user_exception
>>> >>> >=C2=A0 =C2=A0 =C2=A0reraise(exc_type, exc_val= ue, tb)
>>> >>> >=C2=A0 =C2=A0File
>>> >>> >
>>> >>> >
>>> >>> > "/Users/pivotal/.pyenv/versions/2.= 7.10/envs/pgadmin/lib/python2.7/site-packages/flask/app.py",=
>>> >>> > line 1639, in full_dispatch_request
>>> >>> >=C2=A0 =C2=A0 =C2=A0rv =3D self.dispatch_requ= est()
>>> >>> >=C2=A0 =C2=A0File
>>> >>> >
>>> >>> >
>>> >>> > "/Users/pivotal/.pyenv/versions/2.= 7.10/envs/pgadmin/lib/python2.7/site-packages/flask/app.py",=
>>> >>> > line 1625, in dispatch_request
>>> >>> >=C2=A0 =C2=A0 =C2=A0return self.view_function= s[rule.endpoint](**req.view_args)
>>> >>> >=C2=A0 =C2=A0File
>>> >>> >
>>> >>> >
>>> >>> > "/Users/pivotal/.pyenv/versions/2.= 7.10/envs/pgadmin/lib/python2.7/site-packages/flask/views.py"= ;,
>>> >>> > line 84, in view
>>> >>> >=C2=A0 =C2=A0 =C2=A0return self.dispatch_requ= est(*args, **kwargs)
>>> >>> >=C2=A0 =C2=A0File
>>> >>> > "/Users/pivotal/workspace/pgadmin4= /web/pgadmin/browser/utils.py",
>>> >>> > line 235, in dispatch_request
>>> >>> >=C2=A0 =C2=A0 =C2=A0return method(*args, **kw= args)
>>> >>> >=C2=A0 =C2=A0File
>>> >>> >
>>> >>> >
>>> >>> > "/Users/pivotal/workspace/pgadmin4= /web/pgadmin/browser/server_groups/servers/databases/schemas/tabl= es/__init__.py",
>>> >>> > line 315, in wrap
>>> >>> >=C2=A0 =C2=A0 =C2=A0return f(*args, **kwargs)=
>>> >>> >=C2=A0 =C2=A0File
>>> >>> >
>>> >>> >
>>> >>> > "/Users/pivotal/workspace/pgadmin4= /web/pgadmin/browser/server_groups/servers/databases/schemas/tabl= es/__init__.py",
>>> >>> > line 2555, in sql
>>> >>> >=C2=A0 =C2=A0 =C2=A0data =3D self._formatter(= did, scid, tid, data)
>>> >>> >=C2=A0 =C2=A0File
>>> >>> >
>>> >>> >
>>> >>> > "/Users/pivotal/workspace/pgadmin4= /web/pgadmin/browser/server_groups/servers/databases/schemas/tabl= es/__init__.py",
>>> >>> > line 1081, in _formatter
>>> >>> >=C2=A0 =C2=A0 =C2=A0data =3D self._columns_fo= rmatter(tid, data)
>>> >>> >=C2=A0 =C2=A0File
>>> >>> >
>>> >>> >
>>> >>> > "/Users/pivotal/workspace/pgadmin4= /web/pgadmin/browser/server_groups/servers/databases/schemas/tabl= es/__init__.py",
>>> >>> > line 663, in _columns_formatter
>>> >>> >=C2=A0 =C2=A0 =C2=A0column['attlen'] = =3D matchObj.group(1)
>>> >>> > AttributeError: 'NoneType' object ha= s no attribute 'group'
>>> >>> >
>>> >>> > Was this introduced in a previous patch?
>>> >>>
>>> >>> Yes, it looks like it. For some reason it's n= ot failing on the Jenkins
>>> >>> server though. I'll ask Khushboo to fix it. >>> >>>
>>> >>> > We will recreate the patches and send them A= SAP.
>>> >>>
>>> >>> Thanks!
>>> >>>
>>> >>> > Thanks
>>> >>> > Shruti & Joao
>>> >>> >
>>> >>> > On Mon, Jun 12, 2017 at 6:59 AM Dave Page &l= t;dpage@pgadmin.org> wrote:
>>> >>> >>
>>> >>> >> Hi
>>> >>> >>
>>> >>> >> OK, so Ashesh and I spend much of the mo= rning on this.
>>> >>> >>
>>> >>> >> Patch 01 - Applied.
>>> >>> >> Patch 02:
>>> >>> >>
>>> >>> >> - karma.conf.js wouldn't patch; I= 9;ve manually handled that.
>>> >>> >> - test-main.js wouldn't patch. The d= iff looked like it was trying
>>> >>> >> to
>>> >>> >> empty it; I have removed it instead.
>>> >>> >> - The imports in pgAdmin4.py need to be = made after the app root is
>>> >>> >> added to the path.
>>> >>> >> - The JS bundler should be in pgadmin/ut= ils, not pgadmin/tools
>>> >>> >> (which
>>> >>> >> is intended for plugin modules)
>>> >>> >> - The tests were failing following some = changes Ashesh pushed
>>> >>> >> earlier
>>> >>> >> to add a client-side url_for function. >>> >>> >> - pgAdmin4.py was attempting to run the = bundler on every startup.
>>> >>> >> I've
>>> >>> >> wrapped those called in "if config.= DEBUG:" conditionals, as
>>> >>> >> typically
>>> >>> >> an installation for an end-user will be = in a read-only directory.
>>> >>> >>
>>> >>> >> We've fixed all of that in the attac= hed patch. I'm not sure why
>>> >>> >> it's
>>> >>> >> so much bigger than yours.
>>> >>> >>
>>> >>> >> The following issues are outstanding; pl= ease take a look at them:
>>> >>> >>
>>> >>> >> - There is no update to the Windows inst= aller generation code
>>> >>> >> (needed
>>> >>> >> in 2 places unfortunately; Make.bat and = Make-MinGW.bat).
>>> >>> >>
>>> >>> >> - The updates to the other packages call= "yarn run webpacker" which
>>> >>> >> is
>>> >>> >> an undefined target.
>>> >>> >>
>>> >>> >> I haven't looked at patch 03 yet, bu= t Ashesh did tell me it won't
>>> >>> >> apply for him. Patch 4 is also untested = at this stage.
>>> >>> >>
>>> >>> >> If the issues above can be fixed, we can= get patch 2 applied then
>>> >>> >> move
>>> >>> >> on from there.
>>> >>> >>
>>> >>> >> I'll hold off on Harshal's patch= for the Query Tool's load on
>>> >>> >> demand
>>> >>> >> to give you a chance to get this done. >>> >>> >>
>>> >>> >> Thanks.
>>> >>> >>
>>> >>> >> On Sat, Jun 10, 2017 at 2:52 AM, George = Gelashvili
>>> >>> >> <ggelashvili@pivotal.io> wrote:
>>> >>> >> > Hi Dave,
>>> >>> >> >
>>> >>> >> > Our patch touches code also changed= by the patches that were
>>> >>> >> > recently
>>> >>> >> > committed.
>>> >>> >> > That's likely what's causin= g this issue. We've rebased on top of
>>> >>> >> > the
>>> >>> >> > new
>>> >>> >> > state of master.
>>> >>> >> >
>>> >>> >> > We had initially kept the yarn.lock= .gitignored, but ran into an
>>> >>> >> > issue
>>> >>> >> > rather early on where an upgraded d= ependency introduced a
>>> >>> >> > regression.
>>> >>> >> > Checking-in the yarn.lock provides = the "know your dependency
>>> >>> >> > version"
>>> >>> >> > benefit of vendorizing code without= vendorization's drawback of
>>> >>> >> > having
>>> >>> >> > to
>>> >>> >> > manually manage your dependencies.<= br> >>> >>> >> >
>>> >>> >> > It is safe to delete a yarn.lock be= fore applying a patch, as you
>>> >>> >> > are
>>> >>> >> > authoring master. It provides a his= tory of the versions of each
>>> >>> >> > dependency
>>> >>> >> > that were working at the point in t= ime of the commit. By
>>> >>> >> > contrast,
>>> >>> >> > package.json provides approximate v= ersions and leaves room for
>>> >>> >> > fixes/improvements by the dependenc= y authors to be pulled in as
>>> >>> >> > they
>>> >>> >> > become
>>> >>> >> > available.
>>> >>> >> >
>>> >>> >> > To run linter and tests:
>>> >>> >> >
>>> >>> >> > The tasks that Grunt used to manage= are now defined as a set of
>>> >>> >> > scripts
>>> >>> >> > in
>>> >>> >> > the package.json
>>> >>> >> > After applying the patches--which m= ay require deleting yarn.lock
>>> >>> >> > for
>>> >>> >> > the
>>> >>> >> > first patch--you should cd web &= ;& yarn install
>>> >>> >> >
>>> >>> >> > Then yarn test will run the linter,= jasmine specs, and python
>>> >>> >> > tests
>>> >>> >> > including feature tests, in that or= der, exiting early if there
>>> >>> >> > are
>>> >>> >> > failures/errors.
>>> >>> >> > At the moment, the CheckForViewData= test is failing on master as
>>> >>> >> > well
>>> >>> >> > as
>>> >>> >> > in
>>> >>> >> > each of these patches; that should = be resolved as RM2477.
>>> >>> >> >
>>> >>> >> > Thanks!
>>> >>> >> > George and Matt
>>> >>> >> >
>>> >>> >> >
>>> >>> >> > On Thu, Jun 8, 2017 at 9:15 AM, Dav= e Page <dpage@pgadmin.org> >>> >>> >> > wrote:
>>> >>> >> >>
>>> >>> >> >> Hi George
>>> >>> >> >>
>>> >>> >> >> On Wed, Jun 7, 2017 at 10:21 PM= , George Gelashvili
>>> >>> >> >> <ggelashvili@pivotal.io> wrote:
>>> >>> >> >> > Hi Dave,
>>> >>> >> >> >
>>> >>> >> >> > I split the linting out in= to an intermediate commit, and
>>> >>> >> >> > rebased
>>> >>> >> >> > on
>>> >>> >> >> > top
>>> >>> >> >> > of
>>> >>> >> >> > master.
>>> >>> >> >>
>>> >>> >> >> Unfortunately, it still doesn&#= 39;t apply:
>>> >>> >> >>
>>> >>> >> >> error: patch failed: web/regres= sion/javascript/test-main.js:1
>>> >>> >> >> error: removal patch leaves fil= e contents
>>> >>> >> >> error: web/regression/javascrip= t/test-main.js: patch does not
>>> >>> >> >> apply
>>> >>> >> >> Checking patch web/regression/r= equirements.txt...
>>> >>> >> >> Checking patch web/webpack.conf= ig.js...
>>> >>> >> >> Checking patch web/webpack.test= .config.js...
>>> >>> >> >> Checking patch web/yarn.lock...=
>>> >>> >> >> error: web/yarn.lock: already e= xists in working directory
>>> >>> >> >> Applied patch .gitignore cleanl= y.
>>> >>> >> >> Applied patch Make.bat cleanly.=
>>> >>> >> >> Applied patch README cleanly. >>> >>> >> >> Applied patch pkg/mac/build.sh = cleanly.
>>> >>> >> >> Applied patch pkg/pip/build.sh = cleanly.
>>> >>> >> >> Applied patch pkg/src/build.sh = cleanly.
>>> >>> >> >> Applied patch web/.eslintrc.js = cleanly.
>>> >>> >> >> Applied patch web/karma.conf.js= cleanly.
>>> >>> >> >> Applied patch web/package.json = cleanly.
>>> >>> >> >> Applied patch web/pgAdmin4.py c= leanly.
>>> >>> >> >> Applied patch web/pgadmin/stati= c/jsx/components.jsx cleanly.
>>> >>> >> >> Applied patch web/pgadmin/tools= /javascript/__init__.py cleanly.
>>> >>> >> >> Applied patch web/pgadmin/tools= /javascript/javascript_bundler.py
>>> >>> >> >> cleanly.
>>> >>> >> >> Applied patch web/pgadmin/tools= /javascript/tests/__init__.py
>>> >>> >> >> cleanly.
>>> >>> >> >> Applied patch
>>> >>> >> >> web/pgadmin/tools/javascript/tests/test_javascript_bundler.py
>>> >>> >> >> cleanly.
>>> >>> >> >> Applied patch web/regression/RE= ADME cleanly.
>>> >>> >> >> Applied patch
>>> >>> >> >> web/regression/javascript/= jasmine_capture_warnings_beforeall.js
>>> >>> >> >> cleanly.
>>> >>> >> >> Applied patch web/regression/re= quirements.txt cleanly.
>>> >>> >> >> Applied patch web/webpack.confi= g.js cleanly.
>>> >>> >> >> Applied patch web/webpack.test.= config.js cleanly.
>>> >>> >> >>
>>> >>> >> >> The second (lint update) patch = is even worse, with significant
>>> >>> >> >> number
>>> >>> >> >> change that just don't want= to apply.
>>> >>> >> >>
>>> >>> >> >> Clearly yarn.lock needs to be r= emoved from there repo.
>>> >>> >> >>
>>> >>> >> >> Once I can apply a version of t= his, how should I be running the
>>> >>> >> >> linter
>>> >>> >> >> and the unit tests?
>>> >>> >> >>
>>> >>> >> >> --
>>> >>> >> >> Dave Page
>>> >>> >> >> Blog: http://pgsnake.blogspot= .com
>>> >>> >> >> Twitter: @pgsnake
>>> >>> >> >>
>>> >>> >> >> EnterpriseDB UK: http://www.e= nterprisedb.com
>>> >>> >> >> The Enterprise PostgreSQL Compa= ny
>>> >>> >> >
>>> >>> >> >
>>> >>> >>
>>> >>> >>
>>> >>> >>
>>> >>> >> --
>>> >>> >> Dave Page
>>> >>> >> Blog: http://pgsnake.blogspot.com<= br> >>> >>> >> Twitter: @pgsnake
>>> >>> >>
>>> >>> >> EnterpriseDB UK: http://www.enterprise= db.com
>>> >>> >> The Enterprise PostgreSQL Company
>>> >>> >>
>>> >>> >> --
>>> >>> >> Sent via pgadmin-hackers mailing list >>> >>> >> (pgadmin-hackers@postgresql.org)
>>> >>> >> To make changes to your subscription: >>> >>> >> http://www.post= gresql.org/mailpref/pgadmin-hackers
>>> >>>
>>> >>>
>>> >>>
>>> >>> --
>>> >>> 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
>>>
>>>
>>>
>>> --
>>> 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



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

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


--
Sent via pgadmin-hackers mailing list (pgadmin-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgadmin-ha= ckers


--001a113f7a767d269c0551d4d16c--