CakeWallet/cw_core/lib
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 Ledger monero fix (#1834) 2024-12-14 01:32:36 +02:00
utils CW-519 Enable built-in Tor (#1950) 2025-06-20 22:56:18 +03:00
account.dart CW-260 show amount received for each account (#907) 2023-05-05 15:58:41 +03:00
account_list.dart Flutter upgrade 2022-10-12 13:09:57 -04:00
address_info.dart CW-228 Auto generate monero subaddress (#902) 2023-08-29 19:11:51 +03:00
amount_converter.dart Add decred (#1938) 2025-03-21 04:18:47 +02:00
balance.dart litecoin mweb support (#1455) 2024-09-28 05:22:25 +03:00
battery_optimization_native.dart CW 781 replace all print statements with printV (#1733) 2024-12-09 20:23:59 +02:00
cake_hive.dart Re add chatwoot (#1044) 2023-08-15 03:47:25 +03:00
crypto_amount_format.dart Flutter upgrade 2022-10-12 13:09:57 -04:00
crypto_currency.dart feat: Load default ERC20 Tokens for existing ETH and Polygon Wallets (#2274) 2025-05-15 22:57:02 +03:00
currency.dart Cw 314 trocador receive screen update (#823) 2023-03-24 17:26:42 +02:00
currency_for_wallet_type.dart Add decred (#1938) 2025-03-21 04:18:47 +02:00
encryption_file_utils.dart CW-676 Add Linux scripts to build monero_c for linux platform (#1527) 2024-08-13 01:18:14 +03:00
enumerable_item.dart Flutter upgrade 2022-10-12 13:09:57 -04:00
enumerate.dart Btc address types (#1263) 2024-02-23 18:13:30 +02:00
erc20_token.dart Label existing scam tokens (#2164) 2025-04-07 18:12:39 +02:00
exceptions.dart - Fix error popup showing multiple times (#1987) 2025-01-30 04:29:55 +02:00
format_amount.dart Move bitcoin and monero parts into self modules. 2021-12-24 14:52:08 +02:00
get_height_by_date.dart CW-519 Enable built-in Tor (#1950) 2025-06-20 22:56:18 +03:00
hive_type_ids.dart implement-payjoin (#1949) 2025-05-12 20:33:14 +03:00
key.dart Flutter upgrade 2022-10-12 13:09:57 -04:00
keyable.dart Move bitcoin and monero parts into self modules. 2021-12-24 14:52:08 +02:00
monero_amount_format.dart Fix incorrect amount parsing due to bytes approximation 2023-02-15 23:16:21 +02:00
monero_balance.dart fix available balance for monero/wownero 2024-12-28 07:15:59 +02:00
monero_transaction_priority.dart Monero update (#1325) 2024-03-14 20:26:00 +02:00
monero_wallet_keys.dart Zano with passphrase (#1971) 2025-01-24 20:33:24 +02:00
monero_wallet_utils.dart fix: do not overwrite monero backup files if they exist. (#2202) 2025-04-14 18:46:45 +02:00
mweb_utxo.dart Mweb enhancements 4 (#1768) 2024-11-07 04:57:36 +02:00
n2_node.dart Generic Fixes (#1373) 2024-04-12 16:01:21 +02:00
nano_account.dart CW-438 add nano (#1015) 2023-10-05 04:09:07 +03:00
nano_account_info_response.dart CW-438 add nano (#1015) 2023-10-05 04:09:07 +03:00
node.dart CW-519 Enable built-in Tor (#1950) 2025-06-20 22:56:18 +03:00
output_info.dart Cw 537 integrate thor chain swaps (#1280) 2024-03-28 14:41:11 +02:00
parseBoolFromString.dart Move bitcoin and monero parts into self modules. 2021-12-24 14:52:08 +02:00
pathForWallet.dart Wownero (#1485) 2024-07-04 22:43:17 +03:00
payjoin_session.dart implement-payjoin (#1949) 2025-05-12 20:33:14 +03:00
pending_transaction.dart WIP: CW-665 Implement AirGapped Monero Transactions (#1535) 2024-11-09 20:59:47 +02:00
receive_page_option.dart Add decred (#1938) 2025-03-21 04:18:47 +02:00
root_dir.dart Wownero (#1485) 2024-07-04 22:43:17 +03:00
sec_random_native.dart Wownero (#1485) 2024-07-04 22:43:17 +03:00
set_app_secure_native.dart Implement background sync for xmr using flutter_daemon (#2094) 2025-03-21 19:22:00 +02:00
solana_rpc_http_service.dart CW-519 Enable built-in Tor (#1950) 2025-06-20 22:56:18 +03:00
subaddress.dart CW-611-Refactor-Address-Handling (#1630) 2024-09-28 05:38:23 +03:00
sync_status.dart Add decred (#1938) 2025-03-21 04:18:47 +02:00
transaction_direction.dart Flutter upgrade 2022-10-12 13:09:57 -04:00
transaction_history.dart CW-214-Monero-wallet-rescan-bug (#945) 2023-07-11 20:56:01 +03:00
transaction_info.dart Mweb enhancements 4 (#1768) 2024-11-07 04:57:36 +02:00
transaction_priority.dart Flutter upgrade 2022-10-12 13:09:57 -04:00
unspent_coin_type.dart Peg in and peg out flow (#1745) 2024-10-15 00:28:38 +03:00
unspent_coins_info.dart Cw 830 coin control getting cleared (#1825) 2024-11-28 17:53:03 +02:00
unspent_comparable_mixin.dart Cw 830 coin control getting cleared (#1825) 2024-11-28 17:53:03 +02:00
unspent_transaction_output.dart fix: incorrect balance in send card (#2158) 2025-04-04 12:56:07 +02:00
wallet_addresses.dart CW 781 replace all print statements with printV (#1733) 2024-12-09 20:23:59 +02:00
wallet_addresses_with_account.dart Flutter upgrade 2022-10-12 13:09:57 -04:00
wallet_base.dart CW-997 coin control enhancements / send ALL fixes (#2114) 2025-03-30 16:52:46 +02:00
wallet_credentials.dart CW-843: Enhance Wallet Groups Implementation (#2045) 2025-03-06 02:25:38 +02:00
wallet_info.dart CW-843: Enhance Wallet Groups Implementation (#2045) 2025-03-06 02:25:38 +02:00
wallet_keys_file.dart CW-676 Add Linux scripts to build monero_c for linux platform (#1527) 2024-08-13 01:18:14 +03:00
wallet_service.dart Cw 660 add ledger monero (#1747) 2024-11-12 05:26:09 +02:00
wallet_type.dart Address-formatting-enhancements-MWEB (#2189) 2025-04-11 19:51:30 +02:00
window_size.dart CW 781 replace all print statements with printV (#1733) 2024-12-09 20:23:59 +02:00
wownero_amount_format.dart Wownero (#1485) 2024-07-04 22:43:17 +03:00
wownero_balance.dart fix available balance for monero/wownero 2024-12-28 07:15:59 +02:00
zano_asset.dart Zano asset logo (#2010) 2025-02-19 00:31:25 +02:00