We completed removing the Puppet dependency from Foreman core, so all Puppet usage is in the smart proxy only. This will make it optional for people who don't use Puppet, plus avoid conflicts we've seen when loading Puppet as a library. In addition, if your puppetmaster is not on the same server as Foreman, you no longer need Puppet installed there at all.
To accomplish this, we have changed the way facts and reports are uploaded. Specifically, Foreman itself now uses a JSON format, and the ENC (node.rb) and Puppet report processor (foreman.rb) have been updated to handle changing Puppet-specific data into JSON. If you have ENC/Reports scripts, you will need to to update them to the latest version, which can be found here <link to install when enc/processor PR is merged>