Commit Graph

1315 Commits

Author SHA1 Message Date
Daniel Karzel
89b3d07eba
Network protocol tests for spot_price behaviour
Each test spawns swarm for Alice and Bob that only contains the spot_price behaviours and uses a memory transport.
Tests cover happy path (i.e. expected price is returned) and error scenarios.
Implementation of `TestRate` on `LatestRate` allows testing rate fetch error and quote calculation error behaviour.

Thanks to @thomaseizinger for ramping up the test framework for comit-rs in the past!
2021-05-07 15:00:29 +10:00
Daniel Karzel
03a0dc73cd
Alice's spot_price Behaviour reports back Error
Instead of handling all errors on the inside spot_price errors are bubbled up (as `SwapRequestDeclined`).
This allows us to test both Alice's and Bob's behaviour for all scenarios.
2021-05-07 15:00:29 +10:00
Daniel Karzel
5aac76598d
Decouple ASB/CLI Errors from Error sent over wire
What goes over the wire should not be coupled to the errors being printed.
For the CLI and ASB we introduce a separate error enum that is used for logging.
When sending over the wire the errors are mapped to and from the `network::spot_price::Error`.

As part of Bob-specific spot_price code was moved from the network into bob.
Clearly separation of the network API from bob/alice.
2021-05-07 15:00:29 +10:00
Daniel Karzel
52f648e1de
Alice's spot price logic into dedicated behaviour
Move Alice's spot price logic into a dedicated network behaviour that handles all the logic.
The new behaviour encapsulates the complete state necessary for spot price request decision making.
The network behaviour cannot handle asynchronous calls, thus the balance is managed inside the spot price and has to updated regularly from the outside to ensure the spot price balance check has up to date data.
At the moment the balance is updated upon an incoming quote requests.

Code that is relevant for both ASB and CLI remains in the `network::spot_price` module (e.g. `network::spot_price::Error`).
2021-05-07 15:00:29 +10:00
Daniel Karzel
ea76ae5821
Return proper error to CLI for all expected scenarios
When a CLI requests a spot price have some errors that are expected, where we can provide a proper error message for the CLI:
- Balance of ASB too low
- Buy amount sent by CLI exceeds maximum buy amount accepted by ASB
- ASB is running in maintenance mode and does not accept incoming swap requests

All of these errors returns a proper error to the CLI and prints a warning in the ASB logs.
Any other unexpected error will result in closing the channel with the CLI and printing an error in the ASB logs.
2021-05-07 14:52:51 +10:00
Daniel Karzel
f6497778ed
Add resume-only mode for the ASB
Resume-only is a maintenance mode where no swaps are accepted but unfinished swaps are resumed.
This is achieve by ignoring incoming spot-price requests (that would lead to execution setup) in the event-loop.
2021-05-07 14:52:51 +10:00
bors[bot]
08d7d587cf
Merge #466
466: Add support to dynamically chose bitcoin transaction fees.  r=bonomat a=bonomat

Resolves #443 (Bitcoin only). 

@da-kami  /@thomaseizinger: do you know how fees work in Monero? 
If not, I'll read up on it and to come up with a proper strategy. 

Monero Fees will be covered in #470

Note: 
The there is a hardcoded relative and absolute upper bound. I personally feel safer if this is hardcoded for now as it is too easy to get wrong. 
At the time of writing, this equals roughly USD $56. 
Eventually we will want to make this also configurable.


Co-authored-by: Philipp Hoenisch <philipp@hoenisch.at>
Co-authored-by: Philipp Hoenisch <philipp@coblox.tech>
2021-05-07 00:35:49 +00:00
Philipp Hoenisch
0090e3b48e
Typo 2021-05-07 10:35:22 +10:00
Philipp Hoenisch
59a55dcbdd
Remove todo for cleanup note. 2021-05-07 10:24:41 +10:00
Philipp Hoenisch
e93eeb81a2
Added some proptests. 2021-05-07 10:24:41 +10:00
Philipp Hoenisch
040cce1eb6
Format all the files 2021-05-07 10:24:41 +10:00
Philipp Hoenisch
68ae47edf4
Log error message. 2021-05-07 10:24:41 +10:00
Philipp Hoenisch
aebdb063f1
Remove TODO 2021-05-07 10:24:41 +10:00
Philipp Hoenisch
9fb1a43f29
Rename variable. 2021-05-07 10:24:41 +10:00
Philipp Hoenisch
cfdbacfbb5
Add comment.
The weight of our transactions can fluctuate by +-2 wu because our transactions have 2 signatures
2021-05-07 10:24:41 +10:00
Philipp Hoenisch
e69a2c9111
Apply suggestions from code review
Co-authored-by: Daniel Karzel <daniel.karzel@coblox.tech>
2021-05-07 10:24:41 +10:00
Philipp Hoenisch
dc8dd5af28
Add relative and absolute max transaction fee. 2021-05-07 10:24:41 +10:00
Philipp Hoenisch
dc6ab0fa52
Ensure that constant weights do not go out of sync with code. 2021-05-07 10:24:41 +10:00
Philipp Hoenisch
7fe9087bc2
Pull trait-bounds up one level for easier testing. 2021-05-07 10:24:41 +10:00
Philipp Hoenisch
77f6f11a7f
Pass address/fees into State0 instead of passing in the wallet. 2021-05-07 10:24:41 +10:00
Philipp Hoenisch
14c5a4f025
Add upper bound for bitcoin fees of 100,000 satoshi.
Fees are hard to compute and it is too easy to get wrong and lose a lot of money. Hence, a hardcoded maximum of 100,000 satoshi for a single transaction is in place.
2021-05-07 10:24:41 +10:00
Philipp Hoenisch
46e0449b8e
Add config/argument to swap/asb to configure bitcoin tx fees. 2021-05-07 10:24:41 +10:00
Philipp Hoenisch
9e8b788aa9
Rename weight constants. 2021-05-07 10:24:41 +10:00
Philipp Hoenisch
ee90c228b4
Dynamically calculate fees using electrum's estimate_fee.
Electrum has an estimate-fee feature which takes as input the block you want a tx to be included.
The result is a recommendation of BTC/vbyte.
Using this recommendation and the knowledge about the size of our transactions we compute an appropriate fee.
The size of the transactions were taken from real transactions as published on bitcoin testnet.
Note: in reality these sizes might fluctuate a bit but not for much.
2021-05-07 10:24:41 +10:00
Philipp Hoenisch
38540b4de5
Dynamically chose fee for TxCancel.
Bob chooses the fee for TxCancel because he is the one that cares.
2021-05-07 10:24:41 +10:00
Philipp Hoenisch
1012e39527
Dynamically chose fee for TxRefund and TxPunish.
Alice chooses the fee for TxPunish because she is the one that cares.
Bob chooses the fee for TxRefund because he is the one that cares.

Note must be taken here because if the fee is too low (e.g. < min tx fee) then she might not be able to publish TxRedeem at all.
2021-05-07 10:24:41 +10:00
Philipp Hoenisch
d5c1b6693e
Dynamically chose fee for TxRedeem.
Alice chooses the fee for TxRedeem because she is the one that cares. Note must be taken here because if the fee is too low (e.g. < min tx fee) then she might not be able to publish TxRedeem at all.
2021-05-07 10:24:41 +10:00
Philipp Hoenisch
002e7b38c3
Define TX_FEE within test files only. 2021-05-07 10:24:41 +10:00
bors[bot]
0006130756
Merge #473
473: Bump rust_decimal from 1.12.4 to 1.13.0 r=thomaseizinger a=dependabot[bot]

Bumps [rust_decimal](https://github.com/paupino/rust-decimal) from 1.12.4 to 1.13.0.
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a href="https://github.com/paupino/rust-decimal/commits/1.13.0">compare view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=rust_decimal&package-manager=cargo&previous-version=1.12.4&new-version=1.13.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)


</details>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-05-05 23:48:46 +00:00
bors[bot]
7c18ae23a8
Merge #472
472: Increase timeout sending/receiving protocol messages.  r=bonomat a=bonomat

Resolves #465 

@thomaseizinger / @da-kami : Shall we make this configurable?

Co-authored-by: Philipp Hoenisch <philipp@hoenisch.at>
2021-05-04 23:11:04 +00:00
bors[bot]
6eb387ef40
Merge #467
467: Bump tracing from 0.1.25 to 0.1.26 r=thomaseizinger a=dependabot[bot]

Bumps [tracing](https://github.com/tokio-rs/tracing) from 0.1.25 to 0.1.26.
<details>
<summary>Commits</summary>
<ul>
<li><a href="d9e8eceafd"><code>d9e8ece</code></a> tracing: prepare to release 0.1.26 (<a href="https://github-redirect.dependabot.com/tokio-rs/tracing/issues/1383">#1383</a>)</li>
<li><a href="8d428b25d7"><code>8d428b2</code></a> core: prepare to release v0.1.18</li>
<li><a href="848ee2d157"><code>848ee2d</code></a> docs: document span.in_scope() at top-level (<a href="https://github-redirect.dependabot.com/tokio-rs/tracing/issues/1344">#1344</a>)</li>
<li><a href="88b176cdb5"><code>88b176c</code></a> tracing: impl <code>From\&lt;EnteredSpan&gt;</code> for <code>Option\&lt;Id&gt;</code> (<a href="https://github-redirect.dependabot.com/tokio-rs/tracing/issues/1325">#1325</a>)</li>
<li><a href="ccfa2cc687"><code>ccfa2cc</code></a> core: add support for <code>Arc\&lt;dyn Subscriber + ...&gt;</code></li>
<li><a href="f9a3f17fbb"><code>f9a3f17</code></a> tracing: add an example of <code>tracing</code> in a panic hook (<a href="https://github-redirect.dependabot.com/tokio-rs/tracing/issues/1375">#1375</a>)</li>
<li><a href="e63d8e454b"><code>e63d8e4</code></a> core: add <code>Subscriber</code> impl for <code>Box\&lt;dyn Subscriber + ...&gt;</code> (<a href="https://github-redirect.dependabot.com/tokio-rs/tracing/issues/1358">#1358</a>)</li>
<li><a href="1e8446eaa0"><code>1e8446e</code></a> subscriber: support special chars in span names (<a href="https://github-redirect.dependabot.com/tokio-rs/tracing/issues/1368">#1368</a>)</li>
<li><a href="396d9f42a5"><code>396d9f4</code></a> chore: fix cargo docs warnings (<a href="https://github-redirect.dependabot.com/tokio-rs/tracing/issues/1362">#1362</a>)</li>
<li><a href="5e435b1220"><code>5e435b1</code></a> subscriber: deprecate <code>CurrentSpan</code> (<a href="https://github-redirect.dependabot.com/tokio-rs/tracing/issues/1321">#1321</a>)</li>
<li>Additional commits viewable in <a href="https://github.com/tokio-rs/tracing/compare/tracing-0.1.25...tracing-0.1.26">compare view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=tracing&package-manager=cargo&previous-version=0.1.25&new-version=0.1.26)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)


</details>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-05-04 13:37:25 +00:00
dependabot[bot]
7f74fd0190
Bump rust_decimal from 1.12.4 to 1.13.0
Bumps [rust_decimal](https://github.com/paupino/rust-decimal) from 1.12.4 to 1.13.0.
- [Release notes](https://github.com/paupino/rust-decimal/releases)
- [Commits](https://github.com/paupino/rust-decimal/commits/1.13.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-04 07:42:29 +00:00
bors[bot]
21b16b7ff5
Merge #471
471: Remove torut patch to custom fork. r=bonomat a=bonomat

https://github.com/teawithsand/torut/pull/10 was merged and a new version released.

Co-authored-by: Philipp Hoenisch <philipp@hoenisch.at>
2021-05-04 06:34:05 +00:00
Philipp Hoenisch
1db7586632
Increase timeout sending/receiving protocol messages. 2021-05-04 15:38:55 +10:00
Philipp Hoenisch
1c8dfa52c6
Remove torut patch to custom fork. 2021-05-04 14:42:29 +10:00
bors[bot]
3b96aa4a1f
Merge #464
464: Add short description of how to configure Tor. r=bonomat a=bonomat

@da-kami : Is this the right place to document this? 

Co-authored-by: Philipp Hoenisch <philipp@hoenisch.at>
Co-authored-by: Philipp Hoenisch <philipp@coblox.tech>
2021-05-04 02:02:57 +00:00
dependabot[bot]
6e13752300
Bump tracing from 0.1.25 to 0.1.26
Bumps [tracing](https://github.com/tokio-rs/tracing) from 0.1.25 to 0.1.26.
- [Release notes](https://github.com/tokio-rs/tracing/releases)
- [Commits](https://github.com/tokio-rs/tracing/compare/tracing-0.1.25...tracing-0.1.26)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-04 00:53:59 +00:00
bors[bot]
ac232843d2
Merge #468 #469
468: Bump rust_decimal from 1.12.3 to 1.12.4 r=thomaseizinger a=dependabot[bot]

Bumps [rust_decimal](https://github.com/paupino/rust-decimal) from 1.12.3 to 1.12.4.
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a href="https://github.com/paupino/rust-decimal/commits">compare view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=rust_decimal&package-manager=cargo&previous-version=1.12.3&new-version=1.12.4)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)


</details>

469: Bump tracing-subscriber from 0.2.17 to 0.2.18 r=thomaseizinger a=dependabot[bot]

Bumps [tracing-subscriber](https://github.com/tokio-rs/tracing) from 0.2.17 to 0.2.18.
<details>
<summary>Commits</summary>
<ul>
<li><a href="dd49b99016"><code>dd49b99</code></a> subscriber: prepare to release 0.2.18 (<a href="https://github-redirect.dependabot.com/tokio-rs/tracing/issues/1384">#1384</a>)</li>
<li><a href="d9e8eceafd"><code>d9e8ece</code></a> tracing: prepare to release 0.1.26 (<a href="https://github-redirect.dependabot.com/tokio-rs/tracing/issues/1383">#1383</a>)</li>
<li><a href="8d428b25d7"><code>8d428b2</code></a> core: prepare to release v0.1.18</li>
<li><a href="848ee2d157"><code>848ee2d</code></a> docs: document span.in_scope() at top-level (<a href="https://github-redirect.dependabot.com/tokio-rs/tracing/issues/1344">#1344</a>)</li>
<li><a href="88b176cdb5"><code>88b176c</code></a> tracing: impl <code>From\&lt;EnteredSpan&gt;</code> for <code>Option\&lt;Id&gt;</code> (<a href="https://github-redirect.dependabot.com/tokio-rs/tracing/issues/1325">#1325</a>)</li>
<li><a href="ccfa2cc687"><code>ccfa2cc</code></a> core: add support for <code>Arc\&lt;dyn Subscriber + ...&gt;</code></li>
<li><a href="f9a3f17fbb"><code>f9a3f17</code></a> tracing: add an example of <code>tracing</code> in a panic hook (<a href="https://github-redirect.dependabot.com/tokio-rs/tracing/issues/1375">#1375</a>)</li>
<li><a href="e63d8e454b"><code>e63d8e4</code></a> core: add <code>Subscriber</code> impl for <code>Box\&lt;dyn Subscriber + ...&gt;</code> (<a href="https://github-redirect.dependabot.com/tokio-rs/tracing/issues/1358">#1358</a>)</li>
<li><a href="1e8446eaa0"><code>1e8446e</code></a> subscriber: support special chars in span names (<a href="https://github-redirect.dependabot.com/tokio-rs/tracing/issues/1368">#1368</a>)</li>
<li><a href="396d9f42a5"><code>396d9f4</code></a> chore: fix cargo docs warnings (<a href="https://github-redirect.dependabot.com/tokio-rs/tracing/issues/1362">#1362</a>)</li>
<li>Additional commits viewable in <a href="https://github.com/tokio-rs/tracing/compare/tracing-subscriber-0.2.17...tracing-subscriber-0.2.18">compare view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=tracing-subscriber&package-manager=cargo&previous-version=0.2.17&new-version=0.2.18)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)


</details>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-05-04 00:35:48 +00:00
Philipp Hoenisch
90eb9fede1
Apply suggestions from code review
Co-authored-by: Daniel Karzel <daniel.karzel@coblox.tech>
2021-05-04 08:47:33 +10:00
dependabot[bot]
e0a4e89d1e
Bump tracing-subscriber from 0.2.17 to 0.2.18
Bumps [tracing-subscriber](https://github.com/tokio-rs/tracing) from 0.2.17 to 0.2.18.
- [Release notes](https://github.com/tokio-rs/tracing/releases)
- [Commits](https://github.com/tokio-rs/tracing/compare/tracing-subscriber-0.2.17...tracing-subscriber-0.2.18)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-03 09:30:57 +00:00
dependabot[bot]
24519824a2
Bump rust_decimal from 1.12.3 to 1.12.4
Bumps [rust_decimal](https://github.com/paupino/rust-decimal) from 1.12.3 to 1.12.4.
- [Release notes](https://github.com/paupino/rust-decimal/releases)
- [Commits](https://github.com/paupino/rust-decimal/commits)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-03 09:30:49 +00:00
bors[bot]
e7785d2c83
Merge #434
434: Introduce monero-wallet crate r=thomaseizinger a=thomaseizinger

This PR:

1. ~Introduce a crate for the epee binary serialization as a serde format~: Released here: https://github.com/comit-network/monero-epee-bin-serde
2. Extends the MoneroRPC client with two binary calls
3. Introduces a `monero-wallet` crate that for now just provides functionality for choosing random key offsets. Together with the the ability to produce bulletproofs and ring signatures, this should be enough for signing Monero transactions locally.

(1) and (2) are a prerequisite for (3).

Co-authored-by: Thomas Eizinger <thomas@eizinger.io>
2021-05-03 03:21:18 +00:00
bors[bot]
02a61f1328
Merge #462
462: Bump rust_decimal from 1.12.2 to 1.12.3 r=thomaseizinger a=dependabot[bot]

Bumps [rust_decimal](https://github.com/paupino/rust-decimal) from 1.12.2 to 1.12.3.
<details>
<summary>Commits</summary>
<ul>
<li><a href="322e3d1a40"><code>322e3d1</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/paupino/rust-decimal/issues/363">#363</a> from paupino/version/1.12.3</li>
<li><a href="74f1a06b7d"><code>74f1a06</code></a> Version 1.12.3</li>
<li><a href="6c0a1dbff4"><code>6c0a1db</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/paupino/rust-decimal/issues/362">#362</a> from paupino/issue/361</li>
<li><a href="010868df10"><code>010868d</code></a> Fixes an issue whereby rounding small negative numbers towards zero would cau...</li>
<li><a href="bb9b05c05a"><code>bb9b05c</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/paupino/rust-decimal/issues/358">#358</a> from paupino/feautre/min-version</li>
<li><a href="831fb9ae2e"><code>831fb9a</code></a> Use precompiled version of cargo make</li>
<li><a href="2e80bff136"><code>2e80bff</code></a> Relax when CI should be run</li>
<li><a href="c862d1dd41"><code>c862d1d</code></a> Use stable toolchain for file format/clippy checks</li>
<li><a href="571f5c06d1"><code>571f5c0</code></a> Switch back to --workspace for cargo check compatible functions</li>
<li><a href="c64b400844"><code>c64b400</code></a> Revert to --all for older toolchain</li>
<li>Additional commits viewable in <a href="https://github.com/paupino/rust-decimal/compare/1.12.2...1.12.3">compare view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=rust_decimal&package-manager=cargo&previous-version=1.12.2&new-version=1.12.3)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)


</details>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-05-03 03:02:27 +00:00
Philipp Hoenisch
01a60ff468
Add short description of how to configure Tor. 2021-05-02 11:31:14 +10:00
dependabot[bot]
502e298542
Bump rust_decimal from 1.12.2 to 1.12.3
Bumps [rust_decimal](https://github.com/paupino/rust-decimal) from 1.12.2 to 1.12.3.
- [Release notes](https://github.com/paupino/rust-decimal/releases)
- [Commits](https://github.com/paupino/rust-decimal/compare/1.12.2...1.12.3)

Signed-off-by: dependabot[bot] <support@github.com>
2021-04-30 07:42:23 +00:00
bors[bot]
cf1c448b7c
Merge #460
460: Different default directories for CLI and ASB r=da-kami a=da-kami

Fixes #437 

Using the same default directory as data-/config-dir has caused unwanted side effects when running both applications on the same machine.
Use these directory names:
- ASB: `xmr-btc-swap-asb`
- CLI: `xmr-btc-swap-cli`

Since the functionality is now application specific the respective functions were moved into the appropriate module of the application.

Co-authored-by: Daniel Karzel <daniel@comit.network>
2021-04-30 04:24:29 +00:00
bors[bot]
1244b30094
Merge #459
459: Use dprint for formatting Cargo.toml files r=thomaseizinger a=thomaseizinger

Invoking cargo tomlfmt on all files is a PITA and as we can see from
the CI scripts, it is often forgotten to as new crates are added to
the workspace.

Using dprint for toml files fixes this.

Unfortunately, we can't use dprint for Rust code yet because there
hasn't been a release of rustfmt in quite a while but we are already
using features from a newer rustfmt via rustup.

Co-authored-by: Thomas Eizinger <thomas@eizinger.io>
2021-04-30 01:19:40 +00:00
Daniel Karzel
69f7565746
!fixup Different default directories for CLI and ASB
Using the same default directory as data-/config-dir has caused unwanted side effects when running both applications on the same machine.
Use these directory names:
- ASB: xmr-btc-swap/asb
- CLI: xmr-btc-swap/cli

Since the functionality is now application specific the respective functions were moved into the appropriate module of the application.
2021-04-30 11:03:13 +10:00
Thomas Eizinger
471baf7c49
Introduce monero-wallet crate
This is fairly bare-bones for now and only contains one piece of
functionality: choosing random key offsets.

More functionality for actually signing Monero transactions will
be added later.
2021-04-30 10:28:46 +10:00
Thomas Eizinger
dd6bfd3bf4
Extend RPC client for monerod with binary requests 2021-04-30 10:28:45 +10:00