cli
cli copied to clipboard
Either always `force` psql drop or allow `force` as option
Context:
The reason behind it is to improve developer experience, as right now when running a command like hanami db reset it will fail if the user has any other ongoing connection, like a connection to db client(like dbeaver), or a hanami console session.

Couple other possible approaches are:
# create a dedicated method for force drop
def force_drop_command
system(cli_env_vars, "dropdb --force #{escaped_name}")
end
# force as option/param
def drop_command(force=false)
command_prefix = force ? "dropdb --force" : "dropdb"
system(cli_env_vars, "#{command_prefix} #{escaped_name}")
end
Reference: https://www.postgresql.org/docs/current/sql-dropdatabase.html#id-1.9.3.108.6
PR with proposal: https://github.com/hanami/cli/pull/81