lightning-kmp icon indicating copy to clipboard operation
lightning-kmp copied to clipboard

Use unsigned integers once fully supported in Kotlin

Open t-bast opened this issue 4 years ago • 3 comments

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.

t-bast avatar Jan 04 '21 15:01 t-bast

Unsigned integers are no longer experimental since Kotlin 1.5 : https://kotlinlang.org/docs/unsigned-integer-types.html.

pm47 avatar Aug 29 '22 11:08 pm47

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.

ndungudedan avatar Mar 01 '24 11:03 ndungudedan

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.

t-bast avatar Mar 01 '24 13:03 t-bast