Repository: solana-labs/solana-program-library
Pull request #7217 (2024-08-30 09:06:40)

build(deps): bump tokio from 1.39.3 to 1.40.0
Bumps [tokio](https://github.com/tokio-rs/tokio) from 1.39.3 to 1.40.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/tokio-rs/tokio/releases">tokio's releases</a>.</em></p>
<blockquote>
<h2>Tokio v1.40.0</h2>
<h1>1.40.0 (August 30th, 2024)</h1>
<h3>Added</h3>
<ul>
<li>io: add <code>util::SimplexStream</code> (<a href="https://redirect.github.com/tokio-rs/tokio/issues/6589">#6589</a>)</li>
<li>process: stabilize <code>Command::process_group</code> (<a href="https://redirect.github.com/tokio-rs/tokio/issues/6731">#6731</a>)</li>
<li>sync: add <code>{TrySendError,SendTimeoutError}::into_inner</code> (<a href="https://redirect.github.com/tokio-rs/tokio/issues/6755">#6755</a>)</li>
<li>task: add <code>JoinSet::join_all</code> (<a href="https://redirect.github.com/tokio-rs/tokio/issues/6784">#6784</a>)</li>
</ul>
<h3>Added (unstable)</h3>
<ul>
<li>runtime: add <code>Builder::{on_task_spawn, on_task_terminate}</code> (<a href="https://redirect.github.com/tokio-rs/tokio/issues/6742">#6742</a>)</li>
</ul>
<h3>Changed</h3>
<ul>
<li>io: use vectored io for <code>write_all_buf</code> when possible (<a href="https://redirect.github.com/tokio-rs/tokio/issues/6724">#6724</a>)</li>
<li>runtime: prevent niche-optimization to avoid triggering miri (<a href="https://redirect.github.com/tokio-rs/tokio/issues/6744">#6744</a>)</li>
<li>sync: mark mpsc types as <code>UnwindSafe</code> (<a href="https://redirect.github.com/tokio-rs/tokio/issues/6783">#6783</a>)</li>
<li>sync,time: make <code>Sleep</code> and <code>BatchSemaphore</code> instrumentation explicit roots (<a href="https://redirect.github.com/tokio-rs/tokio/issues/6727">#6727</a>)</li>
<li>task: use <code>NonZeroU64</code> for <code>task::Id</code> (<a href="https://redirect.github.com/tokio-rs/tokio/issues/6733">#6733</a>)</li>
<li>task: include panic message when printing <code>JoinError</code> (<a href="https://redirect.github.com/tokio-rs/tokio/issues/6753">#6753</a>)</li>
<li>task: add <code>#[must_use]</code> to <code>JoinHandle::abort_handle</code> (<a href="https://redirect.github.com/tokio-rs/tokio/issues/6762">#6762</a>)</li>
<li>time: eliminate timer wheel allocations (<a href="https://redirect.github.com/tokio-rs/tokio/issues/6779">#6779</a>)</li>
</ul>
<h3>Documented</h3>
<ul>
<li>docs: clarify that <code>[build]</code> section doesn't go in Cargo.toml (<a href="https://redirect.github.com/tokio-rs/tokio/issues/6728">#6728</a>)</li>
<li>io: clarify zero remaining capacity case (<a href="https://redirect.github.com/tokio-rs/tokio/issues/6790">#6790</a>)</li>
<li>macros: improve documentation for <code>select!</code> (<a href="https://redirect.github.com/tokio-rs/tokio/issues/6774">#6774</a>)</li>
<li>sync: document mpsc channel allocation behavior (<a href="https://redirect.github.com/tokio-rs/tokio/issues/6773">#6773</a>)</li>
</ul>
<p><a href="https://redirect.github.com/tokio-rs/tokio/issues/6589">#6589</a>: <a href="https://redirect.github.com/tokio-rs/tokio/pull/6589">tokio-rs/tokio#6589</a>
<a href="https://redirect.github.com/tokio-rs/tokio/issues/6724">#6724</a>: <a href="https://redirect.github.com/tokio-rs/tokio/pull/6724">tokio-rs/tokio#6724</a>
<a href="https://redirect.github.com/tokio-rs/tokio/issues/6727">#6727</a>: <a href="https://redirect.github.com/tokio-rs/tokio/pull/6727">tokio-rs/tokio#6727</a>
<a href="https://redirect.github.com/tokio-rs/tokio/issues/6728">#6728</a>: <a href="https://redirect.github.com/tokio-rs/tokio/pull/6728">tokio-rs/tokio#6728</a>
<a href="https://redirect.github.com/tokio-rs/tokio/issues/6731">#6731</a>: <a href="https://redirect.github.com/tokio-rs/tokio/pull/6731">tokio-rs/tokio#6731</a>
<a href="https://redirect.github.com/tokio-rs/tokio/issues/6733">#6733</a>: <a href="https://redirect.github.com/tokio-rs/tokio/pull/6733">tokio-rs/tokio#6733</a>
<a href="https://redirect.github.com/tokio-rs/tokio/issues/6742">#6742</a>: <a href="https://redirect.github.com/tokio-rs/tokio/pull/6742">tokio-rs/tokio#6742</a>
<a href="https://redirect.github.com/tokio-rs/tokio/issues/6744">#6744</a>: <a href="https://redirect.github.com/tokio-rs/tokio/pull/6744">tokio-rs/tokio#6744</a>
<a href="https://redirect.github.com/tokio-rs/tokio/issues/6753">#6753</a>: <a href="https://redirect.github.com/tokio-rs/tokio/pull/6753">tokio-rs/tokio#6753</a>
<a href="https://redirect.github.com/tokio-rs/tokio/issues/6755">#6755</a>: <a href="https://redirect.github.com/tokio-rs/tokio/pull/6755">tokio-rs/tokio#6755</a>
<a href="https://redirect.github.com/tokio-rs/tokio/issues/6762">#6762</a>: <a href="https://redirect.github.com/tokio-rs/tokio/pull/6762">tokio-rs/tokio#6762</a>
<a href="https://redirect.github.com/tokio-rs/tokio/issues/6773">#6773</a>: <a href="https://redirect.github.com/tokio-rs/tokio/pull/6773">tokio-rs/tokio#6773</a>
<a href="https://redirect.github.com/tokio-rs/tokio/issues/6774">#6774</a>: <a href="https://redirect.github.com/tokio-rs/tokio/pull/6774">tokio-rs/tokio#6774</a>
<a href="https://redirect.github.com/tokio-rs/tokio/issues/6779">#6779</a>: <a href="https://redirect.github.com/tokio-rs/tokio/pull/6779">tokio-rs/tokio#6779</a>
<a href="https://redirect.github.com/tokio-rs/tokio/issues/6783">#6783</a>: <a href="https://redirect.github.com/tokio-rs/tokio/pull/6783">tokio-rs/tokio#6783</a>
<a href="https://redirect.github.com/tokio-rs/tokio/issues/6784">#6784</a>: <a href="https://redirect.github.com/tokio-rs/tokio/pull/6784">tokio-rs/tokio#6784</a>
<a href="https://redirect.github.com/tokio-rs/tokio/issues/6790">#6790</a>: <a href="https://redirect.github.com/tokio-rs/tokio/pull/6790">tokio-rs/tokio#6790</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/tokio-rs/tokio/commit/ea6d652a102dee3f22b490db70545b7f66a23fb7"><code>ea6d652</code></a> chore: prepare Tokio v1.40.0 (<a href="https://redirect.github.com/tokio-rs/tokio/issues/6806">#6806</a>)</li>
<li><a href="https://github.com/tokio-rs/tokio/commit/11f66f43a09169b893212b854c6c49985ff2224f"><code>11f66f4</code></a> chore: replace <code>ready!</code> with <code>std::task::ready!</code> (<a href="https://redirect.github.com/tokio-rs/tokio/issues/6804">#6804</a>)</li>
<li><a href="https://github.com/tokio-rs/tokio/commit/479a56a010d25f86207841ec4fcc685402addcad"><code>479a56a</code></a> time: eliminate timer wheel allocations (<a href="https://redirect.github.com/tokio-rs/tokio/issues/6779">#6779</a>)</li>
<li><a href="https://github.com/tokio-rs/tokio/commit/b37f0de28a17ced6a9e6738062770d6fea8c5364"><code>b37f0de</code></a> runtime: implement initial set of task hooks (<a href="https://redirect.github.com/tokio-rs/tokio/issues/6742">#6742</a>)</li>
<li><a href="https://github.com/tokio-rs/tokio/commit/c9fad0846667c86d96ec151354229f2833fd9e1b"><code>c9fad08</code></a> codec: fix typo in the docs for <code>Encoder::Error</code> (<a href="https://redirect.github.com/tokio-rs/tokio/issues/6800">#6800</a>)</li>
<li><a href="https://github.com/tokio-rs/tokio/commit/cc70a211ad4ce71388c99e8af7480f3ddddbf602"><code>cc70a21</code></a> task: add <code>join_all</code> method to <code>JoinSet</code> (<a href="https://redirect.github.com/tokio-rs/tokio/issues/6784">#6784</a>)</li>
<li><a href="https://github.com/tokio-rs/tokio/commit/1ac8dff213937088616dc84de9adc92b4b68c49a"><code>1ac8dff</code></a> task: add <code>AbortOnDropHandle</code> type (<a href="https://redirect.github.com/tokio-rs/tokio/issues/6786">#6786</a>)</li>
<li><a href="https://github.com/tokio-rs/tokio/commit/ff3f2a8878c04141a0e3e3c0f65a74c9f31a2e11"><code>ff3f2a8</code></a> io: add <code>SimplexStream</code> (<a href="https://redirect.github.com/tokio-rs/tokio/issues/6589">#6589</a>)</li>
<li><a href="https://github.com/tokio-rs/tokio/commit/5b9a290acd25d88416e70c73c49a54106fcf02b5"><code>5b9a290</code></a> io: clarify zero remaining capacity case (<a href="https://redirect.github.com/tokio-rs/tokio/issues/6790">#6790</a>)</li>
<li><a href="https://github.com/tokio-rs/tokio/commit/70569bd0090a3f64aa23c5fccc1d434e04bd90b0"><code>70569bd</code></a> task: fix typo in <code>TaskTracker</code> docs (<a href="https://redirect.github.com/tokio-rs/tokio/issues/6792">#6792</a>)</li>
<li>Additional commits viewable in <a href="https://github.com/tokio-rs/tokio/compare/tokio-1.39.3...tokio-1.40.0">compare view</a></li>
</ul>
</details>
<br />


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

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

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

---

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

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

mergify[bot]: automerge label removed due to a CI failure

Patch:
diff --git a/Cargo.lock b/Cargo.lock
index 12bc54419..3287df2ea 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -7589,7 +7589,7 @@ dependencies = [
  "spl-token-confidential-transfer-proof-extraction",
  "spl-token-confidential-transfer-proof-generation",
  "spl-token-group-interface 0.4.1",
- "spl-token-metadata-interface 0.5.0",
+ "spl-token-metadata-interface 0.5.1",
  "spl-transfer-hook-interface 0.8.1",
  "spl-type-length-value 0.6.0",
  "thiserror",
@@ -7616,7 +7616,7 @@ dependencies = [
  "spl-token-client",
  "spl-token-confidential-transfer-proof-generation",
  "spl-token-group-interface 0.4.1",
- "spl-token-metadata-interface 0.5.0",
+ "spl-token-metadata-interface 0.5.1",
  "spl-transfer-hook-example",
  "spl-transfer-hook-interface 0.8.1",
  "test-case",
@@ -7654,7 +7654,7 @@ dependencies = [
  "spl-token-client",
  "spl-token-confidential-transfer-proof-generation",
  "spl-token-group-interface 0.4.1",
- "spl-token-metadata-interface 0.5.0",
+ "spl-token-metadata-interface 0.5.1",
  "strum 0.26.3",
  "strum_macros 0.26.4",
  "tempfile",
@@ -7684,7 +7684,7 @@ dependencies = [
  "spl-token-2022 5.0.1",
  "spl-token-confidential-transfer-proof-generation",
  "spl-token-group-interface 0.4.1",
- "spl-token-metadata-interface 0.5.0",
+ "spl-token-metadata-interface 0.5.1",
  "spl-transfer-hook-interface 0.8.1",
  "thiserror",
 ]
@@ -7703,7 +7703,7 @@ dependencies = [
  "spl-token-client",
  "spl-token-group-example",
  "spl-token-group-interface 0.4.1",
- "spl-token-metadata-interface 0.5.0",
+ "spl-token-metadata-interface 0.5.1",
  "spl-type-length-value 0.6.0",
 ]
 
@@ -7761,7 +7761,7 @@ dependencies = [
  "spl-token-2022 5.0.1",
  "spl-token-client",
  "spl-token-group-interface 0.4.1",
- "spl-token-metadata-interface 0.5.0",
+ "spl-token-metadata-interface 0.5.1",
  "spl-type-length-value 0.6.0",
 ]
 
@@ -7833,7 +7833,7 @@ dependencies = [
  "spl-pod 0.4.0",
  "spl-token-2022 5.0.1",
  "spl-token-client",
- "spl-token-metadata-interface 0.5.0",
+ "spl-token-metadata-interface 0.5.1",
  "spl-type-length-value 0.6.0",
  "test-case",
 ]
@@ -7854,7 +7854,7 @@ dependencies = [
 
 [[package]]
 name = "spl-token-metadata-interface"
-version = "0.5.0"
+version = "0.5.1"
 dependencies = [
  "borsh 1.5.1",
  "serde",
@@ -8504,9 +8504,9 @@ checksum = "cda74da7e1a664f795bb1f8a87ec406fb89a02522cf6e50620d016add6dbbf5c"
 
 [[package]]
 name = "tokio"
-version = "1.39.3"
+version = "1.40.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9babc99b9923bfa4804bd74722ff02c0381021eafa4db9949217e3be8e84fff5"
+checksum = "e2b070231665d27ad9ec9b8df639893f46727666c6767db40317fbe920a5d998"
 dependencies = [
  "backtrace",
  "bytes",
diff --git a/libraries/concurrent-merkle-tree/Cargo.toml b/libraries/concurrent-merkle-tree/Cargo.toml
index 2504dfc27..c833d33da 100644
--- a/libraries/concurrent-merkle-tree/Cargo.toml
+++ b/libraries/concurrent-merkle-tree/Cargo.toml
@@ -20,7 +20,7 @@ thiserror = "1.0.63"
 rand_distr = "0.4.3"
 rand = "0.8"
 spl-merkle-tree-reference = { version = "0.1.0", path = "../merkle-tree-reference" }
-tokio = { version = "1.39", features = ["full"] }
+tokio = { version = "1.40", features = ["full"] }
 
 [lib]
 crate-type = ["cdylib", "lib"]
diff --git a/single-pool/cli/Cargo.toml b/single-pool/cli/Cargo.toml
index e93a1202d..19e1bf272 100644
--- a/single-pool/cli/Cargo.toml
+++ b/single-pool/cli/Cargo.toml
@@ -8,7 +8,7 @@ license = "Apache-2.0"
 edition = "2021"
 
 [dependencies]
-tokio = "1.39"
+tokio = "1.40"
 clap = { version = "3.2.23", features = ["derive"] }
 console = "0.15.8"
 borsh = "1.5.1"
diff --git a/token-collection/program/Cargo.toml b/token-collection/program/Cargo.toml
index 4f893e783..10cdf78ce 100644
--- a/token-collection/program/Cargo.toml
+++ b/token-collection/program/Cargo.toml
@@ -18,7 +18,7 @@ spl-program-error = { version = "0.5.0" , path = "../../libraries/program-error"
 spl-token-2022 = { version = "5.0.1", path = "../../token/program-2022", features = ["no-entrypoint"] }
 spl-token-group-example = { version = "0.2", path = "../../token-group/example", features = ["no-entrypoint"] }
 spl-token-group-interface = { version = "0.4.1", path = "../../token-group/interface" }
-spl-token-metadata-interface = { version = "0.5.0", path = "../../token-metadata/interface" }
+spl-token-metadata-interface = { version = "0.5.1", path = "../../token-metadata/interface" }
 spl-type-length-value = { version = "0.6.0", path = "../../libraries/type-length-value" }
 
 [dev-dependencies]
diff --git a/token-group/example/Cargo.toml b/token-group/example/Cargo.toml
index a65d945d9..72d6589b3 100644
--- a/token-group/example/Cargo.toml
+++ b/token-group/example/Cargo.toml
@@ -23,7 +23,7 @@ solana-program-test = "2.0.3"
 solana-sdk = "2.0.3"
 spl-discriminator = { version = "0.3.0", path = "../../libraries/discriminator" }
 spl-token-client = { version = "0.12.0", path = "../../token/client" }
-spl-token-metadata-interface = { version = "0.5.0", path = "../../token-metadata/interface" }
+spl-token-metadata-interface = { version = "0.5.1", path = "../../token-metadata/interface" }
 
 [lib]
 crate-type = ["cdylib", "lib"]
diff --git a/token-metadata/example/Cargo.toml b/token-metadata/example/Cargo.toml
index 26a26bf28..1b88fa0ed 100644
--- a/token-metadata/example/Cargo.toml
+++ b/token-metadata/example/Cargo.toml
@@ -14,7 +14,7 @@ test-sbf = []
 [dependencies]
 solana-program = "2.0.3"
 spl-token-2022 = { version = "5.0.1", path = "../../token/program-2022", features = ["no-entrypoint"] }
-spl-token-metadata-interface = { version = "0.5.0", path = "../interface" }
+spl-token-metadata-interface = { version = "0.5.1", path = "../interface" }
 spl-type-length-value = { version = "0.6.0", path = "../../libraries/type-length-value" }
 spl-pod = { version = "0.4.0", path = "../../libraries/pod" }
 
diff --git a/token-metadata/interface/Cargo.toml b/token-metadata/interface/Cargo.toml
index d2d256fd8..47107570b 100644
--- a/token-metadata/interface/Cargo.toml
+++ b/token-metadata/interface/Cargo.toml
@@ -1,6 +1,6 @@
 [package]
 name = "spl-token-metadata-interface"
-version = "0.5.0"
+version = "0.5.1"
 description = "Solana Program Library Token Metadata Interface"
 authors = ["Solana Labs Maintainers <maintainers@solanalabs.com>"]
 repository = "https://github.com/solana-labs/solana-program-library"
diff --git a/token/cli/Cargo.toml b/token/cli/Cargo.toml
index bc3c662f1..1dd33e4aa 100644
--- a/token/cli/Cargo.toml
+++ b/token/cli/Cargo.toml
@@ -37,14 +37,14 @@ spl-token-2022 = { version = "5.0.1", path = "../program-2022", features = [
 ] }
 spl-token-client = { version = "0.12.0", path = "../client" }
 spl-token-confidential-transfer-proof-generation = { version = "0.1.0", path = "../confidential-transfer/proof-generation" }
-spl-token-metadata-interface = { version = "0.5.0", path = "../../token-metadata/interface" }
+spl-token-metadata-interface = { version = "0.5.1", path = "../../token-metadata/interface" }
 spl-token-group-interface = { version = "0.4.1", path = "../../token-group/interface" }
 spl-memo = { version = "5.0", path = "../../memo/program", features = [
   "no-entrypoint",
 ] }
 strum = "0.26"
 strum_macros = "0.26"
-tokio = "1.39"
+tokio = "1.40"
 
 [dev-dependencies]
 solana-test-validator = "2.0.3"
diff --git a/token/client/Cargo.toml b/token/client/Cargo.toml
index f13731f47..c7a7cba95 100644
--- a/token/client/Cargo.toml
+++ b/token/client/Cargo.toml
@@ -30,7 +30,7 @@ spl-token = { version = "6.0", path = "../program", features = [
 spl-token-confidential-transfer-proof-generation = { version = "0.1.0", path = "../confidential-transfer/proof-generation" }
 spl-token-2022 = { version = "5.0.1", path = "../program-2022" }
 spl-token-group-interface = { version = "0.4.1", path = "../../token-group/interface" }
-spl-token-metadata-interface = { version = "0.5.0", path = "../../token-metadata/interface" }
+spl-token-metadata-interface = { version = "0.5.1", path = "../../token-metadata/interface" }
 spl-transfer-hook-interface = { version = "0.8.1", path = "../transfer-hook/interface" }
 thiserror = "1.0"
 
diff --git a/token/program-2022/Cargo.toml b/token/program-2022/Cargo.toml
index 2e74b65a2..210dd45a9 100644
--- a/token/program-2022/Cargo.toml
+++ b/token/program-2022/Cargo.toml
@@ -30,7 +30,7 @@ spl-token = { version = "6.0",  path = "../program", features = ["no-entrypoint"
 spl-token-confidential-transfer-ciphertext-arithmetic = { version = "0.1.0", path = "../confidential-transfer/ciphertext-arithmetic" }
 spl-token-confidential-transfer-proof-extraction = { version = "0.1.0", path = "../confidential-transfer/proof-extraction" }
 spl-token-group-interface = { version = "0.4.1", path = "../../token-group/interface" }
-spl-token-metadata-interface = { version = "0.5.0", path = "../../token-metadata/interface" }
+spl-token-metadata-interface = { version = "0.5.1", path = "../../token-metadata/interface" }
 spl-transfer-hook-interface = { version = "0.8.1", path = "../transfer-hook/interface" }
 spl-type-length-value = { version = "0.6.0", path = "../../libraries/type-length-value" }
 spl-pod = { version = "0.4.0", path = "../../libraries/pod" }
diff --git a/token/transfer-hook/interface/Cargo.toml b/token/transfer-hook/interface/Cargo.toml
index a77212f70..e1c08540b 100644
--- a/token/transfer-hook/interface/Cargo.toml
+++ b/token/transfer-hook/interface/Cargo.toml
@@ -21,7 +21,7 @@ spl-pod = { version = "0.4.0", path = "../../../libraries/pod" }
 crate-type = ["cdylib", "lib"]
 
 [dev-dependencies]
-tokio = { version = "1.39.3", features = ["full"] }
+tokio = { version = "1.40.0", features = ["full"] }
 
 [package.metadata.docs.rs]
 targets = ["x86_64-unknown-linux-gnu"]


Test patch:
diff --git a/token/program-2022-test/Cargo.toml b/token/program-2022-test/Cargo.toml
index 08961f70a..90566a939 100644
--- a/token/program-2022-test/Cargo.toml
+++ b/token/program-2022-test/Cargo.toml
@@ -41,7 +41,7 @@ spl-instruction-padding = { version = "0.2.0", path = "../../instruction-padding
 spl-tlv-account-resolution = { version = "0.8.1", path = "../../libraries/tlv-account-resolution" }
 spl-token-client = { version = "0.12.0", path = "../client" }
 spl-token-group-interface = { version = "0.4.1", path = "../../token-group/interface" }
-spl-token-metadata-interface = { version = "0.5.0", path = "../../token-metadata/interface" }
+spl-token-metadata-interface = { version = "0.5.1", path = "../../token-metadata/interface" }
 spl-transfer-hook-example = { version = "0.6", path = "../transfer-hook/example", features = [
   "no-entrypoint",
 ] }