CHANGELOG¶
version 0.4.10 (2025-06-25)¶
Features¶
- 🔧 Customizable Error Responses - Added configurable error status codes and messages for ASGI Gateway features:
TimeoutConfignow supportserror_statusanderror_messagefields (defaults: 504, "Request timeout")RateLimitConfignow supportserror_statusanderror_messagefields (defaults: 429, "Rate limit exceeded")- Users can customize error responses in YAML configuration files
- Example:
Refactoring¶
- 📦 Features Directory Restructuring - Major code organization improvements:
- Moved core features to dedicated
premier/features/directory premier/cache.py→premier/features/cache.pypremier/retry.py→premier/features/retry.pypremier/timer.py→premier/features/timer.pypremier/throttler/→premier/features/throttler/-
Updated all imports and dependencies accordingly
-
🛠️ Error Response Encapsulation - Eliminated duplicate error response code:
- Created reusable
send_error_response()function in ASGI Gateway - Standardized error responses across timeout, rate limiting, and default handlers
- Supports both JSON and plain text content types
- Reduced code duplication and improved maintainability
Technical Improvements¶
- Enhanced ASGI Gateway architecture with better error handling patterns
- Improved configuration parsing for new error response fields
- All existing tests continue to pass with new functionality
- Better separation of concerns in error response management
version 0.4.9 (2025-06-14)¶
Bug Fixes & Features¶
- Dashboard Stats Tracking - Fixed dashboard statistics tracking issues and improved real-time data accuracy
- Dashboard Styling & Theme - Enhanced dashboard visual appearance with improved styling and theme consistency
-
️Configurable Server List – Users can now define and manage servers directly from a configuration file
-
Load Balancing (Round Robin) – Implemented round robin load balancer for distributing traffic evenly across servers
-
️Circuit Breaker Support – Added circuit breaker mechanism to improve fault tolerance and system resilience
Refactoring¶
- 🔧 ASGI Architecture Refactor - Major restructuring of ASGI components for better maintainability:
- Separated forward service logic into dedicated module (
premier/asgi/forward.py) - Created dedicated dashboard service (
premier/dashboard/service.py) - Implemented load balancer component (
premier/asgi/loadbalancer.py) - Simplified main gateway module by extracting specialized services
- Improved code organization and separation of concerns
Technical Improvements¶
- Enhanced dashboard service architecture with better separation of concerns
- Improved ASGI gateway performance through modular design
- Better error handling and logging in dashboard components
- Streamlined configuration management in dashboard
version 0.4.8 (2025-06-14)¶
Major Features¶
- 🎛️ Web Dashboard - Built-in web GUI for real-time monitoring and configuration management
- Live request/response metrics and performance analytics
- Interactive configuration editor with YAML validation
- Cache management and rate limiting dashboard
- Health monitoring and system statistics
-
Available at
/premier/dashboard -
🚀 Complete Example Application - Production-ready example with FastAPI backend
- Comprehensive API endpoints demonstrating all Premier features
- YAML configuration with path-specific policies
- Documentation and testing guides
-
Dashboard integration showcase
-
📚 Enhanced Documentation - Comprehensive documentation overhaul
- Separate guides for web dashboard and examples
- Updated README with better organization
- Clear quick-start instructions
- Production deployment guidance
New Files & Components¶
premier/dashboard/- Complete web dashboard implementationexample/- Full-featured example applicationdocs/web-gui.md- Web dashboard documentationdocs/examples.md- Examples and tutorials guide- Enhanced ASGI gateway with dashboard integration
Improvements¶
- ASGI Gateway Enhancement - Better integration and dashboard support
- Configuration Management - Hot-reload configuration from web interface
- Monitoring - Real-time performance metrics and request analytics
- User Experience - Simplified setup with comprehensive examples
v0.4.0 (2024-06-05)¶
Chore¶
-
chore: fix test (
17ce3e4) -
chore: dev (
22be11c) -
chore: readme (
7d5a5bc) -
chore: readme (
f376b5b) -
chore: readme (
bdcb13f) -
chore: readme (
9d14e9e)
Feature¶
-
feat: better error message (
b1c2523) -
feat: async queue (
d621219) -
feat: aio (
67d85c2) -
feat: aio (
710e934)
Fix¶
-
fix: make TaskQueue.put atomic using redis lua script (
69a49aa) -
fix: fixed asyncio throttler using asyncio.Lock (
4811312) -
fix: fix typing (
29f4a76)
Refactor¶
- refactor: rewrite leaky bucket (
5e38981)
Unknown¶
-
chores: fix conflicts (
07198a8) -
Merge branch 'dev' adding async throttler for async function, also fixes a few bug in threading case (
630c8ed) -
chores: last commit before merge (
17110a9) -
chores: fix type errors (
0a69501) -
chores: refactor put script (
fbca52e) -
chores: fix typing (
fccb598) -
wip: working on asyncio throttler (
f933f10) -
chores: remove setup.py (
82b9ad6) -
chores: test (
6ff20d2)
v0.3.0 (2024-04-08)¶
Chore¶
- chore: readme (
2429f50)
Feature¶
- feat: refactor (
e9f0c4d)
Fix¶
- fix: minor errors (
b8a630b)
Unknown¶
- Merge pull request #1 from raceychan/dev
merge latest dev branch (8523182)
v0.2.0 (2024-04-03)¶
Feature¶
v0.1.0 (2024-04-02)¶
Feature¶
-
feat: rename (
8565565) -
feat: readme (
1b9932a) -
feat: readme (
bb93c35) -
feat: readme (
d1e2b16) -
feat: readme (
3f406db) -
feat: readme (
a397853) -
feat: readme (
8584238) -
feat: first commit (
ba6abfc) -
feat: first commit (
4a83c49) -
feat: first commit (
7be616c)
version 0.4.3¶
Feature
- [x]
cache
refactor:
No longer support sync version of decorator, which means all decorated function would be async.
version 0.4.6¶
- ✅ Implemented facade pattern with Premier class
- ✅ Added comprehensive logging support with ILogger interface
- ✅ Enhanced retry logic with detailed logging
- ✅ Improved timeout handling with logging
- ✅ Updated documentation and examples
- ✅ Removed legacy task queue implementation
- ✅ Made private functions properly private with underscore prefix
version 0.4.7¶
Web GUI for config and monitor