Conversation
This change unifies the `Step::run_make` logic and improves it by skipping std specific crates for no_std targets. Signed-off-by: onur-ozkan <work@onurozkan.dev>
Since we now handle library crates properly, there's no need to panic for `no_std` targets anymore. `x doc library` now generates documentation for the `alloc` crate from standard library. Signed-off-by: onur-ozkan <work@onurozkan.dev>
`crates` field is handled in the `Step::make_run` just like in any other `Std` implementation, so we don't need to resolve them in `Std::new`. Signed-off-by: onur-ozkan <work@onurozkan.dev>
Signed-off-by: onur-ozkan <work@onurozkan.dev>
…split, split_mut}`
Replace `io::Cursor::{remaining_slice, is_empty}`
This is a late follow up to the concerns raised in rust-lang#86369.
rust-lang#86369 (comment)
> This API seems focussed on the `Read` side of things. When `Seek`ing around and `Write`ing data, `is_empty` becomes confusing and `remaining_slice` is not very useful. When writing, the part of the slice before the cursor is much more interesting. Maybe we should have functions for both? Or a single function that returns both slices? (If we also have a `mut` version, a single function would be useful to allow mutable access to both sides at once.)
New feature name: `cursor_remaining` > `cursor_split`.
Added functions:
```rust
fn split(&self) -> (&[u8], &[u8]);
// fn before(&self) -> &[u8];
// fn after(&self) -> &[u8];
fn split_mut(&mut self) -> (&mut [u8], &mut [u8]);
// fn before_mut(&mut self) -> &mut [u8];
// fn after_mut(&mut self) -> &mut [u8];
```
A question was raised in rust-lang#86369 (comment) about whether to return a lifetime that would reflect the lifetime of the underlying bytes (`impl Cursor<&'a [u8]> { fn after(&self) -> &'a [u8] }`). The downside of doing this would be that it would not be possible to implement these functions generically over `T: AsRef<[u8]>`.
## Update
Based on the review, before* and after* methods where removed.
…, r=jieyouxu migrate fmt-write-bloat to rmake try-job: aarch64-apple try-job: x86_64-gnu-llvm-18 try-job: dist-x86_64-linux
…rk-Simulacrum handle no_std targets on std builds This PR unifies the `Step::run_make` logic and improves it by skipping std specific crates for no_std targets. In addition, since we now handle library crates properly, bootstrap is capable of running `x doc library` even for no_std targets as it is able to generate documentation for `alloc` crate from the standard library. Resolves rust-lang#128027 cc `@ChrisDenton`
… r=tgross35 Add missing periods on `BTreeMap` cursor `peek_next` docs Tracking issue: rust-lang#107540
|
@bors r+ rollup=never p=5 |
Rollup of 4 pull requests Successful merges: - rust-lang#109174 (Replace `io::Cursor::{remaining_slice, is_empty}`) - rust-lang#128147 (migrate fmt-write-bloat to rmake) - rust-lang#128182 (handle no_std targets on std builds) - rust-lang#128310 (Add missing periods on `BTreeMap` cursor `peek_next` docs) Failed merges: - rust-lang#128269 (improve cargo invocations on bootstrap) r? `@ghost` `@rustbot` modify labels: rollup
|
The job Click to see the possible cause of the failure (guessed by this bot) |
|
💔 Test failed - checks-actions |
|
@bors retry link.exe bug |
Rollup of 4 pull requests Successful merges: - rust-lang#109174 (Replace `io::Cursor::{remaining_slice, is_empty}`) - rust-lang#128147 (migrate fmt-write-bloat to rmake) - rust-lang#128182 (handle no_std targets on std builds) - rust-lang#128310 (Add missing periods on `BTreeMap` cursor `peek_next` docs) Failed merges: - rust-lang#128269 (improve cargo invocations on bootstrap) r? `@ghost` `@rustbot` modify labels: rollup
|
💔 Test failed - checks-actions |
|
? what was that |
|
:/ treeclosed when this was within a minute of finishing. #125443 probably should have closed the tree after this and reapplied formatting if needed. Admittedly I'm a bit surprised that treeclosed cancels ongoing jobs... |
My apologies... this is the first time I have ever closed the tree. I knew this was PR was close to merging, but I also thought that treeclosed would let the existing job finish :( |
|
No worries, nothing urgent here. I had no clue it cancels things either and would have done the exact same, so I'm glad that I learned now too 😆 |
Successful merges:
io::Cursor::{remaining_slice, is_empty}#109174 (Replaceio::Cursor::{remaining_slice, is_empty})BTreeMapcursorpeek_nextdocs #128310 (Add missing periods onBTreeMapcursorpeek_nextdocs)Failed merges:
r? @ghost
@rustbot modify labels: rollup
Create a similar rollup