github iwe-org/iwe iwe-v0.8.0
v0.8.0

latest releases: iwec-v0.8.0, iwes-v0.8.0
5 hours ago

iwe

Added

  • find gains explicit --fuzzy (subsequence match on document title and key) and --lexical (BM25 full-text scoring over title and body) query flags; supplying both fuses the two result sets with Reciprocal Rank Fusion. Set the stemming language for lexical search with [search] language in .iwe/config.toml.
  • find --lexical prints a warning when the query reduces to only stop words after stemming, so an empty result set is explained instead of looking like an empty index.

Fixed

  • find and retrieve truncation warning now suggests only the limits that actually apply (--limit, --max-tokens, --max-document-tokens) instead of always naming --max-tokens, which does nothing for a metadata-only index bounded by --limit.

Deprecated

  • find's bare positional query defaults to fuzzy matching and now prints a warning on stderr; it will be removed in a future release. Use --fuzzy or --lexical instead.

iwes

Changed

  • Workspace-symbol search fuses fuzzy matching with BM25 full-text relevance (over document title and body) using Reciprocal Rank Fusion, so a query term in a document's body can lift it above an equally-fuzzy result.

iwec

Changed

  • iwe_find replaces its query parameter with explicit fuzzy (match on document title and key) and lexical (BM25 full-text over title and body) parameters; supplying both fuses the results with Reciprocal Rank Fusion. Set the stemming language for lexical search with [search] language in the configuration.

liwe

Added

  • search::Bm25Index plus Graph::search and Graph::search_scores provide BM25 full-text ranking over document title and body; the index is built and kept in sync by the ingestion pipeline (insert_document / update_document / remove_document).
  • Graph::to_plain_text renders a document to plain text (markup stripped, link display text kept, code and table cells included); Node::plain_text now also covers table cells.
  • [search] configuration table with a language field (one of 17 stemming languages, default english), exposed through Configuration::search_language.
  • search::rrf_weight and search::RRF_K for Reciprocal Rank Fusion of ranked result lists.
  • Graph::lexical_query_has_terms (backed by Bm25Index::has_query_terms) reports whether a lexical query keeps any searchable terms after stop-word removal and stemming.

Changed

  • Graph::from_state and Graph::from_path take an extra Option<Language> argument that enables search indexing when set (None skips it); Graph::import is unchanged and keeps indexing off.
  • FindOptions carries separate fuzzy and lexical query fields (was a single query); when both are set the finder fuses the two rankings with Reciprocal Rank Fusion.

Don't miss a new iwe release

NewReleases is sending notifications on new releases.