This isn't surprising. When we drop Python 3.7/3.8/3.9 support we should update the requirements file to remove this install from VCS and instead install from PyPI. That should resolve the issue.
Collecting sotodlib @ git+https://github.com/simonsobs/sotodlib.git@5d613d5915b1716c401abecb5446088bce5fc1a4 (from -r requirements.txt (line 48))
Cloning https://github.com/simonsobs/sotodlib.git (to revision 5d613d5915b1716c401abecb5446088bce5fc1a4) to /tmp/pip-install-fax400b9/sotodlib_64652bf670cc409a88d0610da60b8ffe
Running command git clone --filter=blob:none --quiet https://github.com/simonsobs/sotodlib.git /tmp/pip-install-fax400b9/sotodlib_64652bf670cc409a88d0610da60b8ffe
Running command git rev-parse -q --verify 'sha^5d613d5915b1716c401abecb5446088bce5fc1a4'
Running command git fetch -q https://github.com/simonsobs/sotodlib.git 5d613d5915b1716c401abecb5446088bce5fc1a4
Running command git checkout -q 5d613d5915b1716c401abecb5446088bce5fc1a4
Resolved https://github.com/simonsobs/sotodlib.git to commit 5d613d5915b1716c401abecb5446088bce5fc1a4
Installing build dependencies: started
Installing build dependencies: finished with status 'done'
Getting requirements to build wheel: started
Getting requirements to build wheel: finished with status 'error'
error: subprocess-exited-with-error
× Getting requirements to build wheel did not run successfully.
│ exit code: 1
╰─> [42 lines of output]
<string>:10: SetuptoolsDeprecationWarning: The test command is disabled and references to it are deprecated.
!!
********************************************************************************
Please remove any references to `setuptools.command.test` in all supported versions of the affected package.
This deprecation is overdue, please update your project and remove deprecated
calls to avoid build errors in the future.
********************************************************************************
!!
/tmp/pip-install-fax400b9/sotodlib_64652bf670cc409a88d0610da60b8ffe/versioneer.py:564: SyntaxWarning: invalid escape sequence '\s'
mo = re.search(r'=\s*"(.*)"', line)
Traceback (most recent call last):
File "/opt/hostedtoolcache/Python/3.12.13/x64/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 389, in <module>
main()
File "/opt/hostedtoolcache/Python/3.12.13/x64/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 373, in main
json_out["return_val"] = hook(**hook_input["kwargs"])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/hostedtoolcache/Python/3.12.13/x64/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 143, in get_requires_for_build_wheel
return hook(config_settings)
^^^^^^^^^^^^^^^^^^^^^
File "/tmp/pip-build-env-vuk3sr0b/overlay/lib/python3.12/site-packages/setuptools/build_meta.py", line 333, in get_requires_for_build_wheel
return self._get_build_requires(config_settings, requirements=[])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/tmp/pip-build-env-vuk3sr0b/overlay/lib/python3.12/site-packages/setuptools/build_meta.py", line 301, in _get_build_requires
self.run_setup()
File "/tmp/pip-build-env-vuk3sr0b/overlay/lib/python3.12/site-packages/setuptools/build_meta.py", line 520, in run_setup
super().run_setup(setup_script=setup_script)
File "/tmp/pip-build-env-vuk3sr0b/overlay/lib/python3.12/site-packages/setuptools/build_meta.py", line 317, in run_setup
exec(code, locals())
File "<string>", line 39, in <module>
File "/tmp/pip-install-fax400b9/sotodlib_64652bf670cc409a88d0610da60b8ffe/versioneer.py", line 1480, in get_version
return get_versions()["version"]
^^^^^^^^^^^^^^
File "/tmp/pip-install-fax400b9/sotodlib_64652bf670cc409a88d0610da60b8ffe/versioneer.py", line 1412, in get_versions
cfg = get_config_from_root(root)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/tmp/pip-install-fax400b9/sotodlib_64652bf670cc409a88d0610da60b8ffe/versioneer.py", line 342, in get_config_from_root
parser = configparser.SafeConfigParser()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: module 'configparser' has no attribute 'SafeConfigParser'. Did you mean: 'RawConfigParser'?
[end of output]
note: This error originates from a subprocess, and is likely not a problem with pip.
ERROR: Failed to build 'sotodlib' when getting requirements to build wheel
Error: Process completed with exit code 1.
In Python 3.12 our installation of the old version of
sotodlibthat still supports Python 3.8 fails.This isn't surprising. When we drop Python 3.7/3.8/3.9 support we should update the requirements file to remove this install from VCS and instead install from PyPI. That should resolve the issue.
Logs from an install: