Skip to content

GoldenMatch

v3.1.0 Breaking

This release includes 2 breaking changes for platform teams planning a safe upgrade.

Published 13d 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

Affected surfaces

breaking_upgrade

ReleasePort's take

Light signal
editorial:auto 12d

polars is now optional in GoldenMatch v3.1.0; the `GOLDENMATCH_FRAME=polars` setting requires the `[polars]` pip extra or it will raise an error.

Why it matters: If you enable GOLDENMATCH_FRAME=polars without installing the [polars] extra, your deployment will crash on startup.

Summary

AI summary

polars becomes optional with a new pip extra and frame lane now supports all feature classes.

Changes in this release

Breaking High

`GOLDENMATCH_FRAME=polars` now requires the `[polars]` extra; raises error without it.

`GOLDENMATCH_FRAME=polars` now requires the `[polars]` extra; raises error without it.

Source: llm_adapter@2026-07-14

Confidence: low

Feature Medium

polars becomes optional; Arrow-native engine end to end.

polars becomes optional; Arrow-native engine end to end.

Source: llm_adapter@2026-07-14

Confidence: high

Feature Low

With polars installed, wall-optimization paths (fast columnar, vectorized survivorship, pair-score join) are automatically enabled and behave byte‑identical to 3.0.x.

With polars installed, wall-optimization paths (fast columnar, vectorized survivorship, pair-score join) are automatically enabled and behave byte‑identical to 3.0.x.

Source: granite4.1:30b@2026-07-14-audit

Confidence: low

Feature Low

The Frame lane now accepts every feature class without any eligibility declines (validation, outputs, lineage, identity, memory, auto‑suggest, EM, NE‑on‑exact, throughput, rerank, LLM, semantic blocking, domain extraction, adaptive golden).

The Frame lane now accepts every feature class without any eligibility declines (validation, outputs, lineage, identity, memory, auto‑suggest, EM, NE‑on‑exact, throughput, rerank, LLM, semantic blocking, domain extraction, adaptive golden).

Source: granite4.1:30b@2026-07-14-audit

Confidence: low

Bugfix Medium

Fixes crash of `most_recent` golden rules on date32/time32 columns in Arrow lane.

Fixes crash of `most_recent` golden rules on date32/time32 columns in Arrow lane.

Source: llm_adapter@2026-07-14

Confidence: high

Full changelog

Changed

  • polars is now OPTIONAL (pip install 'goldenmatch[polars]'). The engine
    is Arrow-native end to end: ingest, prep (incl. the goldencheck quality scan
    on its Arrow surface and the goldenflow transform adapter), matchkey
    precompute, blocking, exact matching, scoring (classic + bucket backends
    with the Rust kernels), clustering, golden survivorship (fused kernel +
    seam-native oracle), memory corrections, identity resolution, lineage, and
    file outputs (native parquet). A new zero-polars gate
    (tests/test_zero_polars_gate.py) proves a full dedupe with polars imports
    blocked.
  • With polars installed, the wall-optimization paths (golden fast columnar,
    vectorized survivorship, the vectorized pair-score join) light up
    automatically and behavior is byte-identical to 3.0.x.
  • GOLDENMATCH_FRAME=polars (the classic opt-out lane) now requires the
    [polars] extra and raises a clear error without it.
  • The Frame lane now accepts EVERY feature class (validation, outputs,
    lineage, identity, memory, auto-suggest, postflight, probabilistic EM,
    NE-on-exact, throughput, rerank, LLM, semantic blocking, domain
    extraction, adaptive golden) -- the eligibility predicate has no feature
    declines left.

Fixed

  • most_recent golden rules on date32/time32 columns crashed on the arrow
    lane (pc.cast has no direct 32-bit temporal -> int64 kernel).

Breaking Changes

  • polars is now optional; install with `pip install 'goldenmatch[polars]'`. The `[polars]` extra is required for the classic opt-out lane (`GOLDENMATCH_FRAME=polars`).
  • `GOLDENMATCH_FRAME=polars` now raises a clear error if the `[polars]` extra is not installed.

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

  • 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.
  • vgoldencheck-v2.0.0 Polars moved from base dependency to optional `[polars]` extra.

Beta — feedback welcome: [email protected]