# Buildsheet autogenerated by ravenadm tool -- Do not edit. NAMEBASE= python-setuptools-scm VERSION= 8.0.4 KEYWORDS= python VARIANTS= v11 v12 SDESC[v11]= Package to manage versions by scm tags (3.11) SDESC[v12]= Package to manage versions by scm tags (3.12) HOMEPAGE= none CONTACT= Python_Automaton[python@ironwolf.systems] DOWNLOAD_GROUPS= main SITES[main]= PYPIWHL/0e/a3/b9a8b0adfe672bf0df5901707aa929d30a97ee390ba651910186776746d2 DISTFILE[1]= setuptools_scm-8.0.4-py3-none-any.whl:main DF_INDEX= 1 SPKGS[v11]= single SPKGS[v12]= single OPTIONS_AVAILABLE= PY311 PY312 OPTIONS_STANDARD= none VOPTS[v11]= PY311=ON PY312=OFF VOPTS[v12]= PY311=OFF PY312=ON DISTNAME= setuptools_scm-8.0.4.dist-info GENERATED= yes [PY311].RUN_DEPENDS_ON= python-packaging:single:v11 python-setuptools:single:v11 python-typing-extensions:single:v11 [PY311].USES_ON= python:v11,wheel [PY312].RUN_DEPENDS_ON= python-packaging:single:v12 python-setuptools:single:v12 python-typing-extensions:single:v12 [PY312].USES_ON= python:v12,wheel [FILE:2955:descriptions/desc.single] # setuptools_scm [github ci] [Documentation Status] [![tidelift]](https://tidelift.com/subscription/pkg/pypi-setuptools-scm?utm_source=pypi-setuptools-scm&utm_medium=readme) ## about [setuptools-scm] extracts Python package versions from `git` or `hg` metadata instead of declaring them as the version argument or in an SCM managed file. Additionally, [setuptools-scm] provides setuptools with a list of files that are managed by the SCM
(i.e. it automatically adds **all of** the SCM-managed files to the sdist).
Unwanted files must be excluded via `MANIFEST.in`. ## `pyproject.toml` usage The preferred way to configure [setuptools-scm] is to author settings in a `tool.setuptools_scm` section of `pyproject.toml`. This feature requires setuptools 60 or later. First, ensure that [setuptools-scm] is present during the project's build step by specifying it as one of the build requirements. ```toml [build-system] requires = [ "setuptools>=60", "setuptools-scm>=8.0"] ``` That will be sufficient to require [setuptools-scm] for projects that support [PEP 518] like [pip] and [build]. [pip]: https://pypi.org/project/pip [build]: https://pypi.org/project/build [PEP 518]: https://peps.python.org/pep-0518/ To enable version inference, you need to set the version dynamically in the `project` section of `pyproject.toml`: ```toml title="pyproject.toml" [project] # version = "0.0.1" # Remove any existing version parameter. dynamic = ["version"] [tool.setuptools_scm] ``` Additionally, a version file can be written by specifying: ```toml title="pyproject.toml" [tool.setuptools_scm] version_file = "pkg/_version.py" ``` Where `pkg` is the name of your package. If you need to confirm which version string is being generated or debug the configuration, you can install [setuptools-scm] directly in your working environment and run: ```console $ python -m setuptools_scm # To explore other options, try: $ python -m setuptools_scm --help ``` For further configuration see the [documentation]. [setuptools-scm]: https://github.com/pypa/setuptools_scm [documentation]: https://setuptools-scm.readthedocs.io/ ## Interaction with Enterprise Distributions Some enterprise distributions like RHEL7 ship rather old setuptools versions. In those cases its typically possible to build by using an sdist against `setuptools_scm<2.0`. As those old setuptools versions lack sensible types for versions, modern [setuptools-scm] is unable to support them sensibly. It's strongly recommended to build a wheel artifact using modern Python and setuptools, then installing the artifact instead of trying to run against old setuptools versions. ## Code of Conduct Everyone interacting in the [setuptools-scm] project's codebases, issue trackers, chat rooms, and mailing lists is expected to follow the [PSF Code of Conduct]. [PSF Code of Conduct]: https://github.com/pypa/.github/blob/main/CODE_OF_CONDUCT.md ## Security Contact [FILE:116:distinfo] b47844cd2a84b83b3187a5782c71128c28b4c94cad8bfb871da2784a5cb54c4f 42137 setuptools_scm-8.0.4-py3-none-any.whl