X-Git-Url: https://git.cworth.org/git?p=ttt;a=blobdiff_plain;f=TODO;h=f9cc2260c2e0263d58ca761311a162437f00bf90;hp=0aaf8818a8d67e1c00d8152356716aee0b5527c5;hb=54c540ee6df71b5e39f4ff63d90b55e595a9209f;hpb=4f0f5e3d16e6ec375844c711d4f88d6fec79ae45 diff --git a/TODO b/TODO index 0aaf881..f9cc226 100644 --- a/TODO +++ b/TODO @@ -1,6 +1,9 @@ Use the first letter of your name to indicate you are in the middle of working on something. +Protocol pieces +--------------- + /----- Server, implemented in ttt-server / /---- Client, implemented in ttt S C @@ -14,10 +17,10 @@ S C ✓ 1.2.5. QUIT ✓ 1.2.6. VERSION 1.3. Game management commands - 1.3.1. INVITE +✓ 1.3.1. INVITE 1.3.2. ACCEPT - 1.3.3. RETRACT - 1.3.4. DECLINE +✓ 1.3.3. RETRACT +✓ 1.3.4. DECLINE 1.4. In-game commands 1.4.1. SHOW 1.4.2. PART @@ -26,11 +29,11 @@ S C 2.1. Global notices ✓ 2.1.1. NOTICE USER ✓ 2.1.2. NOTICE QUIT - 2.1.3. Game Invitation - 2.1.3.1. NOTICE INVITE - 2.1.3.2. NOTICE ACCEPT - 2.1.3.3. NOTICE RETRACT - 2.1.3.4. NOTICE DECLINE +✓ 2.1.3. Game Invitation +✓ 2.1.3.1. NOTICE INVITE +✓ 2.1.3.2. NOTICE ACCEPT +✓ 2.1.3.3. NOTICE RETRACT +✓ 2.1.3.4. NOTICE DECLINE 2.1.4. NOTICE NEWGAME 2.1.5. NOTICE DISPOSE ✓ 2.1.6. NOTICE MESSAGE @@ -40,23 +43,32 @@ S C 2.2.2. Move notices 2.2.2.1. NOTICE MOVE 3. Errors - 3.1. Connection setup errors +✓ 3.1. Connection setup errors ✓ 3.1.1. ERROR NO_NAME_SET ✓ 3.1.2. ERROR INVALID_NAME 3.2. Command format errors - 3.2.1. ERROR COMMAND +✓ 3.2.1. ERROR COMMAND ✓ 3.2.2. ERROR SYNTAX 3.2.3. ERROR NOT_NUMBER 3.2.4. ERROR NOT_GRID 3.3. Global command errors. 3.4. Game management errors. - 3.4.1. ERROR NO_GAME - 3.5. User information errors - 3.5.1. ERROR NO_USER +✓ 3.4.1. ERROR NO_INVITE + 3.4.2. ERROR NO_GAME +✓ 3.5. User information errors +✓ 3.5.1. ERROR NO_USER 3.6. In-game errors 3.6.1. Global game errors - 3.6.1.1. ERROR NOT_IN_GAME - 3.6.1.2. ERROR NOT_PLAYING + 3.6.1.1. ERROR NOT_PLAYING 3.6.2. Moving errors 3.6.2.1. ERROR NOT_YOUR_TURN + 3.6.2.2. ERROR NOT_VALID_MOVE + +Other bits +---------- +Server log messages should include pid date and time. And server +should log the fact when it gets terminated by a signal. + +Server should wait and retry a couple of times if its port is not +available, rather than just giving up.