TODO in offroad-0.0.2 vs TODO in offroad-0.0.3
- old
+ new
@@ -1,42 +1,42 @@
-High priority:
-- Creating/updating the installer (ideally, git pull on target platform, one rake task, then git push)
-- Add a generate task to initialize config files in a Rails app
-- Documentation
-- Resolve issue of too-long index names
-
-Low priority:
-- Make unit tests against bugs fixed by 7f8415 and 31455d
- - Try to come up with some more convenient way of building unit-test-specific model classes
-- Make sure ModelStates don't continue to stick around and cause trouble even after a class no longer acts_as_offroadable
-- Get README into the auto-generated gem rdocs
-- Get the test suite to stop generating a log file, it's annoying
-- Use finer-grained exceptions to allow for better error testing
-- Don't allow group_single records to reference non-single group records, since group_single "ownership" can change
-- Don't assume "id" as primary key name, always look it up with the appropriate ActiveRecord method
-- Allow offline app to relinquish ownership by setting a belongs_to field to 0 or NULL
-- Figure out why Hobo assumes all fields non-editable (something I'm doing in the patched-in updatable check...)
-- Assign a random number to group state when it is created, only accept mirror files with matching random number
- - This is to prevent confusion if a group is made offline, then online, then offline again
-- Also assign a random number to the online app, and only accept mirror files which match this number as well
- - Prevents multiple installations of an app from reading each others' mirror files
-- Use read transactions for mirror write operations (is it already doing this?)
-- The launcher should keep a log file
-- Include recent log lines (for both Rails and the launcher) in generated up-mirror files, for debugging purposes
-- Use rails logger to note activity
-- When mirror data version is confirmed, delete all sendable record state entries for deletions older than min(version) over all group_states
-- Try to gather some kind of machine identifier to put in a offline-owned group_state column
-- Try streaming out with large data sets and make sure it is sufficiently speedy, and is actually streaming (i.e. no Content-Length header)
-- Change mime-type of mirror files being downloaded to something that doesn't allow it to be accidentally viewed in-browser
-- Use md5sum on the entire cargo file instead of just each individual part, to protect against corruption outside the actual data segments
-- Allow app to optionally specify batch sizes on a model-by-model basis
-- Mirror file imports in the down mirror app should happen through GUI, and GUI should delete files once succesfully imported
-- If offline app attempts to import a down mirror file and it doesn't work, it should:
- - Delete the down mirror file as usual, but...
- - Explain that it wasn't imported and that another down mirror file should be downloaded
-- Figure out which activerecord methods skip the save callbacks, and wrap them to also update the mirror version
- - Maybe methods for which this isn't practical should raise an error when called...
-- Load all the other informational values in GroupState
-- App creates a record then deletes it then sends mirror; does a deletion srs still get sent?
- - For any fix to this: make sure that if app updates record then deletes it then sends mirror that deletion gets sent
- - Maybe that means we need both create_version and update_version on srs?
-- Put the CargoStreamer into its own gem, it might be handy for other stuff
+High priority:
+- Creating/updating the installer (ideally, git pull on target platform, one rake task, then git push)
+- Add a generate task to initialize config files in a Rails app
+- Documentation
+- Resolve issue of too-long index names
+
+Low priority:
+- Make unit tests against bugs fixed by 7f8415 and 31455d
+ - Try to come up with some more convenient way of building unit-test-specific model classes
+- Make sure ModelStates don't continue to stick around and cause trouble even after a class no longer acts_as_offroadable
+- Get README into the auto-generated gem rdocs
+- Get the test suite to stop generating a log file, it's annoying
+- Use finer-grained exceptions to allow for better error testing
+- Don't allow group_single records to reference non-single group records, since group_single "ownership" can change
+- Don't assume "id" as primary key name, always look it up with the appropriate ActiveRecord method
+- Allow offline app to relinquish ownership by setting a belongs_to field to 0 or NULL
+- Figure out why Hobo assumes all fields non-editable (something I'm doing in the patched-in updatable check...)
+- Assign a random number to group state when it is created, only accept mirror files with matching random number
+ - This is to prevent confusion if a group is made offline, then online, then offline again
+- Also assign a random number to the online app, and only accept mirror files which match this number as well
+ - Prevents multiple installations of an app from reading each others' mirror files
+- Use read transactions for mirror write operations (is it already doing this?)
+- The launcher should keep a log file
+- Include recent log lines (for both Rails and the launcher) in generated up-mirror files, for debugging purposes
+- Use rails logger to note activity
+- When mirror data version is confirmed, delete all sendable record state entries for deletions older than min(version) over all group_states
+- Try to gather some kind of machine identifier to put in a offline-owned group_state column
+- Try streaming out with large data sets and make sure it is sufficiently speedy, and is actually streaming (i.e. no Content-Length header)
+- Change mime-type of mirror files being downloaded to something that doesn't allow it to be accidentally viewed in-browser
+- Use md5sum on the entire cargo file instead of just each individual part, to protect against corruption outside the actual data segments
+- Allow app to optionally specify batch sizes on a model-by-model basis
+- Mirror file imports in the down mirror app should happen through GUI, and GUI should delete files once succesfully imported
+- If offline app attempts to import a down mirror file and it doesn't work, it should:
+ - Delete the down mirror file as usual, but...
+ - Explain that it wasn't imported and that another down mirror file should be downloaded
+- Figure out which activerecord methods skip the save callbacks, and wrap them to also update the mirror version
+ - Maybe methods for which this isn't practical should raise an error when called...
+- Load all the other informational values in GroupState
+- App creates a record then deletes it then sends mirror; does a deletion srs still get sent?
+ - For any fix to this: make sure that if app updates record then deletes it then sends mirror that deletion gets sent
+ - Maybe that means we need both create_version and update_version on srs?
+- Put the CargoStreamer into its own gem, it might be handy for other stuff