1062: fix: change logs to UTC due to bug in time crate r=delta1 a=delta1
On Linux and macOS, no program output was being observed. This is referenced in the [LocalTime] docs for `tracing-subscriber`,
which links to this [unsoundness issue] in the time crate.
Rather than introducing a possible vector for undefined behaviour and segfaults, I have just changed the logging to use UTC time instead.
When running the ASB as a systemd service, one would generally use the `--disable-timestamps` flag anyway as systemd adds its own timestamps which can be local to the server.
If the situation with `tracing-subscriber` and the time crate is fixed then this can be updated.
This commit also updates the `tracing-subscriber` and `tracing-appender` dependencies, closing #987.
[LocalTime]: https://docs.rs/tracing-subscriber/latest/tracing_subscriber/fmt/time/struct.LocalTime.html
[unsoundness issue]: https://github.com/time-rs/time/issues/293#issuecomment-748151025
Co-authored-by: Byron Hambly <bhambly@blockstream.com>
On Linux and macOS, no program output was being observed.
This is referenced in the [LocalTime] docs for `tracing-subscriber`,
which links to this [unsoundness issue] in the time crate.
Rather than introducing a possible vector for undefined behaviour and
segfaults, I have just changed the logging to use UTC time instead.
When running the ASB as a systemd service, one would generally use the
`--disable-timestamps` flag anyway as systemd adds its own timestamps
which can be local to the server.
If the situation with `tracing-subscriber` and the time crate is fixed
then this can be updated.
This commit also updates the `tracing-subscriber` and `tracing-appender`
dependencies, closing #987.
[LocalTime]: https://docs.rs/tracing-subscriber/latest/tracing_subscriber/fmt/time/struct.LocalTime.html
[unsoundness issue]: https://github.com/time-rs/time/issues/293#issuecomment-748151025
1051: Bump Swatinem/rust-cache from 1.4.0 to 2.0.0 r=delta1 a=dependabot[bot]
Bumps [Swatinem/rust-cache](https://github.com/Swatinem/rust-cache) from 1.4.0 to 2.0.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/Swatinem/rust-cache/releases">Swatinem/rust-cache's releases</a>.</em></p>
<blockquote>
<h2>v2.0.0</h2>
<ul>
<li>The action code was refactored to allow for caching multiple workspaces and
different <code>target</code> directory layouts.</li>
<li>The <code>working-directory</code> and <code>target-dir</code> input options were replaced by a
single <code>workspaces</code> option that has the form of <code>$workspace -> $target</code>.</li>
<li>Support for considering <code>env-vars</code> as part of the cache key.</li>
<li>The <code>sharedKey</code> input option was renamed to <code>shared-key</code> for consistency.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/Swatinem/rust-cache/blob/master/CHANGELOG.md">Swatinem/rust-cache's changelog</a>.</em></p>
<blockquote>
<h2>2.0.0</h2>
<ul>
<li>The action code was refactored to allow for caching multiple workspaces and
different <code>target</code> directory layouts.</li>
<li>The <code>working-directory</code> and <code>target-dir</code> input options were replaced by a
single <code>workspaces</code> option that has the form of <code>$workspace -> $target</code>.</li>
<li>Support for considering <code>env-vars</code> as part of the cache key.</li>
<li>The <code>sharedKey</code> input option was renamed to <code>shared-key</code> for consistency.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="6720f05bc4"><code>6720f05</code></a> 2.0.0</li>
<li><a href="5733786579"><code>5733786</code></a> rebuild</li>
<li><a href="622616010e"><code>6226160</code></a> prepare v2</li>
<li><a href="0497f9301f"><code>0497f93</code></a> improve registry cleanpu</li>
<li><a href="7b8626742a"><code>7b86267</code></a> update registry cleaning</li>
<li><a href="911d8e9e55"><code>911d8e9</code></a> test sparse registry</li>
<li><a href="875be5ce2d"><code>875be5c</code></a> bump cache</li>
<li><a href="07a2ee71bc"><code>07a2ee7</code></a> lol, dependency check was reversed</li>
<li><a href="7c190ef171"><code>7c190ef</code></a> fix actual test code ;-)</li>
<li><a href="fffd6895b2"><code>fffd689</code></a> add some more tests</li>
<li>Additional commits viewable in <a href="https://github.com/Swatinem/rust-cache/compare/v1.4.0...v2.0.0">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=Swatinem/rust-cache&package-manager=github_actions&previous-version=1.4.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>
1052: Bump dprint/check from 2.0 to 2.1 r=delta1 a=dependabot[bot]
Bumps [dprint/check](https://github.com/dprint/check) from 2.0 to 2.1.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/dprint/check/releases">dprint/check's releases</a>.</em></p>
<blockquote>
<h2>v2.1</h2>
<h2>What's Changed</h2>
<ul>
<li>fix: ensure it can run on all operating systems and update instructions <a href="https://github-redirect.dependabot.com/dprint/check/pull/7">dprint/check#7</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a href="https://github.com/dprint/check/compare/v2.0...v2.1">https://github.com/dprint/check/compare/v2.0...v2.1</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="b8a69d368d"><code>b8a69d3</code></a> fix: ensure it can run on all operating systems (<a href="https://github-redirect.dependabot.com/dprint/check/issues/7">#7</a>)</li>
<li><a href="ded32b928d"><code>ded32b9</code></a> chore: remove empty line (<a href="https://github-redirect.dependabot.com/dprint/check/issues/6">#6</a>)</li>
<li>See full diff in <a href="https://github.com/dprint/check/compare/v2.0...v2.1">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=dprint/check&package-manager=github_actions&previous-version=2.0&new-version=2.1)](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>
1026: Bump serde_with from 1.12.1 to 1.13.0 r=delta1 a=dependabot[bot]
Bumps [serde_with](https://github.com/jonasbb/serde_with) from 1.12.1 to 1.13.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/jonasbb/serde_with/releases">serde_with's releases</a>.</em></p>
<blockquote>
<h2>serde_with v1.13.0</h2>
<h3>Added</h3>
<ul>
<li>
<p>Added support for <code>indexmap::IndexMap</code> and <code>indexmap::IndexSet</code> types. <a href="https://github-redirect.dependabot.com/jonasbb/serde_with/issues/431">#431</a>, <a href="https://github-redirect.dependabot.com/jonasbb/serde_with/issues/436">#436</a></p>
<p>Both types are now compatible with these functions: <code>maps_duplicate_key_is_error</code>, <code>maps_first_key_wins</code>, <code>sets_duplicate_value_is_error</code>, <code>sets_last_value_wins</code>.
<code>serde_as</code> integration is provided by implementing both <code>SerializeAs</code> and <code>DeserializeAs</code> for both types.
<code>IndexMap</code>s can also be serialized as a list of types via the <code>serde_as(as = "Vec<(_, _)>")</code> annotation.</p>
<p>All implementations are gated behind the <code>indexmap</code> feature.</p>
<p>Thanks to <a href="https://github.com/jgrund"><code>`@jgrund</code></a>` for providing parts of the implementation.</p>
</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="6fe1198710"><code>6fe1198</code></a> Merge <a href="https://github-redirect.dependabot.com/jonasbb/serde_with/issues/438">#438</a></li>
<li><a href="948a383c5d"><code>948a383</code></a> Bump serde_with to v1.13.0</li>
<li><a href="c821df94c9"><code>c821df9</code></a> Package tests in crates</li>
<li><a href="eabd3457ec"><code>eabd345</code></a> Add changelog entry for the new <code>indexmap</code> support</li>
<li><a href="88ffa73331"><code>88ffa73</code></a> Merge <a href="https://github-redirect.dependabot.com/jonasbb/serde_with/issues/436">#436</a></li>
<li><a href="919683697f"><code>9196836</code></a> Make code compatible with older Pythons before const generic arrays</li>
<li><a href="ed5ff38571"><code>ed5ff38</code></a> Merge <a href="https://github-redirect.dependabot.com/jonasbb/serde_with/issues/437">#437</a></li>
<li><a href="fbc9a965a3"><code>fbc9a96</code></a> Replace <code>serde_derive</code> imports in test with imports from <code>serde</code></li>
<li><a href="82a5d18537"><code>82a5d18</code></a> Add tests for IndexMap and IndexSet</li>
<li><a href="a8bce82320"><code>a8bce82</code></a> Merge <a href="https://github-redirect.dependabot.com/jonasbb/serde_with/issues/434">#434</a></li>
<li>Additional commits viewable in <a href="https://github.com/jonasbb/serde_with/compare/v1.12.1...v1.13.0">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=serde_with&package-manager=cargo&previous-version=1.12.1&new-version=1.13.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>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
1025: Change example rendezvous node to `/dns4/discover.unstoppableswap.net… r=delta1 a=binarybaron
…/tcp/8888/p2p/12D3Ko...`
The rendezvous node that was provided for testing purposes by the COMIT team will be shutdown.
Co-authored-by: binarybaron <86064887+binarybaron@users.noreply.github.com>
1023: Bump actions/checkout from 3.0.1 to 3.0.2 r=delta1 a=dependabot[bot]
Bumps [actions/checkout](https://github.com/actions/checkout) from 3.0.1 to 3.0.2.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/actions/checkout/releases">actions/checkout's releases</a>.</em></p>
<blockquote>
<h2>v3.0.2</h2>
<h2>What's Changed</h2>
<ul>
<li>Add set-safe-directory input to allow customers to take control. by <a href="https://github.com/TingluoHuang"><code>`@TingluoHuang</code></a>` in <a href="https://github-redirect.dependabot.com/actions/checkout/pull/770">actions/checkout#770</a></li>
<li>Prepare changelog for v3.0.2. by <a href="https://github.com/TingluoHuang"><code>`@TingluoHuang</code></a>` in <a href="https://github-redirect.dependabot.com/actions/checkout/pull/777">actions/checkout#777</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a href="https://github.com/actions/checkout/compare/v3...v3.0.2">https://github.com/actions/checkout/compare/v3...v3.0.2</a></p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/actions/checkout/blob/main/CHANGELOG.md">actions/checkout's changelog</a>.</em></p>
<blockquote>
<h2>v3.0.2</h2>
<ul>
<li><a href="https://github-redirect.dependabot.com/actions/checkout/pull/770">Add input <code>set-safe-directory</code></a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="2541b1294d"><code>2541b12</code></a> Prepare changelog for v3.0.2. (<a href="https://github-redirect.dependabot.com/actions/checkout/issues/777">#777</a>)</li>
<li><a href="0ffe6f9c55"><code>0ffe6f9</code></a> Add set-safe-directory input to allow customers to take control. (<a href="https://github-redirect.dependabot.com/actions/checkout/issues/770">#770</a>)</li>
<li>See full diff in <a href="https://github.com/actions/checkout/compare/v3.0.1...v3.0.2">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=actions/checkout&package-manager=github_actions&previous-version=3.0.1&new-version=3.0.2)](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>
1024: Bump anyhow from 1.0.56 to 1.0.57 r=delta1 a=dependabot[bot]
Bumps [anyhow](https://github.com/dtolnay/anyhow) from 1.0.56 to 1.0.57.
<details>
<summary>Commits</summary>
<ul>
<li><a href="f64ca0a02d"><code>f64ca0a</code></a> Release 1.0.57</li>
<li><a href="4c198e3d9b"><code>4c198e3</code></a> Remove log4rs workaround from bail macro</li>
<li><a href="6833150a79"><code>6833150</code></a> Update ui test suite to nightly-2022-03-21</li>
<li><a href="1a763e45da"><code>1a763e4</code></a> Update ui test suite to nightly-2022-03-10</li>
<li>See full diff in <a href="https://github.com/dtolnay/anyhow/compare/1.0.56...1.0.57">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=anyhow&package-manager=cargo&previous-version=1.0.56&new-version=1.0.57)](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>
996: Implement `Identify` protocol to make network and version of ASB available to peers r=delta1 a=binarybaron
As suggested by `@thomaseizinger,` this PRs implement the [Identify](https://github.com/libp2p/specs/blob/master/identify/README.md) protocol for the ASB. It makes the rendezvous namespace (network) and the version available to other peers. This is not a breaking change yet because Bob does not rely on it yet. This can for example be used by application building on top of this project (e.g [unstoppableswap-gui](http://github.com/UnstoppableSwap/unstoppableswap-gui/)) or might serve for some kind of compatibility insurance in the future.
I'd love some feedback on this from the more experienced developers. I might very well have made some obvious mistake.
> In line with [HTTP user agent strings](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/User-Agent) (which is what the `agentVersion` field in identify is based on), we could do something like:
>
> `asb/0.8.0 (Mainnet)`
>
> A PR adding `/identify` with these details is likely going to be accepted.
(https://github.com/comit-network/xmr-btc-swap/discussions/492#discussioncomment-970294)
Co-authored-by: binarybaron <86064887+binarybaron@users.noreply.github.com>
1002: Bump tokio-util from 0.7.0 to 0.7.1 r=delta1 a=dependabot[bot]
Bumps [tokio-util](https://github.com/tokio-rs/tokio) from 0.7.0 to 0.7.1.
<details>
<summary>Commits</summary>
<ul>
<li><a href="a05135a4f8"><code>a05135a</code></a> chore: prepare tokio-util 0.7.1 release (<a href="https://github-redirect.dependabot.com/tokio-rs/tokio/issues/4521">#4521</a>)</li>
<li><a href="2bb97db5e1"><code>2bb97db</code></a> net: make <code>try_io</code> methods call mio's <code>try_io</code> internally (<a href="https://github-redirect.dependabot.com/tokio-rs/tokio/issues/4582">#4582</a>)</li>
<li><a href="a8b75dbdf4"><code>a8b75db</code></a> sync: add <code>watch::Receiver::same_channel</code> (<a href="https://github-redirect.dependabot.com/tokio-rs/tokio/issues/4581">#4581</a>)</li>
<li><a href="f84c4d596a"><code>f84c4d5</code></a> io: add <code>StreamReader::into_inner_with_chunk</code> (<a href="https://github-redirect.dependabot.com/tokio-rs/tokio/issues/4559">#4559</a>)</li>
<li><a href="121769c762"><code>121769c</code></a> ci: run reusable_box tests with Miri (<a href="https://github-redirect.dependabot.com/tokio-rs/tokio/issues/4578">#4578</a>)</li>
<li><a href="0abe825b72"><code>0abe825</code></a> time: clarify platform specific timer resolution (<a href="https://github-redirect.dependabot.com/tokio-rs/tokio/issues/4474">#4474</a>)</li>
<li><a href="61e37c6c8d"><code>61e37c6</code></a> ci: run doctests for unstable APIs (<a href="https://github-redirect.dependabot.com/tokio-rs/tokio/issues/4562">#4562</a>)</li>
<li><a href="dee26c92dd"><code>dee26c9</code></a> chore: fix a bunch of annoying clippy lints (<a href="https://github-redirect.dependabot.com/tokio-rs/tokio/issues/4558">#4558</a>)</li>
<li><a href="2f944dfa1b"><code>2f944df</code></a> sync: add <code>broadcast::Receiver::len</code> (<a href="https://github-redirect.dependabot.com/tokio-rs/tokio/issues/4542">#4542</a>)</li>
<li><a href="e8ae65a697"><code>e8ae65a</code></a> tokio: add support for signals up to SIGRTMAX (<a href="https://github-redirect.dependabot.com/tokio-rs/tokio/issues/4555">#4555</a>)</li>
<li>Additional commits viewable in <a href="https://github.com/tokio-rs/tokio/compare/tokio-util-0.7.0...tokio-util-0.7.1">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=tokio-util&package-manager=cargo&previous-version=0.7.0&new-version=0.7.1)](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>
1012: Bump vergen from 6.0.0 to 7.0.0 r=delta1 a=dependabot[bot]
Bumps [vergen](https://github.com/rustyhorde/vergen) from 6.0.0 to 7.0.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/rustyhorde/vergen/releases">vergen's releases</a>.</em></p>
<blockquote>
<h2>v7.0.0</h2>
<ul>
<li>Migrated from <code>chrono</code> to <code>time</code> as it's better maintained.</li>
<li>Placed the local timezone support behind a feature flag (<code>local_offset</code>). There is a known issue that can cause a <a href="https://github.com/rustsec/advisory-db/blob/main/crates/time/RUSTSEC-2020-0071.md">potential segfault</a> in the <code>time</code> crate (which also affected <code>chrono</code>).</li>
</ul>
<h2>v6.0.2</h2>
<ul>
<li>Fixed issue where 1.57 couldn't be used to build because of incorrect lints setup in <code>build.rs</code></li>
</ul>
<h2>v6.0.1</h2>
<ul>
<li><code>sysinfo</code> dependency updated.</li>
<li>MSRV increased to 1.54</li>
<li>Documentation</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="d82785850c"><code>d827858</code></a> version bump for next release</li>
<li><a href="678bb48cca"><code>678bb48</code></a> <code>chrono</code> replaced with <code>time</code>, <code>local_offset</code> feature flag added (<a href="https://github-redirect.dependabot.com/rustyhorde/vergen/issues/110">#110</a>)</li>
<li><a href="e9efb23183"><code>e9efb23</code></a> version bump for next release</li>
<li><a href="971622e6f7"><code>971622e</code></a> Fix msrv_lints version (<a href="https://github-redirect.dependabot.com/rustyhorde/vergen/issues/106">#106</a>)</li>
<li><a href="1a5ac8169f"><code>1a5ac81</code></a> Update README.md</li>
<li><a href="b91f2ae04e"><code>b91f2ae</code></a> version bump for next release</li>
<li><a href="f322ad588c"><code>f322ad5</code></a> Updated msrv for lints</li>
<li><a href="9b2c3a5717"><code>9b2c3a5</code></a> Updated MSRV to 1.54, sysinfo to 0.23</li>
<li><a href="59b83bd9ad"><code>59b83bd</code></a> Update Cargo.toml install docs for latest version (<a href="https://github-redirect.dependabot.com/rustyhorde/vergen/issues/104">#104</a>)</li>
<li><a href="e38b22ba7f"><code>e38b22b</code></a> removed lint</li>
<li>Additional commits viewable in <a href="https://github.com/rustyhorde/vergen/compare/6.0.0...7.0.0">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=vergen&package-manager=cargo&previous-version=6.0.0&new-version=7.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>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
1011: Bump time from 0.3.7 to 0.3.9 r=delta1 a=dependabot[bot]
Bumps [time](https://github.com/time-rs/time) from 0.3.7 to 0.3.9.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/time-rs/time/releases">time's releases</a>.</em></p>
<blockquote>
<h2>v0.3.9</h2>
<p>See the <a href="https://github.com/time-rs/time/blob/main/CHANGELOG.md">changelog</a> for details.</p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/time-rs/time/blob/main/CHANGELOG.md">time's changelog</a>.</em></p>
<blockquote>
<h2>0.3.9 [2022-03-22]</h2>
<h3>Added</h3>
<ul>
<li><code>time::serde::format_description!</code>
<ul>
<li>This macro is similar to <code>time::format_description!</code>, but it generates a module that can be used
in <code>#[serde(with = "foo")]</code>. This makes it far easier to serialize/deserialize a custom format.</li>
</ul>
</li>
<li><code>Date::replace_year</code></li>
<li><code>Date::replace_month</code></li>
<li><code>Date::replace_day</code></li>
<li><code>Time::replace_hour</code></li>
<li><code>Time::replace_minute</code></li>
<li><code>Time::replace_second</code></li>
<li><code>Time::replace_millisecond</code></li>
<li><code>Time::replace_microsecond</code></li>
<li><code>Time::replace_nanosecond</code></li>
<li><code>PrimitiveDateTime::replace_year</code></li>
<li><code>PrimitiveDateTime::replace_month</code></li>
<li><code>PrimitiveDateTime::replace_day</code></li>
<li><code>PrimitiveDateTime::replace_hour</code></li>
<li><code>PrimitiveDateTime::replace_minute</code></li>
<li><code>PrimitiveDateTime::replace_second</code></li>
<li><code>PrimitiveDateTime::replace_millisecond</code></li>
<li><code>PrimitiveDateTime::replace_microsecond</code></li>
<li><code>PrimitiveDateTime::replace_nanosecond</code></li>
<li><code>OffsetDateTime::replace_year</code></li>
<li><code>OffsetDateTime::replace_month</code></li>
<li><code>OffsetDateTime::replace_day</code></li>
<li><code>OffsetDateTime::replace_hour</code></li>
<li><code>OffsetDateTime::replace_minute</code></li>
<li><code>OffsetDateTime::replace_second</code></li>
<li><code>OffsetDateTime::replace_millisecond</code></li>
<li><code>OffsetDateTime::replace_microsecond</code></li>
<li><code>OffsetDateTime::replace_nanosecond</code></li>
<li><code>Parsed::offset_minute_signed</code></li>
<li><code>Parsed::offset_second_signed</code></li>
<li><code>Parsed::set_offset_minute_signed</code></li>
<li><code>Parsed::set_offset_second_signed</code></li>
<li><code>Parsed::with_offset_minute_signed</code></li>
<li><code>Parsed::with_offset_second_signed</code></li>
<li><code>error::InvalidVariant</code></li>
<li><code>impl FromStr</code> for <code>Weekday</code></li>
<li><code>impl FromStr</code> for <code>Month</code></li>
<li><code>impl Display for Duration</code></li>
</ul>
<h3>Deprecated</h3>
<p>The following methods have been deprecated in favor of the new, signed equivalent methods. The
pre-existing methods</p>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="a957e12213"><code>a957e12</code></a> 0.3.9 release</li>
<li><a href="64172e9de4"><code>64172e9</code></a> v0.3.8 release</li>
<li><a href="e95ea6d251"><code>e95ea6d</code></a> Add tests for size, alignment, trait impls</li>
<li><a href="24c36afdc3"><code>24c36af</code></a> Performance improvement</li>
<li><a href="c0516544ec"><code>c051654</code></a> Move to tt-muncher parsing</li>
<li><a href="0a3cf3ce52"><code>0a3cf3c</code></a> Implement <code>Display</code> for <code>Duration</code></li>
<li><a href="dbec276ea3"><code>dbec276</code></a> Implement <code>FromStr</code> for <code>Weekday</code>, <code>Month</code></li>
<li><a href="460b7ab383"><code>460b7ab</code></a> Limit use of fields in <code>Parsed</code></li>
<li><a href="46bf135bd6"><code>46bf135</code></a> Store offset components properly</li>
<li><a href="5fde5ef8d8"><code>5fde5ef</code></a> Relocate some code, improve internals</li>
<li>Additional commits viewable in <a href="https://github.com/time-rs/time/compare/v0.3.7...v0.3.9">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=time&package-manager=cargo&previous-version=0.3.7&new-version=0.3.9)](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>
819: Bump thomaseizinger/keep-a-changelog-new-release from 1.2.1 to 1.3.0 r=delta1 a=dependabot[bot]
Bumps [thomaseizinger/keep-a-changelog-new-release](https://github.com/thomaseizinger/keep-a-changelog-new-release) from 1.2.1 to 1.3.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/thomaseizinger/keep-a-changelog-new-release/releases">thomaseizinger/keep-a-changelog-new-release's releases</a>.</em></p>
<blockquote>
<h2>1.3.0</h2>
<h3>Added</h3>
<ul>
<li>New optional <code>tag</code> argument allowing <code>v</code>-prefixed versions</li>
</ul>
<h3>Changed</h3>
<ul>
<li>The <code>version</code> argument is no longer required</li>
</ul>
<h3>Deprecated</h3>
<ul>
<li>The <code>version</code> argument will be replaced in favor of the <code>tag</code> argument</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/thomaseizinger/keep-a-changelog-new-release/blob/master/CHANGELOG.md">thomaseizinger/keep-a-changelog-new-release's changelog</a>.</em></p>
<blockquote>
<h2>[1.3.0] - 2021-10-12</h2>
<h3>Added</h3>
<ul>
<li>New optional <code>tag</code> argument allowing <code>v</code>-prefixed versions</li>
</ul>
<h3>Changed</h3>
<ul>
<li>The <code>version</code> argument is no longer required</li>
</ul>
<h3>Deprecated</h3>
<ul>
<li>The <code>version</code> argument will be replaced in favor of the <code>tag</code> argument</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="5bc2328934"><code>5bc2328</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/thomaseizinger/keep-a-changelog-new-release/issues/11">#11</a> from h4sh3d/add-tag-argument</li>
<li><a href="7e9f6cc8c3"><code>7e9f6cc</code></a> Document new tag argument</li>
<li><a href="576342e16c"><code>576342e</code></a> New tag argument to control prefix of version</li>
<li>See full diff in <a href="https://github.com/thomaseizinger/keep-a-changelog-new-release/compare/1.2.1...1.3.0">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=thomaseizinger/keep-a-changelog-new-release&package-manager=github_actions&previous-version=1.2.1&new-version=1.3.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>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
934: Don't wait for refund transaction to receive confirmations r=binarybaron a=binarybaron
Don't wait for refund transaction to receive confirmations to mitigate a scenario where the swap is stuck in `BtcCancelled` because it's not resumable.
Closes https://github.com/comit-network/xmr-btc-swap/issues/903
Co-authored-by: binarybaron <86064887+binarybaron@users.noreply.github.com>
894: Reduce `bitcoin_finality_confirmations` from 2 to 1 r=binarybaron a=binarybaron
Reduces `bitcoin_finality_confirmations` from 2 to 1. This lowers the total time needed for a swap by an average of 10 minutes
I'm aware that this has been proposed before (https://github.com/comit-network/xmr-btc-swap/pull/800) and was rejected.
> On the ASB, the bitcoin finality confirmations can be set to 1 using the config file. This will get you the swap reduction time you desire.
I believe this is not correct. There is no way for ASB operators to configure the `bitcoin_finality_confirmations` setting. Only the `target_block` can be configured manually, but this is only used for estimating the fee rate when a btc transaction is published and not for deciding when it is safe to assume that the transaction is finalized.
E.g the `config.toml` file of my (testate) asb
```
[data]
dir = "/root/.local/share/xmr-btc-swap/asb/testnet"
[network]
listen = ["/ip4/0.0.0.0/tcp/9939", "/ip4/0.0.0.0/tcp/9940/ws"]
external_addresses = ["/dnsaddr/unstoppableswap.net"]
rendezvous_point = "/dnsaddr/discover.unstoppableswap.net/p2p/12D3KooWA6cnqJpVnreBVnoro8midDL9Lpzmg8oJPoAGi7YYaamE"
[bitcoin]
electrum_rpc_url = "ssl://electrum.blockstream.info:60002"
target_block = 1 # My asb still waits for 2 confirmations on the btc lock tx
network = "Testnet"
[monero]
wallet_rpc_url = "http://127.0.0.1:38083/json_rpc"
network = "Stagenet"
[tor]
control_port = 9051
socks5_port = 9050
[maker]
min_buy_btc = 0.0001
max_buy_btc = 0.1
ask_spread = 0.00
price_ticker_ws_url = "wss://ws.kraken.com"
```
Co-authored-by: binarybaron <you@domain.com>
Don't wait for refund transaction to receive confirmations to mitigate a scenario where the swap is stuck in `BtcCancelled` because it's not resumable.