PDK release notes
New features, enhancements, and resolved issues for PDK.
PDK 3.4.0
Deprecations
Support has been removed for
SLES 12
and packages for it are no being longer built.
New features and enhancements
The in built
forge upload
functionality has been replaced with a call to thepuppet_forge
gem.json-schema
dependency updated to~> 5.0
in order for it to be kept it in line with the wider Puppet products.Support for
RedHat 8
has been extended toAARCH64
with new packages built.
Bug Fixes
A parser swap to
JSON::Pure
has been removed from themetadata_syntax_validator
changing the format of the output. This was required due to the parser used no being longer included within either thejson
orjson_pure
gems.Removed the dependency on the
json_pure
gem as it is no longer necesary withjson
added as a default ruby gem.Deprecated call
Gem::Platform.match()
replaced with the modernGem::Platform.match_spec?
withinpuppet_version.rb
.Updated
vendored_file.rb
to use vendored cert files andVERIFY_PEER
withNET::HTTP
on Windows machines.The above change to
vendored_file.rb
has been updated to sethttp.ca_file
rather thanhttp.cert
.The PDK spinner has been updated on Windows to be more consistent, with tick marks now being given upon success.
Runtime Changes
The version of the
git
gem bundled within the runtime has been set to2.39.4
.The
json_pure
gem has been removed from the runtime.-
The
puppet_forge
gem has been added to the runtime pinned to5.0.4
, with the following dependencies also added:Dependency
faraday
pinned to2.12.0
.Dependency
faraday-follow_redirects
pinned to0.3.0
.Dependency
faraday-net_http
pinned to3.3.0
.Dependency
semantic_puppet
pinned to1.1.0
.Dependency
minitar
already present, pin kept at0.9
.
Template Changes
The
puppet_blacksmith
gem has been added to the templates, pinned to~> 7.0
.The
puppetlabs_spec_helper
gem has been repinned to~> 8.0
.Default
lint
configuration has been updated to match that withinpuppetlabs_spec_helper
. Notation added to help ensure they are kept in sync.
PDK 3.3.0
New features and enhancements
Name validation now skipped for controlrepo's
The PDK has been updated to use the
modulebuilder
gem in place of duplicated code within the PDK.Support for Debian 11 and 12 has been extended to AARCH64 with new packages built
Support for Ubuntu 18.04 to 24.04 has been extended to AARCH64 with new packages built
Support for RedHat 9 has been extended to AARCH64 with new packages built
Support for Mac OsX 13 has been extended to arm64 with new packages built
Windows 2019 package is now being tested on Windows 11 to ensure support
Bug Fixes
The childprocess gem has been updated and a patch for it has been removed.
pdk test --list
has been updated to account for a change in how information is passed back to it.
Template Changes
Bolt-related files added to the .gitignore default paths
puppetlabs_sec_help
pinned to 7.3 or newer and.rspec.erb
removed to accountPin added for
rexml
to account for Windows issuesdeep_merge
updated to require 1.2.2 or newerConfig extras handling added back into the Rakefile
.vendor
added to .gitignorefacterdb
repinned to ~> 2.1 andrspec-puppet-facts
to ~> 4.0
PDK 3.2.0
Deprecations
Analytics have been removed from the code
Support has been officially withdrawn for Debian 9 and Redhat 6.
New features and enhancements
Support has been added and packages are now being built for Debian 12 and Mac OSX 13.
While not possessing an explicit package Windows 11 is now being verified as supported.
Template Changes
CFPropertyList has been pinned on Windows
Fix implemented so that .sync.yml will properly overide Rubocop rules
Duplicate gems have been removed
PDK 3.1.0
New features and enhancements
Executable templates are now supported
pdk convert
andpdk update
can now work in a ControlRepo context
Template Changes
The templates have been updated to allow Rubocop rules to be overriden.
CFPropertyList has been added as a pinned dependency on Windows.
Our Rubocop pin has been increased to
1.50.0
.The codecov gem has been removed.
The archived ruby vscode extension has been replaced.
PDK 3.0.1
New features and enhancements
Updated various dependencies
Added stricter puppetlabs_spec_helper dependency
Minor adjustments to our documentation
PDK 3.0.0
PDK 3.0 is a backwards incompatible release.
New features and enhancements
Ruby 3.2.2 is now the default version of Ruby.
Puppet 8 is now the default version of Puppet.
PDK no longer relies on PowerShell, you are able to use PDK from any terminal that honours your PATH variable.
As of this release, PDK now only includes the latest Puppet versions available at the time of build. This siginficantly reduces the package size and improves performance.
The
bundle
command is no longerexperimental
.PDK now properly respects the
verbose
option when utilizing format options for unit testing.PDK now supports the
operatingsystem_support
parameter fromanswers.json
.
Deprecations
The
--pe-version
flag has been deprecated. It will continue to work but we advise moving to--puppet-version
given that this flag will be removed in a future release.The deprecated
module
command has now been removed.The deprecated
config
command has now been removed.The experimental
console
command has been removed from this release.