Description
I have code that I want to read in ion data from a file, make a modification, and then write it back out to a file. The file will be source controlled in a version control system.
I want to include trailing commas, e.g.:
{
foo: "bar",
baz: {
quux: [
"thing1",
"thing2",
"thing3",
],
},
}
That is, a comma after the last item in a list, a comma after the last item in a map, etc.
Ion supports this, which is a huge plus in my book (kudos, Ion!).
This results in diffs that are minimized (if you add or remove a line, there aren't additional lines of diff which only contain addition or removal of a comma), version conflicts are cleaner, and it reduces the likelihood of errors when humans may also edit the files.
I don't think there is any support for asking dump
or dumps
to include trailing commas (I spent a little time looking for one), so I would love if we could add one. I'm most interested in ion.dumps()
, but a flag could be added to any other methods that make sense (dump()
? Others?).
- Stephen
P.S. For more on why trailing commas are a good idea, please see On the virtues of the trailing comma.