1.15.0 - 2024-05-24
Added
- Flink: handle Iceberg tables with nested and complex field types #2706@dolfinus
 CreatesSchemaDatasetFacetwith nested fields for Iceberg tables with list, map and struct columns.
- Flink: handle Avro schema with nested and complex field types #2711@dolfinus
 CreatesSchemaDatasetFacetwith nested fields for Avro schemas with complex types (union, record, map, array, fixed).
- Spark: add facets to Spark application events #2677@dolfinus
 Adds support for Spark application start and stop events in theExecutionContextinterface.
- Spark: add nested fields to SchemaDatasetFieldsFacet#2689@dolfinus
 Adds nested Spark Dataframe fields support toSchemaDatasetFieldsFacet. Also include field comment asdescription.
- Spark: add SparkApplicationDetailsFacet#2688@dolfinus
 AddsSparkApplicationDetailsFacettorunEvents emitted on Spark application start.
Removed
- Airflow: remove Airflow < 2.3.0 support #2710@kacpermuda
 Removes Airflow < 2.3.0 support.
- Integration: use v2 Python facets #2693@JDarDagran
 Migrates integrations from removed v1 facets to v2 Python facets.
Fixed
- Spark: improve job suffix assigning mechanism #2665@pawel-big-lebowski
 For some catalog handlers, the mechanism was creating different dataset identifiers on START and COMPLETE depending on whether a dataset was created or not. This improves the mechanism to assign a deterministic job suffix based on the output dataset at the moment of a start event. Note: this may change job names in some scenarios.
- Airflow: fix empty dataset name for AthenaExtractor#2700@kacpermuda
 The dataset name should not be empty when passing only a bucket as S3 output in Athena.
- Flink: fix SchemaDatasetFacetfor Protobuf repeated primitive types#2685@dolfinus
 Fixes issues with the Protobuf schema converter.
- Python: clean up Python client code, add logging. #2653@kacpermuda
 Cleans up client code, refactors logging in all Python modules.
- SQL: catch TokenizerErrors,PanicException#2703@mobuchowski
 The SQL parser now catches and handles these errors.
- Python: suppress warning on importing v1 module in init.py. #2713@JDarDagran
 Suppresses the deprecation warning when v1 facets are used.
- Integration/Java/Python: use UUIDv7 instead of UUIDv4 #2686#2687@dolfinus
 Uses UUIDv7 instead of UUIDv4 forrunEvents. The new UUID version produces monotonically increasing values, which leads to more performant queries on the OL consumer side. Note: UUID version is an implementation detail and can be changed in the future.