Repository navigation
ZenNotes for Android 1.1.45: new notes at once in large folders
Version 1.1.45, versionCode 48, October 23, 2026, following 1.1.44 (47). PR #131 carries 0f26de6; the signed bundle zennotes-1.1.45-vc48.aab (37,985,719 bytes, SHA-256 e4840b02d95e0c4d66fa2824711bfea0c781807f8738f8eb0a6527871f1f48b4) was built from that commit, whose tree ce3bba5 equals that of tag v1.1.45 (65fda06, the merge of #131).
What changes on the phone
- A new note, quick note or task opens as soon as you tap (#128). On a large vault in a folder you picked (one kept in sync by Syncthing, say), New note and Quick took 12 to 15 seconds and a new task longer, because each one listed the whole folder tree several times over and the task scan read every note. Overlapping listings are now shared (#129), a note is read for its tasks only when it changed, and core 2.75.0 opens the note before the list catches up. On an emulator with a 1,700-note picked folder: New note 5.1 s to about 0.3 s, Task added 13.4 s to about 0.3 s, and a return to the app does a quarter of the folder reading it did.
- A note named with "..." no longer breaks a picked folder (#130). A desktop quick note whose first line ended "...comes up... a brain dump." became a file the phone refused as "escaping the vault": Cloud sync stopped, and the whole folder showed as empty. Only a real
../path is refused now. Reported on Discord by Dave. - Note search shows each note's folder (ZenNotes/zennotes#982),
[[in a table cell suggests your notes (ZenNotes/zennotes#977), and a deep note keeps its title readable in the header (#126), with a rename field as wide as the name.
Under the hood
Core core-2.75.0-core.h4b1bd3ddd69c2aab was built by CI from ZenNotes/zennotes 7e6506db (the v2.75.0 release commit, run 39985956672); core:adopt checked SHA-256, SHA-512, packed versions and clean-source provenance. No new bridge method, palette command or long-press entry; the bridge contract changed only its version.
Source: branch release/1.1.45 from main 3156f16 (the merges of #129 and #130), two commits: 68a856d (core 2.75.0) and 0f26de6 (1.1.45, versionCode 48).
Validation
npm run upstream(boundaries and typecheck), 306 JavaScript tests,npm run buildandnpx cap sync androidpassed;bundleReleasewas signed with the upload key on JDK 21, and the bundle readsmd.zennotes48 / 1.1.45, min 24, target 36, with the same three permissions as 1.1.44.- CI on #131: the build job and the emulator launch job passed on the first run.
- The #128 and #130 fixes were each reproduced and verified on an API 36 emulator over WebView CDP before they merged (see #129 and #130).
Play Console submission
1.1.44 (47) was live. Production, Create new release: the AAB was dropped in by Adib and processed as 48 (1.1.45): API 24+, target SDK 36; no devices lost or added (12,413 phones, 6,816 tablets); 3.68 MB update; only the usual "no deobfuscation file" warning. Release notes inside <en-US> tags, rollout 100%, saved, and sent for review on October 23 (CDT). Managed publishing is off, so Google publishes it on approval.
PR #131 merged as 65fda06 (merge tree equals ce3bba5, the tree of 0f26de6); lightweight tag v1.1.45. This release carries Play's signed universal APK from App bundle explorer as zennotes-1.1.45-universal.apk: 38,229,235 bytes, SHA-256 d465c9afbed429b15519973cf01ce17bd19c561197e9cc0e535797b3f44b4ae7, md.zennotes 48 / 1.1.45, min 24 / target 36, signer 9f1af3a4… as since 1.1.22, the same three permissions as 1.1.44, no CHECK_LICENSE or pairip.
How to test locally
npm ci && npm run build && npx cap sync android, then openandroid/in Android Studio and run on a device or emulator.- Pick a large folder as a vault (New Vault…, Choose Folder…), then tap the circle and Note: the note opens at once. Before: several seconds on a large folder.
- Put a note named
Ends with... a dump..mdin that folder: it is listed, opens and saves. Before: the folder showed as empty. - Tap the circle, Search, and type part of a note name that two folders share: each row shows its folder.