feat: uniffi bindings for golang #1118

Open
asmogo wants to merge 5 commits from asmogo/go-ffi into main
asmogo commented 2025-09-24 21:50:59 +00:00 (Migrated from github.com)

Description

Still in draft because of these prerequisites


Notes to the reviewers


Suggested CHANGELOG Updates

CHANGED

ADDED

REMOVED

FIXED


Checklist

### Description Still in draft because of these prerequisites - [ ] https://github.com/NordSecurity/uniffi-bindgen-go/pull/82 - [ ] https://github.com/NordSecurity/uniffi-bindgen-go/pull/77 (to prevent uniffi downgrade) <!-- Describe the purpose of this PR, what's being adding and/or fixed --> ----- ### Notes to the reviewers <!-- In this section you can include notes directed to the reviewers, like explaining why some parts of the PR were done in a specific way --> ----- ### Suggested [CHANGELOG](https://github.com/cashubtc/cdk/blob/main/CHANGELOG.md) Updates <!-- Please do not edit the actual changelog but note what you changed here. --> #### CHANGED #### ADDED #### REMOVED #### FIXED ---- ### Checklist * [ ] I followed the [code style guidelines](https://github.com/cashubtc/cdk/blob/main/CODE_STYLE.md) * [ ] I ran `just final-check` before committing
github-actions[bot] commented 2025-12-31 03:08:35 +00:00 (Migrated from github.com)

This PR is stale because it has been open for 60 days with no activity.

This PR is stale because it has been open for 60 days with no activity.
asmogo commented 2026-01-15 09:21:55 +00:00 (Migrated from github.com)

I think we should move forward and merge this one as well. The only downside is that we are forced to downgrade the uniffi crate to 0.28.3

I think we should move forward and merge this one as well. The only downside is that we are forced to downgrade the uniffi crate to 0.28.3
thesimplekid commented 2026-01-15 09:42:20 +00:00 (Migrated from github.com)

I think we should move forward and merge this one as well. The only downside is that we are forced to downgrade the uniffi crate to 0.28.3

I don't mind downgrading now as I don't think we lose anything we're using. I do think there are a few things in recent versions we may want to take advantage of, but nothing we need right now that blocks downgrading. My only concern would be we get stuck there if the go generator never upgrades.

It seems ldk-node is on 0.28.3 as well for this reason https://github.com/lightningdevkit/ldk-node/pull/733#discussion_r2690852332.

Another potential issue is if the dart generator gets to a state where we can use it but requires lets say 0.30.0 but were stuck on 0.28.3 to support go, we're in a position of having to choose to drop the go support in order to upgrade. But since that is not ready yet I believe, hopefully go upgrades by then.

cc @davidcaseria do you think downgrading is okay?

> I think we should move forward and merge this one as well. The only downside is that we are forced to downgrade the uniffi crate to 0.28.3 I don't mind downgrading now as I don't think we lose anything we're using. I do think there are a few things in recent versions we may want to take advantage of, but nothing we need right now that blocks downgrading. My only concern would be we get stuck there if the go generator never upgrades. It seems ldk-node is on 0.28.3 as well for this reason https://github.com/lightningdevkit/ldk-node/pull/733#discussion_r2690852332. Another potential issue is if the dart generator gets to a state where we can use it but requires lets say 0.30.0 but were stuck on 0.28.3 to support go, we're in a position of having to choose to drop the go support in order to upgrade. But since that is not ready yet I believe, hopefully go upgrades by then. cc @davidcaseria do you think downgrading is okay?
github-actions[bot] commented 2026-03-17 03:44:19 +00:00 (Migrated from github.com)

This PR is stale because it has been open for 60 days with no activity.

This PR is stale because it has been open for 60 days with no activity.
This pull request has changes conflicting with the target branch.
  • justfile
View command line instructions

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u origin asmogo/go-ffi:asmogo/go-ffi
git switch asmogo/go-ffi

Merge

Merge the changes and update on Forgejo.

Warning: The "Autodetect manual merge" setting is not enabled for this repository, you will have to mark this pull request as manually merged afterwards.

git switch main
git merge --no-ff asmogo/go-ffi
git switch asmogo/go-ffi
git rebase main
git switch main
git merge --ff-only asmogo/go-ffi
git switch asmogo/go-ffi
git rebase main
git switch main
git merge --no-ff asmogo/go-ffi
git switch main
git merge --squash asmogo/go-ffi
git switch main
git merge --ff-only asmogo/go-ffi
git switch main
git merge asmogo/go-ffi
git push origin main
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
cashubtc/cdk!1118
No description provided.