Skip to content

docs: Sync CONTRIBUTING.md with recent tooling changes.#404

Merged
nedseb merged 1 commit intomainfrom
docs/contributing-sync
Apr 16, 2026
Merged

docs: Sync CONTRIBUTING.md with recent tooling changes.#404
nedseb merged 1 commit intomainfrom
docs/contributing-sync

Conversation

@nedseb
Copy link
Copy Markdown
Contributor

@nedseb nedseb commented Apr 16, 2026

Summary

Bring the contributor guide in sync with all tooling changes since v0.16.

Changes

Section What changed
Active ruff rules Added S110 (silent try/except:pass)
New: Explicit preview rules Listed all 12 pycodestyle preview rules (E203–E305, W391) with descriptions
MicroPython exceptions Added B905 (zip(strict=)) and ISC003 (f-string implicit concat)
CI checks table Added frozen manifest check row
Releasing Mention both MicroPython and DAPLink firmwares attached to releases
New: Line endings .gitattributes LF enforcement, git add --renormalize . step for Windows + WSL clones
Dev container Note that Pylance config moved to pyproject.toml [tool.pyright]

Test plan

  • Read through the full document for consistency
  • All referenced rules match pyproject.toml

Bring the contributor guide in sync with changes landed since v0.16:

- Add S110 to the active rules table (silent try/except:pass).
- Add explicit preview rules section listing all 12 pycodestyle rules
  enabled in #400 and #402 (E203, E225, E231, E261, E262, E265, E275,
  E301, E302, E303, E305, W391).
- Add B905 and ISC003 to the MicroPython exceptions table.
- Add frozen manifest check to the CI table.
- Mention both MicroPython and DAPLink firmwares in the release section.
- Add line endings subsection explaining .gitattributes LF enforcement
  and the renormalize step for existing Windows + WSL clones.
- Note that Pylance config now lives in pyproject.toml [tool.pyright].
Copilot AI review requested due to automatic review settings April 16, 2026 20:40
@nedseb nedseb merged commit a3ddb36 into main Apr 16, 2026
11 checks passed
@nedseb nedseb deleted the docs/contributing-sync branch April 16, 2026 20:41
@nedseb nedseb added the documentation Improvements or additions to documentation label Apr 16, 2026
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Updates the contributor documentation to reflect the current repo tooling configuration (ruff, CI checks, releases, line ending normalization, and dev container/Pylance setup) since v0.16.

Changes:

  • Documented the newly enabled ruff rule S110 and listed explicitly enabled pycodestyle preview rules.
  • Expanded MicroPython-specific ruff ignores (B905, ISC003) and updated the CI checks table (incl. frozen manifest verification).
  • Updated release docs to mention attaching both MicroPython and DAPLink firmwares, and added guidance on LF line-ending enforcement via .gitattributes.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread CONTRIBUTING.md

* **zsh + oh-my-zsh** as default shell with persistent shell history
* **Pylance** configured with MicroPython STM32 stubs (no false `import machine` errors)
* **Pylance** configured with MicroPython STM32 stubs via `[tool.pyright]` in `pyproject.toml` (no false `import machine` errors)
Copy link

Copilot AI Apr 16, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This bullet says Pylance is configured via [tool.pyright] in pyproject.toml, but the repo also still contains a top-level pyrightconfig.json with overlapping settings. Since pyrightconfig.json is commonly picked up by Pyright/Pylance, this is ambiguous—please clarify which config file is authoritative (and whether pyrightconfig.json is legacy) to avoid contributors editing the wrong one.

Suggested change
* **Pylance** configured with MicroPython STM32 stubs via `[tool.pyright]` in `pyproject.toml` (no false `import machine` errors)
* **Pylance** configured with MicroPython STM32 stubs via `[tool.pyright]` in `pyproject.toml` (no false `import machine` errors). `pyproject.toml` is the authoritative Pyright/Pylance configuration; if a top-level `pyrightconfig.json` is present, treat it as legacy compatibility and update `pyproject.toml` instead.

Copilot uses AI. Check for mistakes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants