Releases: pmmp/RakLib
Releases · pmmp/RakLib
0.12.3
0.12.2
0.12.1
Changes since 0.12.0
- Fixed an unnecessary wait() in
ServerHandler
- Address-already-in-use message is now consistent on all platforms.
- Fixed an incorrect doc comment in
Session
. - Use global function and constant imports to enhance runtime performance (this does have a significant effect!).
0.12.0
Changes since 0.11.0
General
php-64bit
is now required in composer.json.- Now using PSR-4 autoloading standard instead of classmap.
- IPv6 sockets are now supported,
php-ipv6
now mandatory in composer.json. - Now can integrate with
pocketmine/snooze
in order to have a parent thread signalled when a packet is pushed into the buffer.
Protocol
- Added missing encode/decode for
NewIncomingConnection
andConnectionRequest
packets.
Sessions
- Logs will no longer get spammed when a client terminates the connection improperly (for example crashing).
- Fixed latency incurred by sleeping before processing received packets for no reason.
- Ordering and sequencing channels are now supported for receive.
- Fixed lag and connection instability on poor connections when packets arrive in the wrong order (RakLib was forcing clients to resend even if the packet turned up correctly but in the wrong order).
0.11.0
Changes since 0.10.0
General
pocketmine/binaryutils
is now used for binary I/O instead of inbuilt classes.raklib\Binary
has been removed.- Connecting clients with incompatible protocol versions will now be disconnected correctly.
RakLibServer
now accepts a protocol version override in the constructor. RakLibServer
now accepts a maximum MTU size constructor parameter.RakLibServer
autostart constructor parameter has been removed.- Address handling has been cleaned up in preparation for IPv6 support (adds an
InternetAddress
class inraklib\utils
namespace). - Exceptions on bad packets will now only spam the logger in debug mode.
EncapsulatedPacket
- Separated thread-copy encoding and RakNet protocol encoding. This is now both faster and easier to read.
- The
internal
parameters have been removed fromfromBinary()
andtoBinary()
. fromInternalBinary()
andtoInternalBinary()
functions have been added.
- The
OpenConnectionRequest1
- Fixed bug in encode method supplying incorrect arguments to
str_pad()
.
ServerInstance
interface
- Typehints have been applied to PHP 7.2 standards.
UDPServerSocket
- Constructor now requires
InternetAddress
instead ofThreadedLogger, string, int
. - Exceptions will now be thrown on failure to open sockets, instead of using
die()
.