- fix(connection): fix create_folder API body (name, parent_id, description, template_id)
- feat(shared): add Unicode NFC normalization helper and find_subfolder_by_name()
- feat(Cargo): add unicode-normalization dependency
- fix(shared,mkdir,rm,cp,mv,upload): apply NFC normalization to path and name comparisons
- fix(labs): rewrite output as aligned table (Name/PI/Laboratory), remove cache fallback
- fix(mkdir): silent on success; align error message with Python
- fix(rm): silent on success; use find_subfolder_by_name for NFC-aware lookup
- fix(cp): silent on success; align all error messages; add no-op when src==dest
- fix(mv): silent on success; align all error messages; add no-op when src==dest
- fix(login): change output to 'Login Successful'
- fix(logout): remove all output (silent like Python)
- fix(chacl): remove success message (silent like Python)
- fix(metadata): use compact JSON output (to_string instead of to_string_pretty)
- fix(file_metadata): use compact JSON output
- fix(ls): use compact JSON output; add blank line after entries in recursive plain mode
- fix(config): silent on create/update/delete; add colon in list short format;
remove empty-state messages; align error messages ('is already exists.' / 'is not exists.')
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
11 lines
301 B
Rust
11 lines
301 B
Rust
pub fn logout(remote: &str) -> Result<(), Box<dyn std::error::Error>> {
|
|
let cache_path = crate::settings::SETTINGS
|
|
.config_dirname
|
|
.join("cache")
|
|
.join(format!("{}.json", remote));
|
|
if cache_path.exists() {
|
|
std::fs::remove_file(&cache_path)?;
|
|
}
|
|
Ok(())
|
|
}
|