Skip to content

Replace black/flake8/pylint with ruff#595

Open
korbonits wants to merge 1 commit into
facebookresearch:mainfrom
korbonits:ruff-migration
Open

Replace black/flake8/pylint with ruff#595
korbonits wants to merge 1 commit into
facebookresearch:mainfrom
korbonits:ruff-migration

Conversation

@korbonits

@korbonits korbonits commented Apr 11, 2026

Copy link
Copy Markdown

Summary

  • Drops black==22.6.0, flake8==5.0.4, and pylint==2.15.0 from requirements-dev.txt in favor of a single ruff dependency
  • Migrates [tool.black] (from pyproject.toml) and [flake8] (from setup.cfg) config into [tool.ruff] / [tool.ruff.lint] / [tool.ruff.format] — preserving the existing line-length = 120, ignored codes (E203, E501), and per-file ignores for __init__.py and hubconf.py
  • Removes the now-empty setup.cfg
  • Updates .github/workflows/lint.yaml to use ruff check and ruff format --check instead of three separate tool invocations
  • Applies ruff format to 19 files whose formatting had drifted from black's output; all other source files are unchanged

Motivation

The current dev toolchain uses three separate tools pinned to versions from 2022. ruff replaces all three, runs 10–100x faster, and is configured in one place (pyproject.toml). There is an open dependabot PR (#589) just to bump black — this supersedes it.

ruff check and ruff format --check both pass cleanly on the full codebase after this change.

Test plan

  • pip install -r requirements-dev.txt installs cleanly
  • ruff check dinov2All checks passed!
  • ruff format --check dinov2155 files already formatted
  • CI lint workflow passes

🤖 Generated with Claude Code

- Drop black==22.6.0, flake8==5.0.4, pylint==2.15.0 from requirements-dev.txt
- Add ruff (covers formatting, linting, and miscellaneous checks in one tool)
- Migrate [tool.black] and [flake8] config to [tool.ruff] in pyproject.toml
- Remove now-empty setup.cfg (flake8 config section)
- Update lint.yaml CI to use `ruff check` and `ruff format --check`
- Apply ruff format to 19 files that diverged from black's output

No logic changes; formatting-only diffs in source files.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@meta-cla

meta-cla Bot commented Apr 11, 2026

Copy link
Copy Markdown

Hi @korbonits!

Thank you for your pull request and welcome to our community.

Action Required

In order to merge any pull request (code, docs, etc.), we require contributors to sign our Contributor License Agreement, and we don't seem to have one on file for you.

Process

In order for us to review and merge your suggested changes, please sign at https://code.facebook.com/cla. If you are contributing on behalf of someone else (eg your employer), the individual CLA may not be sufficient and your employer may need to sign the corporate CLA.

Once the CLA is signed, our tooling will perform checks and validations. Afterwards, the pull request will be tagged with CLA signed. The tagging process may take up to 1 hour after signing. Please give it that time before contacting us about it.

If you have received this in error or have any questions, please contact us at cla@meta.com. Thanks!

@meta-cla

meta-cla Bot commented Apr 11, 2026

Copy link
Copy Markdown

Thank you for signing our Contributor License Agreement. We can now accept your code for this (and any) Meta Open Source project. Thanks!

@meta-cla meta-cla Bot added the CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. label Apr 11, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant