Compare commits

..

6 commits

Author SHA1 Message Date
Renovate
37b93750bd fix(deps): update rust crate bon to v3
All checks were successful
Checking Renovate configuration / validate (pull_request) Successful in 1m58s
Build and test / Clippy (pull_request) Successful in 2m23s
Build and test / Tests (pull_request) Successful in 2m32s
Checking yaml / Run yamllint (pull_request) Successful in 4s
Build and test / Build AMD64 (pull_request) Successful in 1m45s
Build and test / Generate Documentation (pull_request) Successful in 1m40s
2025-08-01 15:32:17 +10:00
Renovate
5b703310ba chore(deps): lock file maintenance
All checks were successful
Build and test / Clippy (pull_request) Successful in 1m59s
Build and test / Build AMD64 (pull_request) Successful in 1m57s
Build and test / Generate Documentation (pull_request) Successful in 1m39s
Checking Renovate configuration / validate (pull_request) Successful in 1m50s
Checking yaml / Run yamllint (pull_request) Successful in 12s
Build and test / Tests (pull_request) Successful in 1m40s
2025-08-01 15:06:51 +10:00
47c039cc71
chore(deps): update rust crate progenitor to 0.11.0
All checks were successful
Checking Renovate configuration / validate (pull_request) Successful in 1m37s
Build and test / Tests (pull_request) Successful in 1m52s
Build and test / Clippy (pull_request) Successful in 1m52s
Checking yaml / Run yamllint (pull_request) Successful in 3s
Build and test / Build AMD64 (pull_request) Successful in 1m53s
Build and test / Generate Documentation (pull_request) Successful in 1m53s
2025-08-01 14:58:17 +10:00
Renovate
7ddc1ef26d fix(deps): update rust crate uuid to v1.17.0
All checks were successful
Checking Renovate configuration / validate (pull_request) Successful in 1m17s
Build and test / Clippy (pull_request) Successful in 1m32s
Build and test / Tests (pull_request) Successful in 1m37s
Build and test / Build AMD64 (pull_request) Successful in 1m34s
Checking yaml / Run yamllint (pull_request) Successful in 3s
Build and test / Generate Documentation (pull_request) Successful in 1m5s
2025-08-01 14:39:19 +10:00
Renovate
9da2855b49 fix(deps): update rust crate directories to v6
All checks were successful
Build and test / Clippy (pull_request) Successful in 1m20s
Checking Renovate configuration / validate (pull_request) Successful in 1m9s
Build and test / Generate Documentation (pull_request) Successful in 1m5s
Build and test / Tests (pull_request) Successful in 1m25s
Build and test / Build AMD64 (pull_request) Successful in 1m21s
Checking yaml / Run yamllint (pull_request) Successful in 3s
2025-08-01 14:36:42 +10:00
Renovate
266aa71804 chore(deps): update rust crate openapiv3 to v2.2.0
All checks were successful
Checking Renovate configuration / validate (pull_request) Successful in 1m20s
Checking yaml / Run yamllint (pull_request) Successful in 5s
Build and test / Generate Documentation (pull_request) Successful in 1m17s
Build and test / Clippy (pull_request) Successful in 1m21s
Build and test / Tests (pull_request) Successful in 1m34s
Build and test / Build AMD64 (pull_request) Successful in 55s
2025-08-01 14:13:41 +10:00
6 changed files with 765 additions and 459 deletions

1200
Cargo.lock generated

File diff suppressed because it is too large Load diff

View file

@ -18,13 +18,13 @@ clap = { version = "4.5.20", features = ["derive"] }
clap-verbosity-flag = "2.2.2"
color-eyre = "0.6.3"
dialoguer = "0.11.0"
directories = "5.0.1"
directories = "6.0.0"
figment = { version = "0.10.19", features = ["env", "toml"] }
figment_file_provider_adapter = "0.1.1"
log = "0.4.22"
multimap = "0.10.0"
pretty_env_logger = "0.5.0"
progenitor-client = "0.8.0"
progenitor-client = "0.11.0"
readonly = "0.2.12"
regress = "0.10.1"
reqwest = { version = "0.12.8", features = ["json", "stream"] }
@ -37,7 +37,7 @@ vcard4 = "0.5.2"
[build-dependencies]
openapiv3 = "2.0.0"
prettyplease = "0.2.24"
progenitor = "0.8.0"
progenitor = "0.11.0"
serde_json = "1.0"
syn = "2.0"

View file

@ -50,7 +50,7 @@ pub async fn auto_create_albums(ctx: Context, separator: String) -> Result<()> {
.cloned()
.collect();
info!("Creating missing albums: {:?}", missing_albums);
info!("Creating missing albums: {missing_albums:?}");
for missing_album in &missing_albums {
let assets = sorted_assets

View file

@ -55,8 +55,7 @@ pub async fn sync_date_of_birth(ctx: Context, vcard_file: &PathBuf) -> Result<()
let bday = vcard_date_to_naive_date(dt.value.first().unwrap().clone())?;
if c.date_of_birth.as_ref().is_some_and(|bdate| bday == *bdate) {
debug!(
"{} already has the proper date of birth, skipping",
formatted_name
"{formatted_name} already has the proper date of birth, skipping"
);
} else if bday.year() > 0 {
UpdatePersonDateOfBirth::new(UpdatePersonDateOfBirthArgs {
@ -68,8 +67,7 @@ pub async fn sync_date_of_birth(ctx: Context, vcard_file: &PathBuf) -> Result<()
updated_dobs += 1;
} else {
debug!(
"{} has an incomplete date of birth, skipping",
formatted_name
"{formatted_name} has an incomplete date of birth, skipping"
);
}
}
@ -77,14 +75,14 @@ pub async fn sync_date_of_birth(ctx: Context, vcard_file: &PathBuf) -> Result<()
todo!("{}: DateTimeOrTextProperty({})", formatted_name, prop)
}
},
None => debug!("No Immich match for {}", formatted_name),
None => debug!("No Immich match for {formatted_name}"),
}
}
None => todo!(),
}
}
info!("Updated {} persons", updated_dobs);
info!("Updated {updated_dobs} persons");
Ok(())
}

View file

@ -55,7 +55,7 @@ async fn main() -> Result<()> {
if let Some(project_dirs) = ProjectDirs::from("fr", "enoent", "Immich Tools") {
let config_file_path = project_dirs.config_dir().join("config.toml");
if config_file_path.exists() {
debug!("Reading configuration from {:?}", config_file_path);
debug!("Reading configuration from {config_file_path:?}");
conf_extractor =
conf_extractor.merge(FileAdapter::wrap(Toml::file_exact(config_file_path)));
}
@ -135,7 +135,7 @@ async fn validate_client_connection(client: &Client) -> Result<()> {
.with_note(|| {
format!(
"The API version for this client is {}, make sure the server version is compatible",
client.api_version()
Client::api_version()
)
})?;

View file

@ -15,7 +15,7 @@ pub struct AssetQuery {
}
pub async fn fetch_all_assets(query: AssetQuery, client: &Client) -> Result<Vec<AssetResponseDto>> {
debug!("Fetching assets with query {:?}", query);
debug!("Fetching assets with query {query:?}");
// is_offline is ignored, let's fetch trashed assets instead and filter them later
let trashed_after = if query.is_offline == Some(true) {