[INFO] fetching crate ranges 0.3.0... [INFO] documenting ranges-0.3.0 against 1.46.0 for beta-1.47-rustdoc-1 [INFO] extracting crate ranges 0.3.0 into /workspace/builds/worker-2/source [INFO] validating manifest of crates.io crate ranges 0.3.0 on toolchain 1.46.0 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.46.0" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] started tweaking crates.io crate ranges 0.3.0 [INFO] finished tweaking crates.io crate ranges 0.3.0 [INFO] tweaked toml for crates.io crate ranges 0.3.0 written to /workspace/builds/worker-2/source/Cargo.toml [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.46.0" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }` [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.46.0" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+1.46.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 6380d8015a93d5a181c329f507937132b3f08c13652d931a21152f7aabf33a15 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "6380d8015a93d5a181c329f507937132b3f08c13652d931a21152f7aabf33a15", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "6380d8015a93d5a181c329f507937132b3f08c13652d931a21152f7aabf33a15", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "6380d8015a93d5a181c329f507937132b3f08c13652d931a21152f7aabf33a15", kill_on_drop: false }` [INFO] [stdout] 6380d8015a93d5a181c329f507937132b3f08c13652d931a21152f7aabf33a15 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+1.46.0" "doc" "--frozen" "--no-deps" "--document-private-items" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 946e998e909349b5a3e40d976ab9a33ed83c0e3d42757ed6ef72147ed979b124 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "946e998e909349b5a3e40d976ab9a33ed83c0e3d42757ed6ef72147ed979b124", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Documenting ranges v0.3.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: documentation test in private item [INFO] [stdout] --> src/generic_range/contains.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | / /// Returns true if the given `item` is contained in the range. [INFO] [stdout] 7 | | /// [INFO] [stdout] 8 | | /// # Example [INFO] [stdout] 9 | | ///``` [INFO] [stdout] ... | [INFO] [stdout] 13 | | /// assert!(range.contains(&3)); [INFO] [stdout] 14 | | ///``` [INFO] [stdout] | |__________^ [INFO] [stdout] | [INFO] [stdout] note: the lint level is defined here [INFO] [stdout] --> src/lib.rs:88:5 [INFO] [stdout] | [INFO] [stdout] 88 | rustdoc, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] = note: `#[warn(private_doc_tests)]` implied by `#[warn(rustdoc)]` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: documentation test in private item [INFO] [stdout] --> src/generic_range/difference.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | / /// Returns the difference of two ranges. [INFO] [stdout] 7 | | /// [INFO] [stdout] 8 | | /// # Examples [INFO] [stdout] 9 | | ///``` [INFO] [stdout] ... | [INFO] [stdout] 28 | | /// assert_eq!(range - range2, OperationResult::Double((1..3).into(), (5..=10).into())); [INFO] [stdout] 29 | | ///``` [INFO] [stdout] | |__________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: documentation test in private item [INFO] [stdout] --> src/generic_range/empty.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | / /// Returns true if the range is empty. [INFO] [stdout] 7 | | /// [INFO] [stdout] 8 | | /// # Examples [INFO] [stdout] 9 | | /// ``` [INFO] [stdout] ... | [INFO] [stdout] 14 | | /// assert!(!GenericRange::from(1..2).is_empty()); [INFO] [stdout] 15 | | /// ``` [INFO] [stdout] | |___________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: documentation test in private item [INFO] [stdout] --> src/generic_range/intersect.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | / /// Results in either a single or, if the inputs are disjoint, empty range. [INFO] [stdout] 7 | | /// [INFO] [stdout] 8 | | /// # Note [INFO] [stdout] 9 | | /// The `OperationResult::Double` discriminant can safely be marked `unreachable!()` when [INFO] [stdout] ... | [INFO] [stdout] 27 | | /// assert_eq!(range & range2, OperationResult::Single(GenericRange::from(5..10))); [INFO] [stdout] 28 | | /// ``` [INFO] [stdout] | |___________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: documentation test in private item [INFO] [stdout] --> src/generic_range/invert.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | / /// Inverts a range border, so a start becomes an end and vice versa. [INFO] [stdout] 7 | | /// [INFO] [stdout] 8 | | /// # Example [INFO] [stdout] 9 | | /// ``` [INFO] [stdout] ... | [INFO] [stdout] 15 | | /// assert_eq!(GenericRange::invert_border(Bound::Included(42)), Bound::Excluded(42)); [INFO] [stdout] 16 | | /// ``` [INFO] [stdout] | |___________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: documentation test in private item [INFO] [stdout] --> src/generic_range/invert.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | / /// Inverts the given range and returns two if no bound is unbounded. [INFO] [stdout] 37 | | /// [INFO] [stdout] 38 | | /// # Example [INFO] [stdout] 39 | | /// ``` [INFO] [stdout] ... | [INFO] [stdout] 54 | | /// ) [INFO] [stdout] 55 | | /// ``` [INFO] [stdout] | |___________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: documentation test in private item [INFO] [stdout] --> src/generic_range/relation.rs:717:5 [INFO] [stdout] | [INFO] [stdout] 717 | / /// Returns true if the two ranges are equal. [INFO] [stdout] 718 | | /// [INFO] [stdout] 719 | | /// This method is the basis for the `PartialEq` and `Eq` trait implementations. [INFO] [stdout] 720 | | /// [INFO] [stdout] ... | [INFO] [stdout] 730 | | /// assert_eq!(GenericRange::new_open(0, 5), (1..=4).into()); [INFO] [stdout] 731 | | /// ``` [INFO] [stdout] | |___________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: documentation test in private item [INFO] [stdout] --> src/generic_range/singleton.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | / /// Constructs a singleton by cloning the input storing it in included bounds for both start [INFO] [stdout] 7 | | /// and end. [INFO] [stdout] 8 | | /// [INFO] [stdout] 9 | | /// # Example [INFO] [stdout] ... | [INFO] [stdout] 17 | | /// ); [INFO] [stdout] 18 | | /// ``` [INFO] [stdout] | |___________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: documentation test in private item [INFO] [stdout] --> src/generic_range/singleton.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 27 | / /// Returns true if the range only contains a single item. [INFO] [stdout] 28 | | /// [INFO] [stdout] 29 | | /// # Examples [INFO] [stdout] 30 | | /// ``` [INFO] [stdout] ... | [INFO] [stdout] 40 | | /// assert!(GenericRange::from((Bound::Excluded(1), Bound::Included(2))).is_singleton()); [INFO] [stdout] 41 | | /// ``` [INFO] [stdout] | |___________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: documentation test in private item [INFO] [stdout] --> src/generic_range/symmetric_difference.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | / /// Results in two ranges if the inputs are disjoint or touching. [INFO] [stdout] 7 | | /// Results in two ranges (the "left" and "right" disjoint parts) if the inputs are overlapping or contain one another. [INFO] [stdout] 8 | | /// Results in a single range (the disjoint part) if the inputs start or end on the same value. [INFO] [stdout] 9 | | /// Returns empty if the inputs are equal. [INFO] [stdout] ... | [INFO] [stdout] 37 | | /// assert_eq!(a ^ b, OperationResult::Empty); [INFO] [stdout] 38 | | /// ``` [INFO] [stdout] | |___________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: documentation test in private item [INFO] [stdout] --> src/generic_range/union.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | / /// Results in either a single or, if the inputs are disjoint, two ranges. [INFO] [stdout] 7 | | /// [INFO] [stdout] 8 | | /// # Examples [INFO] [stdout] 9 | | /// Disjoint ranges. [INFO] [stdout] ... | [INFO] [stdout] 25 | | /// assert_eq!(range | range2, OperationResult::Single((0..=15).into())); [INFO] [stdout] 26 | | /// ``` [INFO] [stdout] | |___________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: documentation test in private item [INFO] [stdout] --> src/ranges/contains.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | / /// Returns true if the given `item` is contained in any of the internal disjoint ranges. [INFO] [stdout] 7 | | /// [INFO] [stdout] 8 | | /// # Note [INFO] [stdout] 9 | | /// In contrast to the `GenericRange` constructor, item values will not be clamped to [INFO] [stdout] ... | [INFO] [stdout] 20 | | /// [INFO] [stdout] 21 | | /// ``` [INFO] [stdout] | |___________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: documentation test in private item [INFO] [stdout] --> src/ranges/difference.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | / /// Calculates the relative complement (difference) of two ranges. [INFO] [stdout] 8 | | /// [INFO] [stdout] 9 | | /// # Examples [INFO] [stdout] 10 | | /// Overlapping ranges: [INFO] [stdout] ... | [INFO] [stdout] 26 | | /// assert!((ranges1 - ranges2).is_empty()); [INFO] [stdout] 27 | | /// ``` [INFO] [stdout] | |___________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: documentation test in private item [INFO] [stdout] --> src/ranges/insert.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | / /// Returns `true` if any element or the internal vector was modified to accommodate `range`. [INFO] [stdout] 7 | | /// This means `false` is returned if and only if nothing has changed. [INFO] [stdout] 8 | | /// [INFO] [stdout] 9 | | /// # Examples [INFO] [stdout] ... | [INFO] [stdout] 32 | | /// assert_eq!(ranges, (0..10).into()) [INFO] [stdout] 33 | | /// ``` [INFO] [stdout] | |___________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: documentation test in private item [INFO] [stdout] --> src/ranges/intersect.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | / /// Calculates the intersection of two ranges. [INFO] [stdout] 8 | | /// [INFO] [stdout] 9 | | /// # Examples [INFO] [stdout] 10 | | /// Single overlapping ranges: [INFO] [stdout] ... | [INFO] [stdout] 26 | | /// assert_eq!(ranges1 & ranges2, vec![0..3, 6..9].into()) [INFO] [stdout] 27 | | /// ``` [INFO] [stdout] | |___________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: documentation test in private item [INFO] [stdout] --> src/ranges/invert.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | / /// Inverts the range set. [INFO] [stdout] 7 | | /// [INFO] [stdout] 8 | | /// # Examples [INFO] [stdout] 9 | | /// Empty set: [INFO] [stdout] ... | [INFO] [stdout] 37 | | /// ); [INFO] [stdout] 38 | | /// ``` [INFO] [stdout] | |___________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: documentation test in private item [INFO] [stdout] --> src/ranges/remove.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | / /// Returns `true` if any element or the internal vector was modified to remove `range`. [INFO] [stdout] 7 | | /// This means `false` is returned if and only if nothing has changed. [INFO] [stdout] 8 | | /// [INFO] [stdout] 9 | | /// # Examples [INFO] [stdout] ... | [INFO] [stdout] 31 | | /// assert_eq!(ranges, vec![0..2, 5..10].into()) [INFO] [stdout] 32 | | /// ``` [INFO] [stdout] | |___________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: documentation test in private item [INFO] [stdout] --> src/ranges/symmetric_difference.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | / /// Calculates the relative complement (difference) of two ranges. [INFO] [stdout] 8 | | /// [INFO] [stdout] 9 | | /// # Examples [INFO] [stdout] 10 | | /// Empty range. [INFO] [stdout] ... | [INFO] [stdout] 38 | | /// ); [INFO] [stdout] 39 | | /// ``` [INFO] [stdout] | |___________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: documentation test in private item [INFO] [stdout] --> src/ranges/union.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | / /// Calculates the union of two ranges. [INFO] [stdout] 8 | | /// [INFO] [stdout] 9 | | /// # Examples [INFO] [stdout] 10 | | /// Empty and single-entry ranges. [INFO] [stdout] ... | [INFO] [stdout] 35 | | /// assert_eq!(ranges1 | ranges2, (0..9).into()); [INFO] [stdout] 36 | | /// ``` [INFO] [stdout] | |___________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: documentation test in private item [INFO] [stdout] --> src/ranges.rs:96:5 [INFO] [stdout] | [INFO] [stdout] 96 | / /// Find the `GenericRange`s in `self` which at least touch `other`. [INFO] [stdout] 97 | | /// [INFO] [stdout] 98 | | /// Since `other` is a `GenericRange` (i.e. contiguous), [INFO] [stdout] 99 | | /// the overlapping ranges must all be consecutive. [INFO] [stdout] ... | [INFO] [stdout] 109 | | /// assert_eq!(ranges.find_intersecting_ranges(&(7..47).into()), Some((1, 3))) [INFO] [stdout] 110 | | /// ``` [INFO] [stdout] | |___________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: documentation test in private item [INFO] [stdout] --> src/domain/char.rs:64:5 [INFO] [stdout] | [INFO] [stdout] 64 | / /// This method does _not_ ignore invalid code points. [INFO] [stdout] 65 | | /// [INFO] [stdout] 66 | | /// # Example [INFO] [stdout] 67 | | /// ``` [INFO] [stdout] ... | [INFO] [stdout] 70 | | /// assert!(!'\u{df777}'.shares_neighbour_with(&'\u{e001}')); [INFO] [stdout] 71 | | /// ``` [INFO] [stdout] | |___________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: documentation test in private item [INFO] [stdout] --> src/domain/char.rs:79:1 [INFO] [stdout] | [INFO] [stdout] 79 | / /// Iterates over valid UTF-8 codepoint range. Invalid values are skipped over. [INFO] [stdout] 80 | | /// ``` [INFO] [stdout] 81 | | /// use ranges::GenericRange; [INFO] [stdout] 82 | | /// [INFO] [stdout] ... | [INFO] [stdout] 87 | | /// assert_eq!(iter.last().unwrap(), '\u{10ffff}'); [INFO] [stdout] 88 | | /// ``` [INFO] [stdout] | |_______^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: documentation test in private item [INFO] [stdout] --> src/generic_range/format.rs:9:13 [INFO] [stdout] | [INFO] [stdout] 9 | / /// Non-Debug formatting uses interval notation and formats the bound values [INFO] [stdout] 10 | | /// according to the given formatting arguments. [INFO] [stdout] 11 | | /// [INFO] [stdout] 12 | | /// # Note [INFO] [stdout] ... | [INFO] [stdout] 27 | | /// assert_eq!(format!("{:-#}", GenericRange::from(42..=100)), "[42,100]"); [INFO] [stdout] 28 | | /// ``` [INFO] [stdout] | |___________________^ [INFO] [stdout] ... [INFO] [stdout] 85 | format_range_with!(Binary, Display, LowerExp, LowerHex, Octal, Pointer, UpperExp, UpperHex); [INFO] [stdout] | -------------------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: documentation test in private item [INFO] [stdout] --> src/ranges/format.rs:9:13 [INFO] [stdout] | [INFO] [stdout] 9 | / /// Non-Debug formatting uses interval notation and formats the bound values [INFO] [stdout] 10 | | /// according to the given formatting arguments. [INFO] [stdout] 11 | | /// [INFO] [stdout] 12 | | /// # Note [INFO] [stdout] ... | [INFO] [stdout] 41 | | /// ); [INFO] [stdout] 42 | | /// ``` [INFO] [stdout] | |___________________^ [INFO] [stdout] ... [INFO] [stdout] 104 | format_ranges_with!(Binary, Display, LowerExp, LowerHex, Octal, Pointer, UpperExp, UpperHex); [INFO] [stdout] | --------------------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 24 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 2.21s [INFO] running `Command { std: "docker" "inspect" "946e998e909349b5a3e40d976ab9a33ed83c0e3d42757ed6ef72147ed979b124", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "946e998e909349b5a3e40d976ab9a33ed83c0e3d42757ed6ef72147ed979b124", kill_on_drop: false }` [INFO] [stdout] 946e998e909349b5a3e40d976ab9a33ed83c0e3d42757ed6ef72147ed979b124