🤣

El dom, 30 ago 2026 a las 3:53, Hyukjin Kwon (<[email protected]>)
escribió:

> Let me -1 on my own and finish the discussion thread first for now. Will
> start rc2 later.
>
> On Sun, Aug 30, 2026 at 10:29 AM Hyukjin Kwon <[email protected]>
> wrote:
>
>> Ah that's fair. Let me raise a thread separately to see if there are more
>> thoughts too but let me not pause this vote at the same time for now 👍
>>
>> On Sun, 30 Aug 2026 at 10:28, Ángel Álvarez Pascua <
>> [email protected]> wrote:
>>
>>> +1 (non-binding)
>>>
>>> Thanks, that makes sense. I don’t expect there to be much objection. I
>>> was mainly surprised that there hadn’t been a separate discussion before
>>> the release vote, given the addition of the Python wrapper and new package.
>>>
>>>
>>>
>>> El dom, 30 ago 2026 a las 3:23, Hyukjin Kwon (<[email protected]>)
>>> escribió:
>>>
>>>> It is the Rust Client, and the new one is a Python wrapper of the Rust
>>>> client, which conceptually thought did not require an SPIP but rather a
>>>> separate feature. If you feel like it has to be discussed separately, I can
>>>> bring it up and pause the release vote for now.
>>>>
>>>> On Sun, 30 Aug 2026 at 10:20, Ángel Álvarez Pascua <
>>>> [email protected]> wrote:
>>>>
>>>>> Could you please point me to the previous dev@ discussion or SPIP for
>>>>> this proposal?
>>>>>
>>>>> I found the earlier discussion about creating the Spark Connect Rust
>>>>> client repository, but not one covering the ground-up Rust rewrite and the
>>>>> new pyspark-client-rust package. Given the scope and user-facing
>>>>> nature of these changes, I would have expected them to be discussed before
>>>>> reaching the release vote, possibly through the SPIP process.
>>>>>
>>>>> El dom, 30 ago 2026 a las 0:37, Hyukjin Kwon (<[email protected]>)
>>>>> escribió:
>>>>>
>>>>>> Please vote on releasing the following candidate as Apache Spark
>>>>>> Connect Rust
>>>>>> Client 4.2.0.
>>>>>>
>>>>>> This is the *first* release of the ground-up Rust rewrite of the
>>>>>> Spark Connect
>>>>>> Python client (published to PyPI as pyspark-client-rust): a drop-in
>>>>>> replacement
>>>>>> for pyspark-client <https://pypi.org/project/pyspark-client/>,
>>>>>> backed by a native Rust core instead of py4j/grpcio.
>>>>>>
>>>>>> The vote is open until Thursday, September 4, 2026, 5:00 PM PDT and
>>>>>> passes if a majority of +1 PMC votes are cast, with a minimum of
>>>>>> 3 +1 votes.
>>>>>>
>>>>>> [ ] +1 Release this package as Apache Spark Connect Rust Client 4.2.0
>>>>>> [ ] -1 Do not release this package because …
>>>>>>
>>>>>> TAG:
>>>>>> https://github.com/apache/spark-connect-rust/releases/tag/v4.2.0-rc1
>>>>>> (commit: f77df70)
>>>>>>
>>>>>> RELEASE FILES (wheels + sdist, built and attached by GitHub Actions):
>>>>>> https://github.com/apache/spark-connect-rust/releases/tag/v4.2.0-rc1
>>>>>>
>>>>>> DOCUMENTATION:
>>>>>> https://apache.github.io/spark-connect-rust/
>>>>>>
>>>>>> LIST OF ISSUES:
>>>>>> https://issues.apache.org/jira/projects/SPARK/versions/12357484
>>>>>> HOW TO TRY IT — PYTHON (pip)
>>>>>>
>>>>>> The release attaches abi3 wheels (Linux x86_64/aarch64, macOS
>>>>>> universal2,
>>>>>> Windows x86_64; CPython 3.9+) plus a source distribution. Grab the
>>>>>> wheel for
>>>>>> your platform from the release page and install it directly, e.g.:
>>>>>>
>>>>>>   pip install 
>>>>>> https://github.com/apache/spark-connect-rust/releases/download/v4.2.0-rc1/pyspark_client_rust-4.2.0-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
>>>>>>
>>>>>> Then use it exactly like PySpark. See if your existing workloads work
>>>>>> with this.
>>>>>> HOW TO TEST IT — RUST (cargo)
>>>>>>
>>>>>> The Rust crates are intentionally NOT on crates.io for a release
>>>>>> candidate
>>>>>> (crates.io is immutable; the crates are published there only when
>>>>>> the release is
>>>>>> finalized). Test against the tagged source instead:
>>>>>>
>>>>>>   # A) Pin a git dependency to the RC tag in your project's Cargo.toml:
>>>>>>   [dependencies]
>>>>>>   apache-spark-connect = { git = 
>>>>>> "https://github.com/apache/spark-connect-rust";, tag = "v4.2.0-rc1" }
>>>>>>
>>>>>>   # B) Or build and run the crates' own tests from the tag:
>>>>>>   git clone --branch v4.2.0-rc1 
>>>>>> https://github.com/apache/spark-connect-rust
>>>>>>   cd spark-connect-rust
>>>>>>   cargo build --release
>>>>>>   cargo test
>>>>>>
>>>>>> HIGHLIGHTS
>>>>>>
>>>>>>    - *Drop-in PySpark Connect Python API*, verified against real
>>>>>>    PySpark 4.2.0 two
>>>>>>    ways: the official PySpark test suite runs against this client,
>>>>>>    and a
>>>>>>    behavioral API-parity sweep compares the Python API surface
>>>>>>    (functions and
>>>>>>    DataFrame / Column / SparkSession / GroupedData / Window methods)
>>>>>>    call-by-call
>>>>>>    to PySpark.
>>>>>>    - Spark Connect Rust API *full* coverage, including *Rust UDF*s
>>>>>>    (docs: https://apache.github.io/spark-connect-rust/).
>>>>>>    - *Native Rust transport* via tonic; cloudpickle vendored to
>>>>>>    match upstream, so
>>>>>>    no grpcio/py4j at runtime. and *native type conversion.*
>>>>>>
>>>>>> WHY DOES THE VERSION START AT 4.2.0?
>>>>>>
>>>>>> Even though this is the first release of the rewrite, the version
>>>>>> starts at
>>>>>> 4.2.0 to track the Apache Spark / PySpark version it targets. This
>>>>>> (1) removes
>>>>>> any ambiguity about which Spark version a given client is compatible
>>>>>> with, and
>>>>>> (2) lets PySpark users pip install pyspark-client-rust== exactly
>>>>>> as they would pyspark-client, keeping the same versioning across both.
>>>>>>
>>>>>> Thanks,
>>>>>> Hyukjin Kwon
>>>>>>
>>>>>>

Reply via email to