From 9fde73f3dc34a2f3007a7a9b3ca1633adc511494 Mon Sep 17 00:00:00 2001 From: dherrada Date: Thu, 11 Nov 2021 15:33:12 -0500 Subject: [PATCH] Pylint and RTD update patch, and other fixes --- .github/workflows/build.yml | 4 ++-- .pre-commit-config.yaml | 26 ++++++++++++++------- .pylintrc | 2 +- adafruit_led_animation/animation/sparkle.py | 4 +++- examples/led_animation_group.py | 2 +- 5 files changed, 24 insertions(+), 14 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index c4c975d..ca35544 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -42,9 +42,9 @@ jobs: # (e.g. - apt-get: gettext, etc; pip: circuitpython-build-tools, requirements.txt; etc.) run: | source actions-ci/install.sh - - name: Pip install pylint, Sphinx, pre-commit + - name: Pip install Sphinx, pre-commit run: | - pip install --force-reinstall pylint Sphinx sphinx-rtd-theme pre-commit + pip install --force-reinstall Sphinx sphinx-rtd-theme pre-commit - name: Library version run: git describe --dirty --always --tags - name: Pre-commit hooks diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 8810708..43d1385 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -18,17 +18,25 @@ repos: - id: end-of-file-fixer - id: trailing-whitespace - repo: https://github.com/pycqa/pylint - rev: pylint-2.7.1 + rev: v2.11.1 hooks: - id: pylint name: pylint (library code) types: [python] - exclude: "^(docs/|examples/|setup.py$)" -- repo: local - hooks: - - id: pylint_examples - name: pylint (examples code) + args: + - --disable=consider-using-f-string,duplicate-code + exclude: "^(docs/|examples/|tests/|setup.py$)" + - id: pylint + name: pylint (example code) description: Run pylint rules on "examples/*.py" files - entry: /usr/bin/env bash -c - args: ['([[ ! -d "examples" ]] || for example in $(find . -path "./examples/*.py"); do pylint --disable=missing-docstring,invalid-name,consider-using-f-string $example; done)'] - language: system + types: [python] + files: "^examples/" + args: + - --disable=missing-docstring,invalid-name,consider-using-f-string,duplicate-code + - id: pylint + name: pylint (test code) + description: Run pylint rules on "tests/*.py" files + types: [python] + files: "^tests/" + args: + - --disable=missing-docstring,consider-using-f-string,duplicate-code diff --git a/.pylintrc b/.pylintrc index f006a4a..cfd1c41 100644 --- a/.pylintrc +++ b/.pylintrc @@ -252,7 +252,7 @@ ignore-docstrings=yes ignore-imports=yes # Minimum lines number of a similarity. -min-similarity-lines=12 +min-similarity-lines=4 [BASIC] diff --git a/adafruit_led_animation/animation/sparkle.py b/adafruit_led_animation/animation/sparkle.py index 0e4cc18..cbe8a80 100644 --- a/adafruit_led_animation/animation/sparkle.py +++ b/adafruit_led_animation/animation/sparkle.py @@ -66,7 +66,9 @@ class Sparkle(Animation): def _set_color(self, color): half_color = tuple(color[rgb] // 4 for rgb in range(len(color))) dim_color = tuple(color[rgb] // 10 for rgb in range(len(color))) - for pixel in range(len(self.pixel_object)): + for pixel in range( # pylint: disable=consider-using-enumerate + len(self.pixel_object) + ): if self.pixel_object[pixel] == self._half_color: self.pixel_object[pixel] = half_color elif self.pixel_object[pixel] == self._dim_color: diff --git a/examples/led_animation_group.py b/examples/led_animation_group.py index 6325e34..c9a4b5a 100644 --- a/examples/led_animation_group.py +++ b/examples/led_animation_group.py @@ -21,7 +21,7 @@ from adafruit_led_animation.animation.chase import Chase from adafruit_led_animation.group import AnimationGroup from adafruit_led_animation.sequence import AnimationSequence -import adafruit_led_animation.color as color +from adafruit_led_animation import color strip_pixels = neopixel.NeoPixel(board.A1, 30, brightness=0.5, auto_write=False) cp.pixels.brightness = 0.5