1068: fix potential overflow in `max_bitcoin_for_price` r=delta1 a=delta1
In testing, ASB panicked in `max_bitcoin_for_price` when the Monero balance x Bitcoin price was enough to overflow `u64`.
This PR changes the function to do the piconero offset division first, and then to use `checked_mul` to return None if the calculation would overflow. This required changing the function return signature to an `Option`. Additional tests for the function were also added.
MONERO_FEE was also changed from 0.000030 to 0.000016, which is still double the current median transaction fee listed at
https://www.monero.how/monero-transaction-fees as of 2022-07-28.
Co-authored-by: Byron Hambly <bhambly@blockstream.com>
1075: Bump anyhow from 1.0.57 to 1.0.58 r=delta1 a=dependabot[bot]
Bumps [anyhow](https://github.com/dtolnay/anyhow) from 1.0.57 to 1.0.58.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/dtolnay/anyhow/releases">anyhow's releases</a>.</em></p>
<blockquote>
<h2>1.0.58</h2>
<ul>
<li>Fix some broken links in documentation</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="8f950ac0d6"><code>8f950ac</code></a> Release 1.0.58</li>
<li><a href="bf23b3b685"><code>bf23b3b</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/dtolnay/anyhow/issues/242">#242</a> from MedzikUser/master</li>
<li><a href="d8c2388c65"><code>d8c2388</code></a> Use upstreamed docs.rs icon in docs.rs badge</li>
<li><a href="db82639510"><code>db82639</code></a> Fix broken doc links to anyhow macro</li>
<li><a href="462212b707"><code>462212b</code></a> Update docs.rs badge</li>
<li><a href="ff37db348d"><code>ff37db3</code></a> Check all crates in workspace for outdated deps</li>
<li><a href="302acadce0"><code>302acad</code></a> Match components in CI to rust-toolchain.toml file</li>
<li><a href="26023f77a8"><code>26023f7</code></a> Run miri in stricter miri-strict-provenance mode</li>
<li><a href="f45065787a"><code>f450657</code></a> Drop unneeded quoting from env variable in workflows yaml</li>
<li><a href="09e4db31da"><code>09e4db3</code></a> Update workflows to actions/checkout@v3</li>
<li>See full diff in <a href="https://github.com/dtolnay/anyhow/compare/1.0.57...1.0.58">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.57&new-version=1.0.58)](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>
1074: Bump strum from 0.24.0 to 0.24.1 r=delta1 a=dependabot[bot]
Bumps [strum](https://github.com/Peternator7/strum) from 0.24.0 to 0.24.1.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/Peternator7/strum/blob/master/CHANGELOG.md">strum's changelog</a>.</em></p>
<blockquote>
<h2><del>0.24.1</del> (Yanked becase <a href="https://github-redirect.dependabot.com/Peternator7/strum/issues/217">#217</a> was more "breaking" than I wanted)</h2>
<ul>
<li><a href="https://github-redirect.dependabot.com/Peternator7/strum/pull/220">#220</a>. Add support for PHF in <code>EnumString</code> (opt-in runtime
performance improvements for large enums as <code>#[strum(use_phf)]</code>, requires <code>phf</code> feature and increases MSRV to <code>1.46</code>)
<ul>
<li><a href="https://github-redirect.dependabot.com/Peternator7/strum/pull/224">#224</a> tweaked the algorithm.</li>
</ul>
</li>
<li><a href="https://github-redirect.dependabot.com/Peternator7/strum/pull/217">#217</a>: Automatically implement <code>TryFrom</code> in <code>FromRepr</code>. This is
technically a breaking change, but the fix is to just remove the manual implementation of TryFrom so it shouldn't
be more than a minor inconvenience.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a href="https://github.com/Peternator7/strum/commits">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=strum&package-manager=cargo&previous-version=0.24.0&new-version=0.24.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>
1073: Bump serde_with from 1.13.0 to 1.14.0 r=delta1 a=dependabot[bot]
Bumps [serde_with](https://github.com/jonasbb/serde_with) from 1.13.0 to 1.14.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.14.0</h2>
<h3>Added</h3>
<ul>
<li>
<p>Add support for <code>time</code> crate v0.3 <a href="https://github-redirect.dependabot.com/jonasbb/serde_with/issues/450">#450</a></p>
<p><code>time::Duration</code> can now be serialized with the <code>DurationSeconds</code> and related converters.</p>
<pre lang="rust"><code>// Rust
#[serde_as(as = "serde_with::DurationSeconds<u64>")]
value: Duration,
<p>// JSON
"value": 86400,
</code></pre></p>
<p><code>time::OffsetDateTime</code> and <code>time::PrimitiveDateTime</code> can now be serialized with the <code>TimestampSeconds</code> and related converters.</p>
<pre lang="rust"><code>// Rust
#[serde_as(as = "serde_with::TimestampMicroSecondsWithFrac<String>")]
value: time::PrimitiveDateTime,
<p>// JSON
"value": "1000000",
</code></pre></p>
<p><code>time::OffsetDateTime</code> can be serialized in string format in different well-known formats.
Two formats are supported, <code>time::format_description::well_known::Rfc2822</code> and <code>time::format_description::well_known::Rfc3339</code>.</p>
<pre lang="rust"><code>// Rust
#[serde_as(as = "time::format_description::well_known::Rfc2822")]
rfc_2822: OffsetDateTime,
#[serde_as(as = "Vec<time::format_description::well_known::Rfc3339>")]
rfc_3339: Vec<OffsetDateTime>,
<p>// JSON
"rfc_2822": "Fri, 21 Nov 1997 09:55:06 -0600",
"rfc_3339": ["1997-11-21T09:55:06-06:00"],
</code></pre></p>
</li>
<li>
<p>Deserialize <code>bool</code> from integers <a href="https://github-redirect.dependabot.com/jonasbb/serde_with/issues/456">#456</a> 462</p>
<p>Deserialize an integer and convert it into a <code>bool</code>.
<code>BoolFromInt<Strict></code> (default) deserializes 0 to <code>false</code> and <code>1</code> to <code>true</code>, other numbers are errors.
<code>BoolFromInt<Flexible></code> deserializes any non-zero as <code>true</code>.
Serialization only emits 0/1.</p>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="8c59954436"><code>8c59954</code></a> Merge <a href="https://github-redirect.dependabot.com/jonasbb/serde_with/issues/463">#463</a></li>
<li><a href="8773ac1f5a"><code>8773ac1</code></a> Bump serde_with version to 1.14.0</li>
<li><a href="9351c4c4e7"><code>9351c4c</code></a> Bump rmp-serde version since the MSRV is now suitably high</li>
<li><a href="5e63b1f280"><code>5e63b1f</code></a> Fix doc links to alloc items</li>
<li><a href="d3140e1438"><code>d3140e1</code></a> Merge <a href="https://github-redirect.dependabot.com/jonasbb/serde_with/issues/462">#462</a></li>
<li><a href="82bd5b860e"><code>82bd5b8</code></a> Add Changelog and guide entry</li>
<li><a href="299a2ba0c9"><code>299a2ba</code></a> Merge <a href="https://github-redirect.dependabot.com/jonasbb/serde_with/issues/461">#461</a></li>
<li><a href="1e9c5b9303"><code>1e9c5b9</code></a> Bump ossf/scorecard-action from 1.0.4 to 1.1.0</li>
<li><a href="34fbc974bd"><code>34fbc97</code></a> Add BoolFromInt adapter</li>
<li><a href="b3d4156100"><code>b3d4156</code></a> Merge <a href="https://github-redirect.dependabot.com/jonasbb/serde_with/issues/457">#457</a></li>
<li>Additional commits viewable in <a href="https://github.com/jonasbb/serde_with/compare/v1.13.0...v1.14.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.13.0&new-version=1.14.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>
1069: Bump dialoguer from 0.10.0 to 0.10.1 r=delta1 a=dependabot[bot]
Bumps [dialoguer](https://github.com/mitsuhiko/dialoguer) from 0.10.0 to 0.10.1.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/mitsuhiko/dialoguer/blob/master/CHANGELOG.md">dialoguer's changelog</a>.</em></p>
<blockquote>
<h2>0.10.1</h2>
<h3>Enhancements</h3>
<ul>
<li>Allow matches highlighting for <code>FuzzySelect</code></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="3f16bdedf8"><code>3f16bde</code></a> Release 0.10.1</li>
<li><a href="f7d02321f5"><code>f7d0232</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/mitsuhiko/dialoguer/issues/182">#182</a> from abreis/docs-all-features</li>
<li><a href="7ff96f582e"><code>7ff96f5</code></a> Tell docs.rs to document all features</li>
<li><a href="4f8ffda50b"><code>4f8ffda</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/mitsuhiko/dialoguer/issues/179">#179</a> from deg0nz/highlight-fuzzy-indices</li>
<li><a href="f4c434a803"><code>f4c434a</code></a> Add Fuzzy Select match highlighting</li>
<li><a href="2d47e30b9a"><code>2d47e30</code></a> Some cleanup</li>
<li>See full diff in <a href="https://github.com/mitsuhiko/dialoguer/compare/v0.10.0...v0.10.1">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=dialoguer&package-manager=cargo&previous-version=0.10.0&new-version=0.10.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>
In testing, ASB panicked in `max_bitcoin_for_price` when the Monero
balance x Bitcoin price was enough to overflow `u64`.
This commit changes the function to do the piconero offset division
first, and then to use `checked_mul` to return None if the calculation
would overflow. This required changing the function return
signature to an `Option`. Additional tests for the function were also added.
MONERO_FEE was changed from 0.000030 to 0.000016, which is still
double the current median transaction fee listed at
https://www.monero.how/monero-transaction-fees as of 2022-07-28.
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>