Changelog
May 1, 2026 ยท View on GitHub
6.2.0 (2026-05-01)
Implemented enhancements:
- Add newer openvox<>openfact mappings #247 (bastelfreak)
6.1.0 (2026-02-19)
Implemented enhancements:
- Add Ruby 4.0 support #237 (dependabot[bot])
6.0.0 (2025-09-27)
Breaking changes:
- Require Ruby 3.2 or newer #224 (bastelfreak)
- CI: Dont validate puppet_agent_facter_versions.json anymore #223 (bastelfreak)
- Switch from facter to openfact #219 (bastelfreak)
Implemented enhancements:
- puppet_agent_facter_versions: Add OpenVox/OpenFact versions #228 (bastelfreak)
- FacterDB: Allow 4.x #222 (dependabot[bot])
Fixed bugs:
- Fix dependabot configuration #226 (bastelfreak)
Merged pull requests:
5.4.0 (2025-06-11)
Implemented enhancements:
- Support OpenVox #217 (bastelfreak)
- Make Puppet a soft dependency #213 (ekohl)
- Add Ruby 3.4 support / generate CI matrix dynamically #211 (bastelfreak)
Merged pull requests:
- Drop unused coverage reporting #210 (bastelfreak)
5.3.1 (2025-04-29)
Fixed bugs:
5.3.0 (2025-04-28)
Implemented enhancements:
- Add Puppet 8.12 / Facter 4.12 #204 (bastelfreak)
- Only store facter versions in JSON #203 (ekohl)
5.2.0 (2024-10-30)
Implemented enhancements:
- Update components.json with Puppet 8.10.0 #200 (bastelfreak)
Merged pull requests:
- Update voxpupuli-rubocop requirement from ~> 2.8.0 to ~> 3.0.0 #199 (dependabot[bot])
5.1.0 (2024-08-13)
Implemented enhancements:
- Update components.json with Puppet 8.8.1 #197 (bastelfreak)
- Update components.json with Puppet 8.7.0 #195 (bastelfreak)
Merged pull requests:
5.0.0 (2024-07-08)
Breaking changes:
- Switch to FacterDB 3 / drop legacy facts #187 (bastelfreak)
Implemented enhancements:
- Deprecate symbolized facts #193 (bastelfreak)
Fixed bugs:
- handle stringified facterversion properly #191 (bastelfreak)
Merged pull requests:
- Update voxpupuli-rubocop requirement from ~> 2.7.0 to ~> 2.8.0 #192 (dependabot[bot])
4.0.0 (2024-06-10)
Breaking changes:
- Rely on modern facts #178 (ekohl)
- Require FacterDB 2.x #176 (bastelfreak)
Implemented enhancements:
- work with symbolized strings #175 (bastelfreak)
Merged pull requests:
- rubocop: Fix Layout cops #182 (bastelfreak)
- Use max_by to determine the maximum value #181 (ekohl)
- rubocop: Fix Style cops #180 (bastelfreak)
- Use more native rspec matchers in tests #179 (ekohl)
- Update voxpupuli-rubocop requirement from ~> 2.6.0 to ~> 2.7.0 #171 (dependabot[bot])
3.0.0 (2024-03-23)
symbolized facts deprecation
With the release of rspec-puppet-facts 6.0.0 we will remove support for symbolized facts. At the moment people typically use this in their unit files:
on_supported_os.each do |os, os_facts|
case os_facts[:os]['name']
when 'Archlinux'
context 'on Archlinux' do
it { is_expected.to contain_package('borg') }
end
when 'Ubuntu'
end
end
For history reasons the first level of facts were symbols. You will have to update it to strings with the 6.0.0 release:
on_supported_os.each do |os, os_facts|
case os_facts['os']['name']
when 'Archlinux'
context 'on Archlinux' do
it { is_expected.to contain_package('borg') }
end
when 'Ubuntu'
end
end
As an alternative you can configure the old behaviour:
RSpec.configure do |c|
c.facterdb_string_keys = false
end
Breaking changes:
- Use facterdb_string_keys configuration option for custom facts #157 (jordanbreen28)
- Do not query for the exact facter version #151 (ekohl)
- Drop Ruby 2.4/2.5/2.6 support #149 (bastelfreak)
Implemented enhancements:
- Add Ruby 3.3 support #169 (bastelfreak)
- gemspec: Add version constraints & CI: Build gem in strict mode #165 (bastelfreak)
- update puppet agent components #164 (bastelfreak)
- Add merge facts option to add_custom_fact #160 (jordanbreen28)
- Collect facts iteratively #152 (ekohl)
- Use Hash.to_h to construct a new hash #150 (ekohl)
- Add Ruby 3.2 support #148 (bastelfreak)
Merged pull requests:
- Update voxpupuli-rubocop requirement from ~> 2.4.0 to ~> 2.6.0 #168 (dependabot[bot])
- github_changelog_generator: Apply best practices #163 (bastelfreak)
- Gemfile: Add faraday as github_changelog_generator dep #162 (bastelfreak)
- voxpupuli-rubocop: Pin to patch version #161 (bastelfreak)
- Update voxpupuli-rubocop requirement from ~> 1.3 to ~> 2.0 #156 (dependabot[bot])
- CI: add dummy job to depend on #155 (bastelfreak)
- migrate to voxpupuli-rubocop #154 (bastelfreak)
- Update rubocop requirement from ~> 1.48.1 to ~> 1.54.1 #153 (dependabot[bot])
- Introduce RuboCop and fix various cops #146 (ekohl)
- Update puppet agent components #145 (bastelfreak)
2.0.5 (2022-04-22)
Fixed bugs:
- fallback to lsb facts if structured facts are nil #140 (bastelfreak)
2.0.4 (2022-04-22)
Fixed bugs:
- Use structured facts to detect OS version #136 (bastelfreak)
Merged pull requests:
- Add Ruby 3.1 to CI #138 (bastelfreak)
- Update puppet components hash #137 (bastelfreak)
2.0.3 (2021-09-22)
Merged pull requests:
- regenerate puppet_agent_components.json #133 (bastelfreak)
2.0.2 (2021-07-21)
Implemented enhancements:
- Implement github action testing and codecov coverage reporting #129 (bastelfreak)
Merged pull requests:
- Move facterversion_obj declaration out of the loop #131 (ekohl)
- Upgrade to GitHub-native Dependabot #126 (dependabot-preview[bot])
2.0.1 (2021-01-09)
Closed issues:
Merged pull requests:
2.0.0 (2020-08-05)
- Require Ruby >= 2.4
- Automatically find the latest facter version in the database. Previously a very slow and undeterministic approach was taken when an exact match of the Facter version wasn't found.. The new approach is to take the closest version that is still older than the specified version.
- Fix Amazon Linux 2 fact lookup
- Log which facts could not be found
- Remove json as a dependency
2019-12-11 - Release 1.10.0
- Automatically select the default Facter version based on the Puppet version.
The available Puppet version is matched against a mapping of Puppet and
Facter versions included in the
puppet-agentall-in-one packages to find the most suitable Facter version.
2019-07-31 - Release 1.9.6
- Suppress the warning message generated when the Augeas gem is not available.
- Searching through older Facter releases for a fact set that does not exist no longer causes it to hang indefinitely.
- The
operatingsystemreleasevalues are now correctly escaped when building the FacterDB filters, allowing the use ofoperatingsystemreleasevalues that contain special regular expression characters like parentheses.
2019-07-29 - Release 1.9.5
- The default version of Facter to search for is now configurable with
RSpec.configuration.default_facter_version. - When passing a
:supported_oshash toon_supported_os(), singleoperatingsystemreleasevalues can now be specified as a String rather than an Array with a single String. - Dependency on the
mcollective-clientgem removed. Themco_versionfact will now optionally be set if the gem is installed. - The fact names can now be provided to tests as Strings instead of Symbols by
setting
RSpec.configuration.facterdb_string_keystotrue. - Dropped support for Ruby < 2.1.0
2019-03-22 - Release 1.9.4
- Take two on getting rubygems autodeploy going. So much for docs, looking at other projects for this one.
2019-03-22 - Release 1.9.3
- Various CI updates - Garrett Honeycutt
- Symbolize hash keys in
register_custom_facthttps://github.com/mcanevet/rspec-puppet-facts/pull/77
2018-10-24 - Release 1.9.2
- Catch the right
LoadErroron missing augeas gem. Thanks to baurmatt for the quick fix, and rodjek for dealing with the testing
2018-10-24 - Release 1.9.1
- Do not rely on features of Augeas because Puppet 6
2018-01-31 - Release 1.9.0
- Bumps facterdb requirement to 0.5.0
- Adds docs for using custom external facts
- hardwaremodel output changed on Windows with Facter 3.x
- Add additional rqspec tests
- Correctly select windows releases that contain spaces
- Facter < 3.4 does not return a proper release name for Windows 2016
- Strip 'Server' prefix from windows release name if present
- Downcase windows to match facter output
- Fix specs for current facterdb release
- Make version fallback testing independent of installed facter gem
- Add SPEC_FACTS_STRICT setting
- Cleanup README
- Add specific test to test minor version ahead of current facter version
- Update test to check for range in case facter version is not currently in FacterDB
- Step down through versions if the current version is not available
- Fix wrong example in README
2017-06-23 - Release 1.8.0
- Support specifying facter version
2017-01-04 - Release 1.7.1
- Ignore case when choosing H/W models
2016-09-16 - Release 1.7.0
- Support custom facts defined by spec_helper
2016-05-19 - Release 1.6.1
- Fix a bug where not all specified Ubuntu or OpenBSD were captured
2016-05-17 - Release 1.6.0
- Cleanup and refactor methods
- Add YARD documentation
- Refactor and fix rspec
- Add the OS filter support
2016-03-29 - Release 1.5.0
- Add some Microsft Windows support
2016-02-04 - Release 1.4.1
- Add missing mcollective-client dependency
2016-02-04 - Release 1.4.0
- Dynamically set mco_version
2015-11-12 - Release 1.3.0
- Dynamically set rubysitedir
2015-11-05 - Release 1.2.0
- Requires facterdb 0.3.0
2015-09-15 - Release 1.1.1
- Fix OpenBSD support
2015-09-09 - Release 1.1.0
- Populate augeasversion, puppetversion and rubyversion
2015-09-03 - Release 1.0.3
- Fix FreeBSD support
2015-08-31 - Release 1.0.2
- Keys where not symbolized anymore since v1.0.0
2015-08-29 - Release 1.0.1
- Fix for old versions of Facter that does not provide operatingsystemmajrelease for some OSes
2015-08-27 - Release 1.0.0
- Use facterdb
2015-08-10 - Release 0.12.0
- Add Facter3 support
2015-06-16 - Release 0.11.0
- Add facts for OpenBSD 5.7
2015-05-27 - Release 0.10.0
- Add facts for Solaris 11
2015-05-26 - Release 0.9.0
- Add facts for Ubuntu 14.10
- Add facts for Ubuntu 15.04
2015-04-27 - Release 0.8.0
- Remove support for Operating System minor release (causes problems with Ubuntu naming)
- Add Gentoo support
2015-04-26 - Release 0.7.0
- Add support for Operating System minor release
- Update README.md
2015-03-06 - Release 0.6.0
- Add facts for FreeBSD 9
2015-03-06 - Release 0.5.0
- Add facts for FreeBSD 10
2015-02-22 - Release 0.4.1
- Really useless release :-)
2015-01-23 - Release 0.4.0
- Add facts for facter 2.4
- Format json with python's json.tool
- Improve code coverage in unit tests
- Test on more version of facter in travis matrix
2015-01-05 - Release 0.3.3
- Add facts for OpenSuse 12
- Add facts for OpenSuse 13
2015-01-04 - Release 0.3.2
- Symbolize hash keys
2015-01-03 - Release 0.3.1
- Set fqdn to foo.example.com
- Add json as runtime dependency
2015-01-02 - Release 0.3.0
- Use json output for facter
2014-12-20 - Release 0.2.5
- Don't fail if facts not found
2014-12-20 - Release 0.2.4
- Add facts for SLES 11
- Add facts for Ubuntu 10.04
- Fix for SLES 11 SP1
2014-12-20 - Release 0.2.3
- Add facts for ArchLinux
2014-12-19 - Release 0.2.2
- Fix some bugs
- Add unit tests
2014-12-19 - Release 0.2.1
- Add facts for Debian 8
2014-12-15 - Release 0.2.0
- Add opts hash parameter
- Tests only with x86_64 by default
2014-12-12 - Release 0.1.4
- Fix for Ubuntu
2014-12-12 - Release 0.1.4
- Fix for Fedora
2014-12-12 - Release 0.1.3
- Add facts for Fedora 19
2014-12-12 - Release 0.1.2
- Add facts for Scientific Linux
2014-12-12 - Release 0.1.1
- Add more facts
2014-12-12 - First Release 0.1.0
- Initial release
* This Changelog was automatically generated by github_changelog_generator