From 060baf8adf81dc4be99fe4d1cef437103b3be075 Mon Sep 17 00:00:00 2001 From: Maxime Vergez Date: Mon, 4 Sep 2023 10:55:25 +0200 Subject: [PATCH 01/11] feat(db): group3_inpn in cor_taxref_nomenc + check --- ...803524258bd3_add_group3_inpn_cor_taxref.py | 122 ++++++++++++++++++ 1 file changed, 122 insertions(+) create mode 100644 src/pypnnomenclature/migrations/versions/803524258bd3_add_group3_inpn_cor_taxref.py diff --git a/src/pypnnomenclature/migrations/versions/803524258bd3_add_group3_inpn_cor_taxref.py b/src/pypnnomenclature/migrations/versions/803524258bd3_add_group3_inpn_cor_taxref.py new file mode 100644 index 0000000..13caf80 --- /dev/null +++ b/src/pypnnomenclature/migrations/versions/803524258bd3_add_group3_inpn_cor_taxref.py @@ -0,0 +1,122 @@ +"""add group3_inpn cor_taxref_nomenclature + +Revision ID: 803524258bd3 +Revises: f5436084bf17 +Create Date: 2023-09-04 07:57:35.371378 + +""" +from alembic import op +import sqlalchemy as sa + + +# revision identifiers, used by Alembic. +revision = "803524258bd3" +down_revision = "f5436084bf17" +branch_labels = None +depends_on = None + + +def upgrade(): + op.add_column( + table_name="cor_taxref_nomenclature", + column=sa.Column("group3_inpn", sa.VARCHAR(255), server_default="all"), + schema="ref_nomenclatures", + ) + op.execute( + """ALTER TABLE ref_nomenclatures.cor_taxref_nomenclature + ADD CONSTRAINT check_cor_taxref_nomenclature_isgroup3inpn + CHECK ((taxonomie.check_is_group3inpn((group3_inpn)::text) OR ((group3_inpn)::text = 'all'::text))) NOT VALID""" + ) + op.execute("DROP VIEW ref_nomenclatures.v_nomenclature_taxonomie") + op.execute( + """ +CREATE OR REPLACE VIEW ref_nomenclatures.v_nomenclature_taxonomie +AS SELECT tn.id_type, + tn.label_default AS type_label, + tn.definition_default AS type_definition, + tn.label_fr AS type_label_fr, + tn.definition_fr AS type_definition_fr, + tn.label_en AS type_label_en, + tn.definition_en AS type_definition_en, + tn.label_es AS type_label_es, + tn.definition_es AS type_definition_es, + tn.label_de AS type_label_de, + tn.definition_de AS type_definition_de, + tn.label_it AS type_label_it, + tn.definition_it AS type_definition_it, + ctn.regne, + ctn.group2_inpn, + ctn.group3_inpn, + n.id_nomenclature, + n.mnemonique, + n.label_default AS nomenclature_label, + n.definition_default AS nomenclature_definition, + n.label_fr AS nomenclature_label_fr, + n.definition_fr AS nomenclature_definition_fr, + n.label_en AS nomenclature_label_en, + n.definition_en AS nomenclature_definition_en, + n.label_es AS nomenclature_label_es, + n.definition_es AS nomenclature_definition_es, + n.label_de AS nomenclature_label_de, + n.definition_de AS nomenclature_definition_de, + n.label_it AS nomenclature_label_it, + n.definition_it AS nomenclature_definition_it, + n.id_broader, + n.hierarchy + FROM ref_nomenclatures.t_nomenclatures n + JOIN ref_nomenclatures.bib_nomenclatures_types tn ON tn.id_type = n.id_type + JOIN ref_nomenclatures.cor_taxref_nomenclature ctn ON ctn.id_nomenclature = n.id_nomenclature + WHERE n.active = true + ORDER BY tn.id_type, ctn.regne, ctn.group2_inpn, n.id_nomenclature; + """ + ) + + +def downgrade(): + op.drop_constraint( + constraint_name="check_cor_taxref_nomenclature_isgroup3inpn", + table_name="cor_taxref_nomenclature", + schema="ref_nomenclatures", + ) + op.execute("DROP VIEW ref_nomenclatures.v_nomenclature_taxonomie") + op.drop_column("cor_taxref_nomenclature", "group3_inpn", "ref_nomenclatures") + op.execute( + """ + CREATE VIEW ref_nomenclatures.v_nomenclature_taxonomie +AS SELECT tn.id_type, + tn.label_default AS type_label, + tn.definition_default AS type_definition, + tn.label_fr AS type_label_fr, + tn.definition_fr AS type_definition_fr, + tn.label_en AS type_label_en, + tn.definition_en AS type_definition_en, + tn.label_es AS type_label_es, + tn.definition_es AS type_definition_es, + tn.label_de AS type_label_de, + tn.definition_de AS type_definition_de, + tn.label_it AS type_label_it, + tn.definition_it AS type_definition_it, + ctn.regne, + ctn.group2_inpn, + n.id_nomenclature, + n.mnemonique, + n.label_default AS nomenclature_label, + n.definition_default AS nomenclature_definition, + n.label_fr AS nomenclature_label_fr, + n.definition_fr AS nomenclature_definition_fr, + n.label_en AS nomenclature_label_en, + n.definition_en AS nomenclature_definition_en, + n.label_es AS nomenclature_label_es, + n.definition_es AS nomenclature_definition_es, + n.label_de AS nomenclature_label_de, + n.definition_de AS nomenclature_definition_de, + n.label_it AS nomenclature_label_it, + n.definition_it AS nomenclature_definition_it, + n.id_broader, + n.hierarchy + FROM ref_nomenclatures.t_nomenclatures n + JOIN ref_nomenclatures.bib_nomenclatures_types tn ON tn.id_type = n.id_type + JOIN ref_nomenclatures.cor_taxref_nomenclature ctn ON ctn.id_nomenclature = n.id_nomenclature + WHERE n.active = true + ORDER BY tn.id_type, ctn.regne, ctn.group2_inpn, n.id_nomenclature;""" + ) From ebd87bcee92cf9adba16e54e3821faf9b7bf9658 Mon Sep 17 00:00:00 2001 From: Maxime Vergez Date: Mon, 4 Sep 2023 10:55:59 +0200 Subject: [PATCH 02/11] feat(api): group3_inpn in model & filters --- src/pypnnomenclature/models.py | 1 + src/pypnnomenclature/repository.py | 7 +++++-- src/pypnnomenclature/routes.py | 6 ++++++ 3 files changed, 12 insertions(+), 2 deletions(-) diff --git a/src/pypnnomenclature/models.py b/src/pypnnomenclature/models.py index a552346..393d86e 100644 --- a/src/pypnnomenclature/models.py +++ b/src/pypnnomenclature/models.py @@ -166,6 +166,7 @@ class VNomenclatureTaxonomie(db.Model): type_definition_it = db.Column(db.Unicode) regne = db.Column(db.Unicode, primary_key=True) group2_inpn = db.Column(db.Unicode, primary_key=True) + group3_inpn = db.Column(db.Unicode, primary_key=True) id_nomenclature = db.Column(db.Integer, primary_key=True) mnemonique = db.Column(db.Unicode) nomenclature_label = db.Column(db.Unicode) diff --git a/src/pypnnomenclature/repository.py b/src/pypnnomenclature/repository.py index d2249f1..4afb779 100644 --- a/src/pypnnomenclature/repository.py +++ b/src/pypnnomenclature/repository.py @@ -21,6 +21,7 @@ def get_nomenclature_list( code_type=None, regne=None, group2_inpn=None, + group3_inpn=None, hierarchy=None, filter_params=None, ): @@ -56,7 +57,9 @@ def get_nomenclature_list( VNomenclatureTaxonomie.id_nomenclature == TNomenclatures.id_nomenclature, ).where(VNomenclatureTaxonomie.regne.in_(("all", regne))) if group2_inpn: - q = q.where(VNomenclatureTaxonomie.group2_inpn.in_(("all", group2_inpn))) + q = q.filter(VNomenclatureTaxonomie.group2_inpn.in_(("all", group2_inpn))) + if group3_inpn: + q = q.filter(VNomenclatureTaxonomie.group3_inpn.in_(("all", group3_inpn))) if "cd_nomenclature" in filter_params: q = q.where(TNomenclatures.cd_nomenclature.in_(filter_params.getlist("cd_nomenclature"))) # Ordonnancement @@ -146,7 +149,7 @@ def get_nomenclature_with_taxonomy_list(): ] ) nomenclature_dict["taxref"] = [ - tr.as_dict(fields=["regne", "group2_inpn"]) for tr in n.taxref + tr.as_dict(fields=["regne", "group2_inpn", "group3_inpn"]) for tr in n.taxref ] nomenclatures.append(nomenclature_dict) diff --git a/src/pypnnomenclature/routes.py b/src/pypnnomenclature/routes.py index 565be07..3841a61 100644 --- a/src/pypnnomenclature/routes.py +++ b/src/pypnnomenclature/routes.py @@ -24,12 +24,14 @@ def get_nomenclature_by_type_and_taxonomy(id_type): """ regne = request.args.get("regne") group2inpn = request.args.get("group2_inpn") + group3inpn = request.args.get("group3_inpn") response = repository.get_nomenclature_list( **{ "id_type": id_type, "regne": regne, "group2_inpn": group2inpn, + "group3_inpn": group3inpn, "filter_params": request.args, } ) @@ -50,12 +52,14 @@ def get_nomenclature_by_mnemonique_and_taxonomy(code_type): """ regne = request.args.get("regne") group2inpn = request.args.get("group2_inpn") + group3inpn = request.args.get("group3_inpn") response = repository.get_nomenclature_list( **{ "code_type": code_type, "regne": regne, "group2_inpn": group2inpn, + "group3_inpn": group3inpn, "filter_params": request.args, } ) @@ -75,6 +79,7 @@ def get_nomenclature_by_type_list_and_taxonomy(): """ regne = request.args.get("regne") group2inpn = request.args.get("group2_inpn") + group3inpn = request.args.get("group3_inpn") types = [] if "id_type" in request.args: types = request.args.getlist("id_type") @@ -90,6 +95,7 @@ def get_nomenclature_by_type_list_and_taxonomy(): param: id_type, "regne": regne, "group2_inpn": group2inpn, + "group3_inpn": group3inpn, "filter_params": request.args, } ) From 4af6ebade6a8e8f37ca94c242202208cd0d5e6fb Mon Sep 17 00:00:00 2001 From: Maxime Vergez Date: Tue, 5 Sep 2023 14:41:40 +0200 Subject: [PATCH 03/11] feat(db): update the primary key constraint To take also into account the group3_inpn in its uniqueness --- ...803524258bd3_add_group3_inpn_cor_taxref.py | 25 ++++++++++++++----- 1 file changed, 19 insertions(+), 6 deletions(-) diff --git a/src/pypnnomenclature/migrations/versions/803524258bd3_add_group3_inpn_cor_taxref.py b/src/pypnnomenclature/migrations/versions/803524258bd3_add_group3_inpn_cor_taxref.py index 13caf80..db20708 100644 --- a/src/pypnnomenclature/migrations/versions/803524258bd3_add_group3_inpn_cor_taxref.py +++ b/src/pypnnomenclature/migrations/versions/803524258bd3_add_group3_inpn_cor_taxref.py @@ -25,8 +25,17 @@ def upgrade(): op.execute( """ALTER TABLE ref_nomenclatures.cor_taxref_nomenclature ADD CONSTRAINT check_cor_taxref_nomenclature_isgroup3inpn - CHECK ((taxonomie.check_is_group3inpn((group3_inpn)::text) OR ((group3_inpn)::text = 'all'::text))) NOT VALID""" + CHECK ((taxonomie.check_is_group3inpn((group3_inpn)::text) OR ((group3_inpn)::text = 'all'::text))) NOT VALID + """ ) + with op.batch_alter_table( + table_name="cor_taxref_nomenclature", schema="ref_nomenclatures" + ) as batch: + batch.drop_constraint("pk_cor_taxref_nomenclature") + batch.create_primary_key( + constraint_name="pk_cor_taxref_nomenclature", + columns=["id_nomenclature", "regne", "group2_inpn", "group3_inpn"], + ) op.execute("DROP VIEW ref_nomenclatures.v_nomenclature_taxonomie") op.execute( """ @@ -73,11 +82,15 @@ def upgrade(): def downgrade(): - op.drop_constraint( - constraint_name="check_cor_taxref_nomenclature_isgroup3inpn", - table_name="cor_taxref_nomenclature", - schema="ref_nomenclatures", - ) + with op.batch_alter_table( + table_name="cor_taxref_nomenclature", schema="ref_nomenclatures" + ) as batch: + batch.drop_constraint("check_cor_taxref_nomenclature_isgroup3inpn") + batch.drop_constraint("pk_cor_taxref_nomenclature") + batch.create_primary_key( + constraint_name="pk_cor_taxref_nomenclature", + columns=["id_nomenclature", "regne", "group2_inpn"], + ) op.execute("DROP VIEW ref_nomenclatures.v_nomenclature_taxonomie") op.drop_column("cor_taxref_nomenclature", "group3_inpn", "ref_nomenclatures") op.execute( From 3565fd037a6665b1db5c86ada795e40ecc4d4982 Mon Sep 17 00:00:00 2001 From: Maxime Vergez Date: Mon, 25 Sep 2023 08:31:04 +0200 Subject: [PATCH 04/11] fix(db): forgot schema parameter name --- .../versions/803524258bd3_add_group3_inpn_cor_taxref.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pypnnomenclature/migrations/versions/803524258bd3_add_group3_inpn_cor_taxref.py b/src/pypnnomenclature/migrations/versions/803524258bd3_add_group3_inpn_cor_taxref.py index db20708..ec55098 100644 --- a/src/pypnnomenclature/migrations/versions/803524258bd3_add_group3_inpn_cor_taxref.py +++ b/src/pypnnomenclature/migrations/versions/803524258bd3_add_group3_inpn_cor_taxref.py @@ -92,7 +92,7 @@ def downgrade(): columns=["id_nomenclature", "regne", "group2_inpn"], ) op.execute("DROP VIEW ref_nomenclatures.v_nomenclature_taxonomie") - op.drop_column("cor_taxref_nomenclature", "group3_inpn", "ref_nomenclatures") + op.drop_column("cor_taxref_nomenclature", "group3_inpn", schema="ref_nomenclatures") op.execute( """ CREATE VIEW ref_nomenclatures.v_nomenclature_taxonomie From f6d9e2306bc37015129dae412fc79786c98ed17c Mon Sep 17 00:00:00 2001 From: Jacobe2169 Date: Thu, 25 Jan 2024 10:24:45 +0100 Subject: [PATCH 05/11] fix lint --- src/pypnnomenclature/repository.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/pypnnomenclature/repository.py b/src/pypnnomenclature/repository.py index 4afb779..c0f20dd 100644 --- a/src/pypnnomenclature/repository.py +++ b/src/pypnnomenclature/repository.py @@ -59,7 +59,8 @@ def get_nomenclature_list( if group2_inpn: q = q.filter(VNomenclatureTaxonomie.group2_inpn.in_(("all", group2_inpn))) if group3_inpn: - q = q.filter(VNomenclatureTaxonomie.group3_inpn.in_(("all", group3_inpn))) + q = q.where(VNomenclatureTaxonomie.group3_inpn.in_(("all", group3_inpn))) + if "cd_nomenclature" in filter_params: q = q.where(TNomenclatures.cd_nomenclature.in_(filter_params.getlist("cd_nomenclature"))) # Ordonnancement From b767e3b52a780d004d6f5623314117d40e4bd125 Mon Sep 17 00:00:00 2001 From: Jacobe2169 Date: Fri, 26 Jan 2024 09:23:15 +0100 Subject: [PATCH 06/11] update taxhub fix requirements --- dependencies/TaxHub | 2 +- requirements.in | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/dependencies/TaxHub b/dependencies/TaxHub index c08e8f3..6ec20cd 160000 --- a/dependencies/TaxHub +++ b/dependencies/TaxHub @@ -1 +1 @@ -Subproject commit c08e8f3f2248a8cc493136b6a2285bc513024a9f +Subproject commit 6ec20cd71eb76366b4f1ff9ed0a18440d1f4d912 diff --git a/requirements.in b/requirements.in index 87331b9..f4eb80a 100755 --- a/requirements.in +++ b/requirements.in @@ -10,4 +10,4 @@ sqlalchemy utils-flask-sqlalchemy>=0.3.0 taxhub>=1.10.0 -pypnusershub>=1.6.0 +pypnusershub>=2.0 From aeacfddc42117922f631b9c91a8ff5ec974ee4af Mon Sep 17 00:00:00 2001 From: Jacobe2169 Date: Fri, 26 Jan 2024 10:23:33 +0100 Subject: [PATCH 07/11] fix requirements fix pytest --- .github/workflows/pytest.yml | 2 ++ dependencies/UsersHub-authentification-module | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/pytest.yml b/.github/workflows/pytest.yml index ef0bc8c..6a90731 100644 --- a/.github/workflows/pytest.yml +++ b/.github/workflows/pytest.yml @@ -53,6 +53,7 @@ jobs: psql -h localhost -U postgres -d postgres -tc 'CREATE EXTENSION "postgis_raster";' psql -h localhost -U postgres -d postgres -tc 'CREATE EXTENSION "uuid-ossp";' psql -h localhost -U postgres -d postgres -tc 'CREATE EXTENSION "pg_trgm";' + psql -h localhost -U taxhubadmin -d taxhub -tc 'CREATE EXTENSION "unaccent";' env: PGPASSWORD: postgres - uses: actions/checkout@v2 @@ -73,6 +74,7 @@ jobs: -e file:dependencies/UsersHub-authentification-module#egg=pypnusershub - name: Install database run: | + flask db upgrade taxonomie@head -x local-srid=2154 flask db upgrade ref_geo@head -x local-srid=2154 flask db upgrade nomenclatures_taxonomie@head flask db autoupgrade diff --git a/dependencies/UsersHub-authentification-module b/dependencies/UsersHub-authentification-module index 0d269c8..d024adb 160000 --- a/dependencies/UsersHub-authentification-module +++ b/dependencies/UsersHub-authentification-module @@ -1 +1 @@ -Subproject commit 0d269c8323e441b13fe8ffd7ca99ec36178c6415 +Subproject commit d024adb116a6808a54d30b2d633e07940966e461 From e6759c905bd8d8a3094d6cac2986b14e78849287 Mon Sep 17 00:00:00 2001 From: Jacobe2169 Date: Fri, 26 Jan 2024 10:51:41 +0100 Subject: [PATCH 08/11] fix pytest --- .github/workflows/pytest.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/pytest.yml b/.github/workflows/pytest.yml index 6a90731..9b9dc82 100644 --- a/.github/workflows/pytest.yml +++ b/.github/workflows/pytest.yml @@ -53,7 +53,7 @@ jobs: psql -h localhost -U postgres -d postgres -tc 'CREATE EXTENSION "postgis_raster";' psql -h localhost -U postgres -d postgres -tc 'CREATE EXTENSION "uuid-ossp";' psql -h localhost -U postgres -d postgres -tc 'CREATE EXTENSION "pg_trgm";' - psql -h localhost -U taxhubadmin -d taxhub -tc 'CREATE EXTENSION "unaccent";' + psql -h localhost -U postgres -d postgres -tc 'CREATE EXTENSION "unaccent";' env: PGPASSWORD: postgres - uses: actions/checkout@v2 From f9f97227b0138d7f6a6d791d2ebb0ec97a18129e Mon Sep 17 00:00:00 2001 From: Jacobe2169 Date: Fri, 26 Jan 2024 11:07:43 +0100 Subject: [PATCH 09/11] add missing declaration of group3_inpn in the model --- src/pypnnomenclature/models.py | 1 + 1 file changed, 1 insertion(+) diff --git a/src/pypnnomenclature/models.py b/src/pypnnomenclature/models.py index 393d86e..0363b2f 100644 --- a/src/pypnnomenclature/models.py +++ b/src/pypnnomenclature/models.py @@ -24,6 +24,7 @@ class CorTaxrefNomenclature(db.Model): ) regne = db.Column(db.Unicode, primary_key=True) group2_inpn = db.Column(db.Unicode, primary_key=True) + group3_inpn = db.Column(db.Unicode, primary_key=True) @serializable( From a7a3c5edc386eb6d793cd9fec31a40408dbe1b18 Mon Sep 17 00:00:00 2001 From: Jacobe2169 Date: Fri, 26 Jan 2024 11:18:29 +0100 Subject: [PATCH 10/11] fix lint --- .../versions/11e7741319fd_get_default_nomenclature_value.py | 1 + .../migrations/versions/6015397d686a_nomenclatures.py | 1 + .../migrations/versions/618542880d1f_fix_typo_nomenc_type_def.py | 1 + .../versions/803524258bd3_add_group3_inpn_cor_taxref.py | 1 + .../migrations/versions/96a713739fdd_nomenclatures_inpn_data.py | 1 + .../versions/a763fb554ff2_nomenclatures_taxonomie_data.py | 1 + .../migrations/versions/b820c66d8daa_get_nomenclature_label.py | 1 + .../migrations/versions/ee1146f6c0f4_add_uicn_rl.py | 1 + .../migrations/versions/f5436084bf17_nomenclatures_taxonomie.py | 1 + .../versions/f8c2c8482419_get_default_nomenclature_value.py | 1 + src/pypnnomenclature/repository.py | 1 + 11 files changed, 11 insertions(+) diff --git a/src/pypnnomenclature/migrations/versions/11e7741319fd_get_default_nomenclature_value.py b/src/pypnnomenclature/migrations/versions/11e7741319fd_get_default_nomenclature_value.py index b3bdaeb..b086902 100644 --- a/src/pypnnomenclature/migrations/versions/11e7741319fd_get_default_nomenclature_value.py +++ b/src/pypnnomenclature/migrations/versions/11e7741319fd_get_default_nomenclature_value.py @@ -5,6 +5,7 @@ Create Date: 2021-10-04 17:51:48.491261 """ + from alembic import op import sqlalchemy as sa diff --git a/src/pypnnomenclature/migrations/versions/6015397d686a_nomenclatures.py b/src/pypnnomenclature/migrations/versions/6015397d686a_nomenclatures.py index 3a0ade1..99d9baf 100644 --- a/src/pypnnomenclature/migrations/versions/6015397d686a_nomenclatures.py +++ b/src/pypnnomenclature/migrations/versions/6015397d686a_nomenclatures.py @@ -5,6 +5,7 @@ Create Date: 2021-09-16 14:15:57.784074 """ + import importlib.resources from alembic import op diff --git a/src/pypnnomenclature/migrations/versions/618542880d1f_fix_typo_nomenc_type_def.py b/src/pypnnomenclature/migrations/versions/618542880d1f_fix_typo_nomenc_type_def.py index 2b403e5..4c68ddf 100644 --- a/src/pypnnomenclature/migrations/versions/618542880d1f_fix_typo_nomenc_type_def.py +++ b/src/pypnnomenclature/migrations/versions/618542880d1f_fix_typo_nomenc_type_def.py @@ -5,6 +5,7 @@ Create Date: 2022-07-28 14:43:31.883082 """ + from alembic import op import sqlalchemy as sa diff --git a/src/pypnnomenclature/migrations/versions/803524258bd3_add_group3_inpn_cor_taxref.py b/src/pypnnomenclature/migrations/versions/803524258bd3_add_group3_inpn_cor_taxref.py index ec55098..2007956 100644 --- a/src/pypnnomenclature/migrations/versions/803524258bd3_add_group3_inpn_cor_taxref.py +++ b/src/pypnnomenclature/migrations/versions/803524258bd3_add_group3_inpn_cor_taxref.py @@ -5,6 +5,7 @@ Create Date: 2023-09-04 07:57:35.371378 """ + from alembic import op import sqlalchemy as sa diff --git a/src/pypnnomenclature/migrations/versions/96a713739fdd_nomenclatures_inpn_data.py b/src/pypnnomenclature/migrations/versions/96a713739fdd_nomenclatures_inpn_data.py index f37e93e..83c4021 100644 --- a/src/pypnnomenclature/migrations/versions/96a713739fdd_nomenclatures_inpn_data.py +++ b/src/pypnnomenclature/migrations/versions/96a713739fdd_nomenclatures_inpn_data.py @@ -4,6 +4,7 @@ Revises: Create Date: 2021-09-16 15:36:57.784074 """ + import importlib.resources from alembic import op, context diff --git a/src/pypnnomenclature/migrations/versions/a763fb554ff2_nomenclatures_taxonomie_data.py b/src/pypnnomenclature/migrations/versions/a763fb554ff2_nomenclatures_taxonomie_data.py index a89bf07..ca57506 100644 --- a/src/pypnnomenclature/migrations/versions/a763fb554ff2_nomenclatures_taxonomie_data.py +++ b/src/pypnnomenclature/migrations/versions/a763fb554ff2_nomenclatures_taxonomie_data.py @@ -4,6 +4,7 @@ Revises: Create Date: 2021-09-16 15:36:57.784074 """ + import importlib.resources from alembic import op diff --git a/src/pypnnomenclature/migrations/versions/b820c66d8daa_get_nomenclature_label.py b/src/pypnnomenclature/migrations/versions/b820c66d8daa_get_nomenclature_label.py index cfddfc7..f42143f 100644 --- a/src/pypnnomenclature/migrations/versions/b820c66d8daa_get_nomenclature_label.py +++ b/src/pypnnomenclature/migrations/versions/b820c66d8daa_get_nomenclature_label.py @@ -5,6 +5,7 @@ Create Date: 2021-12-10 10:07:09.478526 """ + from alembic import op import sqlalchemy as sa diff --git a/src/pypnnomenclature/migrations/versions/ee1146f6c0f4_add_uicn_rl.py b/src/pypnnomenclature/migrations/versions/ee1146f6c0f4_add_uicn_rl.py index bf8d8e6..cf4dcd3 100644 --- a/src/pypnnomenclature/migrations/versions/ee1146f6c0f4_add_uicn_rl.py +++ b/src/pypnnomenclature/migrations/versions/ee1146f6c0f4_add_uicn_rl.py @@ -5,6 +5,7 @@ Create Date: 2022-07-28 15:01:47.927979 """ + from alembic import op import sqlalchemy as sa diff --git a/src/pypnnomenclature/migrations/versions/f5436084bf17_nomenclatures_taxonomie.py b/src/pypnnomenclature/migrations/versions/f5436084bf17_nomenclatures_taxonomie.py index 4e9d388..f11f687 100644 --- a/src/pypnnomenclature/migrations/versions/f5436084bf17_nomenclatures_taxonomie.py +++ b/src/pypnnomenclature/migrations/versions/f5436084bf17_nomenclatures_taxonomie.py @@ -4,6 +4,7 @@ Create Date: 2021-09-16 15:08:57.784074 """ + import importlib.resources from alembic import op diff --git a/src/pypnnomenclature/migrations/versions/f8c2c8482419_get_default_nomenclature_value.py b/src/pypnnomenclature/migrations/versions/f8c2c8482419_get_default_nomenclature_value.py index a7a157e..20ba674 100644 --- a/src/pypnnomenclature/migrations/versions/f8c2c8482419_get_default_nomenclature_value.py +++ b/src/pypnnomenclature/migrations/versions/f8c2c8482419_get_default_nomenclature_value.py @@ -5,6 +5,7 @@ Create Date: 2021-10-06 10:45:42.264034 """ + from alembic import op import sqlalchemy as sa diff --git a/src/pypnnomenclature/repository.py b/src/pypnnomenclature/repository.py index c0f20dd..b34c35d 100644 --- a/src/pypnnomenclature/repository.py +++ b/src/pypnnomenclature/repository.py @@ -1,6 +1,7 @@ """ Méthode permettant de manipuler les objets de la nomenclature """ + from importlib import import_module from flask import current_app From 51f9c337cd678c49beafc20e50050d8b966554dd Mon Sep 17 00:00:00 2001 From: Jacobe2169 Date: Fri, 26 Jan 2024 15:31:10 +0100 Subject: [PATCH 11/11] indicate depends on taxonomie revision to add group3 inpn constraint --- .../versions/803524258bd3_add_group3_inpn_cor_taxref.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pypnnomenclature/migrations/versions/803524258bd3_add_group3_inpn_cor_taxref.py b/src/pypnnomenclature/migrations/versions/803524258bd3_add_group3_inpn_cor_taxref.py index 2007956..6315621 100644 --- a/src/pypnnomenclature/migrations/versions/803524258bd3_add_group3_inpn_cor_taxref.py +++ b/src/pypnnomenclature/migrations/versions/803524258bd3_add_group3_inpn_cor_taxref.py @@ -14,7 +14,7 @@ revision = "803524258bd3" down_revision = "f5436084bf17" branch_labels = None -depends_on = None +depends_on = "33e20a7682b4" def upgrade():