Changelog¶

To install the unreleased gp-libs version, see developmental releases.

pip:

$ pip install --user --upgrade --pre gp-libs

pipx:

$ pipx install --suffix=@next 'gp-libs' --pip-args '\--pre' --force

uv:

$ uv add gp-libs --prerelease allow

uvx:

$ uvx --from 'gp-libs' --prerelease allow gp-libs

gp-libs 0.0.18 (unreleased)¶

Development¶

  • Migrate from Make to just for task running (#60)

    Replaces Makefile and docs/Makefile with justfile and docs/justfile using just 1.45.0. Recipes are organized with [group] attributes for improved discoverability via just --list.

Documentation¶

  • Migrate docs deployment to AWS OIDC authentication and AWS CLI

gp-libs 0.0.17 (2025-12-07)¶

CI¶

  • Migrate to PyPI Trusted Publisher (#57)

gp-libs 0.0.16 (2025-11-25)¶

Features¶

pytest_doctest_docutils¶

  • Add _unblock_doctest() helper for programmatic re-enabling of built-in doctest plugin (#56)

    Uses the public pluginmanager.unblock() API introduced in pytest 8.1.0, with graceful fallback for older versions.

Bug fixes¶

pytest_doctest_docutils¶

  • Autouse fixtures from conftest.py are now properly discovered for doctest files (#56)

    Backported from pytest commit 9cd14b4ff (2024-02-06).

doctest_docutils¶

  • Doctest directive comments with leading whitespace (e.g.,   # doctest: +SKIP) are now properly matched (#56)

    Backported from Sphinx commit ad0c343d3 (2025-01-04).

Development¶

  • CI: Add pytest 9.x to test matrix, with pytest 7.x/8.x compatibility testing (#56)

gp-libs 0.0.15 (2025-11-01)¶

Breaking changes¶

  • Drop Python 3.9 (#54)

    The minimum version of Python in this and future releases is Python 3.10.

    Python 3.9 reached end-of-life status on October 5th, 2025 (see PEP 596).

Development¶

  • Add Python 3.14 to test matrix (#53)

gp-libs 0.0.14 (2025-10-26)¶

Bug fixes¶

  • Ensure docutils/myst doctest directives auto-register so Arch Linux packaging tests pass without manual setup (#52, fixes #48)

gp-libs 0.0.13 (2025-08-17)¶

Bug fixes¶

  • Type annotation fixes (#49)

gp-libs 0.0.12 (2025-07-12)¶

Bug fixes¶

  • Type annotation and linting fixes (resolves #48)

Deveopment¶

  • Internal package updates to uv, py.test, mypy, ruff, etc.

gp-libs 0.0.11 (2025-02-22)¶

Bug fixes¶

  • Fix for pytest-asyncio compatibility (#46)

Development¶

chore: Implement PEP 563 deferred annotation resolution (#44)¶

For more details on PEP 563, see: https://peps.python.org/pep-0563/

gp-libs 0.0.10 (2024-12-20)¶

Maintenance release: no bug fixes or new features.

Breaking changes (#36)¶

  • Drop Python 3.8

    The minimum version of Python in this and future releases is Python 3.9.

    Python 3.8 reached end-of-life status on October 7th, 2024 (see PEP 569).

Development¶

  • Aggressive automated lint fixes via ruff (#41)

    via ruff v0.8.4, all automated lint fixes, including unsafe and previews were applied for Python 3.9:

    ruff check --select ALL . --fix --unsafe-fixes --preview --show-fixes; ruff format .
    

gp-libs 0.0.9 (2024-11-26)¶

Breaking changes¶

Project and package management: poetry to uv (#39)¶

uv is the new package and project manager for the project, replacing Poetry.

Build system: poetry to hatchling (#39)¶

Build system moved from poetry to hatchling.

gp-libs 0.0.8 (2024-10-19)¶

Breaking changes¶

  • Final Python 3.8 release, as it has reached end-of-life status October 7th, 2024, see PEP-569.

Development¶

Documentation¶

  • Automatically linkify links that were previously only text.

gp-libs 0.0.7 (2024-03-24)¶

Breaking changes¶

Minimum requirements¶

To lift the development burden of supporting legacy APIs, as this package is lightly used, minimum constraints have been pinned:

  • docutils: 0.20.1+

  • myst-parser: 2.0.0+

If you have even passing interested in supporting legacy versions, file an issue on the tracker.

Development¶

gp-libs 0.0.6post0 (2024-02-01)¶

Packaging¶

  • Relax pytest version constraint from 8+ to 7+ (#30)

gp-libs 0.0.6 (2024-02-01)¶

Breaking change¶

  • Support pytest >8 (#29)

    • Update doctest pytest plugin for pytest 8.

Development¶

  • ruff 0.2.0

gp-libs 0.0.5 (2023-12-03)¶

Maintenance release: no bug fixes or new features.

CI¶

  • Move CodeQL from advanced configuration file to GitHub’s default

Development¶

  • ci: Add pydocstyle rule to ruff (#28)

Documentation¶

  • Add docstrings to functions, methods, classes, and packages (#28)

gp-libs 0.0.4 (2023-11-19)¶

Development¶

Packaging¶

  • Add Python 3.12 to trove classifiers

  • Packaging (poetry): Fix development dependencies

    Per Poetry’s docs on managing dependencies and poetry check, we had it wrong: Instead of using extras, we should create these:

    [tool.poetry.group.group-name.dependencies]
    dev-dependency = "1.0.0"
    

    Which we now do.

gp-libs 0.0.3 (2023-10-14)¶

Fixes¶

doctest_docutils¶

pytest_doctest_docutils¶

  • pytest_collect_file: Typing fix (#25)

Development¶

Packaging¶

  • Move pytest configuration to pyproject.toml (#24)

gp-libs 0.0.2 (2023-09-09)¶

Breaking changes¶

  • Python 3.7 Dropped (#23)

gp-libs 0.0.1 (2023-09-09)¶

  • Add your latest changes from PRs here

New features¶

  • linkify_issues: Automatically link

    conf.py:

    issue_url_tpl = 'https://github.com/git-pull/gp-libs/issues/{issue_id}'
    
  • doctest_docutils: :mod:doctest w/ docutils support (and markdown)

  • doctest_docutils: Support for sphinx-inline-tab’s tab directive was added in v0.0.1a17 (#18)

    ````{tab} example tab
    
    ```python
    >>> 4 + 4
    8
    ```
    
    ````
    
    ````{tab} example second
    
    ```python
    >>> 4 + 2
    6
    ```
    
    ````
    

Removed features¶

Documentation¶

  • Initial docs, packaging, etc.

Tests¶

pytest-doctest-docutils:

Infrastructure¶

  • Ruff (additional linting rules): Added in #20 and #21

  • CI: docutils testgrid (#16)

  • CI speedups (#13)

    • Split out release to separate job so the PyPI Upload docker image isn’t pulled on normal runs

    • Clean up CodeQL

  • Poetry: Bump 1.1.x to 1.6.x