Skip to content

Tags: lightning-node-interface/lni

Tags

v0.2.4

Toggle v0.2.4's commit message
ci: remove test jobs (just checked module loads)

Simplifies workflow - build artifacts are the deliverable

v0.2.3

Toggle v0.2.3's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
ci: Add GitHub Actions workflow for lni_nodejs multi-platform builds (#…

…28)

* ci: Add GitHub Actions workflow for lni_nodejs multi-platform builds

Builds native Node.js bindings for:
- Linux x64 (gnu)
- Linux ARM64 (gnu)
- macOS x64
- macOS ARM64
- macOS Universal (lipo)
- Windows x64 (msvc)

Features:
- Runs on push to master/main and tags
- Creates GitHub Release on version tags (v*)
- Uploads platform-specific .node binaries as release assets
- Optional npm publish (requires NPM_TOKEN secret)
- Test step to verify bindings load correctly

* fix(ci): Add protobuf-compiler and fix napi build command

- Install protobuf-compiler on all platforms (needed for prost-build)
- Use 'yarn napi build' with --target flag directly
- Add brew/choco install steps for macOS/Windows

* security(ci): Pin all GitHub Actions to commit SHAs

Replace mutable tag references with reproducible commit SHA pins:
- actions/checkout@v4 → @34e114876b0b11c390a56381ad16ebd13914f8d5
- actions/setup-node@v4 → @49933ea5288caeca8642d1e84afbd3f7d6820020
- dtolnay/rust-toolchain@stable → @4be9e76fd7c4901c61fb841f559994984270fce7
- actions/upload-artifact@v4 → @ea165f8d65b6e75b540449e92b4886f43607fa02
- actions/download-artifact@v4 → @d3f86a106a0bac45b974a628896c90dbdf5c8093
- softprops/action-gh-release@v1 → @de2c0eb89ae2a093876385947365aca7b0e5f844

Original tags preserved in comments above each uses: line for clarity.

* fix(ci): Use architecture-specific macOS runners

- darwin-x64: Use macos-13 (Intel runner) for native x86_64 build
- darwin-arm64: Use macos-14 (Apple Silicon runner) for native aarch64 build
- Update test and universal-macos jobs to use macos-14

macos-latest now defaults to arm64, causing cross-compilation issues.

* security(ci): Check NODE_AUTH_TOKEN env var instead of interpolating secret

Avoid interpolating ${{ secrets.NPM_TOKEN }} directly into shell script.
Instead, check the NODE_AUTH_TOKEN environment variable which is already
set via the env block. This prevents potential secret exposure in logs.

* chore(ci): Update softprops/action-gh-release to v2

- v1 → v2 (SHA: a06a81a03ee405af7f2048a818ed3f03bbf83c7b)
- v2 uses node20 runtime (vs node16 in v1)
- All existing inputs (files, generate_release_notes, draft, prerelease) are compatible

* fix(nodejs): add macOS linker flags for N-API undefined symbols

The darwin builds were failing because the linker couldn't find N-API
symbols (_napi_create_error, _napi_create_function, etc.). These symbols
are provided by Node.js at runtime, so we need -undefined dynamic_lookup
to tell the linker to defer resolution.

* ci: update macOS runners to non-deprecated versions

- macos-13 (Intel) → macos-15-intel
- macos-14 (ARM64) → macos-latest

Per GitHub deprecation notice:
actions/runner-images#13046

---------

Co-authored-by: Clawd <clawd@clawd.bot>

v0.2.2

Toggle v0.2.2's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
ci: Add GitHub Actions workflow for lni_nodejs multi-platform builds (#…

…28)

* ci: Add GitHub Actions workflow for lni_nodejs multi-platform builds

Builds native Node.js bindings for:
- Linux x64 (gnu)
- Linux ARM64 (gnu)
- macOS x64
- macOS ARM64
- macOS Universal (lipo)
- Windows x64 (msvc)

Features:
- Runs on push to master/main and tags
- Creates GitHub Release on version tags (v*)
- Uploads platform-specific .node binaries as release assets
- Optional npm publish (requires NPM_TOKEN secret)
- Test step to verify bindings load correctly

* fix(ci): Add protobuf-compiler and fix napi build command

- Install protobuf-compiler on all platforms (needed for prost-build)
- Use 'yarn napi build' with --target flag directly
- Add brew/choco install steps for macOS/Windows

* security(ci): Pin all GitHub Actions to commit SHAs

Replace mutable tag references with reproducible commit SHA pins:
- actions/checkout@v4 → @34e114876b0b11c390a56381ad16ebd13914f8d5
- actions/setup-node@v4 → @49933ea5288caeca8642d1e84afbd3f7d6820020
- dtolnay/rust-toolchain@stable → @4be9e76fd7c4901c61fb841f559994984270fce7
- actions/upload-artifact@v4 → @ea165f8d65b6e75b540449e92b4886f43607fa02
- actions/download-artifact@v4 → @d3f86a106a0bac45b974a628896c90dbdf5c8093
- softprops/action-gh-release@v1 → @de2c0eb89ae2a093876385947365aca7b0e5f844

Original tags preserved in comments above each uses: line for clarity.

* fix(ci): Use architecture-specific macOS runners

- darwin-x64: Use macos-13 (Intel runner) for native x86_64 build
- darwin-arm64: Use macos-14 (Apple Silicon runner) for native aarch64 build
- Update test and universal-macos jobs to use macos-14

macos-latest now defaults to arm64, causing cross-compilation issues.

* security(ci): Check NODE_AUTH_TOKEN env var instead of interpolating secret

Avoid interpolating ${{ secrets.NPM_TOKEN }} directly into shell script.
Instead, check the NODE_AUTH_TOKEN environment variable which is already
set via the env block. This prevents potential secret exposure in logs.

* chore(ci): Update softprops/action-gh-release to v2

- v1 → v2 (SHA: a06a81a03ee405af7f2048a818ed3f03bbf83c7b)
- v2 uses node20 runtime (vs node16 in v1)
- All existing inputs (files, generate_release_notes, draft, prerelease) are compatible

* fix(nodejs): add macOS linker flags for N-API undefined symbols

The darwin builds were failing because the linker couldn't find N-API
symbols (_napi_create_error, _napi_create_function, etc.). These symbols
are provided by Node.js at runtime, so we need -undefined dynamic_lookup
to tell the linker to defer resolution.

* ci: update macOS runners to non-deprecated versions

- macos-13 (Intel) → macos-15-intel
- macos-14 (ARM64) → macos-latest

Per GitHub deprecation notice:
actions/runner-images#13046

---------

Co-authored-by: Clawd <clawd@clawd.bot>

v0.2.1

Toggle v0.2.1's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
ci: Add GitHub Actions workflow for lni_nodejs multi-platform builds (#…

…28)

* ci: Add GitHub Actions workflow for lni_nodejs multi-platform builds

Builds native Node.js bindings for:
- Linux x64 (gnu)
- Linux ARM64 (gnu)
- macOS x64
- macOS ARM64
- macOS Universal (lipo)
- Windows x64 (msvc)

Features:
- Runs on push to master/main and tags
- Creates GitHub Release on version tags (v*)
- Uploads platform-specific .node binaries as release assets
- Optional npm publish (requires NPM_TOKEN secret)
- Test step to verify bindings load correctly

* fix(ci): Add protobuf-compiler and fix napi build command

- Install protobuf-compiler on all platforms (needed for prost-build)
- Use 'yarn napi build' with --target flag directly
- Add brew/choco install steps for macOS/Windows

* security(ci): Pin all GitHub Actions to commit SHAs

Replace mutable tag references with reproducible commit SHA pins:
- actions/checkout@v4 → @34e114876b0b11c390a56381ad16ebd13914f8d5
- actions/setup-node@v4 → @49933ea5288caeca8642d1e84afbd3f7d6820020
- dtolnay/rust-toolchain@stable → @4be9e76fd7c4901c61fb841f559994984270fce7
- actions/upload-artifact@v4 → @ea165f8d65b6e75b540449e92b4886f43607fa02
- actions/download-artifact@v4 → @d3f86a106a0bac45b974a628896c90dbdf5c8093
- softprops/action-gh-release@v1 → @de2c0eb89ae2a093876385947365aca7b0e5f844

Original tags preserved in comments above each uses: line for clarity.

* fix(ci): Use architecture-specific macOS runners

- darwin-x64: Use macos-13 (Intel runner) for native x86_64 build
- darwin-arm64: Use macos-14 (Apple Silicon runner) for native aarch64 build
- Update test and universal-macos jobs to use macos-14

macos-latest now defaults to arm64, causing cross-compilation issues.

* security(ci): Check NODE_AUTH_TOKEN env var instead of interpolating secret

Avoid interpolating ${{ secrets.NPM_TOKEN }} directly into shell script.
Instead, check the NODE_AUTH_TOKEN environment variable which is already
set via the env block. This prevents potential secret exposure in logs.

* chore(ci): Update softprops/action-gh-release to v2

- v1 → v2 (SHA: a06a81a03ee405af7f2048a818ed3f03bbf83c7b)
- v2 uses node20 runtime (vs node16 in v1)
- All existing inputs (files, generate_release_notes, draft, prerelease) are compatible

* fix(nodejs): add macOS linker flags for N-API undefined symbols

The darwin builds were failing because the linker couldn't find N-API
symbols (_napi_create_error, _napi_create_function, etc.). These symbols
are provided by Node.js at runtime, so we need -undefined dynamic_lookup
to tell the linker to defer resolution.

* ci: update macOS runners to non-deprecated versions

- macos-13 (Intel) → macos-15-intel
- macos-14 (ARM64) → macos-latest

Per GitHub deprecation notice:
actions/runner-images#13046

---------

Co-authored-by: Clawd <clawd@clawd.bot>

v0.2.0

Toggle v0.2.0's commit message
.

v0.1.2

Toggle v0.1.2's commit message
update swift

v0.1.1

Toggle v0.1.1's commit message
add lni.swift

v0.1.0

Toggle v0.1.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Add Swift bindings using UniFFI similar to Kotlin bindings (#22)

* Initial plan

* Add Swift bindings using UniFFI similar to Kotlin bindings

Co-authored-by: ntheile <1273575+ntheile@users.noreply.github.com>

* Fix XCFramework creation to include headers and update .gitignore

Co-authored-by: ntheile <1273575+ntheile@users.noreply.github.com>

* fix on ios

* readme

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: ntheile <1273575+ntheile@users.noreply.github.com>
Co-authored-by: nicktee <ntheile@gmail.com>