diff --git a/.github/workflows/pr-tests.yml b/.github/workflows/pr-tests.yml index 0a46a61..d824f7a 100644 --- a/.github/workflows/pr-tests.yml +++ b/.github/workflows/pr-tests.yml @@ -1,5 +1,9 @@ name: PR Tests +permissions: + contents: read + pull-requests: write + on: pull_request: branches: @@ -8,6 +12,8 @@ on: jobs: pr-tests: - uses: CitrineInformatics/common-gh-actions/.github/workflows/run-tests.yml@v1 + uses: CitrineInformatics/common-gh-actions/.github/workflows/run-tests.yml@v1.1 with: src: gemd + skip_38: true + include_313: true diff --git a/gemd/__version__.py b/gemd/__version__.py index dd0edd7..8a124bf 100644 --- a/gemd/__version__.py +++ b/gemd/__version__.py @@ -1 +1 @@ -__version__ = "2.1.11" +__version__ = "2.2.0" diff --git a/gemd/units/impl.py b/gemd/units/impl.py index fcc1ec0..dfdccf7 100644 --- a/gemd/units/impl.py +++ b/gemd/units/impl.py @@ -307,7 +307,7 @@ def _format_clean(unit, registry, **options): """ try: # Informal route changed in 0.22 from pint.formatting import _FORMATTERS - formatter = _FORMATTERS["D"] + formatter = _FORMATTERS["D"] # pragma: no cover except ImportError: # pragma: no cover from pint import Unit formatter_obj = registry.formatter._formatters["D"] @@ -317,7 +317,6 @@ def _surrogate_formatter(unit, registry, **options): parsed = Unit(unit) return formatter_obj.format_unit(parsed) except ValueError: - parsed = Unit(unit) return formatter_obj.format_quantity(unit) formatter = _surrogate_formatter diff --git a/requirements.txt b/requirements.txt index 29ad6a1..bc1d0b6 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,4 +1,4 @@ -pint==0.21 +pint==0.24.4 deprecation==2.1.0 typing-extensions==4.8.0 importlib-resources==5.3.0 diff --git a/setup.py b/setup.py index 81d26e4..cb33c7d 100644 --- a/setup.py +++ b/setup.py @@ -15,7 +15,7 @@ setup(name='gemd', # Update this in gemd/__version__.py version=version, - python_requires='>=3.8', + python_requires='>=3.9', url='http://github.com/CitrineInformatics/gemd-python', description="Python binding for Citrine's GEMD data model", author='Citrine Informatics', @@ -33,14 +33,14 @@ 'tests.units': ['test_units.txt'] }, install_requires=[ - "pint>=0.21,<0.25,!=0.22,!=0.23", # pint 0.22,0.23 have a bad interaction w/ numpy >= 2 + "pint>=0.24.4,<0.25", "deprecation>=2.1.0,<3", "typing_extensions>=4.8,<5", "importlib-resources>=5.3,<7" ], extras_require={ "scripts": [ - "packaging" + "packaging", "sphinx==5.0.0", "sphinx-rtd-theme==1.0.0", "sphinxcontrib-apidoc==0.3.0", @@ -52,16 +52,16 @@ "pandas>=2.0.3,<3" ], "tests.entity.bounds": [ - "numpy>=1.24.4,<3", + "numpy>=1.24.4,<2; python_version<='3.10'", "pandas>=2.0.3,<3" ] }, classifiers=[ 'Programming Language :: Python :: 3', - 'Programming Language :: Python :: 3.8', 'Programming Language :: Python :: 3.9', 'Programming Language :: Python :: 3.10', 'Programming Language :: Python :: 3.11', 'Programming Language :: Python :: 3.12', + 'Programming Language :: Python :: 3.13', ], ) diff --git a/test_requirements.txt b/test_requirements.txt index ef3cd8b..0460dfc 100644 --- a/test_requirements.txt +++ b/test_requirements.txt @@ -1,6 +1,9 @@ flake8==7.0.0 flake8-docstrings==1.7.0 +numpy==1.24.4; python_version<'3.10' +pandas==2.0.3; python_version<'3.10' +numpy>=2.0.2,<=2.1.0; python_version>='3.10' +pandas==2.3.0; python_version>='3.10' pytest==8.0.0 pytest-cov==4.1.0 -pandas>=2.0.3,<2.2.0 # includes a compatible version of numpy derp==0.1.1