Skip to content

Crash: ValueError('%r is not callable' % (type_func,)) with 1.8.0 #242

Closed
@paulschreiber

Description

@paulschreiber

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

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions