Skip to content

v0.5.1

Choose a tag to compare

@Gouryella Gouryella released this 19 Dec 02:38
· 73 commits to main since this release
b1393e5

🔧 Patch Release - Connection Handling Optimization

Highlights

This release focuses on connection handling optimization and codebase simplification, refining the yamux-based architecture introduced in v0.5.0 with improved session management and cleaner proxy logic.

✨ New Features

HTTP Connection Listener

  • New connQueueListener for seamless HTTP connection handoff to standard http.Server
  • Better integration with HTTP/2 configuration support

🔧 Improvements

TCP Tunnel Optimization

  • Refactored data connection processing logic for improved efficiency
  • Session selection now prioritizes non-primary sessions for data transmission
  • Falls back to main session only when no data session is available
  • Send successful response earlier before upgrading to yamux session

Connection Lifecycle Management

  • Optimized Connection struct fields and lifecycle logic
  • Improved connection closing mechanism to prevent resource leaks
  • Enhanced HTTP request parsing stability
  • Better error logging methods

Dependency Updates

  • Upgraded golang.org/x/net to latest version

🗑️ Removed

HTTP CONNECT Method

  • Removed support for HTTP CONNECT tunneling
  • CONNECT requests now return 405 Method Not Allowed
  • Simplified proxy handler by removing HTTPS tunnel logic

Deprecated Code Cleanup

  • Removed redundant DataConnection structures and related management methods
  • Removed connection_group_manager.go (~22 lines)
  • Streamlined response writing logic

📊 Stats

  • 9 files changed
  • +262 lines / -413 lines
  • Net reduction of ~150 lines through code simplification

⚠️ Compatibility

  • Fully compatible with v0.5.0 protocol
  • No breaking changes from v0.5.0

What's Changed

  • refactor(tcp): Optimizes the TCP tunnel data connection processing logic by @Gouryella
  • feat(server): Supports HTTP connection listener and connection pooling improvements by @Gouryella
  • feat(proxy): Removes support for the HTTP CONNECT method by @Gouryella

Full Changelog: v0.5.0...v0.5.1

What's Changed

Full Changelog: v0.5.0...v0.5.1