-
Notifications
You must be signed in to change notification settings - Fork 1
TODO
vanstyn edited this page Feb 2, 2013
·
36 revisions
- Switch from Moose to lighter Moo (how to handle Types? Doesn't appear to be a seamless conversion, currently using "string" type constraints (i.e. isa => "HashRef")
- Adopt
changeset_do
from DBIx::Class::Shadow -- API to allow AuditAny-aware code to be able to set datapoint values (similar conceptually to AuditLog's optional second arg totxn_do
) - Refactor code that modifies tracked schema and result classes using Class::MOP::Class to apply a (runtime) Roles to the schema/storage objects (per frew's suggestion in IRC on 1/25/2013)
- Add support for tracking changes made through ResultSet objects instead of Row objects. Do this by hooking into Storage insert/update/delete ?
- Integrate with DBIx::Class::Shadow (Collector)
- Expand Collector API to be able to define datapoints
- Finish Multi-PK support (code already exists but is currently disabled because it hasn't been tested yet... and it will probably need tweaks )
- Add built-in "diff" Column-context datapoint
- Add mechanism to enable/disable tracking on the fly (localizable global?)
- Separate set/change/column datapoints into 'pre' and 'post' stages
- Add per-column config options (i.e. selectively track columns in the same way that sources can be selectively tracked)
- Move a lot of the code currently in the base DBIx::Class::AuditAny into a dedicated DBIx::Class::AuditAny::Auditor class
- Use txn_scope_guard instead of custom code to achieve the same thing it does (low)
- Expand tests with "subtests"
- Add option to try and detect direct calls to dbh and throw exception/warning?
- Tracking Rekey changes
- Multi-PK
- Tracking of schemas with more exotic configs like their own method modifiers
- Update called on resultset
- db level cascases (on_update/on_delete)
- Multiple Auditors
- Partial tracking (only certain actions/sources, make sure others are in fact ignored)
- $Rs->populate
- Calls in both LIST and SCALAR context to make sure arounds properly honor wantarray