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

KarpelesLab / libwallet / 24815637377
25%

Build:
DEFAULT BRANCH: master
Ran 23 Apr 2026 03:55AM UTC
Jobs 1
Files 102
Run time 1min
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 03:48AM UTC coverage: 19.874% (-0.002%) from 19.876%
24815637377

push

github

MagicalTux
Info:version: expose release tag + runtime mismatch detection

Two related changes that turn the "Dart upgraded but native binary
didn't" footgun into a loud, actionable warning instead of cryptic
event-parsing failures.

Go side (wltbase/info.go):
- Add `version` global, populated from -ldflags on tag-triggered
  release builds (empty for dev/master).
- Include it in the Info:version response alongside dateTag/gitTag.
- Switch the dev-vs-release log-default heuristic to use `version`
  (more meaningful than gitTag, which is set on every build).

Build infra (Makefile + .github/workflows/build.yml):
- The pre-existing `-X main.dateTag=... -X main.gitTag=...` ldflags
  targeted the wrong package — those vars live in wltbase, not main.
  Every release binary has been shipping with empty dateTag/gitTag
  since the project started. Fixed to use the fully qualified
  package path (`-X github.com/KarpelesLab/libwallet/wltbase.*`).
- Propagated ldflags to the c-shared / c-archive Dart-FFI builds,
  which previously had NO version metadata at all.
- Compute TAG_VERSION from $GITHUB_REF_NAME on tag pushes; empty on
  branch pushes (silent no-op for the new `version` field).

Dart side:
- New `lib/src/version.dart` with a hardcoded `libwalletPackageVersion`
  constant. A unit test (test/version_constant_test.dart) parses
  pubspec.yaml and fails the build if the two drift — bump them in
  the same commit.
- LibwalletClient.initialize() async-fires a version check that calls
  Info:version and warns via dart:developer.log if the loaded native
  binary's version != libwalletPackageVersion (and the native version
  is non-empty — dev binaries skip the check). Message tells the host
  exactly what to do: `pod install --repo-update` on iOS, `dart pub
  get` elsewhere (cache is version-stamped since 0.3.26).
- info.version() returns the release tag string instead of the
  toString'd map (long-broken). Added info.versionInfo() returning a
  typed VersionInfo with all ... (continued)

7 of 8 new or added lines in 1 file covered. (87.5%)

2529 of 12725 relevant lines covered (19.87%)

63.2 hits per line

Uncovered Changes

Lines Coverage ∆ File
1
18.27
-0.18% wltbase/info.go
Jobs
ID Job ID Ran Files Coverage
1 24815637377.1 23 Apr 2026 03:55AM UTC 102
19.87
GitHub Action Run
Source Files on build 24815637377
  • Tree
  • List 102
  • Changed 2
  • Source Changed 2
  • Coverage Changed 1
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #24815637377
  • 4720461b on github
  • Prev Build on master (#24814418001)
  • Next Build on master (#24816014866)
  • 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