Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Development #3

Merged
merged 24 commits into from
Jan 10, 2025
Merged

Development #3

merged 24 commits into from
Jan 10, 2025

Conversation

orenlab
Copy link
Owner

@orenlab orenlab commented Jan 10, 2025

[0.2.0] - 2024-01-10

Added

  • New asynchronous client AsyncOutlineClient using aiohttp
  • Comprehensive type hints and overloads for better IDE support
  • New methods for server management:
    • rename_server() - Change server name
    • set_hostname() - Configure server hostname
    • get_metrics_status() - Check metrics collection status
    • set_metrics_status() - Enable/disable metrics collection
  • Support for different metrics periods (DAILY, WEEKLY, MONTHLY)
  • Extended options for access key creation (method, encryption settings)
  • Improved error handling with detailed error messages
  • Context manager support with async __aenter__ and __aexit__

Changed

  • Complete rewrite of the client to support asynchronous operations
  • Enhanced error hierarchy with OutlineError base class
  • Improved request handling with automatic session management
  • More flexible SSL/TLS certificate verification
  • Better JSON response parsing and validation
  • Updated type annotations to use modern Python typing features

Removed

  • Synchronous client implementation (migrated to async)
  • Direct requests-based HTTP handling

orenlab and others added 24 commits September 5, 2024 11:42
- Async-First Design: Built with modern async/await patterns for optimal performance
- Type Safety: Full typing support with runtime validation via Pydantic
- Comprehensive API Coverage: Support for all Outline VPN Server API endpoints
- Error Handling: Robust error handling with custom exception types
- SSL/TLS Security: Certificate fingerprint verification for enhanced security
- Flexible Response Format: Choose between Pydantic models or JSON responses
- Data Transfer Metrics: Built-in support for monitoring server and key usage
- Rate Limiting: Built-in handling of API rate limits
- Context Manager Support: Clean resource management with async context managers
- Added CHANGELOG.md
- Update CONTRIBUTING.md
@orenlab orenlab merged commit e621ffb into main Jan 10, 2025
19 checks passed
@orenlab orenlab deleted the development branch January 10, 2025 16:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant