PetroFit / petrofit

Python package for calculating Petrosian properties and fitting galaxy light profiles
https://petrofit.readthedocs.io
28 stars 7 forks source link

installing astropy-helpers from requirements.txt fails #217

Closed kyleaoman closed 1 month ago

kyleaoman commented 1 month ago

The documentation specifies that for developers the dependencies can be installed as:

pip install -r requirements.txt

However the astropy_helpers package fails to install on python3.12 because the imp module is not found (seems to be due to restructuring of importlib). Log copied below. The astropy-helpers pypi listing suggests that this tool may have fallen out of use: not updated since 2019 and CI failing...

This issue is part of my PyOpenSci review. For review pass/fail purposes, resolving it is required.

kyleaoman commented 1 month ago
txwx36@iccpc2> pip install astropy_helpers
Collecting astropy_helpers
  Using cached astropy-helpers-4.0.1.tar.gz (52 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... error
  error: subprocess-exited-with-error

  × Getting requirements to build wheel did not run successfully.
  │ exit code: 1
  ╰─> [25 lines of output]
      <string>:14: DeprecationWarning: distutils Version classes are deprecated. Use packaging.version instead.
      Traceback (most recent call last):
        File "/home/txwx36/.venv/petrofit/lib64/python3.12/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 353, in <module>
          main()
        File "/home/txwx36/.venv/petrofit/lib64/python3.12/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 335, in main
          json_out['return_val'] = hook(**hook_input['kwargs'])
                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File "/home/txwx36/.venv/petrofit/lib64/python3.12/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 118, in get_requires_for_build_wheel
          return hook(config_settings)
                 ^^^^^^^^^^^^^^^^^^^^^
        File "/tmp/pip-build-env-ifv5je9y/overlay/lib/python3.12/site-packages/setuptools/build_meta.py", line 332, in get_requires_for_build_wheel
          return self._get_build_requires(config_settings, requirements=[])
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File "/tmp/pip-build-env-ifv5je9y/overlay/lib/python3.12/site-packages/setuptools/build_meta.py", line 302, in _get_build_requires
          self.run_setup()
        File "/tmp/pip-build-env-ifv5je9y/overlay/lib/python3.12/site-packages/setuptools/build_meta.py", line 318, in run_setup
          exec(code, locals())
        File "<string>", line 22, in <module>
        File "/tmp/pip-install-pze9__10/astropy-helpers_50dd5a9746424db3a4d9839b9e9855c8/astropy_helpers/version_helpers.py", line 34, in <module>
          from .distutils_helpers import is_distutils_display_option
        File "/tmp/pip-install-pze9__10/astropy-helpers_50dd5a9746424db3a4d9839b9e9855c8/astropy_helpers/distutils_helpers.py", line 18, in <module>
          from .utils import silence
        File "/tmp/pip-install-pze9__10/astropy-helpers_50dd5a9746424db3a4d9839b9e9855c8/astropy_helpers/utils.py", line 4, in <module>
          import imp
      ModuleNotFoundError: No module named 'imp'
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
error: subprocess-exited-with-error

× Getting requirements to build wheel did not run successfully.
│ exit code: 1
╰─> See above for output.

note: This error originates from a subprocess, and is likely not a problem with pip.
kyleaoman commented 1 month ago

Seems to have been fixed in latest versions (I was checking v0.5.0 as the "submitted version").