I tried to use toml in as config format for the app I am building at my day job. I ditched it for json because it's representation is not unambiguous, meaning the same object tree has many many different valid representations in toml. This makes it really hard to implement roundtripping of the config string to object tree and then back to config string without losing the specific toml representation chosen by the config author and no library that I've encountered supports it properly.
For me this was a very important use case (config migrations). I implemented my own json parser that preserves json formatting and comments in half a day. Maybe json is harder to read and write but imo it's simplicity is a good feature.
Required reading for anybody considering using TOML for something: <a href="https://github.com/madmurphy/libconfini/wiki/An-INI-critique-of-TOML">https://github.com/madmurphy/libconfini/wiki/An-INI-critique...</a>
I still like using Lua as my .ini file data source. I can use a wide range of inputs from numbers to tables. Parsing the file is easy, and getting it into another program is less work that trying to add a parser.