Skip to main content

Module evolution

Module evolution 

Source
Expand description

Schema evolution engine (F-SCHEMA-009).

Provides:

  • SchemaEvolution — a general-purpose schema evolver that performs name-based schema diffing, compatibility evaluation, and schema merging
  • SchemaEvolutionEngine — orchestrates the full evolution flow: detect → diff → evaluate → apply → record
  • SchemaHistory — tracks per-source schema version history
  • is_safe_widening — determines whether a type can be safely widened

Structs§

SchemaEvolution
A general-purpose schema evolver that uses name-based schema matching (suitable for JSON, CSV, Avro, etc.).
SchemaEvolutionEngine
Orchestrates the full schema evolution flow.
SchemaHistory
Tracks schema version history for all sources.
SchemaHistoryEntry
A record in the schema history.

Enums§

EvolutionResult
Result of an evolution attempt.
EvolutionTrigger
How a schema evolution was triggered.

Functions§

apply_changes
Applies a set of schema changes to produce a new schema and a column projection mapping old columns to new positions.
diff_schemas_by_name
Computes the diff between two Arrow schemas using name-based matching.
evaluate_changes
Evaluates a set of schema changes against a compatibility mode.
is_safe_widening
Returns true if from can be safely widened to to without data loss.