# Connector/Python 2.0.0rc2 Release Notes

{% hint style="info" %}

<p align="center">The most recent release of <a href="https://app.gitbook.com/s/CjGYMsT2MVP4nd3IyW2L/mariadb-connector-python">MariaDB Connector/Python</a> is:</p>

<h4 align="center"><a href="../1.1/1.1.14" class="button secondary">Connector/Python 1.1.14</a> <a href="https://mariadb.com/downloads/connectors/connectors-data-access/python-connector" class="button primary">Download Now</a></h4>
{% endhint %}

<a href="https://mariadb.com/downloads/connectors/connectors-data-access/python-connector/" class="button primary">Download</a> <a href="2.0.0rc2" class="button secondary">Release Notes</a> <a href="../changelogs/2.0/2.0.0rc2" class="button secondary">Changelog</a> <a href="https://app.gitbook.com/s/CjGYMsT2MVP4nd3IyW2L/connectors-quickstart-guides/connector-python-guide" class="button secondary">Connector/Python Overview</a>

**Release date:** March 2026

This is a [***Release Candidate (RC)***](https://mariadb.com/docs/release-notes/community-server/about/release-criteria) release of MariaDB Connector/Python.

{% hint style="danger" %}
**Do not use non-stable (non-GA) releases in production!**
{% endhint %}

**For a description of this library see the** [**MariaDB Connector/Python documentation**](https://github.com/mariadb-corporation/mariadb-docs/blob/main/release-notes/connectors/mariadb-connector-python/README.md) **.**

## Overview

MariaDB Connector/Python 2.0.0 RC2 is a major rewrite that introduces significant improvements and new features while maintaining compatibility with the Python DB API 2.0 (PEP-249) standard.

**Version 2.0** offers flexible distribution options:

* **Pure Python implementation** - Works everywhere, no compiler required
* **C extension** - Maximum performance for data-heavy workloads
* **Pre-compiled binary wheels** - No local C connector installation needed
* **Native async/await support** - First-class asynchronous API

## Major New Features

### Asynchronous Support

* [CONPY-2](https://jira.mariadb.org/browse/CONPY-2): Native async/await support for asynchronous database operations
* [CONPY-327](https://jira.mariadb.org/browse/CONPY-327): Asynchronous support for C implementation
  * `asyncConnect()` function and `AsyncConnection` class
  * `AsyncCursor` class with async methods
  * `create_async_pool()` for async connection pooling
  * Context manager support with async `with` statements
  * Compatible with FastAPI, Starlette, and other asyncio-based frameworks

### Enhanced Distribution Options

* [CONPY-324](https://jira.mariadb.org/browse/CONPY-324): Enhanced Python Connector Distribution
  * Pure Python implementation available via `pip install mariadb[python]`
  * C extension for maximum performance via `pip install mariadb[c]`
  * Pre-compiled binary wheels via `pip install mariadb[binary]`
  * Connection pooling support via `pip install mariadb[pool]`

### Connection URI Support

* [CONPY-326](https://jira.mariadb.org/browse/CONPY-326): Add Connection URI Support to MariaDB Python Connector
  * Standard `mariadb://` connection string syntax
  * Simplified connection configuration
  * Example: `mariadb.connect("mariadb://user:password@localhost:3306/database")`

### Type Hints

* [CONPY-325](https://jira.mariadb.org/browse/CONPY-325): Add Type Hints to MariaDB Python Connector
  * Complete type annotations for all public APIs
  * Full mypy and pyright compatibility
  * Improved IDE autocomplete and type checking

### Binary Protocol Improvements

* [CONPY-338](https://jira.mariadb.org/browse/CONPY-338): Unified binary protocol use
  * Explicit control over binary vs text protocol
  * Prepared statement caching enabled by default
  * Better performance for repeated queries
  * Connection-level and cursor-level `binary` parameter

## Performance and Architecture Improvements

### Metadata Optimization

* [CONPY-335](https://jira.mariadb.org/browse/CONPY-335): Metadata: Store metadata as an object of arrays instead of an array of objects
  * Improved memory efficiency for cursor metadata
  * Faster metadata access patterns
  * Better performance with large result sets

### C Implementation Enhancements

* [CONPY-333](https://jira.mariadb.org/browse/CONPY-333): C implementation: columns metadata reading
  * Optimized metadata reading in C extension
  * Reduced overhead for query execution
  * Enhanced performance for data-heavy workloads

## Installation

MariaDB Connector/Python 2.0.0-rc2 can be obtained from the Python Package Index (PyPI):

**Pure Python implementation (recommended for development):**

```bash
pip install --pre mariadb[python,pool]
```

**Pre-compiled binary wheels (recommended for production):**

```bash
pip install --pre mariadb[binary,pool]
```

**C extension from source (maximum performance):**

```bash
# Requires MariaDB Connector/C 3.3.1 or later
pip install --pre mariadb[c,pool]
```

## Breaking Changes

Please refer to the [Migration Guide](https://github.com/mariadb-corporation/mariadb-docs/blob/main/release-notes/connectors/mariadb-connector-python/migration-from-1.1-to-2.0.md) for detailed information on migrating from version 1.1 to 2.0.

Key breaking changes:

* Python 3.8+ required (Python 3.7 and earlier no longer supported)
* Some internal APIs have changed
* Default behavior changes for prepared statement caching

## Changelog

For a list of changes made in this release, with links to detailed information on each push, see the [changelog](https://mariadb.com/docs/release-notes/connectors/python/changelogs/2.0/2.0.0rc2).

## Links

* [Documentation](https://github.com/mariadb-corporation/mariadb-docs/blob/main/release-notes/connectors/mariadb-connector-python/README.md)
* [Migration Guide](https://github.com/mariadb-corporation/mariadb-docs/blob/main/release-notes/connectors/mariadb-connector-python/migration-from-1.1-to-2.0.md)
* [API Reference](https://github.com/mariadb-corporation/mariadb-docs/blob/main/release-notes/connectors/mariadb-connector-python/api.md)
* [Bug tracker](https://jira.mariadb.org/projects/CONPY)
* [Source code](https://github.com/mariadb-corporation/mariadb-connector-python)

**Do not use non-stable (non-GA) releases in production!**

<sub>*This page is: Copyright © 2025 MariaDB. All rights reserved.*</sub>

{% @marketo/form formid="4316" formId="4316" %}
