maintainer-feedback requested: [Bug 277472] devel/py-setuptools-scm: AttributeError: module 'setuptools_scm.integration' has no attribute 'infer_version'

From: <bugzilla-noreply_at_freebsd.org>
Date: Mon, 04 Mar 2024 11:41:09 UTC
Bugzilla Automation <bugzilla@FreeBSD.org> has asked freebsd-python (Nobody)
<python@FreeBSD.org> for maintainer-feedback:
Bug 277472: devel/py-setuptools-scm: AttributeError: module
'setuptools_scm.integration' has no attribute 'infer_version'
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=277472



--- Description ---
Hi,

Since about 5 days I'm getting intermittent errors in a clean env on building
databases/py-duckdb.  The error is as follows:

===>   py39-setuptools-scm-8.0.4 depends on file: /usr/local/sbin/pkg - found  

[20240303213417] ===> Fetching all distfiles required by
py39-setuptools-scm-8.0.4 for building
[20240303213417] ===> Extracting for py39-setuptools-scm-8.0.4		       

[20240303213417] => SHA256 Checksum OK for setuptools-scm-8.0.4.tar.gz.        

[20240303213417] ===> Patching for py39-setuptools-scm-8.0.4		       

===>   py39-setuptools-scm-8.0.4 depends on package: py39-setuptools>0 - found 

===>   py39-setuptools-scm-8.0.4 depends on package: py39-wheel>0 - found      

===>   py39-setuptools-scm-8.0.4 depends on file: /usr/local/bin/python3.9 -
found
===>   py39-setuptools-scm-8.0.4 depends on package: py39-tomli>0 - found      

===>   py39-setuptools-scm-8.0.4 depends on package: py39-build>=0 - found     

===>   py39-setuptools-scm-8.0.4 depends on package: py39-installer>=0 - found 

[20240303213417] ===> Configuring for py39-setuptools-scm-8.0.4 	       

[20240303213417] ===> Building for py39-setuptools-scm-8.0.4		       

* Getting build dependencies for wheel...				       

Traceback (most recent call last):					       

  File
"/usr/local/lib/python3.9/site-packages/pyproject_hooks/_in_process/_in_process
.py",
line 353, in <module>
    main()								       

  File
"/usr/local/lib/python3.9/site-packages/pyproject_hooks/_in_process/_in_process
.py",
line 335, in main
    json_out['return_val'] = hook(**hook_input['kwargs'])		       

  File
"/usr/local/lib/python3.9/site-packages/pyproject_hooks/_in_process/_in_process
.py",
line 118, in get_requires_for_build_wheel
    return hook(config_settings)					       

  File "/usr/local/lib/python3.9/site-packages/setuptools/build_meta.py", line
177, in get_requires_for_build_wheel
    return self._get_build_requires(					       

  File "/usr/local/lib/python3.9/site-packages/setuptools/build_meta.py", line
159, in _get_build_requires
    self.run_setup()							       

  File "/usr/local/lib/python3.9/site-packages/setuptools/build_meta.py", line
174, in run_setup
    exec(compile(code, __file__, 'exec'), locals())			       

  File "setup.py", line 1, in <module>					       

  File "/usr/local/lib/python3.9/site-packages/setuptools/__init__.py", line
87, in setup
    return distutils.core.setup(**attrs)				       

  File "/usr/local/lib/python3.9/site-packages/setuptools/_distutils/core.py",
line 139, in setup
    _setup_distribution = dist = klass(attrs)				       

  File "/usr/local/lib/python3.9/site-packages/setuptools/dist.py", line 476,
in __init__
    _Distribution.__init__(						       

  File "/usr/local/lib/python3.9/site-packages/setuptools/_distutils/dist.py",
line 275, in __init__
    self.finalize_options()						       

  File "/usr/local/lib/python3.9/site-packages/setuptools/dist.py", line 899,
in finalize_options
    for ep in sorted(loaded, key=by_order):				       

  File "/usr/local/lib/python3.9/site-packages/setuptools/dist.py", line 898,
in <lambda>
    loaded = map(lambda e: e.load(), filtered)				       

  File
"/usr/local/lib/python3.9/site-packages/setuptools/_vendor/importlib_metadata/_
_init__.py",
line 196, in load
    return functools.reduce(getattr, attrs, module)			       

AttributeError: module 'setuptools_scm.integration' has no attribute
'infer_version'

ERROR Backend subprocess exited when trying to invoke
get_requires_for_build_wheel
*** Error code 1							       


Stop.									       

make[3]: stopped in /usr/ports/devel/py-setuptools-scm			       

*** Error code 1							       


Stop.									       

make[2]: stopped in /usr/ports/devel/py-dateutil 


Stop.									       

make[1]: stopped in /usr/ports/math/py-pandas				       

*** Error code 1							       


Stop.									       

make: stopped in /usr/ports/databases/py-duckdb

After a rebuild attempt with other packages built it suddenly starts working so
I'm assuming it's a bit of a glitch between dependencies.


Cheers,
Franco