The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
1.5.0 - 2019-08-06
- Rebranding - updated colors and texts
- Updated README.md with notes on how to build the project
- Fixed bug with refresh of push tokens
- Auto-cleanup of stale (invisible) transactions
- Get In Touch screen from Menu
- Incoming transactions containing data or delegateCalls are blocked now
- "Rate app" in the Menu
- Using new endpoint to check if the safe was already created
1.4.0 - 2019-07-23
- Various stability improvements
- Updated README.md with notes on how to build the project
- Added support for WalletConnect protocol v1.0.0-beta
1.3.1 - 2019-06-19
- Fixed various issues with networking and crashes
- If Touch ID or Face ID cancelled then we don't block the interface
- Fixed bug coming from private key derivation (31 byte vs 32 bytes)
- Fixed broken gesture of "swipe to go back"
1.3.0 - 2019-06-06
- Ability to pay with a ERC20 token for any safe transaction
- Using safe contracts v1.0.0
- Changed API calls to v2 for safe creation, transaction estimation
- Changed hashing scheme based on master copy contract address
- Updated UI designs of most of the screens
- Menu redesign
- Send flow
- Onboarding screens
- Create Safe flow
- Recover Safe flow
- All owner modification flows
- Main screens
- Added 'success' screens to all transaction flows
- Refactored various parts of the app
- Merged several flow coordinators into MainFlowCoordinator
- Merged SegmentViewController into MainViewController
- To enable token payment, touched everywhere where gas token was used.
- Renamed flows and view controllers according to project's unified screen names.
- Improved stability in database migrations
1.2.0 - 2019-04-24
- Tracking of all screen views
- Change password in menu
- Localization keys aligned on all screens
- Firebase performance tracking library added
- New "Licenses" item in menu
- Setup password screens redesign
- Push token endpoint changed to /v2/auth
- App version string in menu
- Swift 5 update
- Bug fixes and stability improvements
1.1.0 - 2019-03-19
- Manage safe browser extension
- Replace browser extension
- Connect browser extension
- Disconnect browser extension
- Resync with browser extension
- Tracking
- Onboarding main actions tracking
- Fixed app freezing after unlocking a phone
- Changed tokens endpoint
1.0.1 - 2019-01-23
- Stability improvements
- Fixing crash in background
- Fixing random crash after transaction submission
- Fixing crash on review transaction screen when network is lossy
1.0.0 - 2018-12-18
- Bug fixes
0.10.0 - 2018-12-13
- Safe recovery
- Replace recovery phrase
0.9.1 - 2018-12-05
- New repository implementations
- Changed token list JSON structure and udpated with new list
- Ability to run migrations in future app updates. Note, that current update is still incompatible with previous versions. Users must delete previous app before installing this version.
0.9.0 - 2018-11-30
- UI design changes and use of components 😻
- Backgrounds changed to white
- Confirm Transaction screen
- Send Transaction screen
- Transaction details screen (incl. empty state)
- Transaction list screen
- Fixed crashes 💥
- Coding guidelines extended
- Fixed UX bugs 🐛
- Manage tokens (hiding glitch, adding delay)
- Cancelling and restarting safe creation
- Comma/dot in the amount input field in Send screen
- Screen titles and back button wordings
- Blockies images (identicons) aligned with other platforms
- Added "Continue" button to password setup screens
- "No tripple character" password reuirement behavior fixed
- Mnemonic word inputs trim whitespaces now
- New lanes added in Fastfile
DesignableViewchanged toBaseCustomView,BaseCustomLabelandBaseCustomButton- Moved from Travis CI to Jenkins! 👏
- New UI components 😻
- TransactionHeaderView
- TransactionFeeView
- TransferView
- TransactionConfirmationView
- AmountLabel
- AddressInput
- EthereumAddressLabel
- FullEthereumAddressLabel
- Implemented
sendTransactionpush handling 📣 - Notification Service Extension to load localized message
0.8.2 - 2018-11-13
- Forced to use always encrypted AppConfig for PreRelease and Release configurations
0.8.1 - 2018-11-08
- Fixed confusing setup password wording
0.8.0 - 2018-10-28
- Terms of Use screen
- Guidelines screen
- Input components in SafeUIKit
- TextInput
- VerifiableInput
- TokenInput
- AddressInput
- Proxy classes for contracts communication (ERC20, safe)
- Transaction list screen functionality implementation
- Querying the database
- Synchronization of pending transactions
- Transaction details screen functionality implementation
- Subscribing on transaction updates
- Sending ERC20 tokens
- Made browser extension
- PreRelease configuration (production-rinkeby services)
- Hashing of transactions according to EIP712 implementation
- Changed confirmation counts for wallet from 2/3 to 1/3 and 2/4
- Nonce is fetched from relay service instead of the contract
- Designs of onboarding screens
0.7.0 - 2018-10-05
- Manage tokens functionality:
- Display tokens on Main screen
- Manage tokens screen
- Add new token screen
- Syncronization of tokens with service
- Syncronization of balances with blockchain
- Share address
- Design adjustments for main screen and menu
- Updated to swift 4.2
- Dropped iOS 10 support
- Optimized Travis build time
- WalletApplicationService refactored
0.6.0 - 2018-08-09
- Configuration management in the AppConfig.yml file
- Sending ETH transaction from mobile app
- Handling incoming accept and reject transaction notifications from browser extension
- Source code documentation of IdentityAccess* modules and MultisigWalletDomainModel module
- Fixed TODOs in code
- Firebase SDK integration
- Push notification authorization and sending / receiving
- Notification to browser extension when safe is created
- Merged Ethereum subproject with MultisigWallet subproject
- Refactored error handling
0.4.1 - 2018-07-11
- Fixed bug in safe creation arised because of API response format change.
0.4.0 - 2018-07-09
- Added source code documentation to common modules.
- Added UI stubs for the screens of main flow:
- Main screen
- New transaction configuration screen
- Pending transaction screen
- Transaction details
- Menu screen
- Added
Transactionentity in MultisigWalletDomainModel. - Added transaction repository with SQLite database implementation.
- Implemented QR code payload verification for pairing with browser extension.
- Extracting owner address
- Check expiration date
- Sign extension address
- Implemented pairing request to notification service (HTTPNotificationService).
- Added copy mnemonic and copy safe address buttons in onboarding.
- Added TokenInput component with separate fields for integer and fractional parts.
- Added various
eth_methods to Infura service. - Added integration tests for transaction sending.
- Added integration test for safe creation, start to end.
- Added integration test for pairing with browser extension.
- Implemented GnosisTransactionRelayService calls:
- POST /safes/
- PUT /safes/<address>/funded
- GET /safes/<address>/funded
- Replaced mock services with real service implementations in
AppDelegate.swit. - Moved integration tests to
safeTeststarget and to separate scheme.
0.3.0 - 2018-06-11
- Created new
MultisigWalletproject with DomainModel, Application and Implementations libraries. - New
Wallet,PortfolioandOwnerobjects - New
Ethereumproject - New Pending Safe screen and basic UI main screen.
- Mock implementations of Transaction Relay Service and Infura service.
- Moved all view controllers and flow coordinators to new SafeAppUI framework.
- Renamed safeUIKit* targets to capitalized names: SafeUIKit*.
- Moved
Databaseand SQLite implementations intoDatabaselibrary.
0.2.0 - 2018-05-03
- New safe configuration screen.
- Browser extension screen with QR code reading.
- Mnemonic generation and confirmation screens.
- Added RSBarcodes dependency.
- Added CHANGELOG.rst (this file).
- SQLite database implementation.
- Documentation of architecture in the docs folder.
- Old code for Account and all related things.
- Dependency configuration is now done through Dependencies folder with git submodules and Library subproject.
- Implementation of IdentityAccess domain logic with User, Gatekeeper, AuthenticationApplicationService and others.
0.1.0 - 2018-04-05
- Setting master password
- Unlocking app