Nanoc needs --json so that the CLI can be used programmatically
Nanoc’s CLI is only useful for human interaction.
There is no reasonable way to programmatically detect what changes Nanoc has made. I believe this has led to a post-processor being implemented, when it wouldn’t really have been necessary. For example, the post-processor is used for incrementally (i.e., partially) updating a search index, which could be done outside of Nanoc if Nanoc were able to spit out the necessary information in a machine-readable format.