Skip to content

Maint#88

Merged
GavinHuttley merged 3 commits into
HuttleyLab:developfrom
GavinHuttley:develop
Mar 23, 2026
Merged

Maint#88
GavinHuttley merged 3 commits into
HuttleyLab:developfrom
GavinHuttley:develop

Conversation

@GavinHuttley
Copy link
Copy Markdown
Collaborator

@GavinHuttley GavinHuttley commented Mar 23, 2026

Summary by Sourcery

Update project metadata, supported Python versions, CI matrices, and documentation assets.

Bug Fixes:

  • Correct a typo in the pytest marker description for image-drawing tests.

Enhancements:

  • Raise the minimum supported Python version to 3.11 and add support up to Python 3.14 in both project metadata and classifiers.
  • Reformat pyproject configuration for consistency and clarity, including optional dependencies and ruff per-file ignores.
  • Update the README logo image URL and document the Chrome dependency for Plotly static image export.

CI:

  • Adjust CI test and release matrices to run against Python 3.11–3.14.

Documentation:

  • Refresh README with a new logo asset and note about Chrome requirements for Plotly image export.

@sourcery-ai
Copy link
Copy Markdown

sourcery-ai Bot commented Mar 23, 2026

Reviewer's Guide

Maintenance update that refreshes supported Python versions, tidies project metadata and optional dependencies, fixes a pytest marker typo, and updates documentation assets and CI workflows to match the new support matrix.

Flow diagram for installation and static image export requirement

flowchart TD
  User["User"] --> Install["Run pip install mutation_motif"]
  Install --> UseCLI["Use mm CLI to create Plotly figures"]
  UseCLI --> NeedStatic["Need static image export"]
  NeedStatic --> ChromeDep["Install Chrome for Plotly static image export"]
Loading

File-Level Changes

Change Details Files
Update project metadata in pyproject.toml to reflect new Python support range and clean up configuration formatting.
  • Change requires-python constraint from >=3.10,<3.14 to >=3.11,<=3.14 and adjust trove classifiers to drop 3.10 and add 3.14
  • Reformat authors, keywords, dependencies, optional test/dev dependencies, and pytest markers into compact, consistently styled TOML arrays
  • Deduplicate and tidy ruff per-file ignores and inline comments for better readability
pyproject.toml
Refresh README assets and installation notes to match current tooling requirements.
  • Update project logo image URL to a GitHub user-attachments asset
  • Add a note that static Plotly image export requires Chrome installation, with a link to Plotly documentation
README.md
Align GitHub Actions CI and release workflows with the updated Python support policy.
  • Adjust release workflow to test Python 3.11–3.14 instead of 3.10–3.13
  • Adjust testing_develop workflow matrix to test 3.11 and 3.14 instead of 3.10 and 3.13 across macOS and Ubuntu
.github/workflows/release.yml
.github/workflows/testing_develop.yml

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 found 1 issue, and left some high level feedback:

  • In pyproject.toml the dependencies list still contains scipy twice; consider removing the duplicate entry to avoid confusion.
  • You’ve set requires-python = ">=3.11,<=3.14" while also adding a 3.14 classifier and CI job; if the intention is simply “3.11+ until the next incompatible release,” using <3.15 instead of <=3.14 may reduce the need for frequent metadata updates.
Prompt for AI Agents
Please address the comments from this code review:

## Overall Comments
- In `pyproject.toml` the `dependencies` list still contains `scipy` twice; consider removing the duplicate entry to avoid confusion.
- You’ve set `requires-python = ">=3.11,<=3.14"` while also adding a 3.14 classifier and CI job; if the intention is simply “3.11+ until the next incompatible release,” using `<3.15` instead of `<=3.14` may reduce the need for frequent metadata updates.

## Individual Comments

### Comment 1
<location path=".github/workflows/testing_develop.yml" line_range="16-19" />
<code_context>
       matrix:
         os: [macos-latest, ubuntu-latest]
-        python-version: ["3.10", "3.13"]
+        python-version: ["3.11", "3.14"]

     steps:
</code_context>
<issue_to_address>
**suggestion (testing):** Consider including all supported Python versions in the develop test matrix.

The metadata and release workflow list support for 3.11–3.14, but this workflow only runs 3.11 and 3.14. Unless there’s a specific reason to omit 3.12 and 3.13, adding them to the matrix would better cover version-specific issues.

```suggestion
    strategy:
      matrix:
        os: [macos-latest, ubuntu-latest]
        python-version: ["3.11", "3.12", "3.13", "3.14"]
```
</issue_to_address>

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.

Comment thread .github/workflows/testing_develop.yml
@GavinHuttley GavinHuttley merged commit d03f214 into HuttleyLab:develop Mar 23, 2026
11 checks passed
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