Puppet 3.1.0-rc1 is a feature release for the 3.x series of Puppet. To see a list of the issues addressed by this release, check out the 3.1.0 version in our issue tracter at: https://projects.puppetlabs.com/versions/288 This is the first "minor" release in the Puppet 3 series. It introduces some new functionality and fixes a number of bugs, but is intended to be completely backwards-compatible with 3.0. There will be no further 3.0.x point releases, so any current Puppet 3 users should upgrade to 3.1.0. For users upgrading from a 2.x series release, please read through the [long-form Puppet 3 release notes](http://docs.puppetlabs.com/puppet/3/reference/release_notes.html) for a full list of new features, deprecations, and backwards-incompatible changes. Downloads are available at: * Source https://downloads.puppetlabs.com/puppet/puppet-3.1.0-rc1.tar.gz Available in native package format in the pre-release repositories at: http://yum.puppetlabs.com and http://apt.puppetlabs.com For information on how to enable the Puppet Labs pre-release repos, see: http://docs.puppetlabs.com/guides/puppetlabs_package_repositories.html#enabling-the-prerelease-repos Gems are available via rubygems at https://rubygems.org/downloads/puppet-3.1.0.rc1.gem or by using `gem install puppet` Mac packages are available at https://downloads.puppetlabs.com/mac/puppet-3.1.0-rc1.dmg Windows packages are available at https://downloads.puppetlabs.com/windows/puppet-3.1.0-rc1.msi Please report feedback via the Puppet Labs Redmine site, using an affected puppet version of 3.1.0-rc1: https://projects.puppetlabs.com/projects/puppet/ ==========================## Puppet 3.1.0-rc1 Contributors ## ==========================Adrien Thebo, Andrew Parker, Branan Purvine-Riley, Chris Barker, Curtis Ruck, Dave Dash, Dominic Cleal, Dustin J. Mitchell, Eric Sorenson, Erik Dalén, Garrett Honeycutt, Gary Larizza, Henrik, Henrik Lindberg, Hunter Haugen, Jeff McCune, Joachim de Groot, Josh Cooper, Lauri Tirkkonen, Mateusz Lenik, Matthaus Owens, Michael Hall, Moses Mendoza, Nick Fagerlund, Nick Lewis, Patrick Carlisle, Paul Morgan, Peter Eisentraut, Rahul Gopinath, Ryan Gozar Collins, Ryan Uber, Steven Lindberg, jmccann ===========================## Puppet 3.1.0-rc1 Release Notes ## ===========================## Headline Features ### New Ruby DSL Puppet 3 now includes a brand-new way to configure your systems: a new Puppet Ruby DSL. The Puppet Ruby DSL provides a powerful way for advanced Puppet users to write catalogs "closer to the metal" than the Puppet DSL permits. Originally written by Mateusz Lenik as a 2012 Google Summer of Code project, it''s now ready to see the light of day, backed with solid documentation and real-world use cases. Even so, please consider it experimental -- if it was semantically versioned separately from puppet, it''d be an ''0.9.x'' release. Read more here: http://docs.puppetlabs.com/puppet/3/reference/ruby_dsl.html ### Improvements When Loading Ruby Code A major area of focus for this release was loading extension code. As people wrote and distributed Faces (new puppet subcommands that extend Puppet''s capabilities), bugs like [#7316](https://projects.puppetlabs.com/issues/7316) started biting them. Additionally, seemingly simple things like retrieving configuration file settings quickly got complicated, causing problems both for Puppet Labs'' code like Cloud Provisioner as well as third-party integrations like Foreman. The upshot is that it''s now possible to fully initialize puppet when using it as a library, loading Ruby code from Forge modules works correctly, and tools like puppetlabs_spec_helper now work correctly. ### YARD API Documentation To go along with the improved usability of Puppet as a library, we''ve added [YARD documentation](http://yardoc.org) throughout the codebase. YARD generates browsable code documentation based on in-line comments. This is a first pass through the codebase but about half of it''s covered now. To use the YARD docs, simply run `gem install yard` then `yard server --nocache` from inside a puppet source code checkout (the directory containing `lib/puppet`). ### YAML Node Cache Restored on Master In 3.0.0, we inadvertently removed functionality that people relied upon to get a list of all the nodes checking into a particular puppet master. This had actually flip-flopped a few times but now it''s enabled for good, added to the test harness, and available for use as: # shell snippet export CLIENTYAML=`puppet master --configprint yamldir` puppet node search "*" --node_terminus yaml --clientyamldir $CLIENTYAML ### Other bugfixes and improvements In addition to the headline features, Puppet 3.1 includes a number of improvements and bugfixes, many of which were community-contributed -- many thanks to the community members who submitted documentation, test, and code improvements. Some of the more interesting ones follow. * The Solaris package manager now supports the `holdable` feature (aka "freezing") (#16120) * `managehome => true` now works on Oracle Enterprise Linux 6 (#18298) * `create_resources` can now create virtual and exported resources (#15081) * SRV record improvements for fileserving and certificate service (#18161, #18162) ## Complete list of bugs fixed in this release For a hyperlinked list of bugs addressed in the release, please visit the [Puppet Version 3.1.0 Roadmap](https://projects.puppetlabs.com/versions/288) page. ========================## Puppet 3.1.0-rc1 Changelog ## ========================Adrien Thebo (1): 71f70f3 (maint) remove unused attributes from transaction Andrew Parker (79): e7d3c3e (Maint) Tighten up assertion to find the cause of a flicker cfe8bd4 (Maint) Pull config file parsing into a class 6928905 (Maint) Move config file parser to its own file 0e60b11 (Maint) Create a config file parser only once 58e36f5 (Maint) Raise a Puppet ParseError instead of a RACC::ParseError cbb73d8 (Maint) Add test coverage around config file parsing 7bdd38e (Maint) Move initialize near top b232d69 (Maint) Extract class to encapsulate value translation bd07485 (Maint) Extract value translator for settings 74d70fb (Maint) Use value translator directly 2d00869 (Maint) Remove unneeded parse_file method f3d0c73 (Maint) Remove unused method sectionlist 462d9a5 (Maint) Remove code to support multiple config files 55043e3 (Maint) Clean up config file parsing eb34c6b (#7622) Deprecate and remove features.pson? f65890d (Maint) Remove unimplemented tests fa7504a (Maint) Remove unimplemented tests fa148a5 (Maint) Remove unimplemented tests a62b91a (Maint) Remove pending tests 22ab8c3 (Maint) Remove unimplemented tests d295ae8 (Maint) Remove unimplemented tests a8d9ea5 (Maint) Remove unimplemented tests 534adcc (Maint) Remove pending test b2235d7 (Maint) Remove the hiera-puppet readme 3c754b3 (Maint) Test interplay of colliding names ad3f0c8 (Maint) Stop changing internals of object during test 74df53a (#7316) Use the public API for initializing settings cc5258f (#7316) Load puppet/util as early as possible 649f7b5 (#7316) Do not try to require the application 576d07f (Maint) Remove distracting comments 042581c (#7316) Reorder subcommand handling logic 88d87cb (Maint) Extract classes to handle different subcommand types 1390fae (Maint) Remove unused instance variables 3719b81 (#7316) Clarify parameters to construct a CommandLine 46f6725 (Maint) Simplify logic to find subcommand name 7a8577d (Maint) Separate discovery of subcommand name from args e1135d6 (#7316) Document API used by CommandLine 2cf09c1 (Maint) Create a mutation preserving wrapper for CommandLine 87993c8 (#16753) Change name of ''Woy'' to ''WriteOnlyYaml'' 2027a40 (#16753) Improve test to check contents of written file cff8ef1 (#16753) Verify by using puppet node search ed07df8 (#16753) Remove use of routes file in test 067e9e0 (Maint) Clarify what the options to less are c882090 (#7316) List subcommands in a supported manner f1f7d66 (Maint) Allow creating a test file with default options 6c0ea17 (#7316) Use tempfile utilities for managing files 44edc94 (Maint) Fix syntax error in module generate template 849aaf4 (#7316) Test faces from modules using a module 23fedf2 (#7316) Do not run on windows 728fcc7 (#7316) Give test file a more descriptive name a3f7ace (#15496) Expand testing of Time serialization to cover more cases c5ee6d9 (#15496) Remove duplication of checks in ZAML tests 3d5463c (Maint) Canonization is for saints a6fba38 (Maint) Reformat collector test to make it easier to read 570297f (Maint) Change collector tests to be more intent revealing b2793b8 (#10963) Test resource collection inside a class/define 6e103be (Maint) Cleanup tests for owner to actually test the logic bb3fd8f (Maint) Cleanup tests for group to actually test the logic e885702 (Maint) Move variable closer to point of use 4bf2095 (Maint) Remove duplicate tests 7a38045 (Maint) Clarify error message for invalid group and owner c140ce5 (Maint) Show the actual allowed values for group b2204d0 (Maint) Remove duplication in parameter checking a0430b4 (#9862) Allow group to be root 006c5de (#9862) Do not manage the group if it doesn''t exist 73dfca1 (Maint) Invert logic to make it more straightforward 1cf7eca (#9862) Add acceptance test for issue 42d09d5 (Maint) Ensure tests are hitting the right ascpect f9646a8 (#9862) Promote user/group logic to first class 6d71054 (#9862) Document management of file owners and groups d531225 (#17371) Add acceptance test for applying correct privileges 0709e33 (Maint) Exclude ownership test from windows b6e4cc1 (Maint) Use string for exclusion instead of symbol 42359af (Maint) Update the supported ruby versions f39607c (Maint) Point users to mailing list and IRC 3125c13 (Maint) Remove "RVM considered harmful" 9b16379 (Maint) Remove references to ''I'' 9568988 (Maint) Create sections of information d7244e7 (Maint) Change to README.md for yard frontpage Branan Purvine-Riley (1): 2f9706c (maint) Confine pty-based test to non-Windows hosts. Chris Barker (1): f24192d Adds additional check for osx puppet group creation Curtis Ruck (1): 8b05f2a (#16137) Ensure HOME is set before attempting ~ expansion Dave Dash (1): 39d34ca Removing -e options from pip provider. Dominic Cleal (2): 0bc1a80 (#15529) Initialize app settings before all and each test 4036d92 (#17371) Re-initialize settings metadata after run_mode determined Dustin J. Mitchell (1): 28edee7 Fix a small docs typo - umounted vs. unmounted Eric Sorenson (3): 2ea29e5 (#16768) Clarify documentation about the purpose of --no-client d2c816a (#15496) Correctly determine timezone offset e0577e1 (#15496) Adds tests for our Time#to_zaml serialization Erik Dalén (7): a5b6c2a (#15989) Allow setting arity on functions 9ed6fce (#15989) Set arity on functions b1e6de2 (#15989) Tests for function arity 7af8c6e (#15081) Make virtual resources work with create_resources 51bbc2f (#4695) Puppet should not reset locale for services d5a9ad0 (#18161) Honor CA SRV record for all types of CA requests 15c4388 (#18162) Honor fileserver SRV record for file metadata requests Garrett Honeycutt (3): 5025fa5 (#18298) Make useradd use osfamily not operatingsystem fab9f76 (maint) Whitespace only cleanup of useradd provider d7bbaa2 (#18298) Use `==` not `include?` in useradd provider Gary Larizza (1): 4bfafdb [12833] Refactor directoryservice user provider Henrik (1): 1399c94 (Maint) fixing all lint warnings Henrik Lindberg (17): b22eb3c (#4388) Fix false negative test using removed authconfig setting 5a29b81 Make spec_helper manage tmpdir. 4dd67d9 (#17844) Change ''my'' to ''ruby_eval'' for evaluation in Object''s scope. ab0d104 (#17845) - Add YARD doc to [] and []= in scope (= API) 2c8fc1e (#17845) Add @since 3.0.x EXPERIMENTAL to Puppet::DSL (transitive). 882a457 Correct change of [] and []= to have additional options. 61bdb05 (yardoc) Correct @since information in the Ruby DSL files. 8703898 (yardoc) Fix Ruby DSL yardoc. bd4a566 (yardoc) Add @status (transitive) and @comment (hidden) doc tags. 1c26453 (yardoc) Refactor status for Puppet DSL; from @since to @status. 6bbec30 (#16753) Add write only YAML cache for nodes. b530a1d (#16753) Add acceptance test for write only yaml cache. 6b2ab70 (#16753) Make it possible to turn off the woy cache. 4025e44 (#16753) Fix issue with facter terminus not being set to yaml. b3bcb6d (maint) Fix spelling error in message for interrupt. a8f6b71 (#17994) Fix wrong (decimal) mode causes sticky bit to be set. 79889af (#18023) Document user facing classes using yardoc and show api. Hunter Haugen (1): a8aef51 (#10963) Collector overrides should work in Ruby 1.9 Jeff McCune (19): 58b78c8 Revert "Revert "Merge branch ''fix/3.x/7316_load_faces_from_modulepath_try3'' into 3.x"" 9b16fe0 (#7316) Add spec coverage for Puppet::Application::Master#app_defaults 3b7977a (#7316) Do not set default values for confdir and vardir in the master 217c396 Revert "Merge pull request #1190 from jeffmccune/fix/master/7316_load_faces_from_modulepath_try4" 3350feb (maint) Update mailmap for git shortlog 7174058 (#15081) Update create_resources() inline documentation 96dfb12 (maint) Add expectation pip does not use -e flag f04763a (maint) Document Puppet::Parser::Functions.newfunction 7f6adf1 Improve Puppet.version API to help automate releases f980e17 (maint) Fix spec failure in hiera_spec 62d36c9 (maint) Fix spec failure in hiera_spec try 2 4573e70 (maint) Update bundle dependencies 1227c5f (maint) Skip IPv6 examples that cannot pass on MRI 1.9.3-p327 e58102e (maint) Use conditional pending mechanism for ruby issue 7477 2c220ca Fixup use of conditional pending 3b75ad2 (maint) Add Travis CI Support 625b85f Future proof authstore ruby issue 7477 0350afd (maint) Add Travis CI support to active branches 8e38dd9 Relax gem dependencies on Facter and Hiera Joachim de Groot (1): bf901d0 Add support for DragonFly BSD. Josh Cooper (24): 7ddfcca Maint: Refactor code for loading ssl files beaea04 Maint: Cleanup order dependent test failure 386293f Maint: Fix poorly mocked test 4cbeaba Maint: Fix typo 66afb1a (#7316) Ensure changes to mutable CommandLine wrapper don''t affect ARGV bc11a77 (#7316) Restore unknown subcommand behavior b240673 (#7316) Add method to expand autoloaded paths 070cf4a (#18041) Remove Autoload.list_loaded method cdd3385 (#7316) Refactor listing and requiring of applications 38571f5 (#7316) List faces using an autoloader 4f99f25 (#7316) Append module plugin directories to $LOAD_PATH 6131fb6 (#7316) Warn if script action is reloaded 182071c (#7316) Add acceptance test for loading face from module 9fc77df Maint: Skip yaml/timezone specs on Windows 0cf232b Maint: Only validate that 6 digits of precision can be roundtripped 3bd5e67 (#15529) Initialize settings before executing puppet specs 704643b Revert "(Maint) Remove unused method sectionlist" 5b554c2 Revert "(Maint) Remove unneeded parse_file method" 19307a9 Maint: Cleanup spec test 2fe21cc Maint: Remove duplicate tests 2ec0005 (#17994) Add tests for directory creation 7e3e79d (#17994) Rework symbolic mode acceptance test 076a5d5 (#17994) Generate a new file and dir each time 8b740ef (#17994) Handle setgid bit on Solaris specially Lauri Tirkkonen (1): 49aed48 (#17861) start agent with no options on Solaris Mateusz Lenik (1): c71da18 Add new Ruby DSL by Mateusz Lenik. Matthaus Owens (5): 14a23bc (maint) Remove non-existent files from puppet.spec.erb 1d2660a (maint) Remove xargs rm on empty file list from puppet.spec.erb fbd859f Warn when using --[no-]tests flags in install.rb dd66ae9 Add postflight for OSX packages to add puppet user, group a5ebbcf Update PUPPETVERSION to 3.1.0-rc1 Michael Hall (1): 2aa2e40 Clarifying description for key attribute. Moses Mendoza (1): b73b289 (#18394) Remove puppet-queue.conf from redhat spec Nick Fagerlund (14): 5a52dd6 (#4388) Remove the dead `authconfig` setting e45fbc1 Maint: Document every terminus, especially static_compiler 96fea41 Docs: Clarify that the "puppet" filebucket is magic to the static compiler 87ee7db Maint: Remove example namespaceauth.conf files dad411e Maint: Remove outdated example puppet.conf 2f3e5eb Maint: Remove a lot of messy and ancient do-nothing code from examples 30d122d Maint: Remove conf/epm.list 604e568 Maint: Move example fileserver.conf and tagmail.conf files to conf d6b44bc Maint: Remove "ghost file" to obtain extra power from deathless wraiths 966d6ab Maint: Remove mac_dscl and pkgdmg examples f2505b9 Maint: Remove sample_module example 1fbb4dc (#17448/#17449/#18045) Update fileserver.conf and auth.conf examples c43cb68 Maint: Improve example tagmail.conf file with comments ade52f7 Maint: Remove example puppet-queue.conf file Nick Lewis (1): 57e1db0 Keep Scope#[]/[]= signatures the same as lookupvar/setvar Patrick Carlisle (10): af4f755 Whitespace and formatting cleanups 368587a Don''t remove validate_arguments from backtraces a0bb51b Get YARD for the Puppet module to show up correctly. 72307e1 Fix Puppet::Parser::Functions.arity 0947915 Flesh out documentation for Puppet::Parser::Functions 67d6b6f Add docs for lookupvar a576f25 Begin exposing Puppet::Type as public API. 314b506 (#18023) Preliminary YARD docs for Faces 59c8729 (Maint) Only show YARD docs for methods tagged with @api 7490e18 (Maint) Use --api instead of generic --query in yardopts Paul Morgan (1): a58e4db tagmail: s/reportform/reportfrom/ Peter Eisentraut (1): c018d2d Make envpuppet print warning to stderr Rahul Gopinath (2): 24dce7c (#16120) ips package provider gets feature holdable. ba3c2a9 (#16120) ips package provider gets feature holdable. Ryan ''Gozar'' Collins (1): 33a398a Bug #17898 - pkgdmg provider broken since version 2.7.13 under OS X 10.5 Leopard http://projects.puppetlabs.com/issues/17898 Ryan Uber (1): d3f6f67 Fix for logdir perms regression in puppet.spec.erb (#17866) Steven Lindberg (1): 7825e9d (#7962) Added description of ''duration'' settings format. jmccann (1): 0f408e9 (#16112) Add Augeas clearm command support -- 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.
Eric Sorenson
2013-Jan-09 23:56 UTC
[Puppet Users] Re: Announce: Puppet 3.1.0-rc1 available
Hi all, I screwed up and didn''t give haus the latest version of the release notes before the release ship sailed -- just a couple of tweaks below that will be important if you want to browse the YARD api docs: # Puppet 3.1 Release Notes ## A word about versioning This is the first "minor" release in the Puppet 3 series. It introduces some new functionality and fixes a number of bugs, but is intended to be completely backwards-compatible with 3.0. There will be no further 3.0.x point releases, so any current Puppet 3 users should upgrade to 3.1.0. For users upgrading from a 2.x series release, please read through the [long-form Puppet 3 release notes](http://docs.puppetlabs.com/puppet/3/reference/release_notes.html) for a full list of new features, deprecations, and backwards-incompatible changes. ## Headline Features ### New Ruby DSL Puppet 3 now includes a brand-new way to configure your systems: a new Puppet Ruby DSL. The Puppet Ruby DSL provides a powerful way for advanced Puppet users to write catalogs "closer to the metal" than the Puppet DSL permits. Originally written by Mateusz Lenik as a 2012 Google Summer of Code project, it''s now ready to see the light of day, backed with solid documentation and real-world use cases. Even so, please consider it experimental -- if it was semantically versioned separately from puppet, it''d be an ''0.9.x'' release. Read more here: http://docs.puppetlabs.com/puppet/3/reference/ruby_dsl.html ### Improvements When Loading Ruby Code A major area of focus for this release was loading extension code. As people wrote and distributed Faces (new puppet subcommands that extend Puppet''s capabilities), bugs like [#7316](https://projects.puppetlabs.com/issues/7316) started biting them. Additionally, seemingly simple things like retrieving configuration file settings quickly got complicated, causing problems both for Puppet Labs'' code like Cloud Provisioner as well as third-party integrations like Foreman. The upshot is that it''s now possible to fully initialize puppet when using it as a library, loading Ruby code from Forge modules works correctly, and tools like puppetlabs_spec_helper now work correctly. ### YARD API Documentation To go along with the improved usability of Puppet as a library, we''ve added [YARD documentation](http://yardoc.org) through selected parts of the codebase. YARD generates browsable code documentation based on in-line comments. This is a first pass through the codebase but about half of it''s covered now. To use the YARD docs, simply run `gem install yard` then `yard server` from inside a puppet source code checkout (the directory containing `lib/puppet`). ### YAML Node Cache Restored on Master In 3.0.0, we inadvertently removed functionality that people relied upon to get a list of all the nodes checking into a particular puppet master (#16753). This had actually flip-flopped a few times but now it''s enabled for good, added to the test harness, and available for use as: # shell snippet export CLIENTYAML=`puppet master --configprint yamldir` puppet node search "*" --node_terminus yaml --clientyamldir $CLIENTYAML ### Other bugfixes and improvements In addition to the headline features, Puppet 3.1 includes a number of improvements and bugfixes, many of which were community-contributed -- many thanks to the community members who submitted documentation, test, and code improvements. Some of the more interesting ones follow. * The Solaris package manager now supports the `holdable` feature (aka "freezing") (#16120) * `managehome => true` now works on Oracle Enterprise Linux 6 (#18298) * `create_resources` can now create virtual and exported resources (#15081) * SRV record improvements for fileserving and certificate service (#18161, #18162) ## Complete list of bugs fixed in this release For a hyperlinked list of bugs addressed in the release, please visit the [Puppet Version 3.1.0 Roadmap](https://projects.puppetlabs.com/versions/288) page. On Jan 9, 2013, at 2:57 PM, Matthaus Owens wrote:> Puppet 3.1.0-rc1 is a feature release for the 3.x series of Puppet. To > see a list of the issues addressed by this release, check out the > 3.1.0 version in our issue tracter at: > https://projects.puppetlabs.com/versions/288 > > This is the first "minor" release in the Puppet 3 series. It > introduces some new functionality and fixes a number of bugs, but is > intended to be completely backwards-compatible with 3.0. There will be > no further 3.0.x point releases, so any current Puppet 3 users should > upgrade to 3.1.0. For users upgrading from a 2.x series release, > please read through the [long-form Puppet 3 release > notes](http://docs.puppetlabs.com/puppet/3/reference/release_notes.html) > for a full list of new features, deprecations, and > backwards-incompatible changes. > > Downloads are available at: > * Source https://downloads.puppetlabs.com/puppet/puppet-3.1.0-rc1.tar.gz > > Available in native package format in the pre-release repositories at: > http://yum.puppetlabs.com and http://apt.puppetlabs.com > > For information on how to enable the Puppet Labs pre-release repos, see: > http://docs.puppetlabs.com/guides/puppetlabs_package_repositories.html#enabling-the-prerelease-repos > > Gems are available via rubygems at > https://rubygems.org/downloads/puppet-3.1.0.rc1.gem > or by using `gem install puppet` > > Mac packages are available at > https://downloads.puppetlabs.com/mac/puppet-3.1.0-rc1.dmg > > Windows packages are available at > https://downloads.puppetlabs.com/windows/puppet-3.1.0-rc1.msi > > Please report feedback via the Puppet Labs Redmine site, using an > affected puppet version of 3.1.0-rc1: > https://projects.puppetlabs.com/projects/puppet/ > > ==========================> ## Puppet 3.1.0-rc1 Contributors ## > ==========================> Adrien Thebo, Andrew Parker, Branan Purvine-Riley, Chris Barker, > Curtis Ruck, Dave Dash, Dominic Cleal, Dustin J. Mitchell, Eric > Sorenson, Erik Dalén, Garrett Honeycutt, Gary Larizza, Henrik, Henrik > Lindberg, Hunter Haugen, Jeff McCune, Joachim de Groot, Josh Cooper, > Lauri Tirkkonen, Mateusz Lenik, Matthaus Owens, Michael Hall, Moses > Mendoza, Nick Fagerlund, Nick Lewis, Patrick Carlisle, Paul Morgan, > Peter Eisentraut, Rahul Gopinath, Ryan Gozar Collins, Ryan Uber, > Steven Lindberg, jmccann > > ===========================> ## Puppet 3.1.0-rc1 Release Notes ## > ===========================> ## Headline Features > > ### New Ruby DSL > > Puppet 3 now includes a brand-new way to configure your systems: a new > Puppet Ruby DSL. The Puppet Ruby DSL provides a powerful way for > advanced Puppet users to write catalogs "closer to the metal" than the > Puppet DSL permits. Originally written by Mateusz Lenik as a 2012 > Google Summer of Code project, it''s now ready to see the light of day, > backed with solid documentation and real-world use cases. Even so, > please consider it experimental -- if it was semantically versioned > separately from puppet, it''d be an ''0.9.x'' release. > > Read more here: http://docs.puppetlabs.com/puppet/3/reference/ruby_dsl.html > > ### Improvements When Loading Ruby Code > > A major area of focus for this release was loading extension code. As > people wrote and distributed Faces (new puppet subcommands that extend > Puppet''s capabilities), bugs like > [#7316](https://projects.puppetlabs.com/issues/7316) started biting > them. Additionally, seemingly simple things like retrieving > configuration file settings quickly got complicated, causing problems > both for Puppet Labs'' code like Cloud Provisioner as well as > third-party integrations like Foreman. The upshot is that it''s now > possible to fully initialize puppet when using it as a library, > loading Ruby code from Forge modules works correctly, and tools like > puppetlabs_spec_helper now work correctly. > > ### YARD API Documentation > > To go along with the improved usability of Puppet as a library, we''ve > added [YARD documentation](http://yardoc.org) throughout the codebase. > YARD generates browsable code documentation based on in-line comments. > This is a first pass through the codebase but about half of it''s > covered now. To use the YARD docs, simply run `gem install yard` then > `yard server --nocache` from inside a puppet source code checkout (the > directory containing `lib/puppet`). > > ### YAML Node Cache Restored on Master > > In 3.0.0, we inadvertently removed functionality that people relied > upon to get a list of all the nodes checking into a particular puppet > master. This had actually flip-flopped a few times but now it''s > enabled for good, added to the test harness, and available for use as: > > # shell snippet > export CLIENTYAML=`puppet master --configprint yamldir` > puppet node search "*" --node_terminus yaml --clientyamldir $CLIENTYAML > > ### Other bugfixes and improvements > > In addition to the headline features, Puppet 3.1 includes a number of > improvements and bugfixes, many of which were community-contributed -- > many thanks to the community members who submitted documentation, > test, and code improvements. Some of the more interesting ones follow. > > * The Solaris package manager now supports the `holdable` feature (aka > "freezing") (#16120) > * `managehome => true` now works on Oracle Enterprise Linux 6 (#18298) > * `create_resources` can now create virtual and exported resources (#15081) > * SRV record improvements for fileserving and certificate service > (#18161, #18162) > > ## Complete list of bugs fixed in this release > > For a hyperlinked list of bugs addressed in the release, please visit > the [Puppet Version 3.1.0 > Roadmap](https://projects.puppetlabs.com/versions/288) page. > > ========================> ## Puppet 3.1.0-rc1 Changelog ## > ========================> Adrien Thebo (1): > 71f70f3 (maint) remove unused attributes from transaction > > Andrew Parker (79): > e7d3c3e (Maint) Tighten up assertion to find the cause of a flicker > cfe8bd4 (Maint) Pull config file parsing into a class > 6928905 (Maint) Move config file parser to its own file > 0e60b11 (Maint) Create a config file parser only once > 58e36f5 (Maint) Raise a Puppet ParseError instead of a RACC::ParseError > cbb73d8 (Maint) Add test coverage around config file parsing > 7bdd38e (Maint) Move initialize near top > b232d69 (Maint) Extract class to encapsulate value translation > bd07485 (Maint) Extract value translator for settings > 74d70fb (Maint) Use value translator directly > 2d00869 (Maint) Remove unneeded parse_file method > f3d0c73 (Maint) Remove unused method sectionlist > 462d9a5 (Maint) Remove code to support multiple config files > 55043e3 (Maint) Clean up config file parsing > eb34c6b (#7622) Deprecate and remove features.pson? > f65890d (Maint) Remove unimplemented tests > fa7504a (Maint) Remove unimplemented tests > fa148a5 (Maint) Remove unimplemented tests > a62b91a (Maint) Remove pending tests > 22ab8c3 (Maint) Remove unimplemented tests > d295ae8 (Maint) Remove unimplemented tests > a8d9ea5 (Maint) Remove unimplemented tests > 534adcc (Maint) Remove pending test > b2235d7 (Maint) Remove the hiera-puppet readme > 3c754b3 (Maint) Test interplay of colliding names > ad3f0c8 (Maint) Stop changing internals of object during test > 74df53a (#7316) Use the public API for initializing settings > cc5258f (#7316) Load puppet/util as early as possible > 649f7b5 (#7316) Do not try to require the application > 576d07f (Maint) Remove distracting comments > 042581c (#7316) Reorder subcommand handling logic > 88d87cb (Maint) Extract classes to handle different subcommand types > 1390fae (Maint) Remove unused instance variables > 3719b81 (#7316) Clarify parameters to construct a CommandLine > 46f6725 (Maint) Simplify logic to find subcommand name > 7a8577d (Maint) Separate discovery of subcommand name from args > e1135d6 (#7316) Document API used by CommandLine > 2cf09c1 (Maint) Create a mutation preserving wrapper for CommandLine > 87993c8 (#16753) Change name of ''Woy'' to ''WriteOnlyYaml'' > 2027a40 (#16753) Improve test to check contents of written file > cff8ef1 (#16753) Verify by using puppet node search > ed07df8 (#16753) Remove use of routes file in test > 067e9e0 (Maint) Clarify what the options to less are > c882090 (#7316) List subcommands in a supported manner > f1f7d66 (Maint) Allow creating a test file with default options > 6c0ea17 (#7316) Use tempfile utilities for managing files > 44edc94 (Maint) Fix syntax error in module generate template > 849aaf4 (#7316) Test faces from modules using a module > 23fedf2 (#7316) Do not run on windows > 728fcc7 (#7316) Give test file a more descriptive name > a3f7ace (#15496) Expand testing of Time serialization to cover more cases > c5ee6d9 (#15496) Remove duplication of checks in ZAML tests > 3d5463c (Maint) Canonization is for saints > a6fba38 (Maint) Reformat collector test to make it easier to read > 570297f (Maint) Change collector tests to be more intent revealing > b2793b8 (#10963) Test resource collection inside a class/define > 6e103be (Maint) Cleanup tests for owner to actually test the logic > bb3fd8f (Maint) Cleanup tests for group to actually test the logic > e885702 (Maint) Move variable closer to point of use > 4bf2095 (Maint) Remove duplicate tests > 7a38045 (Maint) Clarify error message for invalid group and owner > c140ce5 (Maint) Show the actual allowed values for group > b2204d0 (Maint) Remove duplication in parameter checking > a0430b4 (#9862) Allow group to be root > 006c5de (#9862) Do not manage the group if it doesn''t exist > 73dfca1 (Maint) Invert logic to make it more straightforward > 1cf7eca (#9862) Add acceptance test for issue > 42d09d5 (Maint) Ensure tests are hitting the right ascpect > f9646a8 (#9862) Promote user/group logic to first class > 6d71054 (#9862) Document management of file owners and groups > d531225 (#17371) Add acceptance test for applying correct privileges > 0709e33 (Maint) Exclude ownership test from windows > b6e4cc1 (Maint) Use string for exclusion instead of symbol > 42359af (Maint) Update the supported ruby versions > f39607c (Maint) Point users to mailing list and IRC > 3125c13 (Maint) Remove "RVM considered harmful" > 9b16379 (Maint) Remove references to ''I'' > 9568988 (Maint) Create sections of information > d7244e7 (Maint) Change to README.md for yard frontpage > > Branan Purvine-Riley (1): > 2f9706c (maint) Confine pty-based test to non-Windows hosts. > > Chris Barker (1): > f24192d Adds additional check for osx puppet group creation > > Curtis Ruck (1): > 8b05f2a (#16137) Ensure HOME is set before attempting ~ expansion > > Dave Dash (1): > 39d34ca Removing -e options from pip provider. > > Dominic Cleal (2): > 0bc1a80 (#15529) Initialize app settings before all and each test > 4036d92 (#17371) Re-initialize settings metadata after run_mode determined > > Dustin J. Mitchell (1): > 28edee7 Fix a small docs typo - umounted vs. unmounted > > Eric Sorenson (3): > 2ea29e5 (#16768) Clarify documentation about the purpose of --no-client > d2c816a (#15496) Correctly determine timezone offset > e0577e1 (#15496) Adds tests for our Time#to_zaml serialization > > Erik Dalén (7): > a5b6c2a (#15989) Allow setting arity on functions > 9ed6fce (#15989) Set arity on functions > b1e6de2 (#15989) Tests for function arity > 7af8c6e (#15081) Make virtual resources work with create_resources > 51bbc2f (#4695) Puppet should not reset locale for services > d5a9ad0 (#18161) Honor CA SRV record for all types of CA requests > 15c4388 (#18162) Honor fileserver SRV record for file metadata requests > > Garrett Honeycutt (3): > 5025fa5 (#18298) Make useradd use osfamily not operatingsystem > fab9f76 (maint) Whitespace only cleanup of useradd provider > d7bbaa2 (#18298) Use `==` not `include?` in useradd provider > > Gary Larizza (1): > 4bfafdb [12833] Refactor directoryservice user provider > > Henrik (1): > 1399c94 (Maint) fixing all lint warnings > > Henrik Lindberg (17): > b22eb3c (#4388) Fix false negative test using removed authconfig setting > 5a29b81 Make spec_helper manage tmpdir. > 4dd67d9 (#17844) Change ''my'' to ''ruby_eval'' for evaluation in > Object''s scope. > ab0d104 (#17845) - Add YARD doc to [] and []= in scope (= API) > 2c8fc1e (#17845) Add @since 3.0.x EXPERIMENTAL to Puppet::DSL > (transitive). > 882a457 Correct change of [] and []= to have additional options. > 61bdb05 (yardoc) Correct @since information in the Ruby DSL files. > 8703898 (yardoc) Fix Ruby DSL yardoc. > bd4a566 (yardoc) Add @status (transitive) and @comment (hidden) doc tags. > 1c26453 (yardoc) Refactor status for Puppet DSL; from @since to @status. > 6bbec30 (#16753) Add write only YAML cache for nodes. > b530a1d (#16753) Add acceptance test for write only yaml cache. > 6b2ab70 (#16753) Make it possible to turn off the woy cache. > 4025e44 (#16753) Fix issue with facter terminus not being set to yaml. > b3bcb6d (maint) Fix spelling error in message for interrupt. > a8f6b71 (#17994) Fix wrong (decimal) mode causes sticky bit to be set. > 79889af (#18023) Document user facing classes using yardoc and show api. > > Hunter Haugen (1): > a8aef51 (#10963) Collector overrides should work in Ruby 1.9 > > Jeff McCune (19): > 58b78c8 Revert "Revert "Merge branch > ''fix/3.x/7316_load_faces_from_modulepath_try3'' into 3.x"" > 9b16fe0 (#7316) Add spec coverage for > Puppet::Application::Master#app_defaults > 3b7977a (#7316) Do not set default values for confdir and vardir > in the master > 217c396 Revert "Merge pull request #1190 from > jeffmccune/fix/master/7316_load_faces_from_modulepath_try4" > 3350feb (maint) Update mailmap for git shortlog > 7174058 (#15081) Update create_resources() inline documentation > 96dfb12 (maint) Add expectation pip does not use -e flag > f04763a (maint) Document Puppet::Parser::Functions.newfunction > 7f6adf1 Improve Puppet.version API to help automate releases > f980e17 (maint) Fix spec failure in hiera_spec > 62d36c9 (maint) Fix spec failure in hiera_spec try 2 > 4573e70 (maint) Update bundle dependencies > 1227c5f (maint) Skip IPv6 examples that cannot pass on MRI 1.9.3-p327 > e58102e (maint) Use conditional pending mechanism for ruby issue 7477 > 2c220ca Fixup use of conditional pending > 3b75ad2 (maint) Add Travis CI Support > 625b85f Future proof authstore ruby issue 7477 > 0350afd (maint) Add Travis CI support to active branches > 8e38dd9 Relax gem dependencies on Facter and Hiera > > Joachim de Groot (1): > bf901d0 Add support for DragonFly BSD. > > Josh Cooper (24): > 7ddfcca Maint: Refactor code for loading ssl files > beaea04 Maint: Cleanup order dependent test failure > 386293f Maint: Fix poorly mocked test > 4cbeaba Maint: Fix typo > 66afb1a (#7316) Ensure changes to mutable CommandLine wrapper > don''t affect ARGV > bc11a77 (#7316) Restore unknown subcommand behavior > b240673 (#7316) Add method to expand autoloaded paths > 070cf4a (#18041) Remove Autoload.list_loaded method > cdd3385 (#7316) Refactor listing and requiring of applications > 38571f5 (#7316) List faces using an autoloader > 4f99f25 (#7316) Append module plugin directories to $LOAD_PATH > 6131fb6 (#7316) Warn if script action is reloaded > 182071c (#7316) Add acceptance test for loading face from module > 9fc77df Maint: Skip yaml/timezone specs on Windows > 0cf232b Maint: Only validate that 6 digits of precision can be > roundtripped > 3bd5e67 (#15529) Initialize settings before executing puppet specs > 704643b Revert "(Maint) Remove unused method sectionlist" > 5b554c2 Revert "(Maint) Remove unneeded parse_file method" > 19307a9 Maint: Cleanup spec test > 2fe21cc Maint: Remove duplicate tests > 2ec0005 (#17994) Add tests for directory creation > 7e3e79d (#17994) Rework symbolic mode acceptance test > 076a5d5 (#17994) Generate a new file and dir each time > 8b740ef (#17994) Handle setgid bit on Solaris specially > > Lauri Tirkkonen (1): > 49aed48 (#17861) start agent with no options on Solaris > > Mateusz Lenik (1): > c71da18 Add new Ruby DSL by Mateusz Lenik. > > Matthaus Owens (5): > 14a23bc (maint) Remove non-existent files from puppet.spec.erb > 1d2660a (maint) Remove xargs rm on empty file list from puppet.spec.erb > fbd859f Warn when using --[no-]tests flags in install.rb > dd66ae9 Add postflight for OSX packages to add puppet user, group > a5ebbcf Update PUPPETVERSION to 3.1.0-rc1 > > Michael Hall (1): > 2aa2e40 Clarifying description for key attribute. > > Moses Mendoza (1): > b73b289 (#18394) Remove puppet-queue.conf from redhat spec > > Nick Fagerlund (14): > 5a52dd6 (#4388) Remove the dead `authconfig` setting > e45fbc1 Maint: Document every terminus, especially static_compiler > 96fea41 Docs: Clarify that the "puppet" filebucket is magic to > the static compiler > 87ee7db Maint: Remove example namespaceauth.conf files > dad411e Maint: Remove outdated example puppet.conf > 2f3e5eb Maint: Remove a lot of messy and ancient do-nothing code > from examples > 30d122d Maint: Remove conf/epm.list > 604e568 Maint: Move example fileserver.conf and tagmail.conf files to conf > d6b44bc Maint: Remove "ghost file" to obtain extra power from > deathless wraiths > 966d6ab Maint: Remove mac_dscl and pkgdmg examples > f2505b9 Maint: Remove sample_module example > 1fbb4dc (#17448/#17449/#18045) Update fileserver.conf and > auth.conf examples > c43cb68 Maint: Improve example tagmail.conf file with comments > ade52f7 Maint: Remove example puppet-queue.conf file > > Nick Lewis (1): > 57e1db0 Keep Scope#[]/[]= signatures the same as lookupvar/setvar > > Patrick Carlisle (10): > af4f755 Whitespace and formatting cleanups > 368587a Don''t remove validate_arguments from backtraces > a0bb51b Get YARD for the Puppet module to show up correctly. > 72307e1 Fix Puppet::Parser::Functions.arity > 0947915 Flesh out documentation for Puppet::Parser::Functions > 67d6b6f Add docs for lookupvar > a576f25 Begin exposing Puppet::Type as public API. > 314b506 (#18023) Preliminary YARD docs for Faces > 59c8729 (Maint) Only show YARD docs for methods tagged with @api > 7490e18 (Maint) Use --api instead of generic --query in yardopts > > Paul Morgan (1): > a58e4db tagmail: s/reportform/reportfrom/ > > Peter Eisentraut (1): > c018d2d Make envpuppet print warning to stderr > > Rahul Gopinath (2): > 24dce7c (#16120) ips package provider gets feature holdable. > ba3c2a9 (#16120) ips package provider gets feature holdable. > > Ryan ''Gozar'' Collins (1): > 33a398a Bug #17898 - pkgdmg provider broken since version 2.7.13 > under OS X 10.5 Leopard http://projects.puppetlabs.com/issues/17898 > > Ryan Uber (1): > d3f6f67 Fix for logdir perms regression in puppet.spec.erb (#17866) > > Steven Lindberg (1): > 7825e9d (#7962) Added description of ''duration'' settings format. > > jmccann (1): > 0f408e9 (#16112) Add Augeas clearm command support > > -- > You received this message because you are subscribed to the Google Groups "Puppet Developers" group. > To post to this group, send email to puppet-dev@googlegroups.com. > To unsubscribe from this group, send email to puppet-dev+unsubscribe@googlegroups.com. > For more options, visit this group at http://groups.google.com/group/puppet-dev?hl=en. >Eric Sorenson - eric.sorenson@puppetlabs.com #puppet irc: eric0 -- 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.
This bug is impacting Puppet 3.1.0-rc1. I posted one possible solution. https://projects.puppetlabs.com/issues/18026 -- You received this message because you are subscribed to the Google Groups "Puppet Users" group. To view this discussion on the web visit https://groups.google.com/d/msg/puppet-users/-/AEYqCi9XwUoJ. 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.