You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
# Release v5.0.0 🎉
## Overview
This PR prepares the **stable v5.0.0 release** of the Auth0 Python SDK -
a complete rewrite with significant improvements and breaking changes
from v4.x.
## Changes in this PR
- Updated `.version` file from `5.0.0b0` to `5.0.0`
- Updated `pyproject.toml` package version to `5.0.0`
- Added comprehensive v5.0.0 release notes to `CHANGELOG.md`
- Updated `README.md` with v5.0.0 installation instructions
## What's New in v5.0.0
### ⚠️ BREAKING CHANGES - Major Rewrite
This is a complete rewrite of the Auth0 Python SDK with significant
breaking changes from v4.x. Users will need to update their code when
migrating from v4.x to v5.0.0.
### Added Features
- **New Fern-generated SDK**: Complete Management API rewrite generated
from Auth0's OpenAPI specifications
- **Hierarchical package structure**: Organized Management APIs into
logical sub-clients for better discoverability
- **Strongly typed interfaces**: Pydantic models provide specific
request/response types replacing generic dictionaries
- **Automatic token management**: Built-in client credentials handling
with automatic token refresh
- **Enhanced pagination**: New `SyncPager` and `AsyncPager` classes for
easy iteration over paginated results
- **First-class async support**: Full async/await support with
`AsyncManagementClient`
- **Better IDE support**: Improved code completion, type hints, and
inline documentation
### Key Breaking Changes
- **Import paths** changed from `from auth0.management import Auth0` to
`from auth0.management import ManagementClient`
- **Client initialization** changed from `Auth0(domain,
management_token)` to `ManagementClient(domain, client_id,
client_secret)` with automatic token management
- **Response types** changed from dictionaries to Pydantic models (use
`.model_dump()` to convert back to dict)
- **Method organization** changed from flat (`client.users.list()`) to
hierarchical where applicable
- **Pagination parameters** changed - some endpoints use `per_page`,
others use `take`
- **Python version** requirement increased from ≥3.7 to ≥3.8
- **Error handling** changed from `Auth0Error` to `ApiError` base class
## Migration Example
### Before (v4):
```python
from auth0.management import Auth0
# Initialize with management token
mgmt = Auth0(
domain='your-tenant.auth0.com',
token='YOUR_MGMT_API_TOKEN'
)
# List clients - returns list of dicts
clients = mgmt.clients.all()
for client in clients:
print(client['name']) # Dictionary access
```
### After (v5):
```python
from auth0.management import ManagementClient
# Initialize with client credentials (automatic token management)
client = ManagementClient(
domain='your-tenant.auth0.com',
client_id='YOUR_CLIENT_ID',
client_secret='YOUR_CLIENT_SECRET'
)
# List clients - returns SyncPager of Pydantic models
clients = client.clients.list(per_page=50)
for client_obj in clients:
print(client_obj.name) # Pydantic model attribute access
# Convert to dict if needed
client_dict = client_obj.model_dump()
```
## Important Notes
- ✅ The `authentication` package is **NOT affected** by these changes.
Authentication APIs remain the same between v4 and v5.
- 📚 Complete migration guide available at
[v5_MIGRATION_GUIDE.md](https://github.com/auth0/auth0-python/blob/master/v5_MIGRATION_GUIDE.md)
- 🎯 This is the stable GA release following v5.0.0-beta.0
- 🔧 Auth0 telemetry headers implemented with dynamic versioning (no
manual updates needed)
- 📖 Full API reference available at
[reference.md](https://github.com/auth0/auth0-python/blob/master/reference.md)
## Testing
- ✅ All 389 wire tests passing
- ✅ Integration tests verified with live Auth0 tenant
- ✅ Both Authentication and Management APIs tested successfully
- ✅ Async clients tested and verified
Copy file name to clipboardExpand all lines: README.md
+2-7Lines changed: 2 additions & 7 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -29,21 +29,16 @@ The Auth0 Python library provides convenient access to the Auth0 APIs from Pytho
29
29
-[Feedback](#feedback)
30
30
31
31
## Installation
32
-
33
-
> ⚠️ **This is a beta release (v5.0.0-beta)** of a major rewrite with breaking changes. See the [Migration Guide](v5_MIGRATION_GUIDE.md) for upgrade instructions from v4.x.
34
-
35
-
**Install the v5 beta:**
36
-
37
32
```sh
38
-
pip install auth0-python==5.0.0b0
33
+
pip install auth0-python==5.0.0
39
34
```
40
35
41
36
**Requirements:**
42
37
- Python ≥3.8 (Python 3.7 support has been dropped)
43
38
44
39
## Reference
45
40
46
-
A full reference for this library is available [here](https://github.com/auth0/auth0-python/blob/HEAD/./reference.md).
41
+
A full reference for this library is available [here](https://github.com/auth0/auth0-python/blob/master/reference.md).
0 commit comments