> ## Documentation Index
> Fetch the complete documentation index at: https://photocli.com/llms.txt
> Use this file to discover all available pages before exploring further.

# photo-cli Version Changelog and Full Release History

> Full release history for photo-cli listed in reverse chronological order, covering new features, bug fixes, and breaking changes for every version.

This page lists every published version of photo-cli in reverse chronological order. Each entry describes what was added, changed, or fixed in that release.

<Update label="2026-04-13" description="0.4.0">
  * The `archive` command now supports named and address-based album metadata linking to photos via `--album-type`, `--album-name`, `--update-album`, and `--auto-reverse-geocode-album`.
  * Added the `list` command to browse, filter, and open photos from archived folders based on metadata (by album, exact date, or date range).
  * Added the `mcp` command to run photo-cli as an MCP (Model Context Protocol) stdio server, exposing the photo archive to AI assistants.
  * Refactored console output with colours and table support for better readability.
  * Added container (Docker, Podman) support.
  * Reverse geocode caching now persists between archive runs.
  * Customizable logging infrastructure with per-namespace log levels.
  * Added `hif` to the default supported photo extensions.
  * Added `--invalid-format`, `--missing-reverse-geocode`, `--expected-day-range`, and `--language` arguments across commands.
  * Upgraded the runtime to .NET 10.
</Update>

<Update label="0.3.1 – 0.3.3">
  * Homebrew and standalone executable builds are now produced automatically by release automation.
</Update>

<Update label="2024-07-27" description="0.3.0">
  * Added companion file support — files sharing the same base name as a photo (for example, Live Photo `.mov` files) are now copied and renamed alongside the photo.
  * Improved resilience in reverse geocoding requests; transient network errors are retried automatically.
  * Upgraded the runtime to .NET 8.
  * Supported photo extensions are now configurable via the `SupportedExtensions` setting.
</Update>

<Update label="2024-03-06" description="0.2.1">
  * Fixed a bug that prevented setting non-string values (integers, booleans) through the `settings` command.
</Update>

<Update label="2024-02-21" description="0.2.0">
  * Added the `archive` verb for archiving photos with a date-hash naming scheme.
  * Reverse geocode results are now cached to avoid redundant API calls.
  * Address responses from reverse geocode providers are now validated against a regex before use.
  * Various small fixes and test improvements.
</Update>

<Update label="2023-06-13" description="0.1.0">
  * Added HEIC and JPEG file support.
  * Added file hash verification after copy (`--verify` flag).
  * Invalid photo formats are now caught, reported, and moved to a dedicated folder rather than causing a hard failure.
</Update>

<Update label="2023-02-23" description="0.0.1">
  * Added the ability to retrieve an address from a photo without specifying provider-specific properties.
  * Removed the MapQuest reverse geocode provider (service has been deprecated by the vendor).
</Update>

<Update label="2022-08-01" description="0.0.0">
  First public release. Included the following verbs and options:

  **Verbs:** `copy`, `info`, `address`, `settings`

  **FolderProcessType:** `Single`, `SubFoldersPreserveFolderHierarchy`, `FlattenAllSubFolders`

  **NamingStyle:** `Numeric`, `Day`, `DateTimeWithMinutes`, `DateTimeWithSeconds`, `Address`, `DayAddress`, `DateTimeWithMinutesAddress`, `DateTimeWithSecondsAddress`, `AddressDay`, `AddressDateTimeWithMinutes`, `AddressDateTimeWithSeconds`

  **FolderAppendType:** `FirstYearMonthDay`, `FirstYearMonth`, `FirstYear`, `DayRange`, `MatchingMinimumAddress`

  **GroupByFolderType:** `YearMonthDay`, `YearMonth`, `Year`, `AddressFlat`, `AddressHierarchy`

  **ReverseGeocodeProvider:** `BigDataCloud`, `OpenStreetMapFoundation`, `GoogleMaps`, `MapQuest`, `LocationIq`
</Update>
