]> git.cworth.org Git - ttt/blobdiff - TODO
Add a dependency of ttt-client.c on ttt-lex.h to fix the build.
[ttt] / TODO
diff --git a/TODO b/TODO
index 25a1dd302e66e153cda597a5d06ea4c18c02cbfe..f9cc2260c2e0263d58ca761311a162437f00bf90 100644 (file)
--- 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.
 
 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
   /----- 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.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.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
     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 <username>
 ✓   2.1.2. NOTICE QUIT <username>
     2.1. Global notices
 ✓   2.1.1. NOTICE USER <username>
 ✓   2.1.2. NOTICE QUIT <username>
-    2.1.3. Game Invitation
+   2.1.3. Game Invitation
 ✓   2.1.3.1. NOTICE INVITE <username1> <username2>
 ✓   2.1.3.2. NOTICE ACCEPT <username2> <username1>
 ✓   2.1.3.1. NOTICE INVITE <username1> <username2>
 ✓   2.1.3.2. NOTICE ACCEPT <username2> <username1>
-    2.1.3.3. NOTICE RETRACT <username1> <username2>
-    2.1.3.4. NOTICE DECLINE <username2> <username1>
+   2.1.3.3. NOTICE RETRACT <username1> <username2>
+   2.1.3.4. NOTICE DECLINE <username2> <username1>
     2.1.4. NOTICE NEWGAME <game> <username> <username>
     2.1.5. NOTICE DISPOSE <game>
 ✓   2.1.6. NOTICE MESSAGE <username> <text>
     2.1.4. NOTICE NEWGAME <game> <username> <username>
     2.1.5. NOTICE DISPOSE <game>
 ✓   2.1.6. NOTICE MESSAGE <username> <text>
@@ -40,7 +43,7 @@ S C
     2.2.2. Move notices
     2.2.2.1. NOTICE MOVE <game> <username> <number>
     3. Errors
     2.2.2. Move notices
     2.2.2.1. NOTICE MOVE <game> <username> <number>
     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.1.1. ERROR NO_NAME_SET
 ✓   3.1.2. ERROR INVALID_NAME
     3.2. Command format errors
@@ -50,13 +53,22 @@ S C
     3.2.4. ERROR NOT_GRID
     3.3. Global command errors.
     3.4. Game management errors.
     3.2.4. ERROR NOT_GRID
     3.3. Global command errors.
     3.4. Game management errors.
-    3.4.1. ERROR NO_INVITE
+   3.4.1. ERROR NO_INVITE
     3.4.2. ERROR NO_GAME
     3.4.2. ERROR NO_GAME
-    3.5. User information errors
+   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_PLAYING
     3.6.2. Moving errors 
     3.6.2.1. ERROR NOT_YOUR_TURN
 ✓   3.5.1. ERROR NO_USER
     3.6. In-game errors
     3.6.1. Global game errors
     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.