Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 9 additions & 17 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,29 +13,21 @@ jobs:
fail-fast: false
matrix:
os: [ubuntu-latest, windows-latest, macos-latest]
python-version: [3.8, 3.9]
include:
# Oldest supported version of main dependencies on Python 3.5.1
- os: ubuntu-latest
python-version: 3.5
OLDEST_SUPPORTED_VERSION: true
DEPENDENCIES: numpy==1.13.3 scipy==1.3.3
python-version: ['3.12', '3.13', '3.14']
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v2
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Display versions
run: python -V; pip -V
- name: Install oldest supported version
if: ${{ matrix.OLDEST_SUPPORTED_VERSION }}
run: pip install ${{ matrix.DEPENDENCIES }}
- name: Install depedencies and package
- name: Install dependencies and package
shell: bash
run: pip install -U -e .'[tests]'
- name: Run tests
run: pytest --cov=morphops --pyargs morphops
- name: Generate line coverage
if: ${{ matrix.os == 'ubuntu-latest' }}
run: coverage report --show-missing
if: ${{ matrix.os != 'ubuntu-latest' || matrix.python-version != '3.14' }}
run: pytest --pyargs morphops
- name: Run tests with coverage
if: ${{ matrix.os == 'ubuntu-latest' && matrix.python-version == '3.14' }}
run: pytest --cov=morphops --cov-report=term-missing --pyargs morphops
13 changes: 12 additions & 1 deletion CHANGELOG.rst
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,17 @@ entries are sorted in descending chronological order.
Unreleased
==========

Changed
-------
- Dropped support for Python versions older than 3.12 and updated CI to test
Python 3.12 through 3.14.

Fixed
-----
- Fixed compatibility with NumPy 2.x by replacing removed or deprecated NumPy
APIs.
- Fixed invalid escape sequence warnings in math-heavy docstrings.

Added
-----
- all-contributors section to README. Added manually due to `lack of rst support in the cli, bot <https://github.com/all-contributors/all-contributors-cli/issues/300>`_, but see `PR 301 there <https://github.com/all-contributors/all-contributors-cli/pull/301>`_.
Expand All @@ -23,4 +34,4 @@ Added

Added
-----
- This project now keeps a changelog.
- This project now keeps a changelog.
10 changes: 4 additions & 6 deletions setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -30,15 +30,13 @@
packages=find_packages(),
classifiers=[
'Programming Language :: Python :: 3 :: Only',
'Programming Language :: Python :: 3.5',
'Programming Language :: Python :: 3.6',
'Programming Language :: Python :: 3.7',
'Programming Language :: Python :: 3.8',
'Programming Language :: Python :: 3.9',
'Programming Language :: Python :: 3.12',
'Programming Language :: Python :: 3.13',
'Programming Language :: Python :: 3.14',
'License :: OSI Approved :: MIT License',
'Topic :: Scientific/Engineering'
],
python_requires='>=3.5.1',
python_requires='>=3.12',
extras_require=extra_feature_requirements,
install_requires=['numpy >= 1.13.3', 'scipy >= 1.3.3'],
include_package_data=True
Expand Down
34 changes: 9 additions & 25 deletions tox.ini
Original file line number Diff line number Diff line change
@@ -1,32 +1,16 @@
[tox]
envlist = py35,py36,python3.7
envlist = py312,py313,py314-coverage

[travis]
python =
3.5: py35
3.6: py36
3.7: python3.7

[testenv:py35]
deps =
pytest
numpy==1.13.3
scipy==1.3.3
commands =
pytest -q -s tests

[testenv:py36]
[testenv]
deps =
pytest
pytest-cov
numpy==1.14.5
scipy==1.5.0
commands =
pytest -q -s tests
pytest --cov=morphops tests/
pytest -q -s --pyargs morphops

[testenv]
deps =
[testenv:py314-coverage]
basepython = python3.14
deps =
pytest
commands =
pytest -q -s tests
pytest-cov
commands =
pytest -q -s --cov=morphops --cov-report=term-missing --pyargs morphops
Loading