The source_permissions attribute of the File resource has been deprecated since Puppet 5. Users who make use of that attribute in their code are only informed of this after the fact, by warnings in their Puppet runs and logs. However, neither the Puppet 6 nor the Puppet 7 docs mention this, and detail the source_permissions attribute as if it is normal. The docs should ideally express this to users.
The deprecation occurred in https://tickets.puppetlabs.com/browse/PUP-5921
meanwhile as of 7.x, there is still no documented notification on this deprecation: https://puppet.com/docs/puppet/7.1/types/file.html#file-attribute-source_permissions