Your question
I would like to upgrade from the last version of 0.15 to the latest 0.16. I understand some items are migrated over to 0.16 but some have to be recreated. Is there a way I can compare my current 0.15 configuration to the default settings of 0.15? That way I can at least go through settings I’ve modified or changed over time compared to the defaults, so that I can recreate them on 0.16 prior to migration.
The canonical reference for your upgrade is the official v0_16.md upgrade guide linked in the blog post. Here is a practical approach to your specific goal of identifying what you changed from the 0.15 defaults:
There is no built-in diff-against-defaults tool. The most reliable approach the official upgrade docs recommend is to spin up a fresh 0.16 instance, walk through its WebUI, and then use the CLI’s apply plan workflow to carry your customizations across. However, you can compare your current 0.15 settings against the 0.15 defaults by looking at the 0.15 documentation (still available at https://stalw.art/docs/0.15/...) alongside your running config.
Here are the practical steps to identify what you’ve customized:
-
Export your current 0.15 configuration. In 0.15 the config is TOML-based. You can review your config.toml (and any included files) directly. Any key that differs from the documented default in the 0.15 docs is something you’ve customized.
-
Use the 0.15 docs as your baseline. The 0.15 docs are preserved under the /docs/0.15/ path on the Stalwart website and document all default values. Go section by section comparing your TOML to the documented defaults.
-
Spin up a fresh 0.16 instance first (container or throwaway VM), as the official upgrade blog strongly recommends. Configure your customizations there interactively via the new WebUI, then export an apply plan using the CLI to replay those settings on your production instance post-migration.
-
Read the full v0_16.md upgrade guide at stalwart/UPGRADING/v0_16.md at main · stalwartlabs/stalwart · GitHub before doing anything on production. It details exactly what is migrated automatically and what must be recreated.
The key insight from the official docs is that 0.16 moves configuration from TOML files into a JMAP-based object store managed through the WebUI/CLI, so there is no direct one-to-one mapping you can automate – a careful manual review against the 0.15 docs is the recommended path.
This is an automated reply from the Stalwart Help Bot. Other community members may follow up if this answer is incomplete or wrong.