Skip to content

Commit 4fd4527

Browse files
authored
Merge pull request #179 from MiraGeoscience/GEOPY-2661
GEOPY-2661: Update minimum requirement to python >=3.12, <3.15 and numpy 2.*
2 parents f38f025 + 8d50c65 commit 4fd4527

25 files changed

Lines changed: 2386 additions & 2436 deletions

.github/workflows/python_analysis.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ jobs:
3333
with:
3434
package-manager: 'conda'
3535
app-name: 'geoapps_utils'
36-
python-version: '3.10'
36+
python-version: '3.12'
3737
call-workflow-pytest:
3838
name: Pytest
3939
uses: MiraGeoscience/CI-tools/.github/workflows/reusable-python-pytest.yml@v2
@@ -42,10 +42,10 @@ jobs:
4242
pull-requests: read
4343
with:
4444
package-manager: 'conda'
45-
python-versions: '["3.10", "3.11", "3.12"]'
45+
python-versions: '["3.12", "3.13", "3.14"]'
4646
os: '["ubuntu-latest", "windows-latest"]'
4747
cache-number: 1
48-
codecov-reference-python-version: '3.10'
48+
codecov-reference-python-version: '3.12'
4949
codecov-reference-os: '["windows-latest"]'
5050
secrets:
5151
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}

.github/workflows/python_deploy_dev.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ jobs:
1919
contents: write
2020
with:
2121
package-name: 'geoapps-utils'
22-
python-version: '3.10'
22+
python-version: '3.12'
2323
source-repo-names: '["public-noremote-conda-dev"]'
2424
conda-channels: '["conda-forge"]'
2525
publish-repo-names: '["public-noremote-conda-dev"]'
@@ -35,7 +35,7 @@ jobs:
3535
package-manager: 'poetry'
3636
package-name: 'geoapps-utils'
3737
version-tag: ${{ github.ref_name }}
38-
python-version: '3.10'
38+
python-version: '3.12'
3939
virtual-repo-names: '["public-pypi-dev", "test-pypi"]'
4040
secrets:
4141
JFROG_ARTIFACTORY_URL: ${{ secrets.JFROG_ARTIFACTORY_URL }}

.pre-commit-config.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,8 +35,8 @@ repos:
3535
hooks:
3636
- id: mypy
3737
additional_dependencies: [
38-
numpy==1.26.*,
39-
pydantic==2.5.*,
38+
numpy==2.4.*,
39+
pydantic==2.12.*,
4040
tomli, # to read config from pyproject.toml
4141
types-PyYAML,
4242
types-toml,

deps-lock-config.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
include_dev: True
22
py_versions:
3-
- "3.10"
4-
- "3.11"
53
- "3.12"
4+
- "3.13"
5+
- "3.14"
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
dependencies:
2-
- python=3.10.*
2+
- python=3.13.*
33
- pip
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
dependencies:
2-
- python=3.11.*
2+
- python=3.14.*
33
- pip
Lines changed: 48 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -1,123 +1,123 @@
11
# Generated by conda-lock.
22
# platform: linux-64
3-
# input_hash: cc330f0a709db60370427f7464d7549374b896164057d19cf51e5f771c055502
3+
# input_hash: a88138472d5cf703033124b201e9efe5ddfd314346943b826d2af3fe2a691cdf
44

55
channels:
66
- conda-forge
77
- nodefaults
88
dependencies:
9-
- _libgcc_mutex=0.1=conda_forge
10-
- _openmp_mutex=4.5=2_gnu
9+
- _openmp_mutex=4.5=20_gnu
1110
- annotated-types=0.7.0=pyhd8ed1ab_1
12-
- astroid=4.0.2=py312h7900ff3_0
11+
- astroid=4.0.4=py312h7900ff3_0
1312
- brotli=1.2.0=hed03a55_1
1413
- brotli-bin=1.2.0=hb03c661_1
15-
- bzip2=1.0.8=hda65f42_8
14+
- bzip2=1.0.8=hda65f42_9
1615
- c-ares=1.34.6=hb03c661_0
17-
- ca-certificates=2025.11.12=hbd8a1cb_0
16+
- ca-certificates=2026.1.4=hbd8a1cb_0
1817
- cached-property=1.5.2=hd8ed1ab_1
1918
- cached_property=1.5.2=pyha770c72_1
20-
- certifi=2025.11.12=pyhd8ed1ab_0
2119
- colorama=0.4.6=pyhd8ed1ab_1
22-
- contourpy=1.3.3=py312hd9148b4_3
23-
- coverage=7.13.0=py312h8a5da7c_0
20+
- contourpy=1.3.3=py312h0a2e395_4
21+
- coverage=7.13.4=py312h8a5da7c_0
2422
- cycler=0.12.1=pyhcf101f3_2
25-
- dill=0.4.0=pyhcf101f3_1
23+
- dill=0.4.1=pyhcf101f3_0
2624
- exceptiongroup=1.3.1=pyhd8ed1ab_0
2725
- fonttools=4.61.1=py312h8a5da7c_0
2826
- freetype=2.14.1=ha770c72_0
2927
- h5py=3.15.1=nompi_py312ha4f8f14_101
30-
- hdf5=1.14.6=nompi_h1b119a7_104
31-
- icu=78.1=h33c6efd_0
28+
- hdf5=1.14.6=nompi_h19486de_106
29+
- icu=78.2=h33c6efd_0
3230
- importlib-metadata=8.7.0=pyhe01879c_1
3331
- iniconfig=2.3.0=pyhd8ed1ab_0
3432
- isort=7.0.0=pyhd8ed1ab_0
3533
- keyutils=1.6.3=hb9d3cd8_0
3634
- kiwisolver=1.4.9=py312h0a2e395_2
37-
- krb5=1.21.3=h659f571_0
38-
- lcms2=2.17=h717163a_0
39-
- ld_impl_linux-64=2.45=default_hbd61a6d_105
35+
- krb5=1.22.2=ha1258a1_0
36+
- lcms2=2.18=h0c24ade_0
37+
- ld_impl_linux-64=2.45.1=default_hbd61a6d_101
4038
- lerc=4.0.0=h0aef613_1
41-
- libaec=1.1.4=h3f801dc_0
39+
- libaec=1.1.5=h088129d_0
4240
- libblas=3.11.0=5_h4a7cf45_openblas
4341
- libbrotlicommon=1.2.0=hb03c661_1
4442
- libbrotlidec=1.2.0=hb03c661_1
4543
- libbrotlienc=1.2.0=hb03c661_1
4644
- libcblas=3.11.0=5_h0358290_openblas
47-
- libcurl=8.17.0=h4e3cde8_1
45+
- libcurl=8.18.0=hcf29cc6_1
4846
- libdeflate=1.25=h17f619e_0
4947
- libedit=3.1.20250104=pl5321h7949ede_0
5048
- libev=4.33=hd590300_2
51-
- libexpat=2.7.3=hecca717_0
52-
- libffi=3.5.2=h9ec8514_0
49+
- libexpat=2.7.4=hecca717_0
50+
- libffi=3.5.2=h3435931_0
5351
- libfreetype=2.14.1=ha770c72_0
5452
- libfreetype6=2.14.1=h73754d4_0
55-
- libgcc=15.2.0=he0feb66_16
56-
- libgcc-ng=15.2.0=h69a702a_16
57-
- libgfortran=15.2.0=h69a702a_16
58-
- libgfortran5=15.2.0=h68bc16d_16
59-
- libgomp=15.2.0=he0feb66_16
53+
- libgcc=15.2.0=he0feb66_17
54+
- libgcc-ng=15.2.0=h69a702a_17
55+
- libgfortran=15.2.0=h69a702a_17
56+
- libgfortran5=15.2.0=h68bc16d_17
57+
- libgomp=15.2.0=he0feb66_17
6058
- libjpeg-turbo=3.1.2=hb03c661_0
6159
- liblapack=3.11.0=5_h47877c9_openblas
62-
- liblzma=5.8.1=hb9d3cd8_2
60+
- liblzma=5.8.2=hb03c661_0
6361
- libnghttp2=1.67.0=had1ee68_0
6462
- libnsl=2.0.1=hb9d3cd8_1
6563
- libopenblas=0.3.30=pthreads_h94d23a6_4
66-
- libpng=1.6.53=h421ea60_0
67-
- libsqlite=3.51.1=hf4e2dac_1
64+
- libpng=1.6.55=h421ea60_0
65+
- libsqlite=3.51.2=hf4e2dac_0
6866
- libssh2=1.11.1=hcf80075_0
69-
- libstdcxx=15.2.0=h934c35e_16
70-
- libstdcxx-ng=15.2.0=hdf11a46_16
67+
- libstdcxx=15.2.0=h934c35e_17
68+
- libstdcxx-ng=15.2.0=hdf11a46_17
7169
- libtiff=4.7.1=h9d88235_1
7270
- libuuid=2.41.3=h5347b49_0
7371
- libwebp-base=1.6.0=hd42ef1d_0
7472
- libxcb=1.17.0=h8a09558_0
7573
- libxcrypt=4.4.36=hd590300_1
7674
- libzlib=1.3.1=hb9d3cd8_2
77-
- matplotlib-base=3.8.4=py312h20ab3a6_2
75+
- matplotlib-base=3.10.8=py312he3d6523_0
7876
- mccabe=0.7.0=pyhd8ed1ab_1
7977
- munkres=1.1.4=pyhd8ed1ab_1
8078
- ncurses=6.5=h2d0b736_3
81-
- numpy=1.26.4=py312heda63a1_0
79+
- numpy=2.4.2=py312h33ff503_1
8280
- openjpeg=2.5.4=h55fea9a_0
83-
- openssl=3.6.0=h26f9b46_0
84-
- packaging=25.0=pyh29332c3_1
85-
- pillow=10.3.0=py312h287a98d_1
86-
- pip=25.3=pyh8b19718_0
87-
- platformdirs=4.5.1=pyhcf101f3_0
81+
- openssl=3.6.1=h35e630c_1
82+
- packaging=26.0=pyhcf101f3_0
83+
- pillow=12.1.1=py312h50c33e8_0
84+
- pip=26.0.1=pyh8b19718_0
85+
- platformdirs=4.9.2=pyhcf101f3_0
8886
- pluggy=1.6.0=pyhf9edf01_1
8987
- pthread-stubs=0.4=hb9d3cd8_1002
9088
- pydantic=2.12.5=pyhcf101f3_1
9189
- pydantic-core=2.41.5=py312h868fb18_1
9290
- pygments=2.19.2=pyhd8ed1ab_0
9391
- pylint=4.0.4=pyhcf101f3_0
94-
- pyparsing=3.3.1=pyhcf101f3_0
92+
- pyparsing=3.3.2=pyhcf101f3_0
9593
- pytest=9.0.2=pyhcf101f3_0
9694
- pytest-cov=7.0.0=pyhcf101f3_1
97-
- python=3.12.12=hd63d673_1_cpython
95+
- python=3.12.12=hd63d673_2_cpython
9896
- python-dateutil=2.9.0.post0=pyhe01879c_2
9997
- python_abi=3.12=8_cp312
100-
- pyyaml=6.0.3=py312h8a5da7c_0
98+
- pyyaml=6.0.3=py312h8a5da7c_1
99+
- qhull=2020.2=h434a139_5
101100
- readline=8.3=h853b02a_0
102-
- scipy=1.14.1=py312h62794b6_2
103-
- setuptools=80.9.0=pyhff2d567_0
101+
- scipy=1.17.0=py312h54fa4ab_1
102+
- setuptools=82.0.0=pyh332efcf_0
104103
- six=1.17.0=pyhe01879c_1
105-
- tk=8.6.13=noxft_ha0e22de_103
106-
- tomli=2.3.0=pyhcf101f3_0
107-
- tomlkit=0.13.3=pyha770c72_0
104+
- tk=8.6.13=noxft_h366c992_103
105+
- tomli=2.4.0=pyhcf101f3_0
106+
- tomlkit=0.14.0=pyha770c72_0
108107
- typing-extensions=4.15.0=h396c80c_0
109108
- typing-inspection=0.4.2=pyhd8ed1ab_1
110109
- typing_extensions=4.15.0=pyhcf101f3_0
111-
- tzdata=2025c=h8577fbf_0
112-
- unicodedata2=17.0.0=py312h4c3975b_1
113-
- wheel=0.45.1=pyhd8ed1ab_1
110+
- tzdata=2025c=hc9c84f9_1
111+
- unicodedata2=17.0.1=py312h4c3975b_0
112+
- wheel=0.46.3=pyhd8ed1ab_0
114113
- xorg-libxau=1.0.12=hb03c661_1
115114
- xorg-libxdmcp=1.1.5=hb03c661_1
116115
- yaml=0.2.5=h280c20c_3
117116
- zipp=3.23.0=pyhcf101f3_1
117+
- zlib-ng=2.3.3=hceb46e0_1
118118
- zstd=1.5.7=hb78ec9c_6
119119
- pip:
120-
- geoh5py @ git+https://github.com/MiraGeoscience/geoh5py.git@2ddfbccc8ad581c8810b4568fd5795b7148f0c34
120+
- geoh5py @ git+https://github.com/MiraGeoscience/geoh5py.git@3310d7a4521879f99a0a56ce613f265423e73a8f
121121

122122
variables:
123123
KMP_WARNINGS: 0
Lines changed: 41 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -1,103 +1,103 @@
11
# Generated by conda-lock.
22
# platform: linux-64
3-
# input_hash: cc330f0a709db60370427f7464d7549374b896164057d19cf51e5f771c055502
3+
# input_hash: a88138472d5cf703033124b201e9efe5ddfd314346943b826d2af3fe2a691cdf
44

55
channels:
66
- conda-forge
77
- nodefaults
88
dependencies:
9-
- _libgcc_mutex=0.1=conda_forge
10-
- _openmp_mutex=4.5=2_gnu
9+
- _openmp_mutex=4.5=20_gnu
1110
- annotated-types=0.7.0=pyhd8ed1ab_1
1211
- brotli=1.2.0=hed03a55_1
1312
- brotli-bin=1.2.0=hb03c661_1
14-
- bzip2=1.0.8=hda65f42_8
13+
- bzip2=1.0.8=hda65f42_9
1514
- c-ares=1.34.6=hb03c661_0
16-
- ca-certificates=2025.11.12=hbd8a1cb_0
15+
- ca-certificates=2026.1.4=hbd8a1cb_0
1716
- cached-property=1.5.2=hd8ed1ab_1
1817
- cached_property=1.5.2=pyha770c72_1
19-
- certifi=2025.11.12=pyhd8ed1ab_0
20-
- contourpy=1.3.3=py312hd9148b4_3
18+
- contourpy=1.3.3=py312h0a2e395_4
2119
- cycler=0.12.1=pyhcf101f3_2
2220
- fonttools=4.61.1=py312h8a5da7c_0
2321
- freetype=2.14.1=ha770c72_0
2422
- h5py=3.15.1=nompi_py312ha4f8f14_101
25-
- hdf5=1.14.6=nompi_h1b119a7_104
26-
- icu=78.1=h33c6efd_0
23+
- hdf5=1.14.6=nompi_h19486de_106
24+
- icu=78.2=h33c6efd_0
2725
- keyutils=1.6.3=hb9d3cd8_0
2826
- kiwisolver=1.4.9=py312h0a2e395_2
29-
- krb5=1.21.3=h659f571_0
30-
- lcms2=2.17=h717163a_0
31-
- ld_impl_linux-64=2.45=default_hbd61a6d_105
27+
- krb5=1.22.2=ha1258a1_0
28+
- lcms2=2.18=h0c24ade_0
29+
- ld_impl_linux-64=2.45.1=default_hbd61a6d_101
3230
- lerc=4.0.0=h0aef613_1
33-
- libaec=1.1.4=h3f801dc_0
31+
- libaec=1.1.5=h088129d_0
3432
- libblas=3.11.0=5_h4a7cf45_openblas
3533
- libbrotlicommon=1.2.0=hb03c661_1
3634
- libbrotlidec=1.2.0=hb03c661_1
3735
- libbrotlienc=1.2.0=hb03c661_1
3836
- libcblas=3.11.0=5_h0358290_openblas
39-
- libcurl=8.17.0=h4e3cde8_1
37+
- libcurl=8.18.0=hcf29cc6_1
4038
- libdeflate=1.25=h17f619e_0
4139
- libedit=3.1.20250104=pl5321h7949ede_0
4240
- libev=4.33=hd590300_2
43-
- libexpat=2.7.3=hecca717_0
44-
- libffi=3.5.2=h9ec8514_0
41+
- libexpat=2.7.4=hecca717_0
42+
- libffi=3.5.2=h3435931_0
4543
- libfreetype=2.14.1=ha770c72_0
4644
- libfreetype6=2.14.1=h73754d4_0
47-
- libgcc=15.2.0=he0feb66_16
48-
- libgcc-ng=15.2.0=h69a702a_16
49-
- libgfortran=15.2.0=h69a702a_16
50-
- libgfortran5=15.2.0=h68bc16d_16
51-
- libgomp=15.2.0=he0feb66_16
45+
- libgcc=15.2.0=he0feb66_17
46+
- libgcc-ng=15.2.0=h69a702a_17
47+
- libgfortran=15.2.0=h69a702a_17
48+
- libgfortran5=15.2.0=h68bc16d_17
49+
- libgomp=15.2.0=he0feb66_17
5250
- libjpeg-turbo=3.1.2=hb03c661_0
5351
- liblapack=3.11.0=5_h47877c9_openblas
54-
- liblzma=5.8.1=hb9d3cd8_2
52+
- liblzma=5.8.2=hb03c661_0
5553
- libnghttp2=1.67.0=had1ee68_0
5654
- libnsl=2.0.1=hb9d3cd8_1
5755
- libopenblas=0.3.30=pthreads_h94d23a6_4
58-
- libpng=1.6.53=h421ea60_0
59-
- libsqlite=3.51.1=hf4e2dac_1
56+
- libpng=1.6.55=h421ea60_0
57+
- libsqlite=3.51.2=hf4e2dac_0
6058
- libssh2=1.11.1=hcf80075_0
61-
- libstdcxx=15.2.0=h934c35e_16
62-
- libstdcxx-ng=15.2.0=hdf11a46_16
59+
- libstdcxx=15.2.0=h934c35e_17
60+
- libstdcxx-ng=15.2.0=hdf11a46_17
6361
- libtiff=4.7.1=h9d88235_1
6462
- libuuid=2.41.3=h5347b49_0
6563
- libwebp-base=1.6.0=hd42ef1d_0
6664
- libxcb=1.17.0=h8a09558_0
6765
- libxcrypt=4.4.36=hd590300_1
6866
- libzlib=1.3.1=hb9d3cd8_2
69-
- matplotlib-base=3.8.4=py312h20ab3a6_2
67+
- matplotlib-base=3.10.8=py312he3d6523_0
7068
- munkres=1.1.4=pyhd8ed1ab_1
7169
- ncurses=6.5=h2d0b736_3
72-
- numpy=1.26.4=py312heda63a1_0
70+
- numpy=2.4.2=py312h33ff503_1
7371
- openjpeg=2.5.4=h55fea9a_0
74-
- openssl=3.6.0=h26f9b46_0
75-
- packaging=25.0=pyh29332c3_1
76-
- pillow=10.3.0=py312h287a98d_1
77-
- pip=25.3=pyh8b19718_0
72+
- openssl=3.6.1=h35e630c_1
73+
- packaging=26.0=pyhcf101f3_0
74+
- pillow=12.1.1=py312h50c33e8_0
75+
- pip=26.0.1=pyh8b19718_0
7876
- pthread-stubs=0.4=hb9d3cd8_1002
7977
- pydantic=2.12.5=pyhcf101f3_1
8078
- pydantic-core=2.41.5=py312h868fb18_1
81-
- pyparsing=3.3.1=pyhcf101f3_0
82-
- python=3.12.12=hd63d673_1_cpython
79+
- pyparsing=3.3.2=pyhcf101f3_0
80+
- python=3.12.12=hd63d673_2_cpython
8381
- python-dateutil=2.9.0.post0=pyhe01879c_2
8482
- python_abi=3.12=8_cp312
83+
- qhull=2020.2=h434a139_5
8584
- readline=8.3=h853b02a_0
86-
- scipy=1.14.1=py312h62794b6_2
87-
- setuptools=80.9.0=pyhff2d567_0
85+
- scipy=1.17.0=py312h54fa4ab_1
86+
- setuptools=82.0.0=pyh332efcf_0
8887
- six=1.17.0=pyhe01879c_1
89-
- tk=8.6.13=noxft_ha0e22de_103
88+
- tk=8.6.13=noxft_h366c992_103
9089
- typing-extensions=4.15.0=h396c80c_0
9190
- typing-inspection=0.4.2=pyhd8ed1ab_1
9291
- typing_extensions=4.15.0=pyhcf101f3_0
93-
- tzdata=2025c=h8577fbf_0
94-
- unicodedata2=17.0.0=py312h4c3975b_1
95-
- wheel=0.45.1=pyhd8ed1ab_1
92+
- tzdata=2025c=hc9c84f9_1
93+
- unicodedata2=17.0.1=py312h4c3975b_0
94+
- wheel=0.46.3=pyhd8ed1ab_0
9695
- xorg-libxau=1.0.12=hb03c661_1
9796
- xorg-libxdmcp=1.1.5=hb03c661_1
97+
- zlib-ng=2.3.3=hceb46e0_1
9898
- zstd=1.5.7=hb78ec9c_6
9999
- pip:
100-
- geoh5py @ git+https://github.com/MiraGeoscience/geoh5py.git@2ddfbccc8ad581c8810b4568fd5795b7148f0c34
100+
- geoh5py @ git+https://github.com/MiraGeoscience/geoh5py.git@3310d7a4521879f99a0a56ce613f265423e73a8f
101101

102102
variables:
103103
KMP_WARNINGS: 0

0 commit comments

Comments
 (0)