Topics

PDK 1.15.0 now available

Jesse Scott
 

Hello!

The Puppet Developer Experience team is pleased to announce the latest release of the Puppet Development Kit (PDK), version 1.15.0.

**Please see the end of this email for some important notes about PDK and the recent releases of Bundler 2.1.0 and Rubygems 3.1.1.**

Highlights from the 1.15.0 release include:

 - The target of the `pdk convert --template-url` option is no longer required to be a Git repository. Further, if the target of `--template-url` is a Git working tree, the state of the files on disk will be used as-is. This should greatly simplify the testing of template changes locally.
 - You can now run `pdk convert --default-template` to switch a module back to the default template.
 - The PDK and Bolt PowerShell modules can now co-exist peacefully. (This is partially resolved by this PDK release and should be fully resolved with the next Bolt release.)
 - We've added an experimental `pdk release` subcommand to help automate the module release process. (Read more at https://puppet.com/docs/pdk/1.x/pdk_reference.html#pdk-release-command and please give us your feedback on this functionality!)
 - PDK packages are now available for Fedora 31. (And no longer available for Fedora 28 or 29.)

Reminder: As of PDK 1.14.1, use of the PDK with Ruby versions prior to 2.4.0 is now deprecated and a warning will be issued. PDK 1.15.0 is still fully functional back to Ruby 2.1.9 however we are projecting a PDK 2.0.0 release in early 2020 which will eliminate support for Ruby < 2.4.0.

You can review the full release notes at: https://puppet.com/docs/pdk/1.x/release_notes_pdk.html#release-notes-pdk-x.15

To install or upgrade to this new version, use your platform's package manager (see https://puppet.com/docs/pdk/1.x/pdk_install.html) or download the packages directly for Windows, macOS, and Linux platforms at https://puppet.com/download-puppet-development-kit.

Thanks!


PDK and Bundler/Rubygems Updates:

This release was packaged shortly before the recent release of Bundler 2.1.0, so it does not include fixes for the various new deprecation warnings that are issued by Bundler 2.1.0. If you are using one of our packaged PDK releases, your invocations of PDK should be unaffected by the new Bundler release. For gem installation users, we recommend you stay on Bundler 2.0.2 for the time being. The Bundler compatability issues will be resolved in a future PDK release.

A related release of Rubygems 3.1.1 (which vendors Bundler 2.1.0) has also been causing issues with PDK-templated Travis and Appveyor CI configurations. Specifically the PDK-templated CI configurations include a `gem update --system` step which attempts to update Rubygems and is now hanging due to Rubygems prompting for interactive confirmation. A workaround for this issue has been merged into the PDK default templates. To adopt these changes immediately, you can run:

pdk convert --template-url=https://github.com/puppetlabs/pdk-templates.git --template-ref=master

on any impacted modules. We strongly recommend you update to the latest PDK and run `pdk update` on your modules before running that command, otherwise you may encounter a large number of unrelated changes to your module.