Skip to content
This repository was archived by the owner on Mar 2, 2026. It is now read-only.

Releases: onflow/FRW-Extension

2.9.4

Choose a tag to compare

@zzggo zzggo released this 01 Sep 11:42
11a721b

Flow Wallet 2.9.4 hotfix

What's Changed

  • fix: fix the add custom error in evm env

2.9.3

Choose a tag to compare

@zzggo zzggo released this 01 Aug 16:30
24cc142

What's Changed

  • Fixed: Dapp transaction ID calculation failure
  • Fixed: Scan login update

Full Changelog: 2.9.1...2.9.3

2.9.1

Choose a tag to compare

@tombeckenham tombeckenham released this 24 Jul 05:08
4838cdd

🚀 FRW Extension Version 2.9.1 Release Notes 🚀

This release is packed with major internal improvements, bug fixes, and a few new features to make your experience smoother and more reliable.

✨ New Features & Major Updates

  • Fresh Install Experience: New users will now be correctly redirected to the welcome page for a smoother onboarding experience.
  • UI Enhancements:
    • The wallet tab and coin list have been updated for better scrolling and a cleaner look.
    • The dashboard and tab switching have been optimized for faster performance.
  • ESM Conversion: All internal packages have been converted to pure ESM, improving performance and aligning with modern JavaScript standards.

🛠️ Bug Fixes

  • Redirect Fix: Fixed a bug where importing a profile would redirect to the wrong screen.
  • Transaction Display: Corrected issues with how transactions were being displayed.
  • Circular Dependencies: Resolved several circular dependency issues that could cause unexpected behavior.
  • Cache Listeners: Fixed a bug where cache data listeners were not being removed correctly.
  • EVM Account Mocking: Corrected the mocking of getEvmAccount in tests.

🏗️ Refactoring & Internal Improvements

  • Project Structure: We've undertaken a major refactoring of the project structure. Core logic, shared utilities, and data models have been moved into distinct packages under the @onflow/frw-* scope. This improves separation of concerns, maintainability, and will allow us to develop new features more efficiently.
  • Dependency Updates: Updated various dependencies and build processes for better performance and security.
  • Code Cleanup:
    • Removed several unused files and streamlined background services.
    • Refactored the wallet controller for better error handling.
    • Cleaned up imports and configurations across the project.
  • Husky & Linting: Updated our pre-commit hooks and linting configurations to ensure higher code quality.

2.9.0

Choose a tag to compare

@tombeckenham tombeckenham released this 14 Jul 09:31
4061b42

Flow Wallet Extension 2.9.0 Release Notes

Overview

This release brings significant improvements to the Flow Reference Wallet extension, including a major architectural refactor to a monorepo structure, enhanced user experience features, performance optimizations, and critical bug fixes.

🎯 Key Highlights

  • Account Customization: Change the name and emoji of accounts. You're no longer stuck with Koala 🐨 and Lemon 🍋
  • Enhanced Settings UI: Complete redesign of the settings interface with custom icons and better organization
  • New Welcome UI: Updated design for a cleaner experience for new users
  • Performance Optimizations: Faster profile switching and account loading through intelligent caching
  • Improved Security: Consolidated password input components with strength indicators
  • Monorepo Architecture: Restructured the entire codebase into a monorepo for better code organization and maintainability

✨ New Features

Account Customization (#1114)

  • Customize your account icons and names directly from the wallet
  • Choose from emojis for account icons
  • Select custom colors for account backgrounds
  • Changes sync automatically with the backend API
  • Support for both Flow and EVM accounts

Redesigned Import & Welcome Experience (#1126)

  • Beautiful new Flow-themed background for welcome & import screens
  • Improved tab navigation with better visual hierarchy
  • Enhanced mobile import flow
  • Better visual feedback during import processes

Settings Layout Overhaul (#980)

  • Complete redesign with card-based layout
  • Custom icons for each settings category
  • Improved navigation with dedicated section buttons
  • Better visual hierarchy and responsive design
  • Reorganized settings structure for easier access

Unified Password Input (#861)

  • New consolidated password component across all forms
  • Real-time password strength indicator with visual feedback
  • Consistent validation and error messaging
  • Show/hide password toggle
  • Touch state handling for better UX

🚀 Performance Improvements

Optimized Profile Switching (#1100)

  • Cache-first approach reduces API calls
  • Instant profile switching using locally stored data
  • Skeleton loading states for smooth transitions
  • Simplified authentication flow

Safer Transaction Execution (#1122)

  • Transactions now show as complete at "executed" state instead of waiting for "finalized"
  • Better user experience with quicker feedback

Consolidated Account Loading (#1073)

  • Single API call fetches all child and EVM accounts
  • Reduced network overhead
  • Simplified cache management
  • Faster initial load times

🐛 Bug Fixes

NFT Search Pagination (#1133)

  • Fixed incorrect offset handling for EVM NFT collections
  • Properly handles JWT token strings for pagination
  • Offset resets correctly when switching collections

Confetti Animation (#1107)

  • Fixed issue where confetti blocked UI interactions
  • Confetti now renders in background layer
  • Proper pointer event handling

Routing Issues (#1115)

  • Fixed incorrect network names in EVM switch dialog
  • Corrected network icons display
  • Fixed manage token links using proper absolute paths

Wallet Initialization (#1110)

  • Resolved race condition during wallet startup
  • Implemented cache-based initialization tracking
  • Eliminated runtime errors from premature wallet access

🏗️ Technical Improvements

Monorepo Structure (#1124)

  • Organized code into apps/extension, packages/shared, and packages/reducers
  • Improved build times with package aliases
  • Better module boundaries and code organization
  • Unified build configurations for Mac and Windows

Architecture Improvements (#1118)

  • Enforced import path rules with ESLint
  • Clear separation between UI, background, and core modules
  • Services and utilities moved to core package
  • Prepared foundation for future library extraction

Testing & Documentation

  • Moved Playwright reports to Google Cloud Storage (#1119)
  • Fixed Storybook mocks for new architecture (#1098)
  • Added comprehensive technical documentation for mobile import (#1105)
  • Updated E2E tests for new transaction states

📦 Dependencies

  • React Router: Upgraded from v5 to v7
  • React & React DOM: Updated to latest versions
  • TypeScript Types: Updated @types/react and @types/react-dom
  • Various security and performance updates

🔄 Migration Notes

For Developers

  1. Import Paths: Update imports to use new package aliases:
    • @onflow/flow-wallet-shared for shared utilities
    • @onflow/flow-wallet-reducers for state management
  2. React Router: Replace useHistory() with useNavigate()
  3. Settings Routes: Update any deep links to settings pages as routes have changed

For Users

  • No action required - all changes are backward compatible
  • Settings have been reorganized but all functionality remains accessible
  • Profile data and accounts are preserved during the update

🙏 Acknowledgments

Thank you to all contributors who made this release possible. Special thanks to the Flow community for their continued support and feedback.

📝 What's Changed

What's Changed

Full Changelog: 2.8.7...2.9.0

2.8.7

Choose a tag to compare

@tombeckenham tombeckenham released this 26 Jun 06:07
17d671c

Flow Wallet Extension v2.8.7 Release Notes

🎯 Overview

This release includes significant improvements to transaction handling, UI component upgrades, and various bug fixes to enhance the overall user experience.

✨ New Features & Improvements

Transaction Handling

  • Faster Transaction Experience (#1076)
    • Transactions now redirect immediately after finalization instead of waiting for execution
    • Users can send new transactions once previous ones are finalized
    • Improved transaction status checking in the header component

UI/UX Enhancements

  • MUI v7 Upgrade (#935)

    • Successfully upgraded Material-UI from v6 to v7
    • Migrated from deprecated makeStyles to sx prop across 64 components
    • Removed @mui/styles dependency
    • Fixed Grid component usage across the entire codebase
  • Deposit Screen Improvements (#1093)

    • Fixed account display to show currently active account
    • Corrected warning messages for Flow EVM accounts
    • Added Storybook support for deposit screen
    • Simplified component by removing unused state and styles

🐛 Bug Fixes

Critical Fixes

  • Empty Vault Unlock Issue (#1075)
    • Fixed critical bug where users couldn't unlock empty vaults
    • Added proper checks for null/empty vaults during registration
    • Fixed error snackbar on account import screen
    • Prevented multiple window openings when already in a tab

Build & Deployment

  • Beta Versioning Fix (#1089)
    • Updated manifest versioning for beta builds to comply with Chrome Store requirements
    • Beta versions now properly format version numbers (e.g., 2.8.6-beta-2 → 28.6.2)

🔧 Technical Improvements

Code Quality & Dependencies

  • Dependency Cleanup (#1085)
    • Removed numerous unused dependencies
    • Replaced lodash's cloneDeep with native structuredClone for better performance
    • Migrated from axios to fetch API in GoogleSafeHost service
    • Updated various dependencies including @emotion/react and ethers
    • Fixed Storybook installation issues

State Management

  • Improved Component Architecture (#1025)
    • Refactored Register component to use useReducer for better state management
    • Added import profile reducer to reduce prop drilling
    • Enhanced maintainability and readability of registration flows

📝 Additional Changes

  • Added Claude.md documentation file for AI-assisted development
  • Improved error handling for transaction activity updates
  • Cleaned up event listeners to prevent unhandled message errors
  • Updated pnpm package manager

What's Changed

Full Changelog: 2.8.6...2.8.7

2.8.6

Choose a tag to compare

@tombeckenham tombeckenham released this 17 Jun 23:41
641825d

Flow Reference Wallet Extension 2.8.6

🚀 Key Highlights

🔒 Better dApp Connectivity & Stability

  • Improved Multi-Wallet Support (#1046): Reworked the provider injection logic to ensure our extension co-exists peacefully with other wallets like MetaMask. The extension now intelligently routes ethereum.request calls, only handling requests intended for Flow Wallet. This prevents conflicts and ensures dApps connect to the correct wallet, providing a seamless user experience even with multiple wallet extensions installed.
  • Improved Privy Integration (#1067): Corrected a race condition that prevented the provider from being initialised properly. Resolved loading issues when dev wallet is installed by isolating the extension's localStorage. We now use environment-specific prefixes for storage keys (frw-dev:, frw-beta:, frw:), which prevents data collisions between different extension builds (e.g., development, beta, production) and ensures Privy initializes correctly every time.

📱 Account Management Redesign

  • Complete overhaul of account listing interface (#974, #1009) with better hierarchy display showing main → EVM → child account relationships
  • New Menu Drawer design with improved navigation and account switching
  • Account menu icon improvements (#977)
  • Redesigned profile selection in account menu (#978)
  • Enhanced account cards with better visual indicators and balance display
  • Improved handling of multi-account scenarios

🔢 Improved Balance Display

  • Token balances now use a common decimal formatting for better readability and to ensure non-zero amounts are never shown as zero (#1045).
    • Balance > 0: Rounded to 2 decimal places, with trailing zeros trimmed.
    • 0.01 <= Balance < 1: Shown with 2 decimal places.
    • 0.001 <= Balance < 0.01: Shown with 3 decimal places.
    • 0.0001 <= Balance < 0.001: Shown with 4 decimal places.
    • 0 < Balance < 0.0001: Shown in a condensed format (e.g., 0.0₄1).
    • Balance = 0: Shown as "0".

🔁 KittyPunch Swap Integration

  • New Swap Provider (#1049): Replaced the existing EVM swap functionality with KittyPunch.

📲 Mobile App Integration

  • New mobile import workflow (#979) with step-by-step visual guidance for users migrating from the Flow Wallet mobile app.
  • Updated import interface with a dedicated mobile app tab and clearer instructions.

🎨 UI/UX Updates

  • UI Fixes (#1058, #1061): Addressed various layout issues, including EVM address display and import links.
  • Updated terminology: "Seed Phrase" → "Recovery Phrase" throughout the app.
  • Improved responsive design and better visual feedback.
  • Enhanced account avatars with support for pending states.

🛠️ Technical Improvements

  • Environment-Specific Storage (#1067): Refactored local storage handling to support environment-specific prefixes, preventing data collisions between development, beta, and production builds.
  • Build & CI/CD Enhancements (#1043, #1050, #1055): Updated the build process, corrected Webpack configuration for GitHub Actions, and added new project rules.
  • Pre-release Beta Indicator (#1060): Added a "beta" tag to the extension icon for pre-release builds to make them easily distinguishable.
  • Playwright Test Reports (#1034, #1037): Test reports are now hosted on GitHub Pages with automatic sanitization.
  • Enhanced Test Tracing Controls (#1031) for better debugging.
  • Font Loading Fix (#1052): Corrected an issue where fonts were not loading properly.
  • Improved Error Handling (#1069): Wrapped error-capturing logic in a try-catch block to prevent circular error reporting, making the extension more stable.

🐛 Key Bug Fixes

  • Addressed a critical loading issue with the Privy SDK (#1067).
  • Fixed request routing to prevent conflicts with other wallets (#1046).
  • Fixed account key listing for multi-account wallets (#1027).
  • Resolved race conditions in wallet state management.
  • Corrected account switching logic for EVM and child accounts.

Issues Resolved: #974, #975, #977, #978, #979, #1009, #1027, #1031, #1034, #1037, #1039, #1043, #1045, #1046, #1049, #1050, #1052, #1055, #1058, #1060, #1061, #1067, #1069

What's Changed

Full Changelog: 2.8.5...2.8.6

2.8.6-beta.2

2.8.6-beta.2 Pre-release
Pre-release

Choose a tag to compare

@tombeckenham tombeckenham released this 17 Jun 09:48
641825d

What's Changed

Full Changelog: 2.8.6-beta.1...2.8.6-beta.2

2.8.6-beta.1

2.8.6-beta.1 Pre-release
Pre-release

Choose a tag to compare

@tombeckenham tombeckenham released this 16 Jun 09:14
2dccd31

Flow Reference Wallet Extension 2.8.6-beta.1 Release Notes

🚀 Key Highlights

📱 Account Management Redesign

  • Complete overhaul of account listing interface (#974, #1009) with better hierarchy display showing main → EVM → child account relationships
  • New Menu Drawer design with improved navigation and account switching
  • Account menu icon improvements (#977)
  • Redesigned profile selection in account menu (#978)
  • Enhanced account cards with better visual indicators and balance display
  • Improved handling of multi-account scenarios

🔢 Improved Balance Display

  • Token balances now use a common decimal formatting for better readability and to ensure non-zero amounts are never shown as zero (#1045)
    • Balance is > 0 - round to 2 decimal places - trimming zeros so there's no traiiling zero - rounding to nearest decimal
    • Balance is < 0 and >= 0.01 - show 2 decimal places - rounding to nearest decimal
    • Balance is < 0.01 and >= 0.001 - show 3 decimal places - rounding to nearest decimal
    • Balance is < 0.001 and >= 0.0001 - show 4 decimal places - rounding to nearest decimal
    • Balance is < 0.0001 and > 0 - show zero condensed balance e.g. 0.0₄1
    • Balance is 0 - show 0

🔁 KittyPunch Swap Integration

  • New Swap Provider (#1049): Replaced the existing EVM swap functionality with KittyPunch

🔒 Enhanced Security

  • Automatic filtering of compromised accounts (#1039) - extension now filters out accounts with revoked keys or insufficient weight (<1000)
  • Fixed account keys for multi-account support (#1027)
  • Better account validation when loading to ensure only active, secure accounts are displayed

📲 Mobile App Integration

  • New mobile import workflow (#979) with step-by-step visual guidance for users migrating from Flow Wallet mobile app
  • Updated import interface with dedicated mobile app tab and clearer instructions

🎨 UI/UX Updates

  • UI Fixes (#1058, #1061): Addressed various layout issues, including EVM address display and import links.
  • Updated terminology: "Seed Phrase" → "Recovery Phrase" throughout the app
  • Improved responsive design and better visual feedback
  • Enhanced account avatars with support for pending states

🛠️ Technical Improvements

  • Build & CI/CD Enhancements (#1043, #1050, #1055): Updated build process, corrected Webpack configuration for GitHub Actions, and added new project rules.
  • Pre-release Beta Indicator (#1060): Added a "beta" tag to the extension icon for pre-release builds to make them easily distinguishable.
  • Playwright test reports (#1034, #1037) now hosted on GitHub Pages with automatic sanitization
  • Enhanced test tracing controls (#1031) for better debugging
  • Font Loading Fix (#1052): Corrected an issue where fonts were not loading properly.
  • Enhanced Storybook integration for better component development
  • Improved hook patterns and state management
  • Better error handling and caching strategies

🐛 Key Bug Fixes

  • Fixed account key listing for multi-account wallets (#1027)
  • Resolved race conditions in wallet state management
  • Corrected account switching logic for EVM and child accounts
  • Function Invocation Fix (#1046): Corrected an issue where a function was being invoked incorrectly.

⚠️ Important: Add account functionality will be controlled by feature flags in production and requires thorough regression testing due to significant account management changes.

Issues Resolved: #974, #975, #977, #978, #979, #1009, #1027, #1031, #1034, #1037, #1039, #1043, #1045, #1046, #1049, #1050, #1052, #1055, #1058, #1060, #1061

What's Changed

Full Changelog: 2.8.5...2.8.6-beta.1

2.8.5

Choose a tag to compare

@tombeckenham tombeckenham released this 03 Jun 04:35
8b0ed76

Flow Wallet Extension 2.8.5 Release Notes

This release brings significant enhancements to security, data management, developer tooling, and user experience, alongside various bug fixes.

🚀 Features & Improvements:

  • Security Enhancements (Addresses #965):
    • Improved handling of hex strings and data decoding in the signature type display.
    • Optimized the approval page and added chain ID checks before sign type approval.
    • Removed unused code from the keyring for a cleaner, more secure codebase.
    • Fixed potential issues with UTF-8 decoding and added checks for hexstrings. (from commit messages)
    • Wrapped data parsing in try-catch blocks for more robust error handling. (from commit messages)
  • Overhauled Data Storage & Caching (Implements #905):
    • Migrated from legacy storage.getExpiry to a new centralized data storage model using custom React hooks (useNews, useStorageCheck, useAllNftList, useAllTokenInfo).
    • This improves fetching and caching for contracts, NFT lists, token balances/prices, news, and version information.
    • Cleaned up API client methods, removing deprecated ones like getTokenPrices and getEvmFTPrice.
    • Standardized EVM token refresh logic.
  • Keyring Upgrades (Towards #786):
    • Keyrings now store the public key and signature algorithm.
    • Updated methods for retrieving the current public key, including regenerating it with the stored algorithm when restoring the keyring.
    • Renamed submitPassword to unlock and setLocked to locked in the keyring for clarity.
    • Marked several older keyring methods as deprecated.
  • Enhanced Transaction & Network Handling:
    • Network Switching (Fixes #973): Introduced a "Switch Network" component that prompts users if they attempt a transaction on a different network than the one currently active in the UI.
    • FCL Update (Implements #915): Upgraded to FCL v1.18, enabling WebSocket support and removing unneeded FCL dependencies.
  • Improved Mobile Sync Experience (Implements #966):
    • Added a loading/register status display when scanning QR codes from a mobile device for a smoother user experience.
  • Developer Experience & Tooling:
    • Advanced Error Logging & Reporting (Implements #759):
      • Replaced direct console.log/error/warn/info calls with new wrapper functions (consoleLog, consoleInfo, consoleWarn, consoleError).
      • In production, most console output is suppressed, while consoleError logs errors to Mixpanel with sensitive information stripped.
      • Updated lint rules to flag direct console usage, promoting the new logging system.
      • Corrected remaining lint errors across the codebase.
    • Script Invocation Documentation (Implements #917): Generated documentation detailing where Cadence scripts are called from within the extension and their triggers.
  • Remote Configuration Service: (from commit messages, PR likely #990 implies this part of #905)
    • Introduced a remote configuration service and refactored feature flag usage for more dynamic control over features.

🐛 Bug Fixes:

  • Child NFT Display (Fixes #967):
    • Corrected the script for checking accessible child NFTs to use the proper address.
    • Fixed the getvaliddata function related to storage information for child NFTs.
  • Currency Display Optimization (Fixes #949):
    • Prevented unnecessary re-renders in the currencyValue component by passing currency code and symbol directly from CoinList, improving performance.
  • Addressed an issue with variable assignment order. (from commit messages)

What's Changed

Full Changelog: 2.8.4...2.8.5

2.8.4

Choose a tag to compare

@tombeckenham tombeckenham released this 16 May 02:20
5d5334f

Flow Wallet Extension 2.8.4

This hot fix release resolves an important piece of the EVM experience.

  • Seamless EVM Activation: We've resolved an issue where enabling EVM accounts didn't always refresh the account list immediately. Now, your EVM accounts will appear as expected right after activation. ✨
  • Smoother EVM Setup: We've made enhancements to the EVM enabling process for a more streamlined user experience. 👍

We're committed to providing a smooth and reliable experience. Thank you for your continued support! 🙏

What's Changed

Full Changelog: 2.8.3...2.8.4