Releases: onflow/FRW-Extension
2.8.7
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
- Create reducer for import profile and register components by @tombeckenham in #1079
- 935-task-upgrade-mui-claude by @tombeckenham in #1082
- Upgrade MUI to v7 by @tombeckenham in #1083
- 1076-feature-mark-transactions-as-done-when-finalised-not-executed by @tombeckenham in #1087
- chore: update dependencies and refactor code by @tombeckenham in #1086
- fix: update manifest versioning for beta builds. Ensures proper versioning for beta releases by @tombeckenham in #1090
- Now checks for empty vault or null vault to verify if the user has a wallet. Fixed error snackbar on the account import screen. Corrected sorthat to not open another window if already in a tab by @tombeckenham in #1094
- Update deposit screen for multi-account by @tombeckenham in #1095
- 2.8.7 by @tombeckenham in #1097
- 1099-bug-issues-found-in-287-staging by @tombeckenham in #1101
- Updated Confetti component to disable pointer events and added zIndex to AllSet component for improved layout by @tombeckenham in #1108
Full Changelog: 2.8.6...2.8.7
2.8.6
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
- 759-feature-replace-consoleerror-with-error-logger-function by @tombeckenham in #943
- 969-task-resolve-master-dev-conflicts by @tombeckenham in #970
- Dev by @tombeckenham in #963
- fixed: check child accouunt script update and fix get storage by @zzggo in #968
- feat: add register status when scanning from mobile by @zzggo in #971
- Partial update to store public key and algos in keyring by @tombeckenham in #972
- fixed: add switch network component by @zzggo in #988
- Updated to fcl 1.18 (websocket support) by @tombeckenham in #986
- fixed: add optional currency code for coinlist to prevent extra render by @zzggo in #989
- 905-feature-complete-data-storage by @tombeckenham in #990
- Generated doc to document all the places where scripts are called from by @tombeckenham in #987
- 965 bug security feedbacks by @zzggo in #991
- 2.8.5 by @tombeckenham in #993
- 994-task-reorganise-ui-components by @tombeckenham in #995
- refactor: update current_device logic and replace Box with IconButton in KeyList component by @tombeckenham in #999
- 966 bug add loading page when sync with mobile hotfix by @zzggo in #1000
- 977-feature-account-menu-icon by @tombeckenham in #1003
- 974-feature-account-listing by @tombeckenham in #1008
- 978 feature profiles in account menu by @zzggo in #1010
- Updated to use hooks in the component by @tombeckenham in #1011
- Santizes reports before uploading by @tombeckenham in #1032
- 979-feature-import-mobile-profile by @tombeckenham in #1017
- fixed: use the selected address by @zzggo in #1028
- Host santised reports by @tombeckenham in #1035
- add story for playwright test reports by @nialexsan in #1038
- 975 feature add an account create new account by @zzggo in #1015
- Filters out accounts with revoked keys and weight of less than 1000. Validates active accounts when loading by @tombeckenham in #1041
- Update build configurations and package dependencies by @tombeckenham in #1051
- Refactor webpack configuration to use asset/resource for images and fonts by @tombeckenham in #1053
- 1046 update only the function fix by @zzggo in #1047
- chore: update .gitignore and clean up build workflow by @tombeckenham in #1056
- Changed evm swap link to KittyPunch by @tombeckenham in #1057
- 1058-task-small-ui-fixes---evm-add-account-icon-and-import-link by @tombeckenham in #1059
- 1045-feature-common-decimals-for-token-balances by @tombeckenham in #1054
- Fix layout issue on dev branch by @tombeckenham in #1062
- 1060-feature-add-beta-to-icon-for-pre-release-build by @tombeckenham in #1064
- Privy loading issue by @tombeckenham in #1068
- Wrapped message sending to prevent error logging generating more errors by @tombeckenham in #1070
Full Changelog: 2.8.5...2.8.6
2.8.6-beta.2
What's Changed
- Privy loading issue by @tombeckenham in #1068
- Wrapped message sending to prevent error logging generating more errors by @tombeckenham in #1070
- Merge to master by @tombeckenham in #1071
Full Changelog: 2.8.6-beta.1...2.8.6-beta.2
2.8.6-beta.1
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.
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
- 977-feature-account-menu-icon by @tombeckenham in #1003
- 974-feature-account-listing by @tombeckenham in #1008
- 978 feature profiles in account menu by @zzggo in #1010
- Updated to use hooks in the component by @tombeckenham in #1011
- Santizes reports before uploading by @tombeckenham in #1032
- 979-feature-import-mobile-profile by @tombeckenham in #1017
- fixed: use the selected address by @zzggo in #1028
- Host santised reports by @tombeckenham in #1035
- add story for playwright test reports by @nialexsan in #1038
- 975 feature add an account create new account by @zzggo in #1015
- Filters out accounts with revoked keys and weight of less than 1000. Validates active accounts when loading by @tombeckenham in #1041
- Update build configurations and package dependencies by @tombeckenham in #1051
- Refactor webpack configuration to use asset/resource for images and fonts by @tombeckenham in #1053
- 1046 update only the function fix by @zzggo in #1047
- chore: update .gitignore and clean up build workflow by @tombeckenham in #1056
- Changed evm swap link to KittyPunch by @tombeckenham in #1057
- 1058-task-small-ui-fixes---evm-add-account-icon-and-import-link by @tombeckenham in #1059
- 1045-feature-common-decimals-for-token-balances by @tombeckenham in #1054
- Fix layout issue on dev branch by @tombeckenham in #1062
- 1060-feature-add-beta-to-icon-for-pre-release-build by @tombeckenham in #1064
- 2.8.6 by @tombeckenham in #1043
Full Changelog: 2.8.5...2.8.6-beta.1
2.8.5
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
andgetEvmFTPrice
. - Standardized EVM token refresh logic.
- Migrated from legacy
- 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
tounlock
andsetLocked
tolocked
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.
- Replaced direct
- Script Invocation Documentation (Implements #917): Generated documentation detailing where Cadence scripts are called from within the extension and their triggers.
- Advanced Error Logging & Reporting (Implements #759):
- 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 fromCoinList
, improving performance.
- Prevented unnecessary re-renders in the
- Addressed an issue with variable assignment order. (from commit messages)
What's Changed
- 759-feature-replace-consoleerror-with-error-logger-function by @tombeckenham in #943
- 969-task-resolve-master-dev-conflicts by @tombeckenham in #970
- Dev by @tombeckenham in #963
- fixed: check child accouunt script update and fix get storage by @zzggo in #968
- feat: add register status when scanning from mobile by @zzggo in #971
- Partial update to store public key and algos in keyring by @tombeckenham in #972
- fixed: add switch network component by @zzggo in #988
- Updated to fcl 1.18 (websocket support) by @tombeckenham in #986
- fixed: add optional currency code for coinlist to prevent extra render by @zzggo in #989
- 905-feature-complete-data-storage by @tombeckenham in #990
- Generated doc to document all the places where scripts are called from by @tombeckenham in #987
- 965 bug security feedbacks by @zzggo in #991
- 2.8.5 by @tombeckenham in #993
- 994-task-reorganise-ui-components by @tombeckenham in #995
- refactor: update current_device logic and replace Box with IconButton in KeyList component by @tombeckenham in #999
- 966 bug add loading page when sync with mobile hotfix by @zzggo in #1000
- Merge dev to master by @zzggo in #1002
- Beta version by @tombeckenham in #1005
Full Changelog: 2.8.4...2.8.5
2.8.4
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
- 959-bug-enabling-evm-does-not-refresh-account-list by @tombeckenham in #960
Full Changelog: 2.8.3...2.8.4
2.8.3
Flow Wallet Extension 2.8.3: Release Notes ✨
This release brings several exciting new features designed to enhance your control and security, alongside significant improvements to performance and user experience.
What's New? 🚀
- Verified Token Management: 🪙
- Verified Token System: A major new system to clearly distinguish and manage verified and unverified tokens. This includes updated dashboards, token detail pages with a new security tab, and improved filtering. (Related: #902, #860, #912)
- Currency Selector: You can now select your preferred currency for viewing token balances across the wallet. 💸 (Related: #794)
- Advanced Account Security & Control: 🛡️
- Change Password Feature: We've introduced a secure way to change your wallet password, now integrated with Google Drive backup verification for your recovery phrases, offering greater peace of mind. (Related: #901, #858)
- X-Signature Verification: A new security measure has been added for script API interactions, enhancing the integrity of these operations. (Related: #924)
Further Improvements: 🛠️
- Performance & dApp Compatibility: Upgraded to the latest Flow Client Library (FCL v1.17). This brings noticeable performance gains 💨 (Related: #934)
- Overall Stability: This release includes numerous bug fixes 🐞 (e.g., addressing issues with Cadence/EVM interactions (#897), NFT sending (#930), wallet imports (#932), and transaction signing (#923)) and under-the-hood enhancements for a smoother and more reliable experience.
What's Changed
- simplify token info in transaction reducer by @bthaile in #827
- 758 feature currency selector by @bthaile in #794
- fix summing token balance when price doesnt exist by @bthaile in #853
- 850 merge master back to dev by @zzggo in #851
- Create a doc for the cache data model. Added the wallet account structure doc to the repo as well by @tombeckenham in #855
- 856-feature-correct-data-accessors-in-userwallet by @tombeckenham in #857
- 828 feature verifiedunverified token support token dashboard updates by @zzggo in #860
- 866-bug-fix-broken-dev-branch by @tombeckenham in #870
- Sync with Mobile Loader by @tombeckenham in #873
- 663 feature add change password feature by @bthaile in #858
- add balancePath from backend to populate token.path.balance by @bthaile in #872
- style to show long token names, move move button by @bthaile in #878
- 666 feature delete profile feature by @bthaile in #849
- 891 merge master to dev by @zzggo in #892
- 654 feature e2e test for switching main account by @Peppermint1020 in #881
- Sync mobile and registration status by @tombeckenham in #894
- 880 bug cannot connect to cadence apps when evm account is active by @zzggo in #897
- Updated to remove profile dialog and how user info was fetched and updated by @tombeckenham in #900
- fixed: small ui change by @zzggo in #903
- feat: add security tab on token detail by @zzggo in #902
- Corrected password change process in WalletController and GoogleDriveService by @tombeckenham in #901
- 2.8.3 merge to master by @tombeckenham in #908
- fixed: add the new link here by @zzggo in #912
- 914 update token page UI by @zzggo in #916
- 919-task-correct-storage-of-coin-list-from-the-api by @tombeckenham in #922
- fixed: update feed back by @zzggo in #918
- Correct display of tokens without pricing by @tombeckenham in #926
- Corrected typo that caused the contract address to be used instead of the recipient address when sending NFTs by @tombeckenham in #930
- Merge to dev by @tombeckenham in #927
- feat: verify request that contain X-Signature by @zzggo in #924
- Hashing and Signing tests plus queryEvmAddress update by @tombeckenham in #923
- Updated to prevent the wallet from being booted until we create the keyring by @tombeckenham in #932
- fixed: receive qr page and hide dust digit by @zzggo in #933
- Updated to fcl 1.17 by @tombeckenham in #934
- Updated WalletController type and ensured that all methods exist on wallet by @tombeckenham in #936
- fixed: change the move fee to 0.0001 by @zzggo in #937
- 896-task-host-playwright-reports by @tombeckenham in #938
- Merge to Dev by @tombeckenham in #939
- Merge to master by @tombeckenham in #941
- Dapper Linked Account issue by @tombeckenham in #948
- Corrected coins loaded state. Updated handleTokenChange and SendTo to ensure coins are loaded before rendering by @tombeckenham in #947
- 944-bug-dapper-linked-account-nft-issue by @tombeckenham in #952
- fixed: hide verified as default make tokenlist use the hook by @zzggo in #951
- 954-bug-signing-transactions-after-logout by @tombeckenham in #957
- fixed: approval window uses new evm profile hook to check detail by @zzggo in #956
Full Changelog: 2.8.2...2.8.3
2.8.2
Release Notes - Version 2.8.2
✨ New Features & Improvements
- Testnet Account Creation: Users can now create a new Testnet account directly within the wallet if no existing Testnet accounts are found when switching to the Testnet network. (3b9080d, 0d33046, 5ef9592). NOTE: It can take up to 2 minutes to figure out that there are no accounts against the publickey on testnet. That will only happen once though
- Mobile Sync Logic: Improved the logic for importing accounts, ensuring the imported account is stored correctly. (7eab0c8) NOTE: you must be on mainnet to sync with mobile
What's Changed
- 859 hotfix feature handle not having accounts eg on testnet by @zzggo in #885
- Cache account info when syncing from mobile by @tombeckenham in #889
- 882 bug cannot switch to testnet add create account when no account is found by @zzggo in #886
Full Changelog: 2.8.1...2.8.2
2.8.1
Flow Wallet 2.8.1 Release Notes
🐛 Bug Fixes
- Fixed the tokenlist rendering blank when the API returns null for the receiver path.
- Fixed the transaction failed issue when using an external public key.
- Fetch the key data without an expiration time when doing a transaction.
Full Changelog: 2.8.0...2.8.1
2.8.0
Flow Wallet Extension v2.8.0 Release Notes
🚀 Major Performance Improvements
Enhanced Loading Speed
- Enhance Registration Process: Significantly reduced the address loading time for account creation
- Faster Extension Launch: Significantly reduced initial loading time through optimized data caching
- Quicker Account Switching: Improved performance when switching between accounts and profiles
- Faster Network Changes: Optimized network switching with better state management
- Improved NFT Loading: Enhanced NFT data retrieval and caching mechanism
Advanced Caching System
- Smart Session Storage: Implemented sophisticated caching with automatic expiration handling
- Background Data Refresh: Added intelligent background refreshing of expired data
- Optimized State Management: Reduced unnecessary re-renders and network requests
- Memory Optimization: Better memory usage through structured cache management
🔧 Technical Improvements
Data Management
- Enhanced Data Storage Model: Completely revamped how data is stored and accessed
- Race Condition Prevention: Improved handling of concurrent data updates
- Type-Safe Data Access: Enhanced type safety throughout the application
- Efficient Data Validation: Added smart validation of cached data with TTL support
Architecture Updates
- Background Processing: Moved heavy operations to background processes
- API Consolidation: Unified token list and balance API implementations
- Better Error Handling: Enhanced error management across the application
- Improved State Synchronization: Better coordination between UI and background processes
🐛 Bug Fixes
- Fixed race conditions in data hooks
- Resolved network value handling issues
- Corrected NFT loading problems
- Fixed account switching issues
- Addressed token-related bugs
- Resolved EVM account display problems
- Fixed gas limit calculation issues
- Fixed the contact loading issue when moving NFTs.
- Fixed empty display on cannot log in page.
💡 Other Improvements
- Enhanced user info retrieval system
- Improved token balance fetching
- Better handling of EVM and Flow accounts
- Updated Flow balance retrieval for all accounts
- Enhanced error handling in data caching
- Improved session management
- Implement password field on seed phrase and private key import.
- Remove the React swipable view from frontend components.
📝 Developer Notes
This release represents a significant architectural improvement in how the extension handles data storage and retrieval. The new caching system and background processing improvements should provide a noticeably better user experience, particularly in areas that previously experienced performance issues.
🔍 Technical Details
- Implemented TTL-based caching with default 30-second expiry
- Added proxy-based change detection for automatic updates
- Introduced LRU caching for specific operations
- Enhanced background refresh listener system
- Improved type safety across the codebase
Full Changelog: 2.7.9...2.8.0