All databases I am aware of work based on CRUD: Create, Read, Update, Delete. Drupal always wanted to implement all of them nicely and now we have a nice Read in Drupal 7 with entity loading. Delete API has a very long and very sad history which I won't get into but we tried to introduce Delete API to make undo possible. As teached by many excellent usability books, confirm forms are wrong, they become habitual and are just a nuisance instead of protecting you from mistakes. The computer should just do what its operator says and make it possible to revert easily. Because of that history, the issue laid dormant for long but when I was preparing for my MongoDB talk and read an article it struck me immediately as Right. Let me quickly recap: you want Create, Read and Archive and nothing else. When storage is abundant there is no reason to throw away data. We already have Read with entity loading -- so I propose to implement Create and Archive in Drupal 8 nicely and build undo on top.
Ps. if you really insist on storage scarcity then write a contrib that runs a cleanup cronjob that deletes old data from the archives.
Commenting on this Story is closed.