Following changes done for the framework:
- Framework for creating React based dynamic form view out of a pre-defined UI schema. Previously, it was based on Backform/Backbone.
- The new framework and components will use MaterialUI as the base. Previously, Bootstrap/Backform/jQuery components were used.
- The new code uses JSS instead of CSS since material UI and most modern React libraries also use JSS. In the future, this will allow us to change the theme in real-time without refresh.
- 90% code covered by 80-85 new jasmine test cases.
- Server group node UI Schema migration to new, with schema test cases.
- Server node UI Schema migration to new, with schema test cases.
- Database node UI Schema migration to new, with schema test cases.
- Few other UI changes.
Fixes#6130
Fixed following issues:
1. If the database name contains escape characters then PSQL unable to connect.
2. If the user terminates the connection by typing the 'exit' command, PSQL
will show the connection termination msg.
Fixes#2341
1) Migrate from webpack 4 to webpack 5. This had a lot of breaking changes,
so updated multiple webpack plugins and changed the config accordingly.
2) Replaced iconfont-webpack-plugin with a more maintained webfonts-loader.
3) Replaced deprecated babel-eslint with @babel/eslint-parser.
4) Replaced optimize-css-assets-webpack-plugin with a more maintained css-minimizer-webpack-plugin.
5) Updated all other JS packages and made the required code changes.
Fixes#6207
2) Ensure that the diagram should not vanish entirely if zooming out too far in ERD. Fixes#6164
3) Fixed an issue where Generate SQL displayed twice in the ERD tool. Fixes#6179
4) Updated missing documentation for the 'Download Image' option in ERD. Fixes#6180
1) After opening an existing project, the first table is already selected but the edit, clone, delete buttons are disabled.
2) ERD project title gets changed when 2 ERD projects are open & anyone of it edited.
3) Closing the ERD tab does not ask for a confirmation pop-up.
4) Shortcut for 'Show more/Fewer details' is missing.
5) Deleting the primary key does not delete associated links.
6) The long table & schema name are getting out of the box.
7) The long table name in the notes pop-up needs re-alignment.
8) The same table name present in ERD/canvas is allowed in Add Table dialogue. Added validation in the dialog.
9) Download image option is added, but it is not perfect yet. Image icons (table, schema, etc.) are not showing up.
10) Rename panel option should be disabled by default. It should be enabled for the tools which implement rename functionality.
11) The Toolbar is not visible in Safari for the ERD tool.
refs #1802
1) Replace the deprecated unit test method.
2) Wraps filter usage in a list call.
3) Converts the old metaclass syntax to new.
4) Use range instead of xrange method.
5) Change Unicode to str.
6) Several other transformations.
7) Fixed change password test cases.
8) Use simplejson instead of plain JSON.
will result in multiple rows. Fixes#5526
Fixed an old issue where quotes are not escaped when copying the cells.
As per CSV standards, if the string is in double quotes and there are
double quotes inside the string then they should be escaped with extra double-quotes.
- Remove this assignment to the local variable, the value is never used.
- Rename local variables to match the regular expression
- Add logic to this except clause or eliminate it and rethrow the exception automatically.
- Rename fields to match the regular expression
- Extract this nested conditional expression into an independent statement.
- Change this default value to "None" and initialize this parameter inside the function/method.
- Update this function so that its implementation is not identical to __repr__
- Refactor this method to not always return the same value
- Reraise this exception to stop the application as the user expects
- Add missing parameters _w _PY3. This method overrides simplejson.decoder.JSONDecoder.decode.
- Remove this redundant continue.
- Remove this unused function declaration
- Remove this identity check; it will always be False.
Add Reverse Engineered and Modified SQL tests for pgAgent jobs. Fixes#4623
Fixed modified SQL issue while adding an exception in pgAgent job schedule. Fixes#5356
Introduced two config params:
1. USER_INACTIVITY_TIMEOUT - Interval in seconds for the timeout. Default is 0-Zero which means disabled.
2. OVERRIDE_USER_INACTIVITY_TIMEOUT - If set to true, tools like query tool or debugger will override USER_INACTIVITY_TIMEOUT
and will not allow the application to timeout if a query is running for a long time.
1. Modified the get_chromedriver utility for supporting python version below 3.5.
2. Handled some exceptions getting intermittently on some databases.
3. Generalized some functions with additional parameters.
4. Disabled the auto-expansion of the children nodes for maintaining the synchronization.
1) Handled click event in query tool due to intermediate clicking issue.
2) Observed that the database is not getting created in a test case, so failed the test case there only.
1. Added an attribute 'data-click-counter' in query execute button which gets incremented
once query button is clicked up to 9 and then reset to 0. This is added just to support automation.
2. Locator for login_group_role is added and used to expand tree.
3. Functions for enabling and disable auto_commit and auto_rollback are made more precise.
4. Some scrolling problem is addressed in view_data_dml_query test.
5. Handled the stale element reference exception in query_tool_journey_test
1. Process watcher loading logs fix
2. Auto commit/rollback issue in query_tool_tests
3. Fixed the scrolling issue while verifying values in a table.
4. Modified some functions in pgadmin_page.py
Changes included:
1. Created function for traversing the browser tree.
2. Fixed some synchronization issues.
3. Modified locators.
4. Test cases fix for the recent commits.
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