roll: pigweed python: Add ruff linting

- Add GN Python static analysis tool support for
  ruff. E.g. python.lint.ruff. This is ommited from the default build
  until rules are stablized.
- Create a .ruff.toml, add to all Python targets.
- Add a GN arg to control which Python static analysis tools are run
  by default: pw_build_PYTHON_STATIC_ANALYSIS_TOOLS.
- Set pw_build_PYTHON_STATIC_ANALYSIS_TOOLS to just "mypy" and
  "pylint".

Original-Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/159050
Original-Revision: ebf33f56b6b693aa8e705829fea2c97b0b63c743

Rolled-Repo: https://pigweed.googlesource.com/pigweed/pigweed
Rolled-Commits: d44807b36fed50..ebf33f56b6b693
Roller-URL: https://ci.chromium.org/b/8734424006796628897
GitWatcher: ignore
CQ-Do-Not-Cancel-Tryjobs: true
Change-Id: I18d4ab9530e99ef324516c86107b14ae6e2fb838
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/showcase/sense/+/241555
Commit-Queue: Pigweed Roller <pigweed-roller@pigweed-service-accounts.iam.gserviceaccount.com>
Lint: Lint 🤖 <android-build-ayeaye@system.gserviceaccount.com>
Bot-Commit: Pigweed Roller <pigweed-roller@pigweed-service-accounts.iam.gserviceaccount.com>
1 file changed
tree: b13c2df89a56155fd02fbf1b7029244abc861d31
  1. .github/
  2. .vscode/
  3. apps/
  4. device/
  5. modules/
  6. system/
  7. targets/
  8. tools/
  9. web_app/
  10. .bazelignore
  11. .bazelrc
  12. .bazelversion
  13. .buildifier.json
  14. .clang-format
  15. .clangd.shared
  16. .gitignore
  17. .pw_console.yaml
  18. AUTHORS
  19. BUILD.bazel
  20. CONTRIBUTING.md
  21. LICENSE
  22. MODULE.bazel
  23. MODULE.bazel.lock
  24. OWNERS
  25. pigweed.json
  26. README.md
README.md

Sense

git clone https://pigweed.googlesource.com/pigweed/showcase/sense

Welcome to Pigweed Sense, a tour of key Pigweed components experienced through an imagined air quality product.

Please visit Sense: An interactive tour through Pigweed to get started.