Repository navigation
build(deps): AGP 9.5.0, Gradle 9.8.2, SQLCipher 4.20.0, Markdown 0.7.18; DataStore removed - #51
Merged
Merged
Conversation
…18; DataStore removed Brings the open Dependabot updates together: #46 (AGP 9.5.0), #35 (Gradle wrapper 9.8.2), #47 (SQLCipher 4.20.0), #32 (org.jetbrains:markdown 0.7.18). #34 (DataStore 1.3.0) is not taken: the dependency goes instead. - AGP 9.5.0 needs Gradle 9.6.0 or later: 9.8.2 here. The wrapper's distributionSha256Sum is Gradle's published one, and 9.8.2 is in F-Droid's gradle-transparency-log with the same sum (F-Droid builds Notes Tech from source). Only the properties are taken from #35: its gradlew.bat change was line endings. - SQLCipher 4.17 to 4.20: SQLite 3.54.1, compileSdk 37 (ours), 16 KB page linker flag. 4.19.1 changes what getColumnType returns for NULL: nothing here reads it, Room goes through isNull. cipher_compatibility = 4 is still set at opening, secure_delete is still set by the app and checked on device (EffacementDansLaBaseTest). - Markdown 0.7.15 to 0.7.18: ==text== becomes a GFM highlight node, and the > of quote continuation lines become BLOCK_QUOTE tokens. The preview already draws an unknown node as its text and a BLOCK_QUOTE token as nothing; a test pins the highlight shown as written, as 2.0.9 shows it. - DataStore was never imported: D-015 kept the settings in the Flutter preferences file, and the dependency had stayed "for phase 7", which did without it. R8 removed its code, but every APK still shipped lib/<abi>/libdatastore_shared_counter.so. Removed, with Okio, which only it pulled in. THIRD_PARTY_NOTICES read again from the resolved releaseRuntimeClasspath: SQLCipher 4.20.0, Markdown 0.7.18, androidx.sqlite 2.7.0 (was written 2.6.2), DataStore and Okio gone, DocumentFile and Transition no longer resolved. README stack: SQLCipher 4.20, no DataStore, Gradle 9.8.2. Local gate (assembleDebug, 551 unit tests, lintDebug, detekt, ktlintCheck, androidTest compile) and assembleRelease green. Release APKs signed with the release key for a trial only: same certificate and permissions as the published 3.3.0, no INTERNET. On the S9, installed over the published 3.3.0: notes kept, full-text search finds a note written before the update and a 2.0.9 one, archive by month and permanent deletion work, no crash. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
`?.let(::ArrayList)` resolves to the Java constructor taking a `Collection<? extends E>`, which Kotlin 2.4 flags as a Java type mismatch, four times, in code added by 3.3.0. A lambda builds the same ArrayList<String>. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Up to AGP 9.4, an assumption that does not hold came out of the instrumented run as a <failure> carrying the AssumptionViolatedException. AGP 9.5 writes it as a proper <skipped>, the exception and its stack in the element's text. The judge read only <failure>, and gave every <skipped> the same reasonless text: on this PR's first run it refused the eleven admitted skips (software-only Keystore, no fingerprint, no dictation model) although each carried its admitted reason. 557 passed, the hardware Keystore witness failed as it must. The reason is now read from the <skipped> text. A skip without an AssumptionViolatedException (an @ignore, an empty skip) is still never admitted, even when its text names an admitted reason. Four self-test scenarios cover the new form; the judge accepts this PR's real report. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This was referenced Nov 9, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Brings the open Dependabot updates together, as SMS Tech #69 did: #46 (AGP 9.5.0), #35 (Gradle wrapper 9.8.2), #47 (SQLCipher 4.20.0), #32 (
org.jetbrains:markdown0.7.18). #34 (DataStore 1.3.0) is not taken: the dependency is removed, see below. No version bump: this ships with the next release.What was read before changing anything
distributionSha256Sumchecked against Gradle's published sum, and present with the same sum in F-Droid'sgradle-transparency-log(F-Droid builds Notes Tech from source). Onlygradle-wrapper.propertiesis taken from Build(deps): Bump gradle-wrapper from 9.8.1 to 9.8.2 #35: itsgradlew.batchange was line endings.getColumnTypereturns for NULL — nothing here reads it, Room goes throughisNull.PRAGMA cipher_compatibility = 4is still set at opening;secure_deleteis still set by the app and checked on device (EffacementDansLaBaseTest); a database written by the Flutter versions is opened byLegacyDatabaseOpeningTest.==text==becomes a GFM highlight node; the>of quote continuation lines becomeBLOCK_QUOTEtokens; several quadratic parse times fixed. The preview already draws an unknown node as its text and aBLOCK_QUOTEtoken as nothing. A new test pins==text==shown as written, as 2.0.9 shows it.DataStore: removed, not updated
It was never imported. D-015 (2026-08-14) kept the settings in the Flutter preferences file, and the dependency had stayed "for phase 7", which was done without it. R8 removed its code, but every APK still shipped
lib/<abi>/libdatastore_shared_counter.so(read in the published 3.3.0). Removed with Okio, which only DataStore pulled in. Settings are untouched: they never lived there.Also
THIRD_PARTY_NOTICES.mdread again from the resolvedreleaseRuntimeClasspath: SQLCipher 4.20.0, Markdown 0.7.18,androidx.sqlite2.7.0 (was written 2.6.2), DataStore and Okio gone, DocumentFile and Transition no longer resolved.?.let(::ArrayList)→ a lambda).Checked locally
assembleDebug,testDebugUnitTest— 551 tests, 0 failed —,lintDebug,detekt,ktlintCheck, androidTest compile) andassembleRelease: green, first on AGP 9.5.0 alone, then with everything.INTERNET;libdatastore_shared_counter.sogone.Before the next tag
fdroid buildbefore tagging would rule out a build-server surprise.🤖 Generated with Claude Code