POW has a changed_contexts map which keeps track of which contexts have changed. It would be good to have this work any time we use PyOpenWorm so when changes are made outside of POW, the change-tracking is still up-to-date. To avoid the pattern of adding more and more capabilities onto the database, the change-tracking should be an optional feature of the database. Moreover, we wouldn't like to require this (or other such features) to run in a production environment in applications where POW is not being used. To that end, this task is to devise a scheme for declaring a change-tracking plug-in to the database.
POW has a changed_contexts map which keeps track of which contexts have changed. It would be good to have this work any time we use PyOpenWorm so when changes are made outside of POW, the change-tracking is still up-to-date. To avoid the pattern of adding more and more capabilities onto the database, the change-tracking should be an optional feature of the database. Moreover, we wouldn't like to require this (or other such features) to run in a production environment in applications where POW is not being used. To that end, this task is to devise a scheme for declaring a change-tracking plug-in to the database.