• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

KarpelesLab / libwallet / 24810798631 / 1
25%
master: 25%

Build:
DEFAULT BRANCH: master
Ran 23 Apr 2026 01:10AM UTC
Files 102
Run time 2s
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

23 Apr 2026 01:00AM UTC coverage: 19.876%. Remained the same
24810798631.1

push

github

MagicalTux
iOS: ship as Flutter FFI plugin to fix external dlsym failures

Dart's `code_assets` build hook produces a `LookupInProcess()`
CodeAsset for the iOS .a archive, but Flutter's iOS pipeline does
not reliably pass static archives from code_assets through to
Xcode's linker for external consumers. The result is a runtime
`dlsym` failure ("symbol not found: LibwalletInit") on the first
FFI call from any external app — the in-tree test_app worked
because its Podfile manually force-loaded a CI-built archive.

Fix by switching the iOS path to the Flutter FFI plugin contract:

- `dart/pubspec.yaml`: declare `flutter.plugin.platforms.ios.ffiPlugin`
  so Flutter auto-discovers the podspec.
- `dart/ios/libwallet.podspec`: at `pod install` time, download the
  matching per-SDK static archives from the GitHub Release (skipped
  if local copies exist), lipo the two simulator slices into a fat
  archive, then `-force_load` the right one per-SDK via per-sdk
  `OTHER_LDFLAGS` in user_target_xcconfig. Uses `preserve_paths`
  (not `vendored_libraries`) so CocoaPods doesn't auto-emit `-l`
  flags for the wrong-SDK archive on each build configuration.
- `dart/hook/build.dart`: skip iOS — the podspec is now the sole
  source of truth, and emitting a `LookupInProcess` asset would
  collide with Flutter's pod-driven link.
- `.github/workflows/dart-test.yml`: build sim-arm64 and device-arm64
  archives directly into `dart/ios/` so the podspec's prepare_command
  short-circuits the GitHub Release fetch (master commits don't have
  a matching pre-release tag).
- `dart/test_app/ios/{Podfile,Libwallet.podspec}`: drop the manual
  Libwallet pod entry — it now collides with the auto-included
  ffiPlugin pod from the parent package.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

2529 of 12724 relevant lines covered (19.88%)

61.18 hits per line

Source Files on job 24810798631.1
  • Tree
  • List 102
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Build 24810798631
  • 38e65a8f on github
  • Prev Job for on master (#24788503792.1)
  • Next Job for on master (#24810925153.1)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc