Release Note: SuperSocket 2.0.1
Overview
SuperSocket 2.0.1 is a maintenance release that addresses several stability issues, improves performance, enhances dependency injection support, and adds more comprehensive documentation through XML comments.
Key Improvements
Stability and Bug Fixes
- Fixed the middleware session handling for proper session rejection (#796)
- Resolved several issues with SocketSender that were causing ArgumentOutOfRangeException (#794, #65af03d)
- Used pipe scheduler to run continuation actions in SocketSender for better reliability (#798)
- Fixed order-dependent issue with UseInProcSessionContainer() which now correctly works when not placed last in the fluent configuration chain (#788)
- Default to IPv4 for unsigned address family to ensure consistent behavior (193e8365)
Performance Improvements
- Added ConfigureAwait for SendAsync to avoid context switching and improve performance (#792)
- Various socket handling optimizations (1f701b1b)
Enhanced Dependency Injection
- Modified pipeline filter constructor to allow dependency injection, improving flexibility when creating custom filters (#797)
- Fixed issue where application builder (not web application builder) could not be used as SuperSocket application builder (c5d66c45)
Developer Experience
- Added .editorconfig for consistent coding style across the project (#791)
- Added comprehensive XML comments to improve API documentation (0ba13d2a, 63c67115, 6290d9ee)
- Exposed StartReceive method as protected to allow more customization in derived classes (4e18f714)
- Added release notes in NuGet packages for better visibility of changes (2daa4415)
Project Structure
- Removed ProtoBuf from the main repository and moved it to a separate repository (351a4a46)
- Added new components to the README (d7b7d6d1)
- Updated project description for clarity (b7e0b1c0)
Testing
- Added new unit tests to improve code coverage (709bfc10, 14bb328b)