Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/lint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,6 @@ jobs:
- uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0
with:
python-version: "3.12"
- run: pip install ruff==0.15.21
- run: pip install ruff==0.16.1
- run: ruff check .
- run: ruff format --check .
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -28,3 +28,6 @@ htmlcov/

# Local config files (contain secrets)
broker-cfg*.json

# macOS
.DS_Store
4 changes: 4 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,10 @@ All notable changes to `ebus-sdk` are recorded here. Format follows [Keep a Chan

## [Unreleased]

### Changed

- Tooling: the ruff lint selection is now declared explicitly (`select = ["E4", "E7", "E9", "F"]`) rather than inherited from ruff's defaults, and CI moves from ruff 0.15.21 to 0.16.1. Ruff 0.16 widened its default selection (UP, LOG, BLE, I, RUF and more) and began formatting Python code blocks embedded in Markdown, so an unchanged codebase reported 0 or 381 violations depending only on which ruff you happened to run, and four docs files showed phantom format diffs locally that CI never saw. Pinning the set decouples "what this project lints for" from "what version of ruff is installed"; `extend-exclude = ["*.md"]` keeps prose out of both check and format. Verified clean on both 0.16.1 and 0.15.21, with no source changes. Widening the rule set (the 381) is now a deliberate act rather than an upgrade side-effect. ([#39](https://github.com/electrification-bus/python-sdk/issues/39))

## [0.18.1] — 2026-08-07

### Added
Expand Down
11 changes: 11 additions & 0 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -74,8 +74,19 @@ ebus_sdk = ["py.typed"]

[tool.ruff]
line-length = 120
# Ruff 0.16 formats Python code blocks embedded in Markdown. This repo's docs are
# prose that happens to contain illustrative snippets, not a formatting target, so
# keep them out of both check and format.
extend-exclude = ["*.md"]

[tool.ruff.lint]
# Declared explicitly rather than inherited: ruff's default selection changed in
# 0.16 (it began enforcing UP, LOG, BLE, I, RUF and more), which turned an
# unchanged codebase into 381 violations depending only on which ruff you ran.
# Pinning the set here decouples "what this project lints for" from "what version
# of ruff you happen to have". Widening it is a deliberate act, not an upgrade
# side-effect.
select = ["E4", "E7", "E9", "F"]
# E402: module-level imports not at top — triggered by __future__ + docstring pattern
# E721: type comparison with == — intentional in datatype_from_type()
ignore = ["E402", "E721"]
Expand Down