Big view cleaup
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Dmedia |
Fix Released
|
High
|
Jason Gerard DeRose |
Bug Description
So I'm refactoring our design/view code for a few reasons:
1) We need filter functions for the changes feed, and my original view helper stuff didn't allow for that. We're going to need the filter functions in the new job dispatch stuff, and once the Novacut UI supports nested sequences (so we can listen to changes just in that sequence).
2) Lots of the views were experiments to get a feel for how we might want to access stuff, but as we move toward production ready, we should avoid this for anything related to "making file management go away". So I'm cleaning up the file design especially, so that it has just the 4 critical views that are actually needed to drive the Dmedia automation behaviors.
3) We didn't have unit tests for any of our views... so I'm adding sanity checks for all the views, and detailed unit tests for all the file (automation) views. I'll add detailed unit tests for the remaining views once we have a better feel for what we'll actually keep around.
4) I'm removing all use of my experimental `_count_and_sum` reduce function... as handy as it was, it's just too darn slow. We'll revisit this once we move to CouchDB 1.2.0.
This will require similar changes in novacut as it imports `dmedia.views` and reuses a number of things.
Related branches
- Jason Gerard DeRose: Approve
-
Diff: 1389 lines (+836/-360)5 files modifieddmedia/core.py (+0/-1)
dmedia/tests/test_util.py (+164/-1)
dmedia/tests/test_views.py (+514/-86)
dmedia/util.py (+49/-2)
dmedia/views.py (+109/-270)
Changed in dmedia: | |
status: | In Progress → Fix Committed |
Changed in dmedia: | |
status: | Fix Committed → Fix Released |