Skip to content

GoldenMatch

v1.2.4 Feature

This release adds 3 notable features for engineering teams evaluating rollout.

Published 3mo Data Pipelines & ETL
✓ No known CVEs patched
Read the diff → Tool health → What is this tool? →

✓ No known CVEs patched in this version

Topics

data-cleaning data-engineering data-matching data-quality deduplication entity-resolution
+14 more
fellegi-sunter fuzzy-matching knowledge-graph llm master-data-management mcp-server polars pprl python record-linkage rust splink typescript zero-config

Summary

AI summary

Updates How it works, Other improvements, and Before: OOM on fiBaseModel across a mixed release.

Full changelog

New Feature: Compound Blocking Keys

Auto-configure now generates compound blocking keys when single-column blocking produces oversized blocks. This prevents OOM on datasets like the Kaggle Blue Book for Bulldozers (401K rows) where fiBaseModel="580" has 19,798 records.

How it works

  1. LLM-assisted (optional): sends column profiles with cardinality stats to LLM for compound key suggestions, validates against actual block sizes
  2. Greedy fallback: pairs the highest-cardinality column with the column that reduces max block most
  3. Multi-pass: generates 2-3 compound key passes for recall coverage

Example

# Before: OOM on fiBaseModel (19,798 records per block)
# After: compound [fiModelDesc, state] (max 1,198 per block)
result = goldenmatch.dedupe_df(df)  # just works

Guard ensures compound blocking only activates when ALL single-column candidates are oversized — existing datasets are unaffected.

Other improvements

  • All blocking fallbacks now set skip_oversized=True as safety net
  • _detect_llm_provider() threads LLM provider from dedupe_df(llm_scorer=True) through auto-configure
  • 1,190 tests passing

Weekly OSS security release digest.

The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.

No spam, unsubscribe anytime.

Share this release

Track GoldenMatch

Get notified when new releases ship.

Sign up free

About GoldenMatch

All releases →

Related context

Related tools

Earlier breaking changes

  • v3.1.0 `GOLDENMATCH_FRAME=polars` now requires the `[polars]` extra; raises error without it.
  • vgoldencheck-v3.0.0 `inferred_type` emits neutral dtype vocabulary (str/int/uint/float/date/datetime/bool/other) instead of raw Polars dtypes.
  • vgoldencheck-v3.0.0 'inferred_type' now emits a neutral dtype vocabulary instead of raw Polars dtype strings.
  • vgoldencheck-v3.0.0 `scan_file`, `scan_dataframe`, and CLI `check` now run without Polars, using Arrow-native pyarrow.Table.
  • v3.0.0 Result frames now return pyarrow.Table instead of Polars DataFrame.

Beta — feedback welcome: [email protected]