[INFO] fetching crate moso-schema 0.0.1...
[INFO] testing moso-schema-0.0.1 against 1.100.0-beta.1+cargoflags=--release for beta-release-1.100-2
[INFO] extracting crate moso-schema 0.0.1 into /workspace/builds/worker-6-tc2/source
[INFO] started tweaking crates.io crate moso-schema 0.0.1
[INFO] finished tweaking crates.io crate moso-schema 0.0.1
[INFO] tweaked toml for crates.io crate moso-schema 0.0.1 written to /workspace/builds/worker-6-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate moso-schema 0.0.1 on toolchain 1.100.0-beta.1
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate moso-schema 0.0.1 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.100.0-beta.1" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]   --> Cargo.toml:82:12
[INFO] [stderr]    |
[INFO] [stderr] 82 | homepage = "https://github.com/moso-rs/moso"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 87 | repository = "https://github.com/moso-rs/moso"
[INFO] [stderr]    |              ---------------------------------
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `moso-schema` (manifest) generated 1 warning
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] e9b0d7316ce8dde183a24c6927919e9551b50c07836aed26d3be0358a9ec59c5
[INFO] running `Command { std: "docker" "start" "e9b0d7316ce8dde183a24c6927919e9551b50c07836aed26d3be0358a9ec59c5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "e9b0d7316ce8dde183a24c6927919e9551b50c07836aed26d3be0358a9ec59c5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "e9b0d7316ce8dde183a24c6927919e9551b50c07836aed26d3be0358a9ec59c5" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "e9b0d7316ce8dde183a24c6927919e9551b50c07836aed26d3be0358a9ec59c5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "e9b0d7316ce8dde183a24c6927919e9551b50c07836aed26d3be0358a9ec59c5" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "build" "--frozen" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]   --> Cargo.toml:82:12
[INFO] [stderr]    |
[INFO] [stderr] 82 | homepage = "https://github.com/moso-rs/moso"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 87 | repository = "https://github.com/moso-rs/moso"
[INFO] [stderr]    |              ---------------------------------
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `moso-schema` (manifest) generated 1 warning
[INFO] [stderr]    Compiling smallvec v1.15.2
[INFO] [stderr]    Compiling libc v0.2.189
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling serde_json v1.0.151
[INFO] [stderr]    Compiling time-macros v0.2.32
[INFO] [stderr]    Compiling syn v2.0.119
[INFO] [stderr]    Compiling form_urlencoded v1.2.2
[INFO] [stderr]    Compiling indexmap v2.14.0
[INFO] [stderr]    Compiling deranged v0.5.8
[INFO] [stderr]    Compiling unicode-segmentation v1.13.3
[INFO] [stderr]    Compiling displaydoc v0.2.7
[INFO] [stderr]    Compiling serde_derive v1.0.229
[INFO] [stderr]    Compiling regex-automata v0.4.16
[INFO] [stderr]    Compiling time v0.3.54
[INFO] [stderr]    Compiling getrandom v0.4.3
[INFO] [stderr]    Compiling uuid v1.24.0
[INFO] [stderr]    Compiling serde v1.0.229
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling zerovec-derive v0.11.3
[INFO] [stderr]    Compiling email_address v0.2.9
[INFO] [stderr]    Compiling zerofrom-derive v0.1.7
[INFO] [stderr]    Compiling yoke-derive v0.8.2
[INFO] [stderr]    Compiling zerofrom v0.1.8
[INFO] [stderr]    Compiling yoke v0.8.3
[INFO] [stderr]    Compiling zerovec v0.11.6
[INFO] [stderr]    Compiling zerotrie v0.2.4
[INFO] [stderr]    Compiling tinystr v0.8.3
[INFO] [stderr]    Compiling potential_utf v0.1.5
[INFO] [stderr]    Compiling icu_collections v2.2.0
[INFO] [stderr]    Compiling icu_locale_core v2.2.0
[INFO] [stderr]    Compiling regex v1.13.1
[INFO] [stderr]    Compiling icu_provider v2.2.0
[INFO] [stderr]    Compiling icu_properties v2.2.0
[INFO] [stderr]    Compiling icu_normalizer v2.2.0
[INFO] [stderr]    Compiling idna_adapter v1.2.2
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling moso-schema v0.0.1 (/opt/rustwide/workdir)
[INFO] [stderr] warning: unused dependency `once_cell`
[INFO] [stderr]   --> Cargo.toml:13:15
[INFO] [stderr]    |
[INFO] [stderr] 13 | [dependencies.once_cell]
[INFO] [stderr]    |               ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `once_cell`
[INFO] [stderr] warning: unused dependency `unicode-segmentation`
[INFO] [stderr]   --> Cargo.toml:35:15
[INFO] [stderr]    |
[INFO] [stderr] 35 | [dependencies.unicode-segmentation]
[INFO] [stderr]    |               ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr] help: consider removing the dependency on `unicode-segmentation`
[INFO] [stderr] warning: `moso-schema` (manifest) generated 2 warnings
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 36.50s
[INFO] running `Command { std: "docker" "inspect" "e9b0d7316ce8dde183a24c6927919e9551b50c07836aed26d3be0358a9ec59c5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "e9b0d7316ce8dde183a24c6927919e9551b50c07836aed26d3be0358a9ec59c5" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]   --> Cargo.toml:82:12
[INFO] [stderr]    |
[INFO] [stderr] 82 | homepage = "https://github.com/moso-rs/moso"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 87 | repository = "https://github.com/moso-rs/moso"
[INFO] [stderr]    |              ---------------------------------
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `moso-schema` (manifest) generated 1 warning
[INFO] [stderr]    Compiling moso-schema v0.0.1 (/opt/rustwide/workdir)
[INFO] [stderr] warning: unused dependency `once_cell`
[INFO] [stderr]   --> Cargo.toml:13:15
[INFO] [stderr]    |
[INFO] [stderr] 13 | [dependencies.once_cell]
[INFO] [stderr]    |               ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `once_cell`
[INFO] [stderr] warning: unused dependency `unicode-segmentation`
[INFO] [stderr]   --> Cargo.toml:35:15
[INFO] [stderr]    |
[INFO] [stderr] 35 | [dependencies.unicode-segmentation]
[INFO] [stderr]    |               ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr] help: consider removing the dependency on `unicode-segmentation`
[INFO] [stderr] warning: `moso-schema` (manifest) generated 2 warnings
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 16.02s
[INFO] running `Command { std: "docker" "inspect" "e9b0d7316ce8dde183a24c6927919e9551b50c07836aed26d3be0358a9ec59c5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "e9b0d7316ce8dde183a24c6927919e9551b50c07836aed26d3be0358a9ec59c5" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--release", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]   --> Cargo.toml:82:12
[INFO] [stderr]    |
[INFO] [stderr] 82 | homepage = "https://github.com/moso-rs/moso"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 87 | repository = "https://github.com/moso-rs/moso"
[INFO] [stderr]    |              ---------------------------------
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `moso-schema` (manifest) generated 1 warning
[INFO] [stderr] warning: unused dependency `once_cell`
[INFO] [stderr]   --> Cargo.toml:13:15
[INFO] [stderr]    |
[INFO] [stderr] 13 | [dependencies.once_cell]
[INFO] [stderr]    |               ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `once_cell`
[INFO] [stderr] warning: unused dependency `unicode-segmentation`
[INFO] [stderr]   --> Cargo.toml:35:15
[INFO] [stderr]    |
[INFO] [stderr] 35 | [dependencies.unicode-segmentation]
[INFO] [stderr]    |               ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr] help: consider removing the dependency on `unicode-segmentation`
[INFO] [stderr] warning: `moso-schema` (manifest) generated 2 warnings
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 0.08s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/release/build/moso-schema/a6bb00d718ca743d/out/moso_schema-a6bb00d718ca743d)
[INFO] [stdout] 
[INFO] [stdout] running 226 tests
[INFO] [stdout] test checks::tests::element_pointers_render_large_indices ... ok
[INFO] [stdout] test checks::tests::each_nested_indexes_pointers ... ok
[INFO] [stdout] test checks::tests::format_email_and_uri ... ok
[INFO] [stdout] test checks::tests::multiple_of_floats_tolerate_representation_error ... ok
[INFO] [stdout] test checks::tests::format_dates_and_times ... ok
[INFO] [stdout] test checks::tests::check_format_reports_the_format_name ... ok
[INFO] [stdout] test checks::tests::format_slug_phone_and_pointer ... ok
[INFO] [stdout] test checks::tests::pattern_reports_the_source_text ... ok
[INFO] [stdout] test checks::tests::range_f64_rejects_nan_and_drops_infinite_bounds ... ok
[INFO] [stdout] test checks::tests::range_i64_honours_exclusivity ... ok
[INFO] [stdout] test checks::tests::range_u64_does_not_wrap ... ok
[INFO] [stdout] test checks::tests::required_reports_missing_values ... ok
[INFO] [stdout] test checks::tests::substring_checks_carry_both_the_literal_and_a_regex ... ok
[INFO] [stdout] test checks::tests::unique_points_at_the_first_duplicate ... ok
[INFO] [stdout] test checks::tests::unique_uses_a_root_pointer_correctly ... ok
[INFO] [stdout] test checks::tests::unknown_formats_never_fail ... ok
[INFO] [stdout] test json_schema::impls::tests::any_json_value_asserts_nothing ... ok
[INFO] [stdout] test json_schema::impls::tests::char_is_a_one_character_string ... ok
[INFO] [stdout] test checks::tests::one_of_lists_the_permitted_values ... ok
[INFO] [stdout] test json_schema::impls::tests::collection_validation_respects_the_error_cap ... ok
[INFO] [stdout] test json_schema::impls::tests::foreign_scalars_have_the_documented_formats ... ok
[INFO] [stdout] test json_schema::impls::tests::duration_is_the_shape_serde_actually_emits ... ok
[INFO] [stdout] test json_schema::impls::tests::generic_names_compose ... ok
[INFO] [stdout] test json_schema::impls::tests::has_constraints_propagates_through_containers ... ok
[INFO] [stdout] test json_schema::impls::tests::integer_bounds_come_from_the_rust_type ... ok
[INFO] [stdout] test json_schema::impls::tests::maps_describe_their_values_with_additional_properties ... ok
[INFO] [stdout] test json_schema::impls::tests::nested_sequences_compose_pointers ... ok
[INFO] [stdout] test json_schema::impls::tests::map_errors_are_addressed_by_escaped_key ... ok
[INFO] [stdout] test json_schema::impls::tests::non_zero_signed_excludes_zero_exactly ... ok
[INFO] [stdout] test json_schema::impls::tests::non_zero_unsigned_starts_at_one ... ok
[INFO] [stdout] test json_schema::impls::tests::options_do_not_add_a_segment_and_none_is_valid ... ok
[INFO] [stdout] test checks::tests::format_uuid_is_the_hyphenated_form_only ... ok
[INFO] [stdout] test checks::tests::len_str_counts_characters_not_bytes ... ok
[INFO] [stdout] test json_schema::impls::tests::sets_assert_uniqueness ... ok
[INFO] [stdout] test checks::tests::every_known_format_is_dispatched ... ok
[INFO] [stdout] test checks::tests::multiple_of_integers ... ok
[INFO] [stdout] test checks::tests::nested_composes_pointers ... ok
[INFO] [stdout] test checks::tests::one_of_covers_integers_and_arbitrary_values ... ok
[INFO] [stdout] test checks::tests::len_slice_forwards_to_len_seq ... ok
[INFO] [stdout] test json_schema::impls::tests::primitives_are_inline_not_referenced ... ok
[INFO] [stdout] test json_schema::impls::tests::optional_scalars_widen_the_type_keyword ... ok
[INFO] [stdout] test checks::tests::bounds_constants_are_distinct ... ok
[INFO] [stdout] test checks::tests::format_hostname_and_ips ... ok
[INFO] [stdout] test checks::tests::each_nested_stops_at_the_cap ... ok
[INFO] [stdout] test checks::tests::len_str_bounds_are_inclusive_and_reported ... ok
[INFO] [stdout] test checks::tests::non_empty_helpers_report_a_minimum_of_one ... ok
[INFO] [stdout] test json_schema::impls::tests::sequence_errors_are_addressed_by_index ... ok
[INFO] [stdout] test checks::tests::len_seq_reports_items_as_the_unit ... ok
[INFO] [stdout] test json_schema::tests::anonymous_types_are_inlined_and_still_register_children ... ok
[INFO] [stdout] test json_schema::tests::apply_len_dispatches_on_the_instance_type ... ok
[INFO] [stdout] test json_schema::tests::apply_len_tightens_and_never_widens ... ok
[INFO] [stdout] test json_schema::tests::definitions_snapshot_is_stable ... ok
[INFO] [stdout] test json_schema::tests::insert_registers_a_prebuilt_node_once ... ok
[INFO] [stdout] test json_schema::impls::tests::signed_integer_bounds_come_from_the_rust_type ... ok
[INFO] [stdout] test json_schema::tests::generator_shortcuts_build_the_expected_nodes ... ok
[INFO] [stdout] test json_schema::tests::nullable_enum_gains_a_null_member ... ok
[INFO] [stdout] test json_schema::tests::nullable_widens_the_type_keyword ... ok
[INFO] [stdout] test json_schema::impls::tests::tuple_errors_are_addressed_by_position ... ok
[INFO] [stdout] test json_schema::impls::tests::wrappers_are_transparent_to_the_schema ... ok
[INFO] [stdout] test json_schema::tests::colliding_names_are_collected_not_panicked_on ... ok
[INFO] [stdout] test json_schema::tests::nullable_const_and_untyped_nodes ... ok
[INFO] [stdout] test json_schema::impls::tests::tuples_and_fixed_arrays_pin_their_length ... ok
[INFO] [stdout] test json_schema::impls::tests::wrappers_are_transparent_to_validation ... ok
[INFO] [stdout] test json_schema::tests::nullable_ref_becomes_any_of ... ok
[INFO] [stdout] test json_schema::tests::empty_node_serialises_to_empty_object ... ok
[INFO] [stdout] test json_schema::tests::object_builder_tracks_required ... ok
[INFO] [stdout] test json_schema::tests::generator_ref_prefix_is_honoured ... ok
[INFO] [stdout] test json_schema::tests::ref_prefix_is_configurable ... ok
[INFO] [stdout] test json_schema::tests::mutually_recursive_types_terminate ... ok
[INFO] [stdout] test json_schema::tests::non_finite_bounds_are_dropped ... ok
[INFO] [stdout] test json_schema::tests::apply_len_on_a_ref_moves_it_into_all_of ... ok
[INFO] [stdout] test json_schema::tests::recursive_types_terminate_with_a_ref ... ok
[INFO] [stdout] test checks::tests::format_regex_and_encodings ... ok
[INFO] [stdout] test json_schema::tests::schema_ref_names_are_extracted ... ok
[INFO] [stdout] test json_schema::tests::sorting_definitions_is_alphabetical ... ok
[INFO] [stdout] test json_schema::tests::type_set_round_trips ... ok
[INFO] [stdout] test json_schema::tests::definitions_are_generated_once_and_reused ... ok
[INFO] [stdout] test message::tests::accept_language_picks_the_highest_quality_tag ... ok
[INFO] [stdout] test message::tests::default_messages_answers_every_code ... ok
[INFO] [stdout] test message::tests::parse_rejects_malformed_tags ... ok
[INFO] [stdout] test message::tests::format_messages_name_the_thing_not_the_keyword ... ok
[INFO] [stdout] test message::tests::invalid_locale_truncates_its_input ... ok
[INFO] [stdout] test message::tests::locale_round_trips_through_from_str ... ok
[INFO] [stdout] test message::tests::renders_the_documented_english_messages ... ok
[INFO] [stdout] test message::tests::every_code_has_a_message ... ok
[INFO] [stdout] test json_schema::tests::type_set_serialises_singly_and_as_array ... ok
[INFO] [stdout] test message::tests::chained_provider_is_empty_by_default ... ok
[INFO] [stdout] test message::tests::substring_messages_beat_the_raw_regex ... ok
[INFO] [stdout] test json_schema::tests::unknown_keywords_round_trip_as_extensions ... ok
[INFO] [stdout] test message::tests::chained_provider_takes_the_first_answer ... ok
[INFO] [stdout] test message::tests::accept_language_skips_what_it_cannot_use ... ok
[INFO] [stdout] test schema::tests::schema_of_matches_subschema_for ... ok
[INFO] [stdout] test message::tests::subtags_are_addressable ... ok
[INFO] [stdout] test types::bounded::tests::length_accepts_inside_the_range_and_rejects_outside ... ok
[INFO] [stdout] test message::tests::default_locale_is_english ... ok
[INFO] [stdout] test types::bounded::tests::bounded_clamps_instead_of_failing_when_asked ... ok
[INFO] [stdout] test types::bounded::tests::length_counts_characters_not_bytes ... ok
[INFO] [stdout] test types::bounded::tests::bounded_enforces_the_invariant_on_deserialise ... ok
[INFO] [stdout] test types::bounded::tests::length_enforces_the_invariant_on_deserialise ... ok
[INFO] [stdout] test types::bounded::tests::bounded_error_names_the_actual_bounds ... ok
[INFO] [stdout] test schema::tests::generic_names_are_stable ... ok
[INFO] [stdout] test schema::tests::generic_names_nest_left_to_right ... ok
[INFO] [stdout] test schema::tests::inline_schema_ref_never_registers ... ok
[INFO] [stdout] test types::cursor::tests::json_schema_documents_what_is_enforced ... ok
[INFO] [stdout] test types::bounded::tests::bounded_accepts_inside_the_range_and_rejects_outside ... ok
[INFO] [stdout] test types::bounded::tests::length_error_names_the_actual_bounds_and_unit ... ok
[INFO] [stdout] test message::tests::parse_normalises_casing ... ok
[INFO] [stdout] test types::bounded::tests::generic_schema_names_are_stable_and_carry_the_bounds ... ok
[INFO] [stdout] test types::cursor::tests::matches_the_rfc_4648_vectors_without_padding ... ok
[INFO] [stdout] test types::cursor::tests::rejects_non_canonical_encodings ... ok
[INFO] [stdout] test message::tests::range_and_enum_messages ... ok
[INFO] [stdout] test types::bounded::tests::integer_conversions_saturate_rather_than_wrap ... ok
[INFO] [stdout] test types::bounded::tests::strings_are_measured_in_characters ... ok
[INFO] [stdout] test types::cursor::tests::rejects_malformed_input_with_a_format_code ... ok
[INFO] [stdout] test types::cursor::tests::rejects_over_long_input_with_a_len_code ... ok
[INFO] [stdout] test types::bounded::tests::non_empty_enforces_the_invariant_on_deserialise ... ok
[INFO] [stdout] test types::bounded::tests::non_empty_rejects_empty_values_with_a_len_code ... ok
[INFO] [stdout] test types::email::tests::every_constructor_enforces_the_invariant ... ok
[INFO] [stdout] test types::email::tests::normalises_surrounding_space_and_domain_case ... ok
[INFO] [stdout] test types::bounded::tests::collections_are_measured_in_items ... ok
[INFO] [stdout] test types::email::tests::unchecked_construction_is_the_documented_escape_hatch ... ok
[INFO] [stdout] test types::email::tests::json_schema_documents_what_is_enforced ... ok
[INFO] [stdout] test types::email::tests::rejects_malformed_addresses_with_a_format_code ... ok
[INFO] [stdout] test types::email::tests::rejects_over_long_addresses_with_a_len_code ... ok
[INFO] [stdout] test types::email::tests::tolerates_internationalised_addresses ... ok
[INFO] [stdout] test types::cursor::tests::round_trips_arbitrary_bytes ... ok
[INFO] [stdout] test types::id::tests::cast_retags_without_changing_the_value ... ok
[INFO] [stdout] test types::id::tests::markers_do_not_need_to_be_send_or_sync_themselves ... ok
[INFO] [stdout] test types::id::tests::new_v7_is_time_ordered_and_nil_is_zero ... ok
[INFO] [stdout] test types::id::tests::parses_every_uuid_spelling ... ok
[INFO] [stdout] test types::id::tests::debug_names_the_marker ... ok
[INFO] [stdout] test types::id::tests::rejects_non_uuids_with_a_format_code ... ok
[INFO] [stdout] test types::net::tests::cidr_json_schema_documents_what_is_enforced ... ok
[INFO] [stdout] test types::cursor::tests::tolerates_padding_on_input ... ok
[INFO] [stdout] test types::id::tests::ids_are_copy_and_sized_like_a_uuid ... ok
[INFO] [stdout] test types::email::tests::round_trips_through_json ... ok
[INFO] [stdout] test types::net::tests::cidr_membership_is_family_strict ... ok
[INFO] [stdout] test types::id::tests::json_schema_is_an_inline_uuid_string ... ok
[INFO] [stdout] test types::email::tests::splits_at_the_final_at_sign ... ok
[INFO] [stdout] test types::id::tests::serialises_as_a_bare_uuid_string ... ok
[INFO] [stdout] test types::email::tests::accepts_ordinary_addresses ... ok
[INFO] [stdout] test types::net::tests::cidr_masks_host_bits_on_construction ... ok
[INFO] [stdout] test message::tests::length_messages_are_grammatical ... ok
[INFO] [stdout] test types::bounded::tests::non_empty_accepts_and_derefs ... ok
[INFO] [stdout] test types::net::tests::cidr_rejects_unparsable_input_with_a_format_code ... ok
[INFO] [stdout] test types::net::tests::cidr_rejects_an_over_long_prefix_with_a_range_code ... ok
[INFO] [stdout] test types::password::tests::enforces_the_length_policy_with_a_len_code ... ok
[INFO] [stdout] test types::net::tests::hostname_accepts_rfc_1123_names ... ok
[INFO] [stdout] test types::net::tests::hostname_rejects_malformed_names_with_a_format_code ... ok
[INFO] [stdout] test types::net::tests::hostname_deserialisation_enforces_the_invariant ... ok
[INFO] [stdout] test types::net::tests::cidr_round_trips_through_json ... ok
[INFO] [stdout] test types::cursor::tests::uses_the_url_safe_alphabet ... ok
[INFO] [stdout] test types::cursor::tests::debug_and_display_show_the_encoded_form ... ok
[INFO] [stdout] test types::email::tests::deserialisation_failures_carry_the_code ... ok
[INFO] [stdout] test types::password::tests::debug_never_leaks_the_secret ... ok
[INFO] [stdout] test types::net::tests::cidr_parses_both_families ... ok
[INFO] [stdout] test types::password::tests::deserialisation_enforces_the_policy_and_carries_the_code ... ok
[INFO] [stdout] test types::password::tests::json_schema_is_write_only_and_documents_the_policy ... ok
[INFO] [stdout] test types::password::tests::a_struct_holding_a_password_never_prints_it ... ok
[INFO] [stdout] test types::cursor::tests::serialises_as_the_encoded_string ... ok
[INFO] [stdout] test types::password::tests::equality_is_value_based ... ok
[INFO] [stdout] test types::password::tests::the_secret_is_reachable_only_through_expose ... ok
[INFO] [stdout] test types::password::tests::serialisation_is_refused ... ok
[INFO] [stdout] test types::slug::tests::every_constructor_enforces_the_invariant ... ok
[INFO] [stdout] test types::slug::tests::rejects_malformed_slugs_with_a_pattern_code ... ok
[INFO] [stdout] test types::password::tests::length_is_counted_in_characters_not_bytes ... ok
[INFO] [stdout] test types::password::tests::the_minimum_is_a_policy_the_application_can_raise ... ok
[INFO] [stdout] test types::slug::tests::accepts_well_formed_slugs ... ok
[INFO] [stdout] test types::slug::tests::unchecked_construction_skips_the_check ... ok
[INFO] [stdout] test types::slug::tests::rejects_over_long_slugs_with_a_len_code ... ok
[INFO] [stdout] test types::slug::tests::json_schema_documents_what_is_enforced ... ok
[INFO] [stdout] test types::slug::tests::slugify_always_produces_something_new_accepts ... ok
[INFO] [stdout] test types::slug::tests::slugify_derives_a_slug_from_free_text ... ok
[INFO] [stdout] test types::slug::tests::unique_from_keeps_the_result_within_the_length_limit ... ok
[INFO] [stdout] test types::slug::tests::unique_from_appends_the_first_free_suffix ... ok
[INFO] [stdout] test types::text::tests::escape_html_leaves_ordinary_text_borrowed ... ok
[INFO] [stdout] test types::tests::constraint_errors_become_field_errors ... ok
[INFO] [stdout] test types::slug::tests::the_hand_written_check_agrees_with_the_published_pattern ... ok
[INFO] [stdout] test types::text::tests::phone_json_schema_documents_what_is_enforced ... ok
[INFO] [stdout] test types::net::tests::hostname_enforces_both_length_limits ... ok
[INFO] [stdout] test types::text::tests::strip_tags_leaves_ordinary_text_borrowed ... ok
[INFO] [stdout] test types::text::tests::phone_rejects_everything_else_with_a_format_code ... ok
[INFO] [stdout] test types::net::tests::hostname_exposes_its_labels ... ok
[INFO] [stdout] test types::slug::tests::unique_from_terminates_on_a_predicate_that_never_yields ... ok
[INFO] [stdout] test types::net::tests::hostname_json_schema_documents_what_is_enforced ... ok
[INFO] [stdout] test types::text::tests::the_hand_written_phone_check_agrees_with_the_published_pattern ... ok
[INFO] [stdout] test types::tests::serde_messages_round_trip ... ok
[INFO] [stdout] test types::tests::foreign_serde_messages_are_ignored ... ok
[INFO] [stdout] test types::text::tests::strip_tags_removes_markup_and_keeps_text ... ok
[INFO] [stdout] test types::url::tests::accepts_absolute_urls_and_normalises_them ... ok
[INFO] [stdout] test types::text::tests::sanitised_names_its_policy ... ok
[INFO] [stdout] test types::url::tests::json_schema_documents_what_is_enforced ... ok
[INFO] [stdout] test types::url::tests::exposes_the_parsed_components ... ok
[INFO] [stdout] test types::url::tests::rejects_relative_and_malformed_urls_with_a_format_code ... ok
[INFO] [stdout] test types::url::tests::round_trips_through_json ... ok
[INFO] [stdout] test types::text::tests::escape_html_neutralises_the_five_characters ... ok
[INFO] [stdout] test types::text::tests::phone_accepts_e164_numbers ... ok
[INFO] [stdout] test types::text::tests::sanitised_cleans_on_deserialise ... ok
[INFO] [stdout] test validate::tests::context_extensions_are_typed ... ok
[INFO] [stdout] test types::text::tests::trimmed_removes_surrounding_whitespace ... ok
[INFO] [stdout] test validate::tests::error_codes_round_trip ... ok
[INFO] [stdout] test validate::tests::localise_rewrites_only_known_codes ... ok
[INFO] [stdout] test validate::tests::errors_from_context_inherit_the_cap ... ok
[INFO] [stdout] test validate::tests::merge_prefixed_lifts_nested_pointers ... ok
[INFO] [stdout] test validate::tests::pointer_stack_composes_and_unwinds ... ok
[INFO] [stdout] test validate::tests::merge_respects_the_outer_cap ... ok
[INFO] [stdout] test validate::tests::scope_restores_the_pointer_even_when_nested ... ok
[INFO] [stdout] test validate::tests::pointer_helpers_do_not_mutate_the_stack ... ok
[INFO] [stdout] test validate::tests::serialises_as_a_bare_array ... ok
[INFO] [stdout] test validate::tests::set_max_errors_truncates_in_place ... ok
[INFO] [stdout] test validate::tests::the_cap_drops_and_flags ... ok
[INFO] [stdout] test validate::tests::try_push_reports_whether_the_error_survived ... ok
[INFO] [stdout] test validate::tests::truncate_counts_what_it_removes ... ok
[INFO] [stdout] test types::url::tests::scheme_restriction_is_the_ssrf_guard ... ok
[INFO] [stdout] test validate::tests::context_message_uses_the_provider_without_an_explicit_locale ... ok
[INFO] [stdout] test validate::tests::equality_ignores_the_cap_but_not_the_content ... ok
[INFO] [stdout] test validate::tests::index_formatting_handles_large_values ... ok
[INFO] [stdout] test validate::tests::pop_at_the_root_is_a_no_op ... ok
[INFO] [stdout] test validate::tests::merge_carries_the_dropped_count_upwards ... ok
[INFO] [stdout] test validate::tests::into_result_is_ok_only_when_nothing_failed ... ok
[INFO] [stdout] test validate::tests::pointer_stack_escapes_hostile_field_names ... ok
[INFO] [stdout] test validate::tests::rooted_context_prefixes_everything ... ok
[INFO] [stdout] test validate::tests::escapes_pointer_tokens ... ok
[INFO] [stdout] test validate::tests::the_default_context_collects_errors_rather_than_discarding_them ... ok
[INFO] [stdout] test validate::tests::field_error_prefixing_is_idempotent_for_the_empty_prefix ... ok
[INFO] [stdout] test validate::tests::extend_respects_the_cap ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 226 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.08s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests moso_schema
[INFO] [stdout] 
[INFO] [stdout] running 22 tests
[INFO] [stdout] test src/message.rs - message::MessageProvider (line 275) ... FAILED
[INFO] [stdout] test src/types/id.rs - types::id::Id (line 70) - compile fail ... ok
[INFO] [stdout] test src/json_schema/mod.rs - json_schema::SchemaGenerator (line 874) ... FAILED
[INFO] [stdout] test src/types/id.rs - types::id::IdMarker (line 24) ... ok
[INFO] [stdout] test src/types/bounded.rs - types::bounded::IntegerValue (line 110) ... ok
[INFO] [stdout] test src/types/id.rs - types::id::Id (line 85) ... ok
[INFO] [stdout] test src/types/slug.rs - types::slug::Slug::from_title (line 145) ... ok
[INFO] [stdout] test src/json_schema/mod.rs - json_schema::SchemaGenerator::name_for_generic (line 1102) ... ok
[INFO] [stdout] test src/validate.rs - validate::Validate (line 946) ... FAILED
[INFO] [stdout] test src/validate.rs - validate::FieldError (line 176) ... FAILED
[INFO] [stdout] test src/json_schema/mod.rs - json_schema::IntoNumber (line 1214) ... ok
[INFO] [stdout] test src/validate.rs - validate::ValidationCtx (line 632) ... FAILED
[INFO] [stdout] test src/types/bounded.rs - types::bounded::Measured (line 28) ... ok
[INFO] [stdout] test src/types/slug.rs - types::slug::Slug::unique_from (line 162) ... ok
[INFO] [stdout] test src/lib.rs - (line 21) ... FAILED
[INFO] [stdout] test src/json_schema/mod.rs - json_schema::SchemaRef (line 733) ... ok
[INFO] [stdout] test src/schema.rs - schema::Schema (line 63) ... FAILED
[INFO] [stdout] test src/schema.rs - schema::schema_of (line 153) ... ok
[INFO] [stdout] test src/types/text.rs - types::text::SanitisePolicy (line 226) ... ok
[INFO] [stdout] test src/validate.rs - validate::ValidationErrors (line 305) ... FAILED
[INFO] [stdout] test src/validate.rs - validate::ValidationCtx::scope (line 811) ... ok
[INFO] [stdout] test src/json_schema/mod.rs - json_schema::SchemaNode (line 280) ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- src/message.rs - message::MessageProvider (line 275) stdout ----
[INFO] [stdout] error[E0433]: cannot find module or crate `moso` in this scope
[INFO] [stdout]    --> src/message.rs:276:5
[INFO] [stdout]     |
[INFO] [stdout] 276 | use moso::schema::{Locale, MessageProvider, codes};
[INFO] [stdout]     |     ^^^^ use of unresolved module or unlinked crate `moso`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `moso`, use `cargo add moso` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0433`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/json_schema/mod.rs - json_schema::SchemaGenerator (line 874) stdout ----
[INFO] [stdout] error[E0433]: cannot find module or crate `moso` in this scope
[INFO] [stdout]    --> src/json_schema/mod.rs:875:5
[INFO] [stdout]     |
[INFO] [stdout] 875 | use moso::prelude::*;
[INFO] [stdout]     |     ^^^^ use of unresolved module or unlinked crate `moso`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `moso`, use `cargo add moso` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `moso` in this scope
[INFO] [stdout]    --> src/json_schema/mod.rs:876:5
[INFO] [stdout]     |
[INFO] [stdout] 876 | use moso::schema::SchemaGenerator;
[INFO] [stdout]     |     ^^^^ use of unresolved module or unlinked crate `moso`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `moso`, use `cargo add moso` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `moso::schema::SchemaGenerator`
[INFO] [stdout]    --> src/json_schema/mod.rs:876:5
[INFO] [stdout]     |
[INFO] [stdout] 876 | use moso::schema::SchemaGenerator;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Schema` in this scope
[INFO] [stdout]    --> src/json_schema/mod.rs:879:10
[INFO] [stdout]     |
[INFO] [stdout] 879 | #[derive(Schema)]
[INFO] [stdout]     |          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Schema` in this scope
[INFO] [stdout]    --> src/json_schema/mod.rs:886:10
[INFO] [stdout]     |
[INFO] [stdout] 886 | #[derive(Schema)]
[INFO] [stdout]     |          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 5 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0432, E0433.
[INFO] [stdout] For more information about an error, try `rustc --explain E0432`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/validate.rs - validate::Validate (line 946) stdout ----
[INFO] [stdout] error[E0433]: cannot find module or crate `moso` in this scope
[INFO] [stdout]    --> src/validate.rs:947:5
[INFO] [stdout]     |
[INFO] [stdout] 947 | use moso::prelude::*;
[INFO] [stdout]     |     ^^^^ use of unresolved module or unlinked crate `moso`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `moso`, use `cargo add moso` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `moso` in this scope
[INFO] [stdout]    --> src/validate.rs:948:5
[INFO] [stdout]     |
[INFO] [stdout] 948 | use moso::schema::{Validate, ValidationCtx};
[INFO] [stdout]     |     ^^^^ use of unresolved module or unlinked crate `moso`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `moso`, use `cargo add moso` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved imports `moso::schema::Validate`, `moso::schema::ValidationCtx`
[INFO] [stdout]    --> src/validate.rs:948:20
[INFO] [stdout]     |
[INFO] [stdout] 948 | use moso::schema::{Validate, ValidationCtx};
[INFO] [stdout]     |                    ^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Schema` in this scope
[INFO] [stdout]    --> src/validate.rs:951:10
[INFO] [stdout]     |
[INFO] [stdout] 951 | #[derive(Schema)]
[INFO] [stdout]     |          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `schema` in this scope
[INFO] [stdout]    --> src/validate.rs:954:7
[INFO] [stdout]     |
[INFO] [stdout] 954 |     #[schema(len = 3..=32)]
[INFO] [stdout]     |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `validate` found for struct `CreateUser` in the current scope
[INFO] [stdout]    --> src/validate.rs:960:14
[INFO] [stdout]     |
[INFO] [stdout] 952 | pub struct CreateUser {
[INFO] [stdout]     | --------------------- method `validate` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 960 | assert!(good.validate(&mut ValidationCtx::new()).is_ok());
[INFO] [stdout]     |              ^^^^^^^^ method not found in `CreateUser`
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following trait defines an item `validate`, perhaps you need to implement it:
[INFO] [stdout]             candidate #1: `moso_schema::Validate`
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `validate` found for struct `CreateUser` in the current scope
[INFO] [stdout]    --> src/validate.rs:963:18
[INFO] [stdout]     |
[INFO] [stdout] 952 | pub struct CreateUser {
[INFO] [stdout]     | --------------------- method `validate` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 963 | let errors = bad.validate(&mut ValidationCtx::new()).unwrap_err();
[INFO] [stdout]     |                  ^^^^^^^^ method not found in `CreateUser`
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following trait defines an item `validate`, perhaps you need to implement it:
[INFO] [stdout]             candidate #1: `moso_schema::Validate`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 7 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0432, E0433, E0599.
[INFO] [stdout] For more information about an error, try `rustc --explain E0432`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/validate.rs - validate::FieldError (line 176) stdout ----
[INFO] [stdout] error[E0433]: cannot find module or crate `moso` in this scope
[INFO] [stdout]    --> src/validate.rs:177:5
[INFO] [stdout]     |
[INFO] [stdout] 177 | use moso::prelude::*;
[INFO] [stdout]     |     ^^^^ use of unresolved module or unlinked crate `moso`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `moso`, use `cargo add moso` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `moso` in this scope
[INFO] [stdout]    --> src/validate.rs:178:5
[INFO] [stdout]     |
[INFO] [stdout] 178 | use moso::schema::{Validate, ValidationCtx, codes};
[INFO] [stdout]     |     ^^^^ use of unresolved module or unlinked crate `moso`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `moso`, use `cargo add moso` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved imports `moso::schema::Validate`, `moso::schema::ValidationCtx`, `moso::schema::codes`
[INFO] [stdout]    --> src/validate.rs:178:20
[INFO] [stdout]     |
[INFO] [stdout] 178 | use moso::schema::{Validate, ValidationCtx, codes};
[INFO] [stdout]     |                    ^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Schema` in this scope
[INFO] [stdout]    --> src/validate.rs:181:10
[INFO] [stdout]     |
[INFO] [stdout] 181 | #[derive(Schema)]
[INFO] [stdout]     |          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `schema` in this scope
[INFO] [stdout]    --> src/validate.rs:184:7
[INFO] [stdout]     |
[INFO] [stdout] 184 |     #[schema(len = 3..=32)]
[INFO] [stdout]     |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `validate` found for struct `CreateUser` in the current scope
[INFO] [stdout]    --> src/validate.rs:190:6
[INFO] [stdout]     |
[INFO] [stdout] 182 | pub struct CreateUser {
[INFO] [stdout]     | --------------------- method `validate` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 189 | let errors = CreateUser { username: "ab".to_owned() }
[INFO] [stdout] 190 |     .validate(&mut ValidationCtx::new())
[INFO] [stdout]     |      ^^^^^^^^ method not found in `CreateUser`
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following trait defines an item `validate`, perhaps you need to implement it:
[INFO] [stdout]             candidate #1: `moso_schema::Validate`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 6 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0432, E0433, E0599.
[INFO] [stdout] For more information about an error, try `rustc --explain E0432`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/validate.rs - validate::ValidationCtx (line 632) stdout ----
[INFO] [stdout] error[E0433]: cannot find module or crate `moso` in this scope
[INFO] [stdout]    --> src/validate.rs:633:5
[INFO] [stdout]     |
[INFO] [stdout] 633 | use moso::prelude::*;
[INFO] [stdout]     |     ^^^^ use of unresolved module or unlinked crate `moso`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `moso`, use `cargo add moso` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `moso` in this scope
[INFO] [stdout]    --> src/validate.rs:634:5
[INFO] [stdout]     |
[INFO] [stdout] 634 | use moso::schema::{Validate, ValidationCtx};
[INFO] [stdout]     |     ^^^^ use of unresolved module or unlinked crate `moso`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `moso`, use `cargo add moso` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved imports `moso::schema::Validate`, `moso::schema::ValidationCtx`
[INFO] [stdout]    --> src/validate.rs:634:20
[INFO] [stdout]     |
[INFO] [stdout] 634 | use moso::schema::{Validate, ValidationCtx};
[INFO] [stdout]     |                    ^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Schema` in this scope
[INFO] [stdout]    --> src/validate.rs:637:10
[INFO] [stdout]     |
[INFO] [stdout] 637 | #[derive(Schema)]
[INFO] [stdout]     |          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `schema` in this scope
[INFO] [stdout]    --> src/validate.rs:640:7
[INFO] [stdout]     |
[INFO] [stdout] 640 |     #[schema(len = 3..=32)]
[INFO] [stdout]     |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `validate` found for struct `CreateUser` in the current scope
[INFO] [stdout]    --> src/validate.rs:647:6
[INFO] [stdout]     |
[INFO] [stdout] 638 | pub struct CreateUser {
[INFO] [stdout]     | --------------------- method `validate` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 646 | let errors = CreateUser { username: "ab".to_owned() }
[INFO] [stdout] 647 |     .validate(&mut ValidationCtx::new())
[INFO] [stdout]     |      ^^^^^^^^ method not found in `CreateUser`
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following trait defines an item `validate`, perhaps you need to implement it:
[INFO] [stdout]             candidate #1: `moso_schema::Validate`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 6 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0432, E0433, E0599.
[INFO] [stdout] For more information about an error, try `rustc --explain E0432`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - (line 21) stdout ----
[INFO] [stdout] error[E0433]: cannot find module or crate `moso` in this scope
[INFO] [stdout]   --> src/lib.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 23 | use moso::prelude::*;
[INFO] [stdout]    |     ^^^^ use of unresolved module or unlinked crate `moso`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `moso`, use `cargo add moso` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Schema` in this scope
[INFO] [stdout]   --> src/lib.rs:26:10
[INFO] [stdout]    |
[INFO] [stdout] 26 | #[derive(Schema)]
[INFO] [stdout]    |          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `schema` in this scope
[INFO] [stdout]   --> src/lib.rs:29:7
[INFO] [stdout]    |
[INFO] [stdout] 29 |     #[schema(len = 3..=32, pattern = r"^[a-z0-9_]+$")]
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `schema` in this scope
[INFO] [stdout]   --> src/lib.rs:34:7
[INFO] [stdout]    |
[INFO] [stdout] 34 |     #[schema(range = 13..=130)]
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `Email` in this scope
[INFO] [stdout]   --> src/lib.rs:32:16
[INFO] [stdout]    |
[INFO] [stdout] 32 |     pub email: Email,
[INFO] [stdout]    |                ^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `validate` found for struct `CreateUser` in the current scope
[INFO] [stdout]   --> src/lib.rs:43:14
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub struct CreateUser {
[INFO] [stdout]    | --------------------- method `validate` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 43 | assert!(user.validate(&mut moso_schema::ValidationCtx::new()).is_ok());
[INFO] [stdout]    |              ^^^^^^^^ method not found in `CreateUser`
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]    = note: the following trait defines an item `validate`, perhaps you need to implement it:
[INFO] [stdout]            candidate #1: `Validate`
[INFO] [stdout] help: some of the expressions' fields have a method of the same name
[INFO] [stdout]    |
[INFO] [stdout] 43 | assert!(user.age.validate(&mut moso_schema::ValidationCtx::new()).is_ok());
[INFO] [stdout]    |              ++++
[INFO] [stdout] 43 | assert!(user.username.validate(&mut moso_schema::ValidationCtx::new()).is_ok());
[INFO] [stdout]    |              +++++++++
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `CreateUser: serde::Deserialize<'de>` is not satisfied
[INFO] [stdout]     --> src/lib.rs:40:24
[INFO] [stdout]      |
[INFO] [stdout]   40 |   let user: CreateUser = serde_json::from_str(
[INFO] [stdout]      |  ________________________^
[INFO] [stdout]   41 | |     r#"{"username":"ada","email":"ada@example.com","age":36}"#,
[INFO] [stdout]   42 | | ).unwrap();
[INFO] [stdout]      | |_^ unsatisfied trait bound
[INFO] [stdout]      |
[INFO] [stdout] help: the trait `serde_core::de::Deserialize<'_>` is not implemented for `CreateUser`
[INFO] [stdout]     --> src/lib.rs:27:1
[INFO] [stdout]      |
[INFO] [stdout]   27 | pub struct CreateUser {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: for local types consider adding `#[derive(serde::Deserialize)]` to your `CreateUser` type
[INFO] [stdout]      = note: for types from other crates check whether the crate offers a `serde` feature flag
[INFO] [stdout]      = help: the following other types implement trait `serde_core::de::Deserialize<'de>`:
[INFO] [stdout]                &'a Path
[INFO] [stdout]                &'a [u8]
[INFO] [stdout]                &'a str
[INFO] [stdout]                ()
[INFO] [stdout]                (T,)
[INFO] [stdout]                (T0, T1)
[INFO] [stdout]                (T0, T1, T2)
[INFO] [stdout]                (T0, T1, T2, T3)
[INFO] [stdout]              and 177 others
[INFO] [stdout] note: required by a bound in `serde_json::from_str`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.151/src/de.rs:2711:8
[INFO] [stdout]      |
[INFO] [stdout] 2709 | pub fn from_str<'a, T>(s: &'a str) -> Result<T>
[INFO] [stdout] 2710 | where
[INFO] [stdout] 2711 |     T: de::Deserialize<'a>,
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `CreateUser` is not a Moso schema type
[INFO] [stdout]   --> src/lib.rs:47:13
[INFO] [stdout]    |
[INFO] [stdout] 47 | let node = <CreateUser as moso_schema::Schema>::json_schema(&mut generator);
[INFO] [stdout]    |             ^^^^^^^^^^ not a schema
[INFO] [stdout]    |
[INFO] [stdout] help: the trait `moso_schema::Schema` is not implemented for `CreateUser`
[INFO] [stdout]   --> src/lib.rs:27:1
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub struct CreateUser {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: request bodies, response bodies and typed parameters must implement `Schema`
[INFO] [stdout]    = note: entities deliberately do not implement `Schema`: define a separate DTO so your database columns are not your API contract
[INFO] [stdout]    = note: help: derive it:
[INFO] [stdout]                #[derive(moso::Schema)]
[INFO] [stdout]                pub struct CreateUser { /* … */ }
[INFO] [stdout]    = note: help: for a foreign type you do not own, wrap it in a newtype and derive `Schema` on the wrapper
[INFO] [stdout]    = help: the following other types implement trait `moso_schema::Schema`:
[INFO] [stdout]              ()
[INFO] [stdout]              (A, B)
[INFO] [stdout]              (A, B, C)
[INFO] [stdout]              (A, B, C, D)
[INFO] [stdout]              (A, B, C, D, E)
[INFO] [stdout]              (A, B, C, D, E, F)
[INFO] [stdout]              (A, B, C, D, E, F, G)
[INFO] [stdout]              (A, B, C, D, E, F, G, H)
[INFO] [stdout]            and 100 others
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 8 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0277, E0425, E0433, E0599.
[INFO] [stdout] For more information about an error, try `rustc --explain E0277`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/schema.rs - schema::Schema (line 63) stdout ----
[INFO] [stdout] error[E0433]: cannot find module or crate `moso` in this scope
[INFO] [stdout]   --> src/schema.rs:64:5
[INFO] [stdout]    |
[INFO] [stdout] 64 | use moso::prelude::*;
[INFO] [stdout]    |     ^^^^ use of unresolved module or unlinked crate `moso`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `moso`, use `cargo add moso` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `moso` in this scope
[INFO] [stdout]   --> src/schema.rs:65:5
[INFO] [stdout]    |
[INFO] [stdout] 65 | use moso::schema::SchemaGenerator;
[INFO] [stdout]    |     ^^^^ use of unresolved module or unlinked crate `moso`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `moso`, use `cargo add moso` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `moso::schema::SchemaGenerator`
[INFO] [stdout]   --> src/schema.rs:65:5
[INFO] [stdout]    |
[INFO] [stdout] 65 | use moso::schema::SchemaGenerator;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Schema` in this scope
[INFO] [stdout]   --> src/schema.rs:68:10
[INFO] [stdout]    |
[INFO] [stdout] 68 | #[derive(Schema)]
[INFO] [stdout]    |          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `schema` in this scope
[INFO] [stdout]   --> src/schema.rs:71:7
[INFO] [stdout]    |
[INFO] [stdout] 71 |     #[schema(len = 3..=32)]
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `Email` in this scope
[INFO] [stdout]   --> src/schema.rs:74:16
[INFO] [stdout]    |
[INFO] [stdout] 74 |     pub email: Email,
[INFO] [stdout]    |                ^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated function or constant named `schema_name` found for struct `CreateUser` in the current scope
[INFO] [stdout]   --> src/schema.rs:78:24
[INFO] [stdout]    |
[INFO] [stdout] 69 | pub struct CreateUser {
[INFO] [stdout]    | --------------------- associated function or constant `schema_name` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 78 | assert_eq!(CreateUser::schema_name(), "CreateUser");
[INFO] [stdout]    |                        ^^^^^^^^^^^ associated function or constant not found in `CreateUser`
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]    = note: the following trait defines an item `schema_name`, perhaps you need to implement it:
[INFO] [stdout]            candidate #1: `moso_schema::Schema`
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated function or constant named `HAS_CONSTRAINTS` found for struct `CreateUser` in the current scope
[INFO] [stdout]   --> src/schema.rs:79:21
[INFO] [stdout]    |
[INFO] [stdout] 69 | pub struct CreateUser {
[INFO] [stdout]    | --------------------- associated function or constant `HAS_CONSTRAINTS` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 79 | assert!(CreateUser::HAS_CONSTRAINTS);
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^ associated function or constant not found in `CreateUser`
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]    = note: the following trait defines an item `HAS_CONSTRAINTS`, perhaps you need to implement it:
[INFO] [stdout]            candidate #1: `moso_schema::Schema`
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated function or constant named `json_schema` found for struct `CreateUser` in the current scope
[INFO] [stdout]   --> src/schema.rs:82:24
[INFO] [stdout]    |
[INFO] [stdout] 69 | pub struct CreateUser {
[INFO] [stdout]    | --------------------- associated function or constant `json_schema` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 82 | let node = CreateUser::json_schema(&mut generator);
[INFO] [stdout]    |                        ^^^^^^^^^^^ associated function or constant not found in `CreateUser`
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]    = note: the following trait defines an item `json_schema`, perhaps you need to implement it:
[INFO] [stdout]            candidate #1: `moso_schema::Schema`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 9 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0425, E0432, E0433, E0599.
[INFO] [stdout] For more information about an error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/validate.rs - validate::ValidationErrors (line 305) stdout ----
[INFO] [stdout] error[E0433]: cannot find module or crate `moso` in this scope
[INFO] [stdout]    --> src/validate.rs:306:5
[INFO] [stdout]     |
[INFO] [stdout] 306 | use moso::prelude::*;
[INFO] [stdout]     |     ^^^^ use of unresolved module or unlinked crate `moso`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `moso`, use `cargo add moso` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `moso` in this scope
[INFO] [stdout]    --> src/validate.rs:307:5
[INFO] [stdout]     |
[INFO] [stdout] 307 | use moso::schema::{Validate, ValidationCtx};
[INFO] [stdout]     |     ^^^^ use of unresolved module or unlinked crate `moso`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `moso`, use `cargo add moso` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved imports `moso::schema::Validate`, `moso::schema::ValidationCtx`
[INFO] [stdout]    --> src/validate.rs:307:20
[INFO] [stdout]     |
[INFO] [stdout] 307 | use moso::schema::{Validate, ValidationCtx};
[INFO] [stdout]     |                    ^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Schema` in this scope
[INFO] [stdout]    --> src/validate.rs:310:10
[INFO] [stdout]     |
[INFO] [stdout] 310 | #[derive(Schema)]
[INFO] [stdout]     |          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `schema` in this scope
[INFO] [stdout]    --> src/validate.rs:313:7
[INFO] [stdout]     |
[INFO] [stdout] 313 |     #[schema(len = 3..=32)]
[INFO] [stdout]     |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `schema` in this scope
[INFO] [stdout]    --> src/validate.rs:316:7
[INFO] [stdout]     |
[INFO] [stdout] 316 |     #[schema(len = 1..=200)]
[INFO] [stdout]     |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `validate` found for struct `CreateUser` in the current scope
[INFO] [stdout]    --> src/validate.rs:322:18
[INFO] [stdout]     |
[INFO] [stdout] 311 | pub struct CreateUser {
[INFO] [stdout]     | --------------------- method `validate` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 322 | let errors = bad.validate(&mut ValidationCtx::new()).unwrap_err();
[INFO] [stdout]     |                  ^^^^^^^^ method not found in `CreateUser`
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following trait defines an item `validate`, perhaps you need to implement it:
[INFO] [stdout]             candidate #1: `moso_schema::Validate`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 7 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0432, E0433, E0599.
[INFO] [stdout] For more information about an error, try `rustc --explain E0432`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     src/json_schema/mod.rs - json_schema::SchemaGenerator (line 874)
[INFO] [stdout]     src/lib.rs - (line 21)
[INFO] [stdout]     src/message.rs - message::MessageProvider (line 275)
[INFO] [stdout]     src/schema.rs - schema::Schema (line 63)
[INFO] [stdout]     src/validate.rs - validate::FieldError (line 176)
[INFO] [stdout]     src/validate.rs - validate::Validate (line 946)
[INFO] [stdout]     src/validate.rs - validate::ValidationCtx (line 632)
[INFO] [stdout]     src/validate.rs - validate::ValidationErrors (line 305)
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 14 passed; 8 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.95s
[INFO] [stdout] 
[INFO] [stderr] error: doctest failed, to rerun pass `--doc`
[INFO] [stdout] all doctests ran in 2.24s; merged doctests compilation took 0.29s
[INFO] running `Command { std: "docker" "inspect" "e9b0d7316ce8dde183a24c6927919e9551b50c07836aed26d3be0358a9ec59c5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e9b0d7316ce8dde183a24c6927919e9551b50c07836aed26d3be0358a9ec59c5", kill_on_drop: false }`
[INFO] [stdout] e9b0d7316ce8dde183a24c6927919e9551b50c07836aed26d3be0358a9ec59c5
