Matthaus Litteken
2011-Sep-15 00:21 UTC
[Puppet Users] ANNOUNCE: Facter 1.6.1rc3 available
Facter 1.6.1rc3 is a maintenance release containing fixes for issues
#8491 and #9457, as detailed below.
This release is available for download at:
http://puppetlabs.com/downloads/facter/facter-1.6.1rc3.tar.gz
See the Verifying Puppet Download section at:
http://projects.puppetlabs.com/projects/puppet/wiki/Downloading_Puppet
Please report feedback via the Puppet Labs Redmine site, using an
affected version of 1.6.1rc3:
http://projects.puppetlabs.com/projects/facter/
Full Release Notes at: https://projects.puppetlabs.com/projects/facter/wiki/
Facter 1.6.1rc3 Release Notes
==
CHANGELOG
-- Prevent repeated loading of fact files
Fix #8491
Fact loading could recurse indefinitely if a fact file attempted to call
Fact#value on a fact that was not yet defined before the current file.
If Fact#value was called outside of a setcode block, it would be
evaluated at load time and the loader would rescan the fact path from
the beginning and would reenter the current file, continuing until the
stack was full. This is a byproduct of the more exhaustive fact
searching introduced in 2255abee.
The resolution for this is to track the files that have been loaded and
ignore subsequent attempts to load them, emulating the behavior of
Kernel.require. However, since facts can be legitimately refreshed
over the life of a ruby process using Facter, Facter.clear will reset
the list of loaded files by destroying the fact collection, and
subsequently the loader.
Currently puppet agent will reload all facts preceding a run, so normal
puppet agent behavior will remain as expected. However, the facter facts
terminus manually loads fact files itself and bypasses facter''s
search
path and standard loading mechanism. While it will benefit from the
recursion protection, it currently does not have a way to reset the
loaded file list.
-- Fix logic for domain fact so hostname, then dnsdomainname and
finally resolv.conf is used.
Fix #9457
A recent commit changed the logic for how this fall-through logic was
working. I''ve fixed the logic and added more coverage to pick up on
this.
--
You received this message because you are subscribed to the Google Groups
"Puppet Users" group.
To post to this group, send email to puppet-users@googlegroups.com.
To unsubscribe from this group, send email to
puppet-users+unsubscribe@googlegroups.com.
For more options, visit this group at
http://groups.google.com/group/puppet-users?hl=en.