MetOffice / MetOffice/ANTS

Replace existing linting tools with ruff

Open
#114 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

✨ enhancement 🛠️ infrastructure
Dominant language
Python
Stars
7
Forks
10
Avg merge
1d 19h
Merged PRs (30d)
5

Description

# ✨ Feature Request

We should switch to using ruff as our only linting tool, replacing black, flake8 and isort.

## Requirements

- [ ] Integrate into CI (GitHub actions, pre-commit)
- [ ] Integrate into rose stem / test workflow
- [ ] Configure via cental location: `pyproject.toml`
- [ ] Align where possible with existing ANTS patterns (e.g. use of `noqa`, any existing configuration)
- [ ] Align where possible with UG-ANTS

## Context

We currently use black, flake8 and isort as linting and formatting tools. These can be replaced by a single tool: ruff.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by locating the GitHub Actions, pre-commit, rose stem/test workflow, and pyproject.toml configuration referenced in the requirements. Compare the existing ANTS and UG-ANTS linting patterns, then verify that CI and the test workflow use ruff as the only linting tool and that configuration is centralized in pyproject.toml.

Written by the indexing model from the issue text.

Assessment

Tech stack
github-actions, python
Domain
ci-cd, tooling
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.