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.

Files changed (88) hide show
  1. c2cgeoportal_commons/__init__.py +2 -5
  2. c2cgeoportal_commons/alembic/env.py +49 -33
  3. c2cgeoportal_commons/alembic/main/028477929d13_add_technical_roles.py +10 -7
  4. c2cgeoportal_commons/alembic/main/04f05bfbb05e_remove_the_old_is_expanded_column.py +62 -0
  5. c2cgeoportal_commons/alembic/main/116b9b79fc4d_internal_and_external_layer_tables_.py +42 -43
  6. c2cgeoportal_commons/alembic/main/1418cb05921b_merge_1_6_and_master_branches.py +9 -8
  7. c2cgeoportal_commons/alembic/main/164ac0819a61_add_image_format_to_wmts_layer.py +9 -6
  8. c2cgeoportal_commons/alembic/main/166ff2dcc48d_create_database.py +21 -24
  9. c2cgeoportal_commons/alembic/main/16e43f8c0330_remove_old_metadata_column.py +9 -6
  10. c2cgeoportal_commons/alembic/main/1d5d4abfebd1_add_restricted_theme.py +14 -8
  11. c2cgeoportal_commons/alembic/main/1de20166b274_remove_v1_artifacts.py +9 -6
  12. c2cgeoportal_commons/alembic/main/20137477bd02_update_icons_url.py +9 -6
  13. c2cgeoportal_commons/alembic/main/21f11066f8ec_trigger_on_role_updates_user_in_static.py +21 -20
  14. c2cgeoportal_commons/alembic/main/22e6dfb556de_add_description_tree_.py +9 -6
  15. c2cgeoportal_commons/alembic/main/29f2a32859ec_merge_1_6_and_master_branches.py +9 -8
  16. c2cgeoportal_commons/alembic/main/2b8ed8c1df94_set_layergroup_treeitem_is_as_a_primary_.py +9 -6
  17. c2cgeoportal_commons/alembic/main/2e57710fecfe_update_the_ogc_server_for_ogc_api.py +71 -0
  18. c2cgeoportal_commons/alembic/main/32527659d57b_move_exclude_properties_from_layerv1_to_.py +15 -12
  19. c2cgeoportal_commons/alembic/main/32b21aa1d0ed_merge_e004f76e951a_and_e004f76e951a_.py +9 -8
  20. c2cgeoportal_commons/alembic/main/338b57593823_remove_trigger_on_role_name_change.py +25 -24
  21. c2cgeoportal_commons/alembic/main/415746eb9f6_changes_for_v2.py +45 -43
  22. c2cgeoportal_commons/alembic/main/44c91d82d419_add_table_log.py +72 -0
  23. c2cgeoportal_commons/alembic/main/5109242131ce_add_column_time_widget.py +11 -9
  24. c2cgeoportal_commons/alembic/main/52916d8fde8b_add_sql_fields_to_vector_tiles.py +60 -0
  25. c2cgeoportal_commons/alembic/main/53ba1a68d5fe_add_theme_to_fulltextsearch.py +9 -6
  26. c2cgeoportal_commons/alembic/main/54645a535ad6_add_ordering_in_relation.py +17 -14
  27. c2cgeoportal_commons/alembic/main/56dc90838d90_fix_removing_layerv1.py +10 -8
  28. c2cgeoportal_commons/alembic/main/596ba21e3833_separate_local_internal.py +13 -14
  29. c2cgeoportal_commons/alembic/main/678f88c7ad5e_add_vector_tiles_layers_table.py +9 -6
  30. c2cgeoportal_commons/alembic/main/6a412d9437b1_rename_serverogc_to_ogcserver.py +9 -6
  31. c2cgeoportal_commons/alembic/main/6d87fdad275a_convert_metadata_to_the_right_case.py +13 -20
  32. c2cgeoportal_commons/alembic/main/7530011a66a7_trigger_on_role_updates_user_in_static.py +21 -20
  33. c2cgeoportal_commons/alembic/main/78fd093c8393_add_api_s_intrfaces.py +36 -52
  34. c2cgeoportal_commons/alembic/main/7d271f4527cd_add_layer_column_in_layerv1_table.py +9 -6
  35. c2cgeoportal_commons/alembic/main/809650bd04c3_add_dimension_field.py +9 -6
  36. c2cgeoportal_commons/alembic/main/8117bb9bba16_use_dimension_on_all_the_layers.py +9 -6
  37. c2cgeoportal_commons/alembic/main/87f8330ed64e_add_missing_delete_cascades.py +9 -6
  38. c2cgeoportal_commons/alembic/main/9268a1dffac0_add_trigger_to_be_able_to_correctly_.py +11 -8
  39. c2cgeoportal_commons/alembic/main/94db7e7e5b21_merge_2_2_and_master_branches.py +9 -8
  40. c2cgeoportal_commons/alembic/main/951ff84bd8ec_be_able_to_delete_a_wms_layer_in_sql.py +9 -6
  41. c2cgeoportal_commons/alembic/main/a00109812f89_add_field_layer_wms_valid.py +11 -8
  42. c2cgeoportal_commons/alembic/main/a4558f032d7d_add_support_of_cog_layers.py +74 -0
  43. c2cgeoportal_commons/alembic/main/a4f1aac9bda_merge_1_6_and_master_branches.py +9 -8
  44. c2cgeoportal_commons/alembic/main/b60f2a505f42_remame_uimetadata_to_metadata.py +9 -6
  45. c2cgeoportal_commons/alembic/main/b6b09f414fe8_sync_model_database.py +165 -0
  46. c2cgeoportal_commons/alembic/main/c75124553bf3_remove_deprecated_columns.py +9 -6
  47. c2cgeoportal_commons/alembic/main/d48a63b348f1_change_mapserver_url_for_docker.py +13 -14
  48. c2cgeoportal_commons/alembic/main/d8ef99bc227e_be_able_to_delete_a_linked_functionality.py +15 -12
  49. c2cgeoportal_commons/alembic/main/daf738d5bae4_merge_2_0_and_master_branches.py +9 -8
  50. c2cgeoportal_commons/alembic/main/dba87f2647f9_merge_2_2_on_2_3.py +9 -8
  51. c2cgeoportal_commons/alembic/main/e004f76e951a_add_missing_not_null.py +15 -32
  52. c2cgeoportal_commons/alembic/main/e7e03dedade3_put_the_default_wms_server_in_the_.py +13 -14
  53. c2cgeoportal_commons/alembic/main/e85afd327ab3_cascade_deletes_to_tsearch.py +9 -6
  54. c2cgeoportal_commons/alembic/main/ec82a8906649_add_missing_on_delete_cascade_on_layer_.py +13 -10
  55. c2cgeoportal_commons/alembic/main/ee25d267bf46_main_interface_desktop.py +11 -14
  56. c2cgeoportal_commons/alembic/main/eeb345672454_merge_2_4_and_master_branches.py +9 -8
  57. c2cgeoportal_commons/alembic/static/0c640a58a09a_add_opt_key_column.py +9 -6
  58. c2cgeoportal_commons/alembic/static/107b81f5b9fe_add_missing_delete_cascades.py +9 -6
  59. c2cgeoportal_commons/alembic/static/1857owc78a07_add_last_login_and_expiration_date.py +7 -6
  60. c2cgeoportal_commons/alembic/static/1da396a88908_move_user_table_to_static_schema.py +19 -20
  61. c2cgeoportal_commons/alembic/static/267b4c1bde2e_add_display_name_in_the_user_for_better_.py +62 -0
  62. c2cgeoportal_commons/alembic/static/3f89a7d71a5e_alter_column_url_to_remove_limitation.py +8 -7
  63. c2cgeoportal_commons/alembic/static/44c91d82d419_add_table_log.py +72 -0
  64. c2cgeoportal_commons/alembic/static/53d671b17b20_add_timezone_on_datetime_fields.py +9 -6
  65. c2cgeoportal_commons/alembic/static/5472fbc19f39_add_temp_password_column.py +9 -6
  66. c2cgeoportal_commons/alembic/static/76d72fb3fcb9_add_oauth2_pkce.py +70 -0
  67. c2cgeoportal_commons/alembic/static/7ef947f30f20_add_oauth2_tables.py +9 -6
  68. c2cgeoportal_commons/alembic/static/910b4ca53b68_sync_model_database.py +186 -0
  69. c2cgeoportal_commons/alembic/static/aa41e9613256_wip_add_openid_connect_support.py +64 -0
  70. c2cgeoportal_commons/alembic/static/ae5e88f35669_add_table_user_role.py +15 -18
  71. c2cgeoportal_commons/alembic/static/bd029dbfc11a_fill_tech_data_column.py +10 -8
  72. c2cgeoportal_commons/lib/email_.py +14 -16
  73. c2cgeoportal_commons/lib/literal.py +44 -0
  74. c2cgeoportal_commons/lib/url.py +164 -58
  75. c2cgeoportal_commons/lib/validators.py +2 -4
  76. c2cgeoportal_commons/models/__init__.py +19 -15
  77. c2cgeoportal_commons/models/main.py +1191 -263
  78. c2cgeoportal_commons/models/sqlalchemy.py +14 -18
  79. c2cgeoportal_commons/models/static.py +305 -78
  80. c2cgeoportal_commons/py.typed +0 -0
  81. c2cgeoportal_commons/testing/__init__.py +17 -12
  82. c2cgeoportal_commons/testing/initializedb.py +15 -14
  83. {c2cgeoportal_commons-2.6.0.dist-info → c2cgeoportal_commons-2.9rc45.dist-info}/METADATA +15 -16
  84. c2cgeoportal_commons-2.9rc45.dist-info/RECORD +89 -0
  85. {c2cgeoportal_commons-2.6.0.dist-info → c2cgeoportal_commons-2.9rc45.dist-info}/WHEEL +1 -1
  86. tests/conftest.py +1 -3
  87. c2cgeoportal_commons-2.6.0.dist-info/RECORD +0 -76
  88. {c2cgeoportal_commons-2.6.0.dist-info → c2cgeoportal_commons-2.9rc45.dist-info}/top_level.txt +0 -0
@@ -1,6 +1,4 @@
1
- # -*- coding: utf-8 -*-
2
-
3
- # Copyright (c) 2017, Camptocamp SA
1
+ # Copyright (c) 2017-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
- """Convert the metadata to the right case
28
+ # pylint: disable=no-member,invalid-name
29
+
30
+ """
31
+ Convert the metadata to the right case.
31
32
 
32
33
  Revision ID: 6d87fdad275a
33
34
  Revises: 9268a1dffac0
@@ -44,29 +45,21 @@ 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
 
52
+ op.execute(f"UPDATE ONLY {schema}.metadata SET name = 'copyTo' where name = 'copy_to'")
50
53
  op.execute(
51
- "UPDATE ONLY {schema}.metadata SET name = 'copyTo' where name = 'copy_to'".format(schema=schema)
54
+ f"UPDATE ONLY {schema}.metadata SET name = 'geometryValidation' where name = 'geometry_validation'"
52
55
  )
53
- # fmt: off
54
- op.execute(
55
- "UPDATE ONLY {schema}.metadata SET name = 'geometryValidation' where name = 'geometry_validation'"
56
- .format(schema=schema)
57
- )
58
- # fmt: on
59
56
 
60
57
 
61
- def downgrade():
58
+ def downgrade() -> None:
59
+ """Downgrade."""
62
60
  schema = config["schema"]
63
61
 
62
+ op.execute(f"UPDATE ONLY {schema}.metadata SET name = 'copy_to' where name = 'copyTo'")
64
63
  op.execute(
65
- "UPDATE ONLY {schema}.metadata SET name = 'copy_to' where name = 'copyTo'".format(schema=schema)
66
- )
67
- # fmt: off
68
- op.execute(
69
- "UPDATE ONLY {schema}.metadata SET name = 'geometry_validation' where name = 'geometryValidation'"
70
- .format(schema=schema)
64
+ f"UPDATE ONLY {schema}.metadata SET name = 'geometry_validation' where name = 'geometryValidation'"
71
65
  )
72
- # fmt: on
@@ -1,6 +1,4 @@
1
- # -*- coding: utf-8 -*-
2
-
3
- # Copyright (c) 2018-2019, Camptocamp SA
1
+ # Copyright (c) 2018-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
- """trigger_on_role_updates_user_in_static
28
+ # pylint: disable=no-member,invalid-name
29
+
30
+ """
31
+ trigger_on_role_updates_user_in_static.
31
32
 
32
33
  Revision ID: 7530011a66a7
33
34
  Revises: d8ef99bc227e
@@ -44,29 +45,29 @@ 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
  staticschema = config["schema_static"]
50
52
 
51
53
  op.execute(
52
- """
53
- CREATE OR REPLACE FUNCTION {schema}.on_role_name_change()
54
- RETURNS trigger AS
55
- $$
56
- BEGIN
57
- IF NEW.name <> OLD.name THEN
58
- UPDATE {staticschema}."user" SET role_name = NEW.name WHERE role_name = OLD.name;
59
- END IF;
60
- RETURN NEW;
61
- END;
62
- $$
63
- LANGUAGE plpgsql""".format(
64
- schema=schema, staticschema=staticschema
65
- )
54
+ f"""
55
+ CREATE OR REPLACE FUNCTION {schema}.on_role_name_change()
56
+ RETURNS trigger AS
57
+ $$
58
+ BEGIN
59
+ IF NEW.name <> OLD.name THEN
60
+ UPDATE {staticschema}."user" SET role_name = NEW.name WHERE role_name = OLD.name;
61
+ END IF;
62
+ RETURN NEW;
63
+ END;
64
+ $$
65
+ LANGUAGE plpgsql"""
66
66
  )
67
67
 
68
68
 
69
- def downgrade():
69
+ def downgrade() -> None:
70
+ """Downgrade."""
70
71
  schema = config["schema"]
71
72
 
72
73
  op.execute(
@@ -1,6 +1,4 @@
1
- # -*- coding: utf-8 -*-
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,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
- """Add API's intrfaces
28
+ # pylint: disable=no-member,invalid-name
29
+
30
+ """
31
+ Add API's interfaces.
31
32
 
32
33
  Revision ID: 78fd093c8393
33
34
  Revises: e85afd327ab3
34
35
  Create Date: 2019-08-29 07:56:15.547216
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, MetaData, Table
@@ -46,7 +48,8 @@ branch_labels = None
46
48
  depends_on = None
47
49
 
48
50
 
49
- def upgrade():
51
+ def upgrade() -> None:
52
+ """Upgrade."""
50
53
  schema = config["schema"]
51
54
 
52
55
  # Instructions
@@ -54,41 +57,32 @@ def upgrade():
54
57
  connection = op.get_bind()
55
58
  for interface_name in ("api", "iframe_api"):
56
59
  result = connection.execute(
57
- "SELECT count(name) FROM {schema}.interface WHERE name='{name}'".format(
58
- name=interface_name, schema=schema
59
- )
60
+ sqlalchemy.text(f"SELECT count(name) FROM {schema}.interface WHERE name=:interface_name"),
61
+ {"interface_name": interface_name},
60
62
  )
61
- if result.fetchone()[0] == 0:
63
+ if result.fetchone()[0] == 0: # type: ignore[index]
62
64
  op.bulk_insert(interface, [{"name": interface_name}])
63
65
  for interface_name in ("edit", "routing"):
64
66
  result = connection.execute(
65
- "SELECT count(name) FROM {schema}.interface WHERE name='{name}'".format(
66
- name=interface_name, schema=schema
67
- )
67
+ sqlalchemy.text(f"SELECT count(name) FROM {schema}.interface WHERE name=:interface_name"),
68
+ {"interface_name": interface_name},
68
69
  )
69
- if result.fetchone()[0] != 0:
70
+ if result.fetchone()[0] != 0: # type: ignore[index]
70
71
  op.execute(
71
- "DELETE FROM {schema}.interface_theme it "
72
- "USING {schema}.interface i "
73
- "WHERE it.interface_id = i.id AND i.name = '{name}'".format(
74
- name=interface_name, schema=schema
75
- )
72
+ f"DELETE FROM {schema}.interface_theme it "
73
+ f"USING {schema}.interface i "
74
+ f"WHERE it.interface_id = i.id AND i.name = '{interface_name}'"
76
75
  )
77
76
  op.execute(
78
- "DELETE FROM {schema}.interface_layer il "
79
- "USING {schema}.interface i "
80
- "WHERE il.interface_id = i.id AND i.name = '{name}'".format(
81
- name=interface_name, schema=schema
82
- )
83
- )
84
- op.execute(
85
- "DELETE FROM {schema}.interface WHERE name='{name}'".format(
86
- name=interface_name, schema=schema
87
- )
77
+ f"DELETE FROM {schema}.interface_layer il "
78
+ f"USING {schema}.interface i "
79
+ f"WHERE il.interface_id = i.id AND i.name = '{interface_name}'"
88
80
  )
81
+ op.execute(f"DELETE FROM {schema}.interface WHERE name='{interface_name}'")
89
82
 
90
83
 
91
- def downgrade():
84
+ def downgrade() -> None:
85
+ """Downgrade."""
92
86
  schema = config["schema"]
93
87
 
94
88
  # Instructions
@@ -96,35 +90,25 @@ def downgrade():
96
90
  connection = op.get_bind()
97
91
  for interface_name in ("edit", "routing"):
98
92
  result = connection.execute(
99
- "SELECT count(name) FROM {schema}.interface WHERE name='{name}'".format(
100
- name=interface_name, schema=schema
101
- )
93
+ sqlalchemy.text(f"SELECT count(name) FROM {schema}.interface WHERE name=:interface_name"),
94
+ {"interface_name": interface_name},
102
95
  )
103
- if result.fetchone()[0] == 0:
96
+ if result.fetchone()[0] == 0: # type: ignore[index]
104
97
  op.bulk_insert(interface, [{"name": interface_name}])
105
98
  for interface_name in ("api", "iframe_api"):
106
99
  result = connection.execute(
107
- "SELECT count(name) FROM {schema}.interface WHERE name='{name}'".format(
108
- name=interface_name, schema=schema
109
- )
100
+ sqlalchemy.text(f"SELECT count(name) FROM {schema}.interface WHERE name=:interface_name"),
101
+ {"interface_name": interface_name},
110
102
  )
111
- if result.fetchone()[0] != 0:
112
- op.execute(
113
- "DELETE FROM {schema}.interface_theme it "
114
- "USING {schema}.interface i "
115
- "WHERE it.interface_id = i.id AND i.name = '{name}'".format(
116
- name=interface_name, schema=schema
117
- )
118
- )
103
+ if result.fetchone()[0] != 0: # type: ignore[index]
119
104
  op.execute(
120
- "DELETE FROM {schema}.interface_layer il "
121
- "USING {schema}.interface i "
122
- "WHERE il.interface_id = i.id AND i.name = '{name}'".format(
123
- name=interface_name, schema=schema
124
- )
105
+ f"DELETE FROM {schema}.interface_theme it "
106
+ f"USING {schema}.interface i "
107
+ f"WHERE it.interface_id = i.id AND i.name = '{interface_name}'"
125
108
  )
126
109
  op.execute(
127
- "DELETE FROM {schema}.interface WHERE name='{name}'".format(
128
- name=interface_name, schema=schema
129
- )
110
+ f"DELETE FROM {schema}.interface_layer il "
111
+ f"USING {schema}.interface i "
112
+ f"WHERE il.interface_id = i.id AND i.name = '{interface_name}'"
130
113
  )
114
+ op.execute(f"DELETE FROM {schema}.interface WHERE name='{interface_name}'")
@@ -1,6 +1,4 @@
1
- # -*- coding: utf-8 -*-
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
- """Add layer column in layerv1 table
28
+ # pylint: disable=no-member,invalid-name
29
+
30
+ """
31
+ Add layer column in layerv1 table.
31
32
 
32
33
  Revision ID: 7d271f4527cd
33
34
  Revises: 8117bb9bba16
@@ -46,7 +47,8 @@ branch_labels = None
46
47
  depends_on = None
47
48
 
48
49
 
49
- def upgrade():
50
+ def upgrade() -> None:
51
+ """Upgrade."""
50
52
  schema = config["schema"]
51
53
 
52
54
  op.add_column("layerv1", Column("layer", Unicode), schema=schema)
@@ -58,7 +60,8 @@ def upgrade():
58
60
  )
59
61
 
60
62
 
61
- def downgrade():
63
+ def downgrade() -> None:
64
+ """Downgrade."""
62
65
  schema = config["schema"]
63
66
 
64
67
  op.drop_column("layerv1", "layer", schema=schema)
@@ -1,6 +1,4 @@
1
- # -*- coding: utf-8 -*-
2
-
3
- # Copyright (c) 2018-2019, Camptocamp SA
1
+ # Copyright (c) 2018-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
- """Add dimension field
28
+ # pylint: disable=no-member,invalid-name
29
+
30
+ """
31
+ Add dimension field.
31
32
 
32
33
  Revision ID: 809650bd04c3
33
34
  Revises: d8ef99bc227e
@@ -46,13 +47,15 @@ branch_labels = None
46
47
  depends_on = None
47
48
 
48
49
 
49
- def upgrade():
50
+ def upgrade() -> None:
51
+ """Upgrade."""
50
52
  schema = config["schema"]
51
53
 
52
54
  op.add_column("dimension", Column("field", Unicode), schema=schema)
53
55
 
54
56
 
55
- def downgrade():
57
+ def downgrade() -> None:
58
+ """Downgrade."""
56
59
  schema = config["schema"]
57
60
 
58
61
  op.drop_column("dimension", "field", schema=schema)
@@ -1,6 +1,4 @@
1
- # -*- coding: utf-8 -*-
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
- """Use dimension on all the layers
28
+ # pylint: disable=no-member,invalid-name
29
+
30
+ """
31
+ Use dimension on all the layers.
31
32
 
32
33
  Revision ID: 8117bb9bba16
33
34
  Revises: daf738d5bae4
@@ -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("wmts_dimension", "dimension", schema=schema)
@@ -59,7 +61,8 @@ def upgrade():
59
61
  )
60
62
 
61
63
 
62
- def downgrade():
64
+ def downgrade() -> None:
65
+ """Downgrade."""
63
66
  schema = config["schema"]
64
67
 
65
68
  with op.batch_alter_table("dimension", schema=schema) as table_op:
@@ -1,6 +1,4 @@
1
- # -*- coding: utf-8 -*-
2
-
3
- # Copyright (c) 2020, Camptocamp SA
1
+ # Copyright (c) 2020-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
- """Add missing delete cascades
28
+ # pylint: disable=no-member,invalid-name
29
+
30
+ """
31
+ Add missing delete cascades.
31
32
 
32
33
  Revision ID: 87f8330ed64e
33
34
  Revises: 16e43f8c0330
@@ -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.drop_constraint(
@@ -177,7 +179,8 @@ def upgrade():
177
179
  op.alter_column("theme", "ordering", existing_type=sa.INTEGER(), nullable=False, schema=schema)
178
180
 
179
181
 
180
- def downgrade():
182
+ def downgrade() -> None:
183
+ """Downgrade."""
181
184
  schema = config["schema"]
182
185
 
183
186
  op.alter_column("theme", "ordering", existing_type=sa.INTEGER(), nullable=True, schema=schema)
@@ -1,6 +1,4 @@
1
- # -*- coding: utf-8 -*-
2
-
3
- # Copyright (c) 2017-2019, Camptocamp SA
1
+ # Copyright (c) 2017-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
- """Add trigger to be able to correctly change the role name
28
+ # pylint: disable=no-member,invalid-name
29
+
30
+ """
31
+ Add trigger to be able to correctly change the role name.
31
32
 
32
33
  Revision ID: 9268a1dffac0
33
34
  Revises: 32b21aa1d0ed
@@ -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(
@@ -70,8 +72,9 @@ LANGUAGE plpgsql""".format(
70
72
  )
71
73
 
72
74
 
73
- def downgrade():
75
+ def downgrade() -> None:
76
+ """Downgrade."""
74
77
  schema = config["schema"]
75
78
 
76
- op.execute("DROP TRIGGER on_role_name_change ON {schema}.role".format(schema=schema))
77
- op.execute("DROP FUNCTION {schema}.on_role_name_change()".format(schema=schema))
79
+ op.execute(f"DROP TRIGGER on_role_name_change ON {schema}.role")
80
+ op.execute(f"DROP FUNCTION {schema}.on_role_name_change()")
@@ -1,6 +1,4 @@
1
- # -*- coding: utf-8 -*-
2
-
3
- # Copyright (c) 2017, Camptocamp SA
1
+ # Copyright (c) 2017-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
- """Merge 2.2 and master branches
28
+ # pylint: disable=invalid-name
29
+
30
+ """
31
+ Merge 2.2 and master branches.
31
32
 
32
33
  Revision ID: 94db7e7e5b21
33
34
  Revises: ('6d87fdad275a', 'd8ef99bc227e')
@@ -41,9 +42,9 @@ branch_labels = None
41
42
  depends_on = None
42
43
 
43
44
 
44
- def upgrade():
45
- pass
45
+ def upgrade() -> None:
46
+ """Upgrade."""
46
47
 
47
48
 
48
- def downgrade():
49
- pass
49
+ def downgrade() -> None:
50
+ """Downgrade."""
@@ -1,6 +1,4 @@
1
- # -*- coding: utf-8 -*-
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
- """Be able to delete a WMS layer in SQL
28
+ # pylint: disable=no-member,invalid-name
29
+
30
+ """
31
+ Be able to delete a WMS layer in SQL.
31
32
 
32
33
  Revision ID: 951ff84bd8ec
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.drop_constraint("layergroup_treeitem_treeitem_id_fkey", "layergroup_treeitem", schema=schema)
@@ -132,7 +134,8 @@ def upgrade():
132
134
  )
133
135
 
134
136
 
135
- def downgrade():
137
+ def downgrade() -> None:
138
+ """Downgrade."""
136
139
  schema = config["schema"]
137
140
 
138
141
  op.drop_constraint("layergroup_treeitem_treeitem_id_fkey", "layergroup_treeitem", schema=schema)
@@ -1,6 +1,4 @@
1
- # -*- coding: utf-8 -*-
2
-
3
- # Copyright (c) 2020, Camptocamp SA
1
+ # Copyright (c) 2020-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
- """Add field layer_wms.valid
28
+ # pylint: disable=no-member,invalid-name
29
+
30
+ """
31
+ Add field layer_wms.valid.
31
32
 
32
33
  Revision ID: a00109812f89
33
34
  Revises: 87f8330ed64e
@@ -45,13 +46,15 @@ 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
- op.add_column("layer_wms", sa.Column("valid", sa.Boolean(), nullable=True), schema=schema)
51
- op.add_column("layer_wms", sa.Column("invalid_reason", sa.Unicode(), nullable=True), schema=schema)
52
+ op.add_column("layer_wms", sa.Column("valid", sa.Boolean, nullable=True), schema=schema)
53
+ op.add_column("layer_wms", sa.Column("invalid_reason", sa.Unicode, nullable=True), schema=schema)
52
54
 
53
55
 
54
- def downgrade():
56
+ def downgrade() -> None:
57
+ """Downgrade."""
55
58
  schema = config["schema"]
56
59
  op.drop_column("layer_wms", "valid", schema=schema)
57
60
  op.drop_column("layer_wms", "invalid_reason", schema=schema)
@@ -0,0 +1,74 @@
1
+ # Copyright (c) 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 support of COG layers.
32
+
33
+ Revision ID: a4558f032d7d
34
+ Revises: b6b09f414fe8
35
+ Create Date: 2024-04-22 12:22:09.336641
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 = "a4558f032d7d"
44
+ down_revision = "b6b09f414fe8"
45
+ branch_labels = None
46
+ depends_on = None
47
+
48
+
49
+ def upgrade() -> None:
50
+ """Upgrade."""
51
+ schema = config["schema"]
52
+
53
+ # ### commands auto generated by Alembic ###
54
+ op.create_table(
55
+ "layer_cog",
56
+ sa.Column("id", sa.Integer(), nullable=False),
57
+ sa.Column("url", sa.Unicode(), nullable=False),
58
+ sa.ForeignKeyConstraint(
59
+ ["id"],
60
+ [f"{schema}.layer.id"],
61
+ ),
62
+ sa.PrimaryKeyConstraint("id"),
63
+ schema=schema,
64
+ )
65
+ # ### end Alembic commands ###
66
+
67
+
68
+ def downgrade() -> None:
69
+ """Downgrade."""
70
+ schema = config["schema"]
71
+
72
+ # ### commands auto generated by Alembic ###
73
+ op.drop_table("layer_cog", schema=schema)
74
+ # ### end Alembic commands ###