style: format the whole tree with cargo fmt (stock defaults, #35)
One-time, mechanical reformat — no functional changes. The tree was not rustfmt-clean (~1800 hunks across ~100 files); this brings it to stock `cargo fmt` defaults so a `cargo fmt --check` CI gate can follow. Behaviour-preserving: 2509 pass / 0 fail / 1 ignored (unchanged baseline), clippy clean. A .git-blame-ignore-revs entry follows so `git blame` skips this commit.
This commit is contained in:
+37
-37
@@ -30,9 +30,7 @@ use std::path::{Component, Path, PathBuf};
|
||||
use tracing::{debug, info};
|
||||
use zip::{CompressionMethod, ZipArchive, ZipWriter, write::SimpleFileOptions};
|
||||
|
||||
use crate::project::{
|
||||
HISTORY_LOG, PLAYGROUND_DB, PROJECT_YAML, naming::today_local,
|
||||
};
|
||||
use crate::project::{HISTORY_LOG, PLAYGROUND_DB, PROJECT_YAML, naming::today_local};
|
||||
|
||||
/// File names excluded from `export` zips. These are either
|
||||
/// derived (`playground.db`), per-process (`.lock`),
|
||||
@@ -118,20 +116,14 @@ impl std::fmt::Display for ArchiveError {
|
||||
limit = format_args!("{limit:02}"),
|
||||
))
|
||||
}
|
||||
Self::InvalidZip(detail) => f.write_str(&crate::t!(
|
||||
"archive.invalid_zip",
|
||||
detail = detail,
|
||||
)),
|
||||
Self::NotAProjectArchive => {
|
||||
f.write_str(&crate::t!("archive.not_a_project_archive"))
|
||||
Self::InvalidZip(detail) => {
|
||||
f.write_str(&crate::t!("archive.invalid_zip", detail = detail,))
|
||||
}
|
||||
Self::MultipleTopFolders => {
|
||||
f.write_str(&crate::t!("archive.multiple_top_folders"))
|
||||
Self::NotAProjectArchive => f.write_str(&crate::t!("archive.not_a_project_archive")),
|
||||
Self::MultipleTopFolders => f.write_str(&crate::t!("archive.multiple_top_folders")),
|
||||
Self::UnsafeEntry(entry) => {
|
||||
f.write_str(&crate::t!("archive.unsafe_entry", entry = entry,))
|
||||
}
|
||||
Self::UnsafeEntry(entry) => f.write_str(&crate::t!(
|
||||
"archive.unsafe_entry",
|
||||
entry = entry,
|
||||
)),
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -216,13 +208,7 @@ pub fn export_project(
|
||||
.unix_permissions(0o644);
|
||||
|
||||
add_directory_entry(&mut writer, project_name, dst_zip)?;
|
||||
add_directory_recursive(
|
||||
&mut writer,
|
||||
project_path,
|
||||
project_name,
|
||||
&options,
|
||||
dst_zip,
|
||||
)?;
|
||||
add_directory_recursive(&mut writer, project_path, project_name, &options, dst_zip)?;
|
||||
|
||||
writer.finish().map_err(|e| ArchiveError::Zip {
|
||||
path: dst_zip.to_path_buf(),
|
||||
@@ -392,10 +378,7 @@ pub struct ZipInspection {
|
||||
///
|
||||
/// Returns the resolved target path and the suffix that was
|
||||
/// applied (0 if the original name was free, 2..=99 otherwise).
|
||||
pub fn resolve_import_target(
|
||||
parent: &Path,
|
||||
name: &str,
|
||||
) -> Result<(PathBuf, u32), ArchiveError> {
|
||||
pub fn resolve_import_target(parent: &Path, name: &str) -> Result<(PathBuf, u32), ArchiveError> {
|
||||
let direct = parent.join(name);
|
||||
if !direct.exists() {
|
||||
return Ok((direct, 0));
|
||||
@@ -495,10 +478,12 @@ pub fn extract_into(
|
||||
source,
|
||||
})?;
|
||||
let mut buf = Vec::with_capacity(entry.size() as usize);
|
||||
entry.read_to_end(&mut buf).map_err(|source| ArchiveError::Io {
|
||||
path: dst_path.clone(),
|
||||
source,
|
||||
})?;
|
||||
entry
|
||||
.read_to_end(&mut buf)
|
||||
.map_err(|source| ArchiveError::Io {
|
||||
path: dst_path.clone(),
|
||||
source,
|
||||
})?;
|
||||
out.write_all(&buf).map_err(|source| ArchiveError::Io {
|
||||
path: dst_path.clone(),
|
||||
source,
|
||||
@@ -523,7 +508,11 @@ mod tests {
|
||||
fs::write(p.join(PROJECT_YAML), "version: 1\nproject:\n created_at: 2026-01-01T00:00:00Z\ntables: []\nrelationships: []\n").unwrap();
|
||||
fs::create_dir_all(p.join("data")).unwrap();
|
||||
fs::write(p.join("data/Customers.csv"), "Name\nAlice\nBob\n").unwrap();
|
||||
fs::write(p.join(HISTORY_LOG), "T|ok|create table Customers with pk id(serial)\n").unwrap();
|
||||
fs::write(
|
||||
p.join(HISTORY_LOG),
|
||||
"T|ok|create table Customers with pk id(serial)\n",
|
||||
)
|
||||
.unwrap();
|
||||
fs::write(p.join(PLAYGROUND_DB), [0u8; 32]).unwrap();
|
||||
fs::write(p.join(GITIGNORE), "/playground.db\n").unwrap();
|
||||
// Stray atomic-write staging file — must be excluded.
|
||||
@@ -536,7 +525,9 @@ mod tests {
|
||||
)
|
||||
.unwrap();
|
||||
fs::write(
|
||||
p.join(crate::undo::SNAPSHOTS_DIR).join("0").join(PLAYGROUND_DB),
|
||||
p.join(crate::undo::SNAPSHOTS_DIR)
|
||||
.join("0")
|
||||
.join(PLAYGROUND_DB),
|
||||
[0u8; 16],
|
||||
)
|
||||
.unwrap();
|
||||
@@ -618,11 +609,15 @@ mod tests {
|
||||
let zip_path = tmp.path().join("notaproject.zip");
|
||||
let f = fs::File::create(&zip_path).unwrap();
|
||||
let mut w = ZipWriter::new(f);
|
||||
w.start_file("foo/bar.txt", SimpleFileOptions::default()).unwrap();
|
||||
w.start_file("foo/bar.txt", SimpleFileOptions::default())
|
||||
.unwrap();
|
||||
w.write_all(b"hi").unwrap();
|
||||
w.finish().unwrap();
|
||||
let err = inspect_zip(&zip_path).expect_err("must refuse");
|
||||
assert!(matches!(err, ArchiveError::NotAProjectArchive), "got: {err:?}");
|
||||
assert!(
|
||||
matches!(err, ArchiveError::NotAProjectArchive),
|
||||
"got: {err:?}"
|
||||
);
|
||||
}
|
||||
|
||||
#[test]
|
||||
@@ -631,13 +626,18 @@ mod tests {
|
||||
let zip_path = tmp.path().join("multi.zip");
|
||||
let f = fs::File::create(&zip_path).unwrap();
|
||||
let mut w = ZipWriter::new(f);
|
||||
w.start_file("a/project.yaml", SimpleFileOptions::default()).unwrap();
|
||||
w.start_file("a/project.yaml", SimpleFileOptions::default())
|
||||
.unwrap();
|
||||
w.write_all(b"x").unwrap();
|
||||
w.start_file("b/project.yaml", SimpleFileOptions::default()).unwrap();
|
||||
w.start_file("b/project.yaml", SimpleFileOptions::default())
|
||||
.unwrap();
|
||||
w.write_all(b"x").unwrap();
|
||||
w.finish().unwrap();
|
||||
let err = inspect_zip(&zip_path).expect_err("must refuse");
|
||||
assert!(matches!(err, ArchiveError::MultipleTopFolders), "got: {err:?}");
|
||||
assert!(
|
||||
matches!(err, ArchiveError::MultipleTopFolders),
|
||||
"got: {err:?}"
|
||||
);
|
||||
}
|
||||
|
||||
#[test]
|
||||
|
||||
Reference in New Issue
Block a user