Skip to content

Package updates and copyright year#55

Merged
SeanTConrad merged 6 commits into
mainfrom
cleanup
Feb 20, 2026
Merged

Package updates and copyright year#55
SeanTConrad merged 6 commits into
mainfrom
cleanup

Conversation

@SeanTConrad
Copy link
Copy Markdown
Collaborator

@SeanTConrad SeanTConrad commented Feb 19, 2026

Summary by Sourcery

Update packaging configuration and minimum supported Python version while modernizing dependencies and tooling targets.

Enhancements:

  • Specify runtime dependencies directly in pyproject instead of using a requirements.txt-based hatch metadata hook.
  • Raise the minimum supported Python version to 3.11 and update Black target versions to match newer Python releases.
  • Refresh development dependency versions for formatting and testing tools.

Build:

  • Simplify build requirements by removing the hatch-requirements-txt plugin and associated configuration, relying solely on hatchling.

@sourcery-ai
Copy link
Copy Markdown

sourcery-ai Bot commented Feb 19, 2026

Reviewer's guide (collapsed on small PRs)

Reviewer's Guide

Updates project metadata and tooling to target Python 3.11+ only, switches from dynamic to explicit runtime dependencies, refreshes dev/test tooling versions, removes Hatch requirements-txt integration and legacy requirements.txt, and refreshes license files (including copyright year).

Flow diagram for updated dependency management and Python version support

flowchart LR
    subgraph Before
        A_pyproject[pyproject.toml
        - dynamic dependencies
        - requires-python >=3.9
        - hatch-requirements-txt backend dep]
        B_requirements[requirements.txt
        - runtime dependencies]
        C_hatch_hook[hatch.metadata.hooks.requirements_txt
        - reads requirements.txt]
        D_build_backend_before[hatchling.build]

        A_pyproject --> C_hatch_hook
        B_requirements --> C_hatch_hook
        C_hatch_hook --> D_build_backend_before
    end

    subgraph After
        E_pyproject[pyproject.toml
        - explicit dependencies list
        - requires-python >=3.11
        - no hatch-requirements-txt]
        F_build_backend_after[hatchling.build]

        E_pyproject --> F_build_backend_after
    end

    Before --> After
Loading

File-Level Changes

Change Details Files
Raise minimum supported Python version and align tooling targets.
  • Update project.requires-python from ">=3.9" to ">=3.11" in pyproject metadata.
  • Adjust Black configuration target-version list from Python 3.9–3.11 to Python 3.11–3.13 to match supported runtimes.
pyproject.toml
Switch from dynamic dependency resolution to explicit dependency list and modernize dev dependencies.
  • Replace dynamic dependency field with an explicit [project.dependencies] list including chardet, httpx[http2], pygments, pygments-tsx, pygount, and cachehash with pinned minimum versions.
  • Update [project.optional-dependencies].dev to newer versions of black, pytest, and pytest-cov with explicit minimum versions.
pyproject.toml
Remove Hatch requirements-txt plumbing and legacy requirements file in favor of PEP 621 configuration only.
  • Drop hatch-requirements-txt from build-system.requires.
  • Remove [tool.hatch.metadata.hooks.requirements_txt] configuration block.
  • Delete requirements.txt from the repository as it is no longer used by the build metadata.
pyproject.toml
requirements.txt
Refresh license files, likely including updated copyright year or text formatting.
  • Modify BSD_LICENSE contents (e.g., year or holder, or formatting).
  • Modify LICENSE contents to reflect current licensing information.
BSD_LICENSE
LICENSE

Tips and commands

Interacting with Sourcery

  • Trigger a new review: Comment @sourcery-ai review on the pull request.
  • Continue discussions: Reply directly to Sourcery's review comments.
  • Generate a GitHub issue from a review comment: Ask Sourcery to create an
    issue from a review comment by replying to it. You can also reply to a
    review comment with @sourcery-ai issue to create an issue from it.
  • Generate a pull request title: Write @sourcery-ai anywhere in the pull
    request title to generate a title at any time. You can also comment
    @sourcery-ai title on the pull request to (re-)generate the title at any time.
  • Generate a pull request summary: Write @sourcery-ai summary anywhere in
    the pull request body to generate a PR summary at any time exactly where you
    want it. You can also comment @sourcery-ai summary on the pull request to
    (re-)generate the summary at any time.
  • Generate reviewer's guide: Comment @sourcery-ai guide on the pull
    request to (re-)generate the reviewer's guide at any time.
  • Resolve all Sourcery comments: Comment @sourcery-ai resolve on the
    pull request to resolve all Sourcery comments. Useful if you've already
    addressed all the comments and don't want to see them anymore.
  • Dismiss all Sourcery reviews: Comment @sourcery-ai dismiss on the pull
    request to dismiss all existing Sourcery reviews. Especially useful if you
    want to start fresh with a new review - don't forget to comment
    @sourcery-ai review to trigger a new review!

Customizing Your Experience

Access your dashboard to:

  • Enable or disable review features such as the Sourcery-generated pull request
    summary, the reviewer's guide, and others.
  • Change the review language.
  • Add, remove or edit custom review instructions.
  • Adjust other review settings.

Getting Help

Copy link
Copy Markdown

@sourcery-ai sourcery-ai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hey - I've reviewed your changes and they look great!


Sourcery is free for open source - if you like our reviews please consider sharing them ✨
Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.

@SeanTConrad SeanTConrad merged commit dec1ae7 into main Feb 20, 2026
7 checks passed
@SeanTConrad SeanTConrad deleted the cleanup branch February 20, 2026 00:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant