I think single button uninstaller required. Because WordPress intends to be more easy, convenient and automated tool.
I believe people in Automattic understands why the uninstaller required.
I've been searched forum about uninstallation, many people talked just 'erase all files and DB. It's done!'.
In fact, that's not enough. It's easy just to talk like that.
I'm operating several WordPress sites and another applications in single hosting account. (of course, not all of them are blogs) But I have only one DB repository. So there is so many(about 20+) tables in my DB. And I realized I forgot table prefix name of one of my WordPress installation to remove. And those table names are mixed, so I can't identify what's whose things.
It's not easy to even know how to remove tables from DB if you're not a IT related people. Somebody doesn't know what the DB is. Because WordPress is easy enough those people can install. And even for an IT people, it's not easy to know tables to drop. I know SQL syntax and have Sequal Pro tool, but I don't know WordPress structure, and I don't want to know how it's structured. I've been chosen WordPress to save my time to make any logic like things. And there are not only tables in SQL server. There're relations, caches, objects and many invisible things which hard to know except only makers of the original program developer. And I'm not a professional database manager, so it's disaster if I delete some wrong tables because it's not undoable.
If you're an IT people, you should hate to memorize anything and you'll logical. You'll love "automated and safe uninstallation program". Not for IT people. Everyone loves those thing. Uninstallation requires accurate, complex programmatic logic. I can't believe I uninstalled everything completely because there is no 'Uninstall' button offered by design.
Finally, I don't expect uninstaller erases even WordPress core files. Because I copied them into my server, so erasing them is my job. But DB, that's all the program's duty. I expect behavior of "Uninstall" button like this:
- Warn about this is uninstallation button, and alert to backup(export) all data. As I know, current WordPress export does not store everything completely. You may have to warn about that. You have to re-import them all from a new location if you want to just moving data to another location.
- Warn about ensure to uninstall.
- Erases all DB created when install.
- Erases all additional files created after installed.
- Restores all status to time file just copied on server.
- So installer screen shows again when I access wordpress location after uninstall.
"Uninstall" button must be offered.