Skip to content

Commit 0738e18

Browse files
committed
flutter
1 parent 430b16e commit 0738e18

File tree

4 files changed

+30
-20
lines changed

4 files changed

+30
-20
lines changed

.github/workflows/flutter-release.yml

Lines changed: 13 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -250,9 +250,9 @@ jobs:
250250
path: wasm-package/
251251
retention-days: 1
252252

253-
# Publish to pub.dev
253+
# Publish to pub.dev (Android only - iOS downloads from GitHub Releases)
254254
publish-pubdev:
255-
needs: [generate-bindings, build-android, build-ios]
255+
needs: [generate-bindings, build-android]
256256
runs-on: ubuntu-latest
257257
permissions:
258258
id-token: write # Required for pub.dev OIDC authentication
@@ -281,11 +281,8 @@ jobs:
281281
name: android-x86_64
282282
path: packages/fula_client/android/src/main/jniLibs/
283283

284-
- name: Download iOS XCFramework
285-
uses: actions/download-artifact@v4
286-
with:
287-
name: ios-xcframework
288-
path: packages/fula_client/ios/Frameworks/
284+
# iOS binaries are NOT included - they're downloaded via podspec from GitHub Releases
285+
# This keeps the pub.dev package under 100MB limit
289286

290287
- name: Setup Flutter
291288
uses: subosito/flutter-action@v2
@@ -304,8 +301,8 @@ jobs:
304301
echo "Android libs:"
305302
ls -la packages/fula_client/android/src/main/jniLibs/ || echo "No jniLibs"
306303
echo ""
307-
echo "iOS frameworks:"
308-
ls -la packages/fula_client/ios/Frameworks/ || echo "No Frameworks"
304+
echo "Package size estimate:"
305+
du -sh packages/fula_client/
309306
310307
- name: Publish to pub.dev (dry run)
311308
working-directory: packages/fula_client
@@ -366,17 +363,19 @@ jobs:
366363
- name: Package artifacts
367364
run: |
368365
cd artifacts
369-
366+
370367
# Package Android libs
371368
mkdir -p android-libs
372369
cp -r android-arm64-v8a/* android-libs/
373370
cp -r android-armeabi-v7a/* android-libs/
374371
cp -r android-x86_64/* android-libs/
375372
zip -r android-libs.zip android-libs/
376-
377-
# Package iOS libs
378-
zip -r ios-libs.zip ios-xcframework/
379-
373+
374+
# Package iOS libs (must match podspec expected structure: Frameworks/FulaFlutter.xcframework)
375+
mkdir -p ios-package/Frameworks
376+
cp -r ios-xcframework/* ios-package/Frameworks/
377+
cd ios-package && zip -r ../ios-libs.zip Frameworks/ && cd ..
378+
380379
# Package WASM
381380
zip -r wasm-package.zip wasm-package/
382381

packages/fula_client/CHANGELOG.md

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,12 @@ All notable changes to this project will be documented in this file.
55
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
66
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
77

8-
## [0.2.2] - 2026-01-11
8+
## [0.2.3] - 2026-01-11
9+
10+
### Changed
11+
12+
- iOS binaries now downloaded from GitHub Releases during pod install
13+
- This reduces pub.dev package size from 160MB to ~12MB
914

1015
### Fixed
1116

packages/fula_client/ios/fula_client.podspec

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,12 @@
11
#
22
# CocoaPods specification for fula_client
33
#
4-
# This spec packages the pre-built Rust XCFramework for iOS.
5-
# The library is built by the CI/CD pipeline and included in the package.
4+
# Downloads pre-built XCFramework from GitHub Releases to keep pub.dev package small.
65
#
76

87
Pod::Spec.new do |s|
98
s.name = 'fula_client'
10-
s.version = '0.2.2'
9+
s.version = '0.2.3'
1110
s.summary = 'Flutter SDK for Fula decentralized storage'
1211
s.description = <<-DESC
1312
A Flutter plugin providing client-side encryption, metadata privacy,
@@ -29,7 +28,14 @@ Pod::Spec.new do |s|
2928
}
3029
s.swift_version = '5.0'
3130

32-
# Include the pre-built XCFramework (supports device + simulator)
31+
# Download XCFramework from GitHub Releases during pod install
32+
s.prepare_command = <<-CMD
33+
curl -L "https://github.com/functionland/fula-api/releases/download/v#{s.version}/ios-libs.zip" -o ios-libs.zip
34+
unzip -o ios-libs.zip -d .
35+
rm ios-libs.zip
36+
CMD
37+
38+
# Include the downloaded XCFramework
3339
s.vendored_frameworks = 'Frameworks/FulaFlutter.xcframework'
3440

3541
# Link required system frameworks

packages/fula_client/pubspec.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
name: fula_client
22
description: Flutter SDK for Fula decentralized storage with client-side encryption, metadata privacy, and secure sharing.
3-
version: 0.2.2
3+
version: 0.2.3
44
homepage: https://fx.land
55
repository: https://github.com/functionland/fula-api
66
issue_tracker: https://github.com/functionland/fula-api/issues

0 commit comments

Comments
 (0)