This page documents the history of the Facter 3.9 series.
Released November 6, 2017.
This is a bug-fix release that shipped with Puppet Platform 5.3.3.
Facter 3.9.3 resolves issues on Power8 architectures and with custom fact evaluation.
On Power8 architectures, previous versions of Facter reported inaccurate counts of logical and physical processors in the
processorsfact. Facter 3.9.3 resolves the issue by using the
/sys/devices/system/cpudirectory to compute only the physical CPU count, and computes the logical CPU count by incrementing the number of processor entries in
Also, previous versions of Facter used the wrong fields of
/proc/cpu/infoon Power8 architectures when determining the CPU model and clock speed. Facter 3.9.3 correctly uses the
clockfields when populating relevant facts.
Since Facter 3.6, Facter evaluated custom facts from Puppet twice. Facter 3.9.3 resolves this issue by evaluating them only once, which significantly reduces the time required to evaluate facts.
Released October 2, 2017.
This is a bug-fix release of Facter and libwhereami that addresses potential fatal errors in the new
hypervisors fact. Facter 3.9.1 was not publicly released.
Bug fix: Fix hypervisors fact resolution when run inside some Windows VMs
When running Facter 3.9.0 in virtualized Windows environments where Windows Management Instrumentation (WMI) values were only partially available, for instance on an OpenStack VM, Facter exited with a fatal
unhandled exception: unable to get from empty array of objects error. Facter 3.9.2 resolves this issue.
Bug fix: Prevent failed fact resolutions from stopping Facter
In previous versions of Facter, a failed fact resolution could halt Facter. Facter 3.9.2 resolves this issue by displaying failures as warnings and continuing to resolve other facts.
Bug fix: Allow hypervisors fact to be blocked
hypervisors fact introduced in Facter 3.9.0 can cause Facter to fail in some virtualization environments. In Facter 3.9.2, you can block this fact in
Other bug fixes
- FACT-1765, PA-1466: Don’t report warnings about a missing dmidecode component on Power8 systems, which don’t use dmidecode.
Released September 13, 2017.
This is a feature and bug-fix release of Facter.
- FACT-1749: The
hypervisorsfact introduced in Facter 3.9.0 can cause Facter to fail in virtualized Windows environments where Windows Management Instrumentation (WMI) values are only partially available, for instance on an OpenStack VM.
The new fact recognizes multiple hypervisors in nested virtualization environments, and includes metadata about each hypervisor where available. The
hypervisorsfact and libwhereami are the first steps toward improved virtualzation support in future releases of Facter. They also reduce its dependence on the external tool
virt-what, which has a few detection bugs and requires root to run.
This new feature should therefore also remediate discrepancies in Facter’s output when run as root and as a non-root user under virtualized environments.