1.17.0 [2026-03-26]
- Fix facet list: remove phantom "closed" access_state value and stale music_heading_browse facet
- Add music facets facet_937e and facet_937d with values
- Add found attribute to HoldingStatus and HoldingStatusIndex parsers
- Validate CLI integer args (--page, --count, --batch, --export-page) with clear error messages
- Pass format-specific parser class to get_document based on --export-format
- Refactor cmd_document for clearer control flow
- Streamline README: trim technical details, point to --help for full documentation

1.16.0 [2026-03-24]
- Add query types: rsn, ppn, oclc
- Add branch_collcode facet values: freihand, magazin, vorort
- Add publishDateSort facet value validation (RANGE YYYY TO YYYY, first year <= second)
- List valid facet keys in --facet CLI help; note publishDateSort format
- Add --strict-not-found and --lazy-not-found flags for the document subcommand
- Mark client tests as integration tests; run separately in CI

1.15.0 [2026-03-23]
- Split export format choices per subcommand (query vs document)
- Add --no-parser CLI flag to skip response parsing and print raw server output
- Move --pretty from global flag to per-subcommand (query, document, settings, solr-params)
- Expand CLI help text with descriptions, examples, and epilogs
- Fix pylint import order in cli.py
- Update README: SLUB Dresden naming, format descriptions, Python usage examples, --no-parser documentation

1.14.0 [2026-03-21]
- Rewrite README: expanded introduction, consistent example queries, complete export format documentation

1.13.0 [2026-03-21]
- Remove duplicate RawSolrResponse and SolrResultsSearch parsers (now provided by txpyfind)
- Add FincDocument wrapper with typed property access to finc/VuFind Solr fields
- Add FincSolrResponse and FincSolrResults parsers returning FincDocument instances
- BREAKING: raw_solr_search() now defaults to FincSolrResponse, solr_results_search() to FincSolrResults

1.12.0 [2026-03-21]
- Add AppDetailsRecord, AppDetailsCopy, AppDetailsParts wrapper classes
- AppDetails.record now returns AppDetailsRecord, .copies returns [AppDetailsCopy], .parts returns AppDetailsParts
- Add AppDetails.oa and AppDetails.thumbnail properties
- BREAKING: Remove AppDetails convenience properties (title, format, contributor, identifier) — use details.record.title etc.
- Fix HoldingStatus parser: correct properties to access, additional_information, references, links
- Add HoldingStatusIndex parser for json-holding-status-index format
- Add RawSolrResponse parser for raw-solr-response format with num_found, docs, facet_counts, highlighting
- Add SolrResultsSearch parser for json-solr-results format
- Add AppSearch.facets property
- Add json-solr-results and json-holding-status-index export formats
- Add solr_results_search(), raw_solr_search(), holding_status_index_document() client methods
- Add --no-facets CLI flag to strip facet data from query output

1.11.0 [2026-03-21]
- Fix --export-format argument position: now accepted after the subcommand

1.10.0 [2026-03-20]
- Add raw-solr-response export format
- Update README with all export formats and holding status example

1.9.0 [2026-03-20]
- Add json-holding-status export format with HoldingStatus parser
- Add holding_status_document() convenience method
- Add strict facet value validation for facet_avail, format_de14, and access_state

1.8.0 [2026-03-20]
- Add --from-url option for query, scroll, solr-params, and solr-request

1.7.0 [2026-03-20]
- Add AppDetails parsed fields: id, record, title, format, contributor, identifier
- Add HTML entity unescaping for record dict values
- Split JsonLdResponse into JsonLdDetails (detail view) and JsonLdSearch (search view)
- Add JsonLdDetails properties: id, name, author, url, type
- Add JsonLdDetails.found detection for bare /id/ URLs
- Fix "Github" → "GitHub" typo in README
- Add export format and JSON-LD examples to README

1.6.0 [2026-03-20]
- Add json-ld export format
- Add AppSearch and JsonLdResponse parser classes
- Fix CLI query/document commands ignoring --export-format

1.5.1 [2026-03-19]
- Fix merge_facets() dropping duplicate-key facets (e.g. --facet language=German --facet language=English)
- Bump txpyfind minimum version to 1.2.6

1.5.0 [2026-03-19]
- Rename json_dumps compact parameter to pretty, aligning with --pretty flag
- Add unit tests for CLI (test_cli.py) and parser (test_parser.py)
- Strengthen test_client.py assertions
- Enforce coverage minimum of 95% in CI
- Add pytest testpaths configuration to pyproject.toml

1.4.0 [2026-03-19]
- Add SlubFind.EXPORT_FORMATS class constant and --export-format choices validation to CLI
- Bump txpyfind minimum version to 1.2.4

1.3.0 [2026-03-19]
- Update GitHub Actions versions (checkout@v5, setup-python@v6)
- Bump txpyfind minimum version to 1.2.0

1.2.0 [2026-03-19]
- Fix pylint issues: too few public methods (R0903), too many arguments (R0913), too many positional arguments (R0917)

1.1.0 [2026-03-19]
- Make compact JSON output the default; add --pretty flag for indented output
- Add --type choices and facet key validation to CLI
- Expose SlubFind.QUERY_TYPES and SlubFind.FACETS as class-level constants

1.0.0 [2026-03-19]
- Add command-line interface (query, document, scroll, settings, solr-params, solr-request)
- Add --show-url flag to print request URL without fetching
- Align facet handling with txpyfind v1.1.0

0.1.0 [2025-06-01]
- first published release

0.0.0 [2023-08-01]
- initial commit
