Commit graph

7518 commits

Author SHA1 Message Date
Alva Swanson
462144eb8f
api: Remove getoffers' --all option 2024-12-20 23:59:42 +00:00
Alva Swanson
f098ece85e
BitcoinjBsqTests: Create per test BSQ wallet
At the moment, some tests are sharing the same BSQ wallets. This change
creates a separate wallet for indenpendent tests to improve the tests's
reliability.
2024-12-09 10:32:38 +00:00
Alva Swanson
53467f953a
RegtestWalletAppKit: Implement createNewBsqWallet method
The createNewBsqWallet method creates a new BitcoinJ wallet and
registers it with BitcoinJ's BlockChain and PeerGroup.
2024-12-09 10:29:33 +00:00
Alva Swanson
b78f3abb29
Add send more BSQ than in wallet test 2024-12-09 10:26:59 +00:00
Alva Swanson
848694ad86
Add send BSQ from empty wallet test 2024-12-09 10:24:22 +00:00
Alva Swanson
5ac81f9945
BitcoinjRegtestSetup: Implement wallet funding
The fundWallet method sends the given amount to the BitcoinJ wallet from
the Bitcoin Core miner wallet, mines one block, and waits until the
BitcoinJ wallet updates its wallet balance.
2024-12-09 10:15:33 +00:00
Alva Swanson
1aa4a3d048
BsqWalletV2Test: Add invalid and dust send tests
The tests try to send 0 BSQ and the current dust amount in BSQ.
2024-12-09 09:58:40 +00:00
Alejandro García
10a3a048c1
Merge pull request #7294 from alvasw/sendBsq_Throw_InsufficientMoneyException_when_BSQ_balance_too_low
sendBsq: Throw InsufficientMoneyException when BSQ balance too low
2024-11-20 05:49:03 +00:00
Alejandro García
7a6ef6b8e9
Merge pull request #7293 from alvasw/core_Implement_sendBsqTest
core: Implement sendBsqTest
2024-11-20 05:48:20 +00:00
Alejandro García
dc2cd1792b
Merge pull request #7312 from alvasw/FederatedBtcNodeProvider_Compare_banned_node_address_and_port
FederatedBtcNodeProvider: Compare banned node address and port
2024-11-20 05:47:35 +00:00
Alejandro García
d67a234e3e
Merge pull request #7311 from alvasw/BtcNodeProvider_Fix_BTC_node_banning
BtcNodeProvider: Fix BTC node banning
2024-11-20 05:47:01 +00:00
Alejandro García
9aed52f2b3
Merge pull request #7309 from alvasw/BtcNodes_Fix_hostname_parsing
BtcNodes: Fix hostname parsing
2024-11-20 05:45:57 +00:00
Alejandro García
633c9c1599
Merge pull request #7308 from alvasw/Add_FederatedBtcNodeProviderTest.onlyHardcodedNodes_test
Add FederatedBtcNodeProviderTest.onlyHardcodedNodes test
2024-11-20 05:45:30 +00:00
Alejandro García
624467a90d
Merge pull request #7307 from alvasw/Pass_list_of_nodes_instead_of_BtcNodes_class_to_FederatedBtcNodeProvider
Pass nodes instead of BtcNodes class to FederatedBtcNodeProvider
2024-11-20 05:45:04 +00:00
Alejandro García
1ba9d842ea
Merge pull request #7306 from alvasw/Move_federated_BTC_node_selection_to_FederatedBtcNodeProvider
Move federated BTC node selection to FederatedBtcNodeProvider
2024-11-20 05:43:48 +00:00
Alejandro García
0ddbd30e6b
Merge pull request #7305 from alvasw/BtcNode_Make_port_field_final
BtcNode: Make port field final
2024-11-20 05:43:14 +00:00
Alejandro García
f3c986ce47
Merge pull request #7304 from alvasw/Fix_duplicates_in_BtcNode_list
Fix duplicates in BtcNode list
2024-11-20 05:42:45 +00:00
Alejandro García
42f757fa1d
Merge pull request #7303 from alvasw/fix_typo_from_pr_7120
FeedbackWindow: Fix double wording from PR #7120
2024-11-20 05:41:45 +00:00
Alejandro García
33e760b49e
Merge pull request #7297 from alvasw/fix_bitcoin_core_peer_selection
BtcNetworkConfig: Shuffle Bitcoin Core peers
2024-11-20 05:41:06 +00:00
Alva Swanson
17d48d989a
FederatedBtcNodeProvider: Compare banned node address and port 2024-11-18 22:22:22 +00:00
Alva Swanson
0da22ab3b0
BtcNodeProvider: Fix BTC node banning
The FederatedBtcNodeProvider compared the list of banned nodes with each
BtcNode's hostname instead of checking a BtcNode's hostname, ip address,
and onion address.
2024-11-18 22:20:26 +00:00
Alva Swanson
41fbb75468
BtcNodes: Fix hostname parsing
The fromFullAddress method parsed hostnames as IPV4 addresses instead as
hostnames.
2024-11-18 22:17:08 +00:00
Alva Swanson
f7d80ee1a8
Add FederatedBtcNodeProviderTest.onlyHardcodedNodes test 2024-11-18 22:15:16 +00:00
Alva Swanson
c4e82d59ec
Pass filterProvidedBtcNodes and bannedBtcNodes to FederatedBtcNodeProvider 2024-11-18 22:13:01 +00:00
Alva Swanson
bc6954e53a
Pass list of nodes instead of BtcNodes class to FederatedBtcNodeProvider 2024-11-18 22:10:12 +00:00
Alva Swanson
b90b7b5e21
Move federated BTC node selection to FederatedBtcNodeProvider 2024-11-18 22:08:13 +00:00
Alva Swanson
ba31dd70a5
BtcNode: Make port field final 2024-11-18 22:01:51 +00:00
Alva Swanson
840319a955
Fix duplicates in BtcNode list
When the user uses our federated BTC nodes, we merge the hard-coded
nodes with the ones provided by the filter. The hard-coded node's
operator field is set to the node's operator and operator field of the
nodes from the filter is set to "Provided by filter". When the same BTC
node is in the hard-coded list and the filter, Bisq adds both to the
merged list because the operator field is different.

This change explicitly marks the onionAddress, hostName, address, and
port field to be used in the hashCode and equals implementation.
2024-11-18 21:59:56 +00:00
Alva Swanson
8ef76bb408
FeedbackWindow: Fix double wording from PR #7120 2024-11-18 21:56:13 +00:00
Alva Swanson
56a0bef4e0
BtcNetworkConfig: Shuffle Bitcoin Core peers
We try to connect to the first 7 Bitcoin Core nodes always in the same
order. Only if connections to these nodes fail we look further into the
list. This change shuffles the node addresses before passing them to
BitcoinJ thus removing the bias from the first 7 prioritized nodes.
2024-11-14 01:58:21 +00:00
Alva Swanson
1e3e70ee9e
BtcNetworkConfig: Don't create unused array 2024-11-14 01:58:19 +00:00
Alva Swanson
a7ff5345fe
sendBsq: Throw InsufficientMoneyException when BSQ balance too low
We should throw an InsufficientMoneyException when the CoinSelection
gathered amount is lower than the amount the user wants to send.
2024-11-14 01:54:17 +00:00
Alva Swanson
cc571a3351
core: Implement sendBsqTest
First, the sendBsq test creates one BTC and two BSQ wallets. Afterward,
it funds the BTC and one BSQ wallet with 1 BTC. Next, the funded BSQ
wallet sends 100 BSQ to the second BSQ wallet.
2024-11-14 01:54:17 +00:00
Alva Swanson
9f747f3743
core: Add dependency to bitcoind:regtest (integration source set) 2024-11-14 01:54:16 +00:00
Alva Swanson
abcc9f8185
core: Implement sendBsqTest
First, the sendBsq test creates one BTC and two BSQ wallets. Afterward,
it funds the BTC and one BSQ wallet with 1 BTC. Next, the funded BSQ
wallet sends 100 BSQ to the second BSQ wallet.
2024-11-14 01:53:25 +00:00
Alva Swanson
3263a9145b
core: Add dependency to bitcoind:regtest (integration source set) 2024-11-14 01:53:25 +00:00
Alva Swanson
e2bbfdb8a6
core: Add dependency to bitcoind:regtest (integration source set) 2024-11-14 01:51:37 +00:00
Alejandro García
f9a2345228
Merge pull request #7290 from alvasw/core_Implement_RegtestWalletAppKit
core: Implement RegtestWalletAppKit
2024-11-12 06:34:07 +00:00
Alejandro García
9af707d4e4
Merge pull request #7287 from alvasw/core_Implement_WalletFactory
core: Implement WalletFactory
2024-11-12 06:31:18 +00:00
Alva Swanson
33a968a6d5
core: Implement RegtestWalletAppKit
The RegtestWalletAppKit sets up BitcoinJ and loads the given wallets.
2024-11-10 22:17:59 +00:00
Alva Swanson
77c48d8dd8
core: Implement WalletFactory
The WalletFactory can create BTC and BSQ wallets.
2024-11-08 19:11:47 +00:00
Alva Swanson
6722d9d691
BsqWalletV2: Implement send BSQ
The sendBsq method creates a BSQ transaction, signs the BSQ inputs, and
adds the requires BTC mining fees to the transcation.
2024-11-07 20:50:31 +00:00
Alva Swanson
fbebdb7d3c
BtcWalletV2: Implement addMiningFeesToBsqTx
The addMiningFeesToBsqTx method adds BTC mining fees to a given BSQ
transaction and tx fee amount.
2024-11-07 20:48:59 +00:00
Alva Swanson
687f247d06
core: Implement transaction offset signing
The BisqTransactionSigner signs the inputs of a transaction after the
given offset using the LocalOffsetTransactionSigner. The
LocalOffsetTransactionSigner is identical to BitcoinJ's
LocalTransactionSigner. The only difference is that the
LocalOffsetTransactionSigner accepts an offset in its constructor. All
inputs below this offset are skipped during signing.

This is needed for Bisq's BSQ implementation because the mining fees of
BSQ transactions come from Bisq's BTC wallet. BitcoinJ's
LocalTransactionSigner expects all inputs to be part of the same wallet.
2024-11-07 20:46:37 +00:00
Chris Parker
2556db7b37
Added 500+ string translations to Russian language file
Removed *non-printable characters* that were accidentally added
during word analysis of the translations file:
   ... (например, «С днем \u200b\u200bрождения, Сьюзен!») ...
While apparently harmless and invisible, these do not belong
and a needle in the haystack later, so removing them now.
2024-10-12 19:26:32 -04:00
Chris Parker
90644c3514
Added 500+ string translations to Russian language file
Code Review follow-up - fix incorrect instances of "''"
vs. "'" when substitutions ("{0}", etc.) are present or
absent.
2024-10-11 12:30:23 -04:00
Chris Parker
5908d16720
Added 500+ string translations to Russian language file
Minor typographical correction: Added back a blank line to preserve
line number matching during code review. No change to strings.
2024-10-11 03:02:34 -04:00
Chris Parker
ecb09a4bef
Added 500+ string translations to Russian language file
Previously, about 1,585 out of 2,676 strings (59.23%) were
translated into Russian, the rest remained in English.
This meant a native Russian speaker with limited English
ability might have great difficulty using Bisq application
and might not understand or notice the way the system
works and the many important pop-ups that can appear.
Now there are about 2,103 strings in Russian (78.59%) and
most of the messages the end user normally would see are
displayed in Russian, making the application very usable.
2024-10-11 02:36:54 -04:00
Chris Parker
2ed9abf000
Create payment method "Faster Payments System (SBP)" for Russian Ruble
Removed all caps of "RUSSIA" in new account pop-up and renamed existing
payment method "Faster Payments" which is a similarly named payment
method to "Faster Payment System (UK)", as required follow-up to
to pull request https://github.com/bisq-network/bisq/pull/7255 and
discussed in issue https://github.com/bisq-network/growth/issues/288
2024-10-02 21:37:10 -04:00
HenrikJannsen
f37344bdc6
Merge pull request #7252 from cparke2/phone-number-validator-required-length-option
New option in PhoneNumberValidator to enforce exact number of digits
2024-09-27 16:07:50 +07:00