Closed
Description
Description
After updating from 1.7.0 to 1.80, tests fail to run when pytest-profiling
is installed (even if it's not used for a test run).
Here's the stack trace:
$ pytest soil_id
Traceback (most recent call last):
File "/Users/paul/.dev/techmatters/soil-id-algorithm/env/bin/pytest", line 8, in <module>
sys.exit(console_main())
~~~~~~~~~~~~^^
File "/Users/paul/.dev/techmatters/soil-id-algorithm/env/lib/python3.13/site-packages/_pytest/config/__init__.py", line 201, in console_main
code = main()
File "/Users/paul/.dev/techmatters/soil-id-algorithm/env/lib/python3.13/site-packages/_pytest/config/__init__.py", line 156, in main
config = _prepareconfig(args, plugins)
File "/Users/paul/.dev/techmatters/soil-id-algorithm/env/lib/python3.13/site-packages/_pytest/config/__init__.py", line 341, in _prepareconfig
config = pluginmanager.hook.pytest_cmdline_parse(
pluginmanager=pluginmanager, args=args
)
File "/Users/paul/.dev/techmatters/soil-id-algorithm/env/lib/python3.13/site-packages/pluggy/_hooks.py", line 513, in __call__
return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult)
~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/paul/.dev/techmatters/soil-id-algorithm/env/lib/python3.13/site-packages/pluggy/_manager.py", line 120, in _hookexec
return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/paul/.dev/techmatters/soil-id-algorithm/env/lib/python3.13/site-packages/pluggy/_callers.py", line 139, in _multicall
raise exception.with_traceback(exception.__traceback__)
File "/Users/paul/.dev/techmatters/soil-id-algorithm/env/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall
teardown.throw(exception) # type: ignore[union-attr]
~~~~~~~~~~~~~~^^^^^^^^^^^
File "/Users/paul/.dev/techmatters/soil-id-algorithm/env/lib/python3.13/site-packages/_pytest/helpconfig.py", line 105, in pytest_cmdline_parse
config = yield
^^^^^
File "/Users/paul/.dev/techmatters/soil-id-algorithm/env/lib/python3.13/site-packages/pluggy/_callers.py", line 103, in _multicall
res = hook_impl.function(*args)
File "/Users/paul/.dev/techmatters/soil-id-algorithm/env/lib/python3.13/site-packages/_pytest/config/__init__.py", line 1140, in pytest_cmdline_parse
self.parse(args)
~~~~~~~~~~^^^^^^
File "/Users/paul/.dev/techmatters/soil-id-algorithm/env/lib/python3.13/site-packages/_pytest/config/__init__.py", line 1494, in parse
self._preparse(args, addopts=addopts)
~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/paul/.dev/techmatters/soil-id-algorithm/env/lib/python3.13/site-packages/_pytest/config/__init__.py", line 1384, in _preparse
self.known_args_namespace = self._parser.parse_known_args(
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
args, namespace=copy.copy(self.known_args_namespace)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "/Users/paul/.dev/techmatters/soil-id-algorithm/env/lib/python3.13/site-packages/_pytest/config/argparsing.py", line 158, in parse_known_args
return self.parse_known_and_unknown_args(args, namespace=namespace)[0]
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/paul/.dev/techmatters/soil-id-algorithm/env/lib/python3.13/site-packages/_pytest/config/argparsing.py", line 172, in parse_known_and_unknown_args
optparser = self._getparser()
File "/Users/paul/.dev/techmatters/soil-id-algorithm/env/lib/python3.13/site-packages/_pytest/config/argparsing.py", line 131, in _getparser
arggroup.add_argument(*n, **a)
~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^
File "/opt/homebrew/Cellar/[email protected]/3.13.0_1/Frameworks/Python.framework/Versions/3.13/lib/python3.13/argparse.py", line 1464, in add_argument
raise ValueError('%r is not callable' % (type_func,))
ValueError: 'int' is not callable
You can see the same error on Linux:
https://github.com/techmatters/soil-id-algorithm/actions/runs/11389952437/job/31690457724?pr=197
Configuration
macOS 15.0.1
Python 3.13.0 (via Homebrew)
or
Ubuntu 24.04
Python 3.12.4
Metadata
Metadata
Assignees
Labels
No labels