Changelog

Discover the latest releases from Nimiq ecosystem projects.
Albatross

Mainnet 2.1.0

This release targets the mainnet network and the testnet network. This release is backwards compatible with the previous v2.X.X releases.

What's changed

  • UX improvements to mktx by @jeffesquivels in #3925
  • web-client: return JsError instead of panicking when signing in-staking transactions by @jsdanielh in #3918
  • fix(tendermint): align locked-round check and de-duplicate it by @nibhar in #3912
  • Don't underflow helper_index on crafted partial merkle proofs by @viquezclaudio in #3905
  • Don't establish consensus on a head request with no responses by @viquezclaudio in #3911
  • Update tooling for signal upgrade with the warm key by @jsdanielh in #3938
  • Apply back pressure between the block queue and live sync by @nibhar in #3922
  • Staking: Account for and validate inactive stake when creating stakers by @ii-cruz in #3939
  • Bounds check slot numbers in ValidatorRegistry by @nibhar in #3941
  • Staking: Enforce validator status invariants on creation by @ii-cruz in #3940
  • Add more reward burn related testing by @ii-cruz in #3494
  • Live sync can hang indefinitely while retrying block diff requests by @ii-cruz in #3949
  • Fix panic on diffless block and chunk push by @ii-cruz in #3950
  • Update mainnet checkpoint to election block #59140800 by @jsdanielh in #3951

Dependencies

  • build(deps): bump the minor-and-patch-cargo-updates group across 1 directory with 8 updates by @dependabotbot in #3926
  • build(deps): bump base64 from 0.22.1 to 0.23.1 by @dependabotbot in #3937

Full Changelog: https://github.com/nimiq/core-rs-albatross/compare/v2.0.0...v2.1.0

Wallet

v3.2.12

Albatross

Mainnet 2.0.0

This release targets the mainnet network and the testnet network. It includes consensus breaking changes that are already adopted by the network, making previous v1.X.X releases not compatible with the current network.

What's changed

  • genesis: refresh MainAlbatross checkpoint election block by @jsdanielh in #3921
  • Add mktx to the docker image by @jsdanielh in #3923
  • Allow validators to signal protocol upgrades with their warm key by @paberr in #3924
  • Bound equivocation reporting window to the validity window by @jsdanielh in #3927
  • Bind validator signing keys into election header hash (v2+) by @jsdanielh in #3928
  • Commit and verify the macro block diff root by @nibhar in #3929
  • Bind skip block state_root into the aggregate proof by @viquezclaudio in #3930
  • Update the max supported version from 1 to 2 by @jsdanielh in #3931
  • Reject empty slot bands and duplicate addresses in validate_keys by @jsdanielh in #3932
  • Filter expired equivocation proofs at block production by @jsdanielh in #3933
  • Abstain from skip block aggregation on an incomplete accounts state by @jsdanielh in #3934

Full Changelog: https://github.com/nimiq/core-rs-albatross/compare/v1.7.2...v2.0.0

Albatross

Mainnet 1.7.2

This release targets the mainnet network and the testnet network. For mainnet this release is backwards compatible with the previous v1.X.X releases. For testnet this release is backwards compatible with previous v1.6.1+ releases.

What's changed

  • exposing protocol upgrade version and readd txs to mempool upon protocol upgrade by @ii-cruz in #3800
  • Updating security.md by @ii-cruz in #3858
  • mktx by @jeffesquivels in #3811
  • Time: patch gloo-timers locally by @Eligioo in #3845
  • Fixing web client flaky tests by @ii-cruz in #3771
  • Fix clippy warnings after the release of rust 1.97.0 by @jsdanielh in #3873
  • fix(mktx): make required global --validity-start work with a single flag by @jsdanielh in #3875
  • test: run curve differential tests on fixed edge cases to cut CI time by @jsdanielh in #3874
  • Fix crate feature compilation by @jsdanielh in #3877
  • web-client: return JsError instead of panicking on invalid signalData by @jsdanielh in #3883
  • light-blockchain: reject election blocks with an undecodable VRF seed in pico sync by @jsdanielh in #3882
  • Rename num_buffered_blocks to num_buffered_heights by @jsdanielh in #3900
  • Fix pre-genesis history loss in HistoryStoreMerger pagination by @jsdanielh in #3899
  • tendermint: set validValue for late proposals admitted in the precommit window by @nibhar in #3898
  • Reset the proposal timeout on Tendermint skip-ahead by @nibhar in #3897
  • Bound the Handel pending-contribution pool per sender by @nibhar in #3896
  • Remove dead tree_from_chunks by @jsdanielh in #3895
  • Sync the mempool's protocol version on ProtocolUpgrade events by @jsdanielh in #3890
  • Abort macro block proposal creation on an incomplete accounts state by @jsdanielh in #3889
  • fix(web-client): prevent WASM panics on malformed input by @jsdanielh in #3904

Dependencies

  • build(deps): bump the minor-and-patch-cargo-updates group across 1 directory with 6 updates by @dependabotbot in #3859
  • build(deps): bump docker/build-push-action from 7.2.0 to 7.3.0 in the minor-and-patch-actions-updates group across 1 directory by @dependabotbot in #3856
  • build(deps): Upgrade to ark-* 0.5.0 by @jsdanielh in #3863
  • build(deps): bump curve25519-dalek to 5.0.0 and sha2 to 0.11 by @jsdanielh in #3862
  • build(deps): bump actions/setup-node from 6 to 7 by @dependabotbot in #3871
  • build(deps): bump the minor-and-patch-cargo-updates group across 1 directory with 7 updates by @dependabotbot in #3876
  • build(deps): bump num-bigint from 0.4.6 to 0.5.1 by @dependabotbot in #3881
  • build(deps): Upgrade to ark-* 0.6.0 by @jsdanielh in #3885
  • build(deps): bump the minor-and-patch-cargo-updates group across 1 directory with 15 updates by @dependabotbot in #3887
  • build(deps): bump actions/setup-python from 6 to 7 by @dependabotbot in #3886
  • build(deps): bump quinn-proto from 0.11.14 to 0.11.16 by @dependabotbot in #3903
  • build(deps): bump postcss from 8.5.15 to 8.5.23 in /web-client/extras by @dependabotbot in #3902
  • build(deps): bump the minor-and-patch-cargo-updates group across 1 directory with 4 updates by @dependabotbot in #3901

Full Changelog: https://github.com/nimiq/core-rs-albatross/compare/v1.7.1...v1.7.2

Nimiq Pay

Release 2.19.0

2.19.0 — 2026-07-23

Mini Apps competition showcase

Discover the latest competition entries in a new Mini Apps showcase.

How to use: Open Mini Apps and explore the competition showcase.

Easier wallet recovery

Get helpful word suggestions while entering your recovery phrase, making wallet recovery faster and less error-prone.

How to use: Choose wallet recovery and start entering your recovery words to see suggestions.

Clearer pending payments

A new hint explains when an incoming NIM payment is still pending, so you know it is on its way.

More useful notifications

Payment notifications now have clearer details and include transaction memos when available.

All changes
  • chore: languages (44d2caca)
  • fix(tests): update testing guidelines to improve development efficiency (17e2ebf8)
  • feat(mini-apps): add competition showcase (66ad0161)
  • feat(login): add recovery word suggestions (e26be42f)
  • feat(home): add pending NIM hint (03de220e)
  • fix(notifications): refine payment notification content (2f0bc727)
  • feat(notifications): show transaction memos (2b721ed8)
Wallet

v3.2.11

  • Simplified the wallet status modal into a help page (nimiq.watch + Discord), and removed AscendEX from the exchange lists.
  • Minor UI bugfixes & improvements
Nimiq Pay

Release 2.18.1

2.18.1 — 2026-07-15

Better Mini App icons

Mini App icons now load only when needed and are saved for faster access later, improving privacy and performance.

Cleaner in-app browsing

Fixed extra spacing that could appear while viewing content inside Nimiq Pay.

Clearer wording

Updated messages throughout the app to use more consistent, platform-neutral language.

All changes
  • chore: change e2e test command to use maestro (c4ced7c4)
  • fix(release): prompt for changelog AI CLI (14c337e5)
  • chore: languages (36f79f42)
  • fix(naka): disable issuer API (ac25206f)
  • fix: updating capacitor-inappbrowser to fix a double margin inset in Android <15 (eac4ff8d)
  • feat(screenshots): add store preview exporter (df7e38d1)
  • fix: remove platform-specific app references (b737112a)
  • feat(mini-apps): fetch icons natively, lazy and cached (9b24cf41)
Nimiq Pay

Release 2.18.0

2.18.0 — 2026-07-09

Enter amounts in crypto or fiat

You can now type any amount in either the crypto amount or its fiat value, whichever is easier for you. The app converts it for you automatically.

How to use: When sending or requesting, tap the amount field and switch between crypto and your local currency.

Secure pending NIM in one tap

Got NIM waiting to be secured? Just tap your pending NIM on the home screen to lock it in right away instead of waiting.

How to use: On the Home screen, tap your pending NIM balance to secure it.

What's New in the app

See exactly what changed with each update. A friendly summary now appears after you update, with older release notes available anytime.

Smoother Mini Apps

Your most recently used Mini Apps now appear first, each app shows up only once, and opening them is faster and more reliable. Apps without an image now show a clean fallback icon.

How to use: Find your recent Mini Apps in the row at the bottom of the Home screen.

Reliability & polish

Faster PIN entry, more dependable incoming-payment notifications, a correct app icon on Android notifications, and "Withdraw All" now clears every last bit of NIM. Biometric login is also disabled when no PIN is set, for better security.

All changes
  • chore: make changelog ai backend selection interactive (158fc3b9)
  • chore: languages (62428a0e)
  • feat(analytics): add top_up_received event (d626fcb1)
  • fix: disable biometric login when pin code is missing (e9da741d)
  • feat: allow entering amounts in crypto or fiat (ffa73600)
  • feat(home-footer): prioritize recent mini apps and add icon fallback (08d58637)
  • fix(e2e): correct maestro assertions for real device (2e36d0a9)
  • feat(home-amounts): replace count-up with rolling number animation (b7b14e75)
  • fix(remote-signer): gate expired htlc check on remaining balance (406d9d85)
  • fix(mini-apps): dedupe recently-viewed entries by hostname (51b5394d)
  • chore(docs): update AGENTS.md to clarify common mistakes and guidelines for agents (5685a68d)
  • fix(incoming-payment): stop auto-saving senders (34cd49d0)
  • fix(mini-app): prevent stacked webviews and unreliable opening (57eeb303)
  • fix(htlc): create HTLC below threshold when stale expired remote balance is drained (6deb71f4)
  • fix(local-notifications): always fire incoming payment notifications (48483cd1)
  • fix(local-notifications): use Nimiq Pay icon on Android (517d92c8)
  • fix(nim-withdraw): Withdraw All dust from fiat rounding (8f8fe7cb)
  • feat(home): tap pending NIM to secure into HTLC (8f3142c9)
  • fix(htlc): force below-threshold deposits to HTLC on fresh wallet (df15886a)
  • fix(pin): unblock fast PIN input by sharing hidden input across steps (31fcbc47)
  • feat(changelog): add what's new modal and release notifications (362b6f62)
  • docs: clarify instructions on simplifying code (a6117fdd)
Nimiq Pay

Release 2.17.0

  • fix(naka): disable naka, remove monetplus
  • chore(i18n): extract strings
  • fix(nimiq-network): harden against Nimiq WASM instantiation failures
  • feat(analytics): add reportCriticalError for invariant violations
  • fix(sw): add tombstone service worker to clear legacy cache
  • 🚀 Release v2.16.5
  • test(vitest): increase timeouts and add CI retry logic for cold vite builds

🔧 Chores

  • languages
  • update nimiq/core
  • update fastlane
Albatross

Mainnet 1.7.1

This release targets the mainnet network and the testnet network. For mainnet this release is backwards compatible with the previous v1.X.X releases. For testnet this release is backwards compatible with previous v1.6.1+ releases.

What's changed

  • web-client: Make pico the default sync mode in the client configuration by @jsdanielh in #3823
  • feat(primitives): add per-fork upgrade activation registry by @jsdanielh in #3829
  • rpc-client: add CLI subcommands for missing RPC methods by @jsdanielh in #3832
  • bls: speed up signature verification with one multi-Miller loop by @jsdanielh in #3825
  • validator: cache hash-to-G1 points in the Handel verifiers by @jsdanielh in #3826
  • ci: Remove unexistent feature from test compilation by @jsdanielh in #3834
  • Remove pow-migration crate by @viquezclaudio in #3837
  • Properly set up RequestProposal receive request handlers by @nibhar in #3827
  • validator: fix version-upgrade trigger by @jsdanielh in #3808
  • Add protocol-upgrade signaling dashboard (web client) by @paberr in #3836
  • web-client: build the types target in the upgrade-dashboard compose by @viquezclaudio in #3846
  • Fix panic when reverting a jail penalty by @jsdanielh in #3848
  • fix(primitives): bound validator slot total in Validators deserialize by @jsdanielh in #3849
  • Prevent modulo-by-zero panic from over-covering punished set by @jsdanielh in #3850
  • Fix non-terminating loop in MMR proof verification by @jsdanielh in #3851
  • trie: reject ROOT key in apply_diff complete-part branch by @jsdanielh in #3852
  • blockchain: compute reward recipients from the in-flight txn by @jsdanielh in #3853
  • genesis: refresh MainAlbatross checkpoint election block by @jsdanielh in #3854

Dependencies

  • build(deps): bump the minor-and-patch-cargo-updates group across 1 directory with 5 updates by @dependabotbot in #3822
  • build(deps): bump hashlink from 0.11.1 to 0.12.0 by @dependabotbot in #3802
  • build(deps): bump itertools from 0.14.0 to 0.15.0 by @dependabotbot in #3831
  • build(deps): bump the minor-and-patch-cargo-updates group across 1 directory with 4 updates by @dependabotbot in #3840
  • build(deps): bump actions/checkout from 6 to 7 by @dependabotbot in #3838
  • build(deps): bump prometheus-client from 0.24.1 to 0.25.0 by @dependabotbot in #3824

Full Changelog: https://github.com/nimiq/core-rs-albatross/compare/v1.7.0...v1.7.1

Hub

v2.4.2

  • Now USDC and USDT are supported to be sent by third party apps via the Nimiq Hub.
Nimiq Pay

Release 2.16.0

  • chore(deps): update @nimiq/core to version 2.7.0
  • feat(auth): harden login flows against silent failures and add log export
  • feat(sync): surface cached transactions without blocking initial sync
  • feat(home): show last known balance instead of skeleton during HTLC transitions
  • feat(screenshots): add new screenshots for Top Up and QR scanner flows

✨ Features

  • gate HTLC creation on accumulating threshold with pending display

🐛 Bug Fixes

  • updating in app browser plugin to fix duplicated identifier crash on Android

🔧 Chores

  • language
Albatross

Mainnet 1.7.0

This release targets the mainnet network and the testnet network. For mainnet this release is backwards compatible with the previous v1.X.X releases. For testnet this release is backwards compatible with the previous v1.6.1 release.

What's changed

  • Web client: validate seedNodes input instead of panicking by @Eligioo in #3804
  • Make the nimiq-client version available via RPC and as CLI argument by @Eligioo in #3429
  • Merkle: reject empty chunk_hashes when computing the root by @Eligioo in #3805
  • web-client: expose the client version via getVersion by @jsdanielh in #3806
  • rpc-client: fix inverted --previous-penalized flag for penalized-slots by @jsdanielh in #3807
  • Fix automatic reactivation setting in validator dispatcher by @ii-cruz in #3812
  • RPC: Saturating add on validity start height + block number by @ii-cruz in #3813
  • rpc-client: Remove unwanted debug log by @jsdanielh in #3809
  • account: gate revert_jail_validator deactivation log on newly_deactivated by @jsdanielh in #3810
  • Add Vite plugin export by @onmax in #3497
  • tendermint: reject non-disjoint contributor sets in aggregate verification by @jsdanielh in #3815
  • handel: reject empty partitioner levels in Evaluator::verify by @jsdanielh in #3816
  • consensus: validate proven transactions against the requested hashes by @jsdanielh in #3817
  • tendermint: allow late proposals to finish an aggregation by @jsdanielh in #3818
  • fix: reject all-zero default public key as a signature signer by @jsdanielh in #3819
  • Remove ZKP by @jsdanielh in #3820
  • Add checkpoints to pico sync fallback by @jsdanielh in #3821

Dependencies

  • build(deps): bump codecov/codecov-action from 6 to 7 by @dependabotbot in #3798

Full Changelog: https://github.com/nimiq/core-rs-albatross/compare/v1.6.1...v1.7.0

Nimiq Pay

Release 2.15.0

  • chore(dependencies): update @nimiq/core to version 2.6.1
  • build(fastlane): generate store screenshots via Maestro
  • feat(mock-data): add mock data mode
  • feat(mini-apps): add long-press actions sheet
  • chore(dependencies): update @nimiq/core to version 2.6.0
  • feat(network): track consensus establishment time in logs and PostHog
  • feat(faucet): add Testnet faucet to fund fresh Pay App accounts
  • fix(scanner): parse short-form EIP-681 polygon receive QR
  • feat(lockdown): detect iOS Lockdown Mode and show blocking screen
  • test(mini-app): mock isNativePlatform and Keyboard in launcher specs

🔧 Chores

  • languages
  • remove graphify integration
Albatross

Mainnet 1.6.1

This release targets the mainnet network and the testnet network. For mainnet this release is backwards compatible with the previous v1.X.X releases.

What's changed

Dependencies

  • Upgrade rand/rand_core and rand_chacha to 0.10 by @jsdanielh in #3615
  • build(deps): bump the minor-and-patch-cargo-updates group across 1 directory with 6 updates by @dependabotbot in #3796

Full Changelog: https://github.com/nimiq/core-rs-albatross/compare/v1.6.0...v1.6.1

Albatross

Mainnet 1.6.0

What's changed

Dependencies

  • build(deps): bump the minor-and-patch-cargo-updates group across 1 directory with 7 updates by @dependabotbot in #3774
  • build(deps): bump openssl from 0.10.79 to 0.10.80 by @dependabotbot in #3775
  • build(deps): bump docker/build-push-action from 7.1.0 to 7.2.0 in the minor-and-patch-actions-updates group across 1 directory by @dependabotbot in #3770
  • build(deps-dev): bump vitest from 2.1.9 to 4.1.0 in /web-client/extras by @dependabotbot in #3781

Full Changelog: https://github.com/nimiq/core-rs-albatross/compare/v1.5.1...v1.6.0

Nimiq Pay

Release 2.14.0

  • feat(mini-app): dismiss keyboard before opening webview to prevent layout issues
  • test(e2e): update stale selectors for USDT top-up title and untrusted mini app modal
  • fix(login): distribute pasted seed phrase across recovery-word inputs
  • test(mini-apps): stub useRemoteSigner in deviceId host spec
  • feat(mini-apps): expose user fiat to mini apps
  • feat(mini-apps): cache approved accounts per webview session
  • fix(deep-link): streamline deep link handling and improve URL validation
  • feat(demo): include device identifier in the mini app demo
  • fix(wallet): set Entropy.SIZE before fromHex in getWords
  • fix(pwa): remove service worker causing PIN hang after binary update
  • fix(clipboard): suppress payment request preview for own addresses
  • feat(polygon): live tx listener + faster sync
  • feat(notifications): local notifications for incoming payments

🔧 Chores

  • updating capgo inappbrowser
  • updating fastlane
  • languages
Albatross

Mainnet 1.5.1

This release targets the mainnet network. This release is backwards compatible with the previous v1.X.X releases.

What's changed

Dependencies

  • build(deps): bump tokio-metrics from 0.4.9 to 0.5.0 by @dependabotbot in #3697

Full Changelog: https://github.com/nimiq/core-rs-albatross/compare/v1.5.0...v1.5.1

Nimiq Pay

Release 2.13.0

  • fix(logging): improve deposit failure diagnostics
  • fix(usdt): guard polygon sync on testnet
  • test(transaction-details): mock app store for useApp call
  • feat(addresses): allow alias on saved addresses
  • feat(mini-apps): add device identifier consent flow
  • fix(db): revert swap_htlcs CREATE to omit htlc_id
  • test(nim-withdraw): seed withdrawalAddress and auto-unmount
  • style(mini-apps): add bottom padding to discover modal list
  • feat(mini-apps): differentiate Nimiq vs EVM apps with badge + filter

✨ Features

  • long-press dev FAB to hide for session
  • swipe-to-delete recently-viewed mini apps
  • auto-reclaim expired USDT swap HTLCs
  • update to Capacitor 8 + deps update to last version

🐛 Bug Fixes

  • camera preview not flicking anymore
  • sending to wrong address in withdraw
  • don't render NaN on USDT withdraw screen
  • retireStaker is now retireStake
  • lint
  • dont allow multiple clicks on mini app list Closes APP-110

✅ Testing

  • align mini-app launcher specs with deferred guard

📦 Build

  • set vite target to esnext

👷 CI/CD

  • add unit-test job running vitest

🔧 Chores

  • languages
  • graphify
  • graph
Nimiq Pay

Release 2.12.0

  • feat(dev): add Polygon RPC selector to dev menu

✨ Features

  • updated capacitor extended dialog to support SVG logos

🐛 Bug Fixes

  • filter own-HTLC drains from Top-Up list via proof.creator
  • use awesome logo for mini-app footer and bottom sheets

🔧 Chores

  • languages
  • updated graph
Albatross

Mainnet 1.5.0

This release targets the mainnet network. This release is backwards compatible with the previous v1.X.X releases.

What's changed

Dependencies

  • build(deps): bump openssl from 0.10.75 to 0.10.78 by @dependabotbot in #3723
  • build(deps): bump postcss from 8.4.47 to 8.5.12 in /web-client/extras by @dependabotbot in #3730
  • Bump tracing-loki to 0.2.7 by @jeffesquivels in #3737
  • build(deps): bump openssl from 0.10.78 to 0.10.79 by @dependabotbot in #3743

Full Changelog: https://github.com/nimiq/core-rs-albatross/compare/v1.4.0...v1.5.0

Wallet

v3.2.4

You can now buy and sell crypto via Coinify. Buy NIM, BTC or USDC via bank transfer, credit card or Google/Apple Pay, or sell them for fiat to your bank account. Country restictions and KYC requirements may apply.

Nimiq Pay

Release 2.10.0

  • docs(ai): add reminder to execute lint and typecheck after changes

✨ Features

  • expose selected user language to mini apps
  • added switch to choose between default, testnet and mainnet
  • add analytics tracking for app and feature opens
  • add PostHog payment analytics
  • use nimiq awesome API to get dApps

🐛 Bug Fixes

  • change ring to a gray-100 to improve contrast with white background logos
  • keep updating-connection modal from getting stuck
  • prioritize footer mini apps by featured and recent
  • allow commas for amount input Closes APP-118

🔧 Chores

  • languages
  • update versionCode to 90 for release 2.9.0
Albatross

Mainnet 1.4.0

This release targets the mainnet network. This release is backwards compatible with the previous v1.X.X releases.

What's changed

Dependencies

  • build(deps): bump the minor-and-patch-cargo-updates group across 1 directory with 11 updates by @dependabotbot in #3671
  • build(deps): bump toml from 0.9.11+spec-1.1.0 to 1.1.0+spec-1.1.0 by @dependabotbot in #3673
  • build(deps): bump gloo-timers from 0.3.0 to 0.4.0 by @dependabotbot in #3674
  • build(deps): bump quinn-proto from 0.11.13 to 0.11.14 by @dependabotbot in #3635
  • build(deps): bump rollup from 4.22.4 to 4.59.0 in /web-client/extras by @dependabotbot in #3620
  • build(deps): bump picomatch from 2.3.1 to 2.3.2 in /web-client/extras by @dependabotbot in #3650
  • build(deps): bump minimatch from 3.1.2 to 3.1.5 in /web-client/extras by @dependabotbot in #3624
  • build(deps): bump tokio from 1.50.0 to 1.51.0 in the minor-and-patch-cargo-updates group by @dependabotbot in #3675
  • Update wasm-bindgen dependencies by @jsdanielh in #3686
  • build(deps): bump docker/build-push-action from 7.0.0 to 7.1.0 in the minor-and-patch-actions-updates group across 1 directory by @dependabotbot in #3683
  • build(deps): bump the minor-and-patch-cargo-updates group across 1 directory with 8 updates by @dependabotbot in #3696
  • build(deps): bump rustls-webpki from 0.103.10 to 0.103.12 by @dependabotbot in #3704
  • build(deps): bump afl from 0.17.1 to 0.18.1 by @dependabotbot in #3699
  • Update yamux from version 0.13.8 to 0.13.10 by @jsdanielh in #3712

New Contributors

Full Changelog: https://github.com/nimiq/core-rs-albatross/compare/v1.3.0...v1.4.0

Nimiq Pay

Release 2.9.0

  • USDT support
  • Mark message that fail to send as such
  • feat(livechat): restore live chat badge and unread count on app restart
  • Prevent thank-you-screen from briefly showing when sending first message
  • Use nativeFetch for Walkie-Talkie API, to avoid CORS issues
  • Layout fixes
  • fix(livechat): periodic status polling, line breaks, and auto-resize textarea
  • Add chat-end confirmation screen and thank-you screen
  • Lint fixes
  • fix(livechat): improve reliability and UX of Walkie-Talkie chat
  • Replace Chatlio live-chat integration with custom one
  • Try fixing CI to respect lockfile
  • Lint fix
  • v2.8.1
  • feat(analytics): identify users using device id This is necessary for proper analytics, funnel, etc.
  • fix(transactions): store untranslated staking title, translate at display time
  • test(mini-apps): fix modal harness setup
  • fix(transactions): wrong tx sender and recipient data order
  • fix(transactions): include staking in persisted reads
  • fix(mini-apps): require approval for chain changes
  • Fix linter error
  • Update to @nimiq/core v2.2.2 and make use of the new StakingDataBuilder
  • Fix missing fee property
  • fix(ios): allow all screen orientations
  • Add protobufjs to pnpm approved packages
  • Display staking data in tx confirmation sheet
  • Improve formatting of numbers and addresses in confirmation sheet
  • Fix staking demo app balance refresh
  • Add network type to confirmation request to show the right address
  • Fix restaking txs showing up in history while no remote exists
  • Correct tx confirmation screen for remove-stake transactions
  • Fix type errors
  • Handle staking transaction detection in history
  • Complete staking mini-app demo
  • Fetch remote signer transactions by latest first
  • Ignore validator pool restaking transactions in tx history
  • Fix SQL query for upserting transactions
  • Add a staking view to the demo dApp
  • Correctly sign staking transactions
  • Remove old, unused NimiqProvider implementation
  • Support for staking txs from mini-apps
  • Fix weird TS error
  • Linter fixes
  • Fix type error
  • Fix linter errors
  • Add support for receiving RPC calls that need to be made on behalf of the dApp.
  • Fix webview listeners not getting removed
  • Send mini-app URL and title to confirmation dialog
  • Require confirmation for listing accounts and signing messages
  • Correct return value for transaction confirmations
  • Remove webview listeners when closed
  • Remove PaymentPreview component for tx confirmations
  • Update to RPC interface for mini-app host and add more method handlers
  • Adjust mini-app host and demo app to web3-provider
  • Add web3-provider script
  • Derive ETH address from user's entropy
  • Use the PaymentPreview component for transaction confirmations
  • Use a better icon for Mini Apps in the menu
  • Change send/signTransaction to sendPayment
  • Transaction signing from mini-app
  • Running in Android emulator
  • Add demo Nimiq Mini-App
  • Implement MiniAppsHost
  • Add basic MiniAppsModal
  • Simplify Window type extension
  • Refactor internal result handling
  • Add a provider implementation
  • Initial interface for the NimiqProvider in mini-apps

✨ Features

  • infinite tx list in home screen
  • using mini-app-sdk package from npm
  • use posthog feature flag to enable NAKA Now we can change conditions in Posthog dashboard
  • minimal AGENT.md
  • agent skill for trust-web3-provider
  • gate mini apps behind env var
  • using new mini-apps-sdk
  • NIM fee for basic tx and atomic swaps
  • moved rpc to provider
  • show toast when switching chains
  • allow adding new chains WARN: Not tested
  • show toast if unsupported chain
  • added multiple EVM RPC and the ability to change RPC when switching chains
  • unlock screen orientation for dApps Closes APP-98
  • include description in recently viewed mini apps
  • implement posthog analytics into mini apps
  • recently viewed mini apps in discover modal
  • using birpc for webview communication
  • show mini apps button in home screen
  • new UI for mini apps discover modal with search functionality
  • reopen mini-app after pin input if app was reloaded after resume from background
  • open links with target="_blank" inside same webview
  • show more info in ETH transaction signing
  • use our node to get missing params in tx like nonce, gasLimit, etc. Using mevblocker node for now since it's whitelisted by Uniswap
  • use subtitle for sheet messages
  • using new sheets for connect and message signing and implement favicon retrieval for dApps
  • allow chain list
  • eth send transactions
  • eth signTypedMessage
  • sign message using eth
  • eth provider with wallet discovery
  • add some popular dapps
  • use capacitor-extended-dialog instead of custom webview for permission requests

🐛 Bug Fixes

  • increase initial history scan ranges and reset Polygon history state on transaction history clear
  • use Crypto enum instead of string literal in TransactionAmounts test
  • prevent duplicate navigation and stale step events in Flow and QR scanner
  • hide preview separator dots for empty slots
  • enter payment amounts in crypto units
  • TS error for mocked handler
  • lint
  • support wallet permissions flow
  • improved balance states
  • don't block logout if HCE fails
  • lint
  • clear cookies on open dApps could still have cookies if app was closed while in background and dApp was not properly closed
  • correct fee calculation in user confirmation request
  • lint
  • close webview when main app is locked
  • clear cookies after closing dApp Polymarket was keeping the session in cookies and doesnt allowed to login again until cookies were cleared Closes !APP-95
  • buffer not defined when trying to sign personal message Discovered in DappRadar
  • correct isDev assignment to use environment variable

♻️ Refactoring

  • move mini app list to its own store Get from an API + cache in the future
  • move confirmation requests to its own lib
  • security improved and removed duplicated code

🔧 Chores

  • languages
  • languages
  • update inappbrowser
  • languages
  • disable analytics in dev mode
  • preparation for testing releasing
  • extra logs for provider
  • export app to network to be able to access it through physical devices
Albatross

Mainnet 1.3.0

This release targets the mainnet network. This release is backwards compatible with the previous v1.X.X releases.

What's changed

  • web-client: Fix function name typo in StakingDataBuilder by @sisou in #3627
  • Fix missing proof-of-knowledge validation on voting key update by @jsdanielh in #3654
  • Fix peer contact book poisoning via future timestamps by @jsdanielh in #3655
  • Fix peer-triggerable panic during history sync by @jsdanielh in #3656
  • Fix quorum bypass via out-of-range BitSet signer indices by @jsdanielh in #3657
  • Fix underflow panic in vesting and HTLC insufficient funds error path by @jsdanielh in #3658
  • Fix panic on HistoryTreeProof length mismatch by @jsdanielh in #3659
  • Fix panic in RequestMacroChain with micro block locator by @jsdanielh in #3660
  • Fix off-by-one in proposal buffer signer bounds check by @jsdanielh in #3661
  • Fix crash via invalid election macro block validators voting key by @jsdanielh in #3662
  • Fix request/response codec reading entire stream before size validation by @jsdanielh in #3663
  • Fix discovery handler underflow when peer sends limit=0 by @jsdanielh in #3664
  • Fix stale response_channels on request/response inbound failure by @jsdanielh in #3665
  • Fix crash on duplicate discovery substream by @jsdanielh in #3666
  • Fix panic in history index request handlers on nodes without index by @jsdanielh in #3667
  • Fix election macro block interlink verification bypass by @jsdanielh in #3668
  • Fix validator and prover guide links by @AirMaTe in #3644

Dependencies

  • build(deps): bump actions/upload-artifact from 6 to 7 by @dependabotbot in #3621
  • build(deps): bump actions/download-artifact from 7 to 8 by @dependabotbot in #3622
  • build(deps): bump the minor-and-patch-cargo-updates group across 1 directory with 8 updates by @dependabotbot in #3626
  • build(deps): bump docker/login-action from 3 to 4 by @dependabotbot in #3628
  • build(deps): bump docker/build-push-action from 6.19.2 to 7.0.0 by @dependabotbot in #3634
  • build(deps): bump docker/metadata-action from 5 to 6 by @dependabotbot in #3633
  • build(deps): bump docker/setup-buildx-action from 3 to 4 by @dependabotbot in #3631
  • build(deps): bump libp2p-gossipsub from 0.49.2 to 0.49.3 by @dependabotbot in #3645
  • build(deps): bump rustls-webpki from 0.103.8 to 0.103.10 by @dependabotbot in #3647
  • build(deps): bump codecov/codecov-action from 5 to 6 by @dependabotbot in #3651

Full Changelog: https://github.com/nimiq/core-rs-albatross/compare/v1.2.2...v1.3.0

Albatross

Mainnet 1.2.2

This release targets the mainnet network. This release is backwards compatible with the previous v1.X.X releases.

What's changed

  • Fix some clippy warnings by @jsdanielh in #3537
  • Fix KeyPair.fromHex rejecting output from toHex by @onmax in #3551
  • Fix multiple OpenRPC schema issues by @onmax in #3502
  • Add producer to web-client PlainMicroBlock by @onmax in #3550
  • Add pkg.pr.new preview for web-client by @onmax in #3548
  • Remaining multisig methods for web-client by @sisou in #3573
  • web-client: Allow signing staking transactions with a different inner KeyPair by @sisou in #3585
  • blockchain: Add proposal body root verification by @jsdanielh in #3623

Dependencies

  • Update dependencies that were not populated by GH dependabot by @jsdanielh in #3536
  • build(deps): bump the minor-and-patch-cargo-updates group across 1 directory with 6 updates by @dependabotbot in #3543
  • build(deps): bump convert_case from 0.9.0 to 0.10.0 by @dependabotbot in #3545
  • build(deps): bump the minor-and-patch-cargo-updates group across 1 directory with 9 updates by @dependabotbot in #3554
  • build(deps): bump darling from 0.21.3 to 0.23.0 by @dependabotbot in #3556
  • build(deps): bump vite from 5.4.20 to 5.4.21 in /web-client/extras by @dependabotbot in #3515
  • build(deps): bump the minor-and-patch-cargo-updates group across 1 directory with 5 updates by @dependabotbot in #3562
  • build(deps): bump the minor-and-patch-cargo-updates group across 1 directory with 10 updates by @dependabotbot in #3568
  • build(deps): bump signal-hook from 0.3.18 to 0.4.1 by @dependabotbot in #3570
  • build(deps): bump the minor-and-patch-cargo-updates group across 1 directory with 10 updates by @dependabotbot in #3578
  • build(deps): bump the minor-and-patch-cargo-updates group across 1 directory with 6 updates by @dependabotbot in #3586
  • build(deps): bump the minor-and-patch-cargo-updates group with 6 updates by @dependabotbot in #3591
  • build(deps): bump convert_case from 0.10.0 to 0.11.0 by @dependabotbot in #3593
  • build(deps): bump time from 0.3.46 to 0.3.47 by @dependabotbot in #3596
  • build(deps): bump actions/setup-python from 5 to 6 by @dependabotbot in #3605
  • build(deps): bump actions/setup-node from 4 to 6 by @dependabotbot in #3606
  • build(deps): bump actions/download-artifact from 4 to 7 by @dependabotbot in #3604
  • build(deps): bump actions/checkout from 4 to 6 by @dependabotbot in #3603
  • build(deps): bump actions/upload-artifact from 4 to 6 by @dependabotbot in #3602
  • build(deps): bump docker/build-push-action from 6.10.0 to 6.19.2 in the minor-and-patch-actions-updates group by @dependabotbot in #3601
  • build(deps): bump the minor-and-patch-cargo-updates group across 1 directory with 6 updates by @dependabotbot in #3607
  • build(deps): bump the minor-and-patch-cargo-updates group across 1 directory with 5 updates by @dependabotbot in #3614

Full Changelog: https://github.com/nimiq/core-rs-albatross/compare/v1.2.1...v1.2.2

Wallet

v3.2.1

Introducing Backup Codes: Worry-free self-custody has always been a core principle of the Nimiq Wallet. Today, we are announcing a new way to recover your keys: Backup Codes, our third recovery method, which can be used as alternative or in addition to the existing Login File and Recovery Words. Learn more at https://www.nimiq.com/blog/worry-free-backup-codes

Hub

v2.3.3

  • Introducing Backup Codes: Worry-free self-custody has always been a core principle of the Nimiq Wallet. Today, we are announcing a new way to recover your keys: Backup Codes, our third recovery method, which can be used as alternative or in addition to the existing Login File and Recovery Words. Learn more at https://www.nimiq.com/blog/worry-free-backup-codes
  • Cashlink handling improvements
Keyguard

v2.3.1

Introducing Backup Codes: Worry-free self-custody has always been a core principle of the Nimiq Wallet. Today, we are announcing a new way to recover your keys: Backup Codes, our third recovery method, which can be used as alternative or in addition to the existing Login File and Recovery Words. Learn more at https://www.nimiq.com/blog/worry-free-backup-codes

Nimiq Pay

Release 2.7.5

🐛 Bug Fixes

  • app was unusable if geoIp failed Added extra login for future debugging

🔧 Chores

  • enhance usage descriptions for camera, location, and photo library. Requested by apple review team
Nimiq Pay

Release 2.7.4

  • Use split issuer-server endpoint for issuing new NAKA cards

✨ Features

  • add card deactivation functionality and set default card in SDK Fixes case where new card was issued after blocked card and the new card was not used for payments if the expiry date was the same
  • add conditional rendering for reset button in development mode

🐛 Bug Fixes

  • update npm registry configuration in CI for lint and build stages
  • add npm registry configuration to lint job
  • update card in db when blocking
  • increase WebSocket heartbeat interval for production to not spam the server that much It could trigger a spam protection on the server

🔧 Chores

  • use published package for monet+ capacitor plugin
  • languages
  • better way of handling devtool url