Commit graph

458 commits

Author SHA1 Message Date
openoms
f9ea973be9
fix overflow error on 32bit ARM
based on #857 as discussed in #953
2021-08-02 12:52:33 +01:00
Adam Gibson
ef69ec0348
add release notes and version for 0.9.0 2021-07-31 14:51:00 +01:00
Adam Gibson
f6eaafc31a
Merge #942: Fix Qt wallet view update to be reactive
f857e6e Fix Qt wallet view update to be reactive (Adam Gibson)
2021-07-27 16:02:48 +01:00
Adam Gibson
a9f45ed1c8
Merge #937: Support fidelity bond wallet in Qt
b27659c Support fidelity bond wallet in Qt (Wukong)
2021-07-27 15:52:56 +01:00
Adam Gibson
f857e6ef66
Fix Qt wallet view update to be reactive
Previous to this commit, the Qt app had a monitoring
loop that triggered every 5 seconds, recalculating the
wallet view; this turns out to be expensive enough to
create a CPU bound that is noticeable to the user, for
any reasonably large wallet.
After this commit, the view is only updated when a new
transaction comes into the wallet.
2021-07-25 18:50:48 +01:00
Wukong
b27659ce71 Support fidelity bond wallet in Qt 2021-07-23 10:36:41 -07:00
Kristaps Kaupe
7be5e5dfa0
By default auto-expand mixdepth 0 2021-07-23 17:47:01 +03:00
Wukong
0e2850acf2 Auto expand internal addresses that has non zero balances, and only auto expand the external addresses of mix depth 0. 2021-07-20 10:29:47 -07:00
chris-belcher
97b8b3b32a
Show fidelity bonds on orderbook watch html page
Add two new pages for the orderbook watch html server. One displays
each fidelity bond individually, the other shows calculations about
how expensive a successful sybil attack would be against the current
fidelity bonds in the orderbook.
2021-07-20 12:47:56 +01:00
chris-belcher
6b6fc4ae5d
Handle fidelity bonds in client-server protocol
Parse incoming and announce outgoing fidelity bond messages

Fidelity bond proof messages will be checked and added to the internal
database just like offers. Such messages are not announced in public
but only directly to takers who ask for them, this is because the
signature proofs must commmit to the maker's and taker's IRC nicknames
in order to avoid replay attacks.
2021-07-16 15:06:32 +01:00
Adam Gibson
cde95f8829
update version to 0.9.0dev 2021-06-28 14:49:01 +01:00
Adam Gibson
1d4a6fdb54
Add release notes and version for 0.8.3 2021-06-18 20:47:06 +01:00
Adam Gibson
8b70836b29
Merge #890: Prevent absurdly low minsizes in yg-pe
bc2d604 Prevent absurdly low minsizes in yg-pe (Adam Gibson)
2021-06-07 11:19:34 +01:00
Adam Gibson
bc2d604639
Prevent absurdly low minsizes in yg-pe
Fixes #889.
Prior to this commit, it was possible for the
yg-privacyenhanced.py script to go into an infinite
loop of attempting to halve the txfee setting, in case
the user selected (a) reloffer, (b) an absurdly low
minsize like 1 sat, and (c) a txfee of zero.
This occurred partially due to the randomization of minsizes
included in the yg-pe algorithm, which could lead to a
pathological zero value for minsize.
After this commit the minsize is automatically bumped to
the `DUST_THRESHOLD` value if it falls below it, preventing
the possibility of a nonsensical value.
Additionally, the loop which halves the txfee is no longer
allowed to continue beyond 20 iterations, as an extra sanity
check.
2021-06-07 11:18:30 +01:00
Adam Gibson
4599bd75a8
Fix autofreeze warning on Qt 2021-06-06 11:57:15 +01:00
undeath
ae5765701a
ob-watcher.py: gracefully exit on old python versions 2021-06-03 13:34:35 +02:00
Kristaps Kaupe
1c86cd78e2
Merge #887: Qt: Clear single send form after successful send
79493749d9 Clear single send form after successful send (Kristaps Kaupe)

Pull request description:

  Helps to avoid accidental sending twice to the same recipient and also clears fields for the user who needed to do it manually if doing more than one send in a single JoinMarketQt session.

Top commit has no ACKs.

Tree-SHA512: 1f79663d1d24718d038972d3b5d670f1a00f038b5169a627c82657154b3587c515b7c9fe99924208dc21e32ddb2e38d0cb8bab54cbe359585e0e459d94f5bbfc
2021-06-01 22:45:28 +03:00
csH7KmCC9
ad8cd74ee9
Enable external/custom change addresses.
Fixes #797.

Adds `custom_change_addr` argument to `direct_send()`
joinmarket-qt: Adds input field for optional external change address
joinmarket-qt: Better handle PayJoin/CoinJoin state changes for changeInput widget
Adds `custom_change_address` argument to Taker constructor and use it in joinmarket-qt
Custom change also allowed in sendpayment CLI with `-u` flag (not
supported in tumbler).
Explicitly disallows using custom change with BIP78 Payjoin, though that
could change later.
Both sendpayment and CLI provide detailed warnings to avoid misuse. In
particular, they have an extra warning for using a nonstandard or
non-wallet scriptpubkey type.
Setting custom change to the recipient address is explicitly forbidden.

Tests: Adds custom_change usage test in test_taker.
2021-06-01 12:29:59 +01:00
Kristaps Kaupe
79493749d9
Clear single send form after successful send 2021-06-01 13:27:57 +03:00
Kristaps Kaupe
733a7bc094
Merge #870: Don't create logs, wallets and cmtdata subdirectories under scripts
25b2e8e6f4 Don't create logs, wallets and cmtdata subdirectories under scripts (Kristaps Kaupe)

Pull request description:

  Leftover from #475. These empty directories may confuse users.

Top commit has no ACKs.

Tree-SHA512: fafe30639a4b14a95b15bf947011ca6b8ca54a69576e133efc51dbcb530abfabd9df4affc081eda196954e331a337f263444d858474df3153775920c33873eb2
2021-05-17 18:31:51 +03:00
Kristaps Kaupe
25b2e8e6f4
Don't create logs, wallets and cmtdata subdirectories under scripts 2021-05-17 14:59:32 +03:00
Adam Gibson
bc55841ce6
Merge #875: jm-qt: Clarify error message: "0" is a valid input to numCPInput
1c2b6cd jm-qt: Clarify error message: "0" is a valid input to `numCPInput` (csH7KmCC9)
2021-05-16 12:10:51 +01:00
csH7KmCC9
1c2b6cdb1c
jm-qt: Clarify error message: "0" is a valid input to numCPInput 2021-05-14 21:05:09 +00:00
csH7KmCC9
2bde2f970b
jm-qt: Don't annoy the user for removing an address
No address is a valid state for the addressInput. Not having entered an
address *is* an error once the user clicks the start button, but that is
handled by `validateSingleSend()`.
2021-05-13 20:47:17 +00:00
chris-belcher
3edd07c3f8
Remove reused donation addresses 2021-05-03 16:02:56 +01:00
Adam Gibson
d6bacbf27e
Merge #854: Fix SNICKER client-daemon setup
c30929a Fix SNICKER client-daemon setup (Adam Gibson)
2021-04-20 14:28:30 +01:00
Kristaps Kaupe
512fab735a
Fix remaining flake8 errors 2021-04-17 20:49:26 +03:00
Adam Gibson
c30929a31c
Fix SNICKER client-daemon setup
This commit fixes two minor bugs encountered in
running create-snicker-proposal.py. First, the
port for AMP connections was not correct (by
convention it is now the Joinmarket proto main port
minus 1000), second in the above mentioned script,
the reactor startup client side was not disabling
the Joinmarket protocol, as it should.
2021-04-16 22:46:54 +01:00
Kristaps Kaupe
967a5bd0ae
Merge #852: Remove unused imports
fde23c3cc5 Remove unused imports (Kristaps Kaupe)

Pull request description:

  [Module imported but unused (F401)](https://www.flake8rules.com/rules/F401.html)
  ```
  $ flake8 --select=F401 $(git ls-files "*.py")
  ```

Top commit has no ACKs.

Tree-SHA512: 14cc06e521f533e194143ad0e553adb3646651b35633af90eb10fcb9f168bd1ca0bf890fa21ab1d89f01b12fc02aa77b4b2c1341186c127ad4a2df46f041cccd
2021-04-15 18:08:37 +03:00
Kristaps Kaupe
fde23c3cc5
Remove unused imports 2021-04-14 15:54:18 +03:00
Adam Gibson
91bfa4d257
Merge #846: Require confirmed coins to receive payjoin
0d21b92 Require confirmed coins to receive payjoin (Kristaps Kaupe)
2021-04-12 20:01:04 +01:00
Adam Gibson
89fa0109a6
Merge #808: New Yield Generator: the perfect private cycler
993003e Change mixdepth selection of yg-privacyenhanced (Pantamis)
2021-04-12 17:09:00 +01:00
Pantamis
993003e1dc Change mixdepth selection of yg-privacyenhanced
Overwrite the selection logic of mixdepth with the cyclic order one. Improve comment to explain why modulo is used only for the first available mixdepth.

Nit correction

Co-authored-by: Kristaps Kaupe <kristaps@blogiem.lv>
2021-04-06 23:00:42 +02:00
Kristaps Kaupe
0d21b927c5
Require confirmed coins to receive payjoin 2021-04-02 21:16:27 +03:00
Adam Gibson
15468cbd15
Payjoin receiver via daemon.
This completes the task of enabling
network isolation by running the receiver
side using a hidden service in the daemon,
and communicating over AMP, as is already
the case for the sender.
Updates test_payjoin for daemon receiver.
Qt BIP78 receiver update for daemon.
2021-03-24 13:48:41 +00:00
Adam Gibson
b6e2576c3a
BIP78 sender protocol via daemon
This PR creates a client-daemon protocol for
the BIP78 sender, using the base protocol
`HTTPPassThrough` which provides tor and non-tor
agents with POST and GET request functionality.
As for Joinmarket coinjoins, the use of an in-process
daemon is the default option, but it can be isolated
by changing the `[DAEMON]` section of the config.
The receiver side of BIP78 will be addressed in a
future PR.
2021-03-14 11:53:51 +00:00
Adam Gibson
0ef05554ba
update version to 0.8.3dev 2021-03-09 16:19:08 +00:00
Adam Gibson
d235638b71
Add release notes and version for 0.8.2 2021-03-08 17:08:07 +00:00
Adam Gibson
53a1822fa6
Adds SNICKER functionality
For detailed description of functionality in
this commit, see the newly created docs/SNICKER.md
2021-02-18 11:05:54 +00:00
Adam Gibson
9d7f332dea
Correct formatting of sendtomany help message.
Also refactors IndentedHelpFormatterWithNL to be in
jmbase so it can be used by all scripts for future
updates.
2021-02-17 17:01:37 +00:00
Adam Gibson
2406118876
Merge #793: Update tests to use 1/0 not True/False addr type
47b2a9c Update tests to use 1/0 not True/False addr type (Adam Gibson)
2021-02-13 17:27:51 +00:00
Adam Gibson
09d906c25f
Merge #801: Fix #775, provide wtype to get_wallet_cls
67791ed Fix #775, provide wtype to get_wallet_cls (Nicolas Kuttler)
2021-02-13 17:26:49 +00:00
Kristaps Kaupe
cbf0f240d9
Merge #803: Vendorize js and css dependencies
fc74c94c35 add missing jquery lib to ob-watcher.py (undeath)
5f8219617d fix ob-watcher.py serving from relative location (undeath)
ddcfd608e4 simplify ob-watcher.py static file serving code (undeath)
693609e095 Vendorize js and css dependencies (3nprob)

Pull request description:

  Fixes #804

  While integrity checks could solve the first point, IMO it makes more sense to host these locally as well. This fixes that.

ACKs for top commit:
  kristapsk:
    ACK fc74c94c35

Tree-SHA512: f898b996943a6cdc47d84a2bbb61e6a591428a6388bb3b71853ce4a92dd139ff05d288544560d7f58903efaf242de39589839991c0595dd0db42ca007f5c838d
2021-02-13 11:45:46 +02:00
undeath
fc74c94c35
add missing jquery lib to ob-watcher.py 2021-02-11 14:32:17 +01:00
undeath
5f8219617d
fix ob-watcher.py serving from relative location 2021-02-10 21:38:15 +01:00
undeath
ddcfd608e4
simplify ob-watcher.py static file serving code 2021-02-10 17:54:07 +01:00
Adam Gibson
5c6eaafed1
update version to 0.8.2dev 2021-02-10 15:37:28 +00:00
3nprob
693609e095 Vendorize js and css dependencies 2021-02-10 22:59:35 +09:00
Nicolas Kuttler
67791ed3a0 Fix #775, provide wtype to get_wallet_cls 2021-02-09 19:06:57 +01:00
Adam Gibson
990faace9f
Add release notes and version for 0.8.1 2021-02-09 17:57:49 +00:00