Twitter had a set of Compose rules, which have been forked into Detekt, Ktlint, and Android Lint implementations.
I see ktlint as mostly being formatting, Detekt being more for multiplatform static analysis, and Android Lint for Android-specific issues. Android lint is slow, so I didn’t want to use it as the first choice.
I went with the Detekt implementation which can be useful if we leverage multiplatform for our Composables in the future.
* Adopt SDK 1.10.0 API changes
* Rename ShieldedSapling -> LegacySapling
* Viewing key re-derived for fix fixture value
* Changes used API for retrieving Transparent address
- Switched API DerivationTool.deriveTransparentAddress() -> Synchronizer.getLegacyTransparentAddress()
- Renamed Transparent -> LegacyTransparent
* Adds new common transaction model class
- Synchronizer.toTransactions() now works only with clearedTransactions and pendingTransactions
-Added CommonTransaction wrapper for all attributes of PendingTransaction and TransactionOverview to cover as much as possible. It's prepared for discussion about which attributes we really need and which we can omit.
* Regeneration of addresses in fixture
- Applies for both Transparent and Sapling addresses
- Fixed related test
- Added a new test for checking Transparent address abbreviation, as it also serves as a little check of the fixture address and can prevent an incorrect address change in the future
* Remove Viewing key usage from entire app
- As we agreed that the app should not access to it now
- Removed from all related places
* Change CommonTransaction to sealed class
* Comments update
* Switch SDK to 1.10.0-beta01-SNAPSHOT version
* Revert back legacy naming on Transparent and Sapling addresses
* Increased timeout limit to satisfy SDK initialization
* Remove unused import
- Basic screen UI scaffolding.
- Set up communication with Google Play in-app update API.
- Mocking communication with Google Play API.
- Added unit, UI and integration tests for the in-app update screen model, util, view and viewmodel classes.
- Added mock implementation of helper AppUpdateChecker class.
- Introduced ViewModel integration test.
- Filed issue for future manual testing of implemented in-app update mechanisms after the wallet app is released on Google Play.
- Implement FakeAppUpdateManager in AppUpdateCheckerMock instead of the ugly AppUpdateInfo instantiation - this affected the tests too.
Co-authored-by: Carter Jernigan <git@carterjernigan.com>