Since we've moved to the option of using JSON configuration files with MAILTOOL we've had great success, but we have also had a couple issues. Mainly due to the fact that when the files are updated, they aren't validated.
If an invalid JSON file is used the internal JSON parser won't be able to get most, or all, of the values in the configuration file causing headaches.
As an example, here is the value for the "From Address" in the default configuration file:
{
"name":"from_email",
"default":" "
},
Now, lets say you set up a configuration file for a specific user and want to set the default "From Address" to this uses email address. So, you change it to this:
{
"name":"from_email",
"default","joesatriani@g3guitars.com"
},
At first glace things may appear ok, but, it looks like during the update, the colon after "default" was changed to a comma. If we run this configuration file through a JSON validator we will find errors and it will tell us something like "expecting a colon and found a comma!"
The proper configuration should look like this:
{
"name":"from_email",
"default":"joesatriani@g3guitars.com"
},
Yes, it is a small change, but it makes all the difference to the application and especially the JSON parser that is used.
So, when you're making changes it is a good idea to run the entire JSON file through a JSON validator such as this one. If you have any sensitive information (such as userid or password for your mail router) in the JSON file you should probably blank them out. I don't know if these types of validation sites store the data that is used but you never know, and it's better to be safe than sorry.