Skip to content

gh-1264: Reuse nox environments to speed up linting workflow - #1265

Merged
paddyroddy merged 17 commits into
mainfrom
paddy/issue-1264
Oct 16, 2026
Merged

paddyroddy merged 17 commits into
mainfrom
paddy/issue-1264

Conversation

@paddyroddy

@paddyroddy paddyroddy commented Oct 15, 2026 •

Copy link
Copy Markdown
Member

Description

I noticed when doing #1254 that we were getting very slow in the linting workflow. This PR splits up some of the work.

  • Caching prek
  • By using --no-sync we make sure we actually reuse the environments
  • noxfile.py is now behaving as it should have been
    * Removed benchmarks from type checking

Linting has gone from timing out, to 7 minutes, to less than a minute.

Closes: #1264

Checks

  • Is your code passing linting?
  • Is your code passing tests?
  • Have you added additional tests (if required)?
  • Have you modified/extended the documentation (if required)?
  • Have you added a one-liner changelog entry above (if required)?

@paddyroddy paddyroddy self-assigned this Oct 15, 2026
@paddyroddy paddyroddy added enhancement New feature or request infrastructure Project infrastructure: dev tools, packaging, etc. testing Work is related to testing labels Oct 15, 2026

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🟢 Approval recommended

The workflow and session changes are focused, with no unresolved blocking findings.

0 open findings

What changed in this PR

Speeds up GLASS automation by reducing dependency synchronization and caching linting environments.

Changes:

  • Adds prek caching and uses uv run --no-sync across workflows.
  • Makes Nox session Python versions explicit.
  • Narrows the documented contributor dependency installation.
File Description
noxfile.py Defines explicit Python versions for sessions.
CONTRIBUTING.md Updates dependency installation guidance.
.github/​workflows/​test.yaml Skips synchronization and updates backend-test session selection.
.github/​workflows/​run-examples.yaml Skips synchronization when running examples.
.github/​workflows/​regression-test.yaml Skips synchronization for regression tests.
.github/​workflows/​linting.yaml Caches prek environments and enables verbose output.
.github/​workflows/​documentation.yaml Skips synchronization when building documentation.

🧠 Review effort: Balanced


💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

@paddyroddy
paddyroddy requested a review from connoraird October 15, 2026 21:04
Comment thread pyproject.toml Resolved
@paddyroddy

Copy link
Copy Markdown
Member Author

@connoraird I've pushed 862d4b3 to fix linting on main.

@paddyroddy
paddyroddy merged commit b5c6717 into main Oct 16, 2026
17 checks passed
@paddyroddy
paddyroddy deleted the paddy/issue-1264 branch October 16, 2026 16:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request infrastructure Project infrastructure: dev tools, packaging, etc. testing Work is related to testing

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Speed up linting action and sort noxfile

3 participants