Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Tracking Issue for path-bases #14355

Open
10 tasks
dpaoliello opened this issue Aug 5, 2024 · 0 comments
Open
10 tasks

Tracking Issue for path-bases #14355

dpaoliello opened this issue Aug 5, 2024 · 0 comments
Labels
A-manifest Area: Cargo.toml issues C-tracking-issue Category: A tracking issue for something unstable.

Comments

@dpaoliello
Copy link
Contributor

dpaoliello commented Aug 5, 2024

Summary

RFC: #3529
Original issue: #9855
Documentation: https://doc.rust-lang.org/nightly/cargo/reference/unstable.html#path-bases
Implementation:

Introduce shared base directories in Cargo configuration files that in turn enable base-relative path dependencies.

Changes from RFC

Unresolved Issues

  • How should each layer (config, eventually manifest) layer? Section-wide, per-field? We should have tests to confirm the approach we have
  • Can we switch our existing "make dep paths absolute" to build on top of this? (Implement path-bases (RFC 3529) 1/n: path dep and patch support #14360)
  • What exact names we should use for the table (path-bases) and field names (base)?
  • What other built-in base paths could be useful?
    • package or current-dir for the directory of the current project?
    • home or user_home for the user's home directory?
    • sysroot for the current rustc sysroot?
  • Do we actually want to support the [patch] table? Adding support for [patch] in config files greatly complicates the implementation
  • Should base = "workspace" work with implicit workspaces?

Future Extensions

  • Add support for declaring path bases in the manifest
  • Path bases relative to other path bases
  • Path dependency with just a base
  • Git dependencies

About tracking issues

Tracking issues are used to record the overall progress of implementation.
They are also used as hubs connecting to other relevant issues, e.g., bugs or open design questions.
A tracking issue is however not meant for large scale discussion, questions, or bug reports about a feature.
Instead, open a dedicated issue for the specific matter and add the relevant feature gate label.

@dpaoliello dpaoliello added the C-tracking-issue Category: A tracking issue for something unstable. label Aug 5, 2024
@epage epage added the A-manifest Area: Cargo.toml issues label Aug 5, 2024
bors added a commit that referenced this issue Aug 14, 2024
Implement base paths (RFC 3529) 1/n: path dep and patch support

RFC: rust-lang/rfcs#3529
Tracking Issue: #14355

This PR add support in path dependencies and `patch` table and the `workspace` built-in path base.
dpaoliello added a commit to dpaoliello/cargo that referenced this issue Aug 19, 2024
RFC: rust-lang/rfcs#3529
Tracking Issue: rust-lang#14355

This PR adds the `--base` option to `cargo add` to allow adding a path dependency with a path base.
dpaoliello added a commit to dpaoliello/cargo that referenced this issue Aug 19, 2024
RFC: rust-lang/rfcs#3529
Tracking Issue: rust-lang#14355

This PR adds the `--base` option to `cargo add` to allow adding a path dependency with a path base.
dpaoliello added a commit to dpaoliello/cargo that referenced this issue Aug 20, 2024
RFC: rust-lang/rfcs#3529
Tracking Issue: rust-lang#14355

This PR adds the `--base` option to `cargo add` to allow adding a path dependency with a path base.
dpaoliello added a commit to dpaoliello/cargo that referenced this issue Aug 27, 2024
RFC: rust-lang/rfcs#3529
Tracking Issue: rust-lang#14355

This PR adds the `--base` option to `cargo add` to allow adding a path dependency with a path base.
dpaoliello added a commit to dpaoliello/cargo that referenced this issue Sep 5, 2024
RFC: rust-lang/rfcs#3529
Tracking Issue: rust-lang#14355

This PR adds the `--base` option to `cargo add` to allow adding a path dependency with a path base.
dpaoliello added a commit to dpaoliello/cargo that referenced this issue Sep 6, 2024
RFC: rust-lang/rfcs#3529
Tracking Issue: rust-lang#14355

This PR adds the `--base` option to `cargo add` to allow adding a path dependency with a path base.
bors added a commit that referenced this issue Sep 6, 2024
Implement path-bases (RFC 3529) 2/n: `cargo [add|remove|update]` support

RFC: rust-lang/rfcs#3529
Tracking Issue: #14355

This PR adds the `--base` option to `cargo add` to allow adding a path dependency with a path base.
dingxiangfei2009 pushed a commit to dingxiangfei2009/cargo that referenced this issue Sep 17, 2024
RFC: rust-lang/rfcs#3529
Tracking Issue: rust-lang#14355

This PR adds the `--base` option to `cargo add` to allow adding a path dependency with a path base.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-manifest Area: Cargo.toml issues C-tracking-issue Category: A tracking issue for something unstable.
Projects
Status: In Progress
Development

No branches or pull requests

2 participants