• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

rm-hull / luma.core
99%
master: 99%

Build:
Build:
LAST BUILD BRANCH: main
DEFAULT BRANCH: master
Repo Added 10 Jan 2017 09:52PM UTC
Files 21
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

LAST BUILD ON BRANCH main
branch: main
CHANGE BRANCH
x
Reset
  • main
  • 0.1.0
  • 0.1.1
  • 0.1.11
  • 0.1.12
  • 0.1.13
  • 0.1.14
  • 0.1.15
  • 0.1.2
  • 0.1.3
  • 0.1.4
  • 0.2.0
  • 0.3.0
  • 0.3.1
  • 0.3.2
  • 0.4.0
  • 0.4.1
  • 0.4.2
  • 0.4.3
  • 0.4.4
  • 0.5.0
  • 0.5.1
  • 0.5.2
  • 0.5.3
  • 0.5.4
  • 0.6.0
  • 0.6.1
  • 0.6.2
  • 0.7.0
  • 0.7.1
  • 0.7.2
  • 0.7.3
  • 0.7.4
  • 0.7.5
  • 0.8.0
  • 0.8.1
  • 0.9.0
  • 0.9.1
  • 0.9.2
  • 0.9.3
  • 0.9.4
  • 0.9.5
  • 1.0.0
  • 1.0.0-prep
  • 1.0.1
  • 1.0.2
  • 1.0.3
  • 1.1.0
  • 1.1.1
  • 1.10.0
  • 1.10.1
  • 1.12.0
  • 1.13.0
  • 1.14.0
  • 1.14.1
  • 1.15.0
  • 1.16.0
  • 1.16.1
  • 1.16.2
  • 1.17.0
  • 1.17.2
  • 1.17.3
  • 1.2.0
  • 1.2.1
  • 1.3.0
  • 1.4.0
  • 1.5.0
  • 1.6.0
  • 1.7.0
  • 1.7.1
  • 1.7.2
  • 1.8.0
  • 1.8.1
  • 1.8.2
  • 1.8.3
  • 1.9.0
  • 2.0.0
  • 2.0.1
  • 2.0.2
  • PCA9633-gradual-backlight
  • alt-gpio-implementation
  • ansi-colors
  • api-doc-1
  • api-doc-update
  • api-docs
  • backlight_cmdline
  • bitbang
  • bugfix/accented_chars
  • bugfix/deprecate-spi-cshigh
  • bugfix/deprecation
  • bugfix/extended_charset_assert
  • bugfix/fullframe_cmdline_args
  • bugfix/gifanim_nodisplay
  • bugfix/ioctl-error-22
  • bugfix/issue-135
  • bugfix/legacy_show_message
  • bugfix/missing-cmdline-interfaces
  • bugfix/osx_conditional_install
  • bugfix/pillow-diffs
  • bugfix/py2_unicode
  • bugfix/seg7_font
  • bugfix/setup_py
  • bugfix/user-friendly-index-error
  • build-typo
  • build-update
  • canvas_tests
  • changelog-markup
  • chore/dependabot
  • chore/pin-pillow-version
  • chore/py35-deprecation
  • classifiers
  • cmdline
  • cmdline-58
  • cmdline-help
  • coveralls-once
  • deprecated-params-2
  • develop
  • doc-req
  • doc-update
  • drop-py38
  • eol-py34-156
  • extras_require
  • f-string
  • fakefs-61
  • feature/CP437_chars
  • feature/dithered-viewport
  • feature/extended-reset-hold-time
  • feature/extended-spi-bus-speeds
  • feature/fdti
  • feature/font-docs
  • feature/framebuffer-device
  • feature/ftdi
  • feature/gpio-mode
  • feature/improved-framebuffer-performance
  • feature/lcd-backlight
  • feature/spi-cs-high
  • feature/support-parallel-interface-in-cmdline-opts
  • feature/tolerant
  • feature/writebytes
  • fix-badges
  • fix-pytest-209
  • fix/virtual-optimization
  • focal
  • font-doc-131
  • format-cmdline-69
  • framebuffer
  • framerate_regulator
  • gpio-import-error
  • hex_addr
  • install-venv
  • legacy
  • lg-ci-build
  • lib-decorator
  • luma.core/main
  • master
  • migrate_7segment
  • monotonic-clock
  • monotonic-osx
  • monotonic-py27-65
  • more-coverage
  • namespace-fix
  • new-release
  • osx-tests
  • py36
  • py37
  • py39
  • pytest_ver
  • python2
  • qa-deps
  • remove-emulator
  • remove-py27
  • req-badge
  • rpi-tests
  • rpi-tests-90
  • rpi-tests2
  • rtd-py27
  • serial-error
  • setmode
  • simplify-imports
  • split-docs-139
  • sprite_system
  • stable
  • tca9548a_scanner
  • term-bgcolor-79
  • test-deps
  • test_dither
  • tests-patch-1
  • thijstriemstra-patch-1
  • time-ns
  • tranfer_size
  • travis-build
  • unsupported-platform
  • update-tests
  • use-pathlib
  • version-nr-access
  • xenial-travis

05 Mar 2026 07:16PM UTC coverage: 99.175% (+0.002%) from 99.173%
22732671561

push

github

web-flow
perf: optimize viewport to skip redundant refreshes (#300)

* perf: optimize viewport to skip redundant refreshes

Introduces a `_dirty` flag and an optional `force` parameter to the
`viewport.refresh` method. This ensures that the underlying device's
`display` method is only invoked when content has actually changed,
reducing unnecessary I/O and CPU usage.

Changes include:
- Tracking a `_dirty` state when hotspots are removed.
- Adding a `force` flag to `refresh()` to allow explicit overrides.
- Updating `display()` and `set_position()` to trigger a forced
  refresh.
- Skipping the `device.display()` call if no redraw is required and no
  state changes are detected.

```mermaid
sequenceDiagram
    participant App
    participant Viewport
    participant Hotspot
    participant Device

    App->>Viewport: refresh(force)
    Viewport->>Hotspot: should_redraw()
    Hotspot-->>Viewport: redraw_needed

    alt force or redraw_needed or dirty
        Viewport->>Device: display(image)
        Note over Viewport: Set dirty = False
    else no changes
        Note over Viewport: Skip display update
    end
```

Fixes #280

* fscking whitespace

* chore: enable colored output in CI logs

Set environment variables to force colored output for tools and disable
the interactive `tox` spinner. This improves the readability and
cleanliness of the GitHub Actions logs.

* Revert "chore: enable colored output in CI logs"

This reverts commit f2d5e4c2d.

11 of 11 new or added lines in 1 file covered. (100.0%)

1683 of 1697 relevant lines covered (99.18%)

5.95 hits per line

Relevant lines Covered
Build:
Build:
1697 RELEVANT LINES 1683 COVERED LINES
5.95 HITS PER LINE
Source Files on main
  • Tree
  • List 21
  • Changed 1
  • Source Changed 0
  • Coverage Changed 1
Coverage ∆ File Lines Relevant Covered Missed Hits/Line

Recent builds

Builds Branch Commit Type Ran Committer Via Coverage
22732671561 main perf: optimize viewport to skip redundant refreshes (#300) * perf: optimize viewport to skip redundant refreshes Introduces a `_dirty` flag and an optional `force` parameter to the `viewport.refresh` method. This ensures that the underlying devi... push 05 Mar 2026 07:18PM UTC web-flow github
99.18
21569920925 main ci: cache lg build (#301) * ci: fix build * ci: cache lg.zip * Refactor lg library installation in workflow push 01 Feb 2026 08:45PM UTC web-flow github
99.17
21568959315 main doc: use virtual environment for installation (#299) * doc: use virtual environment for installation Added instructions for installing the package directly from PyPi, including creating and activating a virtual environment. * fix branch Update... push 01 Feb 2026 07:37PM UTC web-flow github
99.17
21568000764 main doc: fix badges (#298) * doc: fix badges * ci: update readthedocs deps --------- Co-authored-by: Richard Hull <rm_hull@yahoo.co.uk> push 01 Feb 2026 06:30PM UTC web-flow github
99.17
21567840027 main chore: add dependabot configuration (#297) Automate dependency updates for **pip** and **GitHub Actions**. This ensures the project stays up-to-date with security patches and new releases on a weekly schedule. push 01 Feb 2026 06:18PM UTC web-flow github
99.17
21566427079 main Drop support for Python 3.8 (#296) * drop support for Python 3.8 * add py3.14 * fix heading push 01 Feb 2026 04:39PM UTC web-flow github
99.17
20283967038 main chore: Prepare release 2.5.3 and add device support Release version 2.5.3, incorporating new device drivers and minor internal improvements. * Add support for AiP31068 and PCA9633. * Update dummy device to pass arbitrary serial interface to ... push 16 Dec 2025 09:57PM UTC rm-hull github
99.17
20269897976 main Added gradual brightness & color transitions to PCA9633 backlight (#295) * Added gradual brightness & color transitions * Fixed successive color updates with amber missing then present --------- Co-authored-by: Richard Hull <rm_hull@yahoo.co.uk> push 16 Dec 2025 01:40PM UTC web-flow github
99.17
20235531159 main Updated dummy device to pass arbitrary serial interface to super (#294) push 15 Dec 2025 02:22PM UTC web-flow github
99.4
20150978363 main Added support for AiP31068 and PCA9633 (#292) * Added support for AiP31068 and PCA9633 * Fixed amber color channel if set to 0 * Fixed spaces and indentation * Added unit tests * A few more tests * Fix pca9633 tests * Flake8 formatting * R... push 11 Dec 2025 11:39PM UTC web-flow github
99.4
See All Builds (1445)
  • Repo on GitHub
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc