mirror of
https://github.com/DerTyp7/defrain-shooter-unity.git
synced 2025-11-04 23:28:58 +01:00
62 lines
2.9 KiB
Plaintext
62 lines
2.9 KiB
Plaintext
V1.8 [2021-06-02]
|
|
- fix: Do not set timeouts on listener (fixes https://github.com/vis2k/Mirror/issues/2695)
|
|
- fix: #104 - ReadSafely now catches ObjectDisposedException too
|
|
|
|
V1.7 [2021-02-20]
|
|
- ReceiveTimeout: disabled by default for cases where people use Telepathy by
|
|
itself without pings etc.
|
|
|
|
V1.6 [2021-02-10]
|
|
- configurable ReceiveTimeout to avoid TCPs high default timeout
|
|
- Server/Client receive queue limit now disconnects instead of showing a
|
|
warning. this is necessary for load balancing to avoid situations where one
|
|
spamming connection might fill the queue and slow down everyone else.
|
|
|
|
V1.5 [2021-02-05]
|
|
- fix: client data races & flaky tests fixed by creating a new client state
|
|
object every time we connect. fixes data race where an old dieing thread
|
|
might still try to modify the current state
|
|
- fix: Client.ReceiveThreadFunction catches and ignores ObjectDisposedException
|
|
which can happen if Disconnect() closes and disposes the client, while the
|
|
ReceiveThread just starts up and still uses the client.
|
|
- Server/Client Tick() optional enabled check for Mirror scene changing
|
|
|
|
V1.4 [2021-02-03]
|
|
- Server/Client.Tick: limit parameter added to process up to 'limit' messages.
|
|
makes Mirror & DOTSNET transports easier to implement
|
|
- stability: Server/Client send queue limit disconnects instead of showing a
|
|
warning. allows for load balancing. better to kick one connection and keep
|
|
the server running than slowing everything down for everyone.
|
|
|
|
V1.3 [2021-02-02]
|
|
- perf: ReceivePipe: byte[] pool for allocation free receives (╯°□°)╯︵ ┻━┻
|
|
- fix: header buffer, payload buffer data races because they were made non
|
|
static earlier. server threads would all access the same ones.
|
|
=> all threaded code was moved into a static ThreadFunctions class to make it
|
|
100% obvious that there should be no shared state in the future
|
|
|
|
V1.2 [2021-02-02]
|
|
- Client/Server Tick & OnConnected/OnData/OnDisconnected events instead of
|
|
having the outside process messages via GetNextMessage. That's easier for
|
|
Mirror/DOTSNET and allows for allocation free data message processing later.
|
|
- MagnificientSend/RecvPipe to shield Telepathy from all the complexity
|
|
- perf: SendPipe: byte[] pool for allocation free sends (╯°□°)╯︵ ┻━┻
|
|
|
|
V1.1 [2021-02-01]
|
|
- stability: added more tests
|
|
- breaking: Server/Client.Send: ArraySegment parameter and copy internally so
|
|
that Transports don't need to worry about it
|
|
- perf: Buffer.BlockCopy instead of Array.Copy
|
|
- perf: SendMessageBlocking puts message header directly into payload now
|
|
- perf: receiveQueues use SafeQueue instead of ConcurrentQueue to avoid
|
|
allocations
|
|
- Common: removed static state
|
|
- perf: SafeQueue.TryDequeueAll: avoid queue.ToArray() allocations. copy into a
|
|
list instead.
|
|
- Logger.Log/LogWarning/LogError renamed to Log.Info/Warning/Error
|
|
- MaxMessageSize is now specified in constructor to prepare for pooling
|
|
- flaky tests are ignored for now
|
|
- smaller improvements
|
|
|
|
V1.0
|
|
- first stable release |