- Compression is no longer enabled always but can now be enabled per Stream.
If a Stream is Compression enabled it will compress and decompress all msg (except for `raw` access) before handling them internally.
You need to handle compression yourself for `raw` fn.
- added a new feature to the network crate to enable or disable the compression
- switched to `lz-fear` instead of `lz4-compression`
- use `bitflags` to represent the `Promises` struct
- When Participant A was closed by remote side. Then a `disconnect` on `A`
shall return Ok() (instead of ParticipantDisconected) IF:
A was already flushed and no data needs to be sended any more.
so a `disconnect` doesnt differ if the other side initiated the disconnect before or not. it tries to clean things up and returns Ok(()) if both sides agree
- It was possible for a end_receiver to be triggered in the moment while a frame was started by not finished.
This removed bytes from the stream with them getting lost. this almost ever was followed by a RAW frame as the TCP stream was now invalid.
The TCP stream was then detected by participant or caused one or multiple failures
- introduces some simplifications, removed a macro, reuse code
- replace RwLock by Mutex if it's only accessed for insert/delete
- use RwLock<HashMap<Mutex>> pattern otherwise in order to allow concurrent `.read()`
- fixed a deadlock O.o
Fix Cave NPCs only spawning very deep inside caves
Increase twig density
Adjust armour values and ingredients for starter sword
fix healing rod using the wrong model
Hung up the lianas again
first bunch of comments addressed
change order or scatter, paths and caves being applied in worldgen to avoid floating scatter objects
campfire adjustments, reduced grass density due to FPS issues
readded item descriptions to the crafting window, item desc for craftable armour
address comments
happy clippy, happy life
clippy
clippy
more clippy
fmt
revert cargo.toml formatting
remove "allow unreachable pattern"
fmt