Releases: joaoajmatos/ProtoIP
1.0.1 (Bugfixing)
Bug Fixing
This patch fixes some errors regarding the Packet class and the basic server logic. These bugs prevented users from implementing working programs using ProtoIP.
Changes:
- Fixes
GetDataAs<T>method from the packet class. - Fixes server logic that prevented the server from receiving data continuously from the ProtoStream.
- Added
IsConnectedmethod to the ProtoStream class to ensure the connection to the peer is open.
Packet class error
An error in the GetDataAs<T> method was preventing the data to be correctly converted to the desired data type.
Instead of reading only the size of the data, the method read all of the data in the packet payload (including padding). This made for incorrect conversions.
Server logic error
An error in the basic server logic was preventing the server from receiving data continuously through the ProtoStream. This was because the server was only calling the Receive method once (when a new user connected).
Now, the server will keep trying to receive data until the connection is closed by one of the peers.
ProtoIP official first release
ProtoIP - v. 1.0.0
I'm pleased to introduce to the public the first official stable version of ProtoIP.
Within a few days we've managed to implement all of the main features planned for the library, and it is now ready for widespread use amongst students.
The features include:
- ProtoPackets - Low level access to packets and protocol definitions.
- ProtoStreams - Transmit large chunks of data over the network while ensuring data integrity.
- Client-Server Definitions - High level interfaces for defining Client/Server logic and implementing Client-Server applications.
- ProtoCrypto - Simple cryptography interface for implementing secure network protocols.
Additional features planned to come in the upcoming patches:
- Peer-to-Peer Definitions - High level interfaces for implementing node logic for peer-to-peer based applications.
- Pub/Sub - Pub/Sub messaging pattern definitions.
For more information, please checkout the documentation.
Full Changelog: 0.9.2...1.0.0
Bug Fixing Patch
Fixes bugs in the ProtoStream class that prevented data to be transmitted between two ProtoStreams.
This bug affected the Client-Server interfaces since they rely on ProtoStreams to transmit data between each other.
All the bugs have been fixed and the interfaces are working as expected.
Client-Server definitions
In this release we fully introduce interfaces for implementing Client-Server applications.
You can now define your own Servers and Clients and implement their logic by overriding virtual functions.
These functions are triggered on special events, like when a user connects to the server, or when the client receives a response from the server.
You can learn more about Client-Server definitions in the official documentation page here.
First release
First ProtoIP release with basic features.
Implemented features:
- ProtoPackets
- ProtoStreams
- ProtoClients