Vitor Pamplona
9587026abc
v1.08.0
2026-04-01 15:45:46 -04:00
Vitor Pamplona
cd11503b1e
v1.07.5
2026-03-31 20:18:34 -04:00
Vitor Pamplona
5cd83bbaa4
v1.07.4
2026-03-31 19:19:24 -04:00
Vitor Pamplona
69099728b2
v1.07.3
2026-03-31 17:32:23 -04:00
Vitor Pamplona
8e4ee7a618
v1.07.2
2026-03-30 16:46:01 -04:00
Vitor Pamplona
640c47e29f
v1.07.1
2026-03-30 13:53:25 -04:00
Vitor Pamplona
0c4e5be1ea
v1.07.0
2026-03-30 12:29:41 -04:00
Claude
5fc7526076
feat: add linuxX64 KMP target and restructure native source sets
...
Restructure quartz module's Kotlin/Native source set hierarchy for
proper multiplatform coverage. Adds linuxX64 target with complete
actual implementations for all expect declarations.
Source set hierarchy:
commonMain
├── jvmAndroid → jvmMain, androidMain
└── nativeMain (shared pure Kotlin)
├── appleMain (Apple APIs) → iosMain
└── linuxMain (POSIX/OpenSSL) → linuxX64Main
nativeMain: Address, OptimizedJsonMapper, EventHasherSerializer,
ChessEngine, Secp256k1Instance, BitSet, StringExt, io/ utilities
appleMain: Log (NSLog), SecureRandom (SecRandomCopyBytes),
UriParser (NSURLComponents), BigDecimal (NSDecimalNumber),
GZip (zlib), Sha256 (CC_SHA256), crypto (Apple provider),
LargeCache (CacheMap), UrlEncoder, UnicodeNormalizer
linuxMain: Log (println), SecureRandom (/dev/urandom),
UriParser (pure Kotlin), BigDecimal (pure Kotlin),
GZip (zlib cinterop), Sha256 (OpenSSL), crypto (OpenSSL),
LargeCache (AtomicReference<LinkedHashMap>), UrlEncoder
macOS targets deferred pending negentropy-kmp macOS artifacts.
macosMain/Platform.kt retained as scaffold for future activation.
https://claude.ai/code/session_01M9CAuPUV3TfPB2xShnsBhw
2026-03-28 02:55:20 +00:00
Vitor Pamplona
009b5655f9
Merge branch 'main' into claude/add-negentropy-support-PcTpR
2026-03-27 08:15:24 -04:00
Vitor Pamplona
75a8e461ad
20x Faster Rfc3986Normalizer and way less objects being created.
2026-03-26 19:04:18 -04:00
Claude
70baf55e1c
feat: add NIP-77 negentropy sync support
...
Add support for NIP-77 (Negentropy Syncing) protocol messages using
the negentropy-kmp library for efficient set reconciliation between
client and relay.
New files:
- NegOpenCmd, NegMsgCmd, NegCloseCmd: Client-to-relay commands
- NegMsgMessage, NegErrMessage: Relay-to-client messages
- NegentropySession: Client-side reconciliation orchestrator
- NegentropyServerSession: Server-side reconciliation handler
- NegentropyManager: High-level sync manager with listener callbacks
Updated serializers:
- Jackson MessageSerializer/Deserializer for NEG-MSG, NEG-ERR
- Jackson CommandSerializer/Deserializer for NEG-OPEN, NEG-MSG, NEG-CLOSE
- Kotlin MessageKSerializer/CommandKSerializer for all NIP-77 types
Compatible with strfry relay's negentropy implementation via the
negentropy-kmp library which implements the same Protocol V1 spec.
https://claude.ai/code/session_01Dc6W1G1jURAAR9kzyVvk6g
2026-03-26 04:23:32 +00:00
Vitor Pamplona
d84d146981
Merge branch 'main' into claude/remove-libsodium-dependency-DjtWa
2026-03-25 11:24:55 -04:00
Vitor Pamplona
f42881a48e
v1.06.3
2026-03-24 20:55:04 -04:00
Vitor Pamplona
1f2e24bc1f
v1.06.2
2026-03-24 19:36:30 -04:00
KotlinGeekDev
349781d9be
Use uri-reference-kmp in commonMain. Remove platform-specific implementations.
2026-03-24 16:34:13 +01:00
KotlinGeekDev
4c14554263
Merge branch 'vitorpamplona:main' into kmp-completeness
2026-03-24 13:27:40 +01:00
Vitor Pamplona
7874893938
v1.06.1
2026-03-23 18:19:42 -04:00
KotlinGeekDev
bddff36e6b
androidLibrary {} -> android {}
2026-03-23 19:55:35 +01:00
KotlinGeekDev
cfecfe2130
Move uri-reference-kmp to version catalog. Remove swift bridge(was a nice run).
2026-03-23 19:49:24 +01:00
KotlinGeekDev
a9c41e1d55
Introduce uri-reference-kmp and replace uriBridge usages with it.
2026-03-23 19:31:58 +01:00
Claude
d586a0dc25
feat: replace libsodium with pure Kotlin ChaCha20/Poly1305 implementation
...
Remove LazySodium/JNA/libsodium native dependencies and replace with
pure Kotlin implementations of ChaCha20, HChaCha20, XChaCha20,
Poly1305 MAC, and XChaCha20-Poly1305 AEAD. This eliminates platform-
specific native binaries while maintaining full NIP-44 compatibility.
- Add ChaCha20Core with RFC 8439 block function, IETF stream XOR,
HChaCha20, and XChaCha20
- Add Poly1305 MAC (RFC 8439 §2.5)
- Add XChaCha20Poly1305 AEAD encrypt/decrypt
- Convert LibSodiumInstance from expect/actual to commonMain object
- Delete platform-specific LibSodiumInstance actuals (android/jvm/ios)
- Remove iOS native interop (cinterop, linker opts, .a libraries)
- Remove lazysodium-java, lazysodium-android, JNA from build deps
- Clean up ProGuard rules (remove JNA/LazySodium keep rules)
- Add RFC 8439 + libsodium test vectors for ChaCha20 and XChaCha20
- Update benchmark to use simplified ChaCha20 API
https://claude.ai/code/session_01YHBwqnb3Z7Q7PX31tJ2G3i
2026-03-23 17:40:29 +00:00
Vitor Pamplona
7af1be7363
v1.06.0
2026-03-23 11:23:44 -04:00
Vitor Pamplona
d431b12f94
Migrates EventStore from Android's SQLLite to KMP
...
Fixes testing of libsodium between java and android
2026-03-20 16:00:17 -04:00
Vitor Pamplona
56cce46858
Solving all problems with Quartz tests
2026-03-16 19:22:28 -04:00
Vitor Pamplona
f708f6c265
Specify which .def file is used between simulators and ios Devices
2026-03-16 17:46:20 -04:00
Vitor Pamplona
e7760dc7c7
adds bundleId to the binary file
2026-03-16 17:16:18 -04:00
Vitor Pamplona
b916817247
Finishes serialization features for NIP-47
2026-03-16 16:35:05 -04:00
Vitor Pamplona
7c22c4e6c5
Migrates to collections 1.6, which deprecates iOS Intel targets.
2026-03-16 13:45:01 -04:00
Vitor Pamplona
8b4a45cb5b
Removing deprecated library addresses and deprecated apis
2026-03-15 20:52:01 -04:00
Vitor Pamplona
3e0b8a5f8f
Fixes gradle build on MacOS and adds a Clibsodium.def file
2026-03-13 08:40:51 -04:00
KotlinGeekDev
3838b6b815
Some fixes.
2026-03-12 22:16:34 +01:00
KotlinGeekDev
42f48e11fc
Make CI happy(attempt 2).
2026-03-12 21:49:08 +01:00
KotlinGeekDev
a463a9802f
Slightly modify defFile generation, to stop CI cries.
2026-03-12 21:36:25 +01:00
KotlinGeekDev
0b928d29a6
Make the libsodium cinterop file generation more reliable. Add in(and comment out) some test code for extracting the libsodium headers from zip file.
2026-03-12 20:28:02 +01:00
KotlinGeekDev
d957efb1b8
Foundations(iOS Sourceset): Streamline libsodium bindings configuration.
2026-03-12 16:55:19 +01:00
KotlinGeekDev
759b0c8b96
Foundations(iOS Sourceset): Use alternative implementation for MacInstance, due to complications with mac length under previous implementation, which makes NIP49 tests(with all other relevant tests) pass. Some spotless fixes.
2026-03-12 15:31:33 +01:00
KotlinGeekDev
8f02ea0cf6
Foundations(iOS Sourceset): Provide implementation for LibSodiumInstance.ios.kt, using the native library(shipped in project). Generate cinterop definition file with custom Gradle task. Defines bindings for use in actual code(may be streamlined later). Adds NIP44 tests and makes sure they pass.
2026-03-12 15:13:32 +01:00
Vitor Pamplona
f4d401bc56
Switches to our own version of the Url Detector
2026-03-06 10:58:59 -05:00
Vitor Pamplona
1fa93788db
android target seems to be creating some issues between plugin dependencies after adding spm
2026-03-04 12:19:47 -05:00
Vitor Pamplona
da01c6ccd1
Moves smp plugin to version catalog
2026-03-04 12:18:55 -05:00
KotlinGeekDev
4cea4e4f5d
Fix issues needing a fix caught by review.
2026-03-04 13:51:46 +01:00
KotlinGeekDev
bbd17e4e64
Fix build issues.
2026-03-04 01:06:33 +01:00
KotlinGeekDev
68a262fa88
Merge branch 'main' of https://github.com/vitorpamplona/amethyst into upstream-main
...
# Conflicts:
# gradle/libs.versions.toml
# quartz/build.gradle.kts
# quartz/src/androidHostTest/kotlin/com/vitorpamplona/quartz/TestResourceLoader.android.kt
# quartz/src/iosMain/kotlin/com/vitorpamplona/quartz/utils/GZip.ios.kt
# quartz/src/iosTest/kotlin/com/vitorpamplona/quartz/TestResourceLoader.kt
2026-03-04 00:37:10 +01:00
KotlinGeekDev
aaf3be98b7
Foundations(iOS Sourceset): Update SpmForKmp. Fix UnicodeNormalizer code.
2026-03-04 00:27:00 +01:00
Vitor Pamplona
edb73b3556
Updates AGP
2026-03-03 11:52:03 -05:00
KotlinGeekDev
265fef0a93
Foundations(iOS Sourceset): Provide implementation for AESGCM. Duplicate AESGCM tests for iOS. Move dependency to 'cryptography-optimal' make use of all iOS crypto providers.
2026-02-23 17:57:54 +01:00
Vitor Pamplona
c755908db5
Removes string-concat compiler argument since it is not supported anymore
2026-02-17 19:02:53 -05:00
Vitor Pamplona
c4e3d99392
moves chess lib to version catalog
2026-02-17 18:45:35 -05:00
KotlinGeekDev
3f9614dd8f
Merge branch 'main' of https://github.com/vitorpamplona/amethyst into upstream-main
...
# Conflicts:
# gradle/libs.versions.toml
2026-02-11 13:57:01 +01:00
nrobi144
e0d0e33408
refactor impl
2026-02-10 12:14:05 +02:00