c2cgeoportal-commons 2.6.0__py3-none-any.whl → 2.9rc45__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of c2cgeoportal-commons might be problematic. Click here for more details.
- c2cgeoportal_commons/__init__.py +2 -5
- c2cgeoportal_commons/alembic/env.py +49 -33
- c2cgeoportal_commons/alembic/main/028477929d13_add_technical_roles.py +10 -7
- c2cgeoportal_commons/alembic/main/04f05bfbb05e_remove_the_old_is_expanded_column.py +62 -0
- c2cgeoportal_commons/alembic/main/116b9b79fc4d_internal_and_external_layer_tables_.py +42 -43
- c2cgeoportal_commons/alembic/main/1418cb05921b_merge_1_6_and_master_branches.py +9 -8
- c2cgeoportal_commons/alembic/main/164ac0819a61_add_image_format_to_wmts_layer.py +9 -6
- c2cgeoportal_commons/alembic/main/166ff2dcc48d_create_database.py +21 -24
- c2cgeoportal_commons/alembic/main/16e43f8c0330_remove_old_metadata_column.py +9 -6
- c2cgeoportal_commons/alembic/main/1d5d4abfebd1_add_restricted_theme.py +14 -8
- c2cgeoportal_commons/alembic/main/1de20166b274_remove_v1_artifacts.py +9 -6
- c2cgeoportal_commons/alembic/main/20137477bd02_update_icons_url.py +9 -6
- c2cgeoportal_commons/alembic/main/21f11066f8ec_trigger_on_role_updates_user_in_static.py +21 -20
- c2cgeoportal_commons/alembic/main/22e6dfb556de_add_description_tree_.py +9 -6
- c2cgeoportal_commons/alembic/main/29f2a32859ec_merge_1_6_and_master_branches.py +9 -8
- c2cgeoportal_commons/alembic/main/2b8ed8c1df94_set_layergroup_treeitem_is_as_a_primary_.py +9 -6
- c2cgeoportal_commons/alembic/main/2e57710fecfe_update_the_ogc_server_for_ogc_api.py +71 -0
- c2cgeoportal_commons/alembic/main/32527659d57b_move_exclude_properties_from_layerv1_to_.py +15 -12
- c2cgeoportal_commons/alembic/main/32b21aa1d0ed_merge_e004f76e951a_and_e004f76e951a_.py +9 -8
- c2cgeoportal_commons/alembic/main/338b57593823_remove_trigger_on_role_name_change.py +25 -24
- c2cgeoportal_commons/alembic/main/415746eb9f6_changes_for_v2.py +45 -43
- c2cgeoportal_commons/alembic/main/44c91d82d419_add_table_log.py +72 -0
- c2cgeoportal_commons/alembic/main/5109242131ce_add_column_time_widget.py +11 -9
- c2cgeoportal_commons/alembic/main/52916d8fde8b_add_sql_fields_to_vector_tiles.py +60 -0
- c2cgeoportal_commons/alembic/main/53ba1a68d5fe_add_theme_to_fulltextsearch.py +9 -6
- c2cgeoportal_commons/alembic/main/54645a535ad6_add_ordering_in_relation.py +17 -14
- c2cgeoportal_commons/alembic/main/56dc90838d90_fix_removing_layerv1.py +10 -8
- c2cgeoportal_commons/alembic/main/596ba21e3833_separate_local_internal.py +13 -14
- c2cgeoportal_commons/alembic/main/678f88c7ad5e_add_vector_tiles_layers_table.py +9 -6
- c2cgeoportal_commons/alembic/main/6a412d9437b1_rename_serverogc_to_ogcserver.py +9 -6
- c2cgeoportal_commons/alembic/main/6d87fdad275a_convert_metadata_to_the_right_case.py +13 -20
- c2cgeoportal_commons/alembic/main/7530011a66a7_trigger_on_role_updates_user_in_static.py +21 -20
- c2cgeoportal_commons/alembic/main/78fd093c8393_add_api_s_intrfaces.py +36 -52
- c2cgeoportal_commons/alembic/main/7d271f4527cd_add_layer_column_in_layerv1_table.py +9 -6
- c2cgeoportal_commons/alembic/main/809650bd04c3_add_dimension_field.py +9 -6
- c2cgeoportal_commons/alembic/main/8117bb9bba16_use_dimension_on_all_the_layers.py +9 -6
- c2cgeoportal_commons/alembic/main/87f8330ed64e_add_missing_delete_cascades.py +9 -6
- c2cgeoportal_commons/alembic/main/9268a1dffac0_add_trigger_to_be_able_to_correctly_.py +11 -8
- c2cgeoportal_commons/alembic/main/94db7e7e5b21_merge_2_2_and_master_branches.py +9 -8
- c2cgeoportal_commons/alembic/main/951ff84bd8ec_be_able_to_delete_a_wms_layer_in_sql.py +9 -6
- c2cgeoportal_commons/alembic/main/a00109812f89_add_field_layer_wms_valid.py +11 -8
- c2cgeoportal_commons/alembic/main/a4558f032d7d_add_support_of_cog_layers.py +74 -0
- c2cgeoportal_commons/alembic/main/a4f1aac9bda_merge_1_6_and_master_branches.py +9 -8
- c2cgeoportal_commons/alembic/main/b60f2a505f42_remame_uimetadata_to_metadata.py +9 -6
- c2cgeoportal_commons/alembic/main/b6b09f414fe8_sync_model_database.py +165 -0
- c2cgeoportal_commons/alembic/main/c75124553bf3_remove_deprecated_columns.py +9 -6
- c2cgeoportal_commons/alembic/main/d48a63b348f1_change_mapserver_url_for_docker.py +13 -14
- c2cgeoportal_commons/alembic/main/d8ef99bc227e_be_able_to_delete_a_linked_functionality.py +15 -12
- c2cgeoportal_commons/alembic/main/daf738d5bae4_merge_2_0_and_master_branches.py +9 -8
- c2cgeoportal_commons/alembic/main/dba87f2647f9_merge_2_2_on_2_3.py +9 -8
- c2cgeoportal_commons/alembic/main/e004f76e951a_add_missing_not_null.py +15 -32
- c2cgeoportal_commons/alembic/main/e7e03dedade3_put_the_default_wms_server_in_the_.py +13 -14
- c2cgeoportal_commons/alembic/main/e85afd327ab3_cascade_deletes_to_tsearch.py +9 -6
- c2cgeoportal_commons/alembic/main/ec82a8906649_add_missing_on_delete_cascade_on_layer_.py +13 -10
- c2cgeoportal_commons/alembic/main/ee25d267bf46_main_interface_desktop.py +11 -14
- c2cgeoportal_commons/alembic/main/eeb345672454_merge_2_4_and_master_branches.py +9 -8
- c2cgeoportal_commons/alembic/static/0c640a58a09a_add_opt_key_column.py +9 -6
- c2cgeoportal_commons/alembic/static/107b81f5b9fe_add_missing_delete_cascades.py +9 -6
- c2cgeoportal_commons/alembic/static/1857owc78a07_add_last_login_and_expiration_date.py +7 -6
- c2cgeoportal_commons/alembic/static/1da396a88908_move_user_table_to_static_schema.py +19 -20
- c2cgeoportal_commons/alembic/static/267b4c1bde2e_add_display_name_in_the_user_for_better_.py +62 -0
- c2cgeoportal_commons/alembic/static/3f89a7d71a5e_alter_column_url_to_remove_limitation.py +8 -7
- c2cgeoportal_commons/alembic/static/44c91d82d419_add_table_log.py +72 -0
- c2cgeoportal_commons/alembic/static/53d671b17b20_add_timezone_on_datetime_fields.py +9 -6
- c2cgeoportal_commons/alembic/static/5472fbc19f39_add_temp_password_column.py +9 -6
- c2cgeoportal_commons/alembic/static/76d72fb3fcb9_add_oauth2_pkce.py +70 -0
- c2cgeoportal_commons/alembic/static/7ef947f30f20_add_oauth2_tables.py +9 -6
- c2cgeoportal_commons/alembic/static/910b4ca53b68_sync_model_database.py +186 -0
- c2cgeoportal_commons/alembic/static/aa41e9613256_wip_add_openid_connect_support.py +64 -0
- c2cgeoportal_commons/alembic/static/ae5e88f35669_add_table_user_role.py +15 -18
- c2cgeoportal_commons/alembic/static/bd029dbfc11a_fill_tech_data_column.py +10 -8
- c2cgeoportal_commons/lib/email_.py +14 -16
- c2cgeoportal_commons/lib/literal.py +44 -0
- c2cgeoportal_commons/lib/url.py +164 -58
- c2cgeoportal_commons/lib/validators.py +2 -4
- c2cgeoportal_commons/models/__init__.py +19 -15
- c2cgeoportal_commons/models/main.py +1191 -263
- c2cgeoportal_commons/models/sqlalchemy.py +14 -18
- c2cgeoportal_commons/models/static.py +305 -78
- c2cgeoportal_commons/py.typed +0 -0
- c2cgeoportal_commons/testing/__init__.py +17 -12
- c2cgeoportal_commons/testing/initializedb.py +15 -14
- {c2cgeoportal_commons-2.6.0.dist-info → c2cgeoportal_commons-2.9rc45.dist-info}/METADATA +15 -16
- c2cgeoportal_commons-2.9rc45.dist-info/RECORD +89 -0
- {c2cgeoportal_commons-2.6.0.dist-info → c2cgeoportal_commons-2.9rc45.dist-info}/WHEEL +1 -1
- tests/conftest.py +1 -3
- c2cgeoportal_commons-2.6.0.dist-info/RECORD +0 -76
- {c2cgeoportal_commons-2.6.0.dist-info → c2cgeoportal_commons-2.9rc45.dist-info}/top_level.txt +0 -0
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
#
|
|
2
|
-
|
|
3
|
-
# Copyright (c) 2014-2019, Camptocamp SA
|
|
1
|
+
# Copyright (c) 2014-2024, Camptocamp SA
|
|
4
2
|
# All rights reserved.
|
|
5
3
|
|
|
6
4
|
# Redistribution and use in source and binary forms, with or without
|
|
@@ -27,7 +25,10 @@
|
|
|
27
25
|
# of the authors and should not be interpreted as representing official policies,
|
|
28
26
|
# either expressed or implied, of the FreeBSD Project.
|
|
29
27
|
|
|
30
|
-
|
|
28
|
+
# pylint: disable=no-member,invalid-name
|
|
29
|
+
|
|
30
|
+
"""
|
|
31
|
+
Changes to start the implementation of the version 2.
|
|
31
32
|
|
|
32
33
|
Revision ID: 415746eb9f6
|
|
33
34
|
Revises: None
|
|
@@ -44,14 +45,16 @@ revision = "415746eb9f6"
|
|
|
44
45
|
down_revision = "166ff2dcc48d"
|
|
45
46
|
|
|
46
47
|
|
|
47
|
-
def upgrade():
|
|
48
|
+
def upgrade() -> None:
|
|
49
|
+
"""Upgrade."""
|
|
48
50
|
schema = config["schema"]
|
|
49
51
|
|
|
50
52
|
engine = op.get_bind().engine
|
|
51
|
-
|
|
52
|
-
engine
|
|
53
|
-
|
|
54
|
-
|
|
53
|
+
with engine.connect() as connection:
|
|
54
|
+
if type(engine).__name__ != "MockConnection" and op.get_context().dialect.has_table(
|
|
55
|
+
connection, "interface", schema=schema
|
|
56
|
+
):
|
|
57
|
+
return
|
|
55
58
|
|
|
56
59
|
op.drop_table("user_functionality", schema=schema)
|
|
57
60
|
|
|
@@ -106,12 +109,10 @@ def upgrade():
|
|
|
106
109
|
schema=schema,
|
|
107
110
|
)
|
|
108
111
|
|
|
109
|
-
op.execute(
|
|
110
|
-
"UPDATE ONLY %(schema)s.treeitem SET type = 'layerv1' " "WHERE type='layer'" % {"schema": schema}
|
|
111
|
-
)
|
|
112
|
+
op.execute(f"UPDATE ONLY {schema}.treeitem SET type = 'layerv1' WHERE type='layer'")
|
|
112
113
|
|
|
113
114
|
op.execute(
|
|
114
|
-
"INSERT INTO
|
|
115
|
+
f"INSERT INTO {schema}.layerv1 ("
|
|
115
116
|
"id, is_checked, icon, layer_type, url, image_type, style, dimensions, matrix_set, "
|
|
116
117
|
"wms_url, wms_layers, query_layers, kml, is_single_tile, legend, "
|
|
117
118
|
"legend_image, legend_rule, is_legend_expanded, min_resolution, max_resolution, "
|
|
@@ -125,7 +126,7 @@ def upgrade():
|
|
|
125
126
|
'"minResolution" AS min_resolution, "maxResolution" AS max_resolution, disclaimer, '
|
|
126
127
|
'"identifierAttributeField" AS identifier_attribute_field, '
|
|
127
128
|
'"excludeProperties" AS exclude_properties, "timeMode" AS time_mode '
|
|
128
|
-
"FROM
|
|
129
|
+
f"FROM {schema}.layer)"
|
|
129
130
|
)
|
|
130
131
|
|
|
131
132
|
op.drop_column("layer", "isChecked", schema=schema)
|
|
@@ -156,29 +157,29 @@ def upgrade():
|
|
|
156
157
|
op.bulk_insert(interface, [{"name": "main"}, {"name": "mobile"}, {"name": "edit"}, {"name": "routing"}])
|
|
157
158
|
|
|
158
159
|
op.execute(
|
|
159
|
-
"INSERT INTO
|
|
160
|
+
f"INSERT INTO {schema}.interface_layer (layer_id, interface_id) "
|
|
160
161
|
"(SELECT l.id AS layer_id, i.id AS interface_id "
|
|
161
|
-
"FROM
|
|
162
|
-
"WHERE i.name in ('main', 'edit', 'routing') AND l.\"inDesktopViewer\")"
|
|
162
|
+
f"FROM {schema}.layer AS l, {schema}.interface AS i "
|
|
163
|
+
"WHERE i.name in ('main', 'edit', 'routing') AND l.\"inDesktopViewer\")"
|
|
163
164
|
)
|
|
164
165
|
op.execute(
|
|
165
|
-
"INSERT INTO
|
|
166
|
+
f"INSERT INTO {schema}.interface_layer (layer_id, interface_id) "
|
|
166
167
|
"(SELECT l.id AS layer_id, i.id AS interface_id "
|
|
167
|
-
"FROM
|
|
168
|
-
"WHERE i.name = 'mobile' AND l.\"inMobileViewer\")"
|
|
168
|
+
f"FROM {schema}.layer AS l, {schema}.interface AS i "
|
|
169
|
+
"WHERE i.name = 'mobile' AND l.\"inMobileViewer\")"
|
|
169
170
|
)
|
|
170
171
|
|
|
171
172
|
op.execute(
|
|
172
|
-
"INSERT INTO
|
|
173
|
+
f"INSERT INTO {schema}.interface_theme (theme_id, interface_id) "
|
|
173
174
|
"(SELECT l.id AS theme_id, i.id AS interface_id "
|
|
174
|
-
"FROM
|
|
175
|
-
"WHERE i.name in ('main', 'edit', 'routing') AND l.\"inDesktopViewer\")"
|
|
175
|
+
f"FROM {schema}.theme AS l, {schema}.interface AS i "
|
|
176
|
+
"WHERE i.name in ('main', 'edit', 'routing') AND l.\"inDesktopViewer\")"
|
|
176
177
|
)
|
|
177
178
|
op.execute(
|
|
178
|
-
"INSERT INTO
|
|
179
|
+
f"INSERT INTO {schema}.interface_theme (theme_id, interface_id) "
|
|
179
180
|
"(SELECT l.id AS theme_id, i.id AS interface_id "
|
|
180
|
-
"FROM
|
|
181
|
-
"WHERE i.name = 'mobile' AND l.\"inMobileViewer\")"
|
|
181
|
+
f"FROM {schema}.theme AS l, {schema}.interface AS i "
|
|
182
|
+
"WHERE i.name = 'mobile' AND l.\"inMobileViewer\")"
|
|
182
183
|
)
|
|
183
184
|
|
|
184
185
|
op.drop_column("layer", "inMobileViewer", schema=schema)
|
|
@@ -247,7 +248,8 @@ def upgrade():
|
|
|
247
248
|
)
|
|
248
249
|
|
|
249
250
|
|
|
250
|
-
def downgrade():
|
|
251
|
+
def downgrade() -> None:
|
|
252
|
+
"""Downgrade."""
|
|
251
253
|
schema = config["schema"]
|
|
252
254
|
|
|
253
255
|
op.drop_table("wmts_dimension", schema=schema)
|
|
@@ -269,32 +271,32 @@ def downgrade():
|
|
|
269
271
|
op.alter_column("layergroup", "is_internal_wms", new_column_name="isInternalWMS", schema=schema)
|
|
270
272
|
op.alter_column("layergroup", "is_base_layer", new_column_name="isBaseLayer", schema=schema)
|
|
271
273
|
|
|
272
|
-
op.execute("UPDATE ONLY
|
|
273
|
-
op.execute("UPDATE ONLY
|
|
274
|
+
op.execute(f"UPDATE ONLY {schema}.theme AS t " 'SET "inDesktopViewer" = FALSE')
|
|
275
|
+
op.execute(f"UPDATE ONLY {schema}.layer AS t " 'SET "inDesktopViewer" = FALSE')
|
|
274
276
|
|
|
275
277
|
op.execute(
|
|
276
|
-
"UPDATE ONLY
|
|
278
|
+
f"UPDATE ONLY {schema}.theme AS t "
|
|
277
279
|
'SET "inMobileViewer" = TRUE '
|
|
278
|
-
"FROM
|
|
279
|
-
"WHERE i.name = 'mobile' AND i.id = it.interface_id AND it.theme_id = t.id"
|
|
280
|
+
f"FROM {schema}.interface AS i, {schema}.interface_theme AS it "
|
|
281
|
+
"WHERE i.name = 'mobile' AND i.id = it.interface_id AND it.theme_id = t.id"
|
|
280
282
|
)
|
|
281
283
|
op.execute(
|
|
282
|
-
"UPDATE ONLY
|
|
284
|
+
f"UPDATE ONLY {schema}.theme AS t "
|
|
283
285
|
'SET "inDesktopViewer" = TRUE '
|
|
284
|
-
"FROM
|
|
285
|
-
"WHERE i.name = 'main' AND i.id = it.interface_id AND it.theme_id = t.id"
|
|
286
|
+
f"FROM {schema}.interface AS i, {schema}.interface_theme AS it "
|
|
287
|
+
"WHERE i.name = 'main' AND i.id = it.interface_id AND it.theme_id = t.id"
|
|
286
288
|
)
|
|
287
289
|
op.execute(
|
|
288
|
-
"UPDATE ONLY
|
|
290
|
+
f"UPDATE ONLY {schema}.layer AS l "
|
|
289
291
|
'SET "inMobileViewer" = TRUE '
|
|
290
|
-
"FROM
|
|
291
|
-
"WHERE i.name = 'mobile' AND i.id = il.interface_id AND il.layer_id = l.id"
|
|
292
|
+
f"FROM {schema}.interface AS i, {schema}.interface_layer AS il "
|
|
293
|
+
"WHERE i.name = 'mobile' AND i.id = il.interface_id AND il.layer_id = l.id"
|
|
292
294
|
)
|
|
293
295
|
op.execute(
|
|
294
|
-
"UPDATE ONLY
|
|
296
|
+
f"UPDATE ONLY {schema}.layer AS l "
|
|
295
297
|
'SET "inDesktopViewer" = TRUE '
|
|
296
|
-
"FROM
|
|
297
|
-
"WHERE i.name = 'main' AND i.id = il.interface_id AND il.layer_id = l.id"
|
|
298
|
+
f"FROM {schema}.interface AS i, {schema}.interface_layer AS il "
|
|
299
|
+
"WHERE i.name = 'main' AND i.id = il.interface_id AND il.layer_id = l.id"
|
|
298
300
|
)
|
|
299
301
|
|
|
300
302
|
op.add_column("layer", Column("timeMode", Unicode(8)), schema=schema)
|
|
@@ -322,7 +324,7 @@ def downgrade():
|
|
|
322
324
|
op.add_column("layer", Column("isChecked", Boolean, default=True), schema=schema)
|
|
323
325
|
|
|
324
326
|
op.execute(
|
|
325
|
-
"UPDATE
|
|
327
|
+
f"UPDATE {schema}.layer AS l SET ("
|
|
326
328
|
'id, "isChecked", icon, "layerType", url, "imageType", style, dimensions, "matrixSet", '
|
|
327
329
|
'"wmsUrl", "wmsLayers", "queryLayers", kml, "isSingleTile", legend, "legendImage", '
|
|
328
330
|
'"legendRule", "isLegendExpanded", "minResolution", "maxResolution", disclaimer, '
|
|
@@ -333,7 +335,7 @@ def downgrade():
|
|
|
333
335
|
"o.legend, o.legend_image, o.legend_rule, o.is_legend_expanded, o.min_resolution, "
|
|
334
336
|
"o.max_resolution, o.disclaimer, o.identifier_attribute_field, o.exclude_properties, "
|
|
335
337
|
"o.time_mode "
|
|
336
|
-
") FROM
|
|
338
|
+
f") FROM {schema}.layerv1 AS o WHERE o.id = l.id"
|
|
337
339
|
)
|
|
338
340
|
|
|
339
341
|
op.drop_table("layerv1", schema=schema)
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
# Copyright (c) 2023-2024, Camptocamp SA
|
|
2
|
+
# All rights reserved.
|
|
3
|
+
|
|
4
|
+
# Redistribution and use in source and binary forms, with or without
|
|
5
|
+
# modification, are permitted provided that the following conditions are met:
|
|
6
|
+
|
|
7
|
+
# 1. Redistributions of source code must retain the above copyright notice, this
|
|
8
|
+
# list of conditions and the following disclaimer.
|
|
9
|
+
# 2. Redistributions in binary form must reproduce the above copyright notice,
|
|
10
|
+
# this list of conditions and the following disclaimer in the documentation
|
|
11
|
+
# and/or other materials provided with the distribution.
|
|
12
|
+
|
|
13
|
+
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
|
|
14
|
+
# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
|
15
|
+
# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
|
16
|
+
# DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
|
|
17
|
+
# ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
|
18
|
+
# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
|
19
|
+
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
|
|
20
|
+
# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
21
|
+
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
|
22
|
+
# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
23
|
+
|
|
24
|
+
# The views and conclusions contained in the software and documentation are those
|
|
25
|
+
# of the authors and should not be interpreted as representing official policies,
|
|
26
|
+
# either expressed or implied, of the FreeBSD Project.
|
|
27
|
+
|
|
28
|
+
# pylint: disable=invalid-name
|
|
29
|
+
|
|
30
|
+
"""
|
|
31
|
+
Add table log.
|
|
32
|
+
|
|
33
|
+
Revision ID: 44c91d82d419
|
|
34
|
+
Revises: 04f05bfbb05e
|
|
35
|
+
Create Date: 2023-01-14 08:38:54.640205
|
|
36
|
+
"""
|
|
37
|
+
|
|
38
|
+
import sqlalchemy as sa
|
|
39
|
+
from alembic import op
|
|
40
|
+
from c2c.template.config import config
|
|
41
|
+
|
|
42
|
+
# revision identifiers, used by Alembic.
|
|
43
|
+
revision = "44c91d82d419"
|
|
44
|
+
down_revision = "04f05bfbb05e"
|
|
45
|
+
branch_labels = None
|
|
46
|
+
depends_on = None
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
def upgrade() -> None:
|
|
50
|
+
"""Upgrade."""
|
|
51
|
+
schema = config["schema"]
|
|
52
|
+
|
|
53
|
+
op.create_table(
|
|
54
|
+
"log",
|
|
55
|
+
sa.Column("id", sa.Integer, nullable=False),
|
|
56
|
+
sa.Column("date", sa.DateTime(timezone=True), nullable=False),
|
|
57
|
+
sa.Column("action", sa.Unicode, nullable=False),
|
|
58
|
+
sa.Column("element_type", sa.String(length=50), nullable=False),
|
|
59
|
+
sa.Column("element_id", sa.Integer, nullable=False),
|
|
60
|
+
sa.Column("element_name", sa.Unicode, nullable=False),
|
|
61
|
+
sa.Column("element_url_table", sa.Unicode, nullable=False),
|
|
62
|
+
sa.Column("username", sa.Unicode, nullable=False),
|
|
63
|
+
sa.PrimaryKeyConstraint("id"),
|
|
64
|
+
schema=schema,
|
|
65
|
+
)
|
|
66
|
+
|
|
67
|
+
|
|
68
|
+
def downgrade() -> None:
|
|
69
|
+
"""Downgrade."""
|
|
70
|
+
schema = config["schema"]
|
|
71
|
+
|
|
72
|
+
op.drop_table("log", schema=schema)
|
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
#
|
|
2
|
-
|
|
3
|
-
# Copyright (c) 2015-2019, Camptocamp SA
|
|
1
|
+
# Copyright (c) 2015-2024, Camptocamp SA
|
|
4
2
|
# All rights reserved.
|
|
5
3
|
|
|
6
4
|
# Redistribution and use in source and binary forms, with or without
|
|
@@ -27,13 +25,17 @@
|
|
|
27
25
|
# of the authors and should not be interpreted as representing official policies,
|
|
28
26
|
# either expressed or implied, of the FreeBSD Project.
|
|
29
27
|
|
|
30
|
-
|
|
28
|
+
# pylint: disable=no-member,invalid-name
|
|
29
|
+
|
|
30
|
+
"""
|
|
31
|
+
add column time_widget.
|
|
31
32
|
|
|
32
33
|
Revision ID: 5109242131ce
|
|
33
34
|
Revises: 164ac0819a61
|
|
34
35
|
Create Date: 2015-04-27 17:31:41.760977
|
|
35
36
|
"""
|
|
36
37
|
|
|
38
|
+
import sqlalchemy
|
|
37
39
|
from alembic import op
|
|
38
40
|
from c2c.template.config import config
|
|
39
41
|
from sqlalchemy import Column
|
|
@@ -44,18 +46,18 @@ revision = "5109242131ce"
|
|
|
44
46
|
down_revision = "164ac0819a61"
|
|
45
47
|
|
|
46
48
|
|
|
47
|
-
def upgrade():
|
|
49
|
+
def upgrade() -> None:
|
|
50
|
+
"""Upgrade."""
|
|
48
51
|
schema = config["schema"]
|
|
49
52
|
|
|
50
53
|
# Instructions
|
|
51
54
|
for table in ["layerv1", "layer_internal_wms", "layer_external_wms"]:
|
|
52
55
|
op.add_column(table, Column("time_widget", Unicode(10), default="slider"), schema=schema)
|
|
53
|
-
op.execute(
|
|
54
|
-
"UPDATE {schema!s}.{table!s} SET time_widget = 'slider'".format(schema=schema, table=table)
|
|
55
|
-
)
|
|
56
|
+
op.execute(sqlalchemy.text(f"UPDATE {schema!s}.{table!s} SET time_widget = 'slider'"))
|
|
56
57
|
|
|
57
58
|
|
|
58
|
-
def downgrade():
|
|
59
|
+
def downgrade() -> None:
|
|
60
|
+
"""Downgrade."""
|
|
59
61
|
schema = config["schema"]
|
|
60
62
|
|
|
61
63
|
# Instructions
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
# Copyright (c) 2020-2024, Camptocamp SA
|
|
2
|
+
# All rights reserved.
|
|
3
|
+
|
|
4
|
+
# Redistribution and use in source and binary forms, with or without
|
|
5
|
+
# modification, are permitted provided that the following conditions are met:
|
|
6
|
+
|
|
7
|
+
# 1. Redistributions of source code must retain the above copyright notice, this
|
|
8
|
+
# list of conditions and the following disclaimer.
|
|
9
|
+
# 2. Redistributions in binary form must reproduce the above copyright notice,
|
|
10
|
+
# this list of conditions and the following disclaimer in the documentation
|
|
11
|
+
# and/or other materials provided with the distribution.
|
|
12
|
+
|
|
13
|
+
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
|
|
14
|
+
# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
|
15
|
+
# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
|
16
|
+
# DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
|
|
17
|
+
# ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
|
18
|
+
# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
|
19
|
+
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
|
|
20
|
+
# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
21
|
+
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
|
22
|
+
# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
23
|
+
|
|
24
|
+
# The views and conclusions contained in the software and documentation are those
|
|
25
|
+
# of the authors and should not be interpreted as representing official policies,
|
|
26
|
+
# either expressed or implied, of the FreeBSD Project.
|
|
27
|
+
|
|
28
|
+
# pylint: disable=invalid-name
|
|
29
|
+
|
|
30
|
+
"""
|
|
31
|
+
Add sql fields to vector tiles.
|
|
32
|
+
|
|
33
|
+
Revision ID: 52916d8fde8b
|
|
34
|
+
Revises: a00109812f89
|
|
35
|
+
Create Date: 2021-09-22 13:06:27.165617
|
|
36
|
+
"""
|
|
37
|
+
|
|
38
|
+
from alembic import op
|
|
39
|
+
from c2c.template.config import config
|
|
40
|
+
from sqlalchemy import Column, Unicode
|
|
41
|
+
|
|
42
|
+
# revision identifiers, used by Alembic.
|
|
43
|
+
revision = "52916d8fde8b"
|
|
44
|
+
down_revision = "a00109812f89"
|
|
45
|
+
branch_labels = None
|
|
46
|
+
depends_on = None
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
def upgrade() -> None:
|
|
50
|
+
"""Upgrade."""
|
|
51
|
+
schema = config["schema"]
|
|
52
|
+
table = "layer_vectortiles"
|
|
53
|
+
op.add_column(table, Column("sql", Unicode, nullable=True), schema=schema)
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
def downgrade() -> None:
|
|
57
|
+
"""Downgrade."""
|
|
58
|
+
schema = config["schema"]
|
|
59
|
+
table = "layer_vectortiles"
|
|
60
|
+
op.drop_column(table, "sql", schema=schema)
|
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
#
|
|
2
|
-
|
|
3
|
-
# Copyright (c) 2015-2019, Camptocamp SA
|
|
1
|
+
# Copyright (c) 2015-2024, Camptocamp SA
|
|
4
2
|
# All rights reserved.
|
|
5
3
|
|
|
6
4
|
# Redistribution and use in source and binary forms, with or without
|
|
@@ -27,7 +25,10 @@
|
|
|
27
25
|
# of the authors and should not be interpreted as representing official policies,
|
|
28
26
|
# either expressed or implied, of the FreeBSD Project.
|
|
29
27
|
|
|
30
|
-
|
|
28
|
+
# pylint: disable=no-member,invalid-name
|
|
29
|
+
|
|
30
|
+
"""
|
|
31
|
+
Add theme to full-text search.
|
|
31
32
|
|
|
32
33
|
Revision ID: 53ba1a68d5fe
|
|
33
34
|
Revises: 5109242131ce
|
|
@@ -43,7 +44,8 @@ revision = "53ba1a68d5fe"
|
|
|
43
44
|
down_revision = "5109242131ce"
|
|
44
45
|
|
|
45
46
|
|
|
46
|
-
def upgrade():
|
|
47
|
+
def upgrade() -> None:
|
|
48
|
+
"""Upgrade."""
|
|
47
49
|
schema = config["schema"]
|
|
48
50
|
|
|
49
51
|
op.add_column(
|
|
@@ -63,7 +65,8 @@ def upgrade():
|
|
|
63
65
|
)
|
|
64
66
|
|
|
65
67
|
|
|
66
|
-
def downgrade():
|
|
68
|
+
def downgrade() -> None:
|
|
69
|
+
"""Downgrade."""
|
|
67
70
|
schema = config["schema"]
|
|
68
71
|
|
|
69
72
|
op.drop_index("tsearch_search_index", schema=schema)
|
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
#
|
|
2
|
-
|
|
3
|
-
# Copyright (c) 2014-2019, Camptocamp SA
|
|
1
|
+
# Copyright (c) 2014-2024, Camptocamp SA
|
|
4
2
|
# All rights reserved.
|
|
5
3
|
|
|
6
4
|
# Redistribution and use in source and binary forms, with or without
|
|
@@ -27,7 +25,10 @@
|
|
|
27
25
|
# of the authors and should not be interpreted as representing official policies,
|
|
28
26
|
# either expressed or implied, of the FreeBSD Project.
|
|
29
27
|
|
|
30
|
-
|
|
28
|
+
# pylint: disable=no-member,invalid-name
|
|
29
|
+
|
|
30
|
+
"""
|
|
31
|
+
Add ordering in relation.
|
|
31
32
|
|
|
32
33
|
Revision ID: 54645a535ad6
|
|
33
34
|
Revises: 415746eb9f6
|
|
@@ -44,34 +45,36 @@ revision = "54645a535ad6"
|
|
|
44
45
|
down_revision = "415746eb9f6"
|
|
45
46
|
|
|
46
47
|
|
|
47
|
-
def upgrade():
|
|
48
|
+
def upgrade() -> None:
|
|
49
|
+
"""Upgrade."""
|
|
48
50
|
schema = config["schema"]
|
|
49
51
|
|
|
50
52
|
op.drop_constraint("layergroup_treeitem_pkey", "layergroup_treeitem", schema=schema)
|
|
51
53
|
op.add_column("layergroup_treeitem", Column("id", Integer, primary_key=True), schema=schema)
|
|
52
54
|
op.add_column("layergroup_treeitem", Column("ordering", Integer), schema=schema)
|
|
53
55
|
op.execute(
|
|
54
|
-
'UPDATE ONLY
|
|
55
|
-
"FROM
|
|
56
|
+
f'UPDATE ONLY {schema}.layergroup_treeitem AS lt SET ordering = ti."order" '
|
|
57
|
+
f"FROM {schema}.treeitem AS ti WHERE ti.id = lt.treeitem_id "
|
|
56
58
|
)
|
|
57
59
|
op.add_column("theme", Column("ordering", Integer), schema=schema)
|
|
58
60
|
op.execute(
|
|
59
|
-
'UPDATE ONLY
|
|
60
|
-
"FROM
|
|
61
|
+
f'UPDATE ONLY {schema}.theme AS t SET ordering = ti."order" '
|
|
62
|
+
f"FROM {schema}.treeitem AS ti WHERE ti.id = t.id "
|
|
61
63
|
)
|
|
62
64
|
op.drop_column("treeitem", "order", schema=schema)
|
|
63
65
|
|
|
64
66
|
|
|
65
|
-
def downgrade():
|
|
67
|
+
def downgrade() -> None:
|
|
68
|
+
"""Downgrade."""
|
|
66
69
|
schema = config["schema"]
|
|
67
70
|
op.add_column("treeitem", Column("order", Integer), schema=schema)
|
|
68
71
|
op.execute(
|
|
69
|
-
'UPDATE ONLY
|
|
70
|
-
"FROM
|
|
72
|
+
f'UPDATE ONLY {schema}.treeitem AS ti SET "order" = lt.ordering '
|
|
73
|
+
f"FROM {schema}.layergroup_treeitem AS lt WHERE ti.id = lt.treeitem_id "
|
|
71
74
|
)
|
|
72
75
|
op.execute(
|
|
73
|
-
'UPDATE ONLY
|
|
74
|
-
"FROM
|
|
76
|
+
f'UPDATE ONLY {schema}.treeitem AS ti SET "order" = t.ordering '
|
|
77
|
+
f"FROM {schema}.theme AS t WHERE ti.id = t.id "
|
|
75
78
|
)
|
|
76
79
|
op.drop_column("theme", "ordering", schema=schema)
|
|
77
80
|
op.drop_column("layergroup_treeitem", "ordering", schema=schema)
|
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
#
|
|
2
|
-
|
|
3
|
-
# Copyright (c) 2019, Camptocamp SA
|
|
1
|
+
# Copyright (c) 2019-2024, Camptocamp SA
|
|
4
2
|
# All rights reserved.
|
|
5
3
|
|
|
6
4
|
# Redistribution and use in source and binary forms, with or without
|
|
@@ -27,7 +25,10 @@
|
|
|
27
25
|
# of the authors and should not be interpreted as representing official policies,
|
|
28
26
|
# either expressed or implied, of the FreeBSD Project.
|
|
29
27
|
|
|
30
|
-
|
|
28
|
+
# pylint: disable=no-member,invalid-name
|
|
29
|
+
|
|
30
|
+
"""
|
|
31
|
+
Fix removing layerv1.
|
|
31
32
|
|
|
32
33
|
Revision ID: 56dc90838d90
|
|
33
34
|
Revises: 1de20166b274
|
|
@@ -44,7 +45,8 @@ branch_labels = None
|
|
|
44
45
|
depends_on = None
|
|
45
46
|
|
|
46
47
|
|
|
47
|
-
def upgrade():
|
|
48
|
+
def upgrade() -> None:
|
|
49
|
+
"""Upgrade."""
|
|
48
50
|
schema = config["schema"]
|
|
49
51
|
|
|
50
52
|
op.execute(
|
|
@@ -54,8 +56,8 @@ def upgrade():
|
|
|
54
56
|
");"
|
|
55
57
|
).format(schema=schema)
|
|
56
58
|
)
|
|
57
|
-
op.execute("DELETE from {schema}.treeitem WHERE type = 'layerv1';"
|
|
59
|
+
op.execute(f"DELETE from {schema}.treeitem WHERE type = 'layerv1';")
|
|
58
60
|
|
|
59
61
|
|
|
60
|
-
def downgrade():
|
|
61
|
-
|
|
62
|
+
def downgrade() -> None:
|
|
63
|
+
"""Downgrade."""
|
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
#
|
|
2
|
-
|
|
3
|
-
# Copyright (c) 2016-2019, Camptocamp SA
|
|
1
|
+
# Copyright (c) 2016-2024, Camptocamp SA
|
|
4
2
|
# All rights reserved.
|
|
5
3
|
|
|
6
4
|
# Redistribution and use in source and binary forms, with or without
|
|
@@ -27,7 +25,10 @@
|
|
|
27
25
|
# of the authors and should not be interpreted as representing official policies,
|
|
28
26
|
# either expressed or implied, of the FreeBSD Project.
|
|
29
27
|
|
|
30
|
-
|
|
28
|
+
# pylint: disable=no-member,invalid-name
|
|
29
|
+
|
|
30
|
+
"""
|
|
31
|
+
separate local internal.
|
|
31
32
|
|
|
32
33
|
Revision ID: 596ba21e3833
|
|
33
34
|
Revises: ec82a8906649
|
|
@@ -44,29 +45,27 @@ branch_labels = None
|
|
|
44
45
|
depends_on = None
|
|
45
46
|
|
|
46
47
|
|
|
47
|
-
def upgrade():
|
|
48
|
+
def upgrade() -> None:
|
|
49
|
+
"""Upgrade."""
|
|
48
50
|
schema = config["schema"]
|
|
49
51
|
|
|
50
52
|
op.execute(
|
|
51
|
-
"""
|
|
53
|
+
f"""
|
|
52
54
|
UPDATE "{schema}".ogc_server
|
|
53
55
|
SET url = 'config://internal/mapserv'
|
|
54
56
|
WHERE url = 'config://local/mapserv'
|
|
55
|
-
|
|
56
|
-
schema=schema
|
|
57
|
-
)
|
|
57
|
+
"""
|
|
58
58
|
)
|
|
59
59
|
|
|
60
60
|
|
|
61
|
-
def downgrade():
|
|
61
|
+
def downgrade() -> None:
|
|
62
|
+
"""Downgrade."""
|
|
62
63
|
schema = config["schema"]
|
|
63
64
|
|
|
64
65
|
op.execute(
|
|
65
|
-
"""
|
|
66
|
+
f"""
|
|
66
67
|
UPDATE "{schema}".ogc_server
|
|
67
68
|
SET url = 'config://local/mapserv'
|
|
68
69
|
WHERE url = 'config://internal/mapserv'
|
|
69
|
-
|
|
70
|
-
schema=schema
|
|
71
|
-
)
|
|
70
|
+
"""
|
|
72
71
|
)
|
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
#
|
|
2
|
-
|
|
3
|
-
# Copyright (c) 2019, Camptocamp SA
|
|
1
|
+
# Copyright (c) 2019-2024, Camptocamp SA
|
|
4
2
|
# All rights reserved.
|
|
5
3
|
|
|
6
4
|
# Redistribution and use in source and binary forms, with or without
|
|
@@ -27,7 +25,10 @@
|
|
|
27
25
|
# of the authors and should not be interpreted as representing official policies,
|
|
28
26
|
# either expressed or implied, of the FreeBSD Project.
|
|
29
27
|
|
|
30
|
-
|
|
28
|
+
# pylint: disable=no-member,invalid-name
|
|
29
|
+
|
|
30
|
+
"""
|
|
31
|
+
Add vector tiles layers table.
|
|
31
32
|
|
|
32
33
|
Revision ID: 678f88c7ad5e
|
|
33
34
|
Revises: 028477929d13
|
|
@@ -45,7 +46,8 @@ branch_labels = None
|
|
|
45
46
|
depends_on = None
|
|
46
47
|
|
|
47
48
|
|
|
48
|
-
def upgrade():
|
|
49
|
+
def upgrade() -> None:
|
|
50
|
+
"""Upgrade."""
|
|
49
51
|
schema = config["schema"]
|
|
50
52
|
|
|
51
53
|
op.create_table(
|
|
@@ -57,7 +59,8 @@ def upgrade():
|
|
|
57
59
|
)
|
|
58
60
|
|
|
59
61
|
|
|
60
|
-
def downgrade():
|
|
62
|
+
def downgrade() -> None:
|
|
63
|
+
"""Downgrade."""
|
|
61
64
|
schema = config["schema"]
|
|
62
65
|
|
|
63
66
|
op.drop_table("layer_vectortiles", schema=schema)
|
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
#
|
|
2
|
-
|
|
3
|
-
# Copyright (c) 2016-2019, Camptocamp SA
|
|
1
|
+
# Copyright (c) 2016-2024, Camptocamp SA
|
|
4
2
|
# All rights reserved.
|
|
5
3
|
|
|
6
4
|
# Redistribution and use in source and binary forms, with or without
|
|
@@ -27,7 +25,10 @@
|
|
|
27
25
|
# of the authors and should not be interpreted as representing official policies,
|
|
28
26
|
# either expressed or implied, of the FreeBSD Project.
|
|
29
27
|
|
|
30
|
-
|
|
28
|
+
# pylint: disable=no-member,invalid-name
|
|
29
|
+
|
|
30
|
+
"""
|
|
31
|
+
Rename ServerOGC to OGCServer.
|
|
31
32
|
|
|
32
33
|
Revision ID: 6a412d9437b1
|
|
33
34
|
Revises: 29f2a32859ec
|
|
@@ -44,7 +45,8 @@ branch_labels = None
|
|
|
44
45
|
depends_on = None
|
|
45
46
|
|
|
46
47
|
|
|
47
|
-
def upgrade():
|
|
48
|
+
def upgrade() -> None:
|
|
49
|
+
"""Upgrade."""
|
|
48
50
|
schema = config["schema"]
|
|
49
51
|
|
|
50
52
|
op.rename_table("server_ogc", "ogc_server", schema=schema)
|
|
@@ -52,7 +54,8 @@ def upgrade():
|
|
|
52
54
|
table_op.alter_column("server_ogc_id", new_column_name="ogc_server_id")
|
|
53
55
|
|
|
54
56
|
|
|
55
|
-
def downgrade():
|
|
57
|
+
def downgrade() -> None:
|
|
58
|
+
"""Downgrade."""
|
|
56
59
|
schema = config["schema"]
|
|
57
60
|
|
|
58
61
|
op.rename_table("ogc_server", "server_ogc", schema=schema)
|