SuperSocket.ProtoBuf
2.0.0-beta.1
dotnet add package SuperSocket.ProtoBuf --version 2.0.0-beta.1
NuGet\Install-Package SuperSocket.ProtoBuf -Version 2.0.0-beta.1
<PackageReference Include="SuperSocket.ProtoBuf" Version="2.0.0-beta.1" />
<PackageVersion Include="SuperSocket.ProtoBuf" Version="2.0.0-beta.1" />
<PackageReference Include="SuperSocket.ProtoBuf" />
paket add SuperSocket.ProtoBuf --version 2.0.0-beta.1
#r "nuget: SuperSocket.ProtoBuf, 2.0.0-beta.1"
#:package SuperSocket.ProtoBuf@2.0.0-beta.1
#addin nuget:?package=SuperSocket.ProtoBuf&version=2.0.0-beta.1&prerelease
#tool nuget:?package=SuperSocket.ProtoBuf&version=2.0.0-beta.1&prerelease
SuperSocket.ProtoBuf 2.0.0-beta.1 Release Notes
We're excited to announce the first beta release of SuperSocket.ProtoBuf 2.0.0! This library provides efficient Protocol Buffers integration for SuperSocket, enabling high-performance binary serialization and deserialization for network messages.
Features
- Protocol Buffers Integration: Seamless integration with Google Protocol Buffers for efficient binary serialization
- Type Registry System: Centralized type registry to manage message types and their unique identifiers
- Pipeline Filters: Custom pipeline filters to process incoming protobuf messages
- Package Encoders/Decoders: Built-in support for encoding and decoding protobuf messages
- Cross-Platform Support: Compatible with multiple platforms including:
- .NET 6.0, 7.0, 8.0, and 9.0
- Mobile platforms (iOS, Android, macOS, tvOS)
Core Components
ProtobufTypeRegistry
: Central registry for mapping between message types and their identifiersProtobufPipelineFilter<T>
: Processes incoming data streams and extracts protocol buffer messagesProtobufPackageDecoder<T>
: Decodes binary data into strongly-typed protocol buffer messagesProtobufPackageEncoder<T>
: Encodes protocol buffer messages for network transmission- Concrete implementations for direct
IMessage
handling
Getting Started
Installation
dotnet add package SuperSocket.ProtoBuf --version 2.0.0-beta.1
Check the README for detailed usage examples and API documentation.
Protocol Format
Messages are encoded with an 8-byte header followed by the protobuf message payload:
- First 4 bytes: Message size in big-endian format
- Next 4 bytes: Message type ID in big-endian format
- Remaining bytes: The serialized protobuf message
Notes for Beta Users
As this is a beta release, we welcome your feedback and contributions:
- Please report any issues on our GitHub repository
- API signatures may change between beta and final release
- Performance optimizations are ongoing
License
SuperSocket.ProtoBuf is licensed under the Apache License 2.0.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 is compatible. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 is compatible. net8.0-android was computed. net8.0-android34.0 is compatible. net8.0-browser was computed. net8.0-ios was computed. net8.0-ios18.0 is compatible. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-macos15.0 is compatible. net8.0-tvos was computed. net8.0-tvos18.0 is compatible. net8.0-windows was computed. net9.0 is compatible. net9.0-android was computed. net9.0-android35.0 is compatible. net9.0-browser was computed. net9.0-ios was computed. net9.0-ios18.0 is compatible. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-macos15.0 is compatible. net9.0-tvos was computed. net9.0-tvos18.0 is compatible. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net6.0
- Google.Protobuf (>= 3.25.1)
- SuperSocket.ProtoBase (>= 2.0.0)
-
net7.0
- Google.Protobuf (>= 3.25.1)
- SuperSocket.ProtoBase (>= 2.0.0)
-
net8.0
- Google.Protobuf (>= 3.25.1)
- SuperSocket.ProtoBase (>= 2.0.0)
-
net8.0-android34.0
- Google.Protobuf (>= 3.25.1)
- SuperSocket.ProtoBase (>= 2.0.0)
-
net8.0-ios18.0
- Google.Protobuf (>= 3.25.1)
- SuperSocket.ProtoBase (>= 2.0.0)
-
net8.0-macos15.0
- Google.Protobuf (>= 3.25.1)
- SuperSocket.ProtoBase (>= 2.0.0)
-
net8.0-tvos18.0
- Google.Protobuf (>= 3.25.1)
- SuperSocket.ProtoBase (>= 2.0.0)
-
net9.0
- Google.Protobuf (>= 3.25.1)
- SuperSocket.ProtoBase (>= 2.0.0)
-
net9.0-android35.0
- Google.Protobuf (>= 3.25.1)
- SuperSocket.ProtoBase (>= 2.0.0)
-
net9.0-ios18.0
- Google.Protobuf (>= 3.25.1)
- SuperSocket.ProtoBase (>= 2.0.0)
-
net9.0-macos15.0
- Google.Protobuf (>= 3.25.1)
- SuperSocket.ProtoBase (>= 2.0.0)
-
net9.0-tvos18.0
- Google.Protobuf (>= 3.25.1)
- SuperSocket.ProtoBase (>= 2.0.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last Updated |
---|---|---|
2.0.0-beta.1 | 100 | 5/4/2025 |