Update build pipeline and switch to pytest#81
Conversation
There was a problem hiding this comment.
Pull Request Overview
This PR updates the build pipeline and migrates the test suite from nose to pytest. The changes modernize the testing infrastructure and build configuration to align with current Python packaging standards.
Key changes include:
- Complete migration from nose to pytest with updated assertion patterns and fixtures
- Modernization of build system from legacy setup.py to pyproject.toml configuration
- Updated CI/CD pipeline to use pytest and more recent action versions
Reviewed Changes
Copilot reviewed 14 out of 16 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| tests/test_waveform.py | Migrated from nose decorators to pytest, updated assertions and exception handling |
| tests/test_image.py | Replaced nose.tools with pytest equivalents, converted eq_ to standard assert statements |
| tests/test_hdf5.py | Converted nose setup/teardown to pytest fixtures, updated map() calls to explicit loops |
| tests/test_file.py | Migrated nose test decorators to pytest fixtures for temp directory management |
| tests/test_common.py | Removed deprecated functions, added comparison utilities for test assertions |
| tests/test_acquisition.py | Converted nose decorators and assertions to pytest equivalents |
| setup.py | Restructured build commands for schema generation with new command class structure |
| pyproject.toml | Added modern Python project configuration with dependencies and metadata |
| ismrmrd/xsd/init.py | Minor import formatting cleanup |
| conda/run_test.sh | Updated test command from nosetests to pytest |
| conda/meta.yaml | Replaced nose dependency with pytest in conda configuration |
| conda/conda_build_config.yaml | Updated Python version support from 3.9 to 3.10-3.12 |
| .github/workflows/python-publish.yml | Modernized GitHub Actions with updated versions and pytest integration |
| .github/workflows/ismrmrd_python_conda.yml | Updated workflow triggers and action versions |
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
|
|
||
| setup( | ||
| name='ismrmrd', | ||
| version='1.14.1', |
There was a problem hiding this comment.
Normally, yes, but this project's version has historically followed the version of the main C++ implementation.
So, the version will bump to 1.14.2 in the next PR when I add the ProtocolSerializer, bringing the API to feature parity with the C++ library.
No description provided.