v0.3.0
What's Changed
New Features
FOLIO.query()— Structured concept queries with composable text and structural filters (label, definition, alt_label, example, any_text, branch, parent_iri, has_children, deprecated, country). Supports substring, exact, regex, and fuzzy match modes.FOLIO.query_properties()— Structured property queries with text filters (label, definition) and structural filters (domain_iri, range_iri, has_inverse).
Bug Fixes
- Fix: Make
alea_llm_clientimport optional — Base install (pip install folio-python) no longer crashes withModuleNotFoundError. LLM features requirepip install folio-python[search]. (Closes #10)
Documentation
- Document
[search]extra in installation instructions (Closes #10) - Add soli-python migration note for users hitting httpx conflicts (Closes #9)
- Add Structured Queries section with
query()andquery_properties()examples - Add CLAUDE.md with project conventions
Other
- Add regression tests for prefLabel indexing fix from v0.2.1 (Closes #12)
- Replace black with ruff in dev dependencies (resolves CVE in black < 26.3.1)
- Apply ruff format across codebase
- Add Python 3.13 and 3.14 classifiers
- Published to PyPI (supersedes v0.2.1 which was GitHub-only)
Full Changelog: v0.2.1...v0.3.0