Commit graph

1254 commits

Author SHA1 Message Date
Lorenzo Tucci
959a309d0e
Merge branch 'rpc-server' of github.com:yamabiiko/xmr-btc-swap into rpc-server 2023-09-22 23:29:35 +03:00
Lorenzo Tucci
ec0bc8cd39
fixing test_cli_arguments and other tests 2023-09-22 23:28:49 +03:00
binarybaron
f367c2ba49 Rename get_raw_history tp get_raw_states 2023-09-08 12:53:33 +02:00
binarybaron
2ec465aec7 Merge branch 'rpc-server' of https://github.com/yamabiiko/xmr-btc-swap into rpc-server 2023-09-08 12:52:04 +02:00
Lorenzo Tucci
a6f2180b1b
fix rpc tests, only check for RPC errors and not returned values 2023-09-01 17:15:24 +03:00
Lorenzo Tucci
ccf9b0c31f
fix compile issues for tests and use serial_test crate 2023-09-01 12:31:39 +03:00
Lorenzo Tucci
9b08f71bb8
merge upstream and fix some tests 2023-09-01 12:06:13 +03:00
binarybaron
c6b76cc859 Update wallet.rs 2023-08-30 21:01:19 +02:00
binarybaron
7c69ed5d2b Return additonal info on GetSwapInfo 2023-08-30 01:34:07 +02:00
binarybaron
aa74b1ff4c Wait for swap to be suspended after sending signal 2023-08-28 12:23:12 +02:00
binarybaron
05577e3713 Rename Method::RawHistory to Method::GetRawStates 2023-08-28 12:23:12 +02:00
binarybaron
e13ed6f5c1 Add get_monero_recovery_info RPC endpoint
- Add `get_monero_recovery_info` RPC endpoint
- format PrivateViewKey using Display
2023-08-28 11:08:05 +02:00
binarybaron
f942a4e1ea Remove unused shutdown channel 2023-08-28 11:08:05 +02:00
binarybaron
011dd3441d use Span::current() to pass down to tracing span to spawned tasks 2023-08-28 11:08:05 +02:00
binarybaron
86ac0579f0 Sync bitcoin wallet before initial max_giveable call 2023-08-28 11:08:05 +02:00
binarybaron
1ec16c6bc1 Add tracing span attribute log_reference_id to logs caused by rpc call 2023-08-28 11:08:05 +02:00
binarybaron
fb4265b2ea Remove notes 2023-08-28 11:08:04 +02:00
binarybaron
a104c5aa7b Wait for swap to be suspended after sending signal 2023-08-28 11:02:04 +02:00
binarybaron
9c9644fe1b Rename Method::RawHistory to Method::GetRawStates 2023-08-28 11:02:04 +02:00
binarybaron
4623a08ebf Add get_monero_recovery_info RPC endpoint
- Add `get_monero_recovery_info` RPC endpoint
- format PrivateViewKey using Display
2023-08-28 11:02:04 +02:00
binarybaron
63afad0874 Remove unused shutdown channel 2023-08-28 11:02:04 +02:00
binarybaron
8719896fdb use Span::current() to pass down to tracing span to spawned tasks 2023-08-24 18:17:41 +02:00
binarybaron
dac9d96c39 Sync bitcoin wallet before initial max_giveable call 2023-08-24 14:26:28 +02:00
binarybaron
4bcdb1995a Add tracing span attribute log_reference_id to logs caused by rpc call 2023-08-23 00:37:25 +02:00
binarybaron
b98108df06 Update request.rs 2023-08-20 00:40:21 +02:00
binarybaron
4150f47655 Add note regarding Request, Method structs 2023-08-20 00:38:56 +02:00
binarybaron
9b503f3367 Ensure correct tracing spans 2023-08-20 00:18:44 +02:00
binarybaron
bbcfffab6d WIP: Struct for concurrent swaps manager 2023-08-16 17:59:44 +02:00
binarybaron
ec65ea2b27 Merge branch 'rpc-server' of https://github.com/yamabiiko/xmr-btc-swap into rpc-server 2023-08-14 16:54:14 +02:00
binarybaron
5ca2a9ab5a Replace get_swap_start_date, get_seller, get_expired_timelock with one get_swap_info rpc method 2023-08-14 16:49:14 +02:00
Lorenzo Tucci
969c58e987 initiating swaps in a separate task and handling shutdown signals with broadcast queues 2023-08-14 11:31:54 +02:00
Lorenzo Tucci
6a9f72a857 initiating swaps in a separate task and handling shutdown signals with broadcast queues 2023-08-14 11:21:04 +02:00
binarybaron
1b13608d96 Add get_swap_expired_timelock timelock, other small refactoring
- Add get_swap_expired_timelock endpoint to return expired timelock if one exists. Fails if bitcoin lock tx has not yet published or if swap is already finished.
- Rename current_epoch to expired_timelock to enforce consistent method names
- Add blocks left until current expired timelock expires (next timelock expires) to ExpiredTimelock struct
- Change .expect() to .unwrap() in rpc server method register because those will only fail if we register the same method twice which will never happen
2023-08-12 23:26:08 +02:00
binarybaron
433bf824f9 Append all cli logs to single log file
After careful consideration, I've concluded that it's not practical/possible to ensure that the previous behaviour (one log file per swap) is preserved due to limitations of the tracing-subscriber crate and a big in the built in JSON formatter
2023-08-12 23:26:08 +02:00
binarybaron
f804254f94 Return wallet descriptor to RPC API caller 2023-08-11 15:39:46 +02:00
binarybaron
ffbbe24010 Use RwLock instead of Mutex to allow for parallel reads and add get_current_swap endpoint 2023-08-11 15:29:59 +02:00
binarybaron
849e6e7a14 Disallow concurrent swaps 2023-08-11 11:53:07 +02:00
binarybaron
7d2b7bee92 Combine Cmd and Params 2023-08-11 10:50:13 +02:00
binarybaron
63c1edbdd3 Add cancel_refund RPC endpoint 2023-08-10 15:17:35 +02:00
binarybaron
7193866c30 dprint fmt 2023-08-10 00:15:16 +02:00
binarybaron
75bc64d248 Merge branch 'master' into rpc-server 2023-08-09 22:52:14 +02:00
binarybaron
96cc194b46 Pass server_address properly to RpcServer 2023-08-09 22:49:13 +02:00
binarybaron
186b242db5 Add called api method and swap_id to tracing for context, reduced boilerplate 2023-08-09 22:30:41 +02:00
COMIT Botty McBotface
94febeca03 Prepare release 0.12.2 2023-08-08 08:17:28 +00:00
Lorenzo Tucci
41399ab015 set server listen address manually and return file locations in JSON on Config 2023-08-04 21:49:05 +02:00
Byron Hambly
5e192acac2
feat(asb): allow asb to register with mulitple rendezvous nodes 2023-08-04 15:04:58 +02:00
Byron Hambly
acdba8474b
build(deps): update rust-toolchain to 1.67 and bump uuid to 1.4
some of the dependency updates are requiring a higher version of the
rust toolchain. bump to 1.67 and fix new clippy lints.

also fix dprint to 0.39.1 because 0.40 has breaking changes.
2023-07-31 11:49:28 +02:00
dependabot[bot]
89e8731a7a
build(deps): bump data-encoding from 2.3.3 to 2.4.0
Bumps [data-encoding](https://github.com/ia0/data-encoding) from 2.3.3 to 2.4.0.
- [Commits](https://github.com/ia0/data-encoding/commits/v2.4.0)

---
updated-dependencies:
- dependency-name: data-encoding
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-05-22 11:59:34 +00:00
bors[bot]
ff7d036ab7
Merge #1357 #1358 #1359
1357: build(deps): bump conquer-once from 0.3.2 to 0.4.0 r=delta1 a=dependabot[bot]

Bumps [conquer-once](https://github.com/oliver-giersch/conquer-once) from 0.3.2 to 0.4.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/oliver-giersch/conquer-once/releases">conquer-once's releases</a>.</em></p>
<blockquote>
<h2>v0.4.0</h2>
<p>This release bumps the MSRV to <code>1.49.0</code>, allowing some depracated <code>std</code> functionality to be replaced with alternatives that were stabilized in that version.</p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/oliver-giersch/conquer-once/blob/master/RELEASES.md">conquer-once's changelog</a>.</em></p>
<blockquote>
<h3>Release <code>0.3.2</code></h3>
<ul>
<li>fixes potential UB due to insufficiently strict bounds on <code>Sync</code> implementation for <code>OnceCell</code> (see [Issue <a href="https://redirect.github.com/oliver-giersch/conquer-once/issues/3">#3</a>](<a href="https://redirect.github.com/oliver-giersch/conquer-once/issues/3">oliver-giersch/conquer-once#3</a>))</li>
</ul>
<h3>Release <code>0.3.3</code></h3>
<ul>
<li>improves and clarifies wording of public documentation</li>
<li>improves internal documentation around all uses of unsafe code</li>
</ul>
<h2>Release <code>0.4.0</code></h2>
<ul>
<li>bumps MSRV to 1.49.0</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="82747caafd"><code>82747ca</code></a> bump version in README</li>
<li><a href="3ef336f03e"><code>3ef336f</code></a> revert edition bump</li>
<li><a href="43f816a162"><code>43f816a</code></a> bump Cargo.toml version, rust edition to 2021,MSRV</li>
<li><a href="9370e0a194"><code>9370e0a</code></a> bump MSRV to 1.49.0</li>
<li><a href="82ebf601ea"><code>82ebf60</code></a> bump version to 0.3.3</li>
<li><a href="f788ee4855"><code>f788ee4</code></a> completes internal unsafe docs/clarification</li>
<li><a href="f75a52e371"><code>f75a52e</code></a> fix clippy warning under 1.36.0</li>
<li><a href="6f2924915e"><code>6f29249</code></a> clippy 1.36 should fail but doesn't?</li>
<li><a href="dc267663b1"><code>dc26766</code></a> fix CI toolchain</li>
<li><a href="4bc74b003d"><code>4bc74b0</code></a> fix CI</li>
<li>Additional commits viewable in <a href="https://github.com/oliver-giersch/conquer-once/compare/v0.3.2...v0.4.0">compare view</a></li>
</ul>
</details>
<br />


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

You can trigger a rebase of this PR 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>

1358: build(deps): bump serial_test from 1.0.0 to 2.0.0 r=delta1 a=dependabot[bot]

Bumps [serial_test](https://github.com/palfrey/serial_test) from 1.0.0 to 2.0.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/palfrey/serial_test/releases">serial_test's releases</a>.</em></p>
<blockquote>
<h2>v2.0.0</h2>
<p>Main change is the <a href="https://redirect.github.com/palfrey/serial_test/pull/96">Syn 2.x upgrade</a> which required an MSRV bump. MSRV is now 1.68.2. Note this is minimum <em>supported</em>, as it may well compile with lower versions, but they're not supported at all.</p>
<p>There's also a small bug fix for an issue when <a href="https://redirect.github.com/palfrey/serial_test/pull/94">running under vscode and stripping attributes</a></p>
<p><strong>Full Changelog</strong>: <a href="https://github.com/palfrey/serial_test/compare/v1.0.0...v2.0.0">https://github.com/palfrey/serial_test/compare/v1.0.0...v2.0.0</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="7e3a5ca6f3"><code>7e3a5ca</code></a> 2.0.0</li>
<li><a href="a7222e1f35"><code>a7222e1</code></a> Merge pull request <a href="https://redirect.github.com/palfrey/serial_test/issues/96">#96</a> from palfrey/syn-2</li>
<li><a href="113f07662e"><code>113f076</code></a> Upgrade to Syn 2</li>
<li><a href="21b7a7fa6f"><code>21b7a7f</code></a> Merge pull request <a href="https://redirect.github.com/palfrey/serial_test/issues/94">#94</a> from palfrey/remove-ignore-ignore</li>
<li><a href="fc0497c8e8"><code>fc0497c</code></a> Stop stripping ignore/should_panic attributes</li>
<li><a href="7d6af096bf"><code>7d6af09</code></a> Merge pull request <a href="https://redirect.github.com/palfrey/serial_test/issues/91">#91</a> from palfrey/dependabot/cargo/tokio-1.18.5</li>
<li><a href="1607dec900"><code>1607dec</code></a> Bump tokio from 1.18.4 to 1.18.5</li>
<li><a href="30b772a3d1"><code>30b772a</code></a> Merge pull request <a href="https://redirect.github.com/palfrey/serial_test/issues/92">#92</a> from palfrey/test-rust-version</li>
<li><a href="c1c65d24ea"><code>c1c65d2</code></a> Set rust-version in test to fix clippy issue</li>
<li>See full diff in <a href="https://github.com/palfrey/serial_test/compare/v1.0.0...v2.0.0">compare view</a></li>
</ul>
</details>
<br />


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

You can trigger a rebase of this PR 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>

1359: build(deps): bump async-trait from 0.1.67 to 0.1.68 r=delta1 a=dependabot[bot]

Bumps [async-trait](https://github.com/dtolnay/async-trait) from 0.1.67 to 0.1.68.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/dtolnay/async-trait/releases">async-trait's releases</a>.</em></p>
<blockquote>
<h2>0.1.68</h2>
<ul>
<li>Improve error message if an async fn is written without a function body in an impl block</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="dce60601d7"><code>dce6060</code></a> Release 0.1.68</li>
<li><a href="346f0509c6"><code>346f050</code></a> Merge pull request <a href="https://redirect.github.com/dtolnay/async-trait/issues/244">#244</a> from dtolnay/verbatimfn</li>
<li><a href="344a4f2a68"><code>344a4f2</code></a> Handle async impl fn without body</li>
<li>See full diff in <a href="https://github.com/dtolnay/async-trait/compare/0.1.67...0.1.68">compare view</a></li>
</ul>
</details>
<br />


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

You can trigger a rebase of this PR 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>
2023-04-20 12:46:58 +00:00
dependabot[bot]
af7fbc708d
build(deps): bump serial_test from 1.0.0 to 2.0.0
Bumps [serial_test](https://github.com/palfrey/serial_test) from 1.0.0 to 2.0.0.
- [Release notes](https://github.com/palfrey/serial_test/releases)
- [Commits](https://github.com/palfrey/serial_test/compare/v1.0.0...v2.0.0)

---
updated-dependencies:
- dependency-name: serial_test
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-19 12:00:43 +00:00