123456789101112131415161718192021222324252627282930313233343536373839404142 |
- """For backward compatibility, expose main functions from
- ``setuptools.config.setupcfg``
- """
- from functools import wraps
- from typing import Callable, TypeVar, cast
- from ..warnings import SetuptoolsDeprecationWarning
- from . import setupcfg
- Fn = TypeVar("Fn", bound=Callable)
- __all__ = ('parse_configuration', 'read_configuration')
- def _deprecation_notice(fn: Fn) -> Fn:
- @wraps(fn)
- def _wrapper(*args, **kwargs):
- SetuptoolsDeprecationWarning.emit(
- "Deprecated API usage.",
- f"""
- As setuptools moves its configuration towards `pyproject.toml`,
- `{__name__}.{fn.__name__}` became deprecated.
- For the time being, you can use the `{setupcfg.__name__}` module
- to access a backward compatible API, but this module is provisional
- and might be removed in the future.
- To read project metadata, consider using
- ``build.util.project_wheel_metadata`` (https://pypi.org/project/build/).
- For simple scenarios, you can also try parsing the file directly
- with the help of ``configparser``.
- """,
- # due_date not defined yet, because the community still heavily relies on it
- # Warning introduced in 24 Mar 2022
- )
- return fn(*args, **kwargs)
- return cast(Fn, _wrapper)
- read_configuration = _deprecation_notice(setupcfg.read_configuration)
- parse_configuration = _deprecation_notice(setupcfg.parse_configuration)
|