# Changelog

All notable changes to `omry-cli` will be documented in this file.

The format is generally based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).

omry-cli adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [0.15.2] - 2026-06-20

Compatible with [`omry-service@0.19`](https://crates.io/crates/omry-service/0.20.0)

### Changed

- Upgrade to omry 0.20.0

## [0.15.1] - 2026-06-20

Compatible with [`omry-service@0.19`](https://crates.io/crates/omry-service/0.19.1)

### Changed

- Minor non-breaking improvements to code quality, performance, and UI presentation

## [0.15.0] - 2026-06-15

Compatible with [`omry-service@0.19`](https://crates.io/crates/omry-service/0.19.1)

### Changed

- Support paginated RPCs for commands like '/list' and `/recent` 

## [0.14.1] - 2026-05-16

Compatible with [`omry-service@0.18`](https://crates.io/crates/omry-service/0.18.0)

### Added

- Attempt to reconnect to omry if connection is lost while app is running

## [0.14.0] - 2026-05-15

Compatible with [`omry-service@0.18`](https://crates.io/crates/omry-service/0.18.0)

### Added

- Support authenticating with the Omry API using an auth token
  - Prompt the user for an auth token when one isn't set in the config
- Add `/recent` command to fetch all records in reverse chronological order
- Add ability to go back to the previous search hits and records when cycling through results

### Changed

- (Switch to [`irpc-iroh`](https://lib.rs/crates/irpc-iroh) from `tarpc`)
- Stream search hits and lookup results, instead of loading them all at once
- Remove unnecessary "do you want to view" prompts before showing results
- Change connection error message to suggest checking auth token
(and remove mention of maximum connections since that was only relevant for `tarpc`)

## [0.13.1] - 2026-01-13

Compatible with [`omry-service@0.17`](https://crates.io/crates/omry-service)

### Changed

- Update `omry-service` and other dependencies 

## [0.13.0] - 2025-12-26

Compatible with [`omry-service@0.16`](https://crates.io/crates/omry-service)

### Changed

- Fetch only record metadata instead of the full record in `/list`. This makes listing
all records significantly faster 

## [0.12.0] - 2025-12-21

Compatible with [`omry-service@0.15`](https://crates.io/crates/omry-service)

### Added

- Prompt the user for Omry web server URL if it's missing from the config

### Changed

- Open saved pages on the Omry web server instead of caching them locally
- \[WSL\]: Document that the user is expected to have a browser installed
in the WSL distro for Omry to open saved pages in the browser

## [0.11.1] - 2025-12-16

### Fixed

- Use yellow when warning about possible unexpected behaviour due to version mismatch,
as is used in the first part of that warning

## [0.11.0] - 2025-12-16

### Added

- Support viewing paginated search results
- Omry backend: Upgrade `omry-service` and `omry-integration` to 0.14.1 to support
pagination

## [0.10.0] - 2025-12-12

### Changed

- Sort search results by recency. If multiple search hits are equally relevant
based on text matching, records that were added to Omry more recently are shown first
(<https://todo.sr.ht/~anya_hope/omry-cli/55>). 
- Omry backend: Upgrade `omry-service` and `omry-integration` to 0.13.1 to allow
sorting the results by recency.

## [0.9.5] - 2025-12-10

### Changed

- Omry Backend: Upgrade `omry-service` and `omry-integration` to 0.12.0
(no client changes)

## [0.9.4] - 2025-12-09

### Changed

- Clarify error message when the client couldn't invoke the 'version' RPC

## [0.9.3] - 2025-12-06

### Changed

- Omry backend: Upgrade `omry-service` and `omry-integration` to 0.11.1,
and update client code to be compatible
(no significant changes to user-facing behaviour as it relates to `omry-cli`)

## [0.9.2] - 2025-12-04

### Changed

- Make small improvement to how search hits are presented 
(https://todo.sr.ht/~anya_hope/omry-cli/50)

## [0.9.1] - 2025-12-04

### Changed

- Update `omry-service` and `omry-integration` to 0.10.0
(no significant changes to behaviour as it relates to `omry-cli`)

## [0.9.0] - 2025-12-02

### Changed

- config: Store the host name instead of IP for `omry_rpc_addr`
(https://todo.sr.ht/~anya_hope/omry-cli/48)

## [0.8.1] - 2025-12-02

### Changed

- Update `omry-service` and `omry-integration` to 0.9.1
(no changes to behaviour as it relates to `omry-cli`)

## [0.8.0] - 2025-11-30

### Added

- Report versions of [`omry-service`](https://crates.io/crates/omry-service) used by `omry-cli` and `omry-server`,
and show warning when they may be incompatible (https://todo.sr.ht/~anya_hope/omry-cli/42)

### Changed

## [0.7.1] - 2025-11-29

### Changed

- Make minor internal improvement to logic for parsing commands

## [0.7.0] - 2025-11-29

### Changed

- Display "rollover text" (when hitting the end of search results or `/list`)
on a yellow background to make it more prominent

## [0.6.2] - 2025-11-28

### Changed

- Remove unnecessary string allocation when rewriting URLs for WSL

## [0.6.1] - 2025-11-28

### Fixed

- Rewrite `file://` URLs in WSL to correctly open them in the default Windows browser
when the default application for HTML files isn't Edge
(thanks to Sage Mitchell for suggesting the fix)

## [0.6.0] - 2025-11-28

### Changed

- In WSL, support opening default Windows browser when viewing offline pages.
This required switching to a different crate for opening URLs
(now [`opener`](https://lib.rs/crates/opener), previously was [`webbrowser`](https://lib.rs/crates/webbrowser))

## [0.5.0] - 2025-11-28

### Added

- Display the database ID of a record when viewing records, e.g. with `/list`
(https://todo.sr.ht/~anya_hope/omry-cli/36. Previously, we only displayed the ID
when showing search hits 
- Display the URL of the locally cached copy when viewing a saved page

## [0.4.0] - 2025-11-26

### Added

- Implement `/list`, which displays all records stored in the Omry database
(https://todo.sr.ht/~anya_hope/omry-cli/45)

### Changed

- Prefix commands with `/` (e.g. `/list` or `/help`), and use all other input as a search query
(https://todo.sr.ht/~anya_hope/omry-cli/43). Searching the Omry archive is the most common use-case, so
not needing to enter `search` before every query makes searching more ergonomic  
- Update backend `omry` crates to 0.7.0 to support getting all records at once

## [0.3.0] - 2025-11-20

### Added

- Make maximum number of elements to parse in an HTML file configurable
( https://todo.sr.ht/~anya_hope/omry-cli/10 )

### Changed

- Increase the default maximum number of elements to parse to 15000

## [0.2.0] - 2025-11-20

### Changed

- `config.toml` now stores the 'human-readable' socket address for the Omry backend
(e.g. 'localhost:37373' instead of an IP and port separately, as before),
under the key `rpc_addr` ( https://todo.sr.ht/~anya_hope/omry-cli/40 ).
For existing installations, this will cause `omry-cli` to re-prompt the user for Omry's socket address,
so it can be saved in the updated format 
- Update `omry-service` and `omry-integration` to 0.5.0 (no changes to behaviour as it relates to `omry-cli`)
- Update other dependencies via `cargo update`

## [0.1.2] - 2025-11-13

### Changed

- Update dependencies, notably `omry-service` and `omry-integration` to 0.4.0
- Require Rust 1.91

