Skip to content

Update zano_native_lib to a523871 for HF6 support#14

Open
peachbits wants to merge 2 commits into
mainfrom
peachbits/zano-hf6-support
Open

Update zano_native_lib to a523871 for HF6 support#14
peachbits wants to merge 2 commits into
mainfrom
peachbits/zano-hf6-support

Conversation

@peachbits

@peachbits peachbits commented Jun 18, 2026

Copy link
Copy Markdown
Contributor

Description

Zano HF6 support: upgrade zano_native_lib to a523871.

Asana: https://app.asana.com/1/9976422036640/project/1213843652804305/task/1215784489950972

The HF6 release of zano_native_lib removed the raw _libs_ios OpenSSL and Boost archives the iOS build used to link against, and now ships prebuilt xcframeworks instead. This reworks the iOS path in update-sources.ts to compile the wrapper and link it against the prebuilt libzano-plain-wallet xcframework (which bundles Zano, Boost, and OpenSSL), while preserving the partial-link plus objcopy symbol localization so only zanoMethods and zanoMethodCount stay exported. Android is unchanged, since zano_native_lib still ships the raw _libs_android archives that path builds from.

The branch also carries a package-lock.json version sync (0.2.8 to 0.3.0) that the 0.3.0 release left stale.

Changes

  • Update zano_native_lib to a523871 for HF6.
  • Rework the iOS build to link against the prebuilt libzano-plain-wallet.xcframework.
  • Add CHANGELOG entries for both.
  • Sync package-lock.json to 0.3.0.

Testing

  • Android: built all four ABIs (librnzano.so for arm64-v8a, armeabi-v7a, x86, x86_64) with no errors.
  • iOS: built ZanoModule.xcframework (device slice plus fat simulator slice). Verified with nm that only _zanoMethods and _zanoMethodCount are exported and every other global symbol is localized.
  • Integration: copied both artifacts into a local edge-react-gui node_modules/react-native-zano and built the iOS app (Release, simulator). Result was ** BUILD SUCCEEDED ** with the zano symbols present in the app binary and no link errors attributable to this module.

Note

Medium Risk
iOS native linking and dependency packaging changed in a security-sensitive crypto wallet module; Android is untouched but HF6 upgrades affect shipped binaries.

Overview
Bumps zano_native_lib to a523871 for Zano HF6 and documents the change in the changelog.

Reworks the iOS path in update-sources.ts: instead of CMake-building Zano and linking _libs_ios Boost/OpenSSL archives, the script compiles the wrapper with headers from the prebuilt libzano-plain-wallet.xcframework, partial-links against libzano-plain-wallet.a, and still runs objcopy so only _zanoMethods and _zanoMethodCount stay exported. Android sourcing and build flow are unchanged.

Also syncs package-lock.json to version 0.3.0 (was still 0.2.8).

Reviewed by Cursor Bugbot for commit 893c48f. Bugbot is set up for automated code reviews on this repo. Configure here.

peachbits and others added 2 commits June 17, 2026 13:05
The v0.3.0 release bumped package.json but committed a stale
package-lock.json still recording 0.2.8. npm install resyncs the
lockfile version fields.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
The HF6 release of zano_native_lib removed the raw _libs_ios OpenSSL
and Boost archives that the iOS build linked against, and now ships
prebuilt xcframeworks instead. Rework the iOS path to compile the
wrapper and link it against the prebuilt libzano-plain-wallet
xcframework (which bundles Zano, Boost, and OpenSSL), preserving the
symbol-localization that exports only zanoMethods and zanoMethodCount.
Android still links the raw _libs_android archives, unchanged.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant