lightning-kmp
lightning-kmp copied to clipboard
Use unsigned integers once fully supported in Kotlin
Unsigned integers have been introduced as beta in Kotlin 1.3. We use it in some places, but not everywhere we should. Changing from a signed type to an unsigned type is a binary incompatible change, so we should be careful with backwards-compatibility when switching the whole codebase.
Note that we'll need to update bitcoin-kmp first to use unsigned integers.
Unsigned integers are no longer experimental since Kotlin 1.5 : https://kotlinlang.org/docs/unsigned-integer-types.html.
Hello @t-bast and @pm47
I am looking to contribute to the Eclair ecosystem, mostly on KMP. I have been looking at issues I could tackle, mainly from the TODOs in the code, and I did spot a few in LightningCodecs
about the usage of unsigned integers.
The gitter developer channel doesn't work, so I'm unsure how communication happens in this project. Nonetheless, I have started a draft doc on the possible contributions. Still, I want to start with prior communication with others, so if you can guide me to a developer's communication channel, I would appreciate it.
Thanks for reaching out! We use github discussions for communication: https://github.com/ACINQ/lightning-kmp/discussions Feel free to start discussions there about the areas you'd like to work on.
I'm not sure working on the migration to unsigned integers is a good first issue though: it has a lot of subtle impacts on encoding, requires changing bitcoin-kmp first, which has an impact on eclair and thus requires a lot of careful testing.