v0.1.0
Indexed query layer + performance core
New:
- SQLite material store (
materialsdb.store.MaterialStore): instant filtered/sorted listing of all cached materials, single-material fetch by id, incremental per-producer refresh querymodule rewritten as a facade:query.search(...),query.get_material(id),query.refresh()(BREAKING: oldSOURCES/get_by_name/get_by_producerremoved)MaterialSummaryextraction (names/descriptions in all languages, lambda/thickness ranges per country, usage flags)
Performance:
- Parsing 3.9-4.7x faster (type-hints caching); parallel multi-producer parsing available
- Full 46-producer cold build: ~12s -> ~2.5s; sorted listing of all materials ~0.14ms; single material fetch ~1.5ms
Tooling/tests:
- pytest-benchmark suite with committed baselines; committed test fixtures (fresh clones now pass)