ChangeLog 3.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. ENet 1.3.0 (June 5, 2010):
  2. * enet_host_create() now requires the channel limit to be specified as
  3. a parameter
  4. * enet_host_connect() now accepts a data parameter which is supplied
  5. to the receiving receiving host in the event data field for a connect event
  6. * added an adaptive order-2 PPM range coder as a built-in compressor option
  7. which can be set with enet_host_compress_with_range_coder()
  8. * added support for packet compression configurable with a callback
  9. * improved session number handling to not rely on the packet checksum
  10. field, saving 4 bytes per packet unless the checksum option is used
  11. * removed the dependence on the rand callback for session number handling
  12. Caveats: This version is not protocol compatible with the 1.2 series or
  13. earlier. The enet_host_connect and enet_host_create API functions require
  14. supplying additional parameters.
  15. ENet 1.2.2 (June 5, 2010):
  16. * checksum functionality is now enabled by setting a checksum callback
  17. inside ENetHost instead of being a configure script option
  18. * added totalSentData, totalSentPackets, totalReceivedData, and
  19. totalReceivedPackets counters inside ENetHost for getting usage
  20. statistics
  21. * added enet_host_channel_limit() for limiting the maximum number of
  22. channels allowed by connected peers
  23. * now uses dispatch queues for event dispatch rather than potentially
  24. unscalable array walking
  25. * added no_memory callback that is called when a malloc attempt fails,
  26. such that if no_memory returns rather than aborts (the default behavior),
  27. then the error is propagated to the return value of the API calls
  28. * now uses packed attribute for protocol structures on platforms with
  29. strange alignment rules
  30. * improved autoconf build system contributed by Nathan Brink allowing
  31. for easier building as a shared library
  32. Caveats: If you were using the compile-time option that enabled checksums,
  33. make sure to set the checksum callback inside ENetHost to enet_crc32 to
  34. regain the old behavior. The ENetCallbacks structure has added new fields,
  35. so make sure to clear the structure to zero before use if
  36. using enet_initialize_with_callbacks().
  37. ENet 1.2.1 (November 12, 2009):
  38. * fixed bug that could cause disconnect events to be dropped
  39. * added thin wrapper around select() for portable usage
  40. * added ENET_SOCKOPT_REUSEADDR socket option
  41. * factored enet_socket_bind()/enet_socket_listen() out of enet_socket_create()
  42. * added contributed Code::Blocks build file
  43. ENet 1.2 (February 12, 2008):
  44. * fixed bug in VERIFY_CONNECT acknowledgement that could cause connect
  45. attempts to occasionally timeout
  46. * fixed acknowledgements to check both the outgoing and sent queues
  47. when removing acknowledged packets
  48. * fixed accidental bit rot in the MSVC project file
  49. * revised sequence number overflow handling to address some possible
  50. disconnect bugs
  51. * added enet_host_check_events() for getting only local queued events
  52. * factored out socket option setting into enet_socket_set_option() so
  53. that socket options are now set separately from enet_socket_create()
  54. Caveats: While this release is superficially protocol compatible with 1.1,
  55. differences in the sequence number overflow handling can potentially cause
  56. random disconnects.
  57. ENet 1.1 (June 6, 2007):
  58. * optional CRC32 just in case someone needs a stronger checksum than UDP
  59. provides (--enable-crc32 configure option)
  60. * the size of packet headers are half the size they used to be (so less
  61. overhead when sending small packets)
  62. * enet_peer_disconnect_later() that waits till all queued outgoing
  63. packets get sent before issuing an actual disconnect
  64. * freeCallback field in individual packets for notification of when a
  65. packet is about to be freed
  66. * ENET_PACKET_FLAG_NO_ALLOCATE for supplying pre-allocated data to a
  67. packet (can be used in concert with freeCallback to support some custom
  68. allocation schemes that the normal memory allocation callbacks would
  69. normally not allow)
  70. * enet_address_get_host_ip() for printing address numbers
  71. * promoted the enet_socket_*() functions to be part of the API now
  72. * a few stability/crash fixes