Added cascade option while creating an extension. #3942

This commit is contained in:
Akshay Joshi 2023-08-03 17:23:03 +05:30
parent 48bfc66048
commit b01a93544f
10 changed files with 24 additions and 8 deletions

View File

@ -23,6 +23,9 @@ Use the fields in the *General* tab to identify an extension:
* Use the drop-down listbox in the *Name* field to select the extension. Each
extension must have a unique name.
* Move the switch next to *Cascade?* towards right position to automatically
install any extensions that this extension depends on that are not already
installed.
* Store notes about the extension in the *Comment* field.
Click the *Definition* tab to continue.
@ -55,7 +58,7 @@ the *Extension* dialog:
:align: center
The command creates the *adminpack* extension in the *public* schema. It is
version *1.0* of *adminpack*.
version *2.0* of *adminpack*.
* Click the *Info* button (i) to access online help.
* Click the *Save* button to save work.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 21 KiB

After

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 21 KiB

After

Width:  |  Height:  |  Size: 46 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 23 KiB

After

Width:  |  Height:  |  Size: 54 KiB

View File

@ -21,6 +21,7 @@ New features
************
| `Issue #2595 <https://github.com/pgadmin-org/pgadmin4/issues/2595>`_ - Added Expression to CREATE INDEX.
| `Issue #3942 <https://github.com/pgadmin-org/pgadmin4/issues/3942>`_ - Added cascade option while creating an extension.
| `Issue #6375 <https://github.com/pgadmin-org/pgadmin4/issues/6375>`_ - Added support for ALTER INDEX column statistics.
| `Issue #6376 <https://github.com/pgadmin-org/pgadmin4/issues/6376>`_ - Added unlogged option while creating a sequence.
| `Issue #6381 <https://github.com/pgadmin-org/pgadmin4/issues/6381>`_ - Added support for SYSTEM, CONCURRENTLY and TABLESPACE options in REINDEX.
@ -32,8 +33,8 @@ New features
Housekeeping
************
| `Issue #6588 <https://github.com/pgadmin-org/pgadmin4/issues/6588>`_ - Added support for PostgreSQL and EPAS 16 to ensure it works without any errors.
| `Issue #3702 <https://github.com/pgadmin-org/pgadmin4/issues/3702>`_ - Generate software bill of materials as part of the package builds.
| `Issue #6588 <https://github.com/pgadmin-org/pgadmin4/issues/6588>`_ - Added support for PostgreSQL and EPAS 16 to ensure it works without any errors.
Bug fixes
*********

View File

@ -20,6 +20,7 @@ export default class ExtensionsSchema extends BaseUISchema {
schema: '',
relocatable: false,
is_sys_obj: false,
cascade: false,
comment: null,
});
fieldOptions = {
@ -87,6 +88,10 @@ export default class ExtensionsSchema extends BaseUISchema {
}
}
},
{
id: 'cascade', label: gettext('Cascade?'),
type: 'switch', mode: ['create'],
},
{
id: 'oid', label: gettext('OID'), type: 'text',
mode: ['properties'],

View File

@ -7,13 +7,17 @@
{% endif %}
{% if data.name %}
CREATE EXTENSION{% if add_not_exists_clause %} IF NOT EXISTS{% endif %} {{ conn|qtIdent(data.name) }}{% if data.schema == '' and data.version == '' %};{% endif %}
CREATE EXTENSION{% if add_not_exists_clause %} IF NOT EXISTS{% endif %} {{ conn|qtIdent(data.name) }}{% if data.schema == '' and data.version == '' and not data.cascade %};{% endif %}
{% if data.schema %}
SCHEMA {{ conn|qtIdent(data.schema) }}{% if data.version == '' %};{% endif %}
SCHEMA {{ conn|qtIdent(data.schema) }}{% if data.version == '' and not data.cascade %};{% endif %}
{% endif %}
{% if data.version %}
VERSION {{ conn|qtIdent(data.version) }};
VERSION {{ conn|qtIdent(data.version) }}{% if not data.cascade %};{% endif %}
{% endif %}
{% if data.cascade %}
CASCADE;
{% endif %}
{% endif %}

View File

@ -1,3 +1,4 @@
CREATE EXTENSION sslinfo
SCHEMA test_extension_schema
VERSION "1.2";
VERSION "1.2"
CASCADE;

View File

@ -9,7 +9,8 @@
"data": {
"name": "sslinfo",
"schema": "test_extension_schema",
"version": "1.2"
"version": "1.2",
"cascade": true
},
"expected_sql_file": "create_extension_with_all_options.sql",
"expected_msql_file": "msql_create_extension_with_all_options.sql",

View File

@ -19,7 +19,8 @@ def get_extension_data(schema_name):
data = {
"name": "cube",
"relocatable": "true",
"schema": schema_name
"schema": schema_name,
"cascade": "true"
}
return data