I update some packages from LUCI-SOFTWARE-UPDATE page. Some package created an *-opkg file as the configuration file has existed. I compared them and I do see some differences.
Text format difference, for example ucitrack does not have single quotation symbol but ucitrack-opkg has single quotation symbol '' , see below:
ucitrack-opkg
config network
option init network
list affects dhcp
ucitrack:
config network
option init 'network'
list affects 'dhcp'
Should single quotation symbol be removed in the existing ucitrack file?
Lots of difference on dhcp file after updating, see the result below:
As you can see from the whole file, it is not necessary if the value is a number, true/false, or an interface, however it is still necessary in case of file path or server. So you can safely keep it as it is.
Everything after a # is a comment so you can ignore that.
The other differences are the ones that exist in the default configuration and not in your file.
Generally if you upgrade within a major version, the configuration is compatible. If on the other hand upgrade from 21.02 to 22.03 then you should be more careful with the syntax and the available options.
Upgrading packages (via the CLI opkg upgrade command or the LuCI Upgrade... button) can result in major problems. It is generally highly discouraged, unless you know what you are doing or if there is specific instruction to do so.
The -opkg file enables you to compare new defaults to your current settings.
Normally no significance, but in connection to major changes you might want to copy new defaults.
The missing quotes is just cosmetics. Some of the default config files do not have them, although UCI places them at any new changes. Similarly, editing settings via LuCI may remove some items that have (unnecessary) default values.
Thanks for all your replies. I guess I should factory reset the router and restore the backup from the one before package upgrades. I did see some errors like "uci not commit" during package update.