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
New: Class-based client generator! Use clientele generate-class to generate a client with a Client class and methods instead of standalone functions.
Class-based clients support both sync and async modes with --asyncio t flag.
Class-based clients are perfect for object-oriented codebases and when you need to mock the client for testing.
New: Dynamic configuration for class-based clients! Class-based clients now accept a Config object in their constructor, allowing you to create multiple clients with different configurations on the fly.
The config.py file in class-based clients now generates a Config class instead of standalone functions, enabling runtime configuration changes.
You can now instantiate clients with custom configuration: client = Client(config=Config(api_base_url="https://api.example.com", bearer_token="my-token")).
This addresses issues #42 and #49, enabling dynamic auth tokens and multiple clients with different configurations.
Updated documentation with comprehensive examples of class-based client usage.
Added generate-class command to CLI with full feature parity to the standard generate command.
Add ABC (Abstract Base Class) pattern to generators with a Generator base class that all generators inherit from.
Refactored all imports to import modules.
Changed: Generated code is now auto-formatted with Ruff instead of Black.
Breaking change for class-based clients: The config.py file structure has changed from functions to a class. Existing generated clients will need to be regenerated with --regen t.
Fixed: OpenAPI number type now correctly maps to Python float instead of int. The integer type continues to map to int, and number with format: "decimal" continues to map to decimal.Decimal. This addresses issue #40.
New: Python 3.13 and Python 3.14 support! Clientele and all generated clients now officially support Python 3.10, 3.11, 3.12, 3.13, and 3.14.
Python 3.9 support has been dropped. If you need Python 3.9 support, please use version 0.9.0 or earlier.