ci: bootstrap ruff in dev tooling and workflows#123
Conversation
Agent-Logs-Url: https://github.com/RussellSB/pytrendy/sessions/a0f6ad6e-cfcf-49e7-a72c-c68555407a45 Co-authored-by: RussellSB <35470600+RussellSB@users.noreply.github.com>
Agent-Logs-Url: https://github.com/RussellSB/pytrendy/sessions/a0f6ad6e-cfcf-49e7-a72c-c68555407a45 Co-authored-by: RussellSB <35470600+RussellSB@users.noreply.github.com>
|
📚 Docs preview deployed! Your docs preview is available at: https://russellsb.github.io/pytrendy/pr-123/
|
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
|
/oc hello |
|
/oc what does this PR do? What is Ruff, and why is it worth it for open source (this is a test to make sure opencode is connected) |
What This PR DoesThis PR bootstraps Ruff into pytrendy's tooling as scaffolding for future module-by-module adoption:
Since it excludes all files, it's a no-op lint step — just getting the plumbing in place. What Is Ruff?Ruff is a Python linter and formatter written in Rust. It replaces multiple tools (flake8, isort, pyupgrade, autopep8, etc.) in a single, extremely fast binary. Why it's worth it for open source:
For a project like pytrendy with CI on every PR, Ruff catches style and correctness issues instantly — before pytest even runs — at negligible CI cost. |

This PR introduces Ruff as a baseline linting tool in project tooling and CI/CD, while intentionally ignoring all files for now. It establishes the scaffolding needed for incremental module-by-module Ruff adoption in follow-up PRs.
Dev dependency + Ruff baseline config
rufftoproject.optional-dependencies.devinpyproject.toml.CI/CD workflow integration
ruff check .to:.github/workflows/test.yaml.github/workflows/release.yamlContributor docs alignment
docs/contributing.mdto include Ruff in the documented.[dev]toolchain.