From 109e02ac6ca25f15f0e927ffd6cf87a5aba5f444 Mon Sep 17 00:00:00 2001 From: MaxNumerique Date: Tue, 3 Mar 2026 14:56:48 +0100 Subject: [PATCH 01/13] fix(update): update ecosystem --- requirements.in | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/requirements.in b/requirements.in index b263fad5..6586dd57 100644 --- a/requirements.in +++ b/requirements.in @@ -1,10 +1,10 @@ -opengeode-core==15.31.5 -opengeode-io==7.4.8 -opengeode-inspector==6.8.17 -opengeode-geosciences==9.5.9 -opengeode-geosciencesio==5.8.10 -geode-common==33.19.0 -geode-viewables==3.3.4 +opengeode-core==16.0.0 +opengeode-io==7.4.9 +opengeode-inspector==6.8.18 +opengeode-geosciences==9.5.10 +opengeode-geosciencesio==5.8.11 +geode-common==33.19.1 +geode-viewables==3.3.5 flask[async]==3.1.2 flask-cors==6.0.1 werkzeug==3.1.2 From 6a38850585d93757919ceecbe3a3d5d11da7e122 Mon Sep 17 00:00:00 2001 From: MaxNumerique <144453705+MaxNumerique@users.noreply.github.com> Date: Tue, 3 Mar 2026 13:57:53 +0000 Subject: [PATCH 02/13] Apply prepare changes --- requirements.txt | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/requirements.txt b/requirements.txt index bd1ed694..4504a827 100644 --- a/requirements.txt +++ b/requirements.txt @@ -16,11 +16,11 @@ flask[async]>=3 # flask-cors flask-cors==6.0.1 # via -r requirements.in -geode-common==33.19.0 +geode-common==33.19.1 # via # -r requirements.in # geode-viewables -geode-viewables==3.3.4 +geode-viewables==3.3.5 # via -r requirements.in itsdangerous>=2 # via flask @@ -31,7 +31,7 @@ markupsafe>=3 # flask # jinja2 # werkzeug -opengeode-core==15.31.5 +opengeode-core==16.0.0 # via # -r requirements.in # geode-common @@ -40,16 +40,16 @@ opengeode-core==15.31.5 # opengeode-geosciencesio # opengeode-inspector # opengeode-io -opengeode-geosciences==9.5.9 +opengeode-geosciences==9.5.10 # via # -r requirements.in # geode-viewables # opengeode-geosciencesio -opengeode-geosciencesio==5.8.10 +opengeode-geosciencesio==5.8.11 # via -r requirements.in -opengeode-inspector==6.8.17 +opengeode-inspector==6.8.18 # via -r requirements.in -opengeode-io==7.4.8 +opengeode-io==7.4.9 # via # -r requirements.in # geode-viewables @@ -60,4 +60,3 @@ werkzeug==3.1.2 # flask # flask-cors -opengeodeweb-microservice==1.*,>=1.0.14 From 651a0de20f6ae88f1e8e1faadcea303ae3594648 Mon Sep 17 00:00:00 2001 From: MaxNumerique <144453705+MaxNumerique@users.noreply.github.com> Date: Tue, 3 Mar 2026 14:02:55 +0000 Subject: [PATCH 03/13] Apply prepare changes --- requirements.txt | 1 - 1 file changed, 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index b855bc40..4504a827 100644 --- a/requirements.txt +++ b/requirements.txt @@ -60,4 +60,3 @@ werkzeug==3.1.2 # flask # flask-cors -opengeodeweb-microservice==1.*,>=1.0.15 From 151b19bd557305424e4fb8f15237d9c91c87265a Mon Sep 17 00:00:00 2001 From: MaxNumerique Date: Tue, 3 Mar 2026 16:58:29 +0100 Subject: [PATCH 04/13] compile ? --- requirements.txt | 18 ++++++++---------- 1 file changed, 8 insertions(+), 10 deletions(-) diff --git a/requirements.txt b/requirements.txt index b855bc40..962eb70d 100644 --- a/requirements.txt +++ b/requirements.txt @@ -2,15 +2,15 @@ # This file is autogenerated by pip-compile with Python 3.12 # by the following command: # -# pip-compile --output-file=./requirements.txt ./requirements.in +# pip-compile requirements.in # -asgiref>=3 +asgiref==3.11.1 # via flask -blinker>=1 +blinker==1.9.0 # via flask -click>=8 +click==8.3.1 # via flask -flask[async]>=3 +flask[async]==3.1.2 # via # -r requirements.in # flask-cors @@ -22,11 +22,11 @@ geode-common==33.19.1 # geode-viewables geode-viewables==3.3.5 # via -r requirements.in -itsdangerous>=2 +itsdangerous==2.2.0 # via flask -jinja2>=3 +jinja2==3.1.6 # via flask -markupsafe>=3 +markupsafe==3.0.3 # via # flask # jinja2 @@ -59,5 +59,3 @@ werkzeug==3.1.2 # -r requirements.in # flask # flask-cors - -opengeodeweb-microservice==1.*,>=1.0.15 From f53c206615053b5c27fb1d8e0e414b274de5198a Mon Sep 17 00:00:00 2001 From: MaxNumerique <144453705+MaxNumerique@users.noreply.github.com> Date: Tue, 3 Mar 2026 15:59:38 +0000 Subject: [PATCH 05/13] Apply prepare changes --- requirements.txt | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/requirements.txt b/requirements.txt index 962eb70d..4504a827 100644 --- a/requirements.txt +++ b/requirements.txt @@ -2,15 +2,15 @@ # This file is autogenerated by pip-compile with Python 3.12 # by the following command: # -# pip-compile requirements.in +# pip-compile --output-file=./requirements.txt ./requirements.in # -asgiref==3.11.1 +asgiref>=3 # via flask -blinker==1.9.0 +blinker>=1 # via flask -click==8.3.1 +click>=8 # via flask -flask[async]==3.1.2 +flask[async]>=3 # via # -r requirements.in # flask-cors @@ -22,11 +22,11 @@ geode-common==33.19.1 # geode-viewables geode-viewables==3.3.5 # via -r requirements.in -itsdangerous==2.2.0 +itsdangerous>=2 # via flask -jinja2==3.1.6 +jinja2>=3 # via flask -markupsafe==3.0.3 +markupsafe>=3 # via # flask # jinja2 @@ -59,3 +59,4 @@ werkzeug==3.1.2 # -r requirements.in # flask # flask-cors + From 7f96b069f012cf59cd2075a63d3893e75577e5c8 Mon Sep 17 00:00:00 2001 From: MaxNumerique Date: Wed, 4 Mar 2026 14:05:43 +0100 Subject: [PATCH 06/13] name optional --- src/opengeodeweb_back/utils_functions.py | 5 ++++- tests/test_geode_functions.py | 4 +++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/opengeodeweb_back/utils_functions.py b/src/opengeodeweb_back/utils_functions.py index 89bc0a2c..5822a575 100644 --- a/src/opengeodeweb_back/utils_functions.py +++ b/src/opengeodeweb_back/utils_functions.py @@ -215,11 +215,14 @@ def save_all_viewables_and_return_info( assert data.native_file is not None assert data.viewable_file is not None assert data.light_viewable_file is not None + name = geode_object.identifier.name() + if not name: + name = data.native_file return { "native_file": data.native_file, "viewable_file": data.viewable_file, "id": data.id, - "name": geode_object.identifier.name(), + "name": name, "viewer_type": data.viewer_object, "binary_light_viewable": binary_light_viewable.decode("utf-8"), "geode_object_type": data.geode_object, diff --git a/tests/test_geode_functions.py b/tests/test_geode_functions.py index ef0d00ee..ee9325da 100644 --- a/tests/test_geode_functions.py +++ b/tests/test_geode_functions.py @@ -26,7 +26,9 @@ def test_input_output() -> None: if generic_geode_object.is_loadable(file_absolute_path).value() == 0.0: continue geode_object = generic_geode_object.load(file_absolute_path) - data_name = geode_object.identifier.name() + data_name = geode_object.identifier.name() or os.path.basename( + file_absolute_path + ) if geode_object.is_viewable(): viewable_file_path = geode_object.save_viewable( os.path.join(os.path.abspath(f"./output"), data_name) From 2e0dd9e87f90a46cdbdf34eab397abf64dde90ad Mon Sep 17 00:00:00 2001 From: MaxNumerique Date: Wed, 4 Mar 2026 14:18:53 +0100 Subject: [PATCH 07/13] test --- src/opengeodeweb_back/routes/blueprint_routes.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/opengeodeweb_back/routes/blueprint_routes.py b/src/opengeodeweb_back/routes/blueprint_routes.py index f16345b3..cf5b3979 100644 --- a/src/opengeodeweb_back/routes/blueprint_routes.py +++ b/src/opengeodeweb_back/routes/blueprint_routes.py @@ -195,13 +195,15 @@ def extract_inspector_result(inspection_data: Any) -> object: if child.startswith("__") or child in [ "inspection_type", "string", + "description", + "nb_issues", ]: continue child_instance = getattr(inspection_data, child) child_object = extract_inspector_result(child_instance) new_object["children"].append(child_object) - if hasattr(child_object, "nb_issues"): - new_object["nb_issues"] += child_object.nb_issues() + if "nb_issues" in child_object: + new_object["nb_issues"] += child_object["nb_issues"] else: new_object["title"] = inspection_data.description() nb_issues = inspection_data.nb_issues() From 61bc747beb64c7038711d506924601a146e5faa0 Mon Sep 17 00:00:00 2001 From: MaxNumerique Date: Wed, 4 Mar 2026 14:26:55 +0100 Subject: [PATCH 08/13] revert --- src/opengeodeweb_back/routes/blueprint_routes.py | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/src/opengeodeweb_back/routes/blueprint_routes.py b/src/opengeodeweb_back/routes/blueprint_routes.py index cf5b3979..f16345b3 100644 --- a/src/opengeodeweb_back/routes/blueprint_routes.py +++ b/src/opengeodeweb_back/routes/blueprint_routes.py @@ -195,15 +195,13 @@ def extract_inspector_result(inspection_data: Any) -> object: if child.startswith("__") or child in [ "inspection_type", "string", - "description", - "nb_issues", ]: continue child_instance = getattr(inspection_data, child) child_object = extract_inspector_result(child_instance) new_object["children"].append(child_object) - if "nb_issues" in child_object: - new_object["nb_issues"] += child_object["nb_issues"] + if hasattr(child_object, "nb_issues"): + new_object["nb_issues"] += child_object.nb_issues() else: new_object["title"] = inspection_data.description() nb_issues = inspection_data.nb_issues() From fbd1f98d507f404315d85ee002643e43a82378a3 Mon Sep 17 00:00:00 2001 From: MaxNumerique Date: Wed, 4 Mar 2026 15:07:23 +0100 Subject: [PATCH 09/13] update .txt ? --- requirements.txt | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/requirements.txt b/requirements.txt index 4504a827..efd99181 100644 --- a/requirements.txt +++ b/requirements.txt @@ -2,15 +2,17 @@ # This file is autogenerated by pip-compile with Python 3.12 # by the following command: # -# pip-compile --output-file=./requirements.txt ./requirements.in +# pip-compile '.\requirements.in' # -asgiref>=3 +asgiref==3.11.1 # via flask -blinker>=1 +blinker==1.9.0 # via flask -click>=8 +click==8.3.1 # via flask -flask[async]>=3 +colorama==0.4.6 + # via click +flask[async]==3.1.2 # via # -r requirements.in # flask-cors @@ -22,11 +24,11 @@ geode-common==33.19.1 # geode-viewables geode-viewables==3.3.5 # via -r requirements.in -itsdangerous>=2 +itsdangerous==2.2.0 # via flask -jinja2>=3 +jinja2==3.1.6 # via flask -markupsafe>=3 +markupsafe==3.0.3 # via # flask # jinja2 @@ -59,4 +61,3 @@ werkzeug==3.1.2 # -r requirements.in # flask # flask-cors - From fd535aae64b474202e3322f3f5855b050c82dc7e Mon Sep 17 00:00:00 2001 From: MaxNumerique <144453705+MaxNumerique@users.noreply.github.com> Date: Wed, 4 Mar 2026 14:08:55 +0000 Subject: [PATCH 10/13] Apply prepare changes --- requirements.txt | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/requirements.txt b/requirements.txt index efd99181..4504a827 100644 --- a/requirements.txt +++ b/requirements.txt @@ -2,17 +2,15 @@ # This file is autogenerated by pip-compile with Python 3.12 # by the following command: # -# pip-compile '.\requirements.in' +# pip-compile --output-file=./requirements.txt ./requirements.in # -asgiref==3.11.1 +asgiref>=3 # via flask -blinker==1.9.0 +blinker>=1 # via flask -click==8.3.1 +click>=8 # via flask -colorama==0.4.6 - # via click -flask[async]==3.1.2 +flask[async]>=3 # via # -r requirements.in # flask-cors @@ -24,11 +22,11 @@ geode-common==33.19.1 # geode-viewables geode-viewables==3.3.5 # via -r requirements.in -itsdangerous==2.2.0 +itsdangerous>=2 # via flask -jinja2==3.1.6 +jinja2>=3 # via flask -markupsafe==3.0.3 +markupsafe>=3 # via # flask # jinja2 @@ -61,3 +59,4 @@ werkzeug==3.1.2 # -r requirements.in # flask # flask-cors + From 167f89e89a4d1f9a4a7528dbb5ceeca5e910ed15 Mon Sep 17 00:00:00 2001 From: MaxNumerique Date: Wed, 4 Mar 2026 15:23:45 +0100 Subject: [PATCH 11/13] tesst --- src/opengeodeweb_back/routes/blueprint_routes.py | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/opengeodeweb_back/routes/blueprint_routes.py b/src/opengeodeweb_back/routes/blueprint_routes.py index f16345b3..ef42b59c 100644 --- a/src/opengeodeweb_back/routes/blueprint_routes.py +++ b/src/opengeodeweb_back/routes/blueprint_routes.py @@ -184,7 +184,7 @@ def inspect_file() -> flask.Response: return flask.make_response({"inspection_result": inspection_result}, 200) -def extract_inspector_result(inspection_data: Any) -> object: +def extract_inspector_result(inspection_data: Any) -> dict: new_object = {} if hasattr(inspection_data, "inspection_type"): @@ -195,14 +195,17 @@ def extract_inspector_result(inspection_data: Any) -> object: if child.startswith("__") or child in [ "inspection_type", "string", + "nb_issues", ]: continue child_instance = getattr(inspection_data, child) + if callable(child_instance): + continue child_object = extract_inspector_result(child_instance) new_object["children"].append(child_object) - if hasattr(child_object, "nb_issues"): - new_object["nb_issues"] += child_object.nb_issues() - else: + if "nb_issues" in child_object: + new_object["nb_issues"] += child_object["nb_issues"] + elif hasattr(inspection_data, "description"): new_object["title"] = inspection_data.description() nb_issues = inspection_data.nb_issues() new_object["nb_issues"] = nb_issues From 4891fa4ac6431a24e77c42760f706d761192472b Mon Sep 17 00:00:00 2001 From: MaxNumerique Date: Wed, 4 Mar 2026 15:28:38 +0100 Subject: [PATCH 12/13] dict --- src/opengeodeweb_back/routes/blueprint_routes.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/opengeodeweb_back/routes/blueprint_routes.py b/src/opengeodeweb_back/routes/blueprint_routes.py index ef42b59c..fbc14653 100644 --- a/src/opengeodeweb_back/routes/blueprint_routes.py +++ b/src/opengeodeweb_back/routes/blueprint_routes.py @@ -184,7 +184,7 @@ def inspect_file() -> flask.Response: return flask.make_response({"inspection_result": inspection_result}, 200) -def extract_inspector_result(inspection_data: Any) -> dict: +def extract_inspector_result(inspection_data: Any) -> dict[str, Any]: new_object = {} if hasattr(inspection_data, "inspection_type"): From 72c0d0be12824740f5ecd4d79a937f6a83561bce Mon Sep 17 00:00:00 2001 From: MaxNumerique Date: Wed, 4 Mar 2026 16:09:25 +0100 Subject: [PATCH 13/13] yesy name --- src/opengeodeweb_back/utils_functions.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/opengeodeweb_back/utils_functions.py b/src/opengeodeweb_back/utils_functions.py index 5822a575..1943c77f 100644 --- a/src/opengeodeweb_back/utils_functions.py +++ b/src/opengeodeweb_back/utils_functions.py @@ -217,7 +217,7 @@ def save_all_viewables_and_return_info( assert data.light_viewable_file is not None name = geode_object.identifier.name() if not name: - name = data.native_file + flask.abort(400, "Geode object has no name defined.") return { "native_file": data.native_file, "viewable_file": data.viewable_file,