Nuke Solana/Tron/Zano/Decred/Zcash/Haven from the codebase entirely #11

Merged
such-gitea merged 1 commits from github-such-software/hash-wallet:dev into dev 2026-05-17 12:34:54 -04:00
Owner

94 files changed, -5926 net lines. No stubs, no generators, no dead enum
values, no orphan switch branches. Removed for principled reasons (we
do not ship these chains) and to make the codebase smaller and friendlier
to contribute to.

What's gone:

  • lib/{solana,tron,zano,decred,zcash,haven}/ directories
  • lib/exchange/provider/jupiter_exchange_provider.dart (Solana-only)
  • lib/entities/haven_seed_store.dart
  • WalletType.{solana,tron,zano,decred,zcash,haven} enum values
    (HiveField IDs are pinned: Wownero stays at 12, all surviving types
    keep their IDs, so existing user-saved wallets deserialize unchanged)
  • All ~70 lib/ files that imported the removed chain stubs or branched
    on the removed WalletType values
  • backupSeeds(Box) abstract method + Wownero implementation
  • Jupiter exchange branches in send/exchange view models
  • TronGrid usage settings, Zano alias lookups, Zcash transparent address
    handling, Decred default-spv-nodes branches, Haven seed migration

What stays (intentional):

  • CryptoCurrency.{xhv,sol,trx,dcr,zano,zec} enum entries in cw_core —
    they're still used as exchange/swap currency identifiers in
    address_validator.dart and elsewhere. The wallet types are gone but
    the currencies are still tradeable through Trocador.
  • cw_core/spl_token.dart and cw_core/tron_token.dart Hive adapters in
    main.dart — the tokens still register as Hive types for backwards-
    compat with any old box data.
  • lib/buy/{moonpay,robinhood,onramper,dfx,kryptonim,meld}/ provider
    source files (just stripped of solana/tron/etc references; providers
    themselves remain dormant per provider_types.dart).

Pinned-ID note: WalletType enum now has gaps in @HiveField IDs (4, 10,
11, 13, 14, 18 removed). This is deliberate — re-using a freed ID later
would mis-deserialize old hive boxes. Don't renumber.

Bundled config / CI hasn't changed; configure.dart was already free of
these chains in commit 4eb7db0b7.

Issue Number (if Applicable): Fixes #

Description

Please include a summary of the changes and which issue is fixed / feature is added.

Pull Request - Checklist

  • Initial Manual Tests Passed
  • Double check modified code and verify it with the feature/task requirements
  • Format code
  • Look for code duplication
  • Clear naming for variables and methods
  • Manual tests in accessibility mode (TalkBack on Android) passed
94 files changed, -5926 net lines. No stubs, no generators, no dead enum values, no orphan switch branches. Removed for principled reasons (we do not ship these chains) and to make the codebase smaller and friendlier to contribute to. What's gone: - lib/{solana,tron,zano,decred,zcash,haven}/ directories - lib/exchange/provider/jupiter_exchange_provider.dart (Solana-only) - lib/entities/haven_seed_store.dart - WalletType.{solana,tron,zano,decred,zcash,haven} enum values (HiveField IDs are pinned: Wownero stays at 12, all surviving types keep their IDs, so existing user-saved wallets deserialize unchanged) - All ~70 lib/ files that imported the removed chain stubs or branched on the removed WalletType values - backupSeeds(Box<HavenSeedStore>) abstract method + Wownero implementation - Jupiter exchange branches in send/exchange view models - TronGrid usage settings, Zano alias lookups, Zcash transparent address handling, Decred default-spv-nodes branches, Haven seed migration What stays (intentional): - CryptoCurrency.{xhv,sol,trx,dcr,zano,zec} enum entries in cw_core — they're still used as exchange/swap currency identifiers in address_validator.dart and elsewhere. The wallet types are gone but the *currencies* are still tradeable through Trocador. - cw_core/spl_token.dart and cw_core/tron_token.dart Hive adapters in main.dart — the tokens still register as Hive types for backwards- compat with any old box data. - lib/buy/{moonpay,robinhood,onramper,dfx,kryptonim,meld}/ provider source files (just stripped of solana/tron/etc references; providers themselves remain dormant per provider_types.dart). Pinned-ID note: WalletType enum now has gaps in @HiveField IDs (4, 10, 11, 13, 14, 18 removed). This is deliberate — re-using a freed ID later would mis-deserialize old hive boxes. Don't renumber. Bundled config / CI hasn't changed; configure.dart was already free of these chains in commit 4eb7db0b7. Issue Number (if Applicable): Fixes # # Description Please include a summary of the changes and which issue is fixed / feature is added. # Pull Request - Checklist - [ ] Initial Manual Tests Passed - [ ] Double check modified code and verify it with the feature/task requirements - [ ] Format code - [ ] Look for code duplication - [ ] Clear naming for variables and methods - [ ] Manual tests in accessibility mode (TalkBack on Android) passed
such-gitea added 1 commit 2026-05-17 12:34:49 -04:00
Nuke Solana/Tron/Zano/Decred/Zcash/Haven from the codebase entirely
Some checks failed
Hash Wallet Linux build / build (pull_request) Failing after 8m48s
b57ab7cc06
94 files changed, -5926 net lines. No stubs, no generators, no dead enum
values, no orphan switch branches. Removed for principled reasons (we
do not ship these chains) and to make the codebase smaller and friendlier
to contribute to.

What's gone:
- lib/{solana,tron,zano,decred,zcash,haven}/ directories
- lib/exchange/provider/jupiter_exchange_provider.dart (Solana-only)
- lib/entities/haven_seed_store.dart
- WalletType.{solana,tron,zano,decred,zcash,haven} enum values
  (HiveField IDs are pinned: Wownero stays at 12, all surviving types
  keep their IDs, so existing user-saved wallets deserialize unchanged)
- All ~70 lib/ files that imported the removed chain stubs or branched
  on the removed WalletType values
- backupSeeds(Box<HavenSeedStore>) abstract method + Wownero implementation
- Jupiter exchange branches in send/exchange view models
- TronGrid usage settings, Zano alias lookups, Zcash transparent address
  handling, Decred default-spv-nodes branches, Haven seed migration

What stays (intentional):
- CryptoCurrency.{xhv,sol,trx,dcr,zano,zec} enum entries in cw_core —
  they're still used as exchange/swap currency identifiers in
  address_validator.dart and elsewhere. The wallet types are gone but
  the *currencies* are still tradeable through Trocador.
- cw_core/spl_token.dart and cw_core/tron_token.dart Hive adapters in
  main.dart — the tokens still register as Hive types for backwards-
  compat with any old box data.
- lib/buy/{moonpay,robinhood,onramper,dfx,kryptonim,meld}/ provider
  source files (just stripped of solana/tron/etc references; providers
  themselves remain dormant per provider_types.dart).

Pinned-ID note: WalletType enum now has gaps in @HiveField IDs (4, 10,
11, 13, 14, 18 removed). This is deliberate — re-using a freed ID later
would mis-deserialize old hive boxes. Don't renumber.

Bundled config / CI hasn't changed; configure.dart was already free of
these chains in commit 4eb7db0b7.
such-gitea merged commit d7cb4f49b6 into dev 2026-05-17 12:34:54 -04:00
Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: Builds/hash-wallet#11