Running puppet facts diff on macOS gives the following output:
{
"mountpoints./Volumes/puppet-agent-6.21.1.28.g8d35b8853-1.osx10.14.options.0": {
"new_value": "read-only",
"old_value": "readonly"
}
There is an extra hyphen for readonly in the mountpoint options in Facter 4. This is probably the culprit in 3: https://github.com/puppetlabs/facter/blob/3.x/lib/src/facts/bsd/filesystem_resolver.cc#L55.
On the other hand, Facter 4, uses sys-filesystem: https://github.com/djberg96/sys-filesystem/blob/9880f127465e680534263ec0de078179d73ef18b/lib/sys/unix/sys/filesystem.rb#L16
Facter 3 executes lsb_release -a, while Facter 4 parses /etc/os-release:
root@smooth-pear:~# lsb_release -d
Description: Debian GNU/Linux 9.0 (stretch)
root@smooth-pear:~# grep PRETTY_NAME /etc/os-release
PRETTY_NAME="Debian GNU/Linux 9 (stretch)"
We should add a known limitation as this will affect puppet facts diff Claire Cadman
We don't have plans on changing Facter 4, so I'm going to close this.