Open
Description
This issue is an attempt to put all information regarding potential Cargo.toml
support in one place.
Blockers
There is no TOML support in RA, and needs a format-preserving parser. toml-edit
is maintained along with toml
and probably the best choice.
Potential features
- Autocomplete or schema help (reference: https://doc.rust-lang.org/cargo/reference/manifest.html)
- Autocomplete keys
- Suggest valid values for fixed keys like
edition
,rust-version
,license
- Suggest in-workspace files for
license-file
,readme
,build
- Autocomplete dependencies (also handled by the
crates
extension) - Autocomplete dependency features
- Schema validation and warnings/errors, based on the above
- Quick actions & refactoring
- "Move feature to
dev-dependencies
/dependencies
/build-dependencies
" - "Update crate to latest compatible version"
- "Update crate to latest incompatible version"
- Toggle
no-default-features
- Refactor simple dependencies to objects and back, like RustRover does Meta feature tracking: Language server support for
Cargo.toml
file #15741 (comment)
- "Move feature to
- Add crates to
Cargo.toml
from a use statement feature: from use statement, add crate to cargo.toml #10904 - Lower priority features that are already well-handled with other ecosystem extensions:
- Link to crates like the
crates
extension: Feature Request: Link to crates.io on hover in Cargo.lock and Cargo.toml #13532 - Add syntax highlighting to TOML files Add syntax highlighting for TOML files. #3565. I think the syntax highlighting is not much of a concern since
Even better TOML
does it well, but there are some good general suggestions in the issue
- Link to crates like the
See also the label
S-needs-toml