Files
photocli/CHANGELOG.md
T
Ein Anderssono a51db37fdb
pipeline / test (push) Has been cancelled
pipeline / build (push) Has been cancelled
v0.8.2: add metadata-only sidecars
2026-06-15 01:48:32 +02:00

6.8 KiB

Changelog

This changelog is maintained from git history plus the published Gitea release series. Future releases should update this file and publish matching release notes on the release page.

v0.8.2

Metadata-only XMP refresh release.

  • Add --metadata-only for manifest-based XMP sidecar generation without re-exporting media files.
  • Support metadata-only refresh for both export and backup-all when used with --sidecar xmp.
  • Require a manifest for metadata-only mode so existing media paths are resolved safely.
  • Keep media files untouched while overwriting/regenerating generated XMP sidecars.
  • Support --reverse-geocode during metadata-only sidecar refresh.

v0.8.1

XMP standards and sidecar verification release.

  • Add XMP schema version metadata for generated sidecars.
  • Add standard XMP fields for rating, metadata date, creation date, Photoshop date created, and EXIF GPS coordinates.
  • Add dc:subject keywords from album/folder context.
  • Add sidecar generator and generated timestamp metadata.
  • Add verify --sidecar to check missing, zero-byte, unreadable, and asset-ID mismatched XMP sidecars.

v0.8.0

Rich PhotoKit metadata and reverse-geocoded XMP release.

  • Expand asset metadata from public PhotoKit fields: modification date, hidden state, media subtypes, source type, playback style, burst data, GPS coordinates, adjustment state, adjustment info, and richer resource metadata.
  • Expand XMP sidecars with duration, hidden/adjustment state, modification date, structured media subtype/burst/resource lists, GPS coordinates, and adjustment metadata.
  • Add opt-in --reverse-geocode using Apple reverse geocoding APIs to add address metadata for GPS assets.
  • Cache reverse-geocode results under .photoscli/geocode-cache.jsonl so repeated exports do not repeatedly query Apple geocoding.
  • Keep Vision/Core ML people, animal, object, and scene analysis out of this release; that remains future work.

v0.7.0

XMP sidecar metadata release.

  • Add --sidecar none|xmp with default none.
  • Add config support for sidecar = "xmp".
  • Write XMP sidecars next to exported files using basename .xmp filenames.
  • Include asset ID, filenames, album, manifest path, media type, dimensions, favorite state, cloud state, export mode, photoscli version, exported timestamp, size, and creation date in XMP.
  • Write XMP files atomically.
  • Treat sidecar write failure as asset failure when XMP sidecars are explicitly requested.

v0.6.0

Backup integrity and recovery release.

  • Add manifest-relative paths for exported files so tree backups can be verified accurately.
  • Add SQLite manifest migration for the new path column.
  • Upgrade verify to report missing files, zero-byte files, and size mismatches by default.
  • Add atomic staging export writes with per-asset temporary directories before final rename.
  • Deduplicate failures.jsonl entries by asset ID and track attempts plus latest failure time.
  • Add failures list and failures clear commands.
  • Add retry-failed --clear-on-success.
  • Add status command with text and JSON output.
  • Update release workflow to publish release notes from RELEASE_NOTES.md.
  • Rename release zip assets to include macos-arm64 and document Apple Silicon-only releases.
  • Add AGENT.md with the minimal project/release rules for future agents.
  • Keep CHANGELOG.md as the canonical release history.

v0.5.0

Manifest, filtering, logging, and documentation release.

  • Add JSONL and SQLite manifests with resumable skip tracking.
  • Add automatic conversion between JSONL and SQLite manifests.
  • Add structured export logging to export.log or SQLite logs table.
  • Add explicit exit codes: success, error, partial failure, and access denied.
  • Add --quality for JPEG preview compression.
  • Add --concurrency with progress slot cap.
  • Add --exclude-album with exact/glob matching.
  • Add --since date filtering.
  • Add --dry-run.
  • Add --retry.
  • Add --only-favorites.
  • Add --media photos|videos|all.
  • Add --json command summaries.
  • Add --verify integration.
  • Add --format jpeg|heic|png validation/hint.
  • Add --min-size and --max-size estimated pixel-count filters.
  • Add --date-template folder layout support.
  • Add report, diff, verify, and retry-failed commands.
  • Add failure tracking in failures.jsonl.
  • Add config-file defaults via ~/.photoscli.toml or PHOTOSCLI_CONFIG.
  • Add album name collision handling for duplicate sibling album names.
  • Expand README.md and verbose CLI help.
  • Add 100% test coverage for the CLI and manifest/photos packages.

v0.4.1

Documentation and release asset follow-up after v0.5.0.

  • Add USERGUIDE.md as a practical end-user manual.
  • Link the user guide from README.md.
  • Add release zip packaging with binary, README, USERGUIDE, and CHANGELOG.
  • Attach USERGUIDE.md and the macOS zip package to the v0.5.0 release.

v0.4.0

Progress and backup-all usability release.

  • Add scroll log for completed exports: copied, downloaded, skipped, and failed.
  • Add worker status lines with live download progress bars for cloud files.
  • Add color-gradient progress bars from red to yellow to green.
  • Add disk skip for files already present during backup-all.
  • Add parallel export with multiple workers for backup-all.
  • Increase progress slot support in the bridge.
  • Improve progress rendering for large export sessions.

v0.3.x

Published on Gitea as v0.3.0 through v0.3.5. These releases are not represented by local git tags in the current clone, so the exact per-release commit mapping is unavailable here.

Known purpose of this series:

  • Iterative release packaging and Gitea release workflow improvements.
  • Continued progress display and backup/export polish between v0.2.5 and v0.4.0.
  • Preparation for the larger v0.4.0 progress/backup release.

v0.2.6

Published on Gitea but not represented by a local git tag in the current clone.

  • Post-v0.2.5 maintenance release in the progress/export series.

v0.2.5

  • Add Unicode progress bar rendering.
  • Add cloud download speed display.

v0.2.4

  • Stop export loop on Ctrl+C instead of flooding failures.
  • Improve graceful cancellation behavior after interrupt.

v0.2.3

  • Fix export write failures.
  • Fix Ctrl+C cancellation behavior.

v0.2.2

No local tag is present for this version in the current clone.

v0.2.1

  • Add status messages during export.
  • Fix parallel export progress display.

v0.2.0

  • Add semaphore timeouts.
  • Add export error logging.
  • Remove dead code.
  • Add parallel exports.

Pre-release

  • Initial applephotos CLI with progress, cloud status, and per-asset export.
  • Add .gitignore and remove build artifacts from tracking.
  • Rename applephotos to photoscli.
  • Update module path to gitea.k3s.k0.nu/tools/photocli.
  • Add version flag.
  • Add Gitea release targets and release pipeline.