Releases: Henauxg/bevy_quinnet
Releases · Henauxg/bevy_quinnet
v0.13.0
Version 0.13.0 (2024-12-02)
- Renamed client
Connection
toClientSideConnection
and serverClientConnection
toServerSideConnection
- Added
get_connection
andget_connection_mut
onEndpoint
to retrieve aServerSideConnection
- Added
connection_stats
toServerSideConnection
- Renamed
connection_stats
onEndpoint
toget_connection_stats
- Added
received_bytes_count
,clear_received_bytes_count
,sent_bytes_count
andclear_sent_bytes_count
to bothClientSideConnection
andServerSideConnection
- Changed
try_send_payload
,try_send_payload_on
,send_payload_on
,send_payload
,send_message
,send_message_on
,try_send_message
,try_send_message_on
onClientSideConnection
to take&mut self
- Changed
..._send_message_...
,..._send_group_message_...
,..._broadcast_...
methods onEndpoint
to take&mut self
v0.12.0
Version 0.12.0 (2024-12-01)
- Updated
bevy
to 0.15 - (Moved the
bevy_replicon_quinnet
crate to its own repository: https://github.com/Henauxg/bevy_replicon_quinnet)
v0.11.0
Version 0.11.0 (2024-11-30)
- Updated
rustls
to 0.23 andquinn
to 0.11 (thanks to Cyannide, PR #28) - Changed doc & examples to use IPv6 by default (thanks to MyZeD, PR #29)
- Changed some errors logs to be warnnings
- Fixed: channels send tasks won't try to flush anymore if we know that the peer connection is closed/lost: less warnings logs emitted.
v0.10.0
v0.9.0
v0.8.0
Version 0.8.0 (2024-05-12)
- Added a new crate
bevy_replicon_quinnet
with tests and examples, providing an integration of bevy_quinnet as a replicon back-end. - Added a
shared-client-id
cargo feature: server sends the client id to the client, client wait for it before being “connected” - Added #![warn(missing_docs)]
- Channels:
- Changed
ChannelId
to be au8
- Some channels can be preconfigured to be opened on a client or server connection by using
ChannelsConfiguration
- Channels payloads now contain the
channel_id
- When receiving a message, the message's
channel_id
is now available - You can now have only up to 256 channels opened simultaneously
- You can now have more than 1
Unreliable
orUnorderedReliable
channel
- Changed
- Client:
- Renamed
Client
toQuinnetClient
- In
QuinnetClient::Connection
- Changed
disconnect
function to bepub
(was previously only accessible throughClient::close_connection
) - Added
reconnect
function - Added a new bevy event
ConnectionFailedEvent
raised when a connection fails- Added a
QuinnetConnectionError
type
- Added a
- Renamed
ConnectionId
toConnectionLocalId
- State:
- Removed
is_connected
- Renamed internal
ConnectionState
toInternalConnectionState
- Added a new
ConnectionState
- Added
state
function
- Removed
- Changed
- Changed
update_sync_client
system to bepub
- Added
client_connecting
,client_connected
,client_just_connected
andclient_just_disconnected
ergonomic system conditions
- Renamed
- Server:
- Renamed
Server
toQuinnetServer
- Added
Debug
,Copy
,Clone
traits to the server's bevy events - Changed
update_sync_server
system to bepub
- Added
server_listening
,server_just_opened
andserver_just_closed
ergonomic system conditions - Removed unnecessary
Clone
requirement from broadcast methods
- Renamed
- Tests:
- Updated to use the new channel API
- Added a reconnection test
- Moved
QuinnetError
toshared::error
v0.7.0
Version 0.7.0 (2024-02-18)
- Update plugins, tests & examples to use Bevy 0.13
- Update Tokio to 1.36
- Update Bytes to 1.5
- Update ring to 0.17.7
- Update rcgen to 0.12.1
- Fix breakout example UI (by protofarer)
- Fix minor code documentation
v0.6.0
v0.5.0
v0.4.0
Version 0.4.0 (2023-03-07)
- Update Bevy to 0.10
- [client]: Add missing
try_send_message_on
andtry_send_payload_on
inconnection
- Internal improvements to channels and server's
send_group_message
AsyncRuntime
is now pub- [client & server] In order to have more control over plugin initialization and only do the strict necessary, which is registering systems and events in the Bevy schedule,
.add_plugin(QuinnetClient/ServerPlugin { initialize_later: true })
can now be used, which will not create the Client/ServerResource
immediately.- A command such as
commands.init_resource::<Client/Server>();
can be used later on when needed. - Client & server plugins systems are scheduled to only run if their respective resource exists.
- Their respective
Resource
can be removed through a command at runtime.
- A command such as
- [client]: Fix IPv6 handling.
- Remove
ConnectionConfiguration::new
- Add
ConnectionConfiguration::from_strings
,ConnectionConfiguration::from_ips
andConnectionConfiguration::from_addrs
- Remove
- [server]: Fix IPv6 handling.
- Rename
ServerConfigurationData
toServerConfiguration
. - Remove
ServerConfiguration::new
- Add
ServerConfiguration::from_string
,ServerConfiguration::from_ip
andServerConfiguration::from_addr
- Add
server_hostname
toCertificateRetrievalMode::GenerateSelfSigned
andCertificateRetrievalMode::LoadFromFileOrGenerateSelfSigned
- Rename