On Jun 22, 2007, at 8:50 PM, Rob Thorne wrote:

I've just gone through the handbook pages you did on the API.  They describe the API well, but I don't think I grok the "user experience" that the API implements.  Am I right in assuming that the implementation generates a standard UI for deleting a "package" along with the various hooks it implements for letting other code respond to the deletion?


there really is no user experience -- or, rather, it's whatever the dev wants it to be.  the API exposes the deletion cycle to modules, and allows them to do a few things with it.  from a user's perspective, the differences would be:

1. extra info on a confirm screen b/c a module injected it.
2. a user warning b/c a package deletion was aborted by a module.
3. maybe an extra user message here and there.

Also, I found the explanation of the "package" concept a bit abstract.  A real-world-ish example might help.


sorry about that.  i really wasn't sure what else to call it.  i'm happy to pick a better name if it avoids confusion.  :)

package == 'logical set of deletions that happen together'

as in, when you delete a node, you also delete the associated comments, associated revisions, etc.  they happen as a logical unit.

the API keeps the logical units together, and presents the logical units to the hooks so that outside modules may have a look.