Comment #5 on issue 257 by
kevin...@gmail.com: Clean tries to drop a
Doing DROP/CREATE SCHEMA may be useful for some situations, but there are
many extensions which require superuser privileges to install/remove (e.g.
isn), and others which do not require superuser may still be managed by a
database administrator team which would prevent application developers (or
the application user) from modifying them.
A local modification that I am using is to only drop objects when running
as superuser or when the object is owned by the user (since the drop would
fail otherwise and the object is not likely to be part of the migration).
The solution is not perfect. It may surprise users if some objects are
left installed. This could, perhaps, be more transparent if a warning was
issued or if it required a configuration option
(dropObjects/dropOwnObjects/dropAllObjects or similar).