Conversation
Gold Data ReportNotes
Commit Information
Summary
DetailsGold Data Metrics
|
Codecov Report❌ Patch coverage is @@ Coverage Diff @@
## main #2289 +/- ##
==========================================
- Coverage 79.46% 78.32% -1.15%
==========================================
Files 909 916 +7
Lines 171774 174768 +2994
==========================================
+ Hits 136503 136883 +380
- Misses 35271 37885 +2614
... and 71 files with indirect coverage changes 🚀 New features to boost your workflow:
|
Spark 3.5.7 Test ReportCommit Information
Test Summary
Test DetailsError CountsPassed Tests Diff--- before.txt 2026-07-27 03:49:43.685326834 +0000
+++ after.txt 2026-07-27 03:49:43.873329920 +0000
@@ -925 +924,0 @@
-pyspark/sql/tests/connect/test_parity_errors.py::ErrorsParityTests::test_date_time_exception
@@ -1152,0 +1152 @@
+pyspark/sql/tests/connect/test_parity_types.py::TypesParityTests::test_complex_nested_udt_in_dfFailed Tests |
Ibis Test ReportCommit Information
Test Summary
Test DetailsError CountsPassed Tests Diff--- before.txt 2026-07-27 03:50:55.168126097 +0000
+++ after.txt 2026-07-27 03:50:55.397245999 +0000
@@ -1431,0 +1432 @@
+ibis/backends/tests/test_temporal.py::test_string_as_date[pyspark-mysql_format]
@@ -1432,0 +1434 @@
+ibis/backends/tests/test_temporal.py::test_string_as_timestamp[pyspark-mysql_format]Failed Tests |
Contributor
There was a problem hiding this comment.
Pull request overview
Updates Sail’s Spark Connect compatibility layer, test harnesses, and documentation to support Apache Spark / PySpark 4.2.0, including protocol (proto) additions and adjustments to Python UDF/UDTF serialization behavior needed for Spark 4.2 workers.
Changes:
- Bump Spark/PySpark versions across CI, packaging, Docker images, and docs from 4.1.1 → 4.2.0 (and expand the test matrix accordingly).
- Update Spark Connect protocol definitions and server stubs to compile against Spark 4.2 proto additions (e.g.,
GetStatus, new relation/command variants). - Refresh Spark “gold data” and PySpark-related tests to reflect Spark 4.2 behavior and error semantics.
Reviewed changes
Copilot reviewed 59 out of 59 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| scripts/spark-tests/spark-4.2.0.patch | Updates the maintained Spark-side patch for building/packaging a patched PySpark 4.2.0 used in integration tests. |
| scripts/spark-gold-data/spark-4.2.0.patch | Updates the Spark-side patch used to regenerate/collect gold data against Spark 4.2.0. |
| scripts/spark-gold-data/bootstrap.sh | Switches gold-data bootstrap to apply Spark v4.2.0 patch. |
| python/pysail/tests/spark/udf/test_udf_kwargs.py | Adjusts expected exception types/messages for Spark 4.2 UDTF error behavior. |
| python/pysail/tests/spark/datasource/test_python.py | Updates datasource partition expectations for Spark 4.2 (InputPartition default partition semantics). |
| python/pysail/tests/spark/dataframe/udt.py | Adds importable UDT definitions for doctests (Spark 4.2 UDT resolution behavior). |
| python/pysail/tests/spark/dataframe/test_udt.txt | Updates doctest to import UDTs from a module rather than defining them inline. |
| python/pysail/tests/spark/catalog/hms/conftest.py | Skips HMS Delta-related tests when Spark minor isn’t mapped (instead of hard error). |
| pyproject.toml | Bumps PySpark dependencies to 4.2.0 and extends Hatch test matrices for Spark 4.2.0. |
| docs/introduction/getting-started/index.md | Updates getting-started install snippets to Spark/PySpark 4.2.0. |
| docs/guide/integrations/mcp-server.md | Updates MCP install command example to use pyspark-client 4.2.0. |
| docs/development/spark-tests/test-spark.md | Updates Spark test instructions/examples to refer to Spark 4.2.0 envs. |
| docs/development/spark-tests/spark-setup.md | Updates Spark clone/build examples to use Spark v4.2.0. |
| docs/development/spark-tests/spark-patch.md | Updates patch apply/diff/revert examples to Spark 4.2.0 patch file. |
| docs/development/build/python.md | Updates example Hatch env invocation to Spark 4.2.0. |
| docker/release/Dockerfile | Updates default PYSPARK_VERSION build arg to 4.2.0. |
| docker/quickstart/Dockerfile | Updates default PYSPARK_VERSION build arg to 4.2.0. |
| docker/dev/Dockerfile | Updates default PYSPARK_VERSION build arg to 4.2.0. |
| crates/sail-spark-connect/tests/gold_data/plan/plan_with.json | Updates/extends plan gold data for Spark 4.2 parsing/planning behavior. |
| crates/sail-spark-connect/tests/gold_data/plan/plan_join.json | Updates join parsing/planning gold data (incl. new/changed Spark 4.2 syntax/errors). |
| crates/sail-spark-connect/tests/gold_data/plan/error_misc.json | Updates error message gold data to Spark 4.2 error classes/messages. |
| crates/sail-spark-connect/tests/gold_data/plan/ddl_misc.json | Adds/updates DDL gold cases reflecting Spark 4.2 syntax support changes. |
| crates/sail-spark-connect/tests/gold_data/plan/ddl_merge_into.json | Adds merge error-case gold data aligned with Spark 4.2 behavior. |
| crates/sail-spark-connect/tests/gold_data/plan/ddl_insert_into.json | Adds/updates insert/replace planning gold data for Spark 4.2. |
| crates/sail-spark-connect/tests/gold_data/plan/ddl_describe.json | Updates describe gold data (removes cases not represented the same way in Spark 4.2). |
| crates/sail-spark-connect/tests/gold_data/function/vector.json | Adds Spark 4.2 function gold coverage entries for vector functions (unsupported in Sail). |
| crates/sail-spark-connect/tests/gold_data/function/variant.json | Extends variant-related function gold data for Spark 4.2. |
| crates/sail-spark-connect/tests/gold_data/function/st.json | Updates spatial function gold data to Spark 4.2 signatures/printing. |
| crates/sail-spark-connect/tests/gold_data/function/sketch.json | Adds sketch-related function gold coverage (many unsupported in Sail). |
| crates/sail-spark-connect/tests/gold_data/function/protobuf.json | Adds protobuf function gold coverage (not implemented in Sail). |
| crates/sail-spark-connect/tests/gold_data/function/misc.json | Reorganizes misc function gold data (splitting/moving many function tests). |
| crates/sail-spark-connect/tests/gold_data/function/json.json | Adds to_json(..., sortKeys) gold case for Spark 4.2. |
| crates/sail-spark-connect/tests/gold_data/function/datetime.json | Adds Spark 4.2 time_bucket and time_* conversion function gold coverage (unsupported). |
| crates/sail-spark-connect/tests/gold_data/function/collection.json | Adds binary reverse(x'...') gold case (shows current execution limitation). |
| crates/sail-spark-connect/tests/gold_data/function/avro.json | Adds avro function gold coverage (not implemented). |
| crates/sail-spark-connect/tests/gold_data/function/agg.json | Adds/updates aggregate function gold cases for Spark 4.2. |
| crates/sail-spark-connect/tests/gold_data/data_type.json | Adds TIMESTAMP WITH LOCAL TIME ZONE type parsing gold cases. |
| crates/sail-spark-connect/src/server.rs | Adds Spark Connect GetStatus RPC stub required by Spark 4.2 service definition. |
| crates/sail-spark-connect/src/proto/plan.rs | Handles new Spark 4.2 proto fields/relations/commands by mapping or returning “unsupported”. |
| crates/sail-spark-connect/src/config.rs | Adds Spark 4.2-related config keys and version-sensitive defaults and parsing. |
| crates/sail-spark-connect/proto/spark/connect/relations.proto | Updates Spark Connect relation protos for 4.2 (e.g., RelationChanges, NearestByJoin, parse XML, source_name). |
| crates/sail-spark-connect/proto/spark/connect/pipelines.proto | Updates pipeline protos for 4.2 (new command variants, identifiers, deprecations). |
| crates/sail-spark-connect/proto/spark/connect/commands.proto | Adds Spark 4.2 write fields and stream options (e.g., schema evolution flag). |
| crates/sail-spark-connect/proto/spark/connect/catalog.proto | Adds Spark 4.2 catalog command messages. |
| crates/sail-spark-connect/proto/spark/connect/base.proto | Adds Spark 4.2 GetStatus request/response and observed-metrics error fields. |
| crates/sail-python-udf/src/python/spark.py | Updates Arrow/Pandas conversion paths and worker-call conventions for PySpark 4.2. |
| crates/sail-python-udf/src/config.rs | Adds a new UDF config toggle for Spark 4.2 pandas int extension dtype preference. |
| crates/sail-python-udf/src/cereal/pyspark_udtf.rs | Updates UDTF payload serialization to match Spark 4.2 worker protocol (RunnerConf/EvalConf, conf maps). |
| crates/sail-python-udf/src/cereal/pyspark_udf.rs | Updates UDF payload serialization for Spark 4.2 worker protocol changes. |
| crates/sail-python-udf/src/cereal/mod.rs | Extends supported PySpark version detection to include 4.2 and adds shared conf writer. |
| crates/sail-execution/src/proto/codec.rs | Extends remote execution codec to carry the new PySpark UDF config field. |
| crates/sail-execution/proto/sail/plan/physical.proto | Extends physical plan proto to include the new PySpark UDF config field. |
| .github/workflows/spark-package-artifacts.yml | Updates Spark artifact packaging workflow matrix to Spark 4.2.0. |
| .github/workflows/report.yml | Updates report artifact naming to Spark 4.2.0. |
| .github/workflows/gold-data-script-validation.yml | Pins gold-data validation to Spark v4.2.0. |
| .github/workflows/catalog-tests.yml | Runs catalog tests under Spark 4.2.0 Hatch env. |
| .github/workflows/build.yml | Updates build/test matrices to include Spark 4.2.0. |
linhr
marked this pull request as ready for review
July 26, 2026 15:55
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.