Skip to content

Commit 288c2b8

Browse files
committed
Update CLAUDE.md with ruff and isort configuration
- Replace black/flake8 references with ruff - Add ruff linting and formatting commands - Update Code Style section with ruff formatter details - Document isort with plone profile configuration - Add Python 3.10+ type hint syntax examples
1 parent 5fbd69d commit 288c2b8

File tree

1 file changed

+22
-9
lines changed

1 file changed

+22
-9
lines changed

CLAUDE.md

Lines changed: 22 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -117,14 +117,20 @@ Key settings:
117117
# Run all pre-commit hooks (using uvx with tox-uv)
118118
uvx --with tox-uv tox -e lint
119119
120-
# Run type checking
121-
mypy src/mxdev
120+
# Run ruff linter (with auto-fix)
121+
uvx ruff check --fix src/mxdev tests
122+
123+
# Run ruff formatter
124+
uvx ruff format src/mxdev tests
122125
123-
# Run flake8
124-
flake8 src/mxdev
126+
# Sort imports with isort
127+
uvx isort src/mxdev tests
128+
129+
# Run type checking
130+
uvx mypy src/mxdev
125131
126-
# Sort imports
127-
isort src/mxdev
132+
# Run all pre-commit hooks manually
133+
uvx pre-commit run --all-files
128134
```
129135

130136
### Testing Multiple Python Versions (using uvx tox with uv)
@@ -401,9 +407,16 @@ myext-package_setting = value
401407

402408
## Code Style
403409

404-
- **Formatting**: Black-compatible (max line length: 120)
405-
- **Import sorting**: isort with `force_alphabetical_sort = true`, `force_single_line = true`
406-
- **Type hints**: Use throughout (Python 3.10+ compatible)
410+
- **Formatting**: Ruff formatter (max line length: 120, target Python 3.10+)
411+
- Configured in [pyproject.toml](pyproject.toml) under `[tool.ruff]`
412+
- Rules: E, W, F, UP, D (with selective ignores for docstrings)
413+
- Automatically enforced via pre-commit hooks
414+
- **Import sorting**: isort with plone profile, `force_alphabetical_sort = true`, `force_single_line = true`
415+
- Configured in [pyproject.toml](pyproject.toml) under `[tool.isort]`
416+
- Runs after ruff in pre-commit pipeline
417+
- **Type hints**: Use throughout (Python 3.10+ syntax)
418+
- Use `X | Y` instead of `Union[X, Y]`
419+
- Use `list[T]`, `dict[K, V]` instead of `List[T]`, `Dict[K, V]`
407420
- **Path handling**: Prefer `pathlib.Path` over `os.path` for path operations
408421
- Use `pathlib.Path().as_posix()` for cross-platform path comparison
409422
- Use `/` operator for path joining: `Path("dir") / "file.txt"`

0 commit comments

Comments
 (0)