Skip to content

Commit

Permalink
fix(plumbing): Fix typos that obfuscate the intent
Browse files Browse the repository at this point in the history
  • Loading branch information
epage committed Dec 24, 2024
1 parent 26fad5c commit 09c2337
Showing 1 changed file with 5 additions and 5 deletions.
10 changes: 5 additions & 5 deletions src/2025h1/cargo-plumbing.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ Cargo should integrate.
## Motivation

Cargo is a "porcelain" (UX) focused command and is highly opinionated which can work well for common cases.
However, as Cargo scales into larger applications, users need to adapt to their specific processes and needs.
However, as Cargo scales into larger applications, users need the ability to adapt Cargo to their specific processes and needs.

### The status quo

Expand Down Expand Up @@ -80,7 +80,7 @@ Encapsulating stabilized file formats can serve as a starting point for output
schemas as we already output those and have to deal with stability guarantees
around these.

Between planning a build and executing abuild is likely to look like
Between planning a build and executing a build is likely to look like
`--unit-graph` and a plan will need to be put forward for how to work through
the open issues.
There will likely be similar issues for any other output that can't leverage existing formats.
Expand All @@ -99,12 +99,12 @@ Otherwise, performance should wait on user feedback.

A schema evolution plan will need to be considered with the design of the schema.
How Cargo deals with evolution of existing output could serve as potential starting points:
- `Cargo.toml` (generated by `cargo package`) should not still be readable by `cargo` versions within the specified `package.rust-version`
- `Cargo.toml` (generated by `cargo package`) should still be readable by `cargo` versions within the specified `package.rust-version`
- In the absence of a `package.rust-version`, `Cargo.toml` should only represent features the user explicitly used or optional features that were always allowed on stable `cargo`
- `Cargo.lock` (generated by most commands) is strictly versioned: all versions of Cargo should output should work in all other versions of Cargo for that given version and changing Cargo versions should not cause the output to change
- `Cargo.lock` (generated by most commands) is strictly versioned: all versions of Cargo should output a lockfile that works in all other versions of Cargo for that given version and changing Cargo versions should not cause the output to change
- Cargo bumps the default format version after it has been stabilized for a "sufficient period of time"
- The default is capped by what is supported by the lowest `package.rust-version` in the workspace
- `cargo metadata --format-version`: defaults to "latest" ywith a warning
- `cargo metadata --format-version`: defaults to "latest" with a warning
- We attempt to follow the same practice as `Cargo.toml`
- `--message-format`: no versioning currently
- We attempt to follow the same practice as `Cargo.toml`
Expand Down

0 comments on commit 09c2337

Please sign in to comment.