Skip to content

Commit 57ca416

Browse files
Merge branch 'master' of https://github.com/Geode-solutions/OpenGeodeWeb-Back into feat/blueprint_routes
2 parents 2b2807f + 8c2a4a9 commit 57ca416

File tree

7 files changed

+256
-109
lines changed

7 files changed

+256
-109
lines changed

.github/workflows/CD.yml

Lines changed: 28 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -2,37 +2,36 @@ name: CD
22

33
on:
44
push:
5-
branches: [ master, next ]
5+
branches: [master, next]
66

77
jobs:
88
build:
99
runs-on: ubuntu-latest
1010
steps:
11-
- name: Checkout
12-
uses: actions/checkout@v4
13-
with:
14-
fetch-depth: 0
15-
token: ${{ secrets.TOKEN }}
16-
- name: Python Semantic Release
17-
uses: python-semantic-release/python-semantic-release@master
18-
id: semantic-release
19-
with:
20-
github_token: ${{ secrets.TOKEN }}
21-
- name: Build
22-
run: |
23-
python3 -m pip install --upgrade build
24-
python3 -m build
25-
- name: Upload
26-
if: steps.semantic-release.outputs.released == 'true'
27-
run: |
28-
python3 -m pip install twine
29-
python3 -m twine upload --repository pypi dist/* -u __token__ -p ${{ secrets.PYPI_TOKEN }}
30-
- name: Merge master -> next
31-
if: github.ref == 'ref/head/master'
32-
uses: devmasx/merge-branch@master
33-
with:
34-
type: now
35-
from_branch: master
36-
target_branch: next
37-
github_token: ${{ github.token }}
38-
11+
- name: Checkout
12+
uses: actions/checkout@v4
13+
with:
14+
fetch-depth: 0
15+
token: ${{ secrets.TOKEN }}
16+
- name: Python Semantic Release
17+
uses: python-semantic-release/python-semantic-release@master
18+
id: semantic-release
19+
with:
20+
github_token: ${{ secrets.TOKEN }}
21+
- name: Build
22+
run: |
23+
python3 -m pip install --upgrade build
24+
python3 -m build
25+
- name: Upload
26+
if: steps.semantic-release.outputs.released == 'true'
27+
run: |
28+
python3 -m pip install twine
29+
python3 -m twine upload --repository pypi dist/* -u __token__ -p ${{ secrets.PYPI_TOKEN }}
30+
- name: Merge master -> next
31+
if: github.ref == 'refs/heads/master'
32+
uses: devmasx/merge-branch@master
33+
with:
34+
type: now
35+
from_branch: master
36+
target_branch: next
37+
github_token: ${{ github.token }}

CHANGELOG.md

Lines changed: 98 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,98 @@
22

33

44

5+
## v3.1.0 (2023-12-19)
6+
7+
### Unknown
8+
9+
* Merge pull request #56 from Geode-solutions/next
10+
11+
Next ([`645008b`](https://github.com/Geode-solutions/OpenGeodeWeb-Back/commit/645008ba5c8c74cefb0923ff8cf8c2647e4dfec1))
12+
13+
* Merge branch 'master' into next ([`4b640c3`](https://github.com/Geode-solutions/OpenGeodeWeb-Back/commit/4b640c31c59205d744ef3d19ae647277b91f9413))
14+
15+
16+
## v3.0.0-rc.12 (2023-12-19)
17+
18+
### Fix
19+
20+
* fix(workflows): refs/heads/master ([`a39a402`](https://github.com/Geode-solutions/OpenGeodeWeb-Back/commit/a39a4022e01c5ee8583565e9f901ec939381a86e))
21+
22+
23+
## v3.0.0-rc.11 (2023-12-18)
24+
25+
### Feature
26+
27+
* feat(functions): filter_geode_objects ([`d224d8f`](https://github.com/Geode-solutions/OpenGeodeWeb-Back/commit/d224d8f99b79abeee8fa49640c6b52a0395c7eb5))
28+
29+
* feat(list_geode_objects): test is_loadable
30+
31+
BREAKING CHANGE : arg extension -> file_absolute_path ([`241f60d`](https://github.com/Geode-solutions/OpenGeodeWeb-Back/commit/241f60d7a3b49661a31f7bbd3f816215881ba9a1))
32+
33+
### Unknown
34+
35+
* Merge pull request #55 from Geode-solutions/feat/is_loadable
36+
37+
Feat/is loadable ([`7cc9d3b`](https://github.com/Geode-solutions/OpenGeodeWeb-Back/commit/7cc9d3b640c88e105d3c4967df1a6aa7f5f24a5b))
38+
39+
* Merge branch 'next' into feat/is_loadable ([`1c1574d`](https://github.com/Geode-solutions/OpenGeodeWeb-Back/commit/1c1574de89b61efe1bea04ddf2f2ee964a471de4))
40+
41+
* Empty commit test ([`7ecca76`](https://github.com/Geode-solutions/OpenGeodeWeb-Back/commit/7ecca76f8257db3cc7c475926d99893012de2439))
42+
43+
44+
## v3.0.0 (2023-12-15)
45+
46+
### Unknown
47+
48+
* Merge pull request #53 from Geode-solutions/next
49+
50+
Next ([`f8b8784`](https://github.com/Geode-solutions/OpenGeodeWeb-Back/commit/f8b8784e0dccae63e66f1da0b306d5e6386069ce))
51+
52+
53+
## v3.0.0-rc.10 (2023-12-15)
54+
55+
### Fix
56+
57+
* fix(dependencies): update ecosystem ([`cbed29d`](https://github.com/Geode-solutions/OpenGeodeWeb-Back/commit/cbed29dbf0e195f23ef89f7798a155d2c33a56fe))
58+
59+
### Unknown
60+
61+
* Merge pull request #52 from Geode-solutions/chore/update_ecosystem
62+
63+
fix(dependencies): update ecosystem ([`eabfe89`](https://github.com/Geode-solutions/OpenGeodeWeb-Back/commit/eabfe89d98db21f0087f1ca4569ff695e05c9f99))
64+
65+
* Merge pull request #51 from Geode-solutions/revert-49-feat/is_loadable
66+
67+
Revert "Feat/is loadable" ([`d0f03a7`](https://github.com/Geode-solutions/OpenGeodeWeb-Back/commit/d0f03a788c892ea80431d3aff3dadf7f3755240f))
68+
69+
* Revert "Feat/is loadable" ([`2aab775`](https://github.com/Geode-solutions/OpenGeodeWeb-Back/commit/2aab7755049c33843cc120618f1a94e32a3429f3))
70+
71+
72+
## v3.0.0-rc.9 (2023-12-15)
73+
74+
### Feature
75+
76+
* feat(tests): strenghten unit tests 2 ([`9c9ab87`](https://github.com/Geode-solutions/OpenGeodeWeb-Back/commit/9c9ab87bbef54c6524bb26f57d60d8d644c0f8b1))
77+
78+
* feat(tests): strenghten unit tests ([`03b0a00`](https://github.com/Geode-solutions/OpenGeodeWeb-Back/commit/03b0a0055b39a0ceaf3863a7f9a9be1314fa6d06))
79+
80+
* feat(list_geode_objects): test is_loadable
81+
82+
BREAKING CHANGE : arg extension -> file_absolute_path ([`4af7868`](https://github.com/Geode-solutions/OpenGeodeWeb-Back/commit/4af78686c761c1abba86a02df39fc9a75e40e151))
83+
84+
### Unknown
85+
86+
* Merge pull request #49 from Geode-solutions/feat/is_loadable
87+
88+
Feat/is loadable ([`3ee5c1e`](https://github.com/Geode-solutions/OpenGeodeWeb-Back/commit/3ee5c1e3a44d5e9b151564603e89dacb4eff3112))
89+
90+
* update requirements ([`9066879`](https://github.com/Geode-solutions/OpenGeodeWeb-Back/commit/9066879e7b037794bbded4184fdb29765261ebc7))
91+
92+
* Merge branch 'next' of https://github.com/Geode-solutions/OpenGeodeWeb-Back into feat/is_loadable ([`2de6600`](https://github.com/Geode-solutions/OpenGeodeWeb-Back/commit/2de66004cc3acf735017f7aa41d985af9871bad3))
93+
94+
* update tests & deps ([`4fc793c`](https://github.com/Geode-solutions/OpenGeodeWeb-Back/commit/4fc793cdc1f791f30266706bfc05493f0ef87978))
95+
96+
597
## v3.0.0-rc.8 (2023-12-13)
698

799
### Feature
@@ -42,12 +134,18 @@ Feat/is saveable ([`1636622`](https://github.com/Geode-solutions/OpenGeodeWeb-Ba
42134

43135
BREAKING CHANGE: geode_objects_output_extensions returns a dict ([`1948edd`](https://github.com/Geode-solutions/OpenGeodeWeb-Back/commit/1948eddad186904c4aecc63ed0ecbfa6780fa1b7))
44136

137+
### Feature
138+
139+
* feat(geode_functions): is_loadable key & function ([`27ef421`](https://github.com/Geode-solutions/OpenGeodeWeb-Back/commit/27ef421b945da827c7d65705e6149b2052ce4378))
140+
45141
### Unknown
46142

47143
* Merge pull request #45 from Geode-solutions/feat/is_saveable
48144

49145
feat(functions): add send_file function ([`b1d53a4`](https://github.com/Geode-solutions/OpenGeodeWeb-Back/commit/b1d53a4ab280b74fb4e39a318d26ccd309f7dc68))
50146

147+
* update unit tests ([`78fefe1`](https://github.com/Geode-solutions/OpenGeodeWeb-Back/commit/78fefe13186b96c6e15be6f61441d69a62b15e0a))
148+
51149

52150
## v3.0.0-rc.5 (2023-12-06)
53151

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ build-backend = "setuptools.build_meta"
55

66
[project]
77
name = "OpenGeodeWeb-Back"
8-
version = "3.0.0-rc.8"
8+
version = "3.1.0"
99
dynamic = ["dependencies"]
1010
authors = [
1111
{ name="Geode-solutions", email="[email protected]" },

requirements.txt

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -22,12 +22,12 @@ flask[async]==3.0.0
2222
# flask-cors
2323
flask-cors==4.0.0
2424
# via -r requirements.in
25-
geode-background==7.4.8
25+
geode-background==7.4.9
2626
# via
2727
# geode-explicit
2828
# geode-implicit
2929
# geode-simplex
30-
geode-common==30.0.4
30+
geode-common==30.0.5
3131
# via
3232
# -r requirements.in
3333
# geode-background
@@ -36,24 +36,24 @@ geode-common==30.0.4
3636
# geode-numerics
3737
# geode-simplex
3838
# geode-viewables
39-
geode-conversion==5.1.6
39+
geode-conversion==5.1.7
4040
# via
4141
# geode-explicit
4242
# geode-implicit
43-
geode-explicit==4.3.9
43+
geode-explicit==4.3.10
4444
# via
4545
# -r requirements.in
4646
# geode-implicit
47-
geode-implicit==2.5.3
47+
geode-implicit==2.5.4
4848
# via -r requirements.in
49-
geode-numerics==4.2.2
49+
geode-numerics==4.2.3
5050
# via
5151
# -r requirements.in
5252
# geode-implicit
5353
# geode-simplex
54-
geode-simplex==6.2.9
54+
geode-simplex==6.3.0
5555
# via -r requirements.in
56-
geode-viewables==2.1.7
56+
geode-viewables==2.1.8
5757
# via -r requirements.in
5858
importlib-metadata==7.0.0
5959
# via flask
@@ -69,7 +69,7 @@ markupsafe==2.1.3
6969
# via
7070
# jinja2
7171
# werkzeug
72-
opengeode-core==14.10.2
72+
opengeode-core==14.10.3
7373
# via
7474
# -r requirements.in
7575
# geode-background
@@ -84,22 +84,22 @@ opengeode-core==14.10.2
8484
# opengeode-geosciencesio
8585
# opengeode-inspector
8686
# opengeode-io
87-
opengeode-geosciences==7.3.2
87+
opengeode-geosciences==7.3.3
8888
# via
8989
# -r requirements.in
9090
# geode-implicit
9191
# geode-viewables
9292
# opengeode-geosciencesio
93-
opengeode-geosciencesio==4.5.4
93+
opengeode-geosciencesio==4.5.5
9494
# via
9595
# -r requirements.in
9696
# geode-implicit
97-
opengeode-inspector==4.0.4
97+
opengeode-inspector==4.0.5
9898
# via
9999
# -r requirements.in
100100
# geode-explicit
101101
# geode-implicit
102-
opengeode-io==6.2.4
102+
opengeode-io==6.2.5
103103
# via
104104
# -r requirements.in
105105
# geode-implicit

src/opengeodeweb_back/geode_functions.py

Lines changed: 32 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,10 @@ def missing_files(geode_object: str, file_absolute_path: str):
3434
return geode_object_value(geode_object)["missing_files"](file_absolute_path)
3535

3636

37+
def is_loadable(geode_object: str, file_absolute_path: str):
38+
return geode_object_value(geode_object)["is_loadable"](file_absolute_path)
39+
40+
3741
def load(geode_object: str, file_absolute_path: str):
3842
return geode_object_value(geode_object)["load"](file_absolute_path)
3943

@@ -109,18 +113,26 @@ def geode_object_output_extensions(geode_object: str):
109113
return geode_object_output_list_creators
110114

111115

112-
def list_input_extensions(key: str = None):
113-
extensions_list = []
116+
def filter_geode_objects(key: str = None):
117+
geode_objects_filtered_list = []
114118
for geode_object, value in geode_objects_dict().items():
115-
if key != None:
119+
if key != None and key != "":
116120
if key in value:
117121
if type(value[key]) == bool:
118-
if value[key] == True:
119-
extensions_list += geode_object_input_extensions(geode_object)
122+
geode_objects_filtered_list.append(geode_object)
120123
else:
121-
extensions_list += geode_object_input_extensions(geode_object)
124+
geode_objects_filtered_list.append(geode_object)
122125
else:
123-
extensions_list += geode_object_input_extensions(geode_object)
126+
geode_objects_filtered_list.append(geode_object)
127+
geode_objects_filtered_list.sort()
128+
return geode_objects_filtered_list
129+
130+
131+
def list_input_extensions(key: str = None):
132+
extensions_list = []
133+
geode_objects_filtered_list = filter_geode_objects(key)
134+
for geode_object in geode_objects_filtered_list:
135+
extensions_list += geode_object_input_extensions(geode_object)
124136

125137
extensions_list = list(set(extensions_list))
126138
extensions_list.sort()
@@ -131,23 +143,19 @@ def has_creator(geode_object: str, extension: str):
131143
return input_factory(geode_object).has_creator(extension)
132144

133145

134-
def list_geode_objects(extension: str, key: str = None):
135-
geode_objects_list = []
136-
for geode_object, value in geode_objects_dict().items():
137-
if key != None:
138-
if key in value:
139-
if type(value[key]) == bool:
140-
if value[key] == True:
141-
if has_creator(geode_object, extension):
142-
geode_objects_list.append(geode_object)
143-
elif has_creator(geode_object, extension):
144-
geode_objects_list.append(geode_object)
145-
else:
146-
if has_creator(geode_object, extension):
147-
geode_objects_list.append(geode_object)
148-
149-
geode_objects_list.sort()
150-
return geode_objects_list
146+
def list_geode_objects(
147+
file_absolute_path: str,
148+
key: str = None,
149+
):
150+
return_dict = {}
151+
file_extension = extension_from_filename(os.path.basename(file_absolute_path))
152+
geode_objects_filtered_list = filter_geode_objects(key)
153+
154+
for geode_object in geode_objects_filtered_list:
155+
if has_creator(geode_object, file_extension):
156+
file_is_loadable = is_loadable(geode_object, file_absolute_path)
157+
return_dict[geode_object] = {"is_loadable": file_is_loadable}
158+
return return_dict
151159

152160

153161
def geode_objects_output_extensions(geode_object: str, data):

0 commit comments

Comments
 (0)