I don't disagree at all Josh but I also don't view the two approaches as
contradictory.  I would certainly expect that any Rust work we did for the
Python driver should transfer very naturally over to a Rust core when we
get to that point.  The Python driver uses a combination of C and cython
for a fair number of things (including type serde and eval of row data).
These are things we would need in a common Rust core and I would absolutely
expect that any impl we come up with for these things would transfer
easily.  Perhaps more importantly I would argue this allows us to work on a
Rust implementation incrementally; it would be nice to be able to tackle
chunks of the core (and get them out in the wild where we can validate them
with real-world use cases) without waiting for the whole core to be
complete.

   This change also has significant benefits for the Python driver as it
stands now; moving the current cython & C code into a common framework (and
updating it) will be of considerable utility to the driver going forward.
But this shouldn't get in the way of any effort to move to a common core.

   - Bret -

On Thu, Feb 5, 2026 at 8:52 AM Josh McKenzie <[email protected]> wrote:

> From a general philosophical perspective, I think the health of our
> ecosystem would be better served by having one core natively compiled
> driver lib and then language ecosystem native wrappers around that core.
> Similarly to how the Swift driver wraps the C++ driver. Lowering the amount
> of engineering required to keep multiple language ecosystem drivers in
> parity is a big win as the ecosystem's currently pretty fragmented.
>
> Using rust for the core of that given its memory safety, concurrency
> correctness, performance, language interconnect ecosystem, and general
> zeitgeist makes a lot of sense to me.
>
> On Tue, Feb 3, 2026, at 2:21 PM, Bret McGuire wrote:
>
>    Greetings all!
>
>    Another one that seemed worthwhile to bring to the list.  I've just
> filed CASSPYTHON-8 <https://issues.apache.org/jira/browse/CASSPYTHON-8> to
> explore the idea of replacing our current C and cython code with equivalent
> Rust implementations.  This technique is becoming more common in the Python
> world but there are concrete benefits for us on the Python driver team.
> There's some discussion about these benefits on CASSPYTHON-8.
>
>    Our upcoming release (likely 3.30.0) will be intended to get an
> ASF-branded Python driver out into the wild so I'm not planning on tackling
> any work in this area then.  The plan would be to start with this effort
> for 3.31.0.  We'll start with something small, just to try out the
> mechanism for integrating Rust code into a Python project, and see where
> that takes us.
>
>    Thanks!
>
>    - Bret -
>
>
>

Reply via email to