fix(quartz): stop shipping a dead keep rule to every consumer, fix a dead link

Both found answering "does this keep quartz's names for library users".

consumer-rules.pro is merged into the R8 configuration of every app that depends
on quartz, so its contents are somebody else's build, not just ours. The three
libscrypt rules match nothing: quartz replaced it with a pure-Kotlin
implementation, and `:quartz:dependencies --configuration jvmRuntimeClasspath`
shows no com.lambdaworks on the graph at all. The secp256k1 JNI rule stays --
that one is real.

The KDoc on NwcTransactionMetadata still pointed at
nip47WalletConnect.kotlinSerialization.toAnyValue. That package went away when
the helper moved to nip01Core.kotlinSerialization, so the link resolved to
nothing for anyone reading the published docs.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DEoxktEZyTrAS33vVZBiwm
This commit is contained in:
Claude
2026-09-20 21:49:37 +00:00
parent fb9b704566
commit e43b4c6696
2 changed files with 5 additions and 5 deletions
+4 -4
View File
@@ -15,10 +15,10 @@
# secp256k1's JNI layer resolves these from native code. # secp256k1's JNI layer resolves these from native code.
-keep class fr.acinq.secp256k1.** { *; } -keep class fr.acinq.secp256k1.** { *; }
# libscrypt # Nothing keeps libscrypt any more: quartz replaced it with a pure-Kotlin
-keep class com.lambdaworks.codec.** { *; } # implementation and `:quartz:dependencies` shows no com.lambdaworks on any
-keep class com.lambdaworks.crypto.** { *; } # configuration. These rules are merged into the R8 config of EVERY app that
-keep class com.lambdaworks.jni.** { *; } # depends on quartz, so a rule we do not need is noise in somebody else's build.
# No Jackson keeps. Every wire format Quartz speaks is now handled by a # No Jackson keeps. Every wire format Quartz speaks is now handled by a
# hand-written serializer that names its fields as string literals: the # hand-written serializer that names its fields as string literals: the
@@ -187,7 +187,7 @@ class NwcTransactionMetadata(
* of key order, escaping and number formatting matching by coincidence, and * of key order, escaping and number formatting matching by coincidence, and
* it fails as a silently unlabelled row rather than as an error. Passing the * it fails as a silently unlabelled row rather than as an error. Passing the
* bytes through also sidesteps the number-widening hazard in * bytes through also sidesteps the number-widening hazard in
* [com.vitorpamplona.quartz.nip47WalletConnect.kotlinSerialization.toAnyValue], * [com.vitorpamplona.quartz.nip01Core.kotlinSerialization.toAnyValue],
* which resolves untyped numbers with `toDoubleOrNull()` BEFORE * which resolves untyped numbers with `toDoubleOrNull()` BEFORE
* `toLongOrNull()`: nothing here decomposes the event at all. * `toLongOrNull()`: nothing here decomposes the event at all.
* *