diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 4cd7abda..b734000e 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -29,6 +29,13 @@ repos: rev: "v3.8.1" hooks: - id: prettier + - repo: https://github.com/LilSpazJoekp/docstrfmt + rev: v2.0.2 + hooks: + - id: docstrfmt + args: ["-l", "120"] + additional_dependencies: ["sphinx>=9.1"] + exclude: ^docs/index\.rst$ # https://github.com/LilSpazJoekp/docstrfmt/issues/176 - repo: https://github.com/astral-sh/ruff-pre-commit rev: v0.15.4 hooks: diff --git a/.readthedocs.yml b/.readthedocs.yml index 47a4b9e6..a9114b78 100644 --- a/.readthedocs.yml +++ b/.readthedocs.yml @@ -1,11 +1,9 @@ version: 2 build: - os: ubuntu-22.04 - tools: - python: "3.12" + os: ubuntu-lts-latest + tools: {} commands: - - asdf plugin add uv - - asdf install uv latest - - asdf global uv latest - - uv run --no-dev --group docs sphinx-build -T -b html -d docs/_build/doctrees -D language=en docs $READTHEDOCS_OUTPUT/html + - curl -LsSf https://astral.sh/uv/install.sh | sh + - ~/.local/bin/uv tool install tox --with tox-uv -p 3.14 --managed-python + - ~/.local/bin/tox run -e docs -- diff --git a/CHANGELOG.rst b/CHANGELOG.rst index 3677f2e4..165114fa 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -1,237 +1,173 @@ -+++++++++ -Changelog -+++++++++ - -1.4.0 (2026-01-08) -================== - -- Add ``--quiet`` flag - (:pr:`947`) -- Add option to dump PEP 517 metadata with ``--metadata`` - (:pr:`940`, :pr:`943`) -- Support ``UV`` environment variable - (:pr:`971`) -- Remove a workaround for 3.14b1 - (:pr:`960`) -- In 3.14 final release, ``color`` defaults to ``True`` already - (:pr:`962`) -- Pass sp-repo-review - (:pr:`942`) -- In pytest configuration, ``log_level`` is better than ``log_cli_level`` - (:pr:`950`) -- Split up typing and mypy - (:pr:`944`) -- Use ``types-colorama`` - (:pr:`945`) -- In docs, first argument for ``_has_dependency`` is a name - (PR :pr:`970`) -- Fix test failure when ``flit-core`` is installed - (PR :pr:`921`) - - -1.3.0 (2025-08-01) -================== - -- Add ``--config-json`` - (PR :pr:`916`, fixes issue :issue:`900`) -- Drop Python 3.8 - (PR :pr:`891`) -- Test on Python 3.14, colorful help on 3.14+ - (PR :pr:`895`) -- Fix ``ModuleNotFoundError`` when ``pip`` is not installed - (PR :pr:`898`) -- Disable use of ``pip install --python`` for debundled pip - (PR :pr:`861`) -- Don't pass no-wheel to virtualenv if it would warn - (PR :pr:`892`) -- Optimize our tests to run faster - (PR :pr:`871`, :pr:`872`, :pr:`738`) -- Allow running our tests without virtualenv - (PR :pr:`911`) -- Fix issues in our tests - (PR :pr:`824`, :pr:`918`, :pr:`870`, :pr:`915`, :pr:`862`, :pr:`863`, :pr:`899`, :pr:`896`, :pr:`854`) -- Use SPDX identifiers for our license metadata - (PR :pr:`914`) -- Use dependency-groups for our development - (PR :pr:`880`) -- Mention conda and update uv mention in README/docs - (PR :pr:`842`, :pr:`816`, :pr:`917`) - -1.2.2 (2024-09-06) -================== - -- Add editable to ``builder.get_requires_for_build``'s static types - (PR :pr:`764`, fixes issue :issue:`763`) -- Include artifact attestations in our release - (PR :pr:`782`) -- Fix typing compatibility with typed ``pyproject-hooks`` - (PR :pr:`788`) -- Mark more tests with ``network`` - (PR :pr:`808`) -- Add more intersphinx links to docs - (PR :pr:`804`) -- Make ``uv`` optional for tests - (PR :pr:`807` and :pr:`813`) - -1.2.1 (2024-03-28) -================== - -- Avoid error when terminal width is undetectable on Python < 3.11 - (PR :pr:`761`) - -1.2.0 (2024-03-27) -================== - -- Add ``--installer`` option, supporting ``pip`` and ``uv``. Added ``uv`` - extra. - (PR :pr:`751`) -- Improve console output and provide ``-v`` for dependency installation - (PR :pr:`749`) -- Avoid compiling unused bytecode when using ``pip`` - (PR :pr:`752`) -- Dropped support for Python 3.7 - (PR :pr:`743`) - - -1.1.1 (2024-02-29) -================== - -- Fixed invoking outer pip from user site packages - (PR :pr:`746`, fixes issue :issue:`745`) -- Corrected the minimum pip version required to use an outer pip - (PR :pr:`746`, fixes issue :issue:`745`) - - -1.1.0 (2024-02-29) -================== - -- Use external pip if available instead of installing, speeds up environment - setup with virtualenv slightly and venv significantly. - (PR :pr:`736`) -- Stopped injecting ``wheel`` as a build dependency automatically, in the - case of missing ``pyproject.toml`` -- by :user:`webknjaz`. - (PR :pr:`716`) -- Use ``importlib_metadata`` on Python <3.10.2 for bugfixes not present in - those CPython standard libraries (not required when bootstrapping) -- by - :user:`GianlucaFicarelli`. - (PR :pr:`693`, fixes issue :issue:`692`) - - -1.0.3 (2023-09-06) -================== - -- Avoid CPython 3.8.17, 3.9.17, 3.10.12, and 3.11.4 tarfile symlink bug - triggered by adding ``data_filter`` in 1.0.0. +########### + Changelog +########### + +******************** + 1.4.0 (2026-01-08) +******************** + +- Add ``--quiet`` flag (:pr:`947`) +- Add option to dump PEP 517 metadata with ``--metadata`` (:pr:`940`, :pr:`943`) +- Support ``UV`` environment variable (:pr:`971`) +- Remove a workaround for 3.14b1 (:pr:`960`) +- In 3.14 final release, ``color`` defaults to ``True`` already (:pr:`962`) +- Pass sp-repo-review (:pr:`942`) +- In pytest configuration, ``log_level`` is better than ``log_cli_level`` (:pr:`950`) +- Split up typing and mypy (:pr:`944`) +- Use ``types-colorama`` (:pr:`945`) +- In docs, first argument for ``_has_dependency`` is a name (PR :pr:`970`) +- Fix test failure when ``flit-core`` is installed (PR :pr:`921`) + +******************** + 1.3.0 (2025-08-01) +******************** + +- Add ``--config-json`` (PR :pr:`916`, fixes issue :issue:`900`) +- Drop Python 3.8 (PR :pr:`891`) +- Test on Python 3.14, colorful help on 3.14+ (PR :pr:`895`) +- Fix ``ModuleNotFoundError`` when ``pip`` is not installed (PR :pr:`898`) +- Disable use of ``pip install --python`` for debundled pip (PR :pr:`861`) +- Don't pass no-wheel to virtualenv if it would warn (PR :pr:`892`) +- Optimize our tests to run faster (PR :pr:`871`, :pr:`872`, :pr:`738`) +- Allow running our tests without virtualenv (PR :pr:`911`) +- Fix issues in our tests (PR :pr:`824`, :pr:`918`, :pr:`870`, :pr:`915`, :pr:`862`, :pr:`863`, :pr:`899`, :pr:`896`, + :pr:`854`) +- Use SPDX identifiers for our license metadata (PR :pr:`914`) +- Use dependency-groups for our development (PR :pr:`880`) +- Mention conda and update uv mention in README/docs (PR :pr:`842`, :pr:`816`, :pr:`917`) + +******************** + 1.2.2 (2024-09-06) +******************** + +- Add editable to ``builder.get_requires_for_build``'s static types (PR :pr:`764`, fixes issue :issue:`763`) +- Include artifact attestations in our release (PR :pr:`782`) +- Fix typing compatibility with typed ``pyproject-hooks`` (PR :pr:`788`) +- Mark more tests with ``network`` (PR :pr:`808`) +- Add more intersphinx links to docs (PR :pr:`804`) +- Make ``uv`` optional for tests (PR :pr:`807` and :pr:`813`) + +******************** + 1.2.1 (2024-03-28) +******************** + +- Avoid error when terminal width is undetectable on Python < 3.11 (PR :pr:`761`) + +******************** + 1.2.0 (2024-03-27) +******************** + +- Add ``--installer`` option, supporting ``pip`` and ``uv``. Added ``uv`` extra. (PR :pr:`751`) +- Improve console output and provide ``-v`` for dependency installation (PR :pr:`749`) +- Avoid compiling unused bytecode when using ``pip`` (PR :pr:`752`) +- Dropped support for Python 3.7 (PR :pr:`743`) + +******************** + 1.1.1 (2024-02-29) +******************** + +- Fixed invoking outer pip from user site packages (PR :pr:`746`, fixes issue :issue:`745`) +- Corrected the minimum pip version required to use an outer pip (PR :pr:`746`, fixes issue :issue:`745`) + +******************** + 1.1.0 (2024-02-29) +******************** + +- Use external pip if available instead of installing, speeds up environment setup with virtualenv slightly and venv + significantly. (PR :pr:`736`) +- Stopped injecting ``wheel`` as a build dependency automatically, in the case of missing ``pyproject.toml`` -- by + :user:`webknjaz`. (PR :pr:`716`) +- Use ``importlib_metadata`` on Python <3.10.2 for bugfixes not present in those CPython standard libraries (not + required when bootstrapping) -- by :user:`GianlucaFicarelli`. (PR :pr:`693`, fixes issue :issue:`692`) + +******************** + 1.0.3 (2023-09-06) +******************** + +- Avoid CPython 3.8.17, 3.9.17, 3.10.12, and 3.11.4 tarfile symlink bug triggered by adding ``data_filter`` in 1.0.0. (PR :pr:`675`, fixes issue :issue:`674`) - -1.0.0 (2023-09-01) -================== - -- Removed the ``toml`` library fallback; ``toml`` can no longer be used - as a substitute for ``tomli`` - (PR :pr:`567`) -- Added ``runner`` parameter to ``util.project_wheel_metadata`` - (PR :pr:`566`, fixes issue :issue:`553`) -- Modified ``ProjectBuilder`` constructor signature, added alternative - ``ProjectBuilder.from_env`` constructor, redefined ``env.IsolatedEnv`` - interface, and exposed ``env.DefaultIsolatedEnv``, replacing - ``env.IsolatedEnvBuilder``. The aim has been to shift responsibility for - modifying the environment from the project builder to the ``IsolatedEnv`` - entirely and to ensure that the builder will be initialised from an - ``IsolatedEnv`` in a consistent manner. Mutating the project builder is no - longer supported. - (PR :pr:`537`) -- ``virtualenv`` is no longer imported when using ``-n``, for faster builds - (PR :pr:`636`, fixes issue :issue:`510`) -- The SDist now contains the repository contents, including tests. Flit-core - 3.8+ required. - (PR :pr:`657`, :pr:`661`, fixes issue :issue:`656`) -- The minimum version of ``importlib-metadata`` has been increased to 4.6 and - Python 3.10 due to a bug in the standard library version with URL - requirements in extras. This is still not required for 3.8 when bootstrapping - (as long as you don't have URL requirements in extras). - (PR :pr:`631`, fixes issue :issue:`630`) -- Docs now built with Sphinx 7 - (PR :pr:`660`) -- Tests now contain a ``network`` marker - (PR :pr:`649`, fixes issue :issue:`648`) -- Config-settings are now passed to ``get_requires*`` hooks, fixing a long - standing bug. If this affects your setuptools build, you can use - ``-C--build-option= -C--build-option=