Y2Linux 1.0 Beta 9.2.15: Settings scrolls smoothly with a large library
Release 1.0.0-beta.9.2.15, Y2Reborn 1.0.0-beta.9.2.15, kernel 6.18.56-y2linux-1.0.0-beta.9.2.15, update sequence 13100, root 2026.08-platform-v1.229. Published as GitHub release baseline-206 (test build 206). Previous release: Beta 9.2.14.
This report is written for people who use the player. A short technical appendix is at the end.
In one paragraph
A user with 72 000 songs found that scrolling in Settings lagged since the Settings redesign of Beta 9.2.10, while every other menu was fast (Y2Reborn #85). They found the cause themselves and sent the fix (Y2Reborn #86): the Settings page and Settings → Library, which both show how many songs you have, counted the whole library again for every picture the player drew. They now use the count the player already keeps, as all other pages do. Every other screen was checked the same way with 72 000 songs: none of them does this.
What changed
- Settings is fast with a large library (Y2Reborn #85, fix by mrtngamper in #86). While the player lays out a
screen it lends the song list to the layout for a moment; these two pages read the song count from the place the list had just left, found it empty, and so the saved count was thrown away and made again from all songs on every frame. With 72 000 songs that took about 20 ms per frame on a computer, many times longer on the Y2.
How it was tested
- Before release: the platform's full check, Reborn's workspace tests (776) and the tests of the finished release
images. The new test fails without the change: Settings and Settings → Library show the song count of the list they are given. A timing of every screen with 72 000 songs, one frame each while scrolling, found Settings and Settings → Library at about 19.5 ms per frame without the fix and every screen under 0.5 ms with it (on a computer).
- On the developer's player (from Beta 9.2.14 by update): staged, installed and acknowledged on the first start
about 95 s after Apply; Reborn drew its first frame 23.7 s after the start. The developer's library is small, so the speed itself was measured on a computer, not on the player.
Updating
Settings → System → Software Update → Update Now. Your music, playlists, settings, Wi-Fi networks and Bluetooth pairings stay. Restore Previous System (Settings → System → About, tap Version seven times, then Diagnostics) goes back to Beta 9.2.14.
Known issues
Everything listed for Beta 9.0 still applies.
Technical appendix
- Cause:
main_loop.rsrender andUi::model_actionmem::takemodel.library.trackswhilenormalizeandactions run;
pages::settingsandpages::libraryreadm.library.tracksforUi::library_counts, whose single-slot cache is keyed bylibrary_stamp(pointer, length). The empty borrow and the real list alternated, so each draw recounted every track into the artist, album and genre sets. - Reborn
97e46a8(PR #86, squashed): both pages count thetracksthey are given; testsettings_count_the_songs_they_are_given.224f4f9restores a test name the PR changed by accident. - Audit: the other borrow,
Runtime::with_model_action, puts the library back before the action runs; no otherreborn-ui code reads
m.library.tracks;AppModel::rehydrate_queueruns only when the library is published.