Lack of proper modified events and event descriptions in formlib and other places
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Zope 3 |
Fix Released
|
Medium
|
Philipp von Weitershausen |
Bug Description
ObjectModifiedEvent is a general event to indicate some property/ies, whether intrinsic or extrinsic (e.g. in annotations), of an object has changed. In itself an ObjectModifiedEvent is pretty general therefore and hence quite useless to deduct within a subscriber how the object was modified. That's why there is actually support for annotating ObjectModified events with this information:
info = Attributes(
notify(
(Attributes is importable from zope.lifecyclee
The problem is that Zope itself makes little use of this yet. In particular:
* zope.formlib doens't annotate events with this information, even though it has all that information (which exact properties changed). Interesting enough, zope.app.form *does* annotate the event with the additional info.
* The 'contents.html' view for containers allows you to change the DublinCore Title property, but doesn't send any event whatsoever (it should be sending an ObjecdtModified
* The 'edit.html' view for zope.app.file's File objects sends ObjectModifiedE
There might be other cases lurking around. These are the ones I could find offhand.
These have been fixed in zope.app.container 3.5.3, zope.app.file 3.4.2. zope.formlib 3.5.0 (not yet released) will contain the bugfix for zope.formlib.