mirror of
https://github.com/vitorpamplona/amethyst.git
synced 2026-10-30 07:37:38 +00:00
Compiled every module and target from scratch (--rerun-tasks: JVM main and
test, commonMain metadata, linuxX64 native, Android KMP targets, all four
amethyst debug variants with unit and instrumented tests, nappletHost,
benchmark, baselineprofile) and fixed each warning it printed. All of them
now compile without a single warning.
Deprecated APIs
- rememberModalBottomSheetState -> a shared rememberModalSheetState helper
in commonsUI over Material3's rememberBottomSheetState, with the same
anchors the deprecated function used (27 call sites).
- LocalClipboardManager -> LocalClipboard with the existing suspend
setText/getText extensions; Clipboard.nativeClipboard ->
nativeClipboardManager.
- Skiko PlatformBackHandler: compose-ui's BackHandler -> navigationevent's
NavigationBackHandler. The ui-backhandler dependency it needed is gone;
navigationevent-compose already arrives as an api dep of navigation3-ui.
- LocalLifecycleOwner moved to androidx.lifecycle.compose.
- SingleSampleMediaSource (HLS side-loaded captions) -> a lazily loaded
ProgressiveMediaSource with SubtitleExtractor, the way media3's own
DefaultMediaSourceFactory builds them. Beyond the deprecation this fixes
a crash: the old path handed TextRenderer raw text/vtt samples, and with
legacy decoding off (the default) TextRenderer checkState-fails on those.
The lazy single-track switch is package-private in media3, so a small
bridge in androidx.media3.exoplayer.source reaches it.
Build scripts
- amethyst: read the git branch through providers.exec instead of
ProcessBuilder (external process at configuration time, an error in
Gradle 11).
- root: drop the deprecated spotless { predeclareDeps() }; declaring the
spotlessPredeclare format already enables predeclaration.
- gradle.properties: kotlin.native.ignoreDisabledTargets=true, silencing
the expected "macOS test task disabled" notice on Linux/Windows hosts.
Code
- Redundant !!, ?., elvis, casts and always-true conditions the compiler
proved away (OkHttp 5 non-null bodies, NIP-87 non-null d-tags, smart
casts).
- ThreadLocal.get() is nullable in Android's SDK annotations: assert at
the cipher reads, and bound ScratchLocal to T : Any.
- UnicodeNormalizerTest's String.codePoints() helper was shadowed on JVM by
java.lang.String.codePoints(), so failure messages printed an IntStream;
renamed to hexCodePoints().
- EventFactoryKind38000Test used an `is` check the compiler proves always
false (an error from language version 2.4); now assertIsNot.
- @OptIn(ExperimentalCoroutinesApi::class) on the commons tests that use
the test dispatchers.
Not fixable from this repo: AGP 9.4.1 itself still calls the deprecated
Configuration.setVisible (shows under --warning-mode all).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01SazxgvMHyaPGET4ishFuTM