OpenGeodeWeb-Back 6.9.4rc1__tar.gz → 6.10.0__tar.gz
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.
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/PKG-INFO +2 -2
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/pyproject.toml +1 -1
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/requirements.txt +1 -1
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/OpenGeodeWeb_Back.egg-info/PKG-INFO +2 -2
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/OpenGeodeWeb_Back.egg-info/SOURCES.txt +2 -2
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/OpenGeodeWeb_Back.egg-info/requires.txt +1 -1
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/geode_objects/geode_brep.py +3 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/geode_objects/geode_edged_curve2d.py +3 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/geode_objects/geode_edged_curve3d.py +3 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/geode_objects/geode_graph.py +5 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/geode_objects/geode_grid2d.py +5 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/geode_objects/geode_grid3d.py +5 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/geode_objects/geode_object.py +4 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/geode_objects/geode_point_set2d.py +3 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/geode_objects/geode_point_set3d.py +3 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/geode_objects/geode_raster_image2d.py +5 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/geode_objects/geode_raster_image3d.py +5 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/geode_objects/geode_section.py +3 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/geode_objects/geode_solid_mesh3d.py +3 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/geode_objects/geode_surface_mesh2d.py +3 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/geode_objects/geode_surface_mesh3d.py +3 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/geode_objects/geode_vertex_set.py +5 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/blueprint_routes.py +14 -44
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/schemas/__init__.py +1 -1
- opengeodeweb_back-6.10.0/src/opengeodeweb_back/routes/schemas/validate.json +16 -0
- opengeodeweb_back-6.10.0/src/opengeodeweb_back/routes/schemas/validate.py +10 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/tests/test_geode_functions.py +20 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/tests/test_routes.py +21 -16
- opengeodeweb_back-6.9.4rc1/src/opengeodeweb_back/routes/schemas/inspect_file.json +0 -22
- opengeodeweb_back-6.9.4rc1/src/opengeodeweb_back/routes/schemas/inspect_file.py +0 -11
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/LICENSE +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/README.md +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/setup.cfg +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/OpenGeodeWeb_Back.egg-info/dependency_links.txt +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/OpenGeodeWeb_Back.egg-info/entry_points.txt +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/OpenGeodeWeb_Back.egg-info/top_level.txt +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/__init__.py +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/app.py +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/app_config.py +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/geode_functions.py +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/geode_objects/__init__.py +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/geode_objects/geode_cross_section.py +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/geode_objects/geode_hybrid_solid3d.py +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/geode_objects/geode_implicit_cross_section.py +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/geode_objects/geode_implicit_structural_model.py +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/geode_objects/geode_light_regular_grid2d.py +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/geode_objects/geode_light_regular_grid3d.py +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/geode_objects/geode_mesh.py +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/geode_objects/geode_model.py +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/geode_objects/geode_polygonal_surface2d.py +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/geode_objects/geode_polygonal_surface3d.py +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/geode_objects/geode_polyhedral_solid3d.py +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/geode_objects/geode_regular_grid2d.py +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/geode_objects/geode_regular_grid3d.py +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/geode_objects/geode_structural_model.py +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/geode_objects/geode_tetrahedral_solid3d.py +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/geode_objects/geode_triangulated_surface2d.py +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/geode_objects/geode_triangulated_surface3d.py +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/py.typed +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/create/blueprint_create.py +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/create/schemas/__init__.py +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/create/schemas/edged_curve.json +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/create/schemas/edged_curve.py +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/create/schemas/point_set.json +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/create/schemas/point_set.py +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/create/schemas/polygonal_surface.json +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/create/schemas/polygonal_surface.py +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/schemas/allowed_files.json +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/schemas/allowed_files.py +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/schemas/allowed_objects.json +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/schemas/allowed_objects.py +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/schemas/cell_attribute_names.json +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/schemas/cell_attribute_names.py +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/schemas/edge_attribute_names.json +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/schemas/edge_attribute_names.py +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/schemas/export_project.json +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/schemas/export_project.py +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/schemas/geode_object_inheritance.json +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/schemas/geode_object_inheritance.py +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/schemas/geode_objects_and_output_extensions.json +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/schemas/geode_objects_and_output_extensions.py +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/schemas/geographic_coordinate_systems.json +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/schemas/geographic_coordinate_systems.py +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/schemas/import_project.json +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/schemas/import_project.py +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/schemas/kill.json +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/schemas/kill.py +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/schemas/missing_files.json +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/schemas/missing_files.py +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/schemas/model_component_edge_attribute_names.json +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/schemas/model_component_edge_attribute_names.py +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/schemas/model_component_polygon_attribute_names.json +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/schemas/model_component_polygon_attribute_names.py +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/schemas/model_component_polyhedron_attribute_names.json +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/schemas/model_component_polyhedron_attribute_names.py +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/schemas/model_component_vertex_attribute_names.json +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/schemas/model_component_vertex_attribute_names.py +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/schemas/ping.json +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/schemas/ping.py +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/schemas/polygon_attribute_names.json +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/schemas/polygon_attribute_names.py +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/schemas/polyhedron_attribute_names.json +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/schemas/polyhedron_attribute_names.py +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/schemas/save_viewable_file.json +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/schemas/save_viewable_file.py +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/schemas/texture_coordinates.json +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/schemas/texture_coordinates.py +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/schemas/upload_file.json +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/schemas/upload_file.py +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/schemas/vertex_attribute_names.json +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/schemas/vertex_attribute_names.py +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/test_utils.py +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/utils_functions.py +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/tests/test_create_routes.py +0 -0
- {opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/tests/test_utils_functions.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: OpenGeodeWeb-Back
|
|
3
|
-
Version: 6.
|
|
3
|
+
Version: 6.10.0
|
|
4
4
|
Summary: OpenGeodeWeb-Back is an open source framework that proposes handy python functions and wrappers for the OpenGeode ecosystem
|
|
5
5
|
Author-email: Geode-solutions <team-web@geode-solutions.com>
|
|
6
6
|
Project-URL: Homepage, https://github.com/Geode-solutions/OpenGeodeWeb-Back
|
|
@@ -28,7 +28,7 @@ Requires-Dist: opengeode-inspector==6.11.6
|
|
|
28
28
|
Requires-Dist: opengeode-inspector-geosciences==1.1.0
|
|
29
29
|
Requires-Dist: opengeode-io==7.7.0
|
|
30
30
|
Requires-Dist: werkzeug==3.1.8
|
|
31
|
-
Requires-Dist: opengeodeweb-microservice==1.*,>=1.1.
|
|
31
|
+
Requires-Dist: opengeodeweb-microservice==1.*,>=1.1.4
|
|
32
32
|
Dynamic: license-file
|
|
33
33
|
|
|
34
34
|
<h1 align="center">OpenGeodeWeb-Back<sup><i>by Geode-solutions</i></sup></h1>
|
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "OpenGeodeWeb-Back"
|
|
7
|
-
version = "6.
|
|
7
|
+
version = "6.10.0"
|
|
8
8
|
dynamic = ["dependencies"]
|
|
9
9
|
authors = [{ name = "Geode-solutions", email = "team-web@geode-solutions.com" }]
|
|
10
10
|
description = "OpenGeodeWeb-Back is an open source framework that proposes handy python functions and wrappers for the OpenGeode ecosystem"
|
{opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/OpenGeodeWeb_Back.egg-info/PKG-INFO
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: OpenGeodeWeb-Back
|
|
3
|
-
Version: 6.
|
|
3
|
+
Version: 6.10.0
|
|
4
4
|
Summary: OpenGeodeWeb-Back is an open source framework that proposes handy python functions and wrappers for the OpenGeode ecosystem
|
|
5
5
|
Author-email: Geode-solutions <team-web@geode-solutions.com>
|
|
6
6
|
Project-URL: Homepage, https://github.com/Geode-solutions/OpenGeodeWeb-Back
|
|
@@ -28,7 +28,7 @@ Requires-Dist: opengeode-inspector==6.11.6
|
|
|
28
28
|
Requires-Dist: opengeode-inspector-geosciences==1.1.0
|
|
29
29
|
Requires-Dist: opengeode-io==7.7.0
|
|
30
30
|
Requires-Dist: werkzeug==3.1.8
|
|
31
|
-
Requires-Dist: opengeodeweb-microservice==1.*,>=1.1.
|
|
31
|
+
Requires-Dist: opengeodeweb-microservice==1.*,>=1.1.4
|
|
32
32
|
Dynamic: license-file
|
|
33
33
|
|
|
34
34
|
<h1 align="center">OpenGeodeWeb-Back<sup><i>by Geode-solutions</i></sup></h1>
|
{opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/OpenGeodeWeb_Back.egg-info/SOURCES.txt
RENAMED
|
@@ -77,8 +77,6 @@ src/opengeodeweb_back/routes/schemas/geographic_coordinate_systems.json
|
|
|
77
77
|
src/opengeodeweb_back/routes/schemas/geographic_coordinate_systems.py
|
|
78
78
|
src/opengeodeweb_back/routes/schemas/import_project.json
|
|
79
79
|
src/opengeodeweb_back/routes/schemas/import_project.py
|
|
80
|
-
src/opengeodeweb_back/routes/schemas/inspect_file.json
|
|
81
|
-
src/opengeodeweb_back/routes/schemas/inspect_file.py
|
|
82
80
|
src/opengeodeweb_back/routes/schemas/kill.json
|
|
83
81
|
src/opengeodeweb_back/routes/schemas/kill.py
|
|
84
82
|
src/opengeodeweb_back/routes/schemas/missing_files.json
|
|
@@ -103,6 +101,8 @@ src/opengeodeweb_back/routes/schemas/texture_coordinates.json
|
|
|
103
101
|
src/opengeodeweb_back/routes/schemas/texture_coordinates.py
|
|
104
102
|
src/opengeodeweb_back/routes/schemas/upload_file.json
|
|
105
103
|
src/opengeodeweb_back/routes/schemas/upload_file.py
|
|
104
|
+
src/opengeodeweb_back/routes/schemas/validate.json
|
|
105
|
+
src/opengeodeweb_back/routes/schemas/validate.py
|
|
106
106
|
src/opengeodeweb_back/routes/schemas/vertex_attribute_names.json
|
|
107
107
|
src/opengeodeweb_back/routes/schemas/vertex_attribute_names.py
|
|
108
108
|
tests/test_create_routes.py
|
|
@@ -94,6 +94,9 @@ class GeodeBRep(GeodeModel):
|
|
|
94
94
|
def inspect(self) -> og_inspector.BRepInspectionResult:
|
|
95
95
|
return og_inspector.inspect_brep(self.brep)
|
|
96
96
|
|
|
97
|
+
def validate(self) -> og_inspector.ObjectValidity:
|
|
98
|
+
return og_inspector.is_brep_valid(self.brep)
|
|
99
|
+
|
|
97
100
|
def assign_crs(
|
|
98
101
|
self, crs_name: str, info: og_geosciences.GeographicCoordinateSystemInfo
|
|
99
102
|
) -> None:
|
|
@@ -82,6 +82,9 @@ class GeodeEdgedCurve2D(GeodeGraph):
|
|
|
82
82
|
def inspect(self) -> og_inspector.EdgedCurveInspectionResult:
|
|
83
83
|
return og_inspector.inspect_edged_curve2D(self.edged_curve)
|
|
84
84
|
|
|
85
|
+
def validate(self) -> og_inspector.ObjectValidity:
|
|
86
|
+
return og_inspector.is_edged_curve_valid2D(self.edged_curve)
|
|
87
|
+
|
|
85
88
|
def assign_crs(
|
|
86
89
|
self, crs_name: str, info: og_geosciences.GeographicCoordinateSystemInfo
|
|
87
90
|
) -> None:
|
|
@@ -82,6 +82,9 @@ class GeodeEdgedCurve3D(GeodeGraph):
|
|
|
82
82
|
def inspect(self) -> og_inspector.EdgedCurveInspectionResult:
|
|
83
83
|
return og_inspector.inspect_edged_curve3D(self.edged_curve)
|
|
84
84
|
|
|
85
|
+
def validate(self) -> og_inspector.ObjectValidity:
|
|
86
|
+
return og_inspector.is_edged_curve_valid3D(self.edged_curve)
|
|
87
|
+
|
|
85
88
|
def assign_crs(
|
|
86
89
|
self, crs_name: str, info: og_geosciences.GeographicCoordinateSystemInfo
|
|
87
90
|
) -> None:
|
|
@@ -3,6 +3,7 @@ from __future__ import annotations
|
|
|
3
3
|
|
|
4
4
|
# Third party imports
|
|
5
5
|
import opengeode as og
|
|
6
|
+
import opengeode_inspector as og_inspector
|
|
6
7
|
from opengeodeweb_microservice.database.data_types import (
|
|
7
8
|
GeodeMeshType,
|
|
8
9
|
ViewerElementsType,
|
|
@@ -80,5 +81,9 @@ class GeodeGraph(GeodeVertexSet):
|
|
|
80
81
|
def inspect(self) -> object:
|
|
81
82
|
return None
|
|
82
83
|
|
|
84
|
+
def validate(self) -> og_inspector.ObjectValidity:
|
|
85
|
+
result = og_inspector.ObjectValidity()
|
|
86
|
+
return result
|
|
87
|
+
|
|
83
88
|
def edge_attribute_manager(self) -> og.AttributeManager:
|
|
84
89
|
return self.graph.edge_attribute_manager()
|
|
@@ -4,6 +4,7 @@ from abc import abstractmethod
|
|
|
4
4
|
|
|
5
5
|
# Third party imports
|
|
6
6
|
import opengeode as og
|
|
7
|
+
import opengeode_inspector as og_inspector
|
|
7
8
|
from opengeodeweb_microservice.database.data_types import ViewerElementsType
|
|
8
9
|
|
|
9
10
|
# Local application imports
|
|
@@ -29,5 +30,9 @@ class GeodeGrid2D(GeodeMesh):
|
|
|
29
30
|
def inspect(self) -> object:
|
|
30
31
|
return None
|
|
31
32
|
|
|
33
|
+
def validate(self) -> og_inspector.ObjectValidity:
|
|
34
|
+
result = og_inspector.ObjectValidity()
|
|
35
|
+
return result
|
|
36
|
+
|
|
32
37
|
@abstractmethod
|
|
33
38
|
def cell_attribute_manager(self) -> og.AttributeManager: ...
|
|
@@ -4,6 +4,7 @@ from abc import abstractmethod
|
|
|
4
4
|
|
|
5
5
|
# Third party imports
|
|
6
6
|
import opengeode as og
|
|
7
|
+
import opengeode_inspector as og_inspector
|
|
7
8
|
from opengeodeweb_microservice.database.data_types import ViewerElementsType
|
|
8
9
|
|
|
9
10
|
# Local application imports
|
|
@@ -29,5 +30,9 @@ class GeodeGrid3D(GeodeMesh):
|
|
|
29
30
|
def inspect(self) -> object:
|
|
30
31
|
return None
|
|
31
32
|
|
|
33
|
+
def validate(self) -> og_inspector.ObjectValidity:
|
|
34
|
+
result = og_inspector.ObjectValidity()
|
|
35
|
+
return result
|
|
36
|
+
|
|
32
37
|
@abstractmethod
|
|
33
38
|
def cell_attribute_manager(self) -> og.AttributeManager: ...
|
|
@@ -5,6 +5,7 @@ from typing import Any
|
|
|
5
5
|
|
|
6
6
|
# Third party imports
|
|
7
7
|
import opengeode as og
|
|
8
|
+
import opengeode_inspector as og_inspector
|
|
8
9
|
from opengeodeweb_microservice.database.data_types import (
|
|
9
10
|
GeodeObjectType,
|
|
10
11
|
ViewerType,
|
|
@@ -84,3 +85,6 @@ class GeodeObject(ABC):
|
|
|
84
85
|
|
|
85
86
|
@abstractmethod
|
|
86
87
|
def inspect(self) -> Any: ...
|
|
88
|
+
|
|
89
|
+
@abstractmethod
|
|
90
|
+
def validate(self) -> og_inspector.ObjectValidity: ...
|
|
@@ -80,6 +80,9 @@ class GeodePointSet2D(GeodeVertexSet):
|
|
|
80
80
|
def inspect(self) -> og_inspector.PointSetInspectionResult:
|
|
81
81
|
return og_inspector.inspect_point_set2D(self.point_set)
|
|
82
82
|
|
|
83
|
+
def validate(self) -> og_inspector.ObjectValidity:
|
|
84
|
+
return og_inspector.is_pointset_valid2D(self.point_set)
|
|
85
|
+
|
|
83
86
|
def assign_crs(
|
|
84
87
|
self, crs_name: str, info: og_geosciences.GeographicCoordinateSystemInfo
|
|
85
88
|
) -> None:
|
|
@@ -80,6 +80,9 @@ class GeodePointSet3D(GeodeVertexSet):
|
|
|
80
80
|
def inspect(self) -> og_inspector.PointSetInspectionResult:
|
|
81
81
|
return og_inspector.inspect_point_set3D(self.point_set)
|
|
82
82
|
|
|
83
|
+
def validate(self) -> og_inspector.ObjectValidity:
|
|
84
|
+
return og_inspector.is_pointset_valid3D(self.point_set)
|
|
85
|
+
|
|
83
86
|
def assign_crs(
|
|
84
87
|
self, crs_name: str, info: og_geosciences.GeographicCoordinateSystemInfo
|
|
85
88
|
) -> None:
|
|
@@ -3,6 +3,7 @@ from __future__ import annotations
|
|
|
3
3
|
|
|
4
4
|
# Third party imports
|
|
5
5
|
import opengeode as og
|
|
6
|
+
import opengeode_inspector as og_inspector
|
|
6
7
|
import geode_viewables as viewables
|
|
7
8
|
from opengeodeweb_microservice.database.data_types import (
|
|
8
9
|
GeodeMeshType,
|
|
@@ -85,5 +86,9 @@ class GeodeRasterImage2D(GeodeMesh):
|
|
|
85
86
|
def inspect(self) -> None:
|
|
86
87
|
return None
|
|
87
88
|
|
|
89
|
+
def validate(self) -> og_inspector.ObjectValidity:
|
|
90
|
+
result = og_inspector.ObjectValidity()
|
|
91
|
+
return result
|
|
92
|
+
|
|
88
93
|
def vertex_attribute_manager(self) -> og.AttributeManager:
|
|
89
94
|
return og.AttributeManager()
|
|
@@ -3,6 +3,7 @@ from __future__ import annotations
|
|
|
3
3
|
|
|
4
4
|
# Third party imports
|
|
5
5
|
import opengeode as og
|
|
6
|
+
import opengeode_inspector as og_inspector
|
|
6
7
|
import geode_viewables as viewables
|
|
7
8
|
from opengeodeweb_microservice.database.data_types import (
|
|
8
9
|
GeodeMeshType,
|
|
@@ -85,5 +86,9 @@ class GeodeRasterImage3D(GeodeMesh):
|
|
|
85
86
|
def inspect(self) -> None:
|
|
86
87
|
return None
|
|
87
88
|
|
|
89
|
+
def validate(self) -> og_inspector.ObjectValidity:
|
|
90
|
+
result = og_inspector.ObjectValidity()
|
|
91
|
+
return result
|
|
92
|
+
|
|
88
93
|
def vertex_attribute_manager(self) -> og.AttributeManager:
|
|
89
94
|
return og.AttributeManager()
|
|
@@ -96,6 +96,9 @@ class GeodeSection(GeodeModel):
|
|
|
96
96
|
def inspect(self) -> og_inspector.SectionInspectionResult:
|
|
97
97
|
return og_inspector.inspect_section(self.section)
|
|
98
98
|
|
|
99
|
+
def validate(self) -> og_inspector.ObjectValidity:
|
|
100
|
+
return og_inspector.is_section_valid(self.section)
|
|
101
|
+
|
|
99
102
|
def assign_crs(
|
|
100
103
|
self, crs_name: str, info: og_geosciences.GeographicCoordinateSystemInfo
|
|
101
104
|
) -> None:
|
|
@@ -36,6 +36,9 @@ class GeodeSolidMesh3D(GeodeVertexSet):
|
|
|
36
36
|
def inspect(self) -> og_inspector.SolidInspectionResult:
|
|
37
37
|
return og_inspector.inspect_solid3D(self.solid_mesh)
|
|
38
38
|
|
|
39
|
+
def validate(self) -> og_inspector.ObjectValidity:
|
|
40
|
+
return og_inspector.is_solid_valid3D(self.solid_mesh)
|
|
41
|
+
|
|
39
42
|
def assign_crs(
|
|
40
43
|
self, crs_name: str, info: og_geosciences.GeographicCoordinateSystemInfo
|
|
41
44
|
) -> None:
|
|
@@ -38,6 +38,9 @@ class GeodeSurfaceMesh2D(GeodeVertexSet):
|
|
|
38
38
|
def inspect(self) -> og_inspector.SurfaceInspectionResult:
|
|
39
39
|
return og_inspector.inspect_surface2D(self.surface_mesh)
|
|
40
40
|
|
|
41
|
+
def validate(self) -> og_inspector.ObjectValidity:
|
|
42
|
+
return og_inspector.is_surface_valid2D(self.surface_mesh)
|
|
43
|
+
|
|
41
44
|
def assign_crs(
|
|
42
45
|
self, crs_name: str, info: og_geosciences.GeographicCoordinateSystemInfo
|
|
43
46
|
) -> None:
|
|
@@ -38,6 +38,9 @@ class GeodeSurfaceMesh3D(GeodeVertexSet):
|
|
|
38
38
|
def inspect(self) -> og_inspector.SurfaceInspectionResult:
|
|
39
39
|
return og_inspector.inspect_surface3D(self.surface_mesh)
|
|
40
40
|
|
|
41
|
+
def validate(self) -> og_inspector.ObjectValidity:
|
|
42
|
+
return og_inspector.is_surface_valid3D(self.surface_mesh)
|
|
43
|
+
|
|
41
44
|
def assign_crs(
|
|
42
45
|
self, crs_name: str, info: og_geosciences.GeographicCoordinateSystemInfo
|
|
43
46
|
) -> None:
|
|
@@ -3,6 +3,7 @@ from __future__ import annotations
|
|
|
3
3
|
|
|
4
4
|
# Third party imports
|
|
5
5
|
import opengeode as og
|
|
6
|
+
import opengeode_inspector as og_inspector
|
|
6
7
|
from opengeodeweb_microservice.database.data_types import (
|
|
7
8
|
GeodeMeshType,
|
|
8
9
|
ViewerElementsType,
|
|
@@ -82,5 +83,9 @@ class GeodeVertexSet(GeodeMesh):
|
|
|
82
83
|
def inspect(self) -> object:
|
|
83
84
|
return None
|
|
84
85
|
|
|
86
|
+
def validate(self) -> og_inspector.ObjectValidity:
|
|
87
|
+
result = og_inspector.ObjectValidity()
|
|
88
|
+
return result
|
|
89
|
+
|
|
85
90
|
def vertex_attribute_manager(self) -> og.AttributeManager:
|
|
86
91
|
return self.vertex_set.vertex_attribute_manager()
|
|
@@ -176,52 +176,22 @@ def crs_converter_geographic_coordinate_systems() -> flask.Response:
|
|
|
176
176
|
|
|
177
177
|
|
|
178
178
|
@routes.route(
|
|
179
|
-
schemas_dict["
|
|
180
|
-
methods=schemas_dict["
|
|
179
|
+
schemas_dict["validate"]["route"],
|
|
180
|
+
methods=schemas_dict["validate"]["methods"],
|
|
181
181
|
)
|
|
182
|
-
def
|
|
183
|
-
|
|
184
|
-
|
|
182
|
+
def validate_object() -> flask.Response:
|
|
183
|
+
utils_functions.validate_request(flask.request, schemas_dict["validate"])
|
|
184
|
+
params = schemas.Validate.from_dict(flask.request.get_json())
|
|
185
|
+
geode_object = geode_functions.load_geode_object(params.id)
|
|
186
|
+
validity = geode_object.validate()
|
|
187
|
+
return flask.make_response(
|
|
188
|
+
{
|
|
189
|
+
"is_valid": validity.nb_issues() == 0,
|
|
190
|
+
"nb_issues": validity.nb_issues(),
|
|
191
|
+
"issues": validity.invalidities,
|
|
192
|
+
},
|
|
193
|
+
200,
|
|
185
194
|
)
|
|
186
|
-
params = schemas.InspectFile.from_dict(json_data)
|
|
187
|
-
file_path = geode_functions.upload_file_path(params.filename)
|
|
188
|
-
geode_object = geode_functions.geode_object_from_string(
|
|
189
|
-
params.geode_object_type
|
|
190
|
-
).load(file_path)
|
|
191
|
-
inspection_data = geode_object.inspect()
|
|
192
|
-
inspection_result = extract_inspector_result(inspection_data)
|
|
193
|
-
return flask.make_response({"inspection_result": inspection_result}, 200)
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
def extract_inspector_result(inspection_data: Any) -> dict[str, Any]:
|
|
197
|
-
new_object = {}
|
|
198
|
-
|
|
199
|
-
if hasattr(inspection_data, "inspection_type"):
|
|
200
|
-
new_object["title"] = inspection_data.inspection_type()
|
|
201
|
-
new_object["nb_issues"] = 0
|
|
202
|
-
new_object["children"] = []
|
|
203
|
-
for child in dir(inspection_data):
|
|
204
|
-
if child.startswith("__") or child in [
|
|
205
|
-
"inspection_type",
|
|
206
|
-
"string",
|
|
207
|
-
"nb_issues",
|
|
208
|
-
]:
|
|
209
|
-
continue
|
|
210
|
-
child_instance = getattr(inspection_data, child)
|
|
211
|
-
if callable(child_instance):
|
|
212
|
-
continue
|
|
213
|
-
child_object = extract_inspector_result(child_instance)
|
|
214
|
-
new_object["children"].append(child_object)
|
|
215
|
-
if "nb_issues" in child_object:
|
|
216
|
-
new_object["nb_issues"] += child_object["nb_issues"]
|
|
217
|
-
elif hasattr(inspection_data, "description"):
|
|
218
|
-
new_object["title"] = inspection_data.description()
|
|
219
|
-
nb_issues = inspection_data.nb_issues()
|
|
220
|
-
new_object["nb_issues"] = nb_issues
|
|
221
|
-
if nb_issues > 0:
|
|
222
|
-
issues = inspection_data.string().split("\n")
|
|
223
|
-
new_object["issues"] = issues
|
|
224
|
-
return new_object
|
|
225
195
|
|
|
226
196
|
|
|
227
197
|
@routes.route(
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
from .vertex_attribute_names import *
|
|
2
|
+
from .validate import *
|
|
2
3
|
from .upload_file import *
|
|
3
4
|
from .texture_coordinates import *
|
|
4
5
|
from .save_viewable_file import *
|
|
@@ -11,7 +12,6 @@ from .model_component_polygon_attribute_names import *
|
|
|
11
12
|
from .model_component_edge_attribute_names import *
|
|
12
13
|
from .missing_files import *
|
|
13
14
|
from .kill import *
|
|
14
|
-
from .inspect_file import *
|
|
15
15
|
from .import_project import *
|
|
16
16
|
from .geographic_coordinate_systems import *
|
|
17
17
|
from .geode_objects_and_output_extensions import *
|
|
@@ -63,3 +63,23 @@ def test_input_output() -> None:
|
|
|
63
63
|
assert type(saved_files) is list
|
|
64
64
|
for saved_file in saved_files:
|
|
65
65
|
os.remove(saved_file)
|
|
66
|
+
|
|
67
|
+
|
|
68
|
+
def test_validate() -> None:
|
|
69
|
+
# Test on BRep (uses is_brep_valid)
|
|
70
|
+
brep_path = os.path.join(data_folder, "cube.og_brep")
|
|
71
|
+
brep_object = geode_objects["BRep"].load(brep_path)
|
|
72
|
+
brep_validity = brep_object.validate()
|
|
73
|
+
assert type(brep_validity.nb_issues()) is int
|
|
74
|
+
|
|
75
|
+
# Test on PointSet2D (uses is_pointset_valid2D)
|
|
76
|
+
pts_path = os.path.join(data_folder, "test.og_pts2d")
|
|
77
|
+
pts_object = geode_objects["PointSet2D"].load(pts_path)
|
|
78
|
+
pts_validity = pts_object.validate()
|
|
79
|
+
assert type(pts_validity.nb_issues()) is int
|
|
80
|
+
|
|
81
|
+
# Test on CrossSection (uses is_section_valid)
|
|
82
|
+
section_path = os.path.join(data_folder, "test.og_xsctn")
|
|
83
|
+
section_object = geode_objects["CrossSection"].load(section_path)
|
|
84
|
+
section_validity = section_object.validate()
|
|
85
|
+
assert type(section_validity.nb_issues()) is int
|
|
@@ -121,25 +121,30 @@ def test_geographic_coordinate_systems(client: FlaskClient) -> None:
|
|
|
121
121
|
test_utils.test_route_wrong_params(client, route, get_full_data)
|
|
122
122
|
|
|
123
123
|
|
|
124
|
-
def
|
|
125
|
-
|
|
124
|
+
def test_validate_object(client: FlaskClient) -> None:
|
|
125
|
+
response_save = test_save_viewable_file(client, "BRep", "cube.og_brep")
|
|
126
|
+
assert response_save.status_code == 200
|
|
127
|
+
model_id = response_save.get_json()["id"]
|
|
128
|
+
response = client.post("/opengeodeweb_back/validate", json={"id": model_id})
|
|
129
|
+
assert response.status_code == 200
|
|
130
|
+
json_data = response.get_json()
|
|
131
|
+
assert json_data["is_valid"] is True
|
|
132
|
+
assert json_data["nb_issues"] == 0
|
|
133
|
+
assert type(json_data["issues"]) is list
|
|
126
134
|
|
|
127
|
-
def get_full_data() -> test_utils.JsonData:
|
|
128
|
-
return {
|
|
129
|
-
"geode_object_type": "BRep",
|
|
130
|
-
"filename": "corbi.og_brep",
|
|
131
|
-
}
|
|
132
135
|
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
136
|
+
def test_validate_invalid_object(client: FlaskClient) -> None:
|
|
137
|
+
response_save = test_save_viewable_file(
|
|
138
|
+
client, "BRep", "wrong_boundary_surface_model.og_brep"
|
|
139
|
+
)
|
|
140
|
+
assert response_save.status_code == 200
|
|
141
|
+
model_id = response_save.get_json()["id"]
|
|
142
|
+
response = client.post("/opengeodeweb_back/validate", json={"id": model_id})
|
|
137
143
|
assert response.status_code == 200
|
|
138
|
-
|
|
139
|
-
assert
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
test_utils.test_route_wrong_params(client, route, get_full_data)
|
|
144
|
+
json_data = response.get_json()
|
|
145
|
+
assert json_data["is_valid"] is False
|
|
146
|
+
assert json_data["nb_issues"] == 1
|
|
147
|
+
assert type(json_data["issues"]) is list
|
|
143
148
|
|
|
144
149
|
|
|
145
150
|
def test_geode_objects_and_output_extensions(client: FlaskClient) -> None:
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"route": "/inspect_file",
|
|
3
|
-
"methods": [
|
|
4
|
-
"POST"
|
|
5
|
-
],
|
|
6
|
-
"type": "object",
|
|
7
|
-
"properties": {
|
|
8
|
-
"filename": {
|
|
9
|
-
"type": "string",
|
|
10
|
-
"minLength": 1
|
|
11
|
-
},
|
|
12
|
-
"geode_object_type": {
|
|
13
|
-
"type": "string",
|
|
14
|
-
"minLength": 1
|
|
15
|
-
}
|
|
16
|
-
},
|
|
17
|
-
"required": [
|
|
18
|
-
"filename",
|
|
19
|
-
"geode_object_type"
|
|
20
|
-
],
|
|
21
|
-
"additionalProperties": false
|
|
22
|
-
}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/OpenGeodeWeb_Back.egg-info/top_level.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/geode_functions.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/schemas/kill.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/routes/schemas/ping.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{opengeodeweb_back-6.9.4rc1 → opengeodeweb_back-6.10.0}/src/opengeodeweb_back/utils_functions.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|