pgAdmin 4 commit: Added Schema Diff tool to compare two schemas and gen

Поиск
Список
Период
Сортировка
От Akshay Joshi
Тема pgAdmin 4 commit: Added Schema Diff tool to compare two schemas and gen
Дата
Msg-id E1iprHZ-0006Cp-Oy@gothos.postgresql.org
обсуждение исходный текст
Ответы Re: pgAdmin 4 commit: Added Schema Diff tool to compare two schemasand gen  (Murtuza Zabuawala <murtuza.zabuawala@enterprisedb.com>)
Список pgadmin-hackers
Added Schema Diff tool to compare two schemas and generate the difference script.

Currently supported objects are Table, View, Materialized View, Function and Procedure.

Backend comparison of two schemas implemented by: Akshay Joshi

Fixes #3452.

Branch
------
master

Details
-------
https://git.postgresql.org/gitweb?p=pgadmin4.git;a=commitdiff;h=45f2e35a99ee691d67c45982211238b8ad40d7de
Author: Khushboo Vashi <khushboo.vashi@enterprisedb.com>

Modified Files
--------------
docs/en_US/release_notes_4_18.rst                  |   1 +
.../browser/server_groups/servers/__init__.py      |   2 +
.../server_groups/servers/databases/__init__.py    |   3 +
.../servers/databases/schemas/__init__.py          |   2 +
.../databases/schemas/collations/__init__.py       |  65 +-
.../servers/databases/schemas/domains/__init__.py  |  79 +-
.../domains/sql/9.2_plus/get_constraints.sql       |   2 +-
.../domains/sql/default/get_constraints.sql        |   2 +-
.../databases/schemas/foreign_tables/__init__.py   | 116 +--
.../schemas/fts_configurations/__init__.py         |  59 +-
.../databases/schemas/fts_dictionaries/__init__.py |  59 +-
.../databases/schemas/fts_parsers/__init__.py      |  69 +-
.../databases/schemas/fts_templates/__init__.py    |  70 +-
.../databases/schemas/functions/__init__.py        |  92 ++-
.../servers/databases/schemas/packages/__init__.py | 105 ++-
.../schemas/packages/edbfuncs/__init__.py          |   5 +-
.../databases/schemas/packages/edbvars/__init__.py |   5 +-
.../databases/schemas/sequences/__init__.py        |  61 +-
.../servers/databases/schemas/synonyms/__init__.py |  64 +-
.../servers/databases/schemas/tables/__init__.py   | 192 ++++-
.../databases/schemas/tables/columns/__init__.py   |   1 +
.../schemas/tables/compound_triggers/__init__.py   | 142 +++-
.../tables/constraints/index_constraint/utils.py   |   4 +-
.../databases/schemas/tables/indexes/__init__.py   | 204 ++++-
.../databases/schemas/tables/indexes/utils.py      |  15 +-
.../schemas/tables/partitions/__init__.py          | 183 ++++-
.../databases/schemas/tables/rules/__init__.py     | 127 +++-
.../databases/schemas/tables/schema_diff_utils.py  | 507 +++++++++++++
.../templates/columns/sql/10_plus/create.sql       |   2 +-
.../templates/columns/sql/10_plus/update.sql       |  12 +-
.../templates/columns/sql/12_plus/create.sql       |   2 +-
.../templates/columns/sql/9.2_plus/update.sql      |  10 +-
.../templates/columns/sql/default/create.sql       |   2 +-
.../templates/columns/sql/default/update.sql       |  14 +-
.../templates/partitions/sql/pg/10_plus/create.sql |   1 +
.../templates/tables/sql/10_plus/schema_diff.sql   |  14 +
.../databases/schemas/tables/triggers/__init__.py  | 116 ++-
.../databases/schemas/tables/triggers/utils.py     |  17 +-
.../servers/databases/schemas/tables/utils.py      | 113 ++-
.../servers/databases/schemas/types/__init__.py    |  61 +-
.../servers/databases/schemas/utils.py             | 148 ++--
.../servers/databases/schemas/views/__init__.py    | 227 +++++-
.../templates/views/pg/9.2_plus/sql/update.sql     |   2 +-
.../templates/views/pg/9.3_plus/sql/update.sql     |   2 +-
.../templates/views/pg/9.4_plus/sql/update.sql     |   2 +-
.../databases/templates/databases/css/database.css |   5 +
web/pgadmin/static/bundle/slickgrid.js             |   3 +
web/pgadmin/static/js/backform.pgadmin.js          |   9 +-
.../static/scss/resources/_default.variables.scss  |   7 +
.../tools/datagrid/static/js/show_query_tool.js    |  19 +
.../tools/datagrid/templates/datagrid/index.html   |   9 +
web/pgadmin/tools/schema_diff/__init__.py          | 601 +++++++++++++++
web/pgadmin/tools/schema_diff/compare.py           | 212 ++++++
web/pgadmin/tools/schema_diff/directory_compare.py | 279 +++++++
web/pgadmin/tools/schema_diff/model.py             |  76 ++
web/pgadmin/tools/schema_diff/node_registry.py     |  61 ++
.../tools/schema_diff/static/css/schema_diff.css   | 189 +++++
.../tools/schema_diff/static/img/compare-white.svg |  15 +
.../tools/schema_diff/static/img/compare.svg       |  15 +
.../tools/schema_diff/static/img/script.svg        |  19 +
.../schema_diff/static/js/schema_diff.backform.js  | 500 ++++++++++++
.../tools/schema_diff/static/js/schema_diff.js     | 145 ++++
.../schema_diff/static/js/schema_diff_hook.js      |  38 +
.../tools/schema_diff/static/js/schema_diff_ui.js  | 845 +++++++++++++++++++++
.../schema_diff/static/scss/_schema_diff.scss      |  85 +++
.../schema_diff/templates/schema_diff/index.html   |  31 +
web/pgadmin/tools/schema_diff/tests/__init__.py    |   0
.../tools/schema_diff/tests/pg/10_plus/source.sql  | 440 +++++++++++
.../tools/schema_diff/tests/pg/10_plus/target.sql  | 429 +++++++++++
.../tools/schema_diff/tests/pg/11_plus/source.sql  | 439 +++++++++++
.../tools/schema_diff/tests/pg/11_plus/target.sql  | 428 +++++++++++
.../tools/schema_diff/tests/pg/12_plus/source.sql  | 440 +++++++++++
.../tools/schema_diff/tests/pg/12_plus/target.sql  | 417 ++++++++++
.../tools/schema_diff/tests/pg/9.2_plus/source.sql | 311 ++++++++
.../tools/schema_diff/tests/pg/9.2_plus/target.sql | 337 ++++++++
.../schema_diff/tests/ppas/10_plus/source.sql      | 376 +++++++++
.../schema_diff/tests/ppas/10_plus/target.sql      | 364 +++++++++
.../schema_diff/tests/ppas/9.2_plus/source.sql     | 311 ++++++++
.../schema_diff/tests/ppas/9.2_plus/target.sql     | 337 ++++++++
.../schema_diff/tests/test_schema_diff_comp.py     | 204 +++++
web/pgadmin/tools/schema_diff/tests/utils.py       | 103 +++
web/pgadmin/tools/sqleditor/static/js/sqleditor.js |   8 +
.../sqleditor/sql/default/primary_keys.sql         |   2 +-
.../tools/sqleditor/utils/get_column_types.py      |  11 +-
web/pgadmin/utils/csrf.py                          |   2 +
web/webpack.config.js                              |   4 +-
web/webpack.shim.js                                |   2 +
87 files changed, 10717 insertions(+), 392 deletions(-)


В списке pgadmin-hackers по дате отправления:

Предыдущее
От: Akshay Joshi
Дата:
Сообщение: Re: [pgAdmin][RM4827] Allow changing width of column in file dialog
Следующее
От: Akshay Joshi
Дата:
Сообщение: Re: [Feature-3452] Schema diff tool with Table, View, Materialized View, Functions and Procedures