chore: prepare the 3.8.1 release - #756
Conversation
Bumps src.__version__ to 3.8.1 and moves the Unreleased CHANGELOG entries under a 3.8.1 heading, with an empty Unreleased above it. The reason for the release is smooth scrolling at held-frame speeds. On 3.8.0 the default 50 px/s snapped to a stepped 48 px/s on a 120 Hz panel, and any scroll slower than one pixel per refresh showed a half-pixel step across the middle of the panel. Both are fixed on main (#710, #711) but were in no release, so every stable-channel device still had them. - #710's CHANGELOG entry had been filed under 3.8.0 although it merged after the v3.8.0 tag; it moves to 3.8.1. - #711 had no CHANGELOG entry; it gets one. scripts/check_release_version.py v3.8.1 passes. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Navigate logical layers of code changes, visualize relationships, and explore their blast radius. Warning Review limit reachedYou've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Next included review available in 40 minutes. View limit detailsLimit details: You’ve used the included review currently available. Review configuration: ⚙️ Run configuration
📒 Files selected for processing (4)
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configuration
📒 Files selected for processing (2)
Included review availability: This review used your included allowance. Your plan provides up to 1 included review per hour; 0 remain after this review. 📝 WalkthroughWalkthroughThe changelog adds a 3.8.1 release entry, including scroll and release-component notes. It moves the 3.8.0 scroll-speed subsection into that entry. The package version changes from 3.8.0 to 3.8.1. Changes3.8.1 release metadata
Priority: ⬇️ Low Estimated code review effort: 1 (Trivial) | ~5 minutes Change: Other Merge Risk: ⚪ Minimal · up to The release metadata is consistent with version 3.8.1; no material merge risk is identified. Architecture SummaryArchitecture risk: 🔵 Low · up to The change affects 2 systems. Changed systems: Architecture concerns Review detailsSystems and components
Before / after behavior
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches 💡 1📝 Generate docstrings
🧪 Generate unit tests (beta)
🛠️ Fix failing CI checks 💡
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Up to standards ✅🟢 Issues
|
| Metric | Results |
|---|---|
| Complexity | 0 |
NEW Get contextual insights on your PRs based on Codacy's metrics, along with PR and Jira context, without leaving GitHub. Enable AI reviewer
TIP This summary will be updated as you push new changes.
# Conflicts: # CHANGELOG.md
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
# Conflicts: # CHANGELOG.md
Summary
This PR prepares the 3.8.1 release:
src.__version__goes from3.8.0to3.8.1.v3.8.0) move under## 3.8.1, with a short summary at the top and an empty Unreleased above it.Why now
On 3.8.0, scrolling at any speed slower than one pixel per refresh looks wrong. Both fixes are already on
mainbut in no release, so every device on the stable channel still has these problems:Found on a user rig (Pi 4, 2×128×64,
adafruit-hat-pwm). Stocks and odds were stepped at the default speed. stock-news had been hand-tuned to 60 px/s to avoid that, and showed the 1-pixel tear instead. Leaderboard at 1 px per refresh was fine. hdpi, which runsmain, was smooth.After moving that rig to
main, every scroller logssmooth:CHANGELOG corrections
v3.8.0tag. It now sits under 3.8.1, tagged(#710).I checked the rest of the 3.8.0 section against
v3.8.0:CHANGELOG.md. The #710 block was the only entry added there after the tag.Versioning note
This is a large patch release: Bookworm support, control socket stages 2 and 3, and fetch service stages 1 and 2 are in it. The new modules (
fetch_service,display_arbiter) are core-internal and set noledmatrix_min_versionfloor. 3.9.0 is where the remaining deprecation markers are removed, so 3.8.1 keeps that boundary where it is. If you'd rather call this 3.9.0, the removals would have to come with it.Test plan
python scripts/check_release_version.py v3.8.1: OKtest_version_consistency.py,test_core_version_freshness.py,test_deprecation.py,test_scan_order.py,test_scroll_config.py: 127 passedv3.8.1on the squash commit and publish the release. Therelease-version-checkworkflow runs on the tag.🤖 Generated with Claude Code
Summary by CodeRabbit