]> Untitled Git - bdk/log
bdk
13 months agoMerge bitcoindevkit/bdk#1673: chore(deps): bump crazy-max/ghaction-import-gpg from...
Steve Myers [Wed, 6 Nov 2024 15:24:44 +0000 (09:24 -0600)]
Merge bitcoindevkit/bdk#1673: chore(deps): bump crazy-max/ghaction-import-gpg from 5 to 6

b7831678de4ac149b708db39216d66f643f8f9e5 chore(deps): bump crazy-max/ghaction-import-gpg from 5 to 6 (dependabot[bot])

Pull request description:

  Bumps [crazy-max/ghaction-import-gpg](https://github.com/crazy-max/ghaction-import-gpg) from 5 to 6.
  <details>
  <summary>Release notes</summary>
  <p><em>Sourced from <a href="https://github.com/crazy-max/ghaction-import-gpg/releases">crazy-max/ghaction-import-gpg's releases</a>.</em></p>
  <blockquote>
  <h2>v6.0.0</h2>
  <ul>
  <li>Node 20 as default runtime (requires <a href="https://github.com/actions/runner/releases/tag/v2.308.0">Actions Runner v2.308.0</a> or later) by <a href="https://github.com/crazy-max"><code>@crazy-max</code></a> in <a href="https://redirect.github.com/crazy-max/ghaction-import-gpg/pull/183">crazy-max/ghaction-import-gpg#183</a></li>
  </ul>
  <p><strong>Full Changelog</strong>: <a href="https://github.com/crazy-max/ghaction-import-gpg/compare/v5.4.0...v6.0.0">https://github.com/crazy-max/ghaction-import-gpg/compare/v5.4.0...v6.0.0</a></p>
  <h2>v5.4.0</h2>
  <ul>
  <li>Fallback to gpg homedir if <code>HOME</code> not set by <a href="https://github.com/crazy-max"><code>@crazy-max</code></a> in <a href="https://redirect.github.com/crazy-max/ghaction-import-gpg/pull/181">crazy-max/ghaction-import-gpg#181</a></li>
  <li>Bump openpgp from 5.8.0 to 5.10.1 in <a href="https://redirect.github.com/crazy-max/ghaction-import-gpg/pull/177">crazy-max/ghaction-import-gpg#177</a> <a href="https://redirect.github.com/crazy-max/ghaction-import-gpg/pull/171">crazy-max/ghaction-import-gpg#171</a></li>
  <li>Bump semver from 6.3.0 to 6.3.1 in <a href="https://redirect.github.com/crazy-max/ghaction-import-gpg/pull/174">crazy-max/ghaction-import-gpg#174</a></li>
  <li>Bump word-wrap from 1.2.3 to 1.2.4 in <a href="https://redirect.github.com/crazy-max/ghaction-import-gpg/pull/175">crazy-max/ghaction-import-gpg#175</a></li>
  </ul>
  <p><strong>Full Changelog</strong>: <a href="https://github.com/crazy-max/ghaction-import-gpg/compare/v5.3.0...v5.4.0">https://github.com/crazy-max/ghaction-import-gpg/compare/v5.3.0...v5.4.0</a></p>
  <h2>v5.3.0</h2>
  <ul>
  <li>Add <code>trust_level</code> input to set private key trust level by <a href="https://github.com/crazy-max"><code>@crazy-max</code></a> in <a href="https://redirect.github.com/crazy-max/ghaction-import-gpg/pull/168">crazy-max/ghaction-import-gpg#168</a></li>
  <li>Missing <code>name</code> output to action metadata by <a href="https://github.com/dtan4"><code>@dtan4</code></a> in <a href="https://redirect.github.com/crazy-max/ghaction-import-gpg/pull/154">crazy-max/ghaction-import-gpg#154</a></li>
  <li>Update yarn to 3.5.1 by <a href="https://github.com/crazy-max"><code>@crazy-max</code></a> in <a href="https://redirect.github.com/crazy-max/ghaction-import-gpg/pull/165">crazy-max/ghaction-import-gpg#165</a></li>
  <li>Update dev dependencies by <a href="https://github.com/crazy-max"><code>@crazy-max</code></a> in <a href="https://redirect.github.com/crazy-max/ghaction-import-gpg/pull/167">crazy-max/ghaction-import-gpg#167</a></li>
  <li>Bump openpgp from 5.5.0 to 5.8.0 in <a href="https://redirect.github.com/crazy-max/ghaction-import-gpg/pull/164">crazy-max/ghaction-import-gpg#164</a></li>
  <li>Bump minimatch from 3.0.4 to 3.1.2 in <a href="https://redirect.github.com/crazy-max/ghaction-import-gpg/pull/155">crazy-max/ghaction-import-gpg#155</a></li>
  <li>Bump json5 from 2.1.3 to 2.2.3 in <a href="https://redirect.github.com/crazy-max/ghaction-import-gpg/pull/157">crazy-max/ghaction-import-gpg#157</a></li>
  </ul>
  <p><strong>Full Changelog</strong>: <a href="https://github.com/crazy-max/ghaction-import-gpg/compare/v5.2.0...v5.3.0">https://github.com/crazy-max/ghaction-import-gpg/compare/v5.2.0...v5.3.0</a></p>
  <h2>v5.2.0</h2>
  <ul>
  <li>Remove <code>setOutput</code> workaround by <a href="https://github.com/crazy-max"><code>@crazy-max</code></a> (<a href="https://redirect.github.com/crazy-max/ghaction-import-gpg/issues/152">#152</a>)</li>
  <li>Bump <code>@actions/core</code> from 1.9.0 to 1.10.0 (<a href="https://redirect.github.com/crazy-max/ghaction-import-gpg/issues/147">#147</a> <a href="https://redirect.github.com/crazy-max/ghaction-import-gpg/issues/151">#151</a>)</li>
  <li>Bump openpgp from 5.3.1 to 5.5.0 (<a href="https://redirect.github.com/crazy-max/ghaction-import-gpg/issues/149">#149</a>)</li>
  </ul>
  <p><strong>Full Changelog</strong>: <a href="https://github.com/crazy-max/ghaction-import-gpg/compare/v5.1.0...v5.2.0">https://github.com/crazy-max/ghaction-import-gpg/compare/v5.1.0...v5.2.0</a></p>
  <h2>v5.1.0</h2>
  <ul>
  <li>Bump openpgp from 5.2.1 to 5.3.1 (<a href="https://redirect.github.com/crazy-max/ghaction-import-gpg/issues/145">#145</a>)</li>
  <li>Bump <code>@actions/core</code> from 1.6.0 to 1.9.0 (<a href="https://redirect.github.com/crazy-max/ghaction-import-gpg/issues/143">#143</a>)</li>
  </ul>
  </blockquote>
  </details>
  <details>
  <summary>Commits</summary>
  <ul>
  <li><a href="https://github.com/crazy-max/ghaction-import-gpg/commit/cb9bde2e2525e640591a934b1fd28eef1dcaf5e5"><code>cb9bde2</code></a> Merge pull request <a href="https://redirect.github.com/crazy-max/ghaction-import-gpg/issues/205">#205</a> from crazy-max/dependabot/npm_and_yarn/openpgp-5.11.2</li>
  <li><a href="https://github.com/crazy-max/ghaction-import-gpg/commit/652ac619622e28a2740bbf5feda9f1708d9cf36b"><code>652ac61</code></a> chore: update generated content</li>
  <li><a href="https://github.com/crazy-max/ghaction-import-gpg/commit/0404dfd0fccd601048a26bff779525d5486dd918"><code>0404dfd</code></a> build(deps): bump openpgp from 5.11.0 to 5.11.2</li>
  <li><a href="https://github.com/crazy-max/ghaction-import-gpg/commit/63a9470ce83044c269d0efa4f71421272f9a1920"><code>63a9470</code></a> Merge pull request <a href="https://redirect.github.com/crazy-max/ghaction-import-gpg/issues/209">#209</a> from crazy-max/dependabot/npm_and_yarn/actions/core-1...</li>
  <li><a href="https://github.com/crazy-max/ghaction-import-gpg/commit/e3a645659442f12f0c394e2cec4e1a9467d51a24"><code>e3a6456</code></a> chore: update generated content</li>
  <li><a href="https://github.com/crazy-max/ghaction-import-gpg/commit/f0d6155b31e158b176d30acdef924dffcd1b257e"><code>f0d6155</code></a> Merge pull request <a href="https://redirect.github.com/crazy-max/ghaction-import-gpg/issues/207">#207</a> from crazy-max/dependabot/npm_and_yarn/micromatch-4.0.8</li>
  <li><a href="https://github.com/crazy-max/ghaction-import-gpg/commit/88122507705cf6f9c5bf848d285e9cd843e0a015"><code>8812250</code></a> build(deps): bump <code>@actions/core</code> from 1.10.1 to 1.11.1</li>
  <li><a href="https://github.com/crazy-max/ghaction-import-gpg/commit/35465dfc8d72a365833db2fcc2d5927021379add"><code>35465df</code></a> build(deps): bump micromatch from 4.0.4 to 4.0.8</li>
  <li><a href="https://github.com/crazy-max/ghaction-import-gpg/commit/ea88154188003ca5aeb616063b2d0dd6a9cf86e2"><code>ea88154</code></a> Merge pull request <a href="https://redirect.github.com/crazy-max/ghaction-import-gpg/issues/204">#204</a> from crazy-max/dependabot/github_actions/docker/bake-...</li>
  <li><a href="https://github.com/crazy-max/ghaction-import-gpg/commit/871d8a5e555b05a336abb46c26b44a727079eada"><code>871d8a5</code></a> build(deps): bump docker/bake-action from 4 to 5</li>
  <li>Additional commits viewable in <a href="https://github.com/crazy-max/ghaction-import-gpg/compare/v5...v6">compare view</a></li>
  </ul>
  </details>
  <br />

  [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=crazy-max/ghaction-import-gpg&package-manager=github_actions&previous-version=5&new-version=6)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

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

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

  ---

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

  You can trigger Dependabot actions by commenting on this PR:
  - `@dependabot rebase` will rebase this PR
  - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
  - `@dependabot merge` will merge this PR after your CI passes on it
  - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
  - `@dependabot cancel merge` will cancel a previously requested merge and block automerging
  - `@dependabot reopen` will reopen this PR if it is closed
  - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency
  - `@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>

ACKs for top commit:
  notmandatory:
    ACK b7831678de4ac149b708db39216d66f643f8f9e5

Tree-SHA512: 5f55c5e8558a81c0021e46b89355a1cb7bcfc8049902c00250d8d492b257028a32bd4cd847515ae860dd8af52ab0d666f9fbb16eb71862da1d8b6b4f5ebd91a5

13 months agoMerge bitcoindevkit/bdk#1672: chore(deps): bump peter-evans/create-pull-request from...
Steve Myers [Wed, 6 Nov 2024 15:23:29 +0000 (09:23 -0600)]
Merge bitcoindevkit/bdk#1672: chore(deps): bump peter-evans/create-pull-request from 6 to 7

74e32a404bfe97a4471a4b0f08ce493923e1d90d chore(deps): bump peter-evans/create-pull-request from 6 to 7 (dependabot[bot])

Pull request description:

  Bumps [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request) from 6 to 7.
  <details>
  <summary>Release notes</summary>
  <p><em>Sourced from <a href="https://github.com/peter-evans/create-pull-request/releases">peter-evans/create-pull-request's releases</a>.</em></p>
  <blockquote>
  <h2>Create Pull Request v7.0.0</h2>
  <p>:sparkles: Now supports commit signing with bot-generated tokens! See &quot;What's new&quot; below. :writing_hand::robot:</p>
  <h3>Behaviour changes</h3>
  <ul>
  <li>Action input <code>git-token</code> has been renamed <code>branch-token</code>, to be more clear about its purpose. The <code>branch-token</code> is the token that the action will use to create and update the branch.</li>
  <li>The action now handles requests that have been rate-limited by GitHub. Requests hitting a primary rate limit will retry twice, for a total of three attempts. Requests hitting a secondary rate limit will not be retried.</li>
  <li>The <code>pull-request-operation</code> output now returns <code>none</code> when no operation was executed.</li>
  <li>Removed deprecated output environment variable <code>PULL_REQUEST_NUMBER</code>. Please use the <code>pull-request-number</code> action output instead.</li>
  </ul>
  <h3>What's new</h3>
  <ul>
  <li>The action can now sign commits as <code>github-actions[bot]</code> when using <code>GITHUB_TOKEN</code>, or your own bot when using <a href="https://github.com/peter-evans/create-pull-request/blob/HEAD/docs/concepts-guidelines.md#authenticating-with-github-app-generated-tokens">GitHub App tokens</a>. See <a href="https://github.com/peter-evans/create-pull-request/blob/HEAD/docs/concepts-guidelines.md#commit-signature-verification-for-bots">commit signing</a> for details.</li>
  <li>Action input <code>draft</code> now accepts a new value <code>always-true</code>. This will set the pull request to draft status when the pull request is updated, as well as on creation.</li>
  <li>A new action input <code>maintainer-can-modify</code> indicates whether <a href="https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/working-with-forks/allowing-changes-to-a-pull-request-branch-created-from-a-fork">maintainers can modify</a> the pull request. The default is <code>true</code>, which retains the existing behaviour of the action.</li>
  <li>A new output <code>pull-request-commits-verified</code> returns <code>true</code> or <code>false</code>, indicating whether GitHub considers the signature of the branch's commits to be verified.</li>
  </ul>
  <h2>What's Changed</h2>
  <ul>
  <li>build(deps-dev): bump <code>@types/node</code> from 18.19.36 to 18.19.39 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3000">peter-evans/create-pull-request#3000</a></li>
  <li>build(deps-dev): bump ts-jest from 29.1.5 to 29.2.0 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3008">peter-evans/create-pull-request#3008</a></li>
  <li>build(deps-dev): bump prettier from 3.3.2 to 3.3.3 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3018">peter-evans/create-pull-request#3018</a></li>
  <li>build(deps-dev): bump ts-jest from 29.2.0 to 29.2.2 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3019">peter-evans/create-pull-request#3019</a></li>
  <li>build(deps-dev): bump eslint-plugin-prettier from 5.1.3 to 5.2.1 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3035">peter-evans/create-pull-request#3035</a></li>
  <li>build(deps-dev): bump <code>@types/node</code> from 18.19.39 to 18.19.41 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3037">peter-evans/create-pull-request#3037</a></li>
  <li>build(deps): bump undici from 6.19.2 to 6.19.4 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3036">peter-evans/create-pull-request#3036</a></li>
  <li>build(deps-dev): bump ts-jest from 29.2.2 to 29.2.3 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3038">peter-evans/create-pull-request#3038</a></li>
  <li>build(deps-dev): bump <code>@types/node</code> from 18.19.41 to 18.19.42 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3070">peter-evans/create-pull-request#3070</a></li>
  <li>build(deps): bump undici from 6.19.4 to 6.19.5 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3086">peter-evans/create-pull-request#3086</a></li>
  <li>build(deps-dev): bump <code>@types/node</code> from 18.19.42 to 18.19.43 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3087">peter-evans/create-pull-request#3087</a></li>
  <li>build(deps-dev): bump ts-jest from 29.2.3 to 29.2.4 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3088">peter-evans/create-pull-request#3088</a></li>
  <li>build(deps): bump undici from 6.19.5 to 6.19.7 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3145">peter-evans/create-pull-request#3145</a></li>
  <li>build(deps-dev): bump <code>@types/node</code> from 18.19.43 to 18.19.44 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3144">peter-evans/create-pull-request#3144</a></li>
  <li>Update distribution by <a href="https://github.com/actions-bot"><code>@actions-bot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3154">peter-evans/create-pull-request#3154</a></li>
  <li>build(deps): bump undici from 6.19.7 to 6.19.8 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3213">peter-evans/create-pull-request#3213</a></li>
  <li>build(deps-dev): bump <code>@types/node</code> from 18.19.44 to 18.19.45 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3214">peter-evans/create-pull-request#3214</a></li>
  <li>Update distribution by <a href="https://github.com/actions-bot"><code>@actions-bot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3221">peter-evans/create-pull-request#3221</a></li>
  <li>build(deps-dev): bump eslint-import-resolver-typescript from 3.6.1 to 3.6.3 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3255">peter-evans/create-pull-request#3255</a></li>
  <li>build(deps-dev): bump <code>@types/node</code> from 18.19.45 to 18.19.46 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3254">peter-evans/create-pull-request#3254</a></li>
  <li>build(deps-dev): bump ts-jest from 29.2.4 to 29.2.5 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3256">peter-evans/create-pull-request#3256</a></li>
  <li>v7 - signed commits by <a href="https://github.com/peter-evans"><code>@peter-evans</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3057">peter-evans/create-pull-request#3057</a></li>
  </ul>
  <h2>New Contributors</h2>
  <ul>
  <li><a href="https://github.com/rustycl0ck"><code>@rustycl0ck</code></a> made their first contribution in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3057">peter-evans/create-pull-request#3057</a></li>
  </ul>
  <p><strong>Full Changelog</strong>: <a href="https://github.com/peter-evans/create-pull-request/compare/v6.1.0...v7.0.0">https://github.com/peter-evans/create-pull-request/compare/v6.1.0...v7.0.0</a></p>
  <h2>Create Pull Request v6.1.0</h2>
  <p>✨ Adds <code>pull-request-branch</code> as an action output.</p>
  <h2>What's Changed</h2>
  <!-- raw HTML omitted -->
  </blockquote>
  <p>... (truncated)</p>
  </details>
  <details>
  <summary>Commits</summary>
  <ul>
  <li><a href="https://github.com/peter-evans/create-pull-request/commit/5e914681df9dc83aa4e4905692ca88beb2f9e91f"><code>5e91468</code></a> fix: support symlinks when commit signing (<a href="https://redirect.github.com/peter-evans/create-pull-request/issues/3359">#3359</a>)</li>
  <li><a href="https://github.com/peter-evans/create-pull-request/commit/2f38cd26bfebe301a5ee90bdd6550a69dc3ef23f"><code>2f38cd2</code></a> fix: support submodules when commit signing (<a href="https://redirect.github.com/peter-evans/create-pull-request/issues/3354">#3354</a>)</li>
  <li><a href="https://github.com/peter-evans/create-pull-request/commit/7a8aeac749996aed943101d8e7dfb0cecc06197e"><code>7a8aeac</code></a> build(deps-dev): bump eslint from 8.57.0 to 8.57.1 (<a href="https://redirect.github.com/peter-evans/create-pull-request/issues/3344">#3344</a>)</li>
  <li><a href="https://github.com/peter-evans/create-pull-request/commit/d39d596a7720fc2c61c9aa5503097fb553431b5e"><code>d39d596</code></a> build(deps-dev): bump <code>@types/jest</code> from 29.5.12 to 29.5.13 (<a href="https://redirect.github.com/peter-evans/create-pull-request/issues/3343">#3343</a>)</li>
  <li><a href="https://github.com/peter-evans/create-pull-request/commit/f6f978fd3dc86c443f758f603d22dc554762c832"><code>f6f978f</code></a> docs: correct suggestion for bot setup (<a href="https://redirect.github.com/peter-evans/create-pull-request/issues/3342">#3342</a>)</li>
  <li><a href="https://github.com/peter-evans/create-pull-request/commit/6cd32fd93684475c31847837f87bb135d40a2b79"><code>6cd32fd</code></a> fix: disable abbreviated commit shas in diff (<a href="https://redirect.github.com/peter-evans/create-pull-request/issues/3337">#3337</a>)</li>
  <li><a href="https://github.com/peter-evans/create-pull-request/commit/d121e62763d8cc35b5fb1710e887d6e69a52d3a4"><code>d121e62</code></a> fix: disable diff detection for renames and copies (<a href="https://redirect.github.com/peter-evans/create-pull-request/issues/3330">#3330</a>)</li>
  <li><a href="https://github.com/peter-evans/create-pull-request/commit/f4d66f4d5a5a7e65a185463192800c32d296ac6d"><code>f4d66f4</code></a> build(deps-dev): bump typescript from 5.5.4 to 5.6.2 (<a href="https://redirect.github.com/peter-evans/create-pull-request/issues/3319">#3319</a>)</li>
  <li><a href="https://github.com/peter-evans/create-pull-request/commit/488c869d17c8a5cb8a2f0a09471ed82c1d2a084f"><code>488c869</code></a> build(deps-dev): bump <code>@types/node</code> from 18.19.48 to 18.19.50 (<a href="https://redirect.github.com/peter-evans/create-pull-request/issues/3320">#3320</a>)</li>
  <li><a href="https://github.com/peter-evans/create-pull-request/commit/5354f85616108575685a73a0ddd2f67c26a441c3"><code>5354f85</code></a> docs: update readme</li>
  <li>Additional commits viewable in <a href="https://github.com/peter-evans/create-pull-request/compare/v6...v7">compare view</a></li>
  </ul>
  </details>
  <br />

  [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=peter-evans/create-pull-request&package-manager=github_actions&previous-version=6&new-version=7)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

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

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

  ---

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

  You can trigger Dependabot actions by commenting on this PR:
  - `@dependabot rebase` will rebase this PR
  - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
  - `@dependabot merge` will merge this PR after your CI passes on it
  - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
  - `@dependabot cancel merge` will cancel a previously requested merge and block automerging
  - `@dependabot reopen` will reopen this PR if it is closed
  - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency
  - `@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>

ACKs for top commit:
  notmandatory:
    ACK 74e32a404bfe97a4471a4b0f08ce493923e1d90d

Tree-SHA512: 747fc06aea72262968018150dbba1b5deae844fae4105f1639e168289776853988ebd89df7c596e03fa86afcd557c23dbb7bb571ba8ecd1b45444fd8d9767480

13 months agofeat(wallet)!: make `seen_at` mandatory for `Wallet::apply_update_at`
志宇 [Wed, 9 Oct 2024 14:36:27 +0000 (14:36 +0000)]
feat(wallet)!: make `seen_at` mandatory for `Wallet::apply_update_at`

Not including a `seen_at` alongside the update means the unconfirmed txs
of the update will not be considered to be part of the canonical
history. Therefore, transactions created with this wallet may replace
the update's unconfirmed txs (which is unintuitive behavior).

Also updated the docs.

13 months agorevert(wallet)!: rm `Wallet::unbroadcast_transactions`
志宇 [Wed, 9 Oct 2024 14:19:58 +0000 (14:19 +0000)]
revert(wallet)!: rm `Wallet::unbroadcast_transactions`

This is no longer relevant as we direct callers to only insert tx into
the wallet after a successful broadcast.

13 months agofix(wallet)!: delete method `insert_tx`
valued mammal [Tue, 5 Nov 2024 18:49:50 +0000 (13:49 -0500)]
fix(wallet)!: delete method `insert_tx`

Inserting unconfirmed txs can be done using the existing method
`apply_unconfirmed_txs`. Also removed `insert_checkpoint`, as the
API is unclear regarding where in the local chain the given block
should connect. Analogs for these methods are found in `test_utils`
module and are mainly used to facilitate testing.

13 months agotest(wallet): improve usage of test utils
valued mammal [Tue, 5 Nov 2024 02:15:37 +0000 (21:15 -0500)]
test(wallet): improve usage of test utils

13 months agochore: fix imports
valued mammal [Mon, 4 Nov 2024 23:10:47 +0000 (18:10 -0500)]
chore: fix imports

13 months agotest(wallet): fix test descriptor getters
valued mammal [Mon, 4 Nov 2024 20:59:35 +0000 (15:59 -0500)]
test(wallet): fix test descriptor getters

- `get_funded_wallet` requires two descriptors
- `get_funded_wallet_single` returns a single-descriptor
wallet

13 months agotest(wallet): add helpers to `test_utils`
valued mammal [Mon, 4 Nov 2024 20:02:46 +0000 (15:02 -0500)]
test(wallet): add helpers to `test_utils`

13 months agofeat(wallet): add module `test_utils`
valued mammal [Thu, 31 Oct 2024 20:41:41 +0000 (16:41 -0400)]
feat(wallet): add module `test_utils`

The common test utils are moved to a public `test_utils` module
behind a new test-utils feature flag

13 months agotest(wallet): refactor helper `insert_anchor_from_conf`
valued mammal [Thu, 24 Oct 2024 02:09:14 +0000 (22:09 -0400)]
test(wallet): refactor helper `insert_anchor_from_conf`

13 months agoMerge bitcoindevkit/bdk#1674: ci: pin deps for MSRV
valued mammal [Tue, 5 Nov 2024 18:27:57 +0000 (13:27 -0500)]
Merge bitcoindevkit/bdk#1674: ci: pin deps for MSRV

d2771502cee0179941aec3f11d97d9bc8137fb3d ci: pin deps for MSRV (valued mammal)

Pull request description:

  Pin deps in CI to build on MSRV

  - pin `indexmap` to 2.5.0
  - pin `security-framework-sys` to 2.11.1

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

ACKs for top commit:
  notmandatory:
    ACK d2771502cee0179941aec3f11d97d9bc8137fb3d

Tree-SHA512: adc15c5487f78a211892c4e6a851e17b04c3d02cc73ef2af25cf97a6e8c5aab9f80b14a4e05c409b76670bf6b35a04d10880ae0f2d3becfc28185e74a6311699

13 months agoci: pin deps for MSRV
valued mammal [Tue, 5 Nov 2024 03:20:21 +0000 (22:20 -0500)]
ci: pin deps for MSRV

- pin `indexmap` to 2.5.0
- pin `security-framework-sys` to 2.11.1

13 months agoMerge bitcoindevkit/bdk#1668: docs: fix incorrect links to wallet examples
valued mammal [Tue, 5 Nov 2024 13:37:19 +0000 (08:37 -0500)]
Merge bitcoindevkit/bdk#1668: docs: fix incorrect links to wallet examples

521b49d2da09e7c14c079970397f7d98f5cfe648 docs: fix incorrect links to wallet examples (Torkel Rogstad)

Pull request description:

  ### Description

  This PR updates the examples found in the wallet crate to use working links to GitHub.

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

ACKs for top commit:
  ValuedMammal:
    ACK 521b49d2da09e7c14c079970397f7d98f5cfe648

Tree-SHA512: a4b214894c5a1453a2fe7b9732508e57c65793604440b7d8892f89cda3065cf850a44926b4c711738c13e13634d480dc75f67424edc4d3d09def328ef3b7042a

13 months agochore(deps): bump crazy-max/ghaction-import-gpg from 5 to 6 github/dependabot/github_actions/crazy-max/ghaction-import-gpg-6
dependabot[bot] [Mon, 4 Nov 2024 05:47:40 +0000 (05:47 +0000)]
chore(deps): bump crazy-max/ghaction-import-gpg from 5 to 6

Bumps [crazy-max/ghaction-import-gpg](https://github.com/crazy-max/ghaction-import-gpg) from 5 to 6.
- [Release notes](https://github.com/crazy-max/ghaction-import-gpg/releases)
- [Commits](https://github.com/crazy-max/ghaction-import-gpg/compare/v5...v6)

---
updated-dependencies:
- dependency-name: crazy-max/ghaction-import-gpg
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
13 months agochore(deps): bump peter-evans/create-pull-request from 6 to 7 github/dependabot/github_actions/peter-evans/create-pull-request-7
dependabot[bot] [Mon, 4 Nov 2024 05:47:38 +0000 (05:47 +0000)]
chore(deps): bump peter-evans/create-pull-request from 6 to 7

Bumps [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request) from 6 to 7.
- [Release notes](https://github.com/peter-evans/create-pull-request/releases)
- [Commits](https://github.com/peter-evans/create-pull-request/compare/v6...v7)

---
updated-dependencies:
- dependency-name: peter-evans/create-pull-request
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
13 months agoMerge bitcoindevkit/bdk#1645: chore(deps): bump Swatinem/rust-cache from 2.2.1 to...
Steve Myers [Fri, 1 Nov 2024 23:40:15 +0000 (18:40 -0500)]
Merge bitcoindevkit/bdk#1645: chore(deps): bump Swatinem/rust-cache from 2.2.1 to 2.7.5

800f5a5c228f87d0dba13ab479531b1e8850fca4 chore(deps): bump Swatinem/rust-cache from 2.2.1 to 2.7.5 (dependabot[bot])

Pull request description:

  Bumps [Swatinem/rust-cache](https://github.com/swatinem/rust-cache) from 2.2.1 to 2.7.5.
  <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.7.5</h2>
  <h2>What's Changed</h2>
  <ul>
  <li>Upgrade checkout action from version 3 to 4 by <a href="https://github.com/carsten-wenderdel"><code>@carsten-wenderdel</code></a> in <a href="https://redirect.github.com/Swatinem/rust-cache/pull/190">Swatinem/rust-cache#190</a></li>
  <li>fix: usage of <code>deprecated</code> version of <code>node</code> by <a href="https://github.com/hamirmahal"><code>@hamirmahal</code></a> in <a href="https://redirect.github.com/Swatinem/rust-cache/pull/197">Swatinem/rust-cache#197</a></li>
  <li>Only run macOsWorkaround() on macOS by <a href="https://github.com/heksesang"><code>@heksesang</code></a> in <a href="https://redirect.github.com/Swatinem/rust-cache/pull/206">Swatinem/rust-cache#206</a></li>
  <li>Support Cargo.lock format cargo-lock v4 by <a href="https://github.com/NobodyXu"><code>@NobodyXu</code></a> in <a href="https://redirect.github.com/Swatinem/rust-cache/pull/211">Swatinem/rust-cache#211</a></li>
  </ul>
  <h2>New Contributors</h2>
  <ul>
  <li><a href="https://github.com/carsten-wenderdel"><code>@carsten-wenderdel</code></a> made their first contribution in <a href="https://redirect.github.com/Swatinem/rust-cache/pull/190">Swatinem/rust-cache#190</a></li>
  <li><a href="https://github.com/hamirmahal"><code>@hamirmahal</code></a> made their first contribution in <a href="https://redirect.github.com/Swatinem/rust-cache/pull/197">Swatinem/rust-cache#197</a></li>
  <li><a href="https://github.com/heksesang"><code>@heksesang</code></a> made their first contribution in <a href="https://redirect.github.com/Swatinem/rust-cache/pull/206">Swatinem/rust-cache#206</a></li>
  </ul>
  <p><strong>Full Changelog</strong>: <a href="https://github.com/Swatinem/rust-cache/compare/v2.7.3...v2.7.5">https://github.com/Swatinem/rust-cache/compare/v2.7.3...v2.7.5</a></p>
  <h2>v2.7.3</h2>
  <ul>
  <li>Work around upstream problem that causes cache saving to hang for minutes.</li>
  </ul>
  <p><strong>Full Changelog</strong>: <a href="https://github.com/Swatinem/rust-cache/compare/v2.7.2...v2.7.3">https://github.com/Swatinem/rust-cache/compare/v2.7.2...v2.7.3</a></p>
  <h2>v2.7.2</h2>
  <h2>What's Changed</h2>
  <ul>
  <li>Update action runtime to <code>node20</code> by <a href="https://github.com/rhysd"><code>@rhysd</code></a> in <a href="https://redirect.github.com/Swatinem/rust-cache/pull/175">Swatinem/rust-cache#175</a></li>
  <li>Only key by <code>Cargo.toml</code> and <code>Cargo.lock</code> files of workspace members by <a href="https://github.com/max-heller"><code>@max-heller</code></a> in <a href="https://redirect.github.com/Swatinem/rust-cache/pull/180">Swatinem/rust-cache#180</a></li>
  </ul>
  <h2>New Contributors</h2>
  <ul>
  <li><a href="https://github.com/rhysd"><code>@rhysd</code></a> made their first contribution in <a href="https://redirect.github.com/Swatinem/rust-cache/pull/175">Swatinem/rust-cache#175</a></li>
  <li><a href="https://github.com/max-heller"><code>@max-heller</code></a> made their first contribution in <a href="https://redirect.github.com/Swatinem/rust-cache/pull/180">Swatinem/rust-cache#180</a></li>
  </ul>
  <p><strong>Full Changelog</strong>: <a href="https://github.com/Swatinem/rust-cache/compare/v2.7.1...v2.7.2">https://github.com/Swatinem/rust-cache/compare/v2.7.1...v2.7.2</a></p>
  <h2>v2.7.0</h2>
  <h2>What's Changed</h2>
  <ul>
  <li>Fix save-if documentation in readme by <a href="https://github.com/rukai"><code>@rukai</code></a> in <a href="https://redirect.github.com/Swatinem/rust-cache/pull/166">Swatinem/rust-cache#166</a></li>
  <li>Support for <code>trybuild</code> and similar macro testing tools by <a href="https://github.com/neysofu"><code>@neysofu</code></a> in <a href="https://redirect.github.com/Swatinem/rust-cache/pull/168">Swatinem/rust-cache#168</a></li>
  </ul>
  <h2>New Contributors</h2>
  <ul>
  <li><a href="https://github.com/rukai"><code>@rukai</code></a> made their first contribution in <a href="https://redirect.github.com/Swatinem/rust-cache/pull/166">Swatinem/rust-cache#166</a></li>
  <li><a href="https://github.com/neysofu"><code>@neysofu</code></a> made their first contribution in <a href="https://redirect.github.com/Swatinem/rust-cache/pull/168">Swatinem/rust-cache#168</a></li>
  </ul>
  <p><strong>Full Changelog</strong>: <a href="https://github.com/Swatinem/rust-cache/compare/v2.6.2...v2.7.0">https://github.com/Swatinem/rust-cache/compare/v2.6.2...v2.7.0</a></p>
  <h2>v2.6.2</h2>
  <h2>What's Changed</h2>
  <ul>
  <li>dep: Use <code>smol-toml</code> instead of <code>toml</code> by <a href="https://github.com/NobodyXu"><code>@NobodyXu</code></a> in <a href="https://redirect.github.com/Swatinem/rust-cache/pull/164">Swatinem/rust-cache#164</a></li>
  </ul>
  <p><strong>Full Changelog</strong>: <a href="https://github.com/Swatinem/rust-cache/compare/v2...v2.6.2">https://github.com/Swatinem/rust-cache/compare/v2...v2.6.2</a></p>
  <h2>v2.6.1</h2>
  <ul>
  <li>Fix hash contributions of <code>Cargo.lock</code>/<code>Cargo.toml</code> files.</li>
  </ul>
  <!-- raw HTML omitted -->
  </blockquote>
  <p>... (truncated)</p>
  </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>
  <h1>Changelog</h1>
  <h2>2.7.3</h2>
  <ul>
  <li>Work around upstream problem that causes cache saving to hang for minutes.</li>
  </ul>
  <h2>2.7.2</h2>
  <ul>
  <li>Only key by <code>Cargo.toml</code> and <code>Cargo.lock</code> files of workspace members.</li>
  </ul>
  <h2>2.7.1</h2>
  <ul>
  <li>Update toml parser to fix parsing errors.</li>
  </ul>
  <h2>2.7.0</h2>
  <ul>
  <li>Properly cache <code>trybuild</code> tests.</li>
  </ul>
  <h2>2.6.2</h2>
  <ul>
  <li>Fix <code>toml</code> parsing.</li>
  </ul>
  <h2>2.6.1</h2>
  <ul>
  <li>Fix hash contributions of <code>Cargo.lock</code>/<code>Cargo.toml</code> files.</li>
  </ul>
  <h2>2.6.0</h2>
  <ul>
  <li>Add &quot;buildjet&quot; as a second <code>cache-provider</code> backend.</li>
  <li>Clean up sparse registry index.</li>
  <li>Do not clean up src of <code>-sys</code> crates.</li>
  <li>Remove <code>.cargo/credentials.toml</code> before saving.</li>
  </ul>
  <h2>2.5.1</h2>
  <ul>
  <li>Fix hash contribution of <code>Cargo.lock</code>.</li>
  </ul>
  <h2>2.5.0</h2>
  <ul>
  <li>feat: Rm workspace crates version before caching.</li>
  <li>feat: Add hash of <code>.cargo/config.toml</code> to key.</li>
  </ul>
  <h2>2.4.0</h2>
  <ul>
  <li>Fix cache key stability.</li>
  <li>Use 8 character hash components to reduce the key length, making it more readable.</li>
  </ul>
  <h2>2.3.0</h2>
  <ul>
  <li>Add <code>cache-all-crates</code> option, which enables caching of crates installed by workflows.</li>
  </ul>
  <!-- raw HTML omitted -->
  </blockquote>
  <p>... (truncated)</p>
  </details>
  <details>
  <summary>Commits</summary>
  <ul>
  <li><a href="https://github.com/Swatinem/rust-cache/commit/82a92a6e8fbeee089604da2575dc567ae9ddeaab"><code>82a92a6</code></a> 2.7.5</li>
  <li><a href="https://github.com/Swatinem/rust-cache/commit/598fe25fa107b2fd526fc6471f6e48de7cd12083"><code>598fe25</code></a> update dependencies, rebuild</li>
  <li><a href="https://github.com/Swatinem/rust-cache/commit/8f842c2d455cfe3d0d5a4b28f53f5389b51b71bf"><code>8f842c2</code></a> Support Cargo.lock format cargo-lock v4 (<a href="https://redirect.github.com/swatinem/rust-cache/issues/211">#211</a>)</li>
  <li><a href="https://github.com/Swatinem/rust-cache/commit/96a8d65dbafbc7d145a9b2b6c3b12ee335738cd2"><code>96a8d65</code></a> Only run macOsWorkaround() on macOS (<a href="https://redirect.github.com/swatinem/rust-cache/issues/206">#206</a>)</li>
  <li><a href="https://github.com/Swatinem/rust-cache/commit/9bdad043e88c75890e36ad3bbc8d27f0090dd609"><code>9bdad04</code></a> fix: usage of <code>deprecated</code> version of <code>node</code> (<a href="https://redirect.github.com/swatinem/rust-cache/issues/197">#197</a>)</li>
  <li><a href="https://github.com/Swatinem/rust-cache/commit/f7a52f691454d93c6ce0dff6666a5cb399b8d06e"><code>f7a52f6</code></a> &quot;add jsonpath test&quot;</li>
  <li><a href="https://github.com/Swatinem/rust-cache/commit/2bceda39122b2cc71e6e26ad729b92b44d101f4b"><code>2bceda3</code></a> &quot;update dependencies&quot;</li>
  <li><a href="https://github.com/Swatinem/rust-cache/commit/640a22190e7a783d4c409684cea558f081f92012"><code>640a221</code></a> Upgrade checkout action from version 3 to 4 (<a href="https://redirect.github.com/swatinem/rust-cache/issues/190">#190</a>)</li>
  <li><a href="https://github.com/Swatinem/rust-cache/commit/158274163087d4d4d49dfcc6a39806493e413240"><code>1582741</code></a> update dependencies</li>
  <li><a href="https://github.com/Swatinem/rust-cache/commit/23bce251a8cd2ffc3c1075eaa2367cf899916d84"><code>23bce25</code></a> 2.7.3</li>
  <li>Additional commits viewable in <a href="https://github.com/swatinem/rust-cache/compare/v2.2.1...v2.7.5">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=2.2.1&new-version=2.7.5)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

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

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

  ---

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

  You can trigger Dependabot actions by commenting on this PR:
  - `@dependabot rebase` will rebase this PR
  - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
  - `@dependabot merge` will merge this PR after your CI passes on it
  - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
  - `@dependabot cancel merge` will cancel a previously requested merge and block automerging
  - `@dependabot reopen` will reopen this PR if it is closed
  - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency
  - `@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>

ACKs for top commit:
  notmandatory:
    ACK 800f5a5c228f87d0dba13ab479531b1e8850fca4

Tree-SHA512: 93a768a7d1183c8dd8166a36891a2f1aa1bcc4db4ea9075d58f3af07c56733205ef0688cd5337a892f16a821877d8ba3ddcf51acfd005986800d93730889ba27

13 months agochore(deps): bump Swatinem/rust-cache from 2.2.1 to 2.7.5 github/dependabot/github_actions/Swatinem/rust-cache-2.7.5
dependabot[bot] [Fri, 1 Nov 2024 23:11:52 +0000 (23:11 +0000)]
chore(deps): bump Swatinem/rust-cache from 2.2.1 to 2.7.5

Bumps [Swatinem/rust-cache](https://github.com/swatinem/rust-cache) from 2.2.1 to 2.7.5.
- [Release notes](https://github.com/swatinem/rust-cache/releases)
- [Changelog](https://github.com/Swatinem/rust-cache/blob/master/CHANGELOG.md)
- [Commits](https://github.com/swatinem/rust-cache/compare/v2.2.1...v2.7.5)

---
updated-dependencies:
- dependency-name: Swatinem/rust-cache
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
13 months agoMerge bitcoindevkit/bdk#1661: chore(file_store): Document that it's a dev database
valued mammal [Thu, 31 Oct 2024 16:39:49 +0000 (12:39 -0400)]
Merge bitcoindevkit/bdk#1661: chore(file_store): Document that it's a dev database

4b5bd0b14bfba95f0ca4e2c612d6e24832ba5b73 chore(file_store): Document that it's a dev database (LLFourn)

Pull request description:

  Document `bdk_file_store` is a development/testing database

ACKs for top commit:
  LagginTimes:
    ACK 4b5bd0b14bfba95f0ca4e2c612d6e24832ba5b73
  ValuedMammal:
    ACK 4b5bd0b14bfba95f0ca4e2c612d6e24832ba5b73
  oleonardolima:
    ACK 4b5bd0b14bfba95f0ca4e2c612d6e24832ba5b73

Tree-SHA512: a374753fe3d367870afc7b4cb301ef7fd09da1babefb0601191b266123358c2ffd247e4c6c5fb84eaa0e3b2821f8c0b1337cde6d63bbc2dce3fb7d5ff0286cef

13 months agodocs: fix incorrect links to wallet examples
Torkel Rogstad [Thu, 31 Oct 2024 14:13:23 +0000 (15:13 +0100)]
docs: fix incorrect links to wallet examples

13 months agoMerge bitcoindevkit/bdk#1652: refactor(chain)!: remove `inner` method from KeychainTx...
Steve Myers [Wed, 30 Oct 2024 05:20:21 +0000 (00:20 -0500)]
Merge bitcoindevkit/bdk#1652: refactor(chain)!: remove `inner` method from KeychainTxOutIndex

8494c12ed49856b069375bdb036e6036c77f9019 refactor(chain)!: remove `inner` method from KeychainTxOutIndex (valued mammal)

Pull request description:

  Fix #1353 by removing the `inner` method from `keychain_txout` module. See commit message for details.

  ### Changelog notice

  - `bdk_chain`: Removed method `KeychainTxOutIndex::inner`

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing
  * [x] This pull request breaks the existing API
  * [x] I'm linking the issue being fixed by this PR

ACKs for top commit:
  oleonardolima:
    ACK 8494c12ed49856b069375bdb036e6036c77f9019
  notmandatory:
    ACK 8494c12ed49856b069375bdb036e6036c77f9019

Tree-SHA512: f0f6864faa16ffcd49f63c7a38cba11f28ad8f7c7aecc8e7538b7d5862a51d43ee75bea81561236ba7876b5e3d6357a021d17212295c5c9ff9a5525aea586953

13 months agoMerge bitcoindevkit/bdk#1657: chore(deps): bump tibdex/github-app-token from 1 to 2
Steve Myers [Tue, 29 Oct 2024 21:13:29 +0000 (16:13 -0500)]
Merge bitcoindevkit/bdk#1657: chore(deps): bump tibdex/github-app-token from 1 to 2

96c65761e2c0846bbf6788f859454652999f1b2c ci: fix dependabot clippy_check error (Steve Myers)
80b4ecac414a9b248ac5493ef76b7b4a3b0ff8f3 chore(deps): bump tibdex/github-app-token from 1 to 2 (dependabot[bot])

Pull request description:

  Bumps [tibdex/github-app-token](https://github.com/tibdex/github-app-token) from 1 to 2.
  <details>
  <summary>Release notes</summary>
  <p><em>Sourced from <a href="https://github.com/tibdex/github-app-token/releases">tibdex/github-app-token's releases</a>.</em></p>
  <blockquote>
  <h2>v2.0.0</h2>
  <ul>
  <li><strong>BREAKING</strong>: replaces the <code>installation_id</code> and <code>repository</code> inputs with <code>installation_retrieval_mode</code> and <code>installation_retrieval_payload</code> to also support organization and user installation.</li>
  <li>switches to <code>node20</code>.</li>
  <li>adds a <code>repositories</code> input to scope the created token to a subset of repositories.</li>
  <li>revokes the created token at the end of the job with a <a href="https://docs.github.com/en/actions/creating-actions/metadata-syntax-for-github-actions#runspost"><code>post</code> script</a>.</li>
  </ul>
  <h2>v1.9.0</h2>
  <p>No release notes provided.</p>
  <h2>v1.8.2</h2>
  <p>No release notes provided.</p>
  <h2>v1.8.1</h2>
  <p>No release notes provided.</p>
  <h2>v1.8.0</h2>
  <p>No release notes provided.</p>
  <h2>v1.7.0</h2>
  <p>No release notes provided.</p>
  <h2>v1.6.0</h2>
  <p>No release notes provided.</p>
  <h2>v1.5.2</h2>
  <p>No release notes provided.</p>
  <h2>v1.5.1</h2>
  <p>No release notes provided.</p>
  <h2>v1.5.0</h2>
  <p>No release notes provided.</p>
  <h2>v1.4.0</h2>
  <p>No release notes provided.</p>
  <h2>v1.3.0</h2>
  <p>No release notes provided.</p>
  <h2>v1.2.0</h2>
  <p>No release notes provided.</p>
  <h2>v1.1.1</h2>
  <p>No release notes provided.</p>
  <h2>v1.1.0</h2>
  <p>No release notes provided.</p>
  <h2>v1.0.2</h2>
  <p>No release notes provided.</p>
  </blockquote>
  </details>
  <details>
  <summary>Commits</summary>
  <ul>
  <li><a href="https://github.com/tibdex/github-app-token/commit/3beb63f4bd073e61482598c45c71c1019b59b73a"><code>3beb63f</code></a> release v2.1.0</li>
  <li><a href="https://github.com/tibdex/github-app-token/commit/3eb77c7243b85c65e84acfa93fdbac02fb6bd532"><code>3eb77c7</code></a> Add option to not revoke token (<a href="https://redirect.github.com/tibdex/github-app-token/issues/95">#95</a>)</li>
  <li><a href="https://github.com/tibdex/github-app-token/commit/95717386c657bc772ba69db6fafa0e08baf5372e"><code>9571738</code></a> Add support for organization and user installation retrieval and repository s...</li>
  <li>See full diff in <a href="https://github.com/tibdex/github-app-token/compare/v1...v2">compare view</a></li>
  </ul>
  </details>
  <br />

  [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=tibdex/github-app-token&package-manager=github_actions&previous-version=1&new-version=2)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

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

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

  ---

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

  You can trigger Dependabot actions by commenting on this PR:
  - `@dependabot rebase` will rebase this PR
  - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
  - `@dependabot merge` will merge this PR after your CI passes on it
  - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
  - `@dependabot cancel merge` will cancel a previously requested merge and block automerging
  - `@dependabot reopen` will reopen this PR if it is closed
  - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency
  - `@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>

ACKs for top commit:
  notmandatory:
    ACK 96c65761e2c0846bbf6788f859454652999f1b2c

Tree-SHA512: bdc51d7ed66096737c28025609ad431a315be4a9bf6234365a00a3b2cefd71cdc445ae3c24d7f0353d2e2de5c7cd735b096c82531fcdabd3f01a6d52ce2fe766

13 months agoci: fix dependabot clippy_check error github/dependabot/github_actions/tibdex/github-app-token-2
Steve Myers [Tue, 29 Oct 2024 20:41:53 +0000 (15:41 -0500)]
ci: fix dependabot clippy_check error

13 months agochore(deps): bump tibdex/github-app-token from 1 to 2
dependabot[bot] [Mon, 21 Oct 2024 05:50:32 +0000 (05:50 +0000)]
chore(deps): bump tibdex/github-app-token from 1 to 2

Bumps [tibdex/github-app-token](https://github.com/tibdex/github-app-token) from 1 to 2.
- [Release notes](https://github.com/tibdex/github-app-token/releases)
- [Commits](https://github.com/tibdex/github-app-token/compare/v1...v2)

---
updated-dependencies:
- dependency-name: tibdex/github-app-token
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
13 months agoMerge bitcoindevkit/bdk#1662: fix(wallet): fix building change signers in `load_with_...
志宇 [Tue, 29 Oct 2024 11:46:35 +0000 (22:46 +1100)]
Merge bitcoindevkit/bdk#1662: fix(wallet): fix building change signers in `load_with_params`

b6b767f3fc12062d6787eec8b3e1021458283985 test(wallet): check keymaps can be set when loading wallet (valued mammal)
517fb53760626ada00551716fd35dbd84ed6d48e fix(wallet): fix building change signers in `load_with_params` (valued mammal)

Pull request description:

  This fixes an issue that prevented change signers from being built when using the `keymap` method on `LoadParams`. Now we always build a `SignersContainer` with the internal keymap whenever a change descriptor is loaded. Note, the signer may still be "empty" if neither `keymap` or `extract_keys` is used.

  ### Notes to the reviewers

  Building a `SignersContainer` now happens outside of the [match statement](https://github.com/bitcoindevkit/bdk/blob/b6b767f3fc12062d6787eec8b3e1021458283985/crates/wallet/src/wallet/mod.rs#L557) in `load_with_params` which simplifies the logic such that we can interpret this area of code as "initialize a value for `change_descriptor` and optionally extend the internal keymap, returning a `LoadMismatch` error if the changeset doesn't match the expected params."

  ### Changelog notice

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

  #### Bugfixes:

  * [x] I've added tests to reproduce the issue which are now passing

ACKs for top commit:
  evanlinjin:
    ACK b6b767f3fc12062d6787eec8b3e1021458283985

Tree-SHA512: fef2de691191e84f3e7cbe50c080cafb3b297d41e9bd493b97e45dfc1b3d77f4985c09b8fc3b398d54e22a43cf90501f6df70f8738e9b31a663efc0886f795e3

13 months agotest(wallet): check keymaps can be set when loading wallet
valued mammal [Tue, 22 Oct 2024 14:29:07 +0000 (10:29 -0400)]
test(wallet): check keymaps can be set when loading wallet

13 months agofix(wallet): fix building change signers in `load_with_params`
valued mammal [Tue, 22 Oct 2024 13:12:32 +0000 (09:12 -0400)]
fix(wallet): fix building change signers in `load_with_params`

This fixes an issue that prevented change signers from being built
when using the `keymap` method on `LoadParams`. Now we always
build a `SignersContainer` with the internal keymap whenever a
change descriptor is loaded, although the signer may still be
empty if neither `keymap` nor `extract_keys` is used.

13 months agochore(file_store): Document that it's a dev database
LLFourn [Sun, 27 Oct 2024 23:57:29 +0000 (10:57 +1100)]
chore(file_store): Document that it's a dev database

13 months agoMerge bitcoindevkit/bdk#1643: feat(chain,wallet)!: rm `ConfirmationTime`
valued mammal [Thu, 24 Oct 2024 01:59:34 +0000 (21:59 -0400)]
Merge bitcoindevkit/bdk#1643: feat(chain,wallet)!: rm `ConfirmationTime`

a3d4eef77d427b290e1d0041d3c760b8fe29f6a2 feat(chain,wallet)!: rm `ConfirmationTime` (志宇)

Pull request description:

  ### Description

  This PR removes `ConfirmationTime`, and favors `ChainPosition<ConfirmationBlockTime>` instead. The only difference between these two structures is that `ChainPosition<ConfirmationBlockTime>` contains an additional `BlockHash`. Additionally, `ConfirmationTime` was not used in many places. It was mainly for displaying information in `bdk_wallet::Wallet`.

  We also impl `serde::Deserialize` and `serde::Serialize` for `ChainPosition`.

  ### Notes to the reviewers

  ### Changelog notice

  * Remove `bdk_chain::ConfirmationTime`. Use `ChainPosition<ConfirmationBlockTime>` in place.

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

ACKs for top commit:
  LagginTimes:
    ACK a3d4eef77d427b290e1d0041d3c760b8fe29f6a2
  oleonardolima:
    ACK a3d4eef77d427b290e1d0041d3c760b8fe29f6a2
  ValuedMammal:
    ACK a3d4eef77d427b290e1d0041d3c760b8fe29f6a2

Tree-SHA512: d94db70885e6987774da586b92ee826098a0da4ae808ff9b23632bd68bbb3d6babbba1aac9d79b78bcf4affa48404f5cca3c7c00ad2db02e1f47f78e094a5f76

14 months agorefactor(chain)!: remove `inner` method from KeychainTxOutIndex
valued mammal [Wed, 16 Oct 2024 16:52:03 +0000 (12:52 -0400)]
refactor(chain)!: remove `inner` method from KeychainTxOutIndex

It's desirable to have the inner SPK index internal to the
`keychain_txout` module, which aims to provide views into
the set of revealed SPKs for a given keychain.

The inner index also functions as a cache of unrevealed SPKs,
i.e. the lookahead. We test the functionality of the lookahead
by checking the value returned from
`KeychainTxOutIndex::spk_at_index` matches the SPK derived by
the descriptor at that index for indices ranging from the
last revealed to the expected last stored.

14 months agoMerge bitcoindevkit/bdk#1646: ci: update audit.yml workflow to use actions-rust-lang...
Steve Myers [Thu, 17 Oct 2024 16:51:10 +0000 (11:51 -0500)]
Merge bitcoindevkit/bdk#1646: ci: update audit.yml workflow to use actions-rust-lang/audit

66cf476014e5869c27d54ebf12e554f3ba925283 ci: update audit.yml workflow to use actions-rust-lang/audit (Steve Myers)

Pull request description:

  ### Description

  Update `audit.yml` workflow to use `actions-rust-lang/audit`.

  ### Notes to the reviewers

  The old [`actions-rs/audit-check`](https://github.com/actions-rs/audit-check) is no longer maintained.

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

Top commit has no ACKs.

Tree-SHA512: f876d6289ad1a3c87cd1820d2efc931f1284ac4ad7fc3e0400f5fcf7274c41d27c1d3f3fe173e258b7115a724bf424e0b9240358fa79f84cef5144256628951c

14 months agoci: update audit.yml workflow to use actions-rust-lang/audit
Steve Myers [Mon, 14 Oct 2024 20:51:52 +0000 (15:51 -0500)]
ci: update audit.yml workflow to use actions-rust-lang/audit

The old actions-rs/audit-check is no longer maintained.

14 months agoMerge bitcoindevkit/bdk#1211: chore(deps): bump actions/checkout from 1 to 4
Steve Myers [Tue, 15 Oct 2024 01:08:26 +0000 (20:08 -0500)]
Merge bitcoindevkit/bdk#1211: chore(deps): bump actions/checkout from 1 to 4

8615ca07a9d541f21b63e7569099194ea7563435 chore(deps): bump actions/checkout from 1 to 4 (dependabot[bot])

Pull request description:

  Bumps [actions/checkout](https://github.com/actions/checkout) from 1 to 4.
  <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>v4.0.0</h2>
  <h2>What's Changed</h2>
  <ul>
  <li>Update default runtime to node20 by <a href="https://github.com/takost"><code>@takost</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/1436">actions/checkout#1436</a></li>
  <li>Support fetching without the --progress option by <a href="https://github.com/simonbaird"><code>@simonbaird</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/1067">actions/checkout#1067</a></li>
  <li>Release 4.0.0 by <a href="https://github.com/takost"><code>@takost</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/1447">actions/checkout#1447</a></li>
  </ul>
  <h2>New Contributors</h2>
  <ul>
  <li><a href="https://github.com/takost"><code>@takost</code></a> made their first contribution in <a href="https://redirect.github.com/actions/checkout/pull/1436">actions/checkout#1436</a></li>
  <li><a href="https://github.com/simonbaird"><code>@simonbaird</code></a> made their first contribution in <a href="https://redirect.github.com/actions/checkout/pull/1067">actions/checkout#1067</a></li>
  </ul>
  <p><strong>Full Changelog</strong>: <a href="https://github.com/actions/checkout/compare/v3...v4.0.0">https://github.com/actions/checkout/compare/v3...v4.0.0</a></p>
  <h2>v3.6.0</h2>
  <h2>What's Changed</h2>
  <ul>
  <li>Mark test scripts with Bash'isms to be run via Bash by <a href="https://github.com/dscho"><code>@dscho</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/1377">actions/checkout#1377</a></li>
  <li>Add option to fetch tags even if fetch-depth &gt; 0 by <a href="https://github.com/RobertWieczoreck"><code>@RobertWieczoreck</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/579">actions/checkout#579</a></li>
  <li>Release 3.6.0 by <a href="https://github.com/luketomlinson"><code>@luketomlinson</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/1437">actions/checkout#1437</a></li>
  </ul>
  <h2>New Contributors</h2>
  <ul>
  <li><a href="https://github.com/RobertWieczoreck"><code>@RobertWieczoreck</code></a> made their first contribution in <a href="https://redirect.github.com/actions/checkout/pull/579">actions/checkout#579</a></li>
  <li><a href="https://github.com/luketomlinson"><code>@luketomlinson</code></a> made their first contribution in <a href="https://redirect.github.com/actions/checkout/pull/1437">actions/checkout#1437</a></li>
  </ul>
  <p><strong>Full Changelog</strong>: <a href="https://github.com/actions/checkout/compare/v3.5.3...v3.6.0">https://github.com/actions/checkout/compare/v3.5.3...v3.6.0</a></p>
  <h2>v3.5.3</h2>
  <h2>What's Changed</h2>
  <ul>
  <li>Fix: Checkout Issue in self hosted runner due to faulty submodule check-ins by <a href="https://github.com/megamanics"><code>@megamanics</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/1196">actions/checkout#1196</a></li>
  <li>Fix typos found by codespell by <a href="https://github.com/DimitriPapadopoulos"><code>@DimitriPapadopoulos</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/1287">actions/checkout#1287</a></li>
  <li>Add support for sparse checkouts by <a href="https://github.com/dscho"><code>@dscho</code></a> and <a href="https://github.com/dfdez"><code>@dfdez</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/1369">actions/checkout#1369</a></li>
  <li>Release v3.5.3 by <a href="https://github.com/TingluoHuang"><code>@TingluoHuang</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/1376">actions/checkout#1376</a></li>
  </ul>
  <h2>New Contributors</h2>
  <ul>
  <li><a href="https://github.com/megamanics"><code>@megamanics</code></a> made their first contribution in <a href="https://redirect.github.com/actions/checkout/pull/1196">actions/checkout#1196</a></li>
  <li><a href="https://github.com/DimitriPapadopoulos"><code>@DimitriPapadopoulos</code></a> made their first contribution in <a href="https://redirect.github.com/actions/checkout/pull/1287">actions/checkout#1287</a></li>
  <li><a href="https://github.com/dfdez"><code>@dfdez</code></a> made their first contribution in <a href="https://redirect.github.com/actions/checkout/pull/1369">actions/checkout#1369</a></li>
  </ul>
  <p><strong>Full Changelog</strong>: <a href="https://github.com/actions/checkout/compare/v3...v3.5.3">https://github.com/actions/checkout/compare/v3...v3.5.3</a></p>
  <h2>v3.5.2</h2>
  <h2>What's Changed</h2>
  <ul>
  <li>Fix: Use correct API url / endpoint in GHES by <a href="https://github.com/fhammerl"><code>@fhammerl</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/1289">actions/checkout#1289</a> based on <a href="https://redirect.github.com/actions/checkout/issues/1286">#1286</a> by <a href="https://github.com/1newsr"><code>@1newsr</code></a></li>
  </ul>
  <p><strong>Full Changelog</strong>: <a href="https://github.com/actions/checkout/compare/v3.5.1...v3.5.2">https://github.com/actions/checkout/compare/v3.5.1...v3.5.2</a></p>
  <h2>v3.5.1</h2>
  <h2>What's Changed</h2>
  <ul>
  <li>Improve checkout performance on Windows runners by upgrading <code>@actions/github</code> dependency by <a href="https://github.com/BrettDong"><code>@BrettDong</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/1246">actions/checkout#1246</a></li>
  </ul>
  <h2>New Contributors</h2>
  <ul>
  <li><a href="https://github.com/BrettDong"><code>@BrettDong</code></a> made their first contribution in <a href="https://redirect.github.com/actions/checkout/pull/1246">actions/checkout#1246</a></li>
  </ul>
  <!-- raw HTML omitted -->
  </blockquote>
  <p>... (truncated)</p>
  </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>
  <h1>Changelog</h1>
  <h2>v4.1.0</h2>
  <ul>
  <li><a href="https://redirect.github.com/actions/checkout/pull/1396">Add support for partial checkout filters</a></li>
  </ul>
  <h2>v4.0.0</h2>
  <ul>
  <li><a href="https://redirect.github.com/actions/checkout/pull/1067">Support fetching without the --progress option</a></li>
  <li><a href="https://redirect.github.com/actions/checkout/pull/1436">Update to node20</a></li>
  </ul>
  <h2>v3.6.0</h2>
  <ul>
  <li><a href="https://redirect.github.com/actions/checkout/pull/1377">Fix: Mark test scripts with Bash'isms to be run via Bash</a></li>
  <li><a href="https://redirect.github.com/actions/checkout/pull/579">Add option to fetch tags even if fetch-depth &gt; 0</a></li>
  </ul>
  <h2>v3.5.3</h2>
  <ul>
  <li><a href="https://redirect.github.com/actions/checkout/pull/1196">Fix: Checkout fail in self-hosted runners when faulty submodule are checked-in</a></li>
  <li><a href="https://redirect.github.com/actions/checkout/pull/1287">Fix typos found by codespell</a></li>
  <li><a href="https://redirect.github.com/actions/checkout/pull/1369">Add support for sparse checkouts</a></li>
  </ul>
  <h2>v3.5.2</h2>
  <ul>
  <li><a href="https://redirect.github.com/actions/checkout/pull/1289">Fix api endpoint for GHES</a></li>
  </ul>
  <h2>v3.5.1</h2>
  <ul>
  <li><a href="https://redirect.github.com/actions/checkout/pull/1246">Fix slow checkout on Windows</a></li>
  </ul>
  <h2>v3.5.0</h2>
  <ul>
  <li><a href="https://redirect.github.com/actions/checkout/pull/1237">Add new public key for known_hosts</a></li>
  </ul>
  <h2>v3.4.0</h2>
  <ul>
  <li><a href="https://redirect.github.com/actions/checkout/pull/1209">Upgrade codeql actions to v2</a></li>
  <li><a href="https://redirect.github.com/actions/checkout/pull/1210">Upgrade dependencies</a></li>
  <li><a href="https://redirect.github.com/actions/checkout/pull/1225">Upgrade <code>@actions/io</code></a></li>
  </ul>
  <h2>v3.3.0</h2>
  <ul>
  <li><a href="https://redirect.github.com/actions/checkout/pull/1045">Implement branch list using callbacks from exec function</a></li>
  <li><a href="https://redirect.github.com/actions/checkout/pull/1050">Add in explicit reference to private checkout options</a></li>
  <li>[Fix comment typos (that got added in <a href="https://redirect.github.com/actions/checkout/issues/770">#770</a>)](<a href="https://redirect.github.com/actions/checkout/pull/1057">actions/checkout#1057</a>)</li>
  </ul>
  <h2>v3.2.0</h2>
  <ul>
  <li><a href="https://redirect.github.com/actions/checkout/pull/942">Add GitHub Action to perform release</a></li>
  <li><a href="https://redirect.github.com/actions/checkout/pull/967">Fix status badge</a></li>
  <li><a href="https://redirect.github.com/actions/checkout/pull/1002">Replace datadog/squid with ubuntu/squid Docker image</a></li>
  <li><a href="https://redirect.github.com/actions/checkout/pull/964">Wrap pipeline commands for submoduleForeach in quotes</a></li>
  <li><a href="https://redirect.github.com/actions/checkout/pull/1029">Update <code>@actions/io</code> to 1.1.2</a></li>
  <li><a href="https://redirect.github.com/actions/checkout/pull/1039">Upgrading version to 3.2.0</a></li>
  </ul>
  <h2>v3.1.0</h2>
  <ul>
  <li><a href="https://redirect.github.com/actions/checkout/pull/939">Use <code>@actions/core</code> <code>saveState</code> and <code>getState</code></a></li>
  <li><a href="https://redirect.github.com/actions/checkout/pull/922">Add <code>github-server-url</code> input</a></li>
  </ul>
  <h2>v3.0.2</h2>
  <!-- raw HTML omitted -->
  </blockquote>
  <p>... (truncated)</p>
  </details>
  <details>
  <summary>Commits</summary>
  <ul>
  <li><a href="https://github.com/actions/checkout/commit/b4ffde65f46336ab88eb53be808477a3936bae11"><code>b4ffde6</code></a> Link to release page from what's new section (<a href="https://redirect.github.com/actions/checkout/issues/1514">#1514</a>)</li>
  <li><a href="https://github.com/actions/checkout/commit/8530928916aaef40f59e6f221989ccb31f5759e7"><code>8530928</code></a> Correct link to GitHub Docs (<a href="https://redirect.github.com/actions/checkout/issues/1511">#1511</a>)</li>
  <li><a href="https://github.com/actions/checkout/commit/7cdaf2fbc075e6f3b9ca94cfd6cec5adc8a75622"><code>7cdaf2f</code></a> Update CODEOWNERS to Launch team (<a href="https://redirect.github.com/actions/checkout/issues/1510">#1510</a>)</li>
  <li><a href="https://github.com/actions/checkout/commit/8ade135a41bc03ea155e62e844d188df1ea18608"><code>8ade135</code></a> Prepare 4.1.0 release (<a href="https://redirect.github.com/actions/checkout/issues/1496">#1496</a>)</li>
  <li><a href="https://github.com/actions/checkout/commit/c533a0a4cfc4962971818edcfac47a2899e69799"><code>c533a0a</code></a> Add support for partial checkout filters (<a href="https://redirect.github.com/actions/checkout/issues/1396">#1396</a>)</li>
  <li><a href="https://github.com/actions/checkout/commit/72f2cec99f417b1a1c5e2e88945068983b7965f9"><code>72f2cec</code></a> Update README.md for V4 (<a href="https://redirect.github.com/actions/checkout/issues/1452">#1452</a>)</li>
  <li><a href="https://github.com/actions/checkout/commit/3df4ab11eba7bda6032a0b82a6bb43b11571feac"><code>3df4ab1</code></a> Release 4.0.0 (<a href="https://redirect.github.com/actions/checkout/issues/1447">#1447</a>)</li>
  <li><a href="https://github.com/actions/checkout/commit/8b5e8b768746b50394015010d25e690bfab9dfbc"><code>8b5e8b7</code></a> Support fetching without the --progress option (<a href="https://redirect.github.com/actions/checkout/issues/1067">#1067</a>)</li>
  <li><a href="https://github.com/actions/checkout/commit/97a652b80035363df47baee5031ec8670b8878ac"><code>97a652b</code></a> Update default runtime to node20 (<a href="https://redirect.github.com/actions/checkout/issues/1436">#1436</a>)</li>
  <li><a href="https://github.com/actions/checkout/commit/f43a0e5ff2bd294095638e18286ca9a3d1956744"><code>f43a0e5</code></a> Release 3.6.0 (<a href="https://redirect.github.com/actions/checkout/issues/1437">#1437</a>)</li>
  <li>Additional commits viewable in <a href="https://github.com/actions/checkout/compare/v1...v4">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=1&new-version=4)](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 show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency
  - `@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>

  > **Note**
  > Automatic rebases have been disabled on this pull request as it has been open for over 30 days.

ACKs for top commit:
  notmandatory:
    ACK 8615ca07a9d541f21b63e7569099194ea7563435

Tree-SHA512: 25f3c3be0948f16cd532002f6b2d50c014dcf64a5d262ab86bdd87da92ad6bd5895d7a67860809c26e114d409ba9e0b821f494d1c1cfb8e882036363d76e392c

14 months agochore(deps): bump actions/checkout from 1 to 4 github/dependabot/github_actions/actions/checkout-4
dependabot[bot] [Mon, 14 Oct 2024 20:46:07 +0000 (20:46 +0000)]
chore(deps): bump actions/checkout from 1 to 4

Bumps [actions/checkout](https://github.com/actions/checkout) from 1 to 4.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v1...v4)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
14 months agoMerge bitcoindevkit/bdk#1612: Refactor: Move transaction testing utilities from ...
Steve Myers [Mon, 14 Oct 2024 18:59:06 +0000 (13:59 -0500)]
Merge bitcoindevkit/bdk#1612: Refactor: Move transaction testing utilities from `crates/chain/tests/common` to `testenv` crate

88a8403707038264251b3e7fa18b8f21af8646ff refactor(test): move tx test utils to testenv (Vihiga Tyonum)

Pull request description:

  <!-- You can erase any parts of this template not applicable to your Pull Request. -->

  ### Description

  This change moves all transaction testing utilities (macros and functions) from `crates/chain/tests/common` to `crates/testenv/tx_utils` to minimize duplication.

  Closes #1602

  <!-- Describe the purpose of this PR, what's being adding and/or fixed -->

  ### Notes to the reviewers

  <!-- In this section you can include notes directed to the reviewers, like explaining why some parts
  of the PR were done in a specific way -->

  ### Changelog notice

  <!-- Notice the release manager should include in the release tag message changelog -->
  <!-- See https://keepachangelog.com/en/1.0.0/ for examples -->

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

  #### New Features:

  * [ ] I've added tests for the new feature
  * [ ] I've added docs for the new feature

  #### Bugfixes:

  * [ ] This pull request breaks the existing API
  * [ ] I've added tests to reproduce the issue which are now passing
  * [x] I'm linking the issue being fixed by this PR

ACKs for top commit:
  ValuedMammal:
    ACK 88a8403707038264251b3e7fa18b8f21af8646ff
  notmandatory:
    ACK 88a8403707038264251b3e7fa18b8f21af8646ff

Tree-SHA512: aa85c6683d44463e8858f18840fd628d98f54757edff85fe0489c7954fc56998456ce8069e328eff46e907235d092059975c10e420fe7dfe83e5cdd9b63fc8ed

14 months agofeat(chain,wallet)!: rm `ConfirmationTime`
志宇 [Tue, 8 Oct 2024 09:15:55 +0000 (09:15 +0000)]
feat(chain,wallet)!: rm `ConfirmationTime`

We rm `ConfirmationTime` because it is essentially the same thing as
`ChainPosition<ConfirmationBlockTime>` without the block hash.

We also impl `serde::Deserialize` and `serde::Serialize` for
`ChainPosition`.

14 months agorefactor(test): move tx test utils to testenv
Vihiga Tyonum [Sat, 14 Sep 2024 20:52:50 +0000 (21:52 +0100)]
refactor(test): move tx test utils to testenv

- add `utils` mod to testenv crate to keep all
utilities moved from `crates/chain/test/common`
- replace all test tx macros in `chain` crate with
import from `testenv` crate
    - tests/test_indexed_tx_graph
    - tests/test_keychain_txout_index
    - tests/test_local_chain
    - tests/test_tx_graph
    - tests/test_tx_graph_conflicts
- deleted all moved macros and functions in
`crates/chain/test/common/mod`
- replace `bitcoin` external crate with
`bd_chain::bitcoin`
- move `DESCRIPTORS` sample array to `utils` for
other crates to use
- rename h! macro to hash! for clarity
- rename localchain! macro parameter from
'block_hash' to 'hash'

[Ticket: #1602]

14 months agoMerge bitcoindevkit/bdk#1639: Bump bdk_wallet version to 1.0.0-beta.5 v1.0.0-beta.5
valued mammal [Wed, 2 Oct 2024 16:22:12 +0000 (12:22 -0400)]
Merge bitcoindevkit/bdk#1639: Bump bdk_wallet version to 1.0.0-beta.5

b5e8e6b1ceed316a84bcc2660442cf0ba7bac7eb Bump bdk_wallet version to 1.0.0-beta.5 (valued mammal)

Pull request description:

  Bump bdk_wallet version to 1.0.0-beta.5

  bdk_core to 0.3.0
  bdk_chain to 0.20.0
  bdk_bitcoind_rpc to 0.16.0
  bdk_electrum to 0.19.0
  bdk_esplora to 0.19.0
  bdk_file_store to 0.17.0
  bdk_testenv to 0.10.0

ACKs for top commit:
  notmandatory:
    ACK b5e8e6b1ceed316a84bcc2660442cf0ba7bac7eb

Tree-SHA512: e5e9309a2bfd3f893ec8794ac316b3f2be0c333d8971883619a873a2663d451b267090e36a9d2eb44ce4a3cc4eabf47847f8335fb183a6c72475dcb6c57742a5

14 months agoBump bdk_wallet version to 1.0.0-beta.5
valued mammal [Wed, 2 Oct 2024 14:25:15 +0000 (10:25 -0400)]
Bump bdk_wallet version to 1.0.0-beta.5

bdk_core to 0.3.0
bdk_chain to 0.20.0
bdk_bitcoind_rpc to 0.16.0
bdk_electrum to 0.19.0
bdk_esplora to 0.19.0
bdk_file_store to 0.17.0
bdk_testenv to 0.10.0

14 months agoMerge bitcoindevkit/bdk#1620: feat(bdk_electrum): add `use-openssl` as a feature
Steve Myers [Wed, 2 Oct 2024 02:05:16 +0000 (21:05 -0500)]
Merge bitcoindevkit/bdk#1620: feat(bdk_electrum): add `use-openssl` as a feature

f602d1bfe24783449a88d5e82ab29f305cd2a02c feat(bdk_electrum): add `use-openssl` as a feature (Leonardo Lima)

Pull request description:

  partially addresses #1598

  <!-- You can erase any parts of this template not applicable to your Pull Request. -->

  ### Description

  It's a simple PR to expose the `use-openssl` from `electrum-client` to `bdk_electrum`. It partially addresses #1598, allowing the user to use `openssl` as an alternative to `rustls`, as there are some problems with it when handling some types of TLS certificates.

  Do we need to add some sort of `bdk_electrum` tests using the new exposed `use-openssl` feature ?

  <!-- Describe the purpose of this PR, what's being adding and/or fixed -->

  ### Notes to the reviewers

  <!-- In this section you can include notes directed to the reviewers, like explaining why some parts
  of the PR were done in a specific way -->

  ### Changelog notice

  - Adds `use-openssl` as feature to `bdk_electrum`, exposing `electrum-client` `use-openssl` feature.

  <!-- Notice the release manager should include in the release tag message changelog -->
  <!-- See https://keepachangelog.com/en/1.0.0/ for examples -->

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

  #### New Features:

  * [ ] I've added tests for the new feature
  * [ ] I've added docs for the new feature

  #### Bugfixes:

  * [ ] This pull request breaks the existing API
  * [ ] I've added tests to reproduce the issue which are now passing
  * [ ] I'm linking the issue being fixed by this PR

Top commit has no ACKs.

Tree-SHA512: 86e0fdeaa0b6a48e0c7ddde6e3890ce86510b86ad727adf05cde5e8c311a8c6b7614ae57bae0cff9e7b8443478a324e5ce9e5180023d501453a5c1e9e45920e1

14 months agofeat(bdk_electrum): add `use-openssl` as a feature
Leonardo Lima [Fri, 20 Sep 2024 02:06:28 +0000 (23:06 -0300)]
feat(bdk_electrum): add `use-openssl` as a feature

14 months agoMerge bitcoindevkit/bdk#1636: ci: fix build-test job with --no-default-features,...
valued mammal [Tue, 1 Oct 2024 23:17:27 +0000 (19:17 -0400)]
Merge bitcoindevkit/bdk#1636: ci: fix build-test job with --no-default-features, add miniscript/no-std

0e8082437401eccdef30737e739381d295530547 ci: fix build-test job with --no-default-features, add miniscript/no-std (Steve Myers)

Pull request description:

  ### Description

  Fixes the CI `build-test` job with `--no-default-features` by also adding `--features miniscript/no-std`.

  Until `rust-miniscript` removes the `no-std` feature we need to enable it when `--no-default-features` is used to build `bdk_wallet` or the whole workspace. See also the `check-no-std` job which does the same plus enables the `bdk_chain/hashbrown` feature which is also needed to build `bdk_wallet` with `--no-default-features` but is already enabled when building the whole workspace.

  ### Notes to the reviewers

  I think we didn't catch this on #1625 because the CI job names changed and I didn't update the branch merge requirements. Another possibility is it was passing because of cached build artifacts which I removed last night when I was trying to troubleshoot something else. I've updated the required CI jobs that need to pass before allowing a PR to be merged to `master` to include the ones with `--no-default-features --features bdk_chain/hashbrown` in the name.

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk/blob/master/CONTRIBUTING.md)
  * [ ] I ran `cargo fmt` and `cargo clippy` before committing

ACKs for top commit:
  ValuedMammal:
    ACK 0e8082437401eccdef30737e739381d295530547

Tree-SHA512: 5da486b7fd988575b6f9c06eb108a183b47c74d58fd451453d77b53ad26f58890ee605f4a154922688dc348bc5a3c413dcd9128fd4831d8923c64a33aa4a951c

14 months agoci: fix build-test job with --no-default-features, add miniscript/no-std
Steve Myers [Tue, 1 Oct 2024 19:33:27 +0000 (14:33 -0500)]
ci: fix build-test job with --no-default-features, add miniscript/no-std

Until rust-miniscript removes the no-std feature we need to enable it
when --no-default-features is used to build bdk_wallet or the
whole workspace. See also the check-no-std job which does the same plus
enables the bdk_chain/hashbrown feature which is also needed to build
bdk_wallet with --no-default-features but is already enabled when
building the whole workspace.

14 months agoMerge bitcoindevkit/bdk#1594: Replace trait `AnchorFromBlockPosition` with new struct
Steve Myers [Tue, 1 Oct 2024 15:16:52 +0000 (10:16 -0500)]
Merge bitcoindevkit/bdk#1594: Replace trait `AnchorFromBlockPosition` with new struct

ab8068b90ee476f8edf7d3d4a21d621818e30969 refactor(chain)!: Replace trait `AnchorFromBlockPosition` with new struct (Jiri Jakes)

Pull request description:

  ### Description

  This change replaces a way of creating new generic anchor from block and its height. Previous way was using conversion trait, newly it is a struct and `From`.

  Closes #1266.

  ### Notes to the reviewers

  - Removed `tx_pos`: I did not see its relevance (`Anchor` does not give access to it). Was it a relic from the past or something I overlooked?
  - I put `BlockPosition` into `tx_data_traits.rs` because I believe it should be next to `Anchor`. But then it's not a module just for traits. What would be better place?

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

ACKs for top commit:
  LagginTimes:
    ACK ab8068b90ee476f8edf7d3d4a21d621818e30969
  LLFourn:
    ACK ab8068b90ee476f8edf7d3d4a21d621818e30969

Tree-SHA512: 9546ff177247796a36aeec6e015e564fb093cae0fe3b2962520843e8371bf3060f6d62f676a3989a49a6c25da6b7adbcde47c5fffe2f772f871980eb77cd1aea

14 months agoMerge bitcoindevkit/bdk#1625: feat(chain,core)!: move `Merge` to `bdk_core`
Steve Myers [Tue, 1 Oct 2024 14:53:31 +0000 (09:53 -0500)]
Merge bitcoindevkit/bdk#1625: feat(chain,core)!: move `Merge` to `bdk_core`

a4cf905d75ad7e09730b6d0aab5ef6cd2e735c2b feat(file_store): rm `bdk_chain` dependency (志宇)
993c4c055354ba6ddb0d81e8e5dbfa1f9bb631ac feat(chain,core)!: move `Merge` to `bdk_core` (志宇)

Pull request description:

  Fixes #1624

  ### Description

  Moving `Merge` into `bdk_core` (from `bdk_chain`) allows persist crates to only depend on `bdk_core`.

  ### Changelog notice

  * Move `Merge` into `bdk_core`.
  * Remove `bdk_chain` dependency from `bdk_file_store`.

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

ACKs for top commit:
  LagginTimes:
    ACK a4cf905d75ad7e09730b6d0aab5ef6cd2e735c2b
  oleonardolima:
    ACK a4cf905d75ad7e09730b6d0aab5ef6cd2e735c2b
  ValuedMammal:
    ACK a4cf905d75ad7e09730b6d0aab5ef6cd2e735c2b
  notmandatory:
    ACK a4cf905d75ad7e09730b6d0aab5ef6cd2e735c2b

Tree-SHA512: a94e24e04929cf790defd7ca0c8b5194eb5e9b31d295a55f5d3326d3eeb46821eda73191f2f68d8bb7e178bacd2cccfa45c8ded0ce50aabd4b7293edb338c956

14 months agoMerge bitcoindevkit/bdk#1626: deps(esplora): bump esplora-client to 0.10.0
Steve Myers [Tue, 1 Oct 2024 02:04:00 +0000 (21:04 -0500)]
Merge bitcoindevkit/bdk#1626: deps(esplora): bump esplora-client to 0.10.0

c60529436dcf82298ea923f782adefd059272cc9 deps(esplora): bump esplora-client to 0.10.0 (valued mammal)

Pull request description:

  Bumps rust-esplora-client to 0.10.0

  also fixes #1120

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

ACKs for top commit:
  LagginTimes:
    ACK c60529436dcf82298ea923f782adefd059272cc9
  oleonardolima:
    utACK c60529436dcf82298ea923f782adefd059272cc9
  notmandatory:
    ACK c60529436dcf82298ea923f782adefd059272cc9

Tree-SHA512: 212212b4f02f2c265b3b18645d8309b2c4846e652f988ff643cc9c7b936badabdc9f18bcb6ccda9322ee555e8883f748d988b473d240d010aa62b5a854ee80ef

14 months agoMerge bitcoindevkit/bdk#1616: feat(wallet)!: enable RBF by default on TxBuilder
Steve Myers [Mon, 30 Sep 2024 18:43:30 +0000 (13:43 -0500)]
Merge bitcoindevkit/bdk#1616: feat(wallet)!: enable RBF by default on TxBuilder

f15551b56fb4eb91bc0be5f940950c40ac465084 feat(wallet)!: enable RBF by default on TxBuilder (Luis Schwab)

Pull request description:

  ### Description

  Closes #791

  This PR enables RBF by default on `TxBuilder`

  ### Notes to the reviewers

  <!-- In this section you can include notes directed to the reviewers, like explaining why some parts
  of the PR were done in a specific way -->

  ### Changelog notice
  - On TxParams, `rbf` becomes `sequence`
  - Added `set_exact_sequence()`, so the user can define an arbitrary sequence value
  - `n_sequence` now defaults to `0xFFFFFFFD`
  - Adjusted tests accordingly

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

  #### New Features:

  * [x] I've added tests for the new feature
  * [ ] I've added docs for the new feature

  #### Bugfixes:

  * [x] This pull request breaks the existing API
  * [ ] I've added tests to reproduce the issue which are now passing
  * [x] I'm linking the issue being fixed by this PR

ACKs for top commit:
  notmandatory:
    ACK f15551b56fb4eb91bc0be5f940950c40ac465084

Tree-SHA512: 784538ffd102f315a7a96bd7f9afcdca7d35252ee2b4489d9853797c7f6d8cf95537f0dea3855ea9fffc9bf148c81a8c090cfdfd1e94144b9343651129ab9504

14 months agofeat(wallet)!: enable RBF by default on TxBuilder
Luis Schwab [Tue, 17 Sep 2024 17:04:01 +0000 (14:04 -0300)]
feat(wallet)!: enable RBF by default on TxBuilder

14 months agorefactor(chain)!: Replace trait `AnchorFromBlockPosition` with new struct
Jiri Jakes [Sun, 8 Sep 2024 08:05:30 +0000 (16:05 +0800)]
refactor(chain)!: Replace trait `AnchorFromBlockPosition` with new struct

This change replaces a way of creating new generic anchor from block,
its height and transaction position. Previous way was using conversion
trait, newly it is a struct and `From`.

14 months agoMerge bitcoindevkit/bdk#1623: fix!(wallet): `ChangeSet` should not be non-exhaustive
valued mammal [Sat, 28 Sep 2024 00:55:36 +0000 (20:55 -0400)]
Merge bitcoindevkit/bdk#1623: fix!(wallet): `ChangeSet` should not be non-exhaustive

d7dfe38ff6c0f1b984e15defc83c79e52a44afa9 fix!(wallet): `ChangeSet` should not be non-exhaustive (志宇)

Pull request description:

  Closes #1591

  ### Description

  As stated in #1591, it is handy to know when new values are added to `ChangeSet`.

  ### Notes to the reviewers

  ~

  ### Changelog notice

  * Remove `#[non_exhaustive]` attribute from `wallet::ChangeSet`.

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

ACKs for top commit:
  oleonardolima:
    utACK d7dfe38ff6c0f1b984e15defc83c79e52a44afa9
  ValuedMammal:
    ACK d7dfe38ff6c0f1b984e15defc83c79e52a44afa9

Tree-SHA512: 2856d9af625ee788c5ddec0a51dace26a1cb1b57b327ffb8439fe8a45888cdf2ecaeac8d2c777620f83b66d211bac4d17fea3d1143800127316ba475b5064b23

14 months agoMerge bitcoindevkit/bdk#1603: fix(RUSTSEC-2024-0370): proc-macro-error is unmaintained
valued mammal [Sat, 28 Sep 2024 00:53:15 +0000 (20:53 -0400)]
Merge bitcoindevkit/bdk#1603: fix(RUSTSEC-2024-0370): proc-macro-error is unmaintained

d802d00a06035bec582eb5aadf0281f26bff6acd fix(RUSTSEC-2024-0370)!: bump `clap` to latest, removing transitive dependency on `proc-macro-error`. (Leonardo Lima)
45be3172a4abaa94ef2ff55784da31832bdd732a refactor(ci)!: update CI to build and test example in specific job (Leonardo Lima)
519728cd596c3bda60c6e70cbc12b611017e2d7f chore(examples)!: update all examples to have `example_` prefix (Leonardo Lima)
9b7b19586e1f74613f71b6c2403a7df419e13b65 chore: use path as `name` for cargo test targets (Leonardo Lima)
6e8f19607aff55b1949fc7e9f943a333b4fcfb8a fix(bdk_electrum): build with `--no-default-features` (Leonardo Lima)
33942ece8f2f1f0b3d85a201d659cde72a560646 fix(bdk_esplora): build with `--no-default-features` (Leonardo Lima)

Pull request description:

  A candidate for fixing #1593. It builds on top of #1615
  <!-- You can erase any parts of this template not applicable to your Pull Request. -->

  ### Description

  <!-- Describe the purpose of this PR, what's being adding and/or fixed -->

  In https://github.com/bitcoindevkit/bdk/issues/1593 it's mentioned that `proc-macro-error` is unmaintained for the
  past few years, with no fix other than using proc-macro-error2 instead.

  As on our scenario it's merely a transitive dependency of `clap`,
  through `clap_derive` feature, which in latest releases doesn't depend on
  `proc-macro-error` we can just bump it to latest.

  It's valid to note that by bumping it, both examples that relies on clap
  are no longer MSRV (1.63) compliant.

  That said, this PR does:

  - Standardize the example packages to have `example_` prefix.
  - Exclude examples from running in main `Build & Test` CI job.
  - Add new testing step to `Build & Test Example` CI job.
  - Bumps the `clap` to `4.5.17`.

  ### Notes to the reviewers

  <!-- In this section you can include notes directed to the reviewers, like explaining why some parts
  of the PR were done in a specific way -->

  ### Changelog notice

  <!-- Notice the release manager should include in the release tag message changelog -->
  <!-- See https://keepachangelog.com/en/1.0.0/ for examples -->

  - Standardize the example packages to have `example_` prefix.
  - Exclude examples from running in main `Build & Test` CI job.
  - Add new testing step to `Build & Test Example` CI job.
  - Bumps the `clap` to `4.5.17`.

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

  <!--
  #### New Features:

  * [ ] I've added tests for the new feature
  * [ ] I've added docs for the new feature
  -->

  #### Bugfixes:

  * [ ] This pull request breaks the existing API
  * [ ] I've added tests to reproduce the issue which are now passing
  * [x] I'm linking the issue being fixed by this PR

ACKs for top commit:
  ValuedMammal:
    ACK d802d00a06035bec582eb5aadf0281f26bff6acd

Tree-SHA512: 274ddcdf05175fa5bc9c78e81de9ce768b800942a2dd420abc415618948aa84b79f6542d8af0c9ba57adaca48ce91fb854546ece069bd4751598cca4ed8f7560

14 months agodeps(esplora): bump esplora-client to 0.10.0
valued mammal [Thu, 26 Sep 2024 15:38:39 +0000 (11:38 -0400)]
deps(esplora): bump esplora-client to 0.10.0

14 months agofeat(file_store): rm `bdk_chain` dependency
志宇 [Thu, 26 Sep 2024 09:51:02 +0000 (17:51 +0800)]
feat(file_store): rm `bdk_chain` dependency

14 months agofeat(chain,core)!: move `Merge` to `bdk_core`
志宇 [Thu, 26 Sep 2024 09:42:58 +0000 (17:42 +0800)]
feat(chain,core)!: move `Merge` to `bdk_core`

14 months agofix!(wallet): `ChangeSet` should not be non-exhaustive
志宇 [Thu, 26 Sep 2024 08:28:38 +0000 (16:28 +0800)]
fix!(wallet): `ChangeSet` should not be non-exhaustive

As stated in #1591, it is handy to know when new values are added to
`ChangeSet`.

14 months agofix(RUSTSEC-2024-0370)!: bump `clap` to latest, removing transitive
Leonardo Lima [Thu, 12 Sep 2024 15:08:35 +0000 (12:08 -0300)]
fix(RUSTSEC-2024-0370)!: bump `clap` to latest, removing transitive
dependency on `proc-macro-error`.

In #1593 it's mentioned that `proc-macro-error` is unmaintained for the
past few years, with no fix other than using proc-macro-error2 instead.

As on our scenario it's merely a transitive dependency of `clap`,
through `clap_derive` feature, which in latest releases doesn't depend on
`proc-macro-error` we can just bump it to latest.

It's valid to note that by bumping it, both examples that relies on clap
are no longer MSRV (1.63) compliant.

14 months agorefactor(ci)!: update CI to build and test example in specific job
Leonardo Lima [Thu, 12 Sep 2024 15:06:20 +0000 (12:06 -0300)]
refactor(ci)!: update CI to build and test example in specific job

14 months agochore(examples)!: update all examples to have `example_` prefix
Leonardo Lima [Thu, 12 Sep 2024 15:01:36 +0000 (12:01 -0300)]
chore(examples)!: update all examples to have `example_` prefix

14 months agochore: use path as `name` for cargo test targets
Leonardo Lima [Fri, 20 Sep 2024 15:03:54 +0000 (12:03 -0300)]
chore: use path as `name` for cargo test targets

15 months agofix(bdk_electrum): build with `--no-default-features`
Leonardo Lima [Mon, 16 Sep 2024 15:54:36 +0000 (12:54 -0300)]
fix(bdk_electrum): build with `--no-default-features`

- add `use-rustls` as required features for `test_electrum.rs`, using
  the `[[test]]` cargo target approach.

15 months agofix(bdk_esplora): build with `--no-default-features`
Leonardo Lima [Mon, 16 Sep 2024 15:51:29 +0000 (12:51 -0300)]
fix(bdk_esplora): build with `--no-default-features`

- add `blocking-https` as one of the default features, instead of
  `blocking-https-rustls`, they are basically the same in
  `esplora-client`.
- add `async` and `blocking as required features for each test, using
  the `[[test]]` cargo target.

15 months agoMerge bitcoindevkit/bdk#1596: doc(wallet): Add docs to explain the lookahead
valued mammal [Mon, 16 Sep 2024 16:19:32 +0000 (12:19 -0400)]
Merge bitcoindevkit/bdk#1596: doc(wallet): Add docs to explain the lookahead

028f687b21872b66a2907701e5a8e143d0f867a0 doc(wallet): Add docs to explain the lookahead (valued mammal)

Pull request description:

  Adds clarifying language to `CreateParams` and `LoadParams` regarding the `lookahead` parameter. Commit 028f687b21872b66a2907701e5a8e143d0f867a0 also includes some minor documentation fixes.

  If anyone is aware of any more documentation flaws that need attention I'm happy to add them here.

  cc #1540

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

ACKs for top commit:
  LagginTimes:
    ACK 028f687b21872b66a2907701e5a8e143d0f867a0
  oleonardolima:
    ACK 028f687b21872b66a2907701e5a8e143d0f867a0
  evanlinjin:
    ACK 028f687b21872b66a2907701e5a8e143d0f867a0

Tree-SHA512: 971d09652948ed2e2dc86d255cfd18607d96b0806aa0e990190cd1d7035c6660ea2ac1092ef2c6c209e61920c0d4ff9d8c0a900bcc74a8662546d284fec3218f

15 months agoMerge bitcoindevkit/bdk#1613: ci: automated update to rustc 1.81.0
valued mammal [Mon, 16 Sep 2024 16:05:47 +0000 (12:05 -0400)]
Merge bitcoindevkit/bdk#1613: ci: automated update to rustc 1.81.0

503f315cdde32dabbc83efd3879ac5cb26aacdbc ci: automated update to rustc 1.81.0 (Github Action)

Pull request description:

  Automated update to Github CI workflow `cont_integration.yml` by [create-pull-request](https://github.com/peter-evans/create-pull-request) GitHub action

ACKs for top commit:
  ValuedMammal:
    ACK 503f315cdde32dabbc83efd3879ac5cb26aacdbc

Tree-SHA512: 60269a5525d1a0aaab400d1ef287acf1b7631ea4c2e4b1627a7d66a8a40526dce79abcd4d339dfea32ef02f573672d7d76acad10319e9336949c8ce9e92a17ad

15 months agoci: automated update to rustc 1.81.0
Github Action [Sun, 15 Sep 2024 01:07:19 +0000 (01:07 +0000)]
ci: automated update to rustc 1.81.0

15 months agoMerge bitcoindevkit/bdk#1610: Bump bdk_wallet version to 1.0.0-beta.4 v1.0.0-beta.4
Steve Myers [Fri, 13 Sep 2024 20:58:13 +0000 (15:58 -0500)]
Merge bitcoindevkit/bdk#1610: Bump bdk_wallet version to 1.0.0-beta.4

b34b7778f44be05827fde84660f6b1ee144d9845 Bump bdk_wallet version to 1.0.0-beta.4 (Steve Myers)

Pull request description:

  Bump bdk_wallet version to 1.0.0-beta.4

  bdk_core to 0.2.0
  bdk_chain to 0.19.0
  bdk_bitcoind_rpc to 0.15.0
  bdk_electrum to 0.18.0
  bdk_esplora to 0.18.0
  bdk_file_store to 0.16.0
  bdk_testenv to 0.9.0

ACKs for top commit:
  ValuedMammal:
    ACK b34b7778f44be05827fde84660f6b1ee144d9845

Tree-SHA512: 0dd33aca0a35adff263225678767500b0890caff1326085aa09333692e3e70095cac42b6686f1db9abc63e769326d7d4fc418d861c48ec184c877be00715b0ea

15 months agoBump bdk_wallet version to 1.0.0-beta.4
Steve Myers [Fri, 13 Sep 2024 20:10:55 +0000 (15:10 -0500)]
Bump bdk_wallet version to 1.0.0-beta.4

bdk_core to 0.2.0
bdk_chain to 0.19.0
bdk_bitcoind_rpc to 0.15.0
bdk_electrum to 0.18.0
bdk_esplora to 0.18.0
bdk_file_store to 0.16.0
bdk_testenv to 0.9.0

15 months agoMerge bitcoindevkit/bdk#1608: Bump bdk_wallet version to 1.0.0-beta.3 v1.0.0-beta.3
Steve Myers [Fri, 13 Sep 2024 16:00:10 +0000 (11:00 -0500)]
Merge bitcoindevkit/bdk#1608: Bump bdk_wallet version to 1.0.0-beta.3

7a501c1c92c2859feb1a486a96f3dd9917d00a8c Bump bdk_wallet version to 1.0.0-beta.3 (Steve Myers)

Pull request description:

  ### Description

  Bump bdk_wallet version to 1.0.0-beta.3

  bdk_core to 0.1.1
  bdk_chain to 0.18.1
  bdk_bitcoind_rpc to 0.14.1
  bdk_electrum to 0.17.1
  bdk_esplora to 0.17.1
  bdk_file_store to 0.15.1
  bdk_testenv to 0.8.1

ACKs for top commit:
  ValuedMammal:
    ACK 7a501c1c92c2859feb1a486a96f3dd9917d00a8c

Tree-SHA512: 75572db6c9ad4c54584c82750fbb772a66f54aa62d7bbaa2ffbad1870116e7fdeaa78136ab994840282e5b73b67d61727be6fa109fb9e4e1e414f42eee15277e

15 months agoBump bdk_wallet version to 1.0.0-beta.3
Steve Myers [Fri, 13 Sep 2024 14:47:45 +0000 (09:47 -0500)]
Bump bdk_wallet version to 1.0.0-beta.3

bdk_core to 0.1.1
bdk_chain to 0.18.1
bdk_bitcoind_rpc to 0.14.1
bdk_electrum to 0.17.1
bdk_esplora to 0.17.1
bdk_file_store to 0.15.1
bdk_testenv to 0.8.1

15 months agoMerge bitcoindevkit/bdk#1605: fix(wallet): fix SingleRandomDraw to error if insuffici...
Steve Myers [Thu, 12 Sep 2024 21:13:39 +0000 (16:13 -0500)]
Merge bitcoindevkit/bdk#1605: fix(wallet): fix SingleRandomDraw to error if insufficient funds

22a2f83db5df5f48974a06deef6b45d41a05ef3b fix(wallet): fix SingleRandomDraw to throw an error if insufficient funds (Steve Myers)

Pull request description:

  ### Description

  * fix SingleRandomDraw to error if insufficient funds
  * fixed spelling and clippy errors (see: https://github.com/bitcoindevkit/bdk/pull/1581#discussion_r1756936178)
  * updated tests to check for error variant instead of a panic

  ### Notes to the reviewers

  Since the single random draw algo can be used on its own it needs to be able to return an insufficient funds error. I think the reason we didn't catch this before is that single random draw already check for sufficient required + optional utxo amounts and returns the insufficient funds error.

  ### Changelog notice

  * fix SingleRandomDraw coin selection to error if there are insufficient funds for a requested payment amount.

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

  #### Bugfixes:

  * [ ] This pull request breaks the existing API
  * [x] I've added tests to reproduce the issue which are now passing
  * [ ] I'm linking the issue being fixed by this PR

ACKs for top commit:
  ValuedMammal:
    ACK 22a2f83db5df5f48974a06deef6b45d41a05ef3b

Tree-SHA512: c434003ea6cec1423960a0c7d2f830324227f9f99d9d8f72bd7785368cf51c867036b80c300a97177a10998830ef4df924bdcad408730f9e5dddc92cda75dceb

15 months agoMerge bitcoindevkit/bdk#1601: fix(core): calling `CheckPoint::insert` with existing...
Steve Myers [Thu, 12 Sep 2024 21:11:37 +0000 (16:11 -0500)]
Merge bitcoindevkit/bdk#1601: fix(core): calling `CheckPoint::insert` with existing block must succeed

3ae9ecba8c893750fa2ed5dfdbb1f4ee84a0b228 test: fix off-by-one in `checkpoint_insert_existing` (valued mammal)
e6aeaea0c69472e4c2dcf0f5e2f632f43733529d doc(core): document panic for `CheckPoint::insert` (valued mammal)
2970b83f30ca7071f0502de395327eb3671a512b fix(core): calling `CheckPoint::insert` with existing block must succeed (志宇)

Pull request description:

  ### Description

  Previously, we were panicking when the caller tried to insert a block at height 0. However, this should succeed if the block hash does not change.

  ### Notes to the reviewers

  For context:

  * https://github.com/lightningdevkit/ldk-node/pull/358
  * https://discord.com/channels/753336465005608961/978744259693916230/1283050849429356629

  ### Changelog notice

  * Fix `CheckPoint::insert` to not panic when inserting existing genesis block (same block height and hash).

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

  #### Bugfixes:

  ~~* [ ] This pull request breaks the existing API~~
  * [x] I've added tests to reproduce the issue which are now passing

ACKs for top commit:
  ValuedMammal:
    Self ACK 3ae9ecba8c893750fa2ed5dfdbb1f4ee84a0b228
  notmandatory:
    ACK 3ae9ecba8c893750fa2ed5dfdbb1f4ee84a0b228

Tree-SHA512: 638d8aacac59ad18b5ee369d08f39bb12cc37fa9b3f936404b60dbf44938ef850ca341d00566840b5a77909d31c9291ab56299d986d832005ca96cd91a0b0e55

15 months agotest: fix off-by-one in `checkpoint_insert_existing`
valued mammal [Thu, 12 Sep 2024 19:20:16 +0000 (15:20 -0400)]
test: fix off-by-one in `checkpoint_insert_existing`

15 months agodoc(core): document panic for `CheckPoint::insert`
valued mammal [Thu, 12 Sep 2024 19:18:01 +0000 (15:18 -0400)]
doc(core): document panic for `CheckPoint::insert`

15 months agofix(wallet): fix SingleRandomDraw to throw an error if insufficient funds
Steve Myers [Thu, 12 Sep 2024 18:14:54 +0000 (13:14 -0500)]
fix(wallet): fix SingleRandomDraw to throw an error if insufficient funds

* fixed spelling and clippy errors
* updated tests to check for error variant instead of a panic

15 months agoMerge bitcoindevkit/bdk#1581: Allow custom fallback algorithm for bnb
merge-script [Thu, 12 Sep 2024 13:46:44 +0000 (21:46 +0800)]
Merge bitcoindevkit/bdk#1581: Allow custom fallback algorithm for bnb

65be4ead03126430ab47bf192d0de0db1b1b883a test(coin_selection): add test for deterministic utxo selection (Steve Myers)
c18204d05925c4398e139c6e62c9640dacb67e17 feat(wallet)!: allow custom fallback algorithm for bnb (志宇)

Pull request description:

  ### Description

  This allows the caller to set a custom fallback algorithm when using `BranchAndBoundCoinSelection`. Previously, you were forced into using `SingleRandomDraw`.

  Signature of `CoinSelectionAlgorithm::coin_select` has been changed to take in a `&mut RangCore`. This allows us to pass the random number generator directly to the cs algorithm.

  Single random draw is now it's own type `SingleRandomDraw` and impls `CoinSelectionAlgorithm`.

  `BranchAndBoundCoinSelection` now handles it's own fallback algorithm internally, and a generic type parameter is added to specify the fallback algorithm.

  `coin_selection::Error` is renamed to `InsufficientFunds` and the BnB error variants are removed. The BnB error variants are no longer needed since those cases are handled internally by `BranchAndBoundCoinSelection` (via calling the fallback algorithm).

  ### Notes to the reviewers

  This is breaking change. Not sure how useful this is for our users. If it's deemed useful, consider including in beta.

  ### Changelog notice

  * Changed `CoinSelectionAlgorithm::coin_select` to take in an additional `&mut RangCore` variable. This allows us to pass a random number generator directly to the cs algorithm.
  * Added `SingeRandomDraw` type which impls `CoinSelectAlgorithm`.
  * Changed `BranchAndBoundCoinSelection` to call the fallback internally. An additional generic parameter is added set this.
  * Changed `coin_selection::Error` to `coin_selection::InsufficientFunds` (which is now a struct) and therefore removing bnb error variants.

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

ACKs for top commit:
  oleonardolima:
    utACK 65be4ead03126430ab47bf192d0de0db1b1b883a
  evanlinjin:
    self-ACK 65be4ead03126430ab47bf192d0de0db1b1b883a

Tree-SHA512: 3699b65dd3e9b20ad5872a05321a54d0ece61ad582eabe340d4dafbf971cf23bf46b0daa7d1284ec7bc7472d52d54cfa592c9e869ace6e35b8a9dc6938c297a3

15 months agofix(core): calling `CheckPoint::insert` with existing block must succeed
志宇 [Thu, 12 Sep 2024 08:44:21 +0000 (16:44 +0800)]
fix(core): calling `CheckPoint::insert` with existing block must succeed

Previously, we were panicking when the caller tried to insert a block at
height 0. However, this should succeed if the block hash does not
change.

15 months agoMerge bitcoindevkit/bdk#1561: refactor(bdk_hwi): remove `bdk_hwi`, as `HWISigner...
Steve Myers [Wed, 11 Sep 2024 19:37:37 +0000 (14:37 -0500)]
Merge bitcoindevkit/bdk#1561: refactor(bdk_hwi): remove `bdk_hwi`, as `HWISigner`'s being moved to `rust-hwi`

cd8ddfe18441c562342bcaccf7cae3a0d9ebbd92 chore: remove `ci/automation.json` file, used by Dockerfile.ledger (Leonardo Lima)
75c97a6018033bbeaeeba6b69ca74b67dc47161d fix(ci)!: remove `Dockerfile.ledger` and `hwi` steps from coverage step (Leonardo Lima)
b118b82fb08ee661ac10ac1771640b0965cf1ee8 refactor(bdk_hwi)!: remove `bdk_hwi` (Leonardo Lima)
43257cfca6c8c2a3d5dc2b78da455ff9f16da5bd refactor(wallet)!: remove dangling unused `hardwaresigner.rs` file (Leonardo Lima)

Pull request description:

  <!-- You can erase any parts of this template not applicable to your Pull Request. -->
  fixes #1516
  depends on https://github.com/bitcoindevkit/rust-hwi/pull/104

  ### Description

  <!-- Describe the purpose of this PR, what's being adding and/or fixed -->

  This PR removed the `bdk_hwi` crate, and the dangling `hardwaresigner.rs` file from `bdk_wallet` crate.

  It simplifies the BDK project workspace as it removes the dependency on `rust-hwi`, pyo3 and some required steps on CI.

  The removal is fine, as the `HWISigner` is being moved to `rust-hwi` project instead, please check: https://github.com/bitcoindevkit/rust-hwi/pull/104

  ### Notes to the reviewers

  <!-- In this section you can include notes directed to the reviewers, like explaining why some parts
  of the PR were done in a specific way -->

  Please let me know what you think about the removal, and if I missed anything.

  ### Changelog notice

  <!-- Notice the release manager should include in the release tag message changelog -->
  <!-- See https://keepachangelog.com/en/1.0.0/ for examples -->

  - Removed dangling unused `hardwaresigner.rs` file from `bdk_wallet` crate.
  - Removed `bdk_hwi` crate, moved to `rust-hwi` project.

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

  #### New Features:

  * [ ] I've added tests for the new feature
  * [ ] I've added docs for the new feature

  #### Bugfixes:

  * [ ] This pull request breaks the existing API
  * [ ] I've added tests to reproduce the issue which are now passing
  * [x] I'm linking the issue being fixed by this PR

ACKs for top commit:
  notmandatory:
    ACK cd8ddfe18441c562342bcaccf7cae3a0d9ebbd92

Tree-SHA512: 43fe716a3f107ae806b1c9bf83bd0a9f403d3c331443d78c9c4c55ac995577fd8b02ba13b77bbadb72b329e0fc94c22a7a9c8b2478ecad303d2c8db28393da2d

15 months agotest(coin_selection): add test for deterministic utxo selection
Steve Myers [Wed, 11 Sep 2024 02:38:06 +0000 (21:38 -0500)]
test(coin_selection): add test for deterministic utxo selection

Added back ignored branch and bounnd tests and cleaned up calculation for target amounts.

15 months agochore: remove `ci/automation.json` file, used by Dockerfile.ledger
Leonardo Lima [Wed, 11 Sep 2024 16:10:25 +0000 (13:10 -0300)]
chore: remove `ci/automation.json` file, used by Dockerfile.ledger

15 months agofix(ci)!: remove `Dockerfile.ledger` and `hwi` steps from coverage step
Leonardo Lima [Fri, 16 Aug 2024 01:09:37 +0000 (22:09 -0300)]
fix(ci)!: remove `Dockerfile.ledger` and `hwi` steps from coverage step

15 months agorefactor(bdk_hwi)!: remove `bdk_hwi`
Leonardo Lima [Fri, 16 Aug 2024 00:59:29 +0000 (21:59 -0300)]
refactor(bdk_hwi)!: remove `bdk_hwi`

- removes `bdk_hwi` crate, as `HWISigner`'s being moved to
rust-hwi.
- please refer to: https://github.com/bitcoindevkit/rust-hwi/pull/104

15 months agorefactor(wallet)!: remove dangling unused `hardwaresigner.rs` file
Leonardo Lima [Fri, 16 Aug 2024 00:41:29 +0000 (21:41 -0300)]
refactor(wallet)!: remove dangling unused `hardwaresigner.rs` file

It seems this file was left out on the previous migration from hardware
signers from `bdk_wallet` crate to the `bdk_hwi`, but it should've been
removed.

15 months agoMerge bitcoindevkit/bdk#1597: fix(wallet): do `check_wallet_descriptor` when creating...
Steve Myers [Wed, 11 Sep 2024 14:19:51 +0000 (09:19 -0500)]
Merge bitcoindevkit/bdk#1597: fix(wallet): do `check_wallet_descriptor` when creating and loading

5aecf4d6c48b75e610bbb9e31ad552878d797b5c fix(wallet): do `check_wallet_descriptor` when creating and loading (valued mammal)

Pull request description:

  Do `check_wallet_descriptor` for both external and internal descriptors when creating a wallet, and as a defensive measure also perform the check on the descriptors loaded from a changeset.

  fixes #1557

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

ACKs for top commit:
  notmandatory:
    ACK 5aecf4d6c48b75e610bbb9e31ad552878d797b5c

Tree-SHA512: c1503cc0350894cff762925276a2b5b94ac07155df8ff85c9277fb33001bc3137f479f1b8b1c5da4401a6a1b7184467915558e1fa761ae7ccef5d8886103cdad

15 months agoMerge bitcoindevkit/bdk#1599: fix: typos
Steve Myers [Wed, 11 Sep 2024 14:09:58 +0000 (09:09 -0500)]
Merge bitcoindevkit/bdk#1599: fix: typos

bc83e41126b75c32374a4fa6ba054c114ee62704 fix: typos (Jose Storopoli)

Pull request description:

  <!-- You can erase any parts of this template not applicable to your Pull Request. -->

  ### Description

  more typos caught up during rebasing of #1320.

  ### Notes to the reviewers

  ### Changelog notice

  <!-- Notice the release manager should include in the release tag message changelog -->
  <!-- See https://keepachangelog.com/en/1.0.0/ for examples -->

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

  #### New Features:

  * [ ] I've added tests for the new feature
  * [ ] I've added docs for the new feature

  #### Bugfixes:

  * [ ] This pull request breaks the existing API
  * [ ] I've added tests to reproduce the issue which are now passing
  * [ ] I'm linking the issue being fixed by this PR

ACKs for top commit:
  LagginTimes:
    ACK bc83e41126b75c32374a4fa6ba054c114ee62704
  oleonardolima:
    ACK bc83e41126b75c32374a4fa6ba054c114ee62704
  thunderbiscuit:
    ACK bc83e41126b75c32374a4fa6ba054c114ee62704.

Tree-SHA512: 1dc76d64ddb0273c60899a6617dcbc63fab75057447080260b7050bb5d178ef56c6f79f2c7f1ca5b7b4eb09e2b1e67d782be91598ab58e6a3b3179d6b5edf5c5

15 months agofeat(wallet)!: allow custom fallback algorithm for bnb
志宇 [Wed, 28 Aug 2024 09:49:55 +0000 (09:49 +0000)]
feat(wallet)!: allow custom fallback algorithm for bnb

Signature of `CoinSelectionAlgorithm::coin_select` has been changed to
take in a `&mut RangCore`. This allows us to pass the random number
generator directly to the cs algorithm.

Single random draw is now it's own type `SingleRandomDraw` and impls
`CoinSelectionAlgorithm`.

`BranchAndBoundCoinSelection` now handles it's own fallback algorithm
internally, and a generic type parameter is added to specify the
fallback algorithm.

`coin_selection::Error` is renamed to `InsufficientFunds` and the BnB
error variants are removed. The BnB error variants are no longer needed
since those cases are handled internally by
`BranchAndBoundCoinSelection` (via calling the fallback algorithm).

Add test_bnb_fallback_algorithm test and docs cleanup suggested by @ValuedMammal.

15 months agofix: typos
Jose Storopoli [Tue, 10 Sep 2024 09:51:36 +0000 (09:51 +0000)]
fix: typos

15 months agoMerge bitcoindevkit/bdk#1586: Change methods of `IndexedTxGraph`/`TxGraph`/`Wallet...
Steve Myers [Mon, 9 Sep 2024 19:58:20 +0000 (14:58 -0500)]
Merge bitcoindevkit/bdk#1586: Change methods of `IndexedTxGraph`/`TxGraph`/`Wallet` that insert txs to be more generic

87e61212f556bccfaa2a64b74f727cedc0f70e9c feat(chain,wallet)!: change methods to take in generic instead of `&Transaction` (志宇)
c39284d8299c5a8b34b73ce947e93425d5cdc121 feat(wallet): make `Wallet::insert_tx` generic (志宇)
67d5fa695f3f748d176c182d25be5ef70f5127ed feat(chain): make various insert tx methods more generic (志宇)

Pull request description:

  ### Description

  We want to reuse the `Arc` pointer whenever possible. However, some methods on `TxGraph` and `IndexedTxGraph` that insert transactions take in `&Transaction` or `Transaction` (thus forcing us to create a new `Arc<Transaction>` internally by cloning, even if the input tx is under a `Arc`).

  This PR changes these methods to take in a generic parameter, `T: Into<Arc<Transaction>>`, allowing us to reuse the `Arc` pointer whenever possible.

  ### Notes to the reviewers

  Methods that previously took in `Transaction` can be changed to take in `T: Into<Arc<Transaction>>` and be non-breaking (since `Arc<T>` impls `From<T>` automatically). These changes are contained in the first two commits.

  Methods that previously took in `&Transaction` will break. However, I think these api changes are small and the improvements are substantial enough to be worth it. These changes are contained in the last commit.

  ### Changelog notice

  * Changed `IndexedTxGraph` methods `insert_tx`, `batch_insert_relevant`, `batch_insert_relevant_unconfirmed`, `batch_insert_unconfirmed` to take in `T: Into<Arc<Transaction>>` instead of `Transaction` or `&Transaction`.
  * Changed `TxGraph` method `batch_insert_unconfirmed` to take in `T: Into<Arc<Transaction>>` instead of `Transaction`.
  * Changed `Wallet` methods `insert_tx`, `apply_unconfirmed_txs` to take in `T: Into<Arc<Transaction>>` instead of `Transaction` or `&Transaction`.

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

ACKs for top commit:
  oleonardolima:
    utACK 87e61212f556bccfaa2a64b74f727cedc0f70e9c
  notmandatory:
    ACK 87e61212f556bccfaa2a64b74f727cedc0f70e9c

Tree-SHA512: 6be8cde80984caaaf544fa5738bc4de39428cd4cd352d242ecb73d7cf2e69794c869249e76653a32a47bb5d19e4b3a47036e063cdd32ad47642b44c99cb7ee7c

15 months agoMerge bitcoindevkit/bdk#1595: refactor(wallet): use `Amount` everywhere
Steve Myers [Mon, 9 Sep 2024 19:34:00 +0000 (14:34 -0500)]
Merge bitcoindevkit/bdk#1595: refactor(wallet): use `Amount` everywhere

292ec3cb3a41d7b9f42cfea536c39b27dba16d4c refactor(wallet): use `Amount` everywhere (valued mammal)

Pull request description:

  This is a followup to #1426 that refactors wallet internals to use `bitcoin::Amount` (nearly) everywhere. I chose not to change any public types in `coin_selection.rs` that still use `u64` as that might require more discussion.

  partially addresses #1432
  fixes #1434

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

ACKs for top commit:
  oleonardolima:
    ACK 292ec3cb3a41d7b9f42cfea536c39b27dba16d4c
  notmandatory:
    ACK 292ec3cb3a41d7b9f42cfea536c39b27dba16d4c

Tree-SHA512: e84c543e796e151803321ad238023bd5f446448b4430dd6c62929180d159ee1ef867e98f69a4ef3b152c3146b8e30bbf01ce7952ac00b726847a224dca7e3be4

15 months agoMerge bitcoindevkit/bdk#1579: fix(wallet): only mark change address used if `create_t...
Steve Myers [Mon, 9 Sep 2024 16:31:42 +0000 (11:31 -0500)]
Merge bitcoindevkit/bdk#1579: fix(wallet): only mark change address used if `create_tx` succeeds

606fa0874db0f10cd1c64de0f1f097b12db3a16d ci: bump actions/upload-artifact to v4 (valued mammal)
75989d8cde3902f226bfa89aae05803b93a7cf1d test(wallet): Add `test_create_tx_increment_change_index` (valued mammal)
b60d1d29cb8908c354b43c49237acbea373c3dc7 fix(wallet): only mark change address used if `create_tx` succeeds (valued mammal)

Pull request description:

  If no drain script is specified in tx params then we get it from the change keychain by looking at the next unused address. Before this PR we marked the index used regardless of whether a change output is finally added. Then if creating a psbt failed, we never restored the unused status of the change address, so creating the next tx would have revealed an extra one.

  We want to mark the change address used so that other callers won't attempt to use the same address between the time we create the tx and when it appears on chain. With this PR we only mark the change address used if we successfully create a psbt and the drain script is used in the change output.

  fixes #1578

  ### Notes to the reviewers

  An early idea was to unmark the change address used if we fail to create a tx due to `InsufficientFunds`, but after looking into it I figure it doesn't totally make sense to mark the address used before we've determined that a change output is necessary. Further, `create_tx` can fail in other ways besides running coin selection, so I moved the `mark_used` logic to the end of the function.

  ### Changelog notice

  Fixed an issue that caused an unused internal address to be skipped when creating transactions (#1578)

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

  #### Bugfixes:

  * [x] I've added tests to reproduce the issue which are now passing
  * [x] I'm linking the issue being fixed by this PR

ACKs for top commit:
  notmandatory:
    ACK 606fa0874db0f10cd1c64de0f1f097b12db3a16d

Tree-SHA512: 4715494d901efccff38d636f0538f193ff32db1de44f8d56a98bb0136483f3a8ce1315901bb98117d6870d5b7e4a3bdf3d208f005e2adc0b29625f84a9e8974e

15 months agoci: bump actions/upload-artifact to v4
valued mammal [Mon, 9 Sep 2024 15:51:11 +0000 (11:51 -0400)]
ci: bump actions/upload-artifact to v4

15 months agotest(wallet): Add `test_create_tx_increment_change_index`
valued mammal [Tue, 27 Aug 2024 16:24:41 +0000 (12:24 -0400)]
test(wallet): Add `test_create_tx_increment_change_index`

15 months agofix(wallet): only mark change address used if `create_tx` succeeds
valued mammal [Tue, 27 Aug 2024 15:54:25 +0000 (11:54 -0400)]
fix(wallet): only mark change address used if `create_tx` succeeds

If no drain script is specified in tx params then we get it from
the change keychain by looking at the next unused address. We want
to mark the change address used so that other callers won't attempt
to use the same address between the time we create the tx and when
it appears on chain.

Before, we marked the index used regardless of whether a change
output is finally added. Then if creating a PSBT failed, we never
restored the unused status of the change address, so creating the
next tx would have revealed an extra one. Now we only mark the change
address used if we successfully create a PSBT and the drain script
is used in the change output.

15 months agofix(wallet): do `check_wallet_descriptor` when creating and loading
valued mammal [Sat, 31 Aug 2024 17:02:25 +0000 (13:02 -0400)]
fix(wallet): do `check_wallet_descriptor` when creating and loading

15 months agodoc(wallet): Add docs to explain the lookahead
valued mammal [Fri, 6 Sep 2024 18:24:00 +0000 (14:24 -0400)]
doc(wallet): Add docs to explain the lookahead

15 months agorefactor(wallet): use `Amount` everywhere
valued mammal [Sat, 7 Sep 2024 23:21:04 +0000 (19:21 -0400)]
refactor(wallet): use `Amount` everywhere

15 months agoMerge bitcoindevkit/bdk#1584: docs: update CONTRIBUTING.md
Steve Myers [Thu, 5 Sep 2024 17:30:44 +0000 (12:30 -0500)]
Merge bitcoindevkit/bdk#1584: docs: update CONTRIBUTING.md

6b881f8ab46bd0f3c612e522df21dc48ae5e6955 docs: update CONTRIBUTING.md (valued mammal)

Pull request description:

  Update `CONTRIBUTING.md`

  * Made small corrections and added some things that were missing. If there's something else you think should be included let me know.

  closes #1394

  ### Changelog notice

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk/blob/master/CONTRIBUTING.md)

ACKs for top commit:
  LagginTimes:
    ACK 6b881f8ab46bd0f3c612e522df21dc48ae5e6955
  notmandatory:
    ACK 6b881f8ab46bd0f3c612e522df21dc48ae5e6955
  storopoli:
    ACK 6b881f8ab46bd0f3c612e522df21dc48ae5e6955
  oleonardolima:
    ACK 6b881f8ab46bd0f3c612e522df21dc48ae5e6955

Tree-SHA512: 9a000cb86800e8dac582e2bab06613c28111268fa343d8621181e8bf1b4859029704d1258392248449c36af9dd5ecf8ab25dadfe5bcf62e40e10719a575d3b64

15 months agoMerge bitcoindevkit/bdk#1477: feat(wallet): add transactions_sort_by function
Steve Myers [Thu, 5 Sep 2024 05:03:05 +0000 (00:03 -0500)]
Merge bitcoindevkit/bdk#1477: feat(wallet): add transactions_sort_by function

83a0247e8ea6afd8329af5dd9b28f9892bd5e9c1 feat(wallet): add transactions_sort_by function (Steve Myers)

Pull request description:

  ### Description

  Added new type alias `WalletTx` which represents a `CanonicalTx<'a, Arc<Transaction>, ConfirmationTimeHeightAnchor>` and new `Wallet::transactions_sort_by` that returns a `Vec<WalletTx>` sorted by the given compare function.

  ### Notes to the reviewers

  fixes #794

  ### Changelog notice

  * Add new type alias `WalletTx` which represents a `CanonicalTx<'a, Arc<Transaction>, ConfirmationTimeHeightAnchor>`.
  * Add `Wallet::transactions_sort_by()` that returns a `Vec<WalletTx>` sorted by a given compare function.

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

  #### New Features:

  * [x] I've added tests for the new feature
  * [x] I've added docs for the new feature

Top commit has no ACKs.

Tree-SHA512: 5758b5edf8200b5534b7a7f538de640e85083bed3da2585109190f0efda3e238f5483d4a2dc073dc4b907644f58b7158a922ebe09d03a47201030162d4b0f4d3

15 months agofeat(wallet): add transactions_sort_by function
Steve Myers [Tue, 18 Jun 2024 01:48:03 +0000 (20:48 -0500)]
feat(wallet): add transactions_sort_by function

Added type WalletTx<'a> as an alias for CanonicalTx<'a, Arc<Transaction>, ConfirmationBlockTime>.

15 months agoMerge bitcoindevkit/bdk#1590: ci: pin `tokio-util` dependency version to build with...
merge-script [Thu, 5 Sep 2024 04:06:44 +0000 (12:06 +0800)]
Merge bitcoindevkit/bdk#1590: ci: pin `tokio-util` dependency version to build with rust 1.63

ea6876b70eb2b1ca9ee73e5719f1a9850e11827c ci: pin `tokio-util` dependency version to build with rust 1.63 (Wei Chen)

Pull request description:

  <!-- You can erase any parts of this template not applicable to your Pull Request. -->

  ### Description

  <!-- Describe the purpose of this PR, what's being adding and/or fixed -->
  `tokio-util` version 0.7.12 raised `msrv` to 1.70.
  The previous version 0.7.11 was pinned to CI to continue working.

  ### Notes to the reviewers

  <!-- In this section you can include notes directed to the reviewers, like explaining why some parts
  of the PR were done in a specific way -->

  ### Changelog notice

  <!-- Notice the release manager should include in the release tag message changelog -->
  <!-- See https://keepachangelog.com/en/1.0.0/ for examples -->
  * Pinned tokio-util dependency version to build with rust 1.63.

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

ACKs for top commit:
  evanlinjin:
    ACK ea6876b70eb2b1ca9ee73e5719f1a9850e11827c

Tree-SHA512: f200dc753fabe993bf926506e213d16050808b00eeb9c2d36fbd45cb62e0611300c660839ea37e17b0513cba2a5da48321e186d173d2871b45d2fce266f4f2b0

15 months agoci: pin `tokio-util` dependency version to build with rust 1.63
Wei Chen [Thu, 5 Sep 2024 03:50:48 +0000 (11:50 +0800)]
ci: pin `tokio-util` dependency version to build with rust 1.63

15 months agoMerge pull request #1587 from evanlinjin/tx_update_map_anchors
Lloyd Fournier [Wed, 4 Sep 2024 23:14:44 +0000 (09:14 +1000)]
Merge pull request #1587 from evanlinjin/tx_update_map_anchors

feat(core): add `TxUpdate::map_anchors`