Skip to content

v0.3.0-rc.1

Pre-release
Pre-release
Compare
Choose a tag to compare
@john-bv john-bv released this 28 Jan 05:40
· 136 commits to master since this release

Change Log

  • Complete rewrite, cleaner more understandable codebase

  • Fragment implementation no-longer requires the abstraction of FragmentPart or FrameStore.

  • All raknet specific protocol is abstracted away inside the internal module keeping only packet and structures visible to any module.

    • All RakNet specific handshaking has been moved into RakHandler.

    • All RakNet specific protocol such as frames, and fragmentation has been moved to RakHandler and is abstracted into Connection.

  • rakrs will now properly handle reliability internally, this is abstracted on-to the connection with Connection::send_packet(packet, reliability).

  • rakrs now properly handles frame ordering and sequencing.

    • Functionality has been added internally to support multiple order channels and reliable channels to allow easier support of RakNet plugins.
  • rakrs will now reject old or duplicated packets automatically.

  • All minecraft specific raknet implementation is now gated behind the mcpe feature. You can enable it by using this flag in your Cargo.toml

  • Implementation has been provided to allow usage of either the tokio or async-std async runtimes; these are gated behind feature flags.

    Notice: The functionality for async-std has not been implemented in this release.

  • NACK will now automatically be sent to the client if the server has not recieved acknowledgements for a batch of payloads previously sent.

Full Changelog: v2.2.0...v0.3.0-rc.1