Skip to content

Update to require python 3.9#1

Closed
hjmjohnson wants to merge 15 commits intomasterfrom
update-to-require-python-3.9
Closed

Update to require python 3.9#1
hjmjohnson wants to merge 15 commits intomasterfrom
update-to-require-python-3.9

Conversation

@hjmjohnson
Copy link
Member

No description provided.

JoostJM and others added 14 commits May 10, 2025 06:22
- Remove setup.cfg
- Move as much information as possible to pyproject.toml
- Keep versioning dynamic using versioneer.
Follows suggestions obtained by running cookiecutter from https://learn.scientific-python.org/development/.
- Update the matrices baseline numpy arrays to newer version. Values are unchanged, matrices were simply loaded and saved again using `arr = numpy.load(<path>); numpy.save(<path>, arr);`.
- Ignore specific deprecation warning related to a deprecated function being used in PyKwalify. See also Grokzen/pykwalify#202 and Grokzen/pykwalify#203.
- Excludes github config from `.github`.
- Excludes `.*` files in the root.
Also remove deprecated requirements files (now defined in `pyproject.toml`.
For migration purposes, also add the `refactor-build-system` branch to the push event of the CI workflow.
Due to migration being in progress, the pre-commit job is expected to fail. Error occurring in this job are scheduled to be fixed after CI setup is up and running to catch bugs that arise due to style changes.
This commit fixes the following error:

```
$ pip install .[test]
[...]
      *** Making wheel...
      2025-01-29 09:11:34,654 - scikit_build_core - ERROR - Metadata mismatch in METADATA: b'Metadata-Version: 2.1\nName: pyradiomics\nVersion: 3.0.1a4.dev38+gf2f3c6b\nSummary: Radiomics features library for python\nKeywords: radiomics,cancerimaging,medicalresearch,computationalimaging\nAuthor-Email: PyRadiomics Community <pyradiomics@googlegroups.com>\n[...]'
      Traceback (most recent call last):
        File "/opt/hostedtoolcache/Python/3.9.21/x64/lib/python3.9/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 353, in <module>
          main()
        File "/opt/hostedtoolcache/Python/3.9.21/x64/lib/python3.9/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 335, in main
          json_out['return_val'] = hook(**hook_input['kwargs'])
        File "/opt/hostedtoolcache/Python/3.9.21/x64/lib/python3.9/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 251, in build_wheel
          return _build_backend().build_wheel(wheel_directory, config_settings,
        File "/tmp/pip-build-env-u6dnfh2j/overlay/lib/python3.9/site-packages/scikit_build_core/build/__init__.py", line 33, in build_wheel
          return _build_wheel_impl(
        File "/tmp/pip-build-env-u6dnfh2j/overlay/lib/python3.9/site-packages/scikit_build_core/build/wheel.py", line 175, in _build_wheel_impl
          return _build_wheel_impl_impl(
        File "/tmp/pip-build-env-u6dnfh2j/overlay/lib/python3.9/site-packages/scikit_build_core/build/wheel.py", line 508, in _build_wheel_impl_impl
          raise AssertionError(msg)
      AssertionError: Metadata mismatch in METADATA
[...]
```
Supports Python versions 3.8-3.10. 3.11+ fails with segmentation fault, most likely due to new multithreading support.
Fails CI because of an error during a build of SimpleITK (apparently no appropriate wheel available).
Allows to exclude commits from git-blame. This should contain commits reflecting only style changes.
@hjmjohnson hjmjohnson force-pushed the update-to-require-python-3.9 branch from 34fcff2 to d891113 Compare May 13, 2025 13:36
@hjmjohnson hjmjohnson closed this May 19, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants