CakeWallet/lib/entities
cyan 5082dc20f3
CW-519 Enable built-in Tor (#1950)
* tor wip

* Enable tor on iOS

* Prevent app lag when node is exceptionally slow (usually over tor)

* fix: logic in daemonBlockchainHeight refresh
fix: storing tor state

* Pin ledger_flutter_plus dependency to fix builds

* bump arti version

* wip

* add single httpclient

* route everything I was able to catch trough the built-in tor node

* Enable proxy for http.Client [run tests]

* add tor proxy support to cw_evm, cw_tron and cw_polygon [run tests]

* remove log pollution, cleanup [skip slack]

* fix tests not working in latest main [skip slack] [run tests]

* remove cw_wownero import

* fix build issues

* migrate all remaining calls to use ProxyWrapper
add a CI action to enforce using ProxyWrapper instead of http/http.dart to prevent leaks

* fix tor background sync (will work on test builds after #2142 is merged and this PR is rebased on top)

* wip [skip ci]

* relicense to GPLv3 add socks5 license, build fixes

* use ProxyWrapper instead of http in robinhood

* Revert "relicense to GPLv3"

* feat(cw_bitcoin): support socks proxy and CakeTor

* fix(tor): migrate OCP and EVM over to ProxyWrapper()

* chore: cleanup
fix: show tor loading screen when app is starting

* fix: tor switch properly dismisses fullscreen loading dialog
fix: connectToNode after tor startup on app start

* fix(tor): status check for xmr/wow/zano

* fix(tor): onramper request fix

* fix(api): ServicesResponse is now being cached and doesn't fetch data everytime DashboardViewModel is being rebuilt
fix(tor): do not fallback to clearnet when tor failed.
fix(tor): do not leak connections during app startup
chore: refactor bootstrap() function to be separated into bootstrapOffline and bootstrapOnline
fix(cw_bitcoin): migrate payjoin to use ProxyWrapper

* [skip ci] remove print

* address comments from review

* fix: derusting tor implementation

Instead of rust-based Arti I've moved back to the
OG C++ tor implementation.
This fixed all issues we had with Tor.
- onion services now work
- all requests are going through without random errors
- we don't have to navigate a maze of multiple forks of multiple packages
- fully working `torrc` config file (probably will be needed for Tari).
- logging for Tor client
- and so on.

feat: network logging tab
feat: use built-in proxy on Tails - this should resolve all issues for Tails users (needs testing though)

* fix conflicts with main
bump https to fix build issue
relax store() call

* fix(cw_wownero): tor connection
fix(tor): connection issues

* fix(cw_evm): add missing chainId
fix(cw_core): solana rpc fix

* feat: mark tor as experimental
fix: drop anonpay onion authority
fix: drop fiatapi onion authority
fix: drop trocador onion authority
fix: disable networkimage when tor is enabled
fix: handle cakepay errors gracefully

* fix re-formatting [skip ci]

* changes from review

* Delete android/.kotlin/sessions/kotlin-compiler-2468481326039681181.salive

* fix missing imports

* Update pubspec_base.yaml

---------

Co-authored-by: OmarHatem <omarh.ismail1@gmail.com>
2025-06-20 22:56:18 +03:00
..
hardware_wallet Cw 660 add ledger monero (#1747) 2024-11-12 05:26:09 +02:00
action_list_display_mode.dart Flutter upgrade 2022-10-12 13:09:57 -04:00
auto_generate_subaddress_status.dart CW-228 Auto generate monero subaddress (#902) 2023-08-29 19:11:51 +03:00
balance_display_mode.dart Flutter upgrade 2022-10-12 13:09:57 -04:00
biometric_auth.dart CW 781 replace all print statements with printV (#1733) 2024-12-09 20:23:59 +02:00
bip_353_record.dart Improve bip 353 payment method selection modal (#2052) 2025-03-04 03:56:40 +02:00
cake_2fa_preset_options.dart fix: Implement totp on exchange to external ticket as well as update UI properly when a preset is selected (#1156) 2023-11-02 20:17:52 +02:00
calculate_fiat_amount.dart Generic Fixes: Support Errors and others (#1394) 2024-04-25 03:14:53 +02:00
calculate_fiat_amount_raw.dart Flutter upgrade 2022-10-12 13:09:57 -04:00
contact.dart Cw 514 add sort functionality for addressbook mywallets and contacts (#1309) 2024-11-07 03:26:14 +02:00
contact_base.dart Flutter upgrade 2022-10-12 13:09:57 -04:00
contact_model.dart Configure wallet types for the app 2021-12-24 14:41:34 +02:00
contact_record.dart Cw 514 add sort functionality for addressbook mywallets and contacts (#1309) 2024-11-07 03:26:14 +02:00
country.dart cake pay country picker (#1779) 2024-11-07 07:50:48 +02:00
default_settings_migration.dart Remove haven (#2085) 2025-03-21 04:52:05 +02:00
desktop_dropdown_item.dart Dashboard desktop view (#737) 2023-04-14 06:39:08 +02:00
emoji_string_extension.dart fix display of Yat alert when address is empty (#484) 2022-08-26 16:29:00 +01:00
encrypt.dart Secure storage overwrite fix (#1161) 2023-11-15 19:31:25 +02:00
ens_record.dart CW-519 Enable built-in Tor (#1950) 2025-06-20 22:56:18 +03:00
erc20_token_info_explorers.dart feat: Add warning before adding erc20 token via contract address (#1663) 2024-09-12 00:19:47 +03:00
erc20_token_info_moralis.dart feat: Add warning before adding erc20 token via contract address (#1663) 2024-09-12 00:19:47 +03:00
evm_transaction_error_fees_handler.dart Switch to SSL for Cake's Electrum and Monero nodes (#1899) 2024-12-25 21:27:46 +02:00
exchange_api_mode.dart Fix issues from code review 2023-03-01 23:44:15 +02:00
fiat_api_mode.dart [skip ci] Update localization 2022-12-07 14:04:14 +02:00
fiat_currency.dart v4.26.0 Release Candidate (#2191) 2025-04-12 03:23:41 +02:00
fio_address_provider.dart CW-519 Enable built-in Tor (#1950) 2025-06-20 22:56:18 +03:00
format_amount.dart CAKE-160 | added to format_amount.dart case when amount contains ',' symbol 2020-11-09 18:09:04 +02:00
fs_migration.dart CW 781 replace all print statements with printV (#1733) 2024-12-09 20:23:59 +02:00
generate_name.dart prevent using same wallet name as existing (#391) 2022-06-29 18:21:21 +01:00
get_encryption_key.dart CW-599-Extract-Secure-Storage (#1353) 2024-05-08 23:23:27 +03:00
hash_wallet_identifier.dart CW-843: Enhance Wallet Groups Implementation (#2045) 2025-03-06 02:25:38 +02:00
haven_seed_store.dart CW-673: Save Haven seeds to show it to the user after Haven removal (#1518) 2024-12-11 22:31:01 +02:00
ios_legacy_helper.dart Flutter upgrade 2022-10-12 13:09:57 -04:00
language_service.dart Add Vietnamese Language (#1674) 2024-09-11 07:50:41 +03:00
list_order_mode.dart CW-512 wallet sort (#1195) 2023-12-13 23:58:43 +02:00
load_current_wallet.dart Implement background sync for xmr using flutter_daemon (#2094) 2025-03-21 19:22:00 +02:00
main_actions.dart New themes (#2239) 2025-05-25 23:11:45 +03:00
mnemonic_item.dart Flutter upgrade 2022-10-12 13:09:57 -04:00
node_list.dart Add decred (#1938) 2025-03-21 04:18:47 +02:00
openalias_record.dart CW 781 replace all print statements with printV (#1733) 2024-12-09 20:23:59 +02:00
parse_address_from_domain.dart CW-1073 Implement Monero wallet definition URI scheme (#2323) 2025-06-18 17:20:03 +03:00
parsed_address.dart Implement BIP 353 username resolution (#2017) 2025-02-17 23:05:44 +02:00
pin_code_required_duration.dart Generic enhancements (#1668) 2024-09-23 17:10:40 +03:00
preferences_key.dart CW-519 Enable built-in Tor (#1950) 2025-06-20 22:56:18 +03:00
priority_for_wallet_type.dart Remove haven (#2085) 2025-03-21 04:52:05 +02:00
provider_types.dart Remove old cake wallet logo (#2161) 2025-04-07 18:14:35 +02:00
qr_scanner.dart New themes (#2239) 2025-05-25 23:11:45 +03:00
qr_view_data.dart CW-240 Receive fiat currency amount and receive animations (#877) 2023-04-21 20:03:42 +02:00
record.dart Flutter upgrade 2022-10-12 13:09:57 -04:00
secret_store_key.dart CW-599-Extract-Secure-Storage (#1353) 2024-05-08 23:23:27 +03:00
seed_phrase_length.dart Remove haven (#2085) 2025-03-21 04:52:05 +02:00
seed_type.dart v4.28.0 Release Candidate (#2260) 2025-05-16 13:51:36 +03:00
service_status.dart Generic fixes (#1320) 2024-03-10 04:02:30 +02:00
solana_nft_asset_model.dart feat: Enable NFTs for Solana wallet (#2082) 2025-03-14 18:30:19 +02:00
sort_balance_types.dart Cw 78 ethereum (#862) 2023-08-04 20:01:49 +03:00
template.dart Re add chatwoot (#1044) 2023-08-15 03:47:25 +03:00
transaction_creation_credentials.dart Part 1 2020-09-21 14:50:26 +03:00
transaction_description.dart CW 1080: fix(cw_monero): call store() directly after commiting tx (#2312) 2025-06-16 17:49:43 +03:00
transaction_history.dart Flutter upgrade 2022-10-12 13:09:57 -04:00
unstoppable_domain_address.dart CW-519 Enable built-in Tor (#1950) 2025-06-20 22:56:18 +03:00
wallet_contact.dart Flutter upgrade 2022-10-12 13:09:57 -04:00
wallet_description.dart Flutter upgrade 2022-10-12 13:09:57 -04:00
wallet_edit_page_arguments.dart CW-843: Enhance Wallet Groups Implementation (#2045) 2025-03-06 02:25:38 +02:00
wallet_group.dart CW-843: Enhance Wallet Groups Implementation (#2045) 2025-03-06 02:25:38 +02:00
wallet_list_order_types.dart Cw 514 add sort functionality for addressbook mywallets and contacts (#1309) 2024-11-07 03:26:14 +02:00
wallet_manager.dart fix: wallet grouping eating wallets (#2203) 2025-04-14 18:47:31 +02:00
wallet_nft_response.dart feat: Implement NFT Tab for Eth (#1166) 2023-11-22 19:43:26 +02:00
wellknown_record.dart CW-519 Enable built-in Tor (#1950) 2025-06-20 22:56:18 +03:00
yat_record.dart Flutter upgrade 2022-10-12 13:09:57 -04:00
zano_alias.dart CW-519 Enable built-in Tor (#1950) 2025-06-20 22:56:18 +03:00