Update Python version requirements and fix compatibility issues

- Bump minimum Python version from 3.11 to 3.13 across all apps
- Add Python 3.11-3.13 test matrix to CLI workflow
- Document Python 3.11+ requirement in .env.example
- Fix Starlette Broadcast removal with in-process fallback implementation
- Add _InProcessBroadcast class for tests when Starlette Broadcast is unavailable
- Refactor API key validators to read live settings instead of cached values
- Update database models with explicit
This commit is contained in:
oib
2026-02-24 18:41:08 +01:00
parent 24b3a37733
commit 825f157749
270 changed files with 66674 additions and 2027 deletions

View File

@@ -15,9 +15,10 @@ Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Requires-Python: >=3.11
Requires-Python: >=3.13
Description-Content-Type: text/markdown
Requires-Dist: httpx>=0.27.0
Requires-Dist: pydantic>=2.7.0
@@ -39,6 +40,25 @@ Python client SDK for interacting with AITBC coordinator services, blockchain no
pip install aitbc-sdk
```
## Requirements
- **Python**: 3.11 or later
- **Dependencies**: httpx, pydantic, aitbc-crypto
## Compatibility & Stability
### Python Version Support
- **Minimum Version**: Python 3.11+
- **Recommended**: Python 3.11 or 3.12
- **Guarantee**: All APIs maintain backward compatibility within Python 3.11+
- **Security**: Cryptographic operations maintain security properties across versions
### API Stability
- **Major Version**: 0.x (pre-1.0, APIs may change with notice)
- **Deprecation Policy**: Deprecated features marked with warnings for 2+ releases
- **Breaking Changes**: Announced in release notes with migration guides
- **Semantic Versioning**: Follows semver.org specifications
## Quick Start
```python