From 632b030a796fc22b4c60b0828354bc91b4a3d3db Mon Sep 17 00:00:00 2001 From: dyskinmel Date: Fri, 21 Feb 2025 12:19:28 -0600 Subject: [PATCH 1/5] =?UTF-8?q?cargo-resolver.md=E3=82=92=E7=BF=BB?= =?UTF-8?q?=E8=A8=B3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/rust-2024/cargo-resolver.md | 86 +++++++++++++++++++++++++++------ 1 file changed, 70 insertions(+), 16 deletions(-) diff --git a/src/rust-2024/cargo-resolver.md b/src/rust-2024/cargo-resolver.md index e9a22ba..04d4aa7 100644 --- a/src/rust-2024/cargo-resolver.md +++ b/src/rust-2024/cargo-resolver.md @@ -1,38 +1,92 @@ > **Rust Edition Guide は現在 Rust 2024 のアップデート作業に向けて翻訳作業中です。本ページは英語版をコピーしていますが、一部のリンクが動作しないなどの問題が発生する場合があります。問題が発生した場合は、[原文(英語版)](https://doc.rust-lang.org/nightly/edition-guide/introduction.html)をご参照ください。** -# Cargo: Rust-version aware resolver + -## Summary +# Cargo: Rustバージョンを認識したリゾルバ -- `edition = "2024"` implies `resolver = "3"` in `Cargo.toml` which enables a Rust-version aware dependency resolver. + -## Details +## 概要 + + +- `Cargo.toml` で `edition = "2024"` を指定すると、`resolver = "3"` が自動的に適用され、Rustバージョンを認識した依存関係リゾルバが有効になります。 + + + +## 詳細 + + +Rust 1.84.0 以降、Cargo では [`package.rust-version`] を考慮した依存関係のバージョン選択を行うオプションが導入されました。 +これを有効にするには、`.cargo/config.toml` に [`resolver.incompatible-rust-version = "fallback"`] の設定を追加します: + + + +Rust 2024 Edition から、この設定がデフォルトになります。 +つまり、`Cargo.toml` で `edition = "2024"` を指定すると、自動的に `resolver = "3"` が適用され、 [`resolver.incompatible-rust-version = "fallback"`] が有効になります。 + + +リゾルバは [workspace] に適用されるグローバルな設定であり、依存関係では無視されます。 +この設定は workspace のトップレベルパッケージにのみ適用されます。 +[virtual workspace] を使用している場合、新しいリゾルバを有効にするには [workspace] 定義内で [`resolver` フィールド] を明示的に設定する必要があります。 + + -For more details on how Rust-version aware dependency resolution works, see [the Cargo book](../../cargo/reference/resolver.html#rust-version). +Rustバージョン対応の依存関係解決の詳細については、[the Cargo book](https://doc.rust-lang.org/cargo/reference/resolver.html#rust-version) を参照してください。 -[`package.rust-version`]: ../../cargo/reference/rust-version.html -[`resolver.incompatible-rust-version = "fallback"`]: ../../cargo/reference/config.html#resolverincompatible-rust-versions -[workspace]: ../../cargo/reference/workspaces.html -[virtual workspace]: ../../cargo/reference/workspaces.html#virtual-workspace -[`resolver` field]: ../../cargo/reference/resolver.html#resolver-versions +[`package.rust-version`]: https://doc.rust-lang.org/cargo/reference/rust-version.html +[`resolver.incompatible-rust-version = "fallback"`]: https://doc.rust-lang.org/cargo/reference/config.html#resolverincompatible-rust-versions +[workspace]: https://doc.rust-lang.org/cargo/reference/workspaces.html +[virtual workspace]: https://doc.rust-lang.org/cargo/reference/workspaces.html#virtual-workspace -## Migration + -There are no automated migration tools for updating for the new resolver. +[`resolver` フィールド]: https://doc.rust-lang.org/cargo/reference/resolver.html#resolver-versions + + +## 移行 + + + +新しいリゾルバへの更新を 自動で行うツールはありません。 + + + +プロジェクトでは、[CI で最新の依存関係を検証する](https://doc.rust-lang.org/cargo/guide/continuous-integration.html#verifying-latest-dependencies) ことを推奨します。 +これにより、依存クレートのバグを早期に発見し適切に対応できます。 + + From c166d6849c0fde7dfc7b051630310862b2098ff0 Mon Sep 17 00:00:00 2001 From: dyskinmel Date: Fri, 21 Feb 2025 12:19:55 -0600 Subject: [PATCH 2/5] =?UTF-8?q?Summary=E3=81=AB=E7=BF=BB=E8=A8=B3=E3=81=97?= =?UTF-8?q?=E3=81=9F=E3=82=BF=E3=82=A4=E3=83=88=E3=83=AB=E3=82=92=E8=BF=BD?= =?UTF-8?q?=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/SUMMARY.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/SUMMARY.md b/src/SUMMARY.md index 9d66515..61edf99 100644 --- a/src/SUMMARY.md +++ b/src/SUMMARY.md @@ -132,7 +132,7 @@ - [Add `IntoIterator` for `Box<[T]>`](rust-2024/intoiterator-box-slice.md) - [Newly unsafe functions](rust-2024/newly-unsafe-functions.md) - [Cargo](rust-2024/cargo.md) - - [Cargo: Rust-version aware resolver](rust-2024/cargo-resolver.md) + - [Cargo: Rustバージョンを認識したリゾルバ](rust-2024/cargo-resolver.md) - [Cargo: Table and key name consistency](rust-2024/cargo-table-key-names.md) - [Cargo: Reject unused inherited default-features](rust-2024/cargo-inherited-default-features.md) - [Rustdoc](rust-2024/rustdoc.md) From 9dec6562b8f5e64f7de79566ac556af24e8222d6 Mon Sep 17 00:00:00 2001 From: dyskinmel Date: Fri, 21 Feb 2025 13:42:53 -0600 Subject: [PATCH 3/5] =?UTF-8?q?=E7=BF=BB=E8=A8=B3=E6=96=87=E3=81=AE?= =?UTF-8?q?=E5=BE=AE=E8=AA=BF=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/SUMMARY.md | 2 +- src/rust-2024/cargo-resolver.md | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/SUMMARY.md b/src/SUMMARY.md index 61edf99..9fd9ec8 100644 --- a/src/SUMMARY.md +++ b/src/SUMMARY.md @@ -132,7 +132,7 @@ - [Add `IntoIterator` for `Box<[T]>`](rust-2024/intoiterator-box-slice.md) - [Newly unsafe functions](rust-2024/newly-unsafe-functions.md) - [Cargo](rust-2024/cargo.md) - - [Cargo: Rustバージョンを認識したリゾルバ](rust-2024/cargo-resolver.md) + - [Cargo: Rustバージョンに基づいたリゾルバ](rust-2024/cargo-resolver.md) - [Cargo: Table and key name consistency](rust-2024/cargo-table-key-names.md) - [Cargo: Reject unused inherited default-features](rust-2024/cargo-inherited-default-features.md) - [Rustdoc](rust-2024/rustdoc.md) diff --git a/src/rust-2024/cargo-resolver.md b/src/rust-2024/cargo-resolver.md index 04d4aa7..bb173d7 100644 --- a/src/rust-2024/cargo-resolver.md +++ b/src/rust-2024/cargo-resolver.md @@ -4,7 +4,7 @@ # Cargo: Rust-version aware resolver --> -# Cargo: Rustバージョンを認識したリゾルバ +# Cargo: Rustバージョンに基づいたリゾルバ -- `Cargo.toml` で `edition = "2024"` を指定すると、`resolver = "3"` が自動的に適用され、Rustバージョンを認識した依存関係リゾルバが有効になります。 +- `Cargo.toml` で `edition = "2024"` を指定すると、`resolver = "3"` が自動的に適用され、Rustバージョンに基づいた依存関係リゾルバが有効になります。 From 3024ed183ced7c122cb942e6a2e59bffcd2a9e35 Mon Sep 17 00:00:00 2001 From: dyskinmel Date: Wed, 26 Feb 2025 15:38:43 -0600 Subject: [PATCH 5/5] =?UTF-8?q?mdbook-transcheck=E3=82=A8=E3=83=A9?= =?UTF-8?q?=E3=83=BC=E4=BF=AE=E6=AD=A3=E3=81=8A=E3=82=88=E3=81=B3=E4=B8=80?= =?UTF-8?q?=E9=83=A8=E7=BF=BB=E8=A8=B3=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/rust-2024/cargo-resolver.md | 69 +++++++++++++++++---------------- 1 file changed, 36 insertions(+), 33 deletions(-) diff --git a/src/rust-2024/cargo-resolver.md b/src/rust-2024/cargo-resolver.md index 50efe9b..97585a0 100644 --- a/src/rust-2024/cargo-resolver.md +++ b/src/rust-2024/cargo-resolver.md @@ -1,90 +1,93 @@ - # Cargo: Rustバージョンに基づいたリゾルバ - ## 概要 - + - `Cargo.toml` で `edition = "2024"` を指定すると、`resolver = "3"` が自動的に適用され、Rustバージョンに基づいた依存関係リゾルバが有効になります。 - ## 詳細 - Rust 1.84.0 以降、Cargo では [`package.rust-version`] を考慮した依存関係のバージョン選択を行うオプションが導入されました。 これを有効にするには、`.cargo/config.toml` に [`resolver.incompatible-rust-version = "fallback"`] の設定を追加します: - Rust 2024 Edition から、この設定がデフォルトになります。 つまり、`Cargo.toml` で `edition = "2024"` を指定すると、自動的に `resolver = "3"` が適用され、 [`resolver.incompatible-rust-version = "fallback"`] が有効になります。 - -リゾルバは [workspace] に適用されるグローバルな設定であり、依存関係では無視されます。 +このリゾルバは [workspace] に適用されるグローバルな設定であり、依存関係では無視されます。 この設定は workspace のトップレベルパッケージにのみ適用されます。 [virtual workspace] を使用している場合、新しいリゾルバを有効にするには [workspace] 定義内で [`resolver` フィールド] を明示的に設定する必要があります。 - Rustバージョン対応の依存関係解決の詳細については、[the Cargo book](https://doc.rust-lang.org/cargo/reference/resolver.html#rust-version) を参照してください。 + + [`package.rust-version`]: https://doc.rust-lang.org/cargo/reference/rust-version.html [`resolver.incompatible-rust-version = "fallback"`]: https://doc.rust-lang.org/cargo/reference/config.html#resolverincompatible-rust-versions [workspace]: https://doc.rust-lang.org/cargo/reference/workspaces.html [virtual workspace]: https://doc.rust-lang.org/cargo/reference/workspaces.html#virtual-workspace +[`resolver` フィールド]: https://doc.rust-lang.org/cargo/reference/resolver.html#resolver-versions - - -[`resolver` フィールド]: https://doc.rust-lang.org/cargo/reference/resolver.html#resolver-versions - - ## 移行 - -新しいリゾルバへの更新を 自動で行うツールはありません。 +新しいリゾルバへの更新を自動で行うツールはありません。 - -プロジェクトでは、[CI で最新の依存関係を検証する](https://doc.rust-lang.org/cargo/guide/continuous-integration.html#verifying-latest-dependencies) ことを推奨します。 -これにより、依存クレートのバグを早期に発見し適切に対応できます。 - - +プロジェクトでは、[CI で最新の依存関係を検証する](https://doc.rust-lang.org/cargo/guide/continuous-integration.html#verifying-latest-dependencies)ことを推奨します。 +これにより、依存クレートのバグを早期に発見し適切に対応できます。 \ No newline at end of file