v0.3.0 - Complete rewrite of internals
Change Logs
netrex_events
has been dropped.rakrs::start
has been dropped, you should userakrs::Listener::bind()
in conjunction withrakrs::Listener::start()
instead.- Every packet sent to the client is now exposed with
Connection::recv()
with the exception of the handshake sequence. This will allow you to write your own handlers for certain packets. However keep in mind, the protocol specific packets such as Ack, Nack, and disconnects are not exposed. - The
internal
module has been completely nuked and replaced withSendQueue
andRecvQueue
's.- Frame fragmentation is now more elaborate and elegant.
- ACK, and NACK are now handled within their traits
Ackable
that can be appended either aSendQueue
orRecvQueue
respectively. - Added
FragmentQueue
which is a queue with the ability to join split packets together with ease. - Added
RecoveryQueue
which is a smart queue that will remove a index if and only if a newer packet is added that shifts the queue or if the retry attempts are greator than the value set within the queue, (which is 3 by default) - Added
Client
to allow users to connect to a RakNet server as a client. - Added the more elegant way to parse packets with
binary_util
v3 instead of the mess we had before. - Added cross-compatibility with
async-std
andtokio
with both guarded by their own crate feature "async_std" and "async_tokio" - Added the ability to opt into minecraft specific raknet changes, like the Motd change with the crate feature "mcpe"
Git change logs
- feat: Async-std by @john-bv in #37
- feat: Client sockets by @john-bv in #42
- client/mod.rs: Remove unecessary &mut receivers by @AndreasHGK in #45
- update(binary_util): From 0.2.2 -> 0.3.2 by @john-bv in #47
- v3 Stable Release by @john-bv in #35
New Contributors
- @AndreasHGK made their first contribution in #45
Full Changelog: v0.2.2...v0.3.0