Refactor: Mv `OsStr`/`OsStrExt` to core, `OsString`/`OsStringExt` to alloc
For rust-lang/libs-team#399
r? @Mark-Simulacrum
rustbot has assigned @Mark-Simulacrum. They will have a look at your PR within the next two weeks and either review your PR or reassign to another reviewer.
Use r? to explicitly pick a reviewer
The job mingw-check failed! Check out the build log: (web) (plain)
Click to see the possible cause of the failure (guessed by this bot)
#16 2.778 Building wheels for collected packages: reuse
#16 2.779 Building wheel for reuse (pyproject.toml): started
#16 3.035 Building wheel for reuse (pyproject.toml): finished with status 'done'
#16 3.036 Created wheel for reuse: filename=reuse-4.0.3-cp310-cp310-manylinux_2_35_x86_64.whl size=132715 sha256=dfa09868353292d98f811d3efdb0d54d07389e808efc71d68e3b93c514bf8bec
#16 3.037 Stored in directory: /tmp/pip-ephem-wheel-cache-8l_1lkk7/wheels/3d/8d/0a/e0fc6aba4494b28a967ab5eaf951c121d9c677958714e34532
#16 3.039 Installing collected packages: boolean-py, binaryornot, tomlkit, reuse, python-debian, markupsafe, license-expression, jinja2, chardet, attrs
#16 3.465 Successfully installed attrs-23.2.0 binaryornot-0.4.4 boolean-py-4.0 chardet-5.2.0 jinja2-3.1.4 license-expression-30.3.0 markupsafe-2.1.5 python-debian-0.1.49 reuse-4.0.3 tomlkit-0.13.0
#16 3.466 WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
#16 DONE 3.6s
---
Compiling std v0.0.0 (/checkout/library/std)
error: unused import: `encode_utf8_raw`
--> core/src/ffi/wtf8.rs:18:37
|
18 | use crate::char::{encode_utf16_raw, encode_utf8_raw};
|
= note: `-D unused-imports` implied by `-D warnings`
= help: to override `-D warnings` add `#[allow(unused_imports)]`
---
|
76 | impl OsStr {
| ---------- associated function in this implementation
...
144 | fn from_inner_mut(inner: &mut Slice) -> &mut OsStr {
|
= note: `-D dead-code` implied by `-D warnings`
= help: to override `-D warnings` add `#[allow(dead_code)]`
---
error: missing documentation for a method
--> core/src/ffi/os_str/bytes.rs:66:5
|
66 | pub fn as_encoded_bytes(&self) -> &[u8] {
error: missing documentation for an associated function
--> core/src/ffi/os_str/bytes.rs:76:5
|
|
76 | pub unsafe fn from_encoded_bytes_unchecked(s: &[u8]) -> &Slice {
error: missing documentation for a method
--> core/src/ffi/os_str/bytes.rs:88:5
|
|
88 | pub fn check_public_boundary(&self, index: usize) {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
error: missing documentation for an associated function
--> core/src/ffi/os_str/bytes.rs:135:5
|
135 | pub fn from_str(s: &str) -> &Slice {
error: missing documentation for a method
--> core/src/ffi/os_str/bytes.rs:145:5
|
---
|
185 | pub fn eq_ignore_ascii_case(&self, other: &Self) -> bool {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
error: type does not implement `fmt::Debug`; consider adding `#[derive(Debug)]` or a manual implementation
--> core/src/ffi/wtf8.rs:500:1
|
500 | / pub struct Wtf8CodePoints<'a> {
501 | | bytes: slice::Iter<'a, u8>,
| |_^
|
= note: `-D missing-debug-implementations` implied by `-D warnings`
= help: to override `-D warnings` add `#[allow(missing_debug_implementations)]`
= help: to override `-D warnings` add `#[allow(missing_debug_implementations)]`
error: type does not implement `fmt::Debug`; consider adding `#[derive(Debug)]` or a manual implementation
--> core/src/ffi/wtf8.rs:523:1
523 | / pub struct EncodeWide<'a> {
523 | / pub struct EncodeWide<'a> {
524 | | code_points: Wtf8CodePoints<'a>,
525 | | extra: u16,
| |_^
error: could not compile `core` (lib) due to 17 previous errors
Build completed unsuccessfully in 0:00:25
The job mingw-check failed! Check out the build log: (web) (plain)
Click to see the possible cause of the failure (guessed by this bot)
#16 2.716 Building wheels for collected packages: reuse
#16 2.717 Building wheel for reuse (pyproject.toml): started
#16 2.975 Building wheel for reuse (pyproject.toml): finished with status 'done'
#16 2.976 Created wheel for reuse: filename=reuse-4.0.3-cp310-cp310-manylinux_2_35_x86_64.whl size=132715 sha256=dfa09868353292d98f811d3efdb0d54d07389e808efc71d68e3b93c514bf8bec
#16 2.976 Stored in directory: /tmp/pip-ephem-wheel-cache-ezkbih3x/wheels/3d/8d/0a/e0fc6aba4494b28a967ab5eaf951c121d9c677958714e34532
#16 2.979 Installing collected packages: boolean-py, binaryornot, tomlkit, reuse, python-debian, markupsafe, license-expression, jinja2, chardet, attrs
#16 3.367 Successfully installed attrs-23.2.0 binaryornot-0.4.4 boolean-py-4.0 chardet-5.2.0 jinja2-3.1.4 license-expression-30.3.0 markupsafe-2.1.5 python-debian-0.1.49 reuse-4.0.3 tomlkit-0.13.0
#16 3.367 WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
#16 DONE 3.5s
---
Compiling std v0.0.0 (/checkout/library/std)
error: missing documentation for an associated function
--> core/src/ffi/os_str.rs:148:5
|
148 | pub fn from_inner_mut(inner: &mut Slice) -> &mut OsStr {
|
= note: `-D missing-docs` implied by `-D warnings`
= help: to override `-D warnings` add `#[allow(missing_docs)]`
:umbrella: The latest upstream changes (presumably #129443) made this pull request unmergeable. Please resolve the merge conflicts.
Thanks so much for working on this, this is going to make working on backtrace so much more tolerable.
The job mingw-check failed! Check out the build log: (web) (plain)
Click to see the possible cause of the failure (guessed by this bot)
#16 2.693 Building wheels for collected packages: reuse
#16 2.694 Building wheel for reuse (pyproject.toml): started
#16 2.942 Building wheel for reuse (pyproject.toml): finished with status 'done'
#16 2.943 Created wheel for reuse: filename=reuse-4.0.3-cp310-cp310-manylinux_2_35_x86_64.whl size=132715 sha256=dfa09868353292d98f811d3efdb0d54d07389e808efc71d68e3b93c514bf8bec
#16 2.943 Stored in directory: /tmp/pip-ephem-wheel-cache-xdxqtsvr/wheels/3d/8d/0a/e0fc6aba4494b28a967ab5eaf951c121d9c677958714e34532
#16 2.945 Installing collected packages: boolean-py, binaryornot, tomlkit, reuse, python-debian, markupsafe, license-expression, jinja2, chardet, attrs
#16 3.364 Successfully installed attrs-23.2.0 binaryornot-0.4.4 boolean-py-4.0 chardet-5.2.0 jinja2-3.1.4 license-expression-30.3.0 markupsafe-2.1.5 python-debian-0.1.49 reuse-4.0.3 tomlkit-0.13.0
#16 3.364 WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
#16 DONE 3.4s
---
Checking cfg-if v1.0.0
Checking adler v1.0.2
Checking unwind v0.0.0 (/checkout/library/unwind)
Checking rustc-demangle v0.1.24
error: lifetime parameter `'a` never used
|
1037 | / macro_rules! impl_cmp {
1037 | / macro_rules! impl_cmp {
1038 | | ($lhs:ty, $rhs: ty) => {
1039 | | #[allow(unused_lifetimes)]
1040 | | #[stable(feature = "cmp_os_str", since = "1.8.0")]
... |
1049 | | impl<'a, 'b> PartialEq<$lhs> for $rhs {
| | ^^--
| | help: elide the unused lifetime
... |
1071 | | };
1072 | | }
1072 | | }
| |_- in this expansion of `impl_cmp!`
1073 |
1074 | impl_cmp!(OsString, OsStr);
|
= note: `-D unused-lifetimes` implied by `-D warnings`
= help: to override `-D warnings` add `#[allow(unused_lifetimes)]`
error: lifetime parameter `'b` never used
|
1037 | / macro_rules! impl_cmp {
1037 | / macro_rules! impl_cmp {
1038 | | ($lhs:ty, $rhs: ty) => {
1039 | | #[allow(unused_lifetimes)]
1040 | | #[stable(feature = "cmp_os_str", since = "1.8.0")]
... |
1049 | | impl<'a, 'b> PartialEq<$lhs> for $rhs {
| | --^^
| | help: elide the unused lifetime
... |
1071 | | };
1072 | | }
1072 | | }
| |_- in this expansion of `impl_cmp!`
1073 |
1074 | impl_cmp!(OsString, OsStr);
error: lifetime parameter `'a` never used
|
1037 | / macro_rules! impl_cmp {
1037 | / macro_rules! impl_cmp {
1038 | | ($lhs:ty, $rhs: ty) => {
1039 | | #[allow(unused_lifetimes)]
1040 | | #[stable(feature = "cmp_os_str", since = "1.8.0")]
... |
1057 | | impl<'a, 'b> PartialOrd<$rhs> for $lhs {
| | ^^--
| | help: elide the unused lifetime
... |
1071 | | };
1072 | | }
1072 | | }
| |_- in this expansion of `impl_cmp!`
1073 |
1074 | impl_cmp!(OsString, OsStr);
error: lifetime parameter `'b` never used
|
1037 | / macro_rules! impl_cmp {
1037 | / macro_rules! impl_cmp {
1038 | | ($lhs:ty, $rhs: ty) => {
1039 | | #[allow(unused_lifetimes)]
1040 | | #[stable(feature = "cmp_os_str", since = "1.8.0")]
... |
1057 | | impl<'a, 'b> PartialOrd<$rhs> for $lhs {
| | --^^
| | help: elide the unused lifetime
... |
1071 | | };
1072 | | }
1072 | | }
| |_- in this expansion of `impl_cmp!`
1073 |
1074 | impl_cmp!(OsString, OsStr);
error: lifetime parameter `'a` never used
|
1037 | / macro_rules! impl_cmp {
1037 | / macro_rules! impl_cmp {
1038 | | ($lhs:ty, $rhs: ty) => {
1039 | | #[allow(unused_lifetimes)]
1040 | | #[stable(feature = "cmp_os_str", since = "1.8.0")]
... |
1065 | | impl<'a, 'b> PartialOrd<$lhs> for $rhs {
| | ^^--
| | help: elide the unused lifetime
... |
1071 | | };
1072 | | }
1072 | | }
| |_- in this expansion of `impl_cmp!`
1073 |
1074 | impl_cmp!(OsString, OsStr);
error: lifetime parameter `'b` never used
|
1037 | / macro_rules! impl_cmp {
1037 | / macro_rules! impl_cmp {
1038 | | ($lhs:ty, $rhs: ty) => {
1039 | | #[allow(unused_lifetimes)]
1040 | | #[stable(feature = "cmp_os_str", since = "1.8.0")]
... |
1065 | | impl<'a, 'b> PartialOrd<$lhs> for $rhs {
| | --^^
| | help: elide the unused lifetime
... |
1071 | | };
1072 | | }
1072 | | }
| |_- in this expansion of `impl_cmp!`
1073 |
1074 | impl_cmp!(OsString, OsStr);
error: lifetime parameter `'b` never used
|
1037 | / macro_rules! impl_cmp {
1037 | / macro_rules! impl_cmp {
1038 | | ($lhs:ty, $rhs: ty) => {
1039 | | #[allow(unused_lifetimes)]
1040 | | #[stable(feature = "cmp_os_str", since = "1.8.0")]
... |
1049 | | impl<'a, 'b> PartialEq<$lhs> for $rhs {
| | --^^
| | help: elide the unused lifetime
... |
1071 | | };
1072 | | }
1072 | | }
| |_- in this expansion of `impl_cmp!`
...
1075 | impl_cmp!(OsString, &'a OsStr);
error: lifetime parameter `'b` never used
|
1037 | / macro_rules! impl_cmp {
1037 | / macro_rules! impl_cmp {
1038 | | ($lhs:ty, $rhs: ty) => {
1039 | | #[allow(unused_lifetimes)]
1040 | | #[stable(feature = "cmp_os_str", since = "1.8.0")]
... |
1057 | | impl<'a, 'b> PartialOrd<$rhs> for $lhs {
| | --^^
| | help: elide the unused lifetime
... |
1071 | | };
1072 | | }
1072 | | }
| |_- in this expansion of `impl_cmp!`
...
1075 | impl_cmp!(OsString, &'a OsStr);
error: lifetime parameter `'b` never used
|
1037 | / macro_rules! impl_cmp {
1037 | / macro_rules! impl_cmp {
1038 | | ($lhs:ty, $rhs: ty) => {
1039 | | #[allow(unused_lifetimes)]
1040 | | #[stable(feature = "cmp_os_str", since = "1.8.0")]
... |
1065 | | impl<'a, 'b> PartialOrd<$lhs> for $rhs {
| | --^^
| | help: elide the unused lifetime
... |
1071 | | };
1072 | | }
1072 | | }
| |_- in this expansion of `impl_cmp!`
...
1075 | impl_cmp!(OsString, &'a OsStr);
error: lifetime parameter `'b` never used
|
1037 | / macro_rules! impl_cmp {
1037 | / macro_rules! impl_cmp {
1038 | | ($lhs:ty, $rhs: ty) => {
1039 | | #[allow(unused_lifetimes)]
1040 | | #[stable(feature = "cmp_os_str", since = "1.8.0")]
... |
1049 | | impl<'a, 'b> PartialEq<$lhs> for $rhs {
| | --^^
| | help: elide the unused lifetime
... |
1071 | | };
1072 | | }
1072 | | }
| |_- in this expansion of `impl_cmp!`
...
1076 | impl_cmp!(Cow<'a, OsStr>, OsStr);
error: lifetime parameter `'b` never used
|
1037 | / macro_rules! impl_cmp {
1037 | / macro_rules! impl_cmp {
1038 | | ($lhs:ty, $rhs: ty) => {
1039 | | #[allow(unused_lifetimes)]
1040 | | #[stable(feature = "cmp_os_str", since = "1.8.0")]
... |
1057 | | impl<'a, 'b> PartialOrd<$rhs> for $lhs {
| | --^^
| | help: elide the unused lifetime
... |
1071 | | };
1072 | | }
1072 | | }
| |_- in this expansion of `impl_cmp!`
...
1076 | impl_cmp!(Cow<'a, OsStr>, OsStr);
error: lifetime parameter `'b` never used
|
1037 | / macro_rules! impl_cmp {
1037 | / macro_rules! impl_cmp {
1038 | | ($lhs:ty, $rhs: ty) => {
1039 | | #[allow(unused_lifetimes)]
1040 | | #[stable(feature = "cmp_os_str", since = "1.8.0")]
... |
1065 | | impl<'a, 'b> PartialOrd<$lhs> for $rhs {
| | --^^
| | help: elide the unused lifetime
... |
1071 | | };
1072 | | }
1072 | | }
| |_- in this expansion of `impl_cmp!`
...
1076 | impl_cmp!(Cow<'a, OsStr>, OsStr);
error: lifetime parameter `'b` never used
|
1037 | / macro_rules! impl_cmp {
1037 | / macro_rules! impl_cmp {
1038 | | ($lhs:ty, $rhs: ty) => {
1039 | | #[allow(unused_lifetimes)]
1040 | | #[stable(feature = "cmp_os_str", since = "1.8.0")]
... |
1049 | | impl<'a, 'b> PartialEq<$lhs> for $rhs {
| | --^^
| | help: elide the unused lifetime
... |
1071 | | };
1072 | | }
1072 | | }
| |_- in this expansion of `impl_cmp!`
...
1078 | impl_cmp!(Cow<'a, OsStr>, OsString);
error: lifetime parameter `'b` never used
|
1037 | / macro_rules! impl_cmp {
1037 | / macro_rules! impl_cmp {
1038 | | ($lhs:ty, $rhs: ty) => {
1039 | | #[allow(unused_lifetimes)]
1040 | | #[stable(feature = "cmp_os_str", since = "1.8.0")]
... |
1057 | | impl<'a, 'b> PartialOrd<$rhs> for $lhs {
| | --^^
| | help: elide the unused lifetime
... |
1071 | | };
1072 | | }
1072 | | }
| |_- in this expansion of `impl_cmp!`
...
1078 | impl_cmp!(Cow<'a, OsStr>, OsString);
error: lifetime parameter `'b` never used
|
1037 | / macro_rules! impl_cmp {
1037 | / macro_rules! impl_cmp {
1038 | | ($lhs:ty, $rhs: ty) => {
1039 | | #[allow(unused_lifetimes)]
1040 | | #[stable(feature = "cmp_os_str", since = "1.8.0")]
... |
1065 | | impl<'a, 'b> PartialOrd<$lhs> for $rhs {
| | --^^
| | help: elide the unused lifetime
... |
1071 | | };
1072 | | }
1072 | | }
| |_- in this expansion of `impl_cmp!`
...
1078 | impl_cmp!(Cow<'a, OsStr>, OsString);
error[E0599]: no method named `clone_into` found for slice `[u8]` in the current scope
--> alloc/src/ffi/os_str/bytes.rs:364:20
|
|
364 | self.inner.clone_into(&mut buf.inner)
| ^^^^^^^^^^ method not found in `[u8]`
= help: items from traits can only be used if the trait is in scope
help: the following traits which provide `clone_into` are implemented but not in scope; perhaps you want to import one of them
|
7 + use crate::borrow::ToOwned;
7 + use crate::borrow::ToOwned;
|
7 + use crate::slice::SpecCloneIntoVec;
|
error[E0616]: field `inner` of struct `OsStr` is private
--> alloc/src/ffi/os_str.rs:270:43
|
270 | self.inner.push_slice(&s.as_ref().inner)
error[E0599]: no function or associated item named `from_inner` found for struct `OsString` in the current scope
--> alloc/src/ffi/os_str.rs:601:19
|
---
|
151 | pub fn new() -> OsString {
| ^^^^^^^^^^^^^^^^^^^^^^^^
...
194 | pub unsafe fn from_encoded_bytes_unchecked(bytes: Vec<u8>) -> Self {
...
...
298 | pub fn with_capacity(capacity: usize) -> OsString {
help: there is an associated function `from_iter` with a similar name
|
601 | OsString::from_iter(self.inner.to_ascii_uppercase())
| ~~~~~~~~~
---
|
151 | pub fn new() -> OsString {
| ^^^^^^^^^^^^^^^^^^^^^^^^
...
194 | pub unsafe fn from_encoded_bytes_unchecked(bytes: Vec<u8>) -> Self {
...
...
298 | pub fn with_capacity(capacity: usize) -> OsString {
help: there is an associated function `from_iter` with a similar name
|
624 | OsString::from_iter(self.inner.to_ascii_lowercase())
| ~~~~~~~~~
---
| ^^^^^^^^^^ private associated function
|
::: /checkout/library/core/src/ffi/os_str.rs:137:5
|
137 | fn from_inner(inner: &Slice) -> &OsStr {
error[E0616]: field `inner` of struct `OsStr` is private
--> alloc/src/ffi/os_str.rs:904:34
|
|
904 | let rw = Box::into_raw(s.inner.into_box()) as *mut OsStr;
error[E0616]: field `inner` of struct `OsStr` is private
--> alloc/src/ffi/os_str.rs:965:21
|
|
965 | let arc = s.inner.into_arc();
error[E0616]: field `inner` of struct `OsStr` is private
--> alloc/src/ffi/os_str.rs:986:20
|
|
986 | let rc = s.inner.into_rc();
error[E0616]: field `inner` of struct `OsStr` is private
--> alloc/src/ffi/os_str.rs:1114:14
|
|
1114 | self.inner.clone_into(&mut target.inner)
| ^^^^^ private field
error[E0616]: field `value` of struct `core::ffi::wtf8::CodePoint` is private
--> alloc/src/ffi/wtf8.rs:190:48
|
190 | let bytes = encode_utf8_raw(code_point.value, &mut bytes);
error[E0624]: associated function `from_mut_bytes_unchecked` is private
--> alloc/src/ffi/wtf8.rs:204:24
|
|
204 | unsafe { Wtf8::from_mut_bytes_unchecked(&mut self.bytes) }
|
::: /checkout/library/core/src/ffi/wtf8.rs:224:5
|
|
224 | unsafe fn from_mut_bytes_unchecked(value: &mut [u8]) -> &mut Wtf8 {
error[E0624]: associated function `from_mut_bytes_unchecked` is private
--> alloc/src/ffi/wtf8.rs:303:24
|
|
303 | unsafe { Wtf8::from_mut_bytes_unchecked(self.bytes.leak()) }
|
::: /checkout/library/core/src/ffi/wtf8.rs:224:5
|
|
224 | unsafe fn from_mut_bytes_unchecked(value: &mut [u8]) -> &mut Wtf8 {
error[E0624]: method `final_lead_surrogate` is private
--> alloc/src/ffi/wtf8.rs:340:25
|
|
340 | match ((&*self).final_lead_surrogate(), other.initial_trail_surrogate()) {
|
::: /checkout/library/core/src/ffi/wtf8.rs:318:5
|
318 | fn final_lead_surrogate(&self) -> Option<u16> {
318 | fn final_lead_surrogate(&self) -> Option<u16> {
| --------------------------------------------- private method defined here
error[E0624]: method `initial_trail_surrogate` is private
--> alloc/src/ffi/wtf8.rs:340:55
|
340 | match ((&*self).final_lead_surrogate(), other.initial_trail_surrogate()) {
|
::: /checkout/library/core/src/ffi/wtf8.rs:326:5
|
326 | fn initial_trail_surrogate(&self) -> Option<u16> {
326 | fn initial_trail_surrogate(&self) -> Option<u16> {
| ------------------------------------------------ private method defined here
error[E0616]: field `bytes` of struct `core::ffi::wtf8::Wtf8` is private
--> alloc/src/ffi/wtf8.rs:345:60
|
345 | let other_without_trail_surrogate = &other.bytes[3..];
error[E0624]: method `next_surrogate` is private
--> alloc/src/ffi/wtf8.rs:354:26
|
|
354 | if other.next_surrogate(0).is_some() {
|
::: /checkout/library/core/src/ffi/wtf8.rs:288:5
|
288 | fn next_surrogate(&self, mut pos: usize) -> Option<(usize, u16)> {
288 | fn next_surrogate(&self, mut pos: usize) -> Option<(usize, u16)> {
| ---------------------------------------------------------------- private method defined here
error[E0616]: field `bytes` of struct `core::ffi::wtf8::Wtf8` is private
--> alloc/src/ffi/wtf8.rs:358:53
|
358 | self.bytes.extend_from_slice(&other.bytes);
error[E0624]: method `final_lead_surrogate` is private
--> alloc/src/ffi/wtf8.rs:387:42
|
|
387 | if let Some(lead) = (&*self).final_lead_surrogate() {
|
::: /checkout/library/core/src/ffi/wtf8.rs:318:5
|
318 | fn final_lead_surrogate(&self) -> Option<u16> {
318 | fn final_lead_surrogate(&self) -> Option<u16> {
| --------------------------------------------- private method defined here
error[E0624]: method `next_surrogate` is private
--> alloc/src/ffi/wtf8.rs:446:39
|
446 | if self.is_known_utf8 || self.next_surrogate(0).is_none() {
|
::: /checkout/library/core/src/ffi/wtf8.rs:288:5
|
288 | fn next_surrogate(&self, mut pos: usize) -> Option<(usize, u16)> {
288 | fn next_surrogate(&self, mut pos: usize) -> Option<(usize, u16)> {
| ---------------------------------------------------------------- private method defined here
error[E0624]: method `next_surrogate` is private
--> alloc/src/ffi/wtf8.rs:471:24
|
471 | match self.next_surrogate(pos) {
|
::: /checkout/library/core/src/ffi/wtf8.rs:288:5
|
288 | fn next_surrogate(&self, mut pos: usize) -> Option<(usize, u16)> {
288 | fn next_surrogate(&self, mut pos: usize) -> Option<(usize, u16)> {
| ---------------------------------------------------------------- private method defined here
error[E0616]: field `bytes` of struct `core::ffi::wtf8::Wtf8` is private
--> alloc/src/ffi/wtf8.rs:576:31
|
576 | Wtf8Buf { bytes: self.bytes.to_vec(), is_known_utf8: false }
error[E0624]: method `next_surrogate` is private
--> alloc/src/ffi/wtf8.rs:592:40
|
---
|
288 | fn next_surrogate(&self, mut pos: usize) -> Option<(usize, u16)> {
| ---------------------------------------------------------------- private method defined here
error[E0616]: field `bytes` of struct `core::ffi::wtf8::Wtf8` is private
--> alloc/src/ffi/wtf8.rs:593:82
|
593 | None => return Cow::Borrowed(unsafe { str::from_utf8_unchecked(&self.bytes) }),
error[E0616]: field `bytes` of struct `core::ffi::wtf8::Wtf8` is private
--> alloc/src/ffi/wtf8.rs:596:32
|
596 | let wtf8_bytes = &self.bytes;
error[E0624]: method `next_surrogate` is private
--> alloc/src/ffi/wtf8.rs:602:24
|
|
602 | match self.next_surrogate(pos) {
|
::: /checkout/library/core/src/ffi/wtf8.rs:288:5
|
288 | fn next_surrogate(&self, mut pos: usize) -> Option<(usize, u16)> {
288 | fn next_surrogate(&self, mut pos: usize) -> Option<(usize, u16)> {
| ---------------------------------------------------------------- private method defined here
error[E0616]: field `bytes` of struct `core::ffi::wtf8::Wtf8` is private
--> alloc/src/ffi/wtf8.rs:624:14
|
624 | self.bytes.clone_into(&mut buf.bytes);
error[E0616]: field `bytes` of struct `core::ffi::wtf8::Wtf8` is private
--> alloc/src/ffi/wtf8.rs:636:37
|
636 | let boxed: Box<[u8]> = self.bytes.into();
error[E0616]: field `bytes` of struct `core::ffi::wtf8::Wtf8` is private
--> alloc/src/ffi/wtf8.rs:660:46
|
660 | let arc: Arc<[u8]> = Arc::from(&self.bytes);
error[E0616]: field `bytes` of struct `core::ffi::wtf8::Wtf8` is private
--> alloc/src/ffi/wtf8.rs:672:43
|
672 | let rc: Rc<[u8]> = Rc::from(&self.bytes);
error[E0616]: field `bytes` of struct `core::ffi::wtf8::Wtf8` is private
--> alloc/src/ffi/wtf8.rs:684:31
|
684 | Wtf8Buf { bytes: self.bytes.to_ascii_lowercase(), is_known_utf8: false }
error[E0616]: field `bytes` of struct `core::ffi::wtf8::Wtf8` is private
--> alloc/src/ffi/wtf8.rs:695:31
|
695 | Wtf8Buf { bytes: self.bytes.to_ascii_uppercase(), is_known_utf8: false }
error: unused import: `Hash`
--> alloc/src/ffi/wtf8.rs:27:18
|
The job mingw-check failed! Check out the build log: (web) (plain)
Click to see the possible cause of the failure (guessed by this bot)
#16 3.113 Building wheels for collected packages: reuse
#16 3.114 Building wheel for reuse (pyproject.toml): started
#16 3.364 Building wheel for reuse (pyproject.toml): finished with status 'done'
#16 3.365 Created wheel for reuse: filename=reuse-4.0.3-cp310-cp310-manylinux_2_35_x86_64.whl size=132715 sha256=dfa09868353292d98f811d3efdb0d54d07389e808efc71d68e3b93c514bf8bec
#16 3.365 Stored in directory: /tmp/pip-ephem-wheel-cache-o22qb73r/wheels/3d/8d/0a/e0fc6aba4494b28a967ab5eaf951c121d9c677958714e34532
#16 3.367 Installing collected packages: boolean-py, binaryornot, tomlkit, reuse, python-debian, markupsafe, license-expression, jinja2, chardet, attrs
#16 3.785 Successfully installed attrs-23.2.0 binaryornot-0.4.4 boolean-py-4.0 chardet-5.2.0 jinja2-3.1.4 license-expression-30.3.0 markupsafe-2.1.5 python-debian-0.1.49 reuse-4.0.3 tomlkit-0.13.0
#16 3.785 WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
#16 DONE 3.9s
---
Checking addr2line v0.22.0
error[E0252]: the name `OsStrExt` is defined multiple times
--> std/src/os/unix/net/addr.rs:6:5
|
1 | use core::ffi::os_str::os_str_ext_unix::OsStrExt;
| -------------------------------------------- previous import of the trait `OsStrExt` here
6 | use crate::os::unix::ffi::OsStrExt;
6 | use crate::os::unix::ffi::OsStrExt;
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `OsStrExt` reimported here
|
= note: `OsStrExt` must be defined only once in the type namespace of this module
error: unused import: `crate::os::unix::ffi::OsStrExt`
--> std/src/os/unix/net/addr.rs:6:5
|
6 | use crate::os::unix::ffi::OsStrExt;
---
error[E0117]: only traits defined in the current crate can be implemented for types defined outside of the crate
--> std/src/path.rs:3382:9
|
3379 | / macro_rules! impl_cmp_os_str {
3380 | | (<$($life:lifetime),*> $lhs:ty, $rhs: ty) => {
3381 | | #[stable(feature = "cmp_path", since = "1.8.0")]
3382 | | impl<$($life),*> PartialEq<$rhs> for $lhs {
| | | |
| | | |
| | | `OsStr` is not defined in the current crate
| | impl doesn't use only types from inside the current crate
3412 | | };
3413 | | }
| |_- in this expansion of `impl_cmp_os_str!`
...
...
3426 | impl_cmp_os_str!(<'a> Cow<'a, Path>, OsStr);
| | |
| | `Cow` is not defined in the current crate
| in this macro invocation
|
|
= note: define and implement a trait or new type instead
error[E0117]: only traits defined in the current crate can be implemented for types defined outside of the crate
--> std/src/path.rs:3390:9
|
3379 | / macro_rules! impl_cmp_os_str {
3380 | | (<$($life:lifetime),*> $lhs:ty, $rhs: ty) => {
3381 | | #[stable(feature = "cmp_path", since = "1.8.0")]
3382 | | impl<$($life),*> PartialEq<$rhs> for $lhs {
... |
3390 | | impl<$($life),*> PartialEq<$lhs> for $rhs {
| | | |
| | | `Cow` is not defined in the current crate
| | impl doesn't use only types from inside the current crate
... |
... |
3412 | | };
3413 | | }
| |_- in this expansion of `impl_cmp_os_str!`
...
3426 | impl_cmp_os_str!(<'a> Cow<'a, Path>, OsStr);
| | |
| | |
| | `OsStr` is not defined in the current crate
|
= note: define and implement a trait or new type instead
error[E0117]: only traits defined in the current crate can be implemented for types defined outside of the crate
error[E0117]: only traits defined in the current crate can be implemented for types defined outside of the crate
--> std/src/path.rs:3382:9
|
3379 | / macro_rules! impl_cmp_os_str {
3380 | | (<$($life:lifetime),*> $lhs:ty, $rhs: ty) => {
3381 | | #[stable(feature = "cmp_path", since = "1.8.0")]
3382 | | impl<$($life),*> PartialEq<$rhs> for $lhs {
| | | |
| | | |
| | | `OsStr` is not defined in the current crate
| | impl doesn't use only types from inside the current crate
3412 | | };
3413 | | }
| |_- in this expansion of `impl_cmp_os_str!`
...
...
3427 | impl_cmp_os_str!(<'a, 'b> Cow<'a, Path>, &'b OsStr);
| | |
| | `Cow` is not defined in the current crate
| in this macro invocation
|
|
= note: define and implement a trait or new type instead
error[E0117]: only traits defined in the current crate can be implemented for arbitrary types
--> std/src/path.rs:3390:9
|
3379 | / macro_rules! impl_cmp_os_str {
3380 | | (<$($life:lifetime),*> $lhs:ty, $rhs: ty) => {
3381 | | #[stable(feature = "cmp_path", since = "1.8.0")]
3382 | | impl<$($life),*> PartialEq<$rhs> for $lhs {
... |
3390 | | impl<$($life),*> PartialEq<$lhs> for $rhs {
| | | |
| | | `Cow` is not defined in the current crate
| | impl doesn't use only types from inside the current crate
... |
... |
3412 | | };
3413 | | }
| |_- in this expansion of `impl_cmp_os_str!`
...
3427 | impl_cmp_os_str!(<'a, 'b> Cow<'a, Path>, &'b OsStr);
| | |
| | |
| | `OsStr` is not defined in the current crate
|
= note: define and implement a trait or new type instead
error[E0117]: only traits defined in the current crate can be implemented for types defined outside of the crate
error[E0117]: only traits defined in the current crate can be implemented for types defined outside of the crate
--> std/src/path.rs:3382:9
|
3379 | / macro_rules! impl_cmp_os_str {
3380 | | (<$($life:lifetime),*> $lhs:ty, $rhs: ty) => {
3381 | | #[stable(feature = "cmp_path", since = "1.8.0")]
3382 | | impl<$($life),*> PartialEq<$rhs> for $lhs {
| | | |
| | | `OsString` is not defined in the current crate
| | impl doesn't use only types from inside the current crate
... |
... |
3412 | | };
3413 | | }
| |_- in this expansion of `impl_cmp_os_str!`
...
3428 | impl_cmp_os_str!(<'a> Cow<'a, Path>, OsString);
| | |
| | `Cow` is not defined in the current crate
| in this macro invocation
|
|
= note: define and implement a trait or new type instead
error[E0117]: only traits defined in the current crate can be implemented for types defined outside of the crate
--> std/src/path.rs:3390:9
|
3379 | / macro_rules! impl_cmp_os_str {
3380 | | (<$($life:lifetime),*> $lhs:ty, $rhs: ty) => {
3381 | | #[stable(feature = "cmp_path", since = "1.8.0")]
3382 | | impl<$($life),*> PartialEq<$rhs> for $lhs {
... |
3390 | | impl<$($life),*> PartialEq<$lhs> for $rhs {
| | | |
| | | `Cow` is not defined in the current crate
| | impl doesn't use only types from inside the current crate
... |
... |
3412 | | };
3413 | | }
| |_- in this expansion of `impl_cmp_os_str!`
...
3428 | impl_cmp_os_str!(<'a> Cow<'a, Path>, OsString);
| | |
| | |
| | `OsString` is not defined in the current crate
|
= note: define and implement a trait or new type instead
error[E0117]: only traits defined in the current crate can be implemented for types defined outside of the crate
error[E0117]: only traits defined in the current crate can be implemented for types defined outside of the crate
--> std/src/path.rs:3398:9
|
3379 | / macro_rules! impl_cmp_os_str {
3380 | | (<$($life:lifetime),*> $lhs:ty, $rhs: ty) => {
3381 | | #[stable(feature = "cmp_path", since = "1.8.0")]
3382 | | impl<$($life),*> PartialEq<$rhs> for $lhs {
... |
3398 | | impl<$($life),*> PartialOrd<$rhs> for $lhs {
| | | |
| | | |
| | | `OsStr` is not defined in the current crate
| | impl doesn't use only types from inside the current crate
3412 | | };
3413 | | }
| |_- in this expansion of `impl_cmp_os_str!`
...
...
3426 | impl_cmp_os_str!(<'a> Cow<'a, Path>, OsStr);
| | |
| | `Cow` is not defined in the current crate
| in this macro invocation
|
|
= note: define and implement a trait or new type instead
error[E0117]: only traits defined in the current crate can be implemented for types defined outside of the crate
--> std/src/path.rs:3406:9
|
3379 | / macro_rules! impl_cmp_os_str {
3380 | | (<$($life:lifetime),*> $lhs:ty, $rhs: ty) => {
3381 | | #[stable(feature = "cmp_path", since = "1.8.0")]
3382 | | impl<$($life),*> PartialEq<$rhs> for $lhs {
... |
3406 | | impl<$($life),*> PartialOrd<$lhs> for $rhs {
| | | |
| | | `Cow` is not defined in the current crate
| | impl doesn't use only types from inside the current crate
... |
... |
3412 | | };
3413 | | }
| |_- in this expansion of `impl_cmp_os_str!`
...
3426 | impl_cmp_os_str!(<'a> Cow<'a, Path>, OsStr);
| | |
| | |
| | `OsStr` is not defined in the current crate
|
= note: define and implement a trait or new type instead
error[E0117]: only traits defined in the current crate can be implemented for types defined outside of the crate
error[E0117]: only traits defined in the current crate can be implemented for types defined outside of the crate
--> std/src/path.rs:3398:9
|
3379 | / macro_rules! impl_cmp_os_str {
3380 | | (<$($life:lifetime),*> $lhs:ty, $rhs: ty) => {
3381 | | #[stable(feature = "cmp_path", since = "1.8.0")]
3382 | | impl<$($life),*> PartialEq<$rhs> for $lhs {
... |
3398 | | impl<$($life),*> PartialOrd<$rhs> for $lhs {
| | | |
| | | |
| | | `OsStr` is not defined in the current crate
| | impl doesn't use only types from inside the current crate
3412 | | };
3413 | | }
| |_- in this expansion of `impl_cmp_os_str!`
...
...
3427 | impl_cmp_os_str!(<'a, 'b> Cow<'a, Path>, &'b OsStr);
| | |
| | `Cow` is not defined in the current crate
| in this macro invocation
|
|
= note: define and implement a trait or new type instead
error[E0117]: only traits defined in the current crate can be implemented for arbitrary types
--> std/src/path.rs:3406:9
|
3379 | / macro_rules! impl_cmp_os_str {
3380 | | (<$($life:lifetime),*> $lhs:ty, $rhs: ty) => {
3381 | | #[stable(feature = "cmp_path", since = "1.8.0")]
3382 | | impl<$($life),*> PartialEq<$rhs> for $lhs {
... |
3406 | | impl<$($life),*> PartialOrd<$lhs> for $rhs {
| | | |
| | | `Cow` is not defined in the current crate
| | impl doesn't use only types from inside the current crate
... |
... |
3412 | | };
3413 | | }
| |_- in this expansion of `impl_cmp_os_str!`
...
3427 | impl_cmp_os_str!(<'a, 'b> Cow<'a, Path>, &'b OsStr);
| | |
| | |
| | `OsStr` is not defined in the current crate
|
= note: define and implement a trait or new type instead
error[E0117]: only traits defined in the current crate can be implemented for types defined outside of the crate
error[E0117]: only traits defined in the current crate can be implemented for types defined outside of the crate
--> std/src/path.rs:3398:9
|
3379 | / macro_rules! impl_cmp_os_str {
3380 | | (<$($life:lifetime),*> $lhs:ty, $rhs: ty) => {
3381 | | #[stable(feature = "cmp_path", since = "1.8.0")]
3382 | | impl<$($life),*> PartialEq<$rhs> for $lhs {
... |
3398 | | impl<$($life),*> PartialOrd<$rhs> for $lhs {
| | | |
| | | `OsString` is not defined in the current crate
| | impl doesn't use only types from inside the current crate
... |
... |
3412 | | };
3413 | | }
| |_- in this expansion of `impl_cmp_os_str!`
...
3428 | impl_cmp_os_str!(<'a> Cow<'a, Path>, OsString);
| | |
| | `Cow` is not defined in the current crate
| in this macro invocation
|
|
= note: define and implement a trait or new type instead
error[E0117]: only traits defined in the current crate can be implemented for types defined outside of the crate
--> std/src/path.rs:3406:9
|
3379 | / macro_rules! impl_cmp_os_str {
3380 | | (<$($life:lifetime),*> $lhs:ty, $rhs: ty) => {
3381 | | #[stable(feature = "cmp_path", since = "1.8.0")]
3382 | | impl<$($life),*> PartialEq<$rhs> for $lhs {
... |
3406 | | impl<$($life),*> PartialOrd<$lhs> for $rhs {
| | | |
| | | `Cow` is not defined in the current crate
| | impl doesn't use only types from inside the current crate
... |
... |
3412 | | };
3413 | | }
| |_- in this expansion of `impl_cmp_os_str!`
...
3428 | impl_cmp_os_str!(<'a> Cow<'a, Path>, OsString);
| | |
| | |
| | `OsString` is not defined in the current crate
|
= note: define and implement a trait or new type instead
error[E0624]: method `truncate` is private
---
error[E0624]: method `truncate` is private
--> std/src/path.rs:1506:20
|
1506 | self.inner.truncate(end_file_stem.wrapping_sub(start));
|
::: /checkout/library/alloc/src/ffi/os_str.rs:582:5
|
582 | pub(crate) fn truncate(&mut self, len: usize) {
582 | pub(crate) fn truncate(&mut self, len: usize) {
| --------------------------------------------- private method defined here
error[E0624]: method `truncate` is private
--> std/src/path.rs:1576:24
|
1576 | self.inner.truncate(end_file_name.wrapping_sub(start));
|
::: /checkout/library/alloc/src/ffi/os_str.rs:582:5
|
582 | pub(crate) fn truncate(&mut self, len: usize) {
582 | pub(crate) fn truncate(&mut self, len: usize) {
| --------------------------------------------- private method defined here
error[E0624]: method `extend_from_slice` is private
--> std/src/path.rs:2717:24
|
2717 | new_path.inner.extend_from_slice(slice_to_copy);
|
::: /checkout/library/alloc/src/ffi/os_str.rs:591:5
|
|
591 | pub(crate) fn extend_from_slice(&mut self, other: &[u8]) {
| -------------------------------------------------------- private method defined here
Some errors have detailed explanations: E0117, E0252, E0624.
For more information about an error, try `rustc --explain E0117`.
error: could not compile `std` (lib) due to 20 previous errors
Build completed unsuccessfully in 0:00:31
The job mingw-check failed! Check out the build log: (web) (plain)
Click to see the possible cause of the failure (guessed by this bot)
#16 2.880 Building wheels for collected packages: reuse
#16 2.881 Building wheel for reuse (pyproject.toml): started
#16 3.131 Building wheel for reuse (pyproject.toml): finished with status 'done'
#16 3.132 Created wheel for reuse: filename=reuse-4.0.3-cp310-cp310-manylinux_2_35_x86_64.whl size=132715 sha256=dfa09868353292d98f811d3efdb0d54d07389e808efc71d68e3b93c514bf8bec
#16 3.132 Stored in directory: /tmp/pip-ephem-wheel-cache-dt73m9_0/wheels/3d/8d/0a/e0fc6aba4494b28a967ab5eaf951c121d9c677958714e34532
#16 3.135 Installing collected packages: boolean-py, binaryornot, tomlkit, reuse, python-debian, markupsafe, license-expression, jinja2, chardet, attrs
#16 3.543 Successfully installed attrs-23.2.0 binaryornot-0.4.4 boolean-py-4.0 chardet-5.2.0 jinja2-3.1.4 license-expression-30.3.0 markupsafe-2.1.5 python-debian-0.1.49 reuse-4.0.3 tomlkit-0.13.0
#16 3.543 WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
#16 DONE 3.6s
---
|
1133 | impl Path {
| --------- associated function in this implementation
...
1173 | fn from_inner_mut(inner: &mut OsStr) -> &mut Path {
|
= note: `-D dead-code` implied by `-D warnings`
= help: to override `-D warnings` add `#[allow(dead_code)]`
The job mingw-check failed! Check out the build log: (web) (plain)
Click to see the possible cause of the failure (guessed by this bot)
#11 [ 4/12] RUN sh /scripts/nodejs.sh /node
#11 0.039 + NODEJS_VERSION=v20.12.2
#11 0.039 + INSTALL_PATH=/node
#11 0.039 + url=https://nodejs.org/dist/v20.12.2/node-v20.12.2-linux-x64.tar.xz
#11 0.039 + curl -sL+ https://nodejs.org/dist/v20.12.2/node-v20.12.2-linux-x64.tar.xztar -xJ
#11 2.108 + mv node-v20.12.2-linux-x64 /node
#11 DONE 2.3s
#12 [ 5/12] RUN npm install [email protected] [email protected] -g
---
#16 2.979 Building wheels for collected packages: reuse
#16 2.980 Building wheel for reuse (pyproject.toml): started
#16 3.228 Building wheel for reuse (pyproject.toml): finished with status 'done'
#16 3.229 Created wheel for reuse: filename=reuse-4.0.3-cp310-cp310-manylinux_2_35_x86_64.whl size=132715 sha256=dfa09868353292d98f811d3efdb0d54d07389e808efc71d68e3b93c514bf8bec
#16 3.229 Stored in directory: /tmp/pip-ephem-wheel-cache-16ew8oz1/wheels/3d/8d/0a/e0fc6aba4494b28a967ab5eaf951c121d9c677958714e34532
#16 3.232 Installing collected packages: boolean-py, binaryornot, tomlkit, reuse, python-debian, markupsafe, license-expression, jinja2, chardet, attrs
#16 3.634 Successfully installed attrs-23.2.0 binaryornot-0.4.4 boolean-py-4.0 chardet-5.2.0 jinja2-3.1.4 license-expression-30.3.0 markupsafe-2.1.5 python-debian-0.1.49 reuse-4.0.3 tomlkit-0.13.0
#16 3.634 WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
#16 DONE 3.7s
The job mingw-check failed! Check out the build log: (web) (plain)
Click to see the possible cause of the failure (guessed by this bot)
#16 2.652 Building wheels for collected packages: reuse
#16 2.653 Building wheel for reuse (pyproject.toml): started
#16 2.896 Building wheel for reuse (pyproject.toml): finished with status 'done'
#16 2.897 Created wheel for reuse: filename=reuse-4.0.3-cp310-cp310-manylinux_2_35_x86_64.whl size=132715 sha256=dfa09868353292d98f811d3efdb0d54d07389e808efc71d68e3b93c514bf8bec
#16 2.897 Stored in directory: /tmp/pip-ephem-wheel-cache-_a1v1bmr/wheels/3d/8d/0a/e0fc6aba4494b28a967ab5eaf951c121d9c677958714e34532
#16 2.900 Installing collected packages: boolean-py, binaryornot, tomlkit, reuse, python-debian, markupsafe, license-expression, jinja2, chardet, attrs
#16 3.293 Successfully installed attrs-23.2.0 binaryornot-0.4.4 boolean-py-4.0 chardet-5.2.0 jinja2-3.1.4 license-expression-30.3.0 markupsafe-2.1.5 python-debian-0.1.49 reuse-4.0.3 tomlkit-0.13.0
#16 3.293 WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
#16 DONE 3.4s
The job mingw-check failed! Check out the build log: (web) (plain)
Click to see the possible cause of the failure (guessed by this bot)
#16 2.676 Building wheels for collected packages: reuse
#16 2.678 Building wheel for reuse (pyproject.toml): started
#16 2.921 Building wheel for reuse (pyproject.toml): finished with status 'done'
#16 2.922 Created wheel for reuse: filename=reuse-4.0.3-cp310-cp310-manylinux_2_35_x86_64.whl size=132715 sha256=dfa09868353292d98f811d3efdb0d54d07389e808efc71d68e3b93c514bf8bec
#16 2.922 Stored in directory: /tmp/pip-ephem-wheel-cache-c485_sic/wheels/3d/8d/0a/e0fc6aba4494b28a967ab5eaf951c121d9c677958714e34532
#16 2.925 Installing collected packages: boolean-py, binaryornot, tomlkit, reuse, python-debian, markupsafe, license-expression, jinja2, chardet, attrs
#16 3.313 Successfully installed attrs-23.2.0 binaryornot-0.4.4 boolean-py-4.0 chardet-5.2.0 jinja2-3.1.4 license-expression-30.3.0 markupsafe-2.1.5 python-debian-0.1.49 reuse-4.0.3 tomlkit-0.13.0
#16 3.314 WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
#16 DONE 3.4s
:umbrella: The latest upstream changes (presumably #129063) made this pull request unmergeable. Please resolve the merge conflicts.
The job mingw-check failed! Check out the build log: (web) (plain)
Click to see the possible cause of the failure (guessed by this bot)
#16 2.856 Building wheels for collected packages: reuse
#16 2.857 Building wheel for reuse (pyproject.toml): started
#16 3.109 Building wheel for reuse (pyproject.toml): finished with status 'done'
#16 3.111 Created wheel for reuse: filename=reuse-4.0.3-cp310-cp310-manylinux_2_35_x86_64.whl size=132715 sha256=dfa09868353292d98f811d3efdb0d54d07389e808efc71d68e3b93c514bf8bec
#16 3.111 Stored in directory: /tmp/pip-ephem-wheel-cache-pzxd1sjo/wheels/3d/8d/0a/e0fc6aba4494b28a967ab5eaf951c121d9c677958714e34532
#16 3.113 Installing collected packages: boolean-py, binaryornot, tomlkit, reuse, python-debian, markupsafe, license-expression, jinja2, chardet, attrs
#16 3.510 Successfully installed attrs-23.2.0 binaryornot-0.4.4 boolean-py-4.0 chardet-5.2.0 jinja2-3.1.4 license-expression-30.3.0 markupsafe-2.1.5 python-debian-0.1.49 reuse-4.0.3 tomlkit-0.13.0
#16 3.511 WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
#16 DONE 3.6s
The job mingw-check failed! Check out the build log: (web) (plain)
Click to see the possible cause of the failure (guessed by this bot)
#16 2.851 Building wheels for collected packages: reuse
#16 2.852 Building wheel for reuse (pyproject.toml): started
#16 3.092 Building wheel for reuse (pyproject.toml): finished with status 'done'
#16 3.093 Created wheel for reuse: filename=reuse-4.0.3-cp310-cp310-manylinux_2_35_x86_64.whl size=132715 sha256=dfa09868353292d98f811d3efdb0d54d07389e808efc71d68e3b93c514bf8bec
#16 3.093 Stored in directory: /tmp/pip-ephem-wheel-cache-hnbdbu5_/wheels/3d/8d/0a/e0fc6aba4494b28a967ab5eaf951c121d9c677958714e34532
#16 3.096 Installing collected packages: boolean-py, binaryornot, tomlkit, reuse, python-debian, markupsafe, license-expression, jinja2, chardet, attrs
#16 3.494 Successfully installed attrs-23.2.0 binaryornot-0.4.4 boolean-py-4.0 chardet-5.2.0 jinja2-3.1.4 license-expression-30.3.0 markupsafe-2.1.5 python-debian-0.1.49 reuse-4.0.3 tomlkit-0.13.0
#16 3.494 WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
#16 DONE 3.6s
:umbrella: The latest upstream changes (presumably #129962) made this pull request unmergeable. Please resolve the merge conflicts.
I'm giving up on this PR as I don't have much time to work on it lately.
And I'm not sure I can resolve the concern raised by the team.
For https://github.com/rust-lang/libs-team/issues/399, I might have to think of a different solution, like marking Arc/Rc of being fundamental
I may be able to take up at least fixing up this PR, minus fixing the design issues with the other change. I think that at least lowering the requirements for these in an unstable way is fine.
Closing this pr since the author has said they don't have the time to move forward and want to give up on it. @clarfonthey has mentioned they want to take this forward but i think it is better to do that in a new pr if it hasn't been done yet.
I have been working on this feature and aim to have a PR up for moving OsStr to core and OsString to alloc in a few weeks. I just found this PR and will be comparing implementations with it.
I'm taking an organizationally different approach with atomic commits and separating moves from edits to assist reviews and make the inevitable merge conflicts more automatic.
@thaliaarchi, do you still want to work on this? I was thinking of potentially doing this myself since I recently interacted with the code for #144289, and it would still be valuable to reorganise this stuff even if it's not made stable.
You're welcome to put forward a PR for this. Even if duplicating effort, your energy on the problem would be helpful.
I've checked in again on my WIP branch and I don't think it would be much more work to finish it. However, I'm rather occupied at the moment, so I can't guarantee it soon. I'll try to put some time in tomorrow, but if you don't hear from me soon, you can assume I didn't finish.
To expand on what I mentioned earlier, the approach I've found to best retain provenance with git blame is to move and copy files into their final places in a separate commit without modifying them. For a split, copy to both destinations, then delete the extra halves separately. Rebases onto upstream are then much easier to resolve conflicts and audit.
One preparatory commit for my branch, https://github.com/rust-lang/rust/pull/140159/commits/7cb357a36b96781f9ff85f8a4168382243352ba1, is already merged.
It's all good; I'm in no rush to get this done, but figured I'd pick it up if you hadn't gotten around to it.