Phase 1 of the shared-kit plan: Calendula becomes the second core-time consumer. floret-kit is embedded as a git submodule and wired with includeBuild, so the app depends on de.jeanlucmakiola.floret:core-time and Gradle substitutes the local source module (built from source). - Remove the app's TimeBridge (Instant <-> epoch millis) + its test; the helpers now live in core-time. Repoint the 7 call sites to de.jeanlucmakiola.floret.time. - Calendula's richer time formatting (TimeFormat, 24h CompositionLocal) stays app-local by design. Reproducible-build handling (Calendula publishes via official F-Droid repro): - Pin the submodule to a foojay-free kit commit (the resolver would let a build fetch a JDK -> non-reproducible; the kit never used a toolchain block). - Harden scripts/check_reproducible_release.sh to scan the included build's Gradle scripts for the toolchain-resolver invariant. - Draft fdroiddata recipe: submodules: true (else F-Droid checks out an empty floret-kit/ and the from-source build fails). - CI build checkouts fetch submodules recursively. Clean composite build + unit tests + lintDebug + repro guard all green. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
3.4 KiB
Executable File
3.4 KiB
Executable File