v0.3.1
v0.3.1
Performance release: a full worst-case cache refresh (download all producers,
rebuild the whole index) drops from ~16 s to ~4.5 s on a typical
connection.
Faster everywhere
- Producer downloads run on a bounded thread pool (measured 6.5x on the
45-producer corpus: 4.0 s → 0.62 s). Progress and cancel semantics are
preserved (cancel stops new submissions, partial reports unchanged).
Optionalmax_workerskeyword onmaterialsdb.cache.update_producers_data
(default 8). - Store indexing is ~3x faster (11.9 s → 3.9 s on the same corpus): the
deserialiser memoises its per-type-hint machinery and the tag-name
lookup — pure caching, output identical by construction.
No behavior change
Same endpoints, same payloads, same UI; downloads and ingestion only go
faster. The ProcessPoolExecutor route for multi-core ingest remains
parked in docs/superpowers/backlog.md.
Full changelog: v0.3.0...v0.3.1