Address code-review findings on the metadata pipeline: - finalize_known! now fsyncs the sidecar bytes before the rename and fsyncs done/ after, so the "file in done/ implies sidecar present" invariant holds across power loss, not just process crashes. The docstring previously claimed an fsync the code never performed. - run_exiftool's timeout escalates SIGTERM -> (2s grace) -> SIGKILL, so an exiftool that ignores SIGTERM can't pin a worker forever on wait(proc). Previously the timeout sent only SIGTERM. - Add test/ (48 tests) covering the correctness-critical paths: sanitize_filename, normalize_metadata, degraded build_metadata, real exiftool extraction, finalize_known! end-to-end, recover_dir!.
34 lines
856 B
TOML
34 lines
856 B
TOML
name = "FileServer"
|
|
uuid = "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e"
|
|
version = "0.1.0"
|
|
authors = ["wardjm@gmail.com"]
|
|
|
|
[deps]
|
|
HTTP = "cd3eb016-35fb-5094-929b-558a96fad6f3"
|
|
JLD2 = "033835bb-8acc-5ee8-8aae-3f567f8a3819"
|
|
JSON3 = "0f8b85d8-7281-11e9-16c2-39a750bddbf1"
|
|
Logging = "56ddb016-857b-54e1-b83d-db4d58db5568"
|
|
Lux = "b2108857-7c20-44ae-9111-449ecde12c47"
|
|
Optimisers = "3bd65402-5787-11e9-1adc-39752487f4e2"
|
|
Oxygen = "df9a0d86-3283-4920-82dc-4555fc0d1d8b"
|
|
UUIDs = "cf7118a7-6976-5b1a-9a39-7adc72f591a4"
|
|
Zygote = "e88e6eb3-aa80-5325-afca-941959d7151f"
|
|
|
|
[extras]
|
|
JSON3 = "0f8b85d8-7281-11e9-16c2-39a750bddbf1"
|
|
Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40"
|
|
|
|
[targets]
|
|
test = ["Test", "JSON3"]
|
|
|
|
[compat]
|
|
HTTP = "1.11.0"
|
|
JLD2 = "0.6.4"
|
|
JSON3 = "1.14.3"
|
|
Logging = "1.11.0"
|
|
Lux = "1.31.4"
|
|
Optimisers = "0.4.7"
|
|
Oxygen = "1.10.2"
|
|
UUIDs = "1.11.0"
|
|
Zygote = "0.7.11"
|