v2.1.1
·
556 commits
to refs/heads/main
since this release
Changes
- chore(release): v2.1.1 (#13100) @pr-automation-bot-public[bot]
- test(frontend): add reusable Svelte-context test factories (#13094) @AntonioVentilii
- feat(backend)!: add Liquidium variant to ActiveUserTransactionData (#13092) @DenysKarmazynDFINITY
- docs(frontend): document QuickNode integration (#13091) @sbpublic
- docs(frontend): document Etherscan API integration (#13088) @sbpublic
- docs(frontend): document Infura API integration (#13087) @sbpublic
- docs(frontend): add integrations folder and consolidate OnRamper doc (#13086) @sbpublic
- feat(frontend): restrict ONRAMPER_ENABLED to LOCAL/STAGING builds (#13083) @AntonioVentilii
- docs(ai): add a Cowork review step (Step 6) to the spec-driven workflow (#13058) @sbpublic
- fix(backend)!: derive BTC pending-tx address from caller principal (#13060) @sbpublic
- feat(frontend): restrict backend exchange mode to LOCAL/STAGING builds (#13082) @AntonioVentilii
- feat(frontend): sign OnRamper widget URLs and gate the buy flow (#13079) @AntonioVentilii
- feat(frontend): skip CoinGecko in the backend-mode price fallback (#13073) @AntonioVentilii
- docs(backend): add OnRamper signing runbook and provisioning script (#13080) @AntonioVentilii
- feat(backend): sign OnRamper widget URLs in the backend canister (#13078) @AntonioVentilii
- feat(shared): add OnRamper signing types (#13077) @AntonioVentilii
- chore(frontend): install Liquidium SDK (#13071) @DenysKarmazynDFINITY
- fix(frontend): label SPL approvals as approvals in Solana WC review (#13042) @AntonioVentilii
- docs(ai): document open questions vs. pending decisions in specs (#13074) @sbpublic
- chore(backend): disable ICPSwap exchange-rate provider (#13072) @AntonioVentilii
- feat(frontend): fall back to frontend price providers for backend-unpriced tokens (#13068) @AntonioVentilii
- feat(frontend): add CoinGecko exchange provider flag (#13067) @AntonioVentilii
- feat(backend): add hardcoded per-provider exchange-rate flags (#13066) @AntonioVentilii
- fix(frontend): resolve SPL mint for unchecked transfers in Solana WC review (#13041) @AntonioVentilii
- fix(backend): preserve exchange toggle on key updates (#13061) @cursor[bot]
- fix(frontend): mark ETH NFT sends done before close (#13033) @cursor[bot]
- test(frontend): cover NFT send close redirect (#13018) @cursor[bot]
- feat(frontend): add Active User Transactions for OneSec (#12988) @DenysKarmazynDFINITY
- fix(frontend): show correct SPL token in Solana WalletConnect review (#13040) @AntonioVentilii
- test(backend): cover HTTP outcall replication flag (#13065) @cursor[bot]
- fix(frontend): neutralize CSV export formulas (#13009) @cursor[bot]
- test(frontend): cover curated ICRC7 token config (#13043) @cursor[bot]
- test(frontend): cover settings preferences placement (#13059) @cursor[bot]
- fix(frontend): use tail cursor for transaction pagination (#13014) @cursor[bot]
- test(backend): cover exchange rate toggle edges (#13035) @cursor[bot]
- test(backend): cover exchange caller staleness boundary (#13032) @cursor[bot]
- test(frontend): cover nameless NFT filtering (#13037) @cursor[bot]
- feat(backend): make exchange-rate HTTP outcall replication configurable (#13063) @AntonioVentilii
- fix(devops): trigger backend CI when scripts change (#13057) @AntonioVentilii
- fix(backend): accept ICPSwap success code 200 and tighten response cap (#13064) @AntonioVentilii
- chore(backend): upgrade ic-cdk to 0.19.0 (#13062) @AntonioVentilii
- fix(devops): download-canister-api should use anonymous identity (#13011) @sbpublic
- feat(frontend): move language and currency selectors to a new Preferences card on Settings (#13044) @sbpublic
- docs(ai): update PRODUCT.md in the same PR, not post-merge (#13047) @sbpublic
- chore(npm-deps): bump zod from 4.3.6 to 4.4.3 (#13049) @dependabot[bot]
- chore(cargo-deps): bump bitcoin from 0.32.8 to 0.32.9 (#13048) @dependabot[bot]
- chore(npm-deps-dev): bump @eslint/compat from 2.0.5 to 2.1.0 (#13050) @dependabot[bot]
- chore(npm-deps-dev): bump svelte-eslint-parser from 1.6.0 to 1.8.0 (#13051) @dependabot[bot]
- chore(npm-deps-dev): bump @vitest/eslint-plugin from 1.6.16 to 1.6.19 (#13052) @dependabot[bot]
- chore(npm-deps-dev): bump tailwindcss from 4.2.2 to 4.3.0 (#13053) @dependabot[bot]
- chore(npm-deps-dev): bump enhanced-resolve from 5.21.0 to 5.23.0 (#13054) @dependabot[bot]
- chore(npm-deps-dev): bump postcss from 8.5.12 to 8.5.14 (#13055) @dependabot[bot]
- chore(npm-deps-dev): bump brace-expansion from 1.1.14 to 1.1.15 (#13056) @dependabot[bot]
- docs(ai): require spec header pointing to the workflow doc (#13045) @sbpublic
- docs(ai): document spec-assets folder convention for spec-driven development (#13039) @sbpublic
- test(backend): cover agreement metadata preservation (#13036) @cursor[bot]
- fix(backend)!: make exchange-rate refresh opt-in (default off when unset) (#13019) @AntonioVentilii
- feat(frontend): show app version on signer login page (#13008) @sbpublic
- feat(frontend): track Learn more link clicks (#13016) @sbpublic
- refactor(frontend): replace handleBtcValidationError switch with message map (#12996) @AntonioVentilii
- refactor(frontend): extract shared openOnWalletReady helper for receive components (#12998) @AntonioVentilii
- refactor(frontend): extract shared address-derivation service factory (#12999) @AntonioVentilii
- refactor(frontend): dedupe open-crypto-pay token enrichment logic (#13000) @AntonioVentilii
- chore(npm-deps-dev): bump prettier-plugin-tailwindcss from 0.7.4 to 0.8.0 (#13025) @dependabot[bot]
- feat(backend)!: add set_exchange_rate_enabled to toggle exchange rates without touching API keys (#13004) @AntonioVentilii
- fix(frontend): surface spender for legacy SPL Approve in sign-review (#13030) @AntonioVentilii
- fix(frontend): refuse to sign Solana WalletConnect transactions that cannot be reviewed faithfully (#13031) @AntonioVentilii
- chore(npm-deps-dev): bump tldts from 7.0.29 to 7.4.2 (#13029) @dependabot[bot]
- chore(npm-deps-dev): bump @tailwindcss/postcss from 4.2.2 to 4.2.4 (#13028) @dependabot[bot]
- chore(npm-deps-dev): bump typescript-eslint from 8.59.1 to 8.60.1 (#13027) @dependabot[bot]
- chore(npm-deps-dev): bump rollup from 4.60.2 to 4.61.0 (#13026) @dependabot[bot]
- chore(npm-deps-dev): bump svelte-check from 4.4.6 to 4.4.7 (#13024) @dependabot[bot]
- chore(npm-deps): bump ws from 7.5.10 to 7.5.11 (#13023) @dependabot[bot]
- chore(rust): bump rust-toolchain from 1.95.0 to 1.96.0 (#13021) @dependabot[bot]
- chore(npm-deps): bump lru-cache from 11.3.5 to 11.5.1 (#13020) @dependabot[bot]
- perf(backend): idle-gate the always-on native exchange-rate refresh (#12984) @AntonioVentilii
- docs(ai): clarify i18n sync script does not translate (#12977) @AntonioVentilii
- fix(e2e): stabilize full-page snapshot height to stop flaky regeneration (#13002) @AntonioVentilii
- fix(e2e): neutralize backdrop-filter blur in snapshot diffs (#13003) @AntonioVentilii
- chore(frontend): extend sprinkles s1e6 (#13017) @sbpublic
- chore(frontend): adjust workflow for specification driven development (#13015) @sbpublic
- chore(frontend): add workflow for specification driven development (#13013) @sbpublic
- test(frontend): expose InfuraErc20Provider in eth provider spec mocks (#13010) @sbpublic
- fix(frontend): redirect after NFT send from the detail page (#13007) @sbpublic
- feat(frontend): usage metrics for data downloads (#13005) @sbpublic
- feat(frontend): match token standard in tokens and NFTs text filter (#13001) @sbpublic
- test(backend): cover CoinGecko token classification (#13006) @cursor[bot]
- test(frontend): cover manage token initial import step (#12994) @cursor[bot]
- fix(frontend): preserve SOL history on pagination errors (#12995) @cursor[bot]
- test(frontend): cover NFT deep-link fallback deferral (#12992) @cursor[bot]
- feat(frontend): sort NFTs in the send picker by the user's chosen order (#12990) @sbpublic
- fix(frontend): show NFTs without a name in the send picker (#12991) @sbpublic