o get messaging sorted o try to write up a registry-based exe version checker., o Decouple install from check: they are not necessarily related. o Generate newer, better objects internally. o Generate new, better formats for existing 'exe' items o Generate command items properly. - Better version comparison. - Security stuff that we should do 1 Check SSL certs or something in urllib2. Not that Thandy really cares about repositories getting mitm'd. 3 Notice exceptionally slow bandwidths; treat as failure-like. 5 Make sure we actually verify that timestamps in files listed in ts file match ts file's declared timestamps for them. Spec this. 6 Never replace a file with one that has an older timestamp. Spec this. 7D Fallback locations to find starting metafiles in, if we don't have any cached yet. - Security stuff that we should do that needs format changes. 2 Whenever we list a hash in a metafile, also list a file length. - Think more about issues 4, 7(A,B,C) - Missing packaging features: - Generate multi-item packages properly. - Transition better for checking on a given item - Implement remove - Get RPM actually more tested - Get install-from-compressed-file working. - Transaction support where available. - OSX backend . Download improvements. o Back off on download failure. o Handle full stalled file in download. - Use if-modified-since on timestamp - Better configurability: let users override mirrors, keys, etc. - Proper exponential back-off on download backend. - Wrapping - More unit tests . Documentation - More comments, more tests . full pydoc - Testing - Much bigger unit tests.