Tags: lightning-node-interface/lni
Tags
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>
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>
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>
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>