gecko-dev/third_party/rust/os_str_bytes
Mike Hommey 29c3f32ae6 Bug 1751342 - Upgrade geckodriver to clap 3. r=webdriver-reviewers,jgraham
Differential Revision: https://phabricator.services.mozilla.com/D136569
2022-01-22 21:45:34 +00:00
..
src Bug 1751342 - Upgrade geckodriver to clap 3. r=webdriver-reviewers,jgraham 2022-01-22 21:45:34 +00:00
.cargo-checksum.json Bug 1751342 - Upgrade geckodriver to clap 3. r=webdriver-reviewers,jgraham 2022-01-22 21:45:34 +00:00
COPYRIGHT Bug 1751342 - Upgrade geckodriver to clap 3. r=webdriver-reviewers,jgraham 2022-01-22 21:45:34 +00:00
Cargo.toml Bug 1751342 - Upgrade geckodriver to clap 3. r=webdriver-reviewers,jgraham 2022-01-22 21:45:34 +00:00
LICENSE-APACHE Bug 1751342 - Upgrade geckodriver to clap 3. r=webdriver-reviewers,jgraham 2022-01-22 21:45:34 +00:00
LICENSE-MIT Bug 1751342 - Upgrade geckodriver to clap 3. r=webdriver-reviewers,jgraham 2022-01-22 21:45:34 +00:00
README.md Bug 1751342 - Upgrade geckodriver to clap 3. r=webdriver-reviewers,jgraham 2022-01-22 21:45:34 +00:00

README.md

OsStr Bytes

This crate allows interacting with the data stored by OsStr and OsString, without resorting to panics or corruption for invalid UTF-8. Thus, methods can be used that are already defined on [u8] and Vec<u8>.

Typically, the only way to losslessly construct OsStr or OsString from a byte sequence is to use OsStr::new(str::from_utf8(bytes)?), which requires the bytes to be valid in UTF-8. However, since this crate makes conversions directly between the platform encoding and raw bytes, even some strings invalid in UTF-8 can be converted.

GitHub Build Status

Usage

Add the following lines to your "Cargo.toml" file:

[dependencies]
os_str_bytes = "6.0"

See the documentation for available functionality and examples.

Rust version support

The minimum supported Rust toolchain version depends on the platform:

Target Target Triple Minimum Version
Fortanix *-fortanix-*-sgx nightly (sgx_platform)
Unix Unix 1.52.0
WASI *-wasi 1.52.0
WebAssembly wasm32-*-unknown 1.52.0
Windows *-windows-* 1.52.0

Minor version updates may increase these version requirements. However, the previous two Rust releases will always be supported. If the minimum Rust version must not be increased, use a tilde requirement to prevent updating this crate's minor version:

[dependencies]
os_str_bytes = "~6.0"

License

Licensing terms are specified in COPYRIGHT.

Unless you explicitly state otherwise, any contribution submitted for inclusion in this crate, as defined in LICENSE-APACHE, shall be licensed according to COPYRIGHT, without any additional terms or conditions.