Skip to content

Add display method to OsStr #120051

New issue

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

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

Already on GitHub? # to your account

Merged
merged 1 commit into from
Feb 28, 2024
Merged

Add display method to OsStr #120051

merged 1 commit into from
Feb 28, 2024

Conversation

riverbl
Copy link
Contributor

@riverbl riverbl commented Jan 17, 2024

Add display method to OsStr for lossy display of an OsStr which may contain invalid unicode.

Invalid Unicode sequences are replaced with U+FFFD REPLACEMENT CHARACTER.

This change also makes the std::ffi::os_str module public (see rust-lang/libs-team#326 (comment)).

@rustbot
Copy link
Collaborator

rustbot commented Jan 17, 2024

r? @m-ou-se

(rustbot has picked a reviewer for you, use r? to override)

@rustbot rustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-libs Relevant to the library team, which will review and decide on the PR/issue. labels Jan 17, 2024
@riverbl riverbl mentioned this pull request Jan 17, 2024
4 tasks
@rust-log-analyzer

This comment has been minimized.

@rust-log-analyzer

This comment has been minimized.

@rust-log-analyzer

This comment has been minimized.

@riverbl
Copy link
Contributor Author

riverbl commented Jan 17, 2024

I'm concerned that making std::ffi::os_str public, and thus changing the "canonical" location of OsStr and OsString to std::ffi::os_str, with a re-export in std::ffi, will break all existing links to the documentation for these types.

I'm not aware of any way to have std::ffi::os_str be public and define OsStr and OsString there, but only publicly expose them via the re-export in std::ffi.

@joboet
Copy link
Member

joboet commented Jan 18, 2024

I'm not aware of any way to have std::ffi::os_str be public and define OsStr and OsString there, but only publicly expose them via the re-export in std::ffi.

The #[doc(inline)] attribute does exactly that, see the HashMap documentation for an example of using it in action.

@riverbl
Copy link
Contributor Author

riverbl commented Jan 18, 2024

The #[doc(inline)] attribute does exactly that, see the HashMap documentation for an example of using it in action.

Thank you!

@rust-log-analyzer

This comment has been minimized.

Add `display` method to `OsStr` for lossy display of an `OsStr` which may contain invalid unicode.

Invalid Unicode sequences are replaced with `U+FFFD REPLACEMENT CHARACTER`.

This change also makes the `std::ffi::os_str` module public.
@m-ou-se
Copy link
Member

m-ou-se commented Feb 27, 2024

@bors r+ rollup

@bors
Copy link
Collaborator

bors commented Feb 27, 2024

📌 Commit a0fcc8e has been approved by m-ou-se

It is now in the queue for this repository.

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Feb 27, 2024
matthiaskrgr added a commit to matthiaskrgr/rust that referenced this pull request Feb 27, 2024
Add `display` method to `OsStr`

Add `display` method to `OsStr` for lossy display of an `OsStr` which may contain invalid unicode.

Invalid Unicode sequences are replaced with `U+FFFD REPLACEMENT CHARACTER`.

This change also makes the `std::ffi::os_str` module public (see rust-lang/libs-team#326 (comment)).

- ACP: rust-lang/libs-team#326
- Tracking issue: rust-lang#120048
matthiaskrgr added a commit to matthiaskrgr/rust that referenced this pull request Feb 27, 2024
Add `display` method to `OsStr`

Add `display` method to `OsStr` for lossy display of an `OsStr` which may contain invalid unicode.

Invalid Unicode sequences are replaced with `U+FFFD REPLACEMENT CHARACTER`.

This change also makes the `std::ffi::os_str` module public (see rust-lang/libs-team#326 (comment)).

- ACP: rust-lang/libs-team#326
- Tracking issue: rust-lang#120048
matthiaskrgr added a commit to matthiaskrgr/rust that referenced this pull request Feb 27, 2024
Add `display` method to `OsStr`

Add `display` method to `OsStr` for lossy display of an `OsStr` which may contain invalid unicode.

Invalid Unicode sequences are replaced with `U+FFFD REPLACEMENT CHARACTER`.

This change also makes the `std::ffi::os_str` module public (see rust-lang/libs-team#326 (comment)).

- ACP: rust-lang/libs-team#326
- Tracking issue: rust-lang#120048
bors added a commit to rust-lang-ci/rust that referenced this pull request Feb 27, 2024
…iaskrgr

Rollup of 10 pull requests

Successful merges:

 - rust-lang#120051 (Add `display` method to `OsStr`)
 - rust-lang#121226 (Fix issues in suggesting importing extern crate paths)
 - rust-lang#121527 (unix_sigpipe: Simple fixes and improvements in tests)
 - rust-lang#121572 (Add test case for primitive links in alias js)
 - rust-lang#121661 (Changing some attributes to only_local.)
 - rust-lang#121680 (Fix link generation for foreign macro in jump to definition feature)
 - rust-lang#121686 (Adjust printing for RPITITs)
 - rust-lang#121689 ([rustdoc] Prevent inclusion of whitespace character after macro_rules ident)
 - rust-lang#121695 (Split rustc_type_ir to avoid rustc_ast from depending on it)
 - rust-lang#121698 (CFI: Fix typo in test file names)

Failed merges:

 - rust-lang#121423 (Remove the `UntranslatableDiagnosticTrivial` lint.)

r? `@ghost`
`@rustbot` modify labels: rollup
GuillaumeGomez added a commit to GuillaumeGomez/rust that referenced this pull request Feb 28, 2024
Add `display` method to `OsStr`

Add `display` method to `OsStr` for lossy display of an `OsStr` which may contain invalid unicode.

Invalid Unicode sequences are replaced with `U+FFFD REPLACEMENT CHARACTER`.

This change also makes the `std::ffi::os_str` module public (see rust-lang/libs-team#326 (comment)).

- ACP: rust-lang/libs-team#326
- Tracking issue: rust-lang#120048
bors added a commit to rust-lang-ci/rust that referenced this pull request Feb 28, 2024
…llaumeGomez

Rollup of 13 pull requests

Successful merges:

 - rust-lang#120051 (Add `display` method to `OsStr`)
 - rust-lang#121226 (Fix issues in suggesting importing extern crate paths)
 - rust-lang#121423 (Remove the `UntranslatableDiagnosticTrivial` lint.)
 - rust-lang#121527 (unix_sigpipe: Simple fixes and improvements in tests)
 - rust-lang#121572 (Add test case for primitive links in alias js)
 - rust-lang#121661 (Changing some attributes to only_local.)
 - rust-lang#121680 (Fix link generation for foreign macro in jump to definition feature)
 - rust-lang#121686 (Adjust printing for RPITITs)
 - rust-lang#121689 ([rustdoc] Prevent inclusion of whitespace character after macro_rules ident)
 - rust-lang#121691 (handle unavailable creation time as `io::ErrorKind::Unsupported`)
 - rust-lang#121695 (Split rustc_type_ir to avoid rustc_ast from depending on it)
 - rust-lang#121698 (CFI: Fix typo in test file names)
 - rust-lang#121702 (Process alias-relate obligations in CoerceUnsized loop)

r? `@ghost`
`@rustbot` modify labels: rollup
bors added a commit to rust-lang-ci/rust that referenced this pull request Feb 28, 2024
…llaumeGomez

Rollup of 12 pull requests

Successful merges:

 - rust-lang#120051 (Add `display` method to `OsStr`)
 - rust-lang#121226 (Fix issues in suggesting importing extern crate paths)
 - rust-lang#121423 (Remove the `UntranslatableDiagnosticTrivial` lint.)
 - rust-lang#121527 (unix_sigpipe: Simple fixes and improvements in tests)
 - rust-lang#121572 (Add test case for primitive links in alias js)
 - rust-lang#121661 (Changing some attributes to only_local.)
 - rust-lang#121680 (Fix link generation for foreign macro in jump to definition feature)
 - rust-lang#121686 (Adjust printing for RPITITs)
 - rust-lang#121691 (handle unavailable creation time as `io::ErrorKind::Unsupported`)
 - rust-lang#121695 (Split rustc_type_ir to avoid rustc_ast from depending on it)
 - rust-lang#121698 (CFI: Fix typo in test file names)
 - rust-lang#121702 (Process alias-relate obligations in CoerceUnsized loop)

r? `@ghost`
`@rustbot` modify labels: rollup
@bors bors merged commit d840408 into rust-lang:master Feb 28, 2024
@rustbot rustbot added this to the 1.78.0 milestone Feb 28, 2024
rust-timer added a commit to rust-lang-ci/rust that referenced this pull request Feb 28, 2024
Rollup merge of rust-lang#120051 - riverbl:os-str-display, r=m-ou-se

Add `display` method to `OsStr`

Add `display` method to `OsStr` for lossy display of an `OsStr` which may contain invalid unicode.

Invalid Unicode sequences are replaced with `U+FFFD REPLACEMENT CHARACTER`.

This change also makes the `std::ffi::os_str` module public (see rust-lang/libs-team#326 (comment)).

- ACP: rust-lang/libs-team#326
- Tracking issue: rust-lang#120048
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. T-libs Relevant to the library team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants