File tree Expand file tree Collapse file tree 1 file changed +13
-2
lines changed
Expand file tree Collapse file tree 1 file changed +13
-2
lines changed Original file line number Diff line number Diff line change 2020-->
2121
2222- ` Cargo.toml ` にターゲットの指定がある場合であっても、他のターゲットの自動探索がされなくなるということはなくなりました[ ^ 1 ] 。
23- - ` path ` フィールドが指定されていないターゲットに対して、` src/{target_name}.rs ` の形のターゲットパスは自動設定されなくなりました [ ^ 2 ] 。
23+ - ` path ` フィールドが指定されていないターゲットに対して、` src/{target_name}.rs ` の形のターゲットパスは自動推定されなくなりました [ ^ 2 ] 。
2424- 現在のディレクトリに対して ` cargo install ` できなくなりました。現在のパッケージをインストールしたい場合は ` cargo install --path . ` と指定する必要があります[ ^ 3 ] 。
2525
2626[ ^ 1 ] * 訳注* :
3333 詳細は、[ Cargo Book の "Target auto-discovery"(英語)] [ target-auto-discovery ] もご覧ください。
3434
3535[ ^ 2 ] * 訳注* :
36- [ WIP] 詳細は不明です。
36+ Cargo は、ターゲットを宣言するセクション(つまり、例えば ` [lib] ` セクションや ` [[bin]] ` セクション)に ` path ` フィールドがなかった場合、
37+ ` name ` フィールドと[ フォルダ構成の慣習] [ package-layout ] に従ってパスを推論し、そのパスが存在すればそれを使用します。
38+ たとえば、` Cargo.toml ` に
39+ ``` toml
40+ [[bin ]]
41+ name = " my_binary"
42+ ```
43+ というセクションがあった場合、` path ` フィールドが ` src/bin/my_binary.rs ` であると自動的に判断します。
44+ そして、` src/bin/my_binary.rs ` が存在すれば、これをターゲットのソースとして採用することになります。
45+ Rust 2015 では、これに加えて ` path ` が ` src/my_binary.rs ` である可能性も候補になりました。
46+ すなわち、上の状況において ` src/bin/my_binary.rs ` が存在しないが ` src/my_binary.rs ` が存在する場合は、` src/my_binary.rs ` をターゲットのソースとして採用しました。
47+ しかし、この挙動は時にわかりにくいエラーを生むため、この形のパスが候補とされる挙動を利用することは[ 非推奨となり] ( https://github.com/rust-lang/cargo/pull/4259#issuecomment-314138552 ) 、Rust 2018 では挙動そのものが廃止されました。
3748
3849[ ^ 3 ] * 訳注* :
3950 [ ` cargo install ` ] [ cargo-install ] コマンドは、指定したクレートのバイナリターゲットをインストールする、つまりビルドして実行ファイルを所定の場所に配置するためのコマンドです。
You can’t perform that action at this time.
0 commit comments