[INFO] fetching crate immich 0.2.0...
[INFO] testing immich-0.2.0 against master#2fd6efc32704647e64d3d646d21c4c68eae100e4 for pr-149852-1
[INFO] extracting crate immich 0.2.0 into /workspace/builds/worker-1-tc1/source
[INFO] started tweaking crates.io crate immich 0.2.0
[INFO] removed 0 missing examples
[INFO] finished tweaking crates.io crate immich 0.2.0
[INFO] tweaked toml for crates.io crate immich 0.2.0 written to /workspace/builds/worker-1-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate immich 0.2.0 on toolchain 2fd6efc32704647e64d3d646d21c4c68eae100e4
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+2fd6efc32704647e64d3d646d21c4c68eae100e4" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate immich 0.2.0 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" "+2fd6efc32704647e64d3d646d21c4c68eae100e4" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded tar v0.4.43
[INFO] [stderr]   Downloaded xattr v1.4.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/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" "ghcr.io/rust-lang/crates-build-env/linux@sha256:98afbf2d16093dec2546ff8915fddc74e65664aa03fc460b3712b1c2c54a33e4" "/opt/rustwide/cargo-home/bin/cargo" "+2fd6efc32704647e64d3d646d21c4c68eae100e4" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] bf7fbe5b24a7117babd503a80ea01a9ce07e28773e8c4ae12d697f97d733574e
[INFO] running `Command { std: "docker" "start" "-a" "bf7fbe5b24a7117babd503a80ea01a9ce07e28773e8c4ae12d697f97d733574e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "bf7fbe5b24a7117babd503a80ea01a9ce07e28773e8c4ae12d697f97d733574e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bf7fbe5b24a7117babd503a80ea01a9ce07e28773e8c4ae12d697f97d733574e", kill_on_drop: false }`
[INFO] [stdout] bf7fbe5b24a7117babd503a80ea01a9ce07e28773e8c4ae12d697f97d733574e
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/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" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-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" "ghcr.io/rust-lang/crates-build-env/linux@sha256:98afbf2d16093dec2546ff8915fddc74e65664aa03fc460b3712b1c2c54a33e4" "/opt/rustwide/cargo-home/bin/cargo" "+2fd6efc32704647e64d3d646d21c4c68eae100e4" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] cc8fd8888e7e1e60118ef1e4e4db069bb1c042574b84aa1fc54945cbbbed82fe
[INFO] running `Command { std: "docker" "start" "-a" "cc8fd8888e7e1e60118ef1e4e4db069bb1c042574b84aa1fc54945cbbbed82fe", kill_on_drop: false }`
[INFO] [stderr]    Compiling litemap v0.7.4
[INFO] [stderr]    Compiling libc v0.2.169
[INFO] [stderr]    Compiling serde v1.0.217
[INFO] [stderr]    Compiling icu_locid_transform_data v1.5.0
[INFO] [stderr]    Compiling icu_properties_data v1.5.0
[INFO] [stderr]    Compiling smallvec v1.13.2
[INFO] [stderr]    Compiling rustls-pki-types v1.10.1
[INFO] [stderr]    Compiling icu_normalizer_data v1.5.0
[INFO] [stderr]    Compiling proc-macro2 v1.0.93
[INFO] [stderr]    Compiling ring v0.17.8
[INFO] [stderr]    Compiling cookie v0.18.1
[INFO] [stderr]    Compiling serde_json v1.0.137
[INFO] [stderr]    Compiling spin v0.9.8
[INFO] [stderr]    Compiling time-macros v0.2.19
[INFO] [stderr]    Compiling rustix v0.38.44
[INFO] [stderr]    Compiling form_urlencoded v1.2.1
[INFO] [stderr]    Compiling rustls v0.23.21
[INFO] [stderr]    Compiling linux-raw-sys v0.4.15
[INFO] [stderr]    Compiling log v0.4.25
[INFO] [stderr]    Compiling bitflags v2.8.0
[INFO] [stderr]    Compiling equivalent v1.0.1
[INFO] [stderr]    Compiling litrs v0.4.1
[INFO] [stderr]    Compiling rustls-pemfile v2.2.0
[INFO] [stderr]    Compiling indexmap v2.7.1
[INFO] [stderr]    Compiling miniz_oxide v0.8.3
[INFO] [stderr]    Compiling thiserror v2.0.11
[INFO] [stderr]    Compiling zeroize v1.8.1
[INFO] [stderr]    Compiling webpki-roots v0.26.7
[INFO] [stderr]    Compiling crossbeam-channel v0.5.14
[INFO] [stderr]    Compiling sha1_smol v1.0.1
[INFO] [stderr]    Compiling rustls-native-certs v0.7.3
[INFO] [stderr]    Compiling quote v1.0.38
[INFO] [stderr]    Compiling flate2 v1.0.35
[INFO] [stderr]    Compiling syn v2.0.96
[INFO] [stderr]    Compiling document-features v0.2.10
[INFO] [stderr]    Compiling getrandom v0.2.15
[INFO] [stderr]    Compiling filetime v0.2.25
[INFO] [stderr]    Compiling synstructure v0.13.1
[INFO] [stderr]    Compiling xattr v1.4.0
[INFO] [stderr]    Compiling zerovec-derive v0.10.3
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling icu_provider_macros v1.5.0
[INFO] [stderr]    Compiling serde_derive v1.0.217
[INFO] [stderr]    Compiling thiserror-impl v2.0.11
[INFO] [stderr]    Compiling zerofrom-derive v0.1.5
[INFO] [stderr]    Compiling yoke-derive v0.7.5
[INFO] [stderr]    Compiling tar v0.4.43
[INFO] [stderr]    Compiling zerofrom v0.1.5
[INFO] [stderr]    Compiling rustls-webpki v0.102.8
[INFO] [stderr]    Compiling yoke v0.7.5
[INFO] [stderr]    Compiling zerovec v0.10.4
[INFO] [stderr]    Compiling tinystr v0.7.6
[INFO] [stderr]    Compiling icu_collections v1.5.0
[INFO] [stderr]    Compiling icu_locid v1.5.0
[INFO] [stderr]    Compiling icu_provider v1.5.0
[INFO] [stderr]    Compiling icu_locid_transform v1.5.0
[INFO] [stderr]    Compiling icu_properties v1.5.1
[INFO] [stderr]    Compiling deranged v0.3.11
[INFO] [stderr]    Compiling icu_normalizer v1.5.0
[INFO] [stderr]    Compiling idna_adapter v1.2.0
[INFO] [stderr]    Compiling idna v1.0.3
[INFO] [stderr]    Compiling time v0.3.37
[INFO] [stderr]    Compiling url v2.5.4
[INFO] [stderr]    Compiling cookie_store v0.21.1
[INFO] [stderr]    Compiling ureq v2.12.1
[INFO] [stderr]    Compiling immich v0.2.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: struct `AssetUpload` is never constructed
[INFO] [stdout]   --> src/api.rs:12:19
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub(crate) struct AssetUpload<'a> {
[INFO] [stdout]    |                   ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BulkCheck` is never constructed
[INFO] [stdout]  --> src/api/requests.rs:9:19
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub(crate) struct BulkCheck {
[INFO] [stdout]   |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `serialize_timestamp` is never used
[INFO] [stdout]   --> src/utils.rs:20:15
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub(crate) fn serialize_timestamp<S: Serializer>(date: &DateTime, s: S) -> Result<S::Ok, S::Error> {
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/takeout.rs:258:19
[INFO] [stdout]     |
[INFO] [stdout] 258 |     pub fn albums(&self) -> TakeoutAlbums {
[INFO] [stdout]     |                   ^^^^^     ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 258 |     pub fn albums(&self) -> TakeoutAlbums<'_> {
[INFO] [stdout]     |                                          ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 33.74s
[INFO] running `Command { std: "docker" "inspect" "cc8fd8888e7e1e60118ef1e4e4db069bb1c042574b84aa1fc54945cbbbed82fe", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "cc8fd8888e7e1e60118ef1e4e4db069bb1c042574b84aa1fc54945cbbbed82fe", kill_on_drop: false }`
[INFO] [stdout] cc8fd8888e7e1e60118ef1e4e4db069bb1c042574b84aa1fc54945cbbbed82fe
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/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" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-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" "ghcr.io/rust-lang/crates-build-env/linux@sha256:98afbf2d16093dec2546ff8915fddc74e65664aa03fc460b3712b1c2c54a33e4" "/opt/rustwide/cargo-home/bin/cargo" "+2fd6efc32704647e64d3d646d21c4c68eae100e4" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 07b228127dbb67f9e5047f0c2fbea1470b42240dd76ad6af08a69e37b8882345
[INFO] running `Command { std: "docker" "start" "-a" "07b228127dbb67f9e5047f0c2fbea1470b42240dd76ad6af08a69e37b8882345", kill_on_drop: false }`
[INFO] [stdout] warning: struct `AssetUpload` is never constructed
[INFO] [stdout]   --> src/api.rs:12:19
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub(crate) struct AssetUpload<'a> {
[INFO] [stdout]    |                   ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BulkCheck` is never constructed
[INFO] [stdout]  --> src/api/requests.rs:9:19
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub(crate) struct BulkCheck {
[INFO] [stdout]   |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `serialize_timestamp` is never used
[INFO] [stdout]   --> src/utils.rs:20:15
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub(crate) fn serialize_timestamp<S: Serializer>(date: &DateTime, s: S) -> Result<S::Ok, S::Error> {
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/takeout.rs:258:19
[INFO] [stdout]     |
[INFO] [stdout] 258 |     pub fn albums(&self) -> TakeoutAlbums {
[INFO] [stdout]     |                   ^^^^^     ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 258 |     pub fn albums(&self) -> TakeoutAlbums<'_> {
[INFO] [stdout]     |                                          ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling immich v0.2.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: struct `AssetUpload` is never constructed
[INFO] [stdout]   --> src/api.rs:12:19
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub(crate) struct AssetUpload<'a> {
[INFO] [stdout]    |                   ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BulkCheck` is never constructed
[INFO] [stdout]  --> src/api/requests.rs:9:19
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub(crate) struct BulkCheck {
[INFO] [stdout]   |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `serialize_timestamp` is never used
[INFO] [stdout]   --> src/utils.rs:20:15
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub(crate) fn serialize_timestamp<S: Serializer>(date: &DateTime, s: S) -> Result<S::Ok, S::Error> {
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/takeout.rs:258:19
[INFO] [stdout]     |
[INFO] [stdout] 258 |     pub fn albums(&self) -> TakeoutAlbums {
[INFO] [stdout]     |                   ^^^^^     ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 258 |     pub fn albums(&self) -> TakeoutAlbums<'_> {
[INFO] [stdout]     |                                          ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1.98s
[INFO] running `Command { std: "docker" "inspect" "07b228127dbb67f9e5047f0c2fbea1470b42240dd76ad6af08a69e37b8882345", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "07b228127dbb67f9e5047f0c2fbea1470b42240dd76ad6af08a69e37b8882345", kill_on_drop: false }`
[INFO] [stdout] 07b228127dbb67f9e5047f0c2fbea1470b42240dd76ad6af08a69e37b8882345
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/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" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-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" "ghcr.io/rust-lang/crates-build-env/linux@sha256:98afbf2d16093dec2546ff8915fddc74e65664aa03fc460b3712b1c2c54a33e4" "/opt/rustwide/cargo-home/bin/cargo" "+2fd6efc32704647e64d3d646d21c4c68eae100e4" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] a65ae3f971a2925fd1da0d8c64f7d04669fcc9426a5d06ed75a71e7b1f813d89
[INFO] running `Command { std: "docker" "start" "-a" "a65ae3f971a2925fd1da0d8c64f7d04669fcc9426a5d06ed75a71e7b1f813d89", kill_on_drop: false }`
[INFO] [stderr] warning: struct `AssetUpload` is never constructed
[INFO] [stderr]   --> src/api.rs:12:19
[INFO] [stderr]    |
[INFO] [stderr] 12 | pub(crate) struct AssetUpload<'a> {
[INFO] [stderr]    |                   ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: struct `BulkCheck` is never constructed
[INFO] [stderr]  --> src/api/requests.rs:9:19
[INFO] [stderr]   |
[INFO] [stderr] 9 | pub(crate) struct BulkCheck {
[INFO] [stderr]   |                   ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `serialize_timestamp` is never used
[INFO] [stderr]   --> src/utils.rs:20:15
[INFO] [stderr]    |
[INFO] [stderr] 20 | pub(crate) fn serialize_timestamp<S: Serializer>(date: &DateTime, s: S) -> Result<S::Ok, S::Error> {
[INFO] [stderr]    |               ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/takeout.rs:258:19
[INFO] [stderr]     |
[INFO] [stderr] 258 |     pub fn albums(&self) -> TakeoutAlbums {
[INFO] [stderr]     |                   ^^^^^     ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                   |
[INFO] [stderr]     |                   the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 258 |     pub fn albums(&self) -> TakeoutAlbums<'_> {
[INFO] [stderr]     |                                          ++++
[INFO] [stderr] 
[INFO] [stderr] warning: `immich` (lib) generated 4 warnings (run `cargo fix --lib -p immich` to apply 1 suggestion)
[INFO] [stderr] warning: `immich` (lib test) generated 4 warnings (4 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.16s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/immich-b5beceb44645140d)
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stdout] test takeout::metadata::tests::parse_json ... ok
[INFO] [stdout] test takeout::file::tests::normalize_duplicates ... ok
[INFO] [stdout] test utils::tests::test_safe_uuid ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests immich
[INFO] [stdout] 
[INFO] [stdout] running 39 tests
[INFO] [stdout] test src/album.rs - album::Albums (line 212) - compile ... ok
[INFO] [stdout] test src/album.rs - album::Album (line 18) - compile ... ok
[INFO] [stdout] test src/album.rs - album::Album::new (line 54) - compile ... ok
[INFO] [stdout] test src/album.rs - album::Album::get_or_create (line 92) - compile ... ok
[INFO] [stdout] test src/asset.rs - asset::Asset::upload (line 276) - compile ... ok
[INFO] [stdout] test src/client.rs - client::Client::upload (line 187) - compile ... ok
[INFO] [stdout] test src/client.rs - client::Client::albums (line 135) - compile ... ok
[INFO] [stdout] test src/client.rs - client::Client::with_key (line 72) - compile ... ok
[INFO] [stdout] test src/client.rs - client::Client::with_email (line 53) - compile ... ok
[INFO] [stdout] test src/client.rs - client::Client::upload_to_album (line 282) - compile ... ok
[INFO] [stdout] test src/client.rs - client::Client::upload (line 223) - compile ... ok
[INFO] [stdout] test src/asset.rs - asset::Asset::checksum (line 261) ... ok
[INFO] [stdout] test src/asset.rs - asset::Asset::device_asset_id (line 109) ... ok
[INFO] [stdout] test src/lib.rs - (line 19) ... ok
[INFO] [stdout] test src/takeout.rs - takeout::Takeout (line 113) - compile ... ok
[INFO] [stdout] test src/takeout.rs - takeout::Iter (line 310) - compile ... ok
[INFO] [stdout] test src/takeout.rs - takeout (line 6) - compile ... ok
[INFO] [stdout] test src/lib.rs - (line 36) ... ok
[INFO] [stdout] test src/asset.rs - asset::Asset::owner (line 210) ... ok
[INFO] [stdout] test src/asset.rs - asset::Asset::device_asset_id_mut (line 124) ... ok
[INFO] [stdout] test src/asset.rs - asset::Asset::device_id (line 141) ... ok
[INFO] [stdout] test src/asset.rs - asset::Asset::id (line 86) ... ok
[INFO] [stdout] test src/lib.rs - (line 62) ... ok
[INFO] [stdout] test src/takeout/upload.rs - takeout::upload::Uploader::is_empty (line 137) - compile ... ok
[INFO] [stdout] test src/asset.rs - asset::Asset (line 55) ... ok
[INFO] [stdout] test src/takeout/upload.rs - takeout::upload::Uploader::new (line 71) - compile ... ok
[INFO] [stdout] test src/takeout/upload.rs - takeout::upload::Uploader::assets (line 98) - compile ... ok
[INFO] [stdout] test src/takeout.rs - takeout::Takeout::records (line 239) - compile ... ok
[INFO] [stdout] test src/takeout/upload.rs - takeout::upload::Uploader::len (line 122) - compile ... ok
[INFO] [stdout] test src/asset.rs - asset::Asset::asset_data (line 192) ... ok
[INFO] [stdout] test src/takeout/upload.rs - takeout::upload::Uploader::filter_assets (line 162) - compile ... ok
[INFO] [stdout] test src/takeout/upload.rs - takeout::upload::Uploader (line 20) - compile ... ok
[INFO] [stdout] test src/takeout/upload.rs - takeout::upload::Uploader::upload (line 206) - compile ... ok
[INFO] [stdout] test src/takeout.rs - takeout::Takeout::with_rules (line 170) - compile ... ok
[INFO] [stdout] test src/asset.rs - asset::Asset::created_at (line 159) ... FAILED
[INFO] [stdout] test src/asset.rs - asset::Asset::modified_at (line 177) ... FAILED
[INFO] [stdout] test src/takeout.rs - takeout::Takeout::new (line 145) - compile ... ok
[INFO] [stdout] test src/asset.rs - asset::Asset::try_from (line 381) ... FAILED
[INFO] [stdout] test src/asset.rs - asset::Asset::try_from (line 343) ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- src/asset.rs - asset::Asset::created_at (line 159) stdout ----
[INFO] [stdout] Test executable failed (exit status: 101).
[INFO] [stdout] 
[INFO] [stdout] stderr:
[INFO] [stdout] 
[INFO] [stdout] thread 'main' (526) panicked at src/asset.rs:9:1:
[INFO] [stdout] assertion `left == right` failed
[INFO] [stdout]   left: "2026-01-17T09:07:14.000Z"
[INFO] [stdout]  right: "2025-01-28T05:42:36.000Z"
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x56b1f4e1cf82 - std[716c9a7a72e5c14e]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x56b1f4e1cf82 - std[716c9a7a72e5c14e]::backtrace_rs::backtrace::trace_unsynchronized::<std[716c9a7a72e5c14e]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x56b1f4e1cf82 - std[716c9a7a72e5c14e]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x56b1f4e1cf82 - <<std[716c9a7a72e5c14e]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[c5ed12ab89cc536a]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x56b1f4e2ec0a - <core[c5ed12ab89cc536a]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x56b1f4e2ec0a - core[c5ed12ab89cc536a]::fmt::write
[INFO] [stdout]    6:     0x56b1f4e20f36 - std[716c9a7a72e5c14e]::io::default_write_fmt::<std[716c9a7a72e5c14e]::sys::stdio::unix::Stderr>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x56b1f4e20f36 - <std[716c9a7a72e5c14e]::sys::stdio::unix::Stderr as std[716c9a7a72e5c14e]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x56b1f4e07f5f - <std[716c9a7a72e5c14e]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x56b1f4e07f5f - std[716c9a7a72e5c14e]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x56b1f4e19431 - std[716c9a7a72e5c14e]::panicking::default_hook
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:319:9
[INFO] [stdout]   11:     0x56b1f4e195eb - std[716c9a7a72e5c14e]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:825:13
[INFO] [stdout]   12:     0x56b1f4e08018 - std[716c9a7a72e5c14e]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:698:13
[INFO] [stdout]   13:     0x56b1f4dffd19 - std[716c9a7a72e5c14e]::sys::backtrace::__rust_end_short_backtrace::<std[716c9a7a72e5c14e]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   14:     0x56b1f4e0883d - __rustc[4f0b026143eab78e]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:689:5
[INFO] [stdout]   15:     0x56b1f4e2f27c - core[c5ed12ab89cc536a]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panicking.rs:80:14
[INFO] [stdout]   16:     0x56b1f4e2f193 - core[c5ed12ab89cc536a]::panicking::assert_failed_inner
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panicking.rs:439:17
[INFO] [stdout]   17:     0x56b1f4dd72b5 - core[c5ed12ab89cc536a]::panicking::assert_failed::<alloc[9c68fdf4f4f29218]::string::String, &str>
[INFO] [stdout]   18:     0x56b1f4dd74df - rust_out[31cf89adcf23a82a]::main::_doctest_main_src_asset_rs_159_0
[INFO] [stdout]   19:     0x56b1f4dd7306 - rust_out[31cf89adcf23a82a]::main
[INFO] [stdout]   20:     0x56b1f4dd78b3 - <fn() as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]   21:     0x56b1f4dd72c6 - std[716c9a7a72e5c14e]::sys::backtrace::__rust_begin_short_backtrace::<fn(), ()>
[INFO] [stdout]   22:     0x56b1f4dd72d9 - std[716c9a7a72e5c14e]::rt::lang_start::<()>::{closure#0}
[INFO] [stdout]   23:     0x56b1f4e18a26 - <&dyn core[c5ed12ab89cc536a]::ops::function::Fn<(), Output = i32> + core[c5ed12ab89cc536a]::marker::Sync + core[c5ed12ab89cc536a]::panic::unwind_safe::RefUnwindSafe as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/ops/function.rs:287:21
[INFO] [stdout]   24:     0x56b1f4e18a26 - std[716c9a7a72e5c14e]::panicking::catch_unwind::do_call::<&dyn core[c5ed12ab89cc536a]::ops::function::Fn<(), Output = i32> + core[c5ed12ab89cc536a]::marker::Sync + core[c5ed12ab89cc536a]::panic::unwind_safe::RefUnwindSafe, i32>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:581:40
[INFO] [stdout]   25:     0x56b1f4e18a26 - std[716c9a7a72e5c14e]::panicking::catch_unwind::<i32, &dyn core[c5ed12ab89cc536a]::ops::function::Fn<(), Output = i32> + core[c5ed12ab89cc536a]::marker::Sync + core[c5ed12ab89cc536a]::panic::unwind_safe::RefUnwindSafe>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:544:19
[INFO] [stdout]   26:     0x56b1f4e18a26 - std[716c9a7a72e5c14e]::panic::catch_unwind::<&dyn core[c5ed12ab89cc536a]::ops::function::Fn<(), Output = i32> + core[c5ed12ab89cc536a]::marker::Sync + core[c5ed12ab89cc536a]::panic::unwind_safe::RefUnwindSafe, i32>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panic.rs:359:14
[INFO] [stdout]   27:     0x56b1f4e18a26 - std[716c9a7a72e5c14e]::rt::lang_start_internal::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/rt.rs:175:24
[INFO] [stdout]   28:     0x56b1f4e18a26 - std[716c9a7a72e5c14e]::panicking::catch_unwind::do_call::<std[716c9a7a72e5c14e]::rt::lang_start_internal::{closure#0}, isize>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:581:40
[INFO] [stdout]   29:     0x56b1f4e18a26 - std[716c9a7a72e5c14e]::panicking::catch_unwind::<isize, std[716c9a7a72e5c14e]::rt::lang_start_internal::{closure#0}>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:544:19
[INFO] [stdout]   30:     0x56b1f4e18a26 - std[716c9a7a72e5c14e]::panic::catch_unwind::<std[716c9a7a72e5c14e]::rt::lang_start_internal::{closure#0}, isize>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panic.rs:359:14
[INFO] [stdout]   31:     0x56b1f4e18a26 - std[716c9a7a72e5c14e]::rt::lang_start_internal
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/rt.rs:171:5
[INFO] [stdout]   32:     0x56b1f4dd7271 - std[716c9a7a72e5c14e]::rt::lang_start::<()>
[INFO] [stdout]   33:     0x56b1f4dd7915 - main
[INFO] [stdout]   34:     0x7ce83aea81ca - <unknown>
[INFO] [stdout]   35:     0x7ce83aea828b - __libc_start_main
[INFO] [stdout]   36:     0x56b1f4dd7185 - _start
[INFO] [stdout]   37:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] ---- src/asset.rs - asset::Asset::modified_at (line 177) stdout ----
[INFO] [stdout] Test executable failed (exit status: 101).
[INFO] [stdout] 
[INFO] [stdout] stderr:
[INFO] [stdout] 
[INFO] [stdout] thread 'main' (563) panicked at src/asset.rs:9:1:
[INFO] [stdout] assertion `left == right` failed
[INFO] [stdout]   left: "2006-07-24T01:21:28.000Z"
[INFO] [stdout]  right: "2025-01-28T05:42:36.000Z"
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x55abfdd1ef82 - std[716c9a7a72e5c14e]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x55abfdd1ef82 - std[716c9a7a72e5c14e]::backtrace_rs::backtrace::trace_unsynchronized::<std[716c9a7a72e5c14e]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x55abfdd1ef82 - std[716c9a7a72e5c14e]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x55abfdd1ef82 - <<std[716c9a7a72e5c14e]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[c5ed12ab89cc536a]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x55abfdd30c0a - <core[c5ed12ab89cc536a]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x55abfdd30c0a - core[c5ed12ab89cc536a]::fmt::write
[INFO] [stdout]    6:     0x55abfdd22f36 - std[716c9a7a72e5c14e]::io::default_write_fmt::<std[716c9a7a72e5c14e]::sys::stdio::unix::Stderr>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x55abfdd22f36 - <std[716c9a7a72e5c14e]::sys::stdio::unix::Stderr as std[716c9a7a72e5c14e]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x55abfdd09f5f - <std[716c9a7a72e5c14e]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x55abfdd09f5f - std[716c9a7a72e5c14e]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x55abfdd1b431 - std[716c9a7a72e5c14e]::panicking::default_hook
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:319:9
[INFO] [stdout]   11:     0x55abfdd1b5eb - std[716c9a7a72e5c14e]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:825:13
[INFO] [stdout]   12:     0x55abfdd0a018 - std[716c9a7a72e5c14e]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:698:13
[INFO] [stdout]   13:     0x55abfdd01d19 - std[716c9a7a72e5c14e]::sys::backtrace::__rust_end_short_backtrace::<std[716c9a7a72e5c14e]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   14:     0x55abfdd0a83d - __rustc[4f0b026143eab78e]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:689:5
[INFO] [stdout]   15:     0x55abfdd3127c - core[c5ed12ab89cc536a]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panicking.rs:80:14
[INFO] [stdout]   16:     0x55abfdd31193 - core[c5ed12ab89cc536a]::panicking::assert_failed_inner
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panicking.rs:439:17
[INFO] [stdout]   17:     0x55abfdcd92b5 - core[c5ed12ab89cc536a]::panicking::assert_failed::<alloc[9c68fdf4f4f29218]::string::String, &str>
[INFO] [stdout]   18:     0x55abfdcd94df - rust_out[31cf89adcf23a82a]::main::_doctest_main_src_asset_rs_177_0
[INFO] [stdout]   19:     0x55abfdcd9306 - rust_out[31cf89adcf23a82a]::main
[INFO] [stdout]   20:     0x55abfdcd98b3 - <fn() as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]   21:     0x55abfdcd92c6 - std[716c9a7a72e5c14e]::sys::backtrace::__rust_begin_short_backtrace::<fn(), ()>
[INFO] [stdout]   22:     0x55abfdcd92d9 - std[716c9a7a72e5c14e]::rt::lang_start::<()>::{closure#0}
[INFO] [stdout]   23:     0x55abfdd1aa26 - <&dyn core[c5ed12ab89cc536a]::ops::function::Fn<(), Output = i32> + core[c5ed12ab89cc536a]::marker::Sync + core[c5ed12ab89cc536a]::panic::unwind_safe::RefUnwindSafe as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/ops/function.rs:287:21
[INFO] [stdout]   24:     0x55abfdd1aa26 - std[716c9a7a72e5c14e]::panicking::catch_unwind::do_call::<&dyn core[c5ed12ab89cc536a]::ops::function::Fn<(), Output = i32> + core[c5ed12ab89cc536a]::marker::Sync + core[c5ed12ab89cc536a]::panic::unwind_safe::RefUnwindSafe, i32>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:581:40
[INFO] [stdout]   25:     0x55abfdd1aa26 - std[716c9a7a72e5c14e]::panicking::catch_unwind::<i32, &dyn core[c5ed12ab89cc536a]::ops::function::Fn<(), Output = i32> + core[c5ed12ab89cc536a]::marker::Sync + core[c5ed12ab89cc536a]::panic::unwind_safe::RefUnwindSafe>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:544:19
[INFO] [stdout]   26:     0x55abfdd1aa26 - std[716c9a7a72e5c14e]::panic::catch_unwind::<&dyn core[c5ed12ab89cc536a]::ops::function::Fn<(), Output = i32> + core[c5ed12ab89cc536a]::marker::Sync + core[c5ed12ab89cc536a]::panic::unwind_safe::RefUnwindSafe, i32>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panic.rs:359:14
[INFO] [stdout]   27:     0x55abfdd1aa26 - std[716c9a7a72e5c14e]::rt::lang_start_internal::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/rt.rs:175:24
[INFO] [stdout]   28:     0x55abfdd1aa26 - std[716c9a7a72e5c14e]::panicking::catch_unwind::do_call::<std[716c9a7a72e5c14e]::rt::lang_start_internal::{closure#0}, isize>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:581:40
[INFO] [stdout]   29:     0x55abfdd1aa26 - std[716c9a7a72e5c14e]::panicking::catch_unwind::<isize, std[716c9a7a72e5c14e]::rt::lang_start_internal::{closure#0}>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:544:19
[INFO] [stdout]   30:     0x55abfdd1aa26 - std[716c9a7a72e5c14e]::panic::catch_unwind::<std[716c9a7a72e5c14e]::rt::lang_start_internal::{closure#0}, isize>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panic.rs:359:14
[INFO] [stdout]   31:     0x55abfdd1aa26 - std[716c9a7a72e5c14e]::rt::lang_start_internal
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/rt.rs:171:5
[INFO] [stdout]   32:     0x55abfdcd9271 - std[716c9a7a72e5c14e]::rt::lang_start::<()>
[INFO] [stdout]   33:     0x55abfdcd9915 - main
[INFO] [stdout]   34:     0x704007a8b1ca - <unknown>
[INFO] [stdout]   35:     0x704007a8b28b - __libc_start_main
[INFO] [stdout]   36:     0x55abfdcd9185 - _start
[INFO] [stdout]   37:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] ---- src/asset.rs - asset::Asset::try_from (line 381) stdout ----
[INFO] [stdout] Test executable failed (exit status: 101).
[INFO] [stdout] 
[INFO] [stdout] stderr:
[INFO] [stdout] 
[INFO] [stdout] thread 'main' (533) panicked at src/asset.rs:10:1:
[INFO] [stdout] assertion `left == right` failed
[INFO] [stdout]   left: "Immich-0.1 (Rust Client) - 20260117_090714"
[INFO] [stdout]  right: "Immich-0.1 (Rust Client) - 20250128_054236"
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5833c1a55692 - std[716c9a7a72e5c14e]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5833c1a55692 - std[716c9a7a72e5c14e]::backtrace_rs::backtrace::trace_unsynchronized::<std[716c9a7a72e5c14e]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5833c1a55692 - std[716c9a7a72e5c14e]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5833c1a55692 - <<std[716c9a7a72e5c14e]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[c5ed12ab89cc536a]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5833c1a6731a - <core[c5ed12ab89cc536a]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5833c1a6731a - core[c5ed12ab89cc536a]::fmt::write
[INFO] [stdout]    6:     0x5833c1a59646 - std[716c9a7a72e5c14e]::io::default_write_fmt::<std[716c9a7a72e5c14e]::sys::stdio::unix::Stderr>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5833c1a59646 - <std[716c9a7a72e5c14e]::sys::stdio::unix::Stderr as std[716c9a7a72e5c14e]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x5833c1a406cf - <std[716c9a7a72e5c14e]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5833c1a406cf - std[716c9a7a72e5c14e]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5833c1a51b41 - std[716c9a7a72e5c14e]::panicking::default_hook
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:319:9
[INFO] [stdout]   11:     0x5833c1a51cfb - std[716c9a7a72e5c14e]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:825:13
[INFO] [stdout]   12:     0x5833c1a40788 - std[716c9a7a72e5c14e]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:698:13
[INFO] [stdout]   13:     0x5833c1a38489 - std[716c9a7a72e5c14e]::sys::backtrace::__rust_end_short_backtrace::<std[716c9a7a72e5c14e]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   14:     0x5833c1a40fad - __rustc[4f0b026143eab78e]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:689:5
[INFO] [stdout]   15:     0x5833c1a6798c - core[c5ed12ab89cc536a]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panicking.rs:80:14
[INFO] [stdout]   16:     0x5833c1a678a3 - core[c5ed12ab89cc536a]::panicking::assert_failed_inner
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panicking.rs:439:17
[INFO] [stdout]   17:     0x5833c1a11466 - core[c5ed12ab89cc536a]::panicking::assert_failed::<&str, &str>
[INFO] [stdout]   18:     0x5833c1a116f1 - rust_out[31cf89adcf23a82a]::main::_doctest_main_src_asset_rs_381_0
[INFO] [stdout]   19:     0x5833c1a114b6 - rust_out[31cf89adcf23a82a]::main
[INFO] [stdout]   20:     0x5833c1a119e3 - <fn() as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]   21:     0x5833c1a11476 - std[716c9a7a72e5c14e]::sys::backtrace::__rust_begin_short_backtrace::<fn(), ()>
[INFO] [stdout]   22:     0x5833c1a11489 - std[716c9a7a72e5c14e]::rt::lang_start::<()>::{closure#0}
[INFO] [stdout]   23:     0x5833c1a51136 - <&dyn core[c5ed12ab89cc536a]::ops::function::Fn<(), Output = i32> + core[c5ed12ab89cc536a]::marker::Sync + core[c5ed12ab89cc536a]::panic::unwind_safe::RefUnwindSafe as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/ops/function.rs:287:21
[INFO] [stdout]   24:     0x5833c1a51136 - std[716c9a7a72e5c14e]::panicking::catch_unwind::do_call::<&dyn core[c5ed12ab89cc536a]::ops::function::Fn<(), Output = i32> + core[c5ed12ab89cc536a]::marker::Sync + core[c5ed12ab89cc536a]::panic::unwind_safe::RefUnwindSafe, i32>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:581:40
[INFO] [stdout]   25:     0x5833c1a51136 - std[716c9a7a72e5c14e]::panicking::catch_unwind::<i32, &dyn core[c5ed12ab89cc536a]::ops::function::Fn<(), Output = i32> + core[c5ed12ab89cc536a]::marker::Sync + core[c5ed12ab89cc536a]::panic::unwind_safe::RefUnwindSafe>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:544:19
[INFO] [stdout]   26:     0x5833c1a51136 - std[716c9a7a72e5c14e]::panic::catch_unwind::<&dyn core[c5ed12ab89cc536a]::ops::function::Fn<(), Output = i32> + core[c5ed12ab89cc536a]::marker::Sync + core[c5ed12ab89cc536a]::panic::unwind_safe::RefUnwindSafe, i32>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panic.rs:359:14
[INFO] [stdout]   27:     0x5833c1a51136 - std[716c9a7a72e5c14e]::rt::lang_start_internal::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/rt.rs:175:24
[INFO] [stdout]   28:     0x5833c1a51136 - std[716c9a7a72e5c14e]::panicking::catch_unwind::do_call::<std[716c9a7a72e5c14e]::rt::lang_start_internal::{closure#0}, isize>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:581:40
[INFO] [stdout]   29:     0x5833c1a51136 - std[716c9a7a72e5c14e]::panicking::catch_unwind::<isize, std[716c9a7a72e5c14e]::rt::lang_start_internal::{closure#0}>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:544:19
[INFO] [stdout]   30:     0x5833c1a51136 - std[716c9a7a72e5c14e]::panic::catch_unwind::<std[716c9a7a72e5c14e]::rt::lang_start_internal::{closure#0}, isize>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panic.rs:359:14
[INFO] [stdout]   31:     0x5833c1a51136 - std[716c9a7a72e5c14e]::rt::lang_start_internal
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/rt.rs:171:5
[INFO] [stdout]   32:     0x5833c1a11421 - std[716c9a7a72e5c14e]::rt::lang_start::<()>
[INFO] [stdout]   33:     0x5833c1a11a45 - main
[INFO] [stdout]   34:     0x7ca928d501ca - <unknown>
[INFO] [stdout]   35:     0x7ca928d5028b - __libc_start_main
[INFO] [stdout]   36:     0x5833c1a11285 - _start
[INFO] [stdout]   37:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     src/asset.rs - asset::Asset::created_at (line 159)
[INFO] [stdout]     src/asset.rs - asset::Asset::modified_at (line 177)
[INFO] [stdout]     src/asset.rs - asset::Asset::try_from (line 381)
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 36 passed; 3 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.35s
[INFO] [stdout] 
[INFO] [stderr] error: doctest failed, to rerun pass `--doc`
[INFO] running `Command { std: "docker" "inspect" "a65ae3f971a2925fd1da0d8c64f7d04669fcc9426a5d06ed75a71e7b1f813d89", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a65ae3f971a2925fd1da0d8c64f7d04669fcc9426a5d06ed75a71e7b1f813d89", kill_on_drop: false }`
[INFO] [stdout] a65ae3f971a2925fd1da0d8c64f7d04669fcc9426a5d06ed75a71e7b1f813d89
