ChillerDragon
559f63d033
Generate messages with array fields
...
This commit was fully automated by
./scripts/generate_messages.py
2023-04-08 14:25:58 +02:00
ChillerDragon
822074ea47
Add support for generating array chunk fields
2023-04-08 14:24:44 +02:00
ChillerDragon
7e7f419597
More skin change tests
2023-04-07 18:14:41 +02:00
ChillerDragon
e24b3959ce
Start working on skin change test
2023-04-07 16:57:04 +02:00
ChillerDragon
9615392156
Fix parsing messages with ids higher than 31
...
See my thought process here
https://github.com/ChillerDragon/teeworlds-protocol/pull/15
2023-04-07 16:10:56 +02:00
ChillerDragon
bd4353538a
Revert optionals cc generation test
2023-04-07 16:09:27 +02:00
ChillerDragon
df3448d001
Add failing call vote packet test
2023-04-07 14:31:04 +02:00
ChillerDragon
7dfaeda45f
Apply sanitize string cc to all messages that need it
2023-04-07 14:27:25 +02:00
ChillerDragon
3df2a7fb12
Make the errors of run_tests.sh more intense
...
I did run ./scripts/run_tests.sh and thought they passed lol
pylint is not using colored output so in the green wall
of tests its easy to over see.
This should not happen again after this change.
2023-04-07 13:08:56 +02:00
ChillerDragon
5fc964e4ed
Fix pylint error
2023-04-07 13:08:44 +02:00
ChillerDragon
2346e271ac
Note that this will never keep track of vital msgs for you
2023-04-07 12:54:18 +02:00
ChillerDragon
a9ba5bd703
Sanitize string unpack by default the same way tw does it
...
This sadly probably comes with some hefty performance implications
2023-04-07 12:46:50 +02:00
ChillerDragon
1a864d903c
Add test for client side token packing
2023-04-07 10:45:35 +02:00
ChillerDragon
640dca32ad
Advertise my favorite command that ensured pipelines passing so far
2023-04-07 10:38:04 +02:00
ChillerDragon
61610e46d8
Release 0.3.3
2023-04-07 10:32:45 +02:00
ChillerDragon
1300c45a0f
Finally found a working recurse
2023-04-07 10:22:47 +02:00
ChillerDragon
fc3da234c1
Manually list all folders (not so nice imo)
2023-04-07 10:15:30 +02:00
ChillerDragon
8559dcbfeb
Also revert readme back to setup.cfg
2023-04-07 09:40:32 +02:00
ChillerDragon
dd304aad20
Ensure installing as package works in CI
2023-04-07 09:39:38 +02:00
ChillerDragon
fa96ed570d
Release 0.3.2
2023-04-07 09:28:36 +02:00
ChillerDragon
a11a3cbb42
Switch back to setup.cfg in release script
2023-04-07 09:27:49 +02:00
ChillerDragon
8d0725d527
Back to find: (worked locally lets see)
2023-04-07 09:25:14 +02:00
ChillerDragon
434e6a9457
Go back to old build setup to fix import error
2023-04-07 09:06:13 +02:00
ChillerDragon
2052ff6da0
Duplicate package test to other script for testing
2023-04-07 08:58:37 +02:00
ChillerDragon
d8790e94f4
Could also run python -m venv venv in CI
2023-04-06 19:43:29 +02:00
ChillerDragon
6ca69aed84
Add -x to shellcheck in CI
2023-04-06 19:15:10 +02:00
ChillerDragon
674e40c286
Ensure release passes all tests
2023-04-06 19:12:17 +02:00
ChillerDragon
2cbc3671bd
Stricter release testing in venv
...
https://gitlab.com/teeworlds-network/twnet_parser/-/issues/3
2023-04-06 19:07:41 +02:00
ChillerDragon
454dfcdde2
Only generate changelog for latest release
2023-04-06 18:23:25 +02:00
ChillerDragon
0ad4f64a5f
Release 0.3.1
2023-04-06 18:15:52 +02:00
ChillerDragon
ccbc15d230
Move setup.cfg into pyproject.toml
2023-04-06 18:15:08 +02:00
ChillerDragon
78ea668487
Build twice to avoid having dirty working tree
...
Makes debugging build issues much more fun
2023-04-06 17:56:25 +02:00
ChillerDragon
146f2214e0
Weird assumed progress but ctrl,game+sys sounds solid
...
Just details missing like weird fields and snap items
2023-04-06 17:45:05 +02:00
ChillerDragon
639edda489
Add support for control messages
2023-04-06 17:44:17 +02:00
ChillerDragon
7ba6e18ced
Keep messages a union of ctl and net ( closed #1 )
...
The messages array in the TwPacket class
is now planned to stay a Union of CtrlMessage and NetMessage.
Which both are empty duck typed classes. That abstract away
the 5 specific CtrlMessage classes and the many
game and system message classes.
```python
class CtrlMessage(Protocol):
message_name: str
def unpack(self, data: bytes) -> bool:
...
def pack(self) -> bytes:
...
class NetMessage(Protocol):
message_name: str
system_message: bool
header: ChunkHeader
def unpack(self, data: bytes) -> bool:
...
def pack(self) -> bytes:
...
class TwPacket(PrettyPrint):
def __init__(self) -> None:
self.messages: list[Union[CtrlMessage, NetMessage]] = []
```
2023-04-06 15:47:08 +02:00
ChillerDragon
37730deaa2
Start drafting control message layout
2023-04-02 21:01:44 +02:00
ChillerDragon
a75c95d2ad
Run ruff --fix .
2023-04-02 20:06:31 +02:00
ChillerDragon
760d8bce1f
Fix comment too long
2023-04-02 20:03:50 +02:00
ChillerDragon
044e17b6e6
Do not import unused Unpacker
2023-04-02 20:02:27 +02:00
ChillerDragon
d6d8abc091
Do not instantiate unused unpacker
2023-04-02 20:00:42 +02:00
ChillerDragon
df3fcb9b17
Fix optional type assuming int
2023-04-02 19:56:29 +02:00
ChillerDragon
bffa9f70cb
Warn about open todos on major release
...
During this early development I love hacking down
half finished unpolished code with open todos
and then mark them with a TODO comment
Then at some later point I might forget how everything
is held together by duck tape and do a 1.0.0 release
This check in the release script should avoid this mistake
and ensure that the 1.x.x and all other major releases
are what they claim to be: a finished, polished and working version
2023-04-02 19:37:27 +02:00
ChillerDragon
03cb8a5eb7
Move json and shell to lint stage
2023-04-02 11:53:30 +02:00
ChillerDragon
e20fd4c019
Use vanilla server defaults for tunes
2023-04-02 11:51:21 +02:00
ChillerDragon
a4a71d4069
Document progress
2023-04-02 10:41:46 +02:00
ChillerDragon
029cebcb25
Fully support tune params
2023-04-02 10:39:52 +02:00
ChillerDragon
da6d0cfc40
Prepare test for tune params
2023-04-02 09:42:20 +02:00
ChillerDragon
0013b9b8c0
Add shebang to gen script
2023-04-02 09:40:54 +02:00
ChillerDragon
d6727ddcbe
Test rcon_cmd and sys input fields
2023-04-02 09:22:20 +02:00
ChillerDragon
b4b1dc8ff3
Release 0.3.0
2023-03-31 10:29:44 +02:00