Aditya Toshniwal
d056a94f0c
popen() function strips the quotes from the arguments, so backup fails
...
for the schema name that needs quoting.
Code is changed to add escapers.
Fixes #4590
2019-10-10 17:58:32 +05:30
Aditya Toshniwal
f16498a8a7
Optimize Webpack to improve overall performance.
...
Changes include:
1) Remove underscore-string and sprintf-js packages as we were using only %s. Instead, added a function to do the same. Also changed gettext to behave like sprintf directly.
2) backgrid.sizeable.columns was not used anywhere, removed. @babel/polyfill is deprecated, replaced it with core-js.
3) Moved few css to make sure they get minified and bundled.
4) Added Flask-Compress to send static files as compressed gzip. This will reduce network traffic and improve initial load time for pgAdmin.
5) Split few JS files to make code reusable.
6) Lazy load few modules like leaflet, wkx is required only if geometry viewer is opened. snapsvg loaded only when explain plan is executed. This will improve sqleditor initial opening time.
Reviewed By: Khushboo Vashi
Fixes #4701
2019-10-10 12:05:28 +05:30
Aditya Toshniwal
41ee58e79a
Highlighted the color of closing or opening parenthesis when user select them in CodeMirror. Fixes #4728
2019-10-04 13:55:00 +05:30
Aditya Toshniwal
245a6e6f57
Added backward compatible code for reverse proxy in case werkzeug is older.
...
Make werkzeug greater than equal to 0.15.0
2019-10-01 17:55:43 +05:30
Aditya Toshniwal
6032692de0
Unable to open Query tool on Internet Explorer.
...
Remove extra comma in the function argument while starting the query tool.
Other browsers had no problems, but it is an issue on Internet explorer.
Fixes #4769
2019-09-27 14:32:52 +05:30
Aditya Toshniwal
faf8062830
pgAdmin4 unable to work behind Nginx reverse proxy running on a non-standard port.
...
Werkzeug middleware allows us to set the number of trusted ports and few other params
behind the proxy. By default values are set to zero.
Added 'X-Forwarded-*' configuration options and set the default value of the port to 1 to work with non-standard port.
Fixes #4768
2019-09-27 13:24:35 +05:30
Aditya Toshniwal
73dc130908
Fix issue where pgAdmin does not load completely if loaded in an iframe. Fixes #4756
2019-09-23 12:55:02 +05:30
Aditya Toshniwal
82aa2d1819
Ensure that pgAdmin should work behind reverse proxy if the inbuilt server is used as it is. Fixes #4755
2019-09-23 11:50:32 +05:30
Aditya Toshniwal
9a69d27009
Fix webpack issue where multiple assets emit to the same file.
2019-09-13 11:08:08 +05:30
Aditya Toshniwal
83170a0e94
Fix display of validation error message in SlickGrid cells. Fixes #4408
2019-09-12 20:27:44 -04:00
Aditya Toshniwal
1c2ba72f02
Add editor options for plain text mode and to disable block folding to
...
workaround rendering speed issues in CodeMirror with very large scripts.
Fixes #4631 .
Re-arrange editor options in the Preferences dialogue to tidy things up.
2019-09-04 15:46:08 +01:00
Aditya Toshniwal
04357b7a55
Fix error while importing data to a table using Import/Export dialog and providing Not null columns option. Fixes #4461 .
2019-09-03 11:19:33 +05:30
Aditya Toshniwal
a68f0702e2
Re-fix database name unescaping the query tool title bar.
2019-09-02 16:57:28 +01:00
Aditya Toshniwal
bc91a7c7b2
Increase cache control max age for static files to improve performance over longer run. Fixes #4681
2019-09-02 12:17:43 +05:30
Aditya Toshniwal
47f26cc377
Fix exception in query history for python 2.7. Fixes #4663
2019-08-30 09:07:03 +05:30
Aditya Toshniwal
d6da1cf25c
Added MSQL test cases for Sequences and cover missing ACL RE-SQL test cases.
2019-08-29 14:15:34 +05:30
Aditya Toshniwal
028473eb83
Fix an issue where oid column should not be pasted when copy/paste row is used on query output containing the oid column. Fixes #4381
2019-08-28 13:35:40 +05:30
Aditya Toshniwal
06ad6b8ba8
1) Ensure Boolean columns should be editable using keyboard keys. Fixes #3778
...
2) Ensure Boolean columns should be editable in View/Edit data and Query Tool. Fixes #4487
2019-08-28 11:09:30 +05:30
Aditya Toshniwal
dbbbb2e5ed
Fix query tool launch error if user name contain html characters. Fixes #4674
2019-08-28 10:46:28 +05:30
Aditya Toshniwal
53ab4d7e8d
Fix an error that could be seen when click on any system column of a table. Fixes #4577
2019-08-26 14:36:07 +05:30
Aditya Toshniwal
234efc3be7
Don't wait for the database connection before rendering the Query Tool UI, for improved UX. Fixes #4453
...
In addition, unescape HTML entities in database names in the Query Tool title bar. Fixes #4584
2019-08-23 12:14:20 +01:00
Aditya Toshniwal
3dadb8989b
Fix a debugger error when using Python 2.7. Fixes #4419
...
Also fixes a minor bug where a reload warning was unnecessarily given when closing the debugger.
2019-08-23 09:43:51 +01:00
Aditya Toshniwal
a51de78292
Fix issue in drag drop feature. It's regression of RM #4552
2019-08-12 13:11:56 +05:30
Aditya Toshniwal
a850e7bd5a
Update the documentation for pgAgent to clarify Batch jobs won't run on remote servers. Fix minor css issue in docs.
2019-08-12 11:45:54 +05:30
Aditya Toshniwal
99b51f8f20
Remove HardSourceWebpackPlugin as WebPack 4 is fast enough and it causes more problems than it solves.
2019-08-08 15:38:47 +01:00
Aditya Toshniwal
bfca1e3ac8
Set the Werkzeug logger to the same log level as the rest of the app.
2019-08-08 15:36:22 +01:00
Aditya Toshniwal
1281f5cd6c
Fix console error when changing kind(SQL/BATCH) for pgAgent job step. Fixes #4582
2019-08-08 18:43:38 +05:30
Aditya Toshniwal
4067d65a30
Improve test messages
2019-08-07 10:17:34 +01:00
Aditya Toshniwal
9cdb3b40ab
Add Reverse Engineered SQL tests for Trigger Functions. Fixes #4554
...
Fix the reverse engineered SQL for trigger functions with the WINDOW option selected. Fixes #4565
2019-08-06 14:26:11 +01:00
Aditya Toshniwal
6800b1f723
Add an optimisation to the internal code responsible for searching for treeview nodes. Fixes #4570
...
Attached is a tiny but very effective patch to improve the speed of
finding a node using path (used internally).
If you right click or just click on a node, internally the node is
traversed using its path. But currently, it compares with the path of
all the open nodes to find a match.
So if you 1000+ tables and the tables node is open and if you click on
a view, the view path is compared with all the 1000+ tables (and with
any other open nodes above) before arriving to path. You're at bad luck
if you have more open servers above.
Code is changed to check if the path of node to be found starts with the
current node path. If it doesn't match, why bother the children's of
current node.
This change will not show much effect for small data, but it does matter
for large servers.
One more change is to remove unnecessary calls to find node and use the
data available with Main Menu -> Object to enable/disable node context
menu items.
2019-08-06 14:02:57 +01:00
Aditya Toshniwal
db7a2e3023
Add a --modules option to the RE-SQL test suite to allow testing of specific object types. Fixes #4560
2019-08-06 13:43:49 +01:00
Aditya Toshniwal
b5c8c85c90
Ensure triggers should be updated properly for EPAS server. Fixes #4559
2019-08-05 12:49:33 +05:30
Aditya Toshniwal
8780462708
Add various make targets for auditing the Python and JS modules. Update the install-node target so that it de-dupes JS modules.
...
Original patch by Aditya, with further work from Ashesh and I.
2019-08-02 14:05:09 +01:00
Aditya Toshniwal
99a8b70e00
Fix some errors thrown on the JS console when dragging text in the Query Tool. Fixes #4552
2019-08-02 11:28:57 +01:00
Aditya Toshniwal
aab5fadc01
Update wcDocker to allow the browser's context menu to be used except in tab strips and panel headers. Fixes #4229
...
Update wcDocker to prevent window state loading creating blank dialogues. Fixes #4489
2019-08-01 15:36:40 +01:00
Aditya Toshniwal
bcb1392a1a
Ensure type names are properly encoded in the results grid. Fixes #4401
2019-08-01 13:17:00 +01:00
Aditya Toshniwal
d3ef1137d9
Add Reverse Engineered SQL tests for Sequences. Fixes #4469
2019-07-15 14:56:22 +01:00
Aditya Toshniwal
0b82a4ad92
Fix sequence reverse engineered SQL generation with quoted names on PG/EPAS 10+. Fixes #4470
2019-07-15 14:55:07 +01:00
Aditya Toshniwal
ba32c98241
Add Reverse Engineered SQL tests for FDWs. Fixes #4441
2019-07-05 11:24:54 +01:00
Aditya Toshniwal
0aa18fd466
Ensure drag/drop from the treeview works as expected on Firefox. Fixes #4429
2019-07-04 14:49:09 +01:00
Aditya Toshniwal
15427334af
Set the mouse cursor appropriately based on the layout lock state. Fixes #4318
2019-07-04 14:33:05 +01:00
Aditya Toshniwal
f4bc4475cd
Add more comprehensive feature tests for the data grid editor.
2019-07-03 14:30:12 +01:00
Aditya Toshniwal
0340b8fb28
Add EXPLAIN options for SETTINGS and SUMMARY. Fixes #4335
...
Prevent flickering of large tooltips on the Graphical EXPLAIN canvas. Fixes #4224
EXPLAIN options should be Query Tool instance-specific. Fixes #4395
2019-07-03 13:57:56 +01:00
Aditya Toshniwal
15556f9f89
Correct the condition to compare version for Windows installer. Regression of last commit.
2019-07-02 20:12:00 +05:30
Aditya Toshniwal
b76e0bea83
Ensure the version comparision should be correct for windows installer. Fixes #4421
2019-07-02 14:58:18 +05:30
Aditya Toshniwal
24ec882f45
Properly escape dragged node text. Fixes #4139
2019-06-28 08:17:04 -04:00
Aditya Toshniwal
da8cf14047
Prevent an error that may occur when editing data with an integer primary key. Fixes #4404
2019-06-27 10:43:25 -04:00
Aditya Toshniwal
2451db8797
Ensure the browser close confirmation is only shown when closing a Query Tool which is running in a separate browser tab. Fixes #4403
2019-06-27 10:37:50 -04:00
Aditya Toshniwal
173b812b93
Allow some objects to be dragged/dropped into the Query Tool to insert their signature into the query text. Fixes #4139
2019-06-27 10:30:05 -04:00
Aditya Toshniwal
0d42f8026c
Fix SSH tunnel password decryption. Fixes #4320
2019-06-25 07:06:04 -04:00
Aditya Toshniwal
c39d257bf6
Fix an XSS issue when username contains XSS vulnerable text. Fixes #4386
2019-06-24 16:06:03 +05:30
Aditya Toshniwal
ebb5e3fe65
Ensure Python escaping matched JS escaping and fix a minor XSS issue in the Query Tool that required superuser access to trigger. Fixes #4378
2019-06-21 09:53:57 +01:00
Aditya Toshniwal
78d55c7cc0
Fix regression tests.
2019-06-20 13:26:06 +01:00
Aditya Toshniwal
6e8ebbd375
Allow editing of data where a primary key column includes a % sign in the value. Fixes #4036
...
Fix an XSS issue seen in View/Edit data mode if a column name includes HTML. Fixes #4367
2019-06-20 12:21:37 +01:00
Aditya Toshniwal
ce7679c4bd
Added missing __init__.py file in debugger utils which is required for Python 2.7
2019-06-19 13:31:48 +05:30
Aditya Toshniwal
402dfd07db
Change icons for table inheritance (icons by Chethana Kumar) Fixes #3174
...
Along with this, I have also fixed few other issues/icons found on the way:
1) Dependencies tab for inherited tables/foreign keys shows partial text (Fixes ##3994).
2) Dependencies tab for child partition table shows parent partition table as Function.
3) Dependencies tab for triggers shows trigger functions as plain functions.
4) Dependents tab for partitioned table shows the child partition tables as normal table instead for partitioned tables.
2019-06-17 10:36:30 +01:00
Aditya Toshniwal
2894c6cd14
Add minor change missed in previous commit. Fixes #4329
2019-06-14 12:46:48 +01:00
Aditya Toshniwal
3b69f92d70
Ensure strings are properly encoded in the Query History. Fixes #4349
2019-06-14 09:17:02 +01:00
Aditya Toshniwal
82bd94e696
Fix connection restoration issue when pgAdmin server is restarted and the page is refreshed. Fixes #4357
2019-06-14 11:50:01 +05:30
Aditya Toshniwal
23364464c2
Ensure the correct label is used in panel headers when viewing filtered rows. Fixes #4228
2019-06-11 15:11:23 +01:00
Aditya Toshniwal
5437a8adab
Fix an initialisation error when two functions with parameters are debugged in parallel. Fixes #4329
2019-06-10 14:58:07 +01:00
Aditya Toshniwal
f561c0cee6
Fix keyboard navigation in "inner" tabsets such as the Query Tool and Debugger. Fixes #4195
2019-06-10 11:10:49 +01:00
Aditya Toshniwal
7ff85903e4
Fix issue where reverse engineered SQL was failing for foreign tables, if it had = in the options. Fixes #4171
2019-06-10 12:15:12 +05:30
Aditya Toshniwal
8b9c50ee5c
Fix issue where new column should be created with Default value. Fixes #4235
2019-06-10 11:53:16 +05:30
Aditya Toshniwal
d90136d93d
Prevent the geometry viewer grabbing key presses when not in focus under Firefox, IE and Edge. Fixes #4255
2019-06-05 12:00:09 +01:00
Aditya Toshniwal
9a00a8a60b
Update codemirror version. Fixes #4035
2019-06-05 12:12:56 +05:30
Aditya Toshniwal
a588c2994d
1) Fix issue where SSH tunnel connection using password is failing, it's regression of Master Password. Fixes #4320
...
2) Fix some more issues related to SSH Tunnel(By: Akshay Joshi)
2019-06-05 12:07:24 +05:30
Aditya Toshniwal
91075cc3f5
Disable the master password in test mode (for now).
2019-05-31 10:19:04 -04:00
Aditya Toshniwal
2185ea302d
Omit the geometry viewer in the Query Tool from layout saving. Fixes #4169
2019-05-30 15:15:37 -04:00
Aditya Toshniwal
dd187b9122
Prevent Alertify from inadvertently opening help pages.
2019-05-29 13:46:39 -04:00
Aditya Toshniwal
15252b0a26
Added Help button on all master password dialogs.
2019-05-29 13:07:50 +05:30
Aditya Toshniwal
dfa892d2a2
1. Added Master Password to increase the security of saved passwords. Fixes #4184
...
2. In server(web) mode, update all the saved server credentials when user password is changed. Fixes #3377
2019-05-28 12:00:18 +05:30
Aditya Toshniwal
361f7077fd
Update the UI logo. Artwork by Chethana Kumar. Fixes #4208
2019-05-23 16:39:10 +01:00
Aditya Toshniwal
ee37be56f9
Fix handling of JSON in the Query Tool with NULL elements. Fixes #4263
2019-05-23 08:53:29 +01:00
Aditya Toshniwal
db4bb22cc6
Ensure that element should get highlighted when they get focus on using Tab key. Fixes #4245
2019-05-15 17:42:07 +05:30
Aditya Toshniwal
2cd58efcdd
1) Fixed Tab key navigation for Maintenance dialog. Fixes #4227
...
2) Fix Tab key issue for Toggle switch controls and button on the dialog footer in Safari browser. Fixes #4244
2019-05-15 16:37:06 +05:30
Aditya Toshniwal
ed8d1cde00
Fix accessibility issue for menu navigation. Fixes #4194
2019-05-15 15:38:33 +05:30
Aditya Toshniwal
036bd66638
Fix file browser path issue which occurs when client is on Windows and server is on Mac/Linux. Fixes #4164
2019-05-03 11:58:06 +05:30
Aditya Toshniwal
3fef078ec8
Remove some unecessary React libraries.
2019-04-24 09:29:01 +01:00
Aditya Toshniwal
05ae330030
Improvement for 'beforeunload' event, bind the event only from where it is required.
2019-04-22 11:30:33 +05:30
Aditya Toshniwal
49b318c39e
Ensure that confirmation dialog should be popped up before reload of query tool or debugger
...
if it is opened in a new browser tab. Fixes #4101
2019-04-18 15:39:36 +05:30
Aditya Toshniwal
d96f453e7f
Fixed 'Location cannot be empty' error when open Tablespace properties. Fixes #4134
2019-04-18 12:31:35 +05:30
Aditya Toshniwal
024cfd2fab
1) Ensure that JSON strings as comments should be added properly for all the objects. Fixes #3582
...
2) Fixed alignment issue of columns in definition section of Index node. Fixes #4121
2019-04-12 15:07:07 +05:30
Aditya Toshniwal
55c6f5205d
Add some SQL updates to handle inherited column markers/comments that were missed in the previous commit.
2019-03-29 14:44:21 +00:00
Aditya Toshniwal
7627e9c699
Display errors during CSV download from the Query Tool in the UI rather than putting them in the CSV file. Fixes #4085
...
Ensure the toolbar buttons are properly reset following a CSV download in the Query Tool. Fixes #4096
2019-03-29 14:31:33 +00:00
Aditya Toshniwal
8aaacdf96e
Include inherited column comments and defaults in reverse engineered table SQL. Fixes #2627
...
Include comment SQL for inherited columns in reverse engineered table SQL. Fixes #4037
Include inherited columns in SELECT scripts. Fixes #4058
2019-03-28 08:36:41 -04:00
Aditya Toshniwal
fbc6aea497
Fix an issue where JSON data would not be rendered in the Query Tool. Fixes #4105
2019-03-28 08:12:09 -04:00
Aditya Toshniwal
6fb35f2649
Overhaul the layout saving code so it includes the Query Tool and Debugger, and stores the layout when change events are detected rather than (unreliably) on exit. Fixes #4084
2019-03-26 11:08:45 -04:00
Aditya Toshniwal
61f11aa4fc
Update wcDocker to fix the issue where the Scratch Pad grows in size if the results panel is resized. Fixes #3968
2019-03-21 09:15:28 +00:00
Aditya Toshniwal
8e9a77b3e3
Add a small utility for extracting PostgreSQL SQL and pl/pgsql keywords from the interwebs.
2019-03-20 13:53:37 +00:00
Aditya Toshniwal
a4bc26c810
Fix handling of numeric arrays in View/Edit Data. Fixes #4062
2019-03-19 16:45:00 +00:00
Aditya Toshniwal
3db3740cf2
Fix handling of numeric arrays in View/Edit Data. Fixes #4062
2019-03-19 16:29:05 +00:00
Aditya Toshniwal
6aae9d6e20
Handle resultsets with zero columns correctly in the Query Tool. Fixes #4054
2019-03-07 15:22:45 +00:00
Aditya Toshniwal
4b895941b3
Remove the large and unnecessary dependency on React and 87 other related libraries. Fixes #4018
2019-03-07 10:51:59 +00:00
Aditya Toshniwal
74cfeabd02
Fix graphical explain now that JSON data is sent as text to stop JS futzing with it. Fixes #4041
2019-03-01 12:38:57 +00:00
Aditya Toshniwal
e6e7cf0f69
Fix support for bigint's in JSONB data. Fixes #3587
2019-02-27 13:39:47 +00:00
Aditya Toshniwal
9c5b9364b6
Support double-click on Query Tool result grid column resize handles to auto-size to the content. Fixes #4034
2019-02-26 13:44:16 +00:00
Aditya Toshniwal
98bfbcff8f
Fix dashboard test cases.
2019-02-25 12:27:15 +00:00
Aditya Toshniwal
59446bb4b5
Ensure JSON data isn't modified in-flight by psycopg2 when using View/Edit data. Fixes #3600
2019-02-25 10:34:36 +00:00
Aditya Toshniwal
292ac32db5
Fix editing of table data with a JSON primary key. Fixes #3912
2019-02-20 11:15:39 +00:00