| If puppetserver fails to serialize a catalog to JSON it will fallback to PSON, because there was a time where rich data wasn't supported end-to-end between server and agents. However, rich data is now enabled by default and supported end-to-end. And it required when using Deferred or Sensitive parameters. Therefore, if puppetserver downgrades to PSON it can lead to surprising behavior as described in PUP-10928. In Puppet 8, we will no longer fallback to PSON. If a user wants binary data in the catalog, such as a Kerberos keytab file, then they should use `content => binary_file(...)` in a file resource. |