mirror of
https://github.com/aljazceru/breez-sdk-liquid.git
synced 2025-12-18 22:44:22 +01:00
Publish Dart and Flutter packages (#356)
* Publish flutter artifacts and package * Publish dart package * Add LICENCE * Force rm * Don't copy lock files * Fix output directory * Fix podspec name * Pass SWIFT_RELEASE_TOKEN * Fix overrides indentation * Update package version on CMake script Update example dependencies * Depend on dart & flutter packages from git on pubspec files * Correct repository links & add publish_to: 'none' * run just clean && just init * Update README.md * Download framework as part of prepare_command * Use wget, then fallback to curl * Remove redundant .zip suffix on the url * Fix release tag * Add v to tag replacement * Fix podspec version * Copy header file * Downgrade vm_service --------- Co-authored-by: Erdem Yerebasmaz <erdem@yerebasmaz.com>
This commit is contained in:
110
.github/workflows/build-bindings-flutter.yml
vendored
Normal file
110
.github/workflows/build-bindings-flutter.yml
vendored
Normal file
@@ -0,0 +1,110 @@
|
|||||||
|
name: Build bindings for Flutter
|
||||||
|
on:
|
||||||
|
workflow_dispatch:
|
||||||
|
inputs:
|
||||||
|
ref:
|
||||||
|
description: 'commit/tag/branch reference'
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
workflow_call:
|
||||||
|
inputs:
|
||||||
|
repository:
|
||||||
|
description: 'sdk repository, defaults to current repository'
|
||||||
|
required: false
|
||||||
|
type: string
|
||||||
|
ref:
|
||||||
|
description: 'commit/tag/branch reference'
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
use-dummy-binaries:
|
||||||
|
description: 'If true, creates dummy binaries rather than real binaries'
|
||||||
|
required: false
|
||||||
|
type: boolean
|
||||||
|
default: false
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build:
|
||||||
|
if: ${{ !inputs.use-dummy-binaries }}
|
||||||
|
runs-on: macOS-latest
|
||||||
|
name: Build Flutter bindings
|
||||||
|
steps:
|
||||||
|
- name: checkout
|
||||||
|
uses: actions/checkout@v3
|
||||||
|
with:
|
||||||
|
ref: ${{ inputs.ref }}
|
||||||
|
repository: ${{ inputs.repository || github.repository }}
|
||||||
|
|
||||||
|
- name: Install Protoc
|
||||||
|
uses: arduino/setup-protoc@v3
|
||||||
|
with:
|
||||||
|
version: "27.2"
|
||||||
|
repo-token: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
|
||||||
|
- name: Install Zig
|
||||||
|
uses: goto-bus-stop/setup-zig@v2
|
||||||
|
|
||||||
|
- uses: Swatinem/rust-cache@v2
|
||||||
|
with:
|
||||||
|
workspaces: lib
|
||||||
|
|
||||||
|
- name: Set up Flutter
|
||||||
|
uses: subosito/flutter-action@v2
|
||||||
|
with:
|
||||||
|
channel: stable
|
||||||
|
- run: flutter --version
|
||||||
|
|
||||||
|
- name: Set up just
|
||||||
|
uses: extractions/setup-just@v2
|
||||||
|
|
||||||
|
- name: Set up Melos
|
||||||
|
uses: bluefireteam/melos-action@v3
|
||||||
|
with:
|
||||||
|
run-bootstrap: false
|
||||||
|
|
||||||
|
- name: Initialize the workspace
|
||||||
|
working-directory: lib/bindings/langs/flutter/
|
||||||
|
run: |
|
||||||
|
just clean
|
||||||
|
just init
|
||||||
|
|
||||||
|
- name: Install flutter_rust_bridge_codegen dependencies
|
||||||
|
working-directory: lib/bindings/langs/flutter/
|
||||||
|
run: just frb
|
||||||
|
|
||||||
|
- name: Build bindings
|
||||||
|
working-directory: lib/bindings/langs/flutter/
|
||||||
|
run: just build
|
||||||
|
|
||||||
|
- name: Build language packages
|
||||||
|
working-directory: lib/bindings/langs/flutter/
|
||||||
|
run: melos build
|
||||||
|
|
||||||
|
- name: Copy build output
|
||||||
|
run: |
|
||||||
|
mkdir -p dist
|
||||||
|
cp lib/bindings/langs/flutter/platform-build/android.tar.gz dist
|
||||||
|
cp lib/bindings/langs/flutter/platform-build/breez_liquid_sdk.xcframework.zip dist
|
||||||
|
cp lib/bindings/langs/flutter/platform-build/other.tar.gz dist
|
||||||
|
|
||||||
|
- name: Archive Flutter bindings
|
||||||
|
uses: actions/upload-artifact@v3
|
||||||
|
with:
|
||||||
|
name: bindings-flutter
|
||||||
|
path: dist/*
|
||||||
|
|
||||||
|
build-dummies:
|
||||||
|
if: ${{ inputs.use-dummy-binaries }}
|
||||||
|
runs-on: macOS-latest
|
||||||
|
name: Build Flutter dummy bindings
|
||||||
|
steps:
|
||||||
|
- name: Create dummy files
|
||||||
|
run: |
|
||||||
|
touch android.tar.gz
|
||||||
|
touch breez_liquid_sdk.xcframework.zip
|
||||||
|
touch other.tar.gz
|
||||||
|
|
||||||
|
- name: Archive Flutter dummy bindings
|
||||||
|
uses: actions/upload-artifact@v3
|
||||||
|
with:
|
||||||
|
name: bindings-flutter
|
||||||
|
path: ./*
|
||||||
53
.github/workflows/publish-all-platforms.yml
vendored
53
.github/workflows/publish-all-platforms.yml
vendored
@@ -98,6 +98,7 @@ jobs:
|
|||||||
bindings-windows: ${{ !!needs.pre-setup.outputs.csharp-package-version || !!needs.pre-setup.outputs.golang-package-version || !!needs.pre-setup.outputs.python-package-version }}
|
bindings-windows: ${{ !!needs.pre-setup.outputs.csharp-package-version || !!needs.pre-setup.outputs.golang-package-version || !!needs.pre-setup.outputs.python-package-version }}
|
||||||
bindings-darwin: ${{ !!needs.pre-setup.outputs.csharp-package-version || !!needs.pre-setup.outputs.golang-package-version || !!needs.pre-setup.outputs.python-package-version || !!needs.pre-setup.outputs.swift-package-version }}
|
bindings-darwin: ${{ !!needs.pre-setup.outputs.csharp-package-version || !!needs.pre-setup.outputs.golang-package-version || !!needs.pre-setup.outputs.python-package-version || !!needs.pre-setup.outputs.swift-package-version }}
|
||||||
bindings-linux: ${{ !!needs.pre-setup.outputs.csharp-package-version || !!needs.pre-setup.outputs.golang-package-version || !!needs.pre-setup.outputs.python-package-version }}
|
bindings-linux: ${{ !!needs.pre-setup.outputs.csharp-package-version || !!needs.pre-setup.outputs.golang-package-version || !!needs.pre-setup.outputs.python-package-version }}
|
||||||
|
bindings-flutter: ${{ !!needs.pre-setup.outputs.flutter-package-version }}
|
||||||
bindings-android: ${{ !!needs.pre-setup.outputs.kotlin-multiplatform-package-version || !!needs.pre-setup.outputs.maven-package-version || !!needs.pre-setup.outputs.golang-package-version }}
|
bindings-android: ${{ !!needs.pre-setup.outputs.kotlin-multiplatform-package-version || !!needs.pre-setup.outputs.maven-package-version || !!needs.pre-setup.outputs.golang-package-version }}
|
||||||
bindings-ios: ${{ !!needs.pre-setup.outputs.kotlin-multiplatform-package-version || !!needs.pre-setup.outputs.maven-package-version || !!needs.pre-setup.outputs.swift-package-version }}
|
bindings-ios: ${{ !!needs.pre-setup.outputs.kotlin-multiplatform-package-version || !!needs.pre-setup.outputs.maven-package-version || !!needs.pre-setup.outputs.swift-package-version }}
|
||||||
kotlin: ${{ !!needs.pre-setup.outputs.kotlin-multiplatform-package-version || !!needs.pre-setup.outputs.maven-package-version || !!needs.pre-setup.outputs.flutter-package-version }}
|
kotlin: ${{ !!needs.pre-setup.outputs.kotlin-multiplatform-package-version || !!needs.pre-setup.outputs.maven-package-version || !!needs.pre-setup.outputs.flutter-package-version }}
|
||||||
@@ -151,6 +152,15 @@ jobs:
|
|||||||
ref: ${{ needs.setup.outputs.ref }}
|
ref: ${{ needs.setup.outputs.ref }}
|
||||||
use-dummy-binaries: ${{ needs.setup.outputs.use-dummy-binaries == 'true' }}
|
use-dummy-binaries: ${{ needs.setup.outputs.use-dummy-binaries == 'true' }}
|
||||||
|
|
||||||
|
build-bindings-flutter:
|
||||||
|
needs: setup
|
||||||
|
if: ${{ needs.setup.outputs.bindings-flutter == 'true' }}
|
||||||
|
uses: ./.github/workflows/build-bindings-flutter.yml
|
||||||
|
with:
|
||||||
|
repository: ${{ needs.setup.outputs.repository }}
|
||||||
|
ref: ${{ needs.setup.outputs.ref }}
|
||||||
|
use-dummy-binaries: ${{ needs.setup.outputs.use-dummy-binaries == 'true' }}
|
||||||
|
|
||||||
build-bindings-android:
|
build-bindings-android:
|
||||||
needs: setup
|
needs: setup
|
||||||
if: ${{ needs.setup.outputs.bindings-android == 'true' }}
|
if: ${{ needs.setup.outputs.bindings-android == 'true' }}
|
||||||
@@ -198,6 +208,19 @@ jobs:
|
|||||||
# skip-tests: true
|
# skip-tests: true
|
||||||
# secrets:
|
# secrets:
|
||||||
# NUGET_API_KEY: ${{ secrets.NUGET_API_KEY }}
|
# NUGET_API_KEY: ${{ secrets.NUGET_API_KEY }}
|
||||||
|
|
||||||
|
publish-dart:
|
||||||
|
needs:
|
||||||
|
- setup
|
||||||
|
if: ${{ needs.setup.outputs.flutter == 'true' }}
|
||||||
|
uses: ./.github/workflows/publish-dart.yml
|
||||||
|
with:
|
||||||
|
repository: ${{ needs.setup.outputs.repository }}
|
||||||
|
ref: ${{ needs.setup.outputs.ref }}
|
||||||
|
package-version: ${{ needs.setup.outputs.flutter-package-version }}
|
||||||
|
publish: ${{ needs.setup.outputs.publish == 'true' }}
|
||||||
|
secrets:
|
||||||
|
REPO_SSH_KEY: ${{ secrets.REPO_SSH_KEY }}
|
||||||
#
|
#
|
||||||
# publish-golang:
|
# publish-golang:
|
||||||
# needs:
|
# needs:
|
||||||
@@ -248,20 +271,22 @@ jobs:
|
|||||||
secrets:
|
secrets:
|
||||||
BREEZ_MVN_USERNAME: ${{ secrets.BREEZ_MVN_USERNAME }}
|
BREEZ_MVN_USERNAME: ${{ secrets.BREEZ_MVN_USERNAME }}
|
||||||
BREEZ_MVN_PASSWORD: ${{ secrets.BREEZ_MVN_PASSWORD }}
|
BREEZ_MVN_PASSWORD: ${{ secrets.BREEZ_MVN_PASSWORD }}
|
||||||
|
|
||||||
# publish-flutter:
|
publish-flutter:
|
||||||
# needs:
|
needs:
|
||||||
# - setup
|
- setup
|
||||||
# - build-language-bindings
|
- build-bindings-flutter
|
||||||
# if: ${{ needs.setup.outputs.flutter == 'true' }}
|
- publish-dart
|
||||||
# uses: ./.github/workflows/publish-flutter.yml
|
if: ${{ needs.setup.outputs.flutter == 'true' }}
|
||||||
# with:
|
uses: ./.github/workflows/publish-flutter.yml
|
||||||
# repository: ${{ needs.setup.outputs.repository }}
|
with:
|
||||||
# ref: ${{ needs.setup.outputs.ref }}
|
repository: ${{ needs.setup.outputs.repository }}
|
||||||
# package-version: ${{ needs.setup.outputs.flutter-package-version }}
|
ref: ${{ needs.setup.outputs.ref }}
|
||||||
# publish: ${{ needs.setup.outputs.publish == 'true' }}
|
package-version: ${{ needs.setup.outputs.flutter-package-version }}
|
||||||
# secrets:
|
publish: ${{ needs.setup.outputs.publish == 'true' }}
|
||||||
# REPO_SSH_KEY: ${{ secrets.REPO_SSH_KEY }}
|
secrets:
|
||||||
|
REPO_SSH_KEY: ${{ secrets.REPO_SSH_KEY }}
|
||||||
|
SWIFT_RELEASE_TOKEN: ${{ secrets.SWIFT_RELEASE_TOKEN }}
|
||||||
|
|
||||||
# react native version x.y.z will at runtime require
|
# react native version x.y.z will at runtime require
|
||||||
# ios and android packages x.y.z being published already.
|
# ios and android packages x.y.z being published already.
|
||||||
|
|||||||
85
.github/workflows/publish-dart.yml
vendored
Normal file
85
.github/workflows/publish-dart.yml
vendored
Normal file
@@ -0,0 +1,85 @@
|
|||||||
|
name: Publish Dart Package
|
||||||
|
on:
|
||||||
|
workflow_call:
|
||||||
|
inputs:
|
||||||
|
repository:
|
||||||
|
description: 'sdk repository, defaults to current repository'
|
||||||
|
required: false
|
||||||
|
type: string
|
||||||
|
ref:
|
||||||
|
description: 'commit/tag/branch reference'
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
package-version:
|
||||||
|
description: 'version for the dart package (MAJOR.MINOR.BUILD) (no v prefix)'
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
publish:
|
||||||
|
description: 'value indicating whether to commit/tag a release.'
|
||||||
|
required: true
|
||||||
|
type: boolean
|
||||||
|
default: true
|
||||||
|
secrets:
|
||||||
|
REPO_SSH_KEY:
|
||||||
|
description: 'ssh key to commit to the breez-liquid-sdk-dart repository'
|
||||||
|
required: true
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build-tag-release:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Checkout breez-liquid-sdk-dart repo
|
||||||
|
uses: actions/checkout@v3
|
||||||
|
with:
|
||||||
|
repository: breez/breez-liquid-sdk-dart
|
||||||
|
ssh-key: ${{ secrets.REPO_SSH_KEY }}
|
||||||
|
fetch-depth: 0
|
||||||
|
path: dist
|
||||||
|
|
||||||
|
- name: Checkout breez-liquid-sdk repo
|
||||||
|
uses: actions/checkout@v3
|
||||||
|
with:
|
||||||
|
repository: ${{ inputs.repository || github.repository }}
|
||||||
|
ref: ${{ inputs.ref || github.sha }}
|
||||||
|
path: build
|
||||||
|
|
||||||
|
- name: Copy package files
|
||||||
|
working-directory: dist
|
||||||
|
run: |
|
||||||
|
rm -rf lib
|
||||||
|
cp -r ../build/packages/dart/lib .
|
||||||
|
cp ../build/packages/dart/analysis_options.yaml .
|
||||||
|
cp ../build/packages/dart/pubspec.yaml .
|
||||||
|
|
||||||
|
- name: Copy docs
|
||||||
|
working-directory: dist
|
||||||
|
run: |
|
||||||
|
cp ../build/packages/dart/CHANGELOG.md . || true
|
||||||
|
cp ../build/packages/dart/LICENSE . || true
|
||||||
|
cp ../build/packages/dart/README.md . || true
|
||||||
|
|
||||||
|
- name: Set package version
|
||||||
|
working-directory: dist
|
||||||
|
run: |
|
||||||
|
sed -i.bak -e 's/version:.*/version: ${{ inputs.package-version }}/' pubspec.yaml
|
||||||
|
rm pubspec.yaml.bak
|
||||||
|
|
||||||
|
- name: Archive Dart release
|
||||||
|
uses: actions/upload-artifact@v3
|
||||||
|
with:
|
||||||
|
name: breez-liquid-sdk-dart-${{ inputs.package-version || github.sha }}
|
||||||
|
path: |
|
||||||
|
dist/*
|
||||||
|
!dist/.git
|
||||||
|
|
||||||
|
- name: Tag the Dart package
|
||||||
|
working-directory: dist
|
||||||
|
if: ${{ inputs.publish }}
|
||||||
|
run: |
|
||||||
|
git config --global user.email github-actions@github.com
|
||||||
|
git config --global user.name github-actions
|
||||||
|
git add .
|
||||||
|
git commit -m "Update Dart package to version v${{ inputs.package-version }}"
|
||||||
|
git push
|
||||||
|
git tag v${{ inputs.package-version }} -m "v${{ inputs.package-version }}"
|
||||||
|
git push --tags
|
||||||
60
.github/workflows/publish-flutter.yml
vendored
60
.github/workflows/publish-flutter.yml
vendored
@@ -23,6 +23,9 @@ on:
|
|||||||
REPO_SSH_KEY:
|
REPO_SSH_KEY:
|
||||||
description: 'ssh key to commit to the breez-liquid-sdk-flutter repository'
|
description: 'ssh key to commit to the breez-liquid-sdk-flutter repository'
|
||||||
required: true
|
required: true
|
||||||
|
SWIFT_RELEASE_TOKEN:
|
||||||
|
description: 'github token to release to the breez-liquid-sdk-flutter repository'
|
||||||
|
required: true
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
build-tag-release:
|
build-tag-release:
|
||||||
@@ -50,37 +53,42 @@ jobs:
|
|||||||
- name: Copy package files
|
- name: Copy package files
|
||||||
working-directory: dist
|
working-directory: dist
|
||||||
run: |
|
run: |
|
||||||
rm -r ios
|
rm -rf android
|
||||||
rm -r android
|
rm -rf ios
|
||||||
rm -r lib
|
rm -rf lib
|
||||||
cp -r ../build/lib/bindings/langs/flutter/ios .
|
cp -r ../build/packages/flutter/android .
|
||||||
mv ios/breez_liquid_sdk.podspec.production ios/breez_liquid_sdk.podspec
|
cp -r ../build/packages/flutter/ios .
|
||||||
cp -r ../build/lib/bindings/langs/flutter/android .
|
cp -r ../build/packages/flutter/lib .
|
||||||
mv langs/android/build.gradle.production langs/android/build.gradle
|
cp -r ../build/lib/bindings/langs/flutter/breez_liquid_sdk/include/breez_liquid_sdk.h ios/Classes
|
||||||
cp -r ../build/lib/bindings/langs/flutter/lib .
|
cp ../build/packages/flutter/analysis_options.yaml .
|
||||||
cp ../build/lib/bindings/langs/flutter/pubspec.yaml .
|
cp ../build/packages/flutter/pubspec.yaml .
|
||||||
cp ../build/lib/bindings/langs/flutter/pubspec.lock .
|
cp ../build/packages/flutter/pubspec_overrides.yaml .
|
||||||
|
|
||||||
- name: Copy docs
|
- name: Copy docs
|
||||||
working-directory: dist
|
working-directory: dist
|
||||||
run: |
|
run: |
|
||||||
cp ../build/lib/bindings/langs/flutter/README.pub.md README.md || true
|
cp ../build/packages/flutter/CHANGELOG.md . || true
|
||||||
cp ../build/lib/bindings/langs/flutter/CHANGELOG.md . || true
|
cp ../build/packages/flutter/LICENSE . || true
|
||||||
|
cp ../build/packages/flutter/README.md . || true
|
||||||
|
|
||||||
- uses: actions/download-artifact@v3
|
- uses: actions/download-artifact@v3
|
||||||
with:
|
with:
|
||||||
name: bindings-swift
|
name: bindings-flutter
|
||||||
path: dist/ios/bindings-swift/Sources/BreezLiquidSDK/
|
path: bindings/
|
||||||
|
|
||||||
- name: Set package version
|
- name: Set package version
|
||||||
working-directory: dist
|
working-directory: dist
|
||||||
run: |
|
run: |
|
||||||
sed -i.bak -e 's/version:.*/version: ${{ inputs.package-version }}/' pubspec.yaml
|
sed -i.bak -e 's/version:.*/version: ${{ inputs.package-version }}/' pubspec.yaml
|
||||||
sed -i.bak -e "s/^version .*/version '${{ inputs.package-version }}'/" langs/android/build.gradle
|
sed -i.bak -e 's/path:.*/git:\n url: git@github.com:breez\/breez-liquid-sdk-dart.git\n ref: ${{ inputs.package-version }}/' pubspec_overrides.yaml
|
||||||
sed -i.bak -e "s/^tag_version = .*/tag_version = '${{ inputs.package-version }}'/" ios/breez_liquid_sdk.podspec
|
sed -i.bak -e "s/^version .*/version '${{ inputs.package-version }}'/" android/build.gradle
|
||||||
|
sed -i.bak -e 's/set(TagName.*/set(TagName "v${{ inputs.package-version }}")/' android/CMakeLists.txt
|
||||||
|
sed -i.bak -e "s/^version = .*/version = '${{ inputs.package-version }}'/" ios/flutter_breez_liquid.podspec
|
||||||
rm pubspec.yaml.bak
|
rm pubspec.yaml.bak
|
||||||
rm langs/android/build.gradle.bak
|
rm pubspec_overrides.yaml.bak
|
||||||
rm ios/breez_liquid_sdk.podspec.bak
|
rm android/build.gradle.bak
|
||||||
|
rm android/CMakeLists.txt.bak
|
||||||
|
rm ios/flutter_breez_liquid.podspec.bak
|
||||||
|
|
||||||
- name: Archive flutter release
|
- name: Archive flutter release
|
||||||
uses: actions/upload-artifact@v3
|
uses: actions/upload-artifact@v3
|
||||||
@@ -97,7 +105,21 @@ jobs:
|
|||||||
git config --global user.email github-actions@github.com
|
git config --global user.email github-actions@github.com
|
||||||
git config --global user.name github-actions
|
git config --global user.name github-actions
|
||||||
git add .
|
git add .
|
||||||
git commit -m "Update Breez SDK Flutter package to version v${{ inputs.package-version }}"
|
git commit -m "Update Flutter package to version v${{ inputs.package-version }}"
|
||||||
git push
|
git push
|
||||||
git tag v${{ inputs.package-version }} -m "v${{ inputs.package-version }}"
|
git tag v${{ inputs.package-version }} -m "v${{ inputs.package-version }}"
|
||||||
git push --tags
|
git push --tags
|
||||||
|
|
||||||
|
- name: Release and attach binary artifacts
|
||||||
|
if: ${{ inputs.publish }}
|
||||||
|
uses: softprops/action-gh-release@v2
|
||||||
|
with:
|
||||||
|
repository: breez/breez-liquid-sdk-flutter
|
||||||
|
files: |
|
||||||
|
bindings/android.tar.gz
|
||||||
|
bindings/breez_liquid_sdk.xcframework.zip
|
||||||
|
bindings/other.tar.gz
|
||||||
|
tag_name: v${{ inputs.package-version || '0.0.1' }}
|
||||||
|
generate_release_notes: false
|
||||||
|
token: ${{ secrets.SWIFT_RELEASE_TOKEN }}
|
||||||
|
prerelease: true
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
curr_version := "breez_liquid-v" + `awk '/^version: /{print $2}' ../../../../packages/dart/pubspec.yaml`
|
curr_version := "breez_liquid-v" + `awk '/^version: /{print $2}' ../../../../packages/flutter/pubspec.yaml`
|
||||||
frb_bin := "flutter_rust_bridge_codegen generate"
|
frb_bin := "flutter_rust_bridge_codegen generate"
|
||||||
|
|
||||||
export CARGO_TERM_COLOR := "always"
|
export CARGO_TERM_COLOR := "always"
|
||||||
|
|||||||
@@ -61,10 +61,10 @@ packages:
|
|||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: collection
|
name: collection
|
||||||
sha256: ee67cb0715911d28db6bf4af1026078bd6f0128b07a5f66fb2ed94ec6783c09a
|
sha256: a1ace0a119f20aabc852d165077c036cd864315bd99b7eaa10a60100341941bf
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "1.18.0"
|
version: "1.19.0"
|
||||||
conventional_commit:
|
conventional_commit:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
@@ -109,10 +109,10 @@ packages:
|
|||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: http_parser
|
name: http_parser
|
||||||
sha256: "2aa08ce0341cc9b354a498388e30986515406668dbcc4f7c950c3e715496693b"
|
sha256: "40f592dd352890c3b60fec1b68e786cefb9603e05ff303dbc4dda49b304ecdf4"
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "4.0.2"
|
version: "4.1.0"
|
||||||
io:
|
io:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
@@ -181,10 +181,10 @@ packages:
|
|||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: platform
|
name: platform
|
||||||
sha256: "12220bb4b65720483f8fa9450b4332347737cf8213dd2840d8b2c823e47243ec"
|
sha256: "9b71283fc13df574056616011fb138fd3b793ea47cc509c189a6c3fa5f8a1a65"
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "3.1.4"
|
version: "3.1.5"
|
||||||
pool:
|
pool:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
@@ -285,10 +285,10 @@ packages:
|
|||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: test_api
|
name: test_api
|
||||||
sha256: "2419f20b0c8677b2d67c8ac4d1ac7372d862dc6c460cdbb052b40155408cd794"
|
sha256: "5b8a98dafc4d5c4c9c72d8b31ab2b23fc13422348d2997120294d3bac86b4ddb"
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "0.7.1"
|
version: "0.7.2"
|
||||||
typed_data:
|
typed_data:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
|
|||||||
@@ -1,19 +1,19 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
ROOT="../../../.."
|
||||||
CURR_VERSION=breez_liquid-v`awk '/^version: /{print $2}' ../../../packages/dart/pubspec.yaml`
|
TAG_NAME=`awk '/^version: /{print $2}' $ROOT/packages/flutter/pubspec.yaml`
|
||||||
|
|
||||||
# iOS & macOS
|
# iOS & macOS
|
||||||
APPLE_HEADER="release_tag_name = '$CURR_VERSION' # generated; do not edit"
|
APPLE_HEADER="version = '$TAG_NAME' # generated; do not edit"
|
||||||
sed -i.bak "1 s/.*/$APPLE_HEADER/" ../../../packages/flutter/ios/flutter_breez_liquid.podspec
|
sed -i.bak "1 s/.*/$APPLE_HEADER/" $ROOT/packages/flutter/ios/flutter_breez_liquid.podspec
|
||||||
sed -i.bak "1 s/.*/$APPLE_HEADER/" ../../../packages/flutter/macos/flutter_breez_liquid.podspec
|
sed -i.bak "1 s/.*/$APPLE_HEADER/" $ROOT/packages/flutter/macos/flutter_breez_liquid.podspec
|
||||||
rm ../../../packages/flutter/macos/*.bak ../../../packages/flutter/ios/*.bak
|
rm $ROOT/packages/flutter/macos/*.bak $ROOT/packages/flutter/ios/*.bak
|
||||||
|
|
||||||
# CMake platforms (Linux, Windows, and Android)
|
# CMake platforms (Linux, Windows, and Android)
|
||||||
CMAKE_HEADER="set(LibraryVersion \"$CURR_VERSION\") # generated; do not edit"
|
CMAKE_HEADER="set(TagName \"v$TAG_NAME\") # generated; do not edit"
|
||||||
for CMAKE_PLATFORM in android linux windows
|
for CMAKE_PLATFORM in android linux windows
|
||||||
do
|
do
|
||||||
sed -i.bak "1 s/.*/$CMAKE_HEADER/" ../../../packages/flutter/$CMAKE_PLATFORM/CMakeLists.txt
|
sed -i.bak "1 s/.*/$CMAKE_HEADER/" $ROOT/packages/flutter/$CMAKE_PLATFORM/CMakeLists.txt
|
||||||
rm ../../../packages/flutter/$CMAKE_PLATFORM/*.bak
|
rm $ROOT/packages/flutter/$CMAKE_PLATFORM/*.bak
|
||||||
done
|
done
|
||||||
|
|
||||||
git add ../../../packages/flutter/
|
git add $ROOT/packages/flutter/
|
||||||
@@ -2,7 +2,8 @@ name: breez_liquid
|
|||||||
description: Dart bindings for the Breez Liquid SDK
|
description: Dart bindings for the Breez Liquid SDK
|
||||||
version: 0.1.0
|
version: 0.1.0
|
||||||
homepage: https://breez.technology
|
homepage: https://breez.technology
|
||||||
repository: https://github.com/breez/breez-liquid-sdk
|
repository: https://github.com/breez/breez-liquid-sdk-dart
|
||||||
|
publish_to: 'none'
|
||||||
|
|
||||||
platforms:
|
platforms:
|
||||||
macos:
|
macos:
|
||||||
|
|||||||
@@ -3,11 +3,30 @@
|
|||||||
[](https://pub.dev/packages/breez_liquid_sdk)
|
[](https://pub.dev/packages/breez_liquid_sdk)
|
||||||
|
|
||||||
## Table of contents
|
## Table of contents
|
||||||
|
- [Platform Support](#platform-support)
|
||||||
|
- [Requirements](#requirements)
|
||||||
- [Description](#description)
|
- [Description](#description)
|
||||||
- [Installation](#installation)
|
- [Installation](#installation)
|
||||||
- [Usage](#usage)
|
- [Usage](#usage)
|
||||||
- [Documentation](#documentation)
|
- [Documentation](#documentation)
|
||||||
|
|
||||||
|
## Platform Support
|
||||||
|
|
||||||
|
| Android | iOS | MacOS | Web | Linux | Windows |
|
||||||
|
| :-----: | :-: | :---: | :-: | :---: | :----: |
|
||||||
|
| ✅ | ❎ | ❎ | ❎ | ❎ | ❎ |
|
||||||
|
|
||||||
|
## Requirements
|
||||||
|
|
||||||
|
- Flutter >=3.10.0
|
||||||
|
- Dart >=3.4.0 <4.0.0
|
||||||
|
- iOS >=12.0
|
||||||
|
- MacOS >=10.11
|
||||||
|
- Android `compileSDK` 31
|
||||||
|
- Java 1.8
|
||||||
|
- Android Gradle Plugin >=7.1.2
|
||||||
|
- Gradle wrapper >=7.4
|
||||||
|
|
||||||
## Description
|
## Description
|
||||||
|
|
||||||
This is a Flutter package that wraps the Dart bindings of [Breez Liquid SDK](https://github.com/breez/breez-liquid-sdk?tab=readme-ov-file#readme).
|
This is a Flutter package that wraps the Dart bindings of [Breez Liquid SDK](https://github.com/breez/breez-liquid-sdk?tab=readme-ov-file#readme).
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
set(LibraryVersion "breez_liquid-v0.1.0") # generated; do not edit
|
set(TagName "v0.1.0") # generated; do not edit
|
||||||
|
set(LibraryVersion "breez_liquid-${TagName}")
|
||||||
|
|
||||||
# Unlike the Windows & Linux CMakeLists.txt, this Android equivalent is just here
|
# Unlike the Windows & Linux CMakeLists.txt, this Android equivalent is just here
|
||||||
# to download the Android binaries into src/main/jniLibs/ and does not build anything.
|
# to download the Android binaries into src/main/jniLibs/ and does not build anything.
|
||||||
@@ -15,7 +16,7 @@ set(LibRoot "${CMAKE_CURRENT_SOURCE_DIR}/src/main/jniLibs")
|
|||||||
set(ArchivePath "${CMAKE_CURRENT_SOURCE_DIR}/${LibraryVersion}.tar.gz")
|
set(ArchivePath "${CMAKE_CURRENT_SOURCE_DIR}/${LibraryVersion}.tar.gz")
|
||||||
if(NOT EXISTS ${ArchivePath})
|
if(NOT EXISTS ${ArchivePath})
|
||||||
file(DOWNLOAD
|
file(DOWNLOAD
|
||||||
"https://github.com/breez/breez-liquid-sdk/releases/download/${LibraryVersion}/android.tar.gz"
|
"https://github.com/breez/breez-liquid-sdk-flutter/releases/download/${TagName}/android.tar.gz"
|
||||||
${ArchivePath}
|
${ArchivePath}
|
||||||
TLS_VERIFY ON
|
TLS_VERIFY ON
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -12,7 +12,9 @@ dependencies:
|
|||||||
sdk: flutter
|
sdk: flutter
|
||||||
|
|
||||||
flutter_rust_bridge: ^2.0.0
|
flutter_rust_bridge: ^2.0.0
|
||||||
flutter_breez_liquid: ^0.1.0
|
flutter_breez_liquid:
|
||||||
|
git:
|
||||||
|
url: https://github.com/breez/breez-liquid-sdk-flutter
|
||||||
# When depending on this package from a real application you should use:
|
# When depending on this package from a real application you should use:
|
||||||
# flutter_breez_liquid: ^x.y.z
|
# flutter_breez_liquid: ^x.y.z
|
||||||
# See https://dart.dev/tools/pub/dependencies#version-constraints
|
# See https://dart.dev/tools/pub/dependencies#version-constraints
|
||||||
|
|||||||
@@ -1,27 +1,17 @@
|
|||||||
release_tag_name = 'breez_liquid-v0.1.0' # generated; do not edit
|
version = '0.1.0' # generated; do not edit
|
||||||
|
tag_name = "v#{version}"
|
||||||
|
release_tag_name = "breez_liquid-#{tag_name}"
|
||||||
|
|
||||||
# We cannot distribute the XCFramework alongside the library directly,
|
# We cannot distribute the XCFramework alongside the library directly,
|
||||||
# so we have to fetch the correct version here.
|
# so we have to fetch the correct version here.
|
||||||
framework_name = 'breez_liquid_sdk.xcframework'
|
framework_name = 'breez_liquid_sdk.xcframework'
|
||||||
remote_zip_name = "#{framework_name}.zip"
|
remote_zip_name = "#{framework_name}.zip"
|
||||||
url = "https://github.com/breez/breez-liquid-sdk/releases/download/#{release_tag_name}/#{remote_zip_name}"
|
url = "https://github.com/breez/breez-liquid-sdk-flutter/releases/download/#{tag_name}/#{remote_zip_name}"
|
||||||
local_zip_name = "#{release_tag_name}.zip"
|
local_zip_name = "#{release_tag_name}.zip"
|
||||||
`
|
|
||||||
cd Frameworks
|
|
||||||
rm -rf #{framework_name}
|
|
||||||
|
|
||||||
if [ ! -f #{local_zip_name} ]
|
|
||||||
then
|
|
||||||
curl -L #{url} -o #{local_zip_name}
|
|
||||||
fi
|
|
||||||
|
|
||||||
unzip #{local_zip_name}
|
|
||||||
cd -
|
|
||||||
`
|
|
||||||
|
|
||||||
Pod::Spec.new do |spec|
|
Pod::Spec.new do |spec|
|
||||||
spec.name = 'flutter_breez_liquid'
|
spec.name = 'flutter_breez_liquid'
|
||||||
spec.version = '0.1.0'
|
spec.version = "#{version}"
|
||||||
spec.license = { :file => '../LICENSE' }
|
spec.license = { :file => '../LICENSE' }
|
||||||
spec.homepage = 'https://breez.technology'
|
spec.homepage = 'https://breez.technology'
|
||||||
spec.authors = { 'Breez' => 'contact@breez.technology' }
|
spec.authors = { 'Breez' => 'contact@breez.technology' }
|
||||||
@@ -32,6 +22,19 @@ Pod::Spec.new do |spec|
|
|||||||
spec.public_header_files = 'Classes/**/*.h'
|
spec.public_header_files = 'Classes/**/*.h'
|
||||||
spec.vendored_frameworks = "Frameworks/#{framework_name}"
|
spec.vendored_frameworks = "Frameworks/#{framework_name}"
|
||||||
|
|
||||||
|
spec.prepare_command = <<-CMD
|
||||||
|
cd Frameworks
|
||||||
|
rm -rf #{framework_name}
|
||||||
|
|
||||||
|
if [ ! -f #{local_zip_name} ]
|
||||||
|
then
|
||||||
|
wget #{url} -O #{local_zip_name} || curl -L #{url} -o #{local_zip_name}
|
||||||
|
fi
|
||||||
|
|
||||||
|
unzip #{local_zip_name}
|
||||||
|
cd -
|
||||||
|
CMD
|
||||||
|
|
||||||
spec.ios.deployment_target = '12.0'
|
spec.ios.deployment_target = '12.0'
|
||||||
spec.osx.deployment_target = '10.11'
|
spec.osx.deployment_target = '10.11'
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
set(LibraryVersion "breez_liquid-v0.1.0") # generated; do not edit
|
set(TagName "v0.1.0") # generated; do not edit
|
||||||
|
set(LibraryVersion "breez_liquid-${TagName}")
|
||||||
|
|
||||||
# The Flutter tooling requires that developers have CMake 3.10 or later
|
# The Flutter tooling requires that developers have CMake 3.10 or later
|
||||||
# installed. You should not increase this version, as doing so will cause
|
# installed. You should not increase this version, as doing so will cause
|
||||||
@@ -14,7 +15,7 @@ set(LibRoot "${CMAKE_CURRENT_SOURCE_DIR}/${LibraryVersion}")
|
|||||||
set(ArchivePath "${LibRoot}.tar.gz")
|
set(ArchivePath "${LibRoot}.tar.gz")
|
||||||
if(NOT EXISTS ${ArchivePath})
|
if(NOT EXISTS ${ArchivePath})
|
||||||
file(DOWNLOAD
|
file(DOWNLOAD
|
||||||
"https://github.com/breez/breez-liquid-sdk/releases/download/${LibraryVersion}/other.tar.gz"
|
"https://github.com/breez/breez-liquid-sdk-flutter/releases/download/${TagName}/other.tar.gz"
|
||||||
${ArchivePath}
|
${ArchivePath}
|
||||||
TLS_VERIFY ON
|
TLS_VERIFY ON
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -1,27 +1,17 @@
|
|||||||
release_tag_name = 'breez_liquid-v0.1.0' # generated; do not edit
|
version = '0.1.0' # generated; do not edit
|
||||||
|
tag_name = "v#{version}"
|
||||||
|
release_tag_name = "breez_liquid-#{tag_name}"
|
||||||
|
|
||||||
# We cannot distribute the XCFramework alongside the library directly,
|
# We cannot distribute the XCFramework alongside the library directly,
|
||||||
# so we have to fetch the correct version here.
|
# so we have to fetch the correct version here.
|
||||||
framework_name = 'breez_liquid_sdk.xcframework'
|
framework_name = 'breez_liquid_sdk.xcframework'
|
||||||
remote_zip_name = "#{framework_name}.zip"
|
remote_zip_name = "#{framework_name}.zip"
|
||||||
url = "https://github.com/breez/breez-liquid-sdk/releases/download/#{release_tag_name}/#{remote_zip_name}"
|
url = "https://github.com/breez/breez-liquid-sdk-flutter/releases/download/#{tag_name}/#{remote_zip_name}"
|
||||||
local_zip_name = "#{release_tag_name}.zip"
|
local_zip_name = "#{release_tag_name}.zip"
|
||||||
`
|
|
||||||
cd Frameworks
|
|
||||||
rm -rf #{framework_name}
|
|
||||||
|
|
||||||
if [ ! -f #{local_zip_name} ]
|
|
||||||
then
|
|
||||||
curl -L #{url} -o #{local_zip_name}
|
|
||||||
fi
|
|
||||||
|
|
||||||
unzip #{local_zip_name}
|
|
||||||
cd -
|
|
||||||
`
|
|
||||||
|
|
||||||
Pod::Spec.new do |spec|
|
Pod::Spec.new do |spec|
|
||||||
spec.name = 'flutter_breez_liquid'
|
spec.name = 'flutter_breez_liquid'
|
||||||
spec.version = '0.1.0'
|
spec.version = "#{version}"
|
||||||
spec.license = { :file => '../LICENSE' }
|
spec.license = { :file => '../LICENSE' }
|
||||||
spec.homepage = 'https://breez.technology'
|
spec.homepage = 'https://breez.technology'
|
||||||
spec.authors = { 'Breez' => 'contact@breez.technology' }
|
spec.authors = { 'Breez' => 'contact@breez.technology' }
|
||||||
@@ -32,6 +22,19 @@ Pod::Spec.new do |spec|
|
|||||||
spec.public_header_files = 'Classes/**/*.h'
|
spec.public_header_files = 'Classes/**/*.h'
|
||||||
spec.vendored_frameworks = "Frameworks/#{framework_name}"
|
spec.vendored_frameworks = "Frameworks/#{framework_name}"
|
||||||
|
|
||||||
|
spec.prepare_command = <<-CMD
|
||||||
|
cd Frameworks
|
||||||
|
rm -rf #{framework_name}
|
||||||
|
|
||||||
|
if [ ! -f #{local_zip_name} ]
|
||||||
|
then
|
||||||
|
wget #{url} -O #{local_zip_name} || curl -L #{url} -o #{local_zip_name}
|
||||||
|
fi
|
||||||
|
|
||||||
|
unzip #{local_zip_name}
|
||||||
|
cd -
|
||||||
|
CMD
|
||||||
|
|
||||||
spec.ios.deployment_target = '12.0'
|
spec.ios.deployment_target = '12.0'
|
||||||
spec.osx.deployment_target = '10.11'
|
spec.osx.deployment_target = '10.11'
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -2,6 +2,8 @@ name: flutter_breez_liquid
|
|||||||
description: Flutter wrapper around Dart bindings for the Breez Liquid SDK
|
description: Flutter wrapper around Dart bindings for the Breez Liquid SDK
|
||||||
version: 0.1.0
|
version: 0.1.0
|
||||||
homepage: https://breez.technology
|
homepage: https://breez.technology
|
||||||
|
repository: https://github.com/breez/breez-liquid-sdk-flutter
|
||||||
|
publish_to: 'none'
|
||||||
|
|
||||||
environment:
|
environment:
|
||||||
sdk: '>=3.4.0 <4.0.0'
|
sdk: '>=3.4.0 <4.0.0'
|
||||||
@@ -10,7 +12,9 @@ environment:
|
|||||||
dependencies:
|
dependencies:
|
||||||
flutter:
|
flutter:
|
||||||
sdk: flutter
|
sdk: flutter
|
||||||
breez_liquid: ^0.1.0
|
breez_liquid:
|
||||||
|
git:
|
||||||
|
url: https://github.com/breez/breez-liquid-sdk-dart
|
||||||
ffigen: ">=8.0.0 <=11.0.0"
|
ffigen: ">=8.0.0 <=11.0.0"
|
||||||
|
|
||||||
dev_dependencies:
|
dev_dependencies:
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
set(LibraryVersion "breez_liquid-v0.1.0") # generated; do not edit
|
set(TagName "v0.1.0") # generated; do not edit
|
||||||
|
set(LibraryVersion "breez_liquid-${TagName}")
|
||||||
|
|
||||||
# TODO Remove this workaround once Flutter supports Windows ARM.
|
# TODO Remove this workaround once Flutter supports Windows ARM.
|
||||||
# https://github.com/flutter/flutter/issues/116196
|
# https://github.com/flutter/flutter/issues/116196
|
||||||
@@ -19,7 +20,7 @@ set(LibRoot "${CMAKE_CURRENT_SOURCE_DIR}/${LibraryVersion}")
|
|||||||
set(ArchivePath "${LibRoot}.tar.gz")
|
set(ArchivePath "${LibRoot}.tar.gz")
|
||||||
if(NOT EXISTS ${ArchivePath})
|
if(NOT EXISTS ${ArchivePath})
|
||||||
file(DOWNLOAD
|
file(DOWNLOAD
|
||||||
"https://github.com/breez/breez-liquid-sdk/releases/download/${LibraryVersion}/other.tar.gz"
|
"https://github.com/breez/breez-liquid-sdk-flutter/releases/download/${TagName}/other.tar.gz"
|
||||||
${ArchivePath}
|
${ArchivePath}
|
||||||
TLS_VERIFY ON
|
TLS_VERIFY ON
|
||||||
)
|
)
|
||||||
|
|||||||
Reference in New Issue
Block a user