-
Notifications
You must be signed in to change notification settings - Fork 13.5k
doc: Clarify supported platforms and tiers #29055
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
Conversation
(rust_highfive has picked a reviewer for you, use r? to override) |
r? @brson |
40700be
to
f5e891a
Compare
doesn't work, it is a bug. Please let us know if that happens. Each and every | ||
commit is tested against Windows just like any other platform. | ||
Rust supports a wide variety of platforms each of which is organized into one of | ||
three tiers of support. Each tier brings with it a different set of guarantees, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This sentence contains 'support' twice, awkward. "The Rust compiler runs on, and compiles to, a great number of platforms, though not all platforms are equally supported. Rust's support levels are organized into three tiers, each with a different set of guarantees." Not sure, tired.
I do think it would be ideal to punt the fine details about specific low-tier platforms somewhere else, but this location is ok for now. |
Updated! |
|
||
* Automated testing is set up to run tests for the platform. | ||
* Landing changes to the `rust-lang/rust` repository's master branch is gated on | ||
tests passing. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
On that particular configuration buildbots use. There’re some tests that do not pass on certain configurations.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
While a good point, I'm not sure if there's a great way to put this succinctly. We test a good deal of configurations but it's basically impossible for us to test every configuration so I'm not sure we'd gain much in breaking down exactly what configurations of what tests are run here.
Tier 2 platforms can be thought of as "guaranteed to build". Automated tests are | ||
not run so it's not guaranteed to produce a working build, but platforms often | ||
work to quite a good degree and patches are always welcome! Specifially, these | ||
platforms satisfy: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I didn't think the list read correctly based on the preceding statement. Satisfy sounds like it should be followed by a series of check marks or something and I couldn't work it in with that. I tried to set it up so each statement starts with a qualified verb (must do/may build/can compile/does not fly
) (I don't know what they're actually called so I'm sorta guessing here).
The 3rd bullet may not be exactly what was meant originally though. I'm not really sure.
Specifically, these platforms:
* must be automatically built
* may or may not run the compiler test-suite
* successfully compile the `rust-lang/rust` master branch. This requires either:
- just compiling the std library or
- running the full bootstrap
* provide official release artifacts
@alexcrichton One thing that the Gecko tiers page (https://developer.mozilla.org/en/docs/Supported_build_configurations) has is contact names for the community members who are the official maintainer, where such a thing exists. Perhaps that makes sense here, too? |
A questions on this; this appears to indicate the platforms that |
What do the columns mean? I’m guessing that rustc and cargo columns are for "runs on platform X", while std is "can cross-compile targetting platform X", but this should be documented. |
Sounds like a good idea to me! I'd want to clear it with everyone before adding them to this page, but I suspect those maintainers can be added here over time. Ah good point! XP support falls into the tier 3 category I believe where it's not guaranteed to build or work but support is in theory there, I'll add a note. It means that the corresponding column is expected to build for that platform. In general there are many ways to cross to a platform (e.g. from any host), but I'll try to clarify. |
This commit expands the "supported platforms" section of the book to include documentation on the tiers that Rust currently has as well as organizing all supported platforms into these various tiers. Infrastructure improvements over the next few months are likely to change the location of may of these platforms over, but for now this should faithfully represent what we've got today!
@bors: r+ rollup |
📌 Commit 93e419c has been approved by |
This commit expands the "supported platforms" section of the book to include documentation on the tiers that Rust currently has as well as organizing all supported platforms into these various tiers. Infrastructure improvements over the next few months are likely to change the location of may of these platforms over, but for now this should faithfully represent what we've got today!
This commit expands the "supported platforms" section of the book to include
documentation on the tiers that Rust currently has as well as organizing all
supported platforms into these various tiers. Infrastructure improvements over
the next few months are likely to change the location of may of these platforms
over, but for now this should faithfully represent what we've got today!