Show config differences during upgrade when reconfiguring services
When upgrading (in my case from 3.1.2 to 3.1.6), the admin can choose whether he wants to reconfigure all or any services. But there is no (clear?) indication as to what exactly will be changed and how manual config changes will be kept (hint: not at all, but comments will in some cases like Postfix, which is strange).
I suggest that the behaviour of the upgrade script is altered to display some kind of diff for each to-be-modified conffile and allow users to choose between the old version, the new version, editing the conffile or keeping both (X and X.new), something like Debian does for conffiles. This allows quick migration of manual changes and doesn't confuse users.
Config files are completely overwritten on update (except postfix which only gets the needed options altered). If you want your own ones be kept, use the /conf-custom/ directory. I am not sure whether displaying diffs is possible at all due to the way they are generated, but I'll mark this as feature request.
To see differences you can compare the files from the install packages with the ones in /usr/local/ispconfig/server/conf/. This only applies as long as you did not change anything manually.
Is it possible (or would it be) to write *.new files instead of overwriting the currently live configuration files so that they can be reviewed before becoming active? I don't want to skip configuring services altogether but I'd like to know beforehand what happens.
Wouldn't make any sense. If we'd write .new files we could show diffs between those and the existing ones. As said, I added it as a request but as long as nobody implements it as a sponsored feature I think it is on low priority because there are lots of things to do.