[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[minion-cvs] Update work status; clarify testing; add refactoring pl...



Update of /home/minion/cvsroot/src/minion
In directory moria.seul.org:/tmp/cvs-serv9573

Modified Files:
	TODO 
Log Message:
Update work status; clarify testing; add refactoring plans

Index: TODO
===================================================================
RCS file: /home/minion/cvsroot/src/minion/TODO,v
retrieving revision 1.31
retrieving revision 1.32
diff -u -d -r1.31 -r1.32
--- TODO	22 Nov 2002 21:12:05 -0000	1.31
+++ TODO	2 Dec 2002 03:33:03 -0000	1.32
@@ -17,44 +17,58 @@
          need not be automated.]
 
 	. Server
+		o Fix bug: delivering self->self.
 		- More explicit overview of queues.
 		- Unit tests for various queues.
 		- Test code to start 3 or 4 servers on one machine and
                   try sending some messages through.
-	*- CLI client
-		- Send a message
-		- Linkage from command line to helper class
+	*. CLI client
+		o Send a message
+		o Linkage from command line to helper class
 		o Design directory layout
-		D Storage for serverinfo
+		o Storage for serverinfo
 			o Make serverinfo pickleable
 				o Make RSA pickleable
 			o Test
-		- Test CLI client
+		o Test 'address'.
+		o Check whether exit host supports delivery method
+		o Make address support 0xhex:string
+		- Unit tests for MixminionClient
+		*. Test CLI client
+		- Document it all
 	. Build
 		- Use sane arguments when testing with multiple python versions
 		- Marginal 'make install'
+		- Marginal 'make dist'
 	- Integration testing
 		- Better log messages at all points throughout system.
 		. Fake delivery module for MBOX-less testing of core
-			*- Test fake delivery module
+			*. Test fake delivery module
 		- Automated tests for several servers running on one machine.
 		- Tests for servers on several different machines.
 	. MBox module
 		o Implement
-		- Test
+		. Test
+		        o Unit tests
+			- Try it out
 	. SMTP-Via-Mixmaster module
 		o Implement
 		o Implement address validation so we don't get into trouble.
 		- Document
-		- Test
-	- Rename semantics for e2e suff:
-	        D Rename 'tag' -> 'decoding handle'.  
+		. Test
+		        o Unit tests
+			- Try it out
+	- Refactor.
+	        D Rename 'tag' -> 'decoding handle'.
 		o Make tag a separate field rather than a prefix of 'exitInfo'
 			o Implement.
 			o Tests for new members of subheader.
+		o Move decoding logic into ModuleManager from modules.
+		- Move exit types and addresses into Packet.py?
 		- Disable 'non-state-carrying' reply blocks.  Rename 'stateful'
 		  (non-state-carrying) and 'stateless' (state-carrying) to
 		  something less contradictory
+		- Triage XXXX, FFFF, ???? for 0.0.1
 	- Final license
 	- Documentation
 		- Contributor's guide
@@ -65,7 +79,6 @@
 	  	- SPEC comments from code
 		- Incorporate e2e mixminion design
 		- Rename stateful, stateless SURBs
-		
 	- Separate package for server code.
 
 Required for "1.0":
@@ -81,7 +94,7 @@
 	- Security
 		- Make createPrivateDirs gripe about group-writable parent
 		  dirs
-		- Make hashlog code use journaling if underlying dbs are 
+		- Make hashlog code use journaling if underlying dbs are
 		  unreliable.
 	- Server core
 		- Clean shutdown
@@ -92,16 +105,19 @@
 			- Use async or threading to cope with blocking MTAs
 			- Full config validation
 			- Full boilerplate
-		- Move boilerplate into outside files.  Add a generic 
+		- Move boilerplate into outside files.  Add a generic
 		  'Boilerplate' functionality.
 		- Tell ModuleManager about async code
 		- Support for forking delivery
 		- Real SMTP module
 			- Abuse prevention
 			- Support for setting 'Subject' and 'From' lines.
+			- Support multiple exit addresses.
 		- Incoming email gateway
 		- Refactor module manager to do decoding _before_ passing
 		  payloads to the individual module implementations.
+		- Some notion of 'client modules' would be a good idea.
+		- Put 'address' someplace more reasonable.
 	- End-to-end issues
 	        - K-of-N fragmentation and reassembly
 		- Cap output size to prevent zlib bombing
@@ -157,7 +173,7 @@
 		- "Somebody" should do a Windows port of the client code
 	- Protocol support
 		- External reply block format
-		- End-to-end payload encryption, if we ever agree on a spec.
+		- End-to-end payload encryption
 		- Reading messages sent to reply blocks
 		- Correct implementation of stateless reply blocks
 SPEC		o Patch to address George's 15August attack