**Not yet released.** Entered RC1 on March 14, 2014.
3.5.0 is a backward-compatible features and fixes release in the Puppet 3
series. The biggest things in this release are:
* Better support for dynamic environments
* A cleaner replacement for the classic `import nodes/*.pp` pattern
* Scriptable configuration with a new `puppet config set` command
* A new global `$facts` hash
* Early support for hashes and arrays in fact values
* Improvements to the future parser
* Support for RHEL 7, Ruby 2.1, and Facter 2.0
...along with the usual flurry of smaller improvements and bug fixes.
How to Upgrade
-----
If you're upgrading from a 3.x version of Puppet, you can usually just go
for it. Upgrade your puppet master servers before upgrading the agents they
serve. (But do look at the table of contents above and see if there are any
"Upgrade Warning" notes for the new version.)
If you're upgrading from Puppet 2.x, please learn about major upgrades of
Puppet first (http://docs.puppetlabs.com/guides/upgrading.html)! We have
important advice about upgrade plans and package management practices. The
short version is: test first, roll out in stages, give yourself plenty of
time to work with. Also, read the release notes for Puppet 3 (
http://docs.puppetlabs.com/puppet/3/reference/release_notes.html) for a
list of all the breaking changes made between the 2.x and 3.x series.
What's New?
-----
### Dynamic Environments
Lots of people have been using dynamic temporary environments based on VCS
checkouts to test and roll out their Puppet code, as described in this
classic blog post (
http://puppetlabs.com/blog/git-workflow-and-puppet-environments). This
pattern is great, but it pretty much works by accident, so we wanted a
better way to support it.
Now we have one! The short version is:
* Create a `$confdir/environments` directory on your puppet master.
* Each new environment is a subdirectory of that directory. The name of the
directory will become the name of the environment.
* Each environment dir contains a `modules` directory and a `manifests`
directory.
* The `modules` directory will get stuck in front of the `modulepath`.
* The `manifests` directory will be used as the `manifest` setting (see
"Auto-Import" below).
* No other configuration is needed. Puppet will automatically discover
environments.
So basically, you do a `git clone` or `git-new-workdir` in your
`environments` directory, and nodes can immediately start requesting
catalogs in that environment.
This feature isn't quite finished yet: it's missing the ability to set
the
`config_version` setting per-environment, which is something we're hoping
to add in 3.6. But depending on what you're doing, it's probably good
enough to start using today.
For full details, see the reference page about simple environments and the
reference page about the modulepath
Related issues:
- [PUP-1574: Using new directory environments with puppet apply prevents
evaluation of the manifest requested on the commandline.](
https://tickets.puppetlabs.com/browse/PUP-1574)
- [PUP-1584: Puppet module tool should work with new directory
environments](https://tickets.puppetlabs.com/browse/PUP-1584)
- [PUP-536: Create endpoint for enumerating environments](
https://tickets.puppetlabs.com/browse/PUP-536)
- [PUP-1551: Change from "environmentdir" to
"environmentpath"](
https://tickets.puppetlabs.com/browse/PUP-1551)
- [PUP-1118: Support an $environmentsdir setting](
https://tickets.puppetlabs.com/browse/PUP-1118)
- [PUP-1151: List information for known environments via REST](
https://tickets.puppetlabs.com/browse/PUP-1151)
- [PUP-1676: Puppet config print respects legacy but not directory
environments](https://tickets.puppetlabs.com/browse/PUP-1676)
- [PUP-1678: Environment Endpoint should show configuration and not all
modules](https://tickets.puppetlabs.com/browse/PUP-1678)
- [PUP-1735: Puppet::Node::Environment.current should reroute with
deprecation warning](https://tickets.puppetlabs.com/browse/PUP-1735)
### Auto-Import (Use a Directory as Main Manifest)
You can now set the `manifest` setting to a directory instead of a single
file. (E.g. `manifest = $confdir/manifests`) If you do, the puppet master
will parse every `.pp` file in that directory in alphabetical order
(without descending into subdirectories) and use the whole set as the site
manifest. Similarly, you can give puppet apply a directory as its argument,
and it'll do the same thing.
We did this because:
* `import` is horrible...
* ...but the `import nodes/*.pp` pattern is good.
Lots of people like to use node definitions and keep every node in a
separate file. In Puppet 3.4 and earlier, this meant putting an `import`
statement in puppet.conf and storing the node files in another directory.
Now, you can just put all your nodes in the main manifest dir and point the
`manifest` setting at it.
And since this was the last real reason to use `import`, we can deprecate
it now! (See "Deprecations and Removals" below.)
See the page about the manifest directory for more details.
Related issues:
- [PUP-865: Provide a manifest directory where all manifests are
automatically parsed.](https://tickets.puppetlabs.com/browse/PUP-865)
### Scriptable Configuration (`puppet config set`)
You can now change Puppet's settings without parsing the config file, using
the `puppet config set` command. This is mostly useful for configuring
Puppet as part of your provisioning process, but can be convenient for
one-off changes as well.
Related issues:
- [PUP-663: Set an entry in puppet.conf](
https://tickets.puppetlabs.com/browse/PUP-663)
- [PUP-665: Select a section](https://tickets.puppetlabs.com/browse/PUP-665)
### Global `$facts` Hash
You have to manually enable this (along with the `$trusted` hash) by
setting `trusted_node_data = true` in puppet.conf on your puppet master(s).
It'll be on by default in Puppet 4.
In addition to using `$fact_name`, you can now use `$facts[fact_name]` to
get a fact value. The `$facts` hash is protected and can't be overridden
locally, so you won't need the `$::` idiom when using this.
Our hope is that this will visibly distinguish facts from normal variables,
make Puppet code more readable, and eventually clean up the global variable
namespace. (That'll take a while, though --- we probably won't be able
to
disable `$fact_name` until, like, Puppet 5.)
Related issues:
- [PUP-542: Provide access to all facts in a single structure](
https://tickets.puppetlabs.com/browse/PUP-542)
### Structured Facts (Early Version)
You have to manually enable this by setting `stringify_facts = false` in
puppet.conf on your puppet master(s). It'll be enabled by default in Puppet
4.
In Facter 2.0 and later, fact values can be any data type, including
hashes, arrays, and booleans. (This is a change from Facter 1.7, where
facts could only be strings.) If you enable structured facts in Puppet, you
can do more cool stuff in your manifests and templates with any facts that
use this new feature.
These are the early days of structured facts support --- they work in
Puppet and Facter now, but none of the built-in facts use data structures
yet, and external systems like PuppetDB haven't yet been updated to take
advantage of them. (Any structured facts will still get smooshed into
strings when they're sent to PuppetDB.) But if you have a use for hashes or
arrays in your custom facts, turn this on and give it a try.
### Future Parser is Faster and Better
We think the future parser (
http://docs.puppetlabs.com/puppet/3/reference/experiments_future.html) is
fast enough to use in a large environment now --- we haven't done extensive
benchmarking with real-life manifests, but the testing we've done suggests
it's about on par with the default parser. So if you've been waiting to
try
it out, give it a spin and let us know how it goes.
It also has some new tricks in this release:
* HEREDOCs are now allowed! This is a much more convenient way to handle
large strings.
* A new template language was added, based on the Puppet language instead
of on Ruby.
* There's a new "future" evaluator that goes along with the future
parser.
Related issues:
- [PUP-490: Remove partially implemented support for 'import'](
https://tickets.puppetlabs.com/browse/PUP-490)
- [PUP-527: Validate collect expressions (future parser)](
https://tickets.puppetlabs.com/browse/PUP-527)
- [PUP-798: New Evaluator does not cache parse results](
https://tickets.puppetlabs.com/browse/PUP-798)
- [PUP-800: Complete implementation of Location handling](
https://tickets.puppetlabs.com/browse/PUP-800)
- [PUP-939: add support for enumerable type(s) in all iterative functions](
https://tickets.puppetlabs.com/browse/PUP-939)
- [PUP-954: Correct Type System Flaws](
https://tickets.puppetlabs.com/browse/PUP-954)
- [PUP-992: Relationship expression artificially denies arrays as operands](
https://tickets.puppetlabs.com/browse/PUP-992)
- [PUP-994: Future evaluator should unique relationship operands](
https://tickets.puppetlabs.com/browse/PUP-994)
- [PUP-1029: filter function should accept two parameters](
https://tickets.puppetlabs.com/browse/PUP-1029)
- [PUP-1176: Add feature switch for evaluator](
https://tickets.puppetlabs.com/browse/PUP-1176)
- [PUP-1212: runtime errors in future evaluator has uninformative
backtrace](https://tickets.puppetlabs.com/browse/PUP-1212)
- [PUP-1234: each function broken after upgrading to 3.4](
https://tickets.puppetlabs.com/browse/PUP-1234)
- [PUP-1247: Enabling --parser future causes classes to be not found and
other errors](https://tickets.puppetlabs.com/browse/PUP-1247)
- [PUP-1579: Rename Literal Type to Scalar](
https://tickets.puppetlabs.com/browse/PUP-1579)
- [PUP-486: Add subtype of String](
https://tickets.puppetlabs.com/browse/PUP-486)
- [PUP-491: Implement a 4x validator](
https://tickets.puppetlabs.com/browse/PUP-491)
- [PUP-502: Implement evaluation of 'definitions'](
https://tickets.puppetlabs.com/browse/PUP-502)
- [PUP-792: Merge Feature Branch New Evaluator](
https://tickets.puppetlabs.com/browse/PUP-792)
- [PUP-1619: Add Tuple and Struct types to the type system](
https://tickets.puppetlabs.com/browse/PUP-1619)
- [PUP-644: PR (2020): (#21873) Make `name[x]` different from `name [x]` -
hlindberg](https://tickets.puppetlabs.com/browse/PUP-644)
- [PUP-910: 3x functions do not know how to handle new data types](
https://tickets.puppetlabs.com/browse/PUP-910)
- [PUP-979: future parser fails to recognize hash as parameter in
un-parenthesized calls](https://tickets.puppetlabs.com/browse/PUP-979)
- [PUP-1220: dynamic variable lookup works in templates](
https://tickets.puppetlabs.com/browse/PUP-1220)
- [PUP-1576: New Parser does not handle hyphenated barewords](
https://tickets.puppetlabs.com/browse/PUP-1576)
- [PUP-1814: Double backslashes in single quote strings should be
interpreted as single](https://tickets.puppetlabs.com/browse/PUP-1814)
- [PUP-1897: EPP ignores code after parameter declaration](
https://tickets.puppetlabs.com/browse/PUP-1897)
- [PUP-1898: EPP - Error when trying to report argument error in
inline_epp](https://tickets.puppetlabs.com/browse/PUP-1898)
- [PUP-28: Add heredoc support in future parser](
https://tickets.puppetlabs.com/browse/PUP-28)
- [PUP-30: Support Puppet Templates](
https://tickets.puppetlabs.com/browse/PUP-30)
- [PUP-473: Add support for \u for unicode chars in strings](
https://tickets.puppetlabs.com/browse/PUP-473)
- [PUP-479: Handle types other than string as hash key](
https://tickets.puppetlabs.com/browse/PUP-479)
- [PUP-482: Handle Comparisons / Equality a consistent way](
https://tickets.puppetlabs.com/browse/PUP-482)
- [PUP-483: Handle Match in useful and consistent way](
https://tickets.puppetlabs.com/browse/PUP-483)
- [PUP-487: Decide on 'in' operator vs. '=='](
https://tickets.puppetlabs.com/browse/PUP-487)
- [PUP-489: Handle += / -= with consistent semantics](
https://tickets.puppetlabs.com/browse/PUP-489)
- [PUP-525: Support Regular Expression as data type (an issue of encoding)](
https://tickets.puppetlabs.com/browse/PUP-525)
- [PUP-1895: EPP - Define parameters with `<% |$x| %>` instead of `<%
($x)
%>`](https://tickets.puppetlabs.com/browse/PUP-1895)
### Platform Support Updates
Newly supported:
* Puppet now supports RHEL 7, with packages and acceptance testing. This
mostly involved cleaning up resource providers to handle things like
systemd more cleanly.
* We're running acceptance tests on Fedora 19 and 20, now, too.
* Facter 2.0.1 works with Puppet 3.5, including its new structured facts
support (see above).
* We have early support for Ruby 2.1. We're running spec tests on it, so we
think it works fine! But since none of our testing platforms ship with it,
we aren't running acceptance tests on it, which means there might be
problems we don't know about yet.
Newly abandoned:
* Support for Fedora 18 is done, since it EOL-ed in January; no more
acceptance tests or packages.
* Facter 1.6 is no longer supported with Puppet 3.5.
Related issues:
- [PUP-576: Add a fedora19 host to the platforms we are testing in ci.](
https://tickets.puppetlabs.com/browse/PUP-576)
- [PUP-876: upstart service operating system confine should include redhat
and centos](https://tickets.puppetlabs.com/browse/PUP-876)
- [PUP-923: Add Fedora 20 to acceptance](
https://tickets.puppetlabs.com/browse/PUP-923)
- [PUP-1694: Provide packages for Rhel7](
https://tickets.puppetlabs.com/browse/PUP-1694)
- [PUP-1825: Allow use of Facter 2](
https://tickets.puppetlabs.com/browse/PUP-1825)
- [PUP-1463: Ensure services that were previously enabled get enabled after
systemd service unit name change](
https://tickets.puppetlabs.com/browse/PUP-1463)
- [PUP-1491: (packaging)Remove Fedora 18 from default mocks](
https://tickets.puppetlabs.com/browse/PUP-1491)
- [PUP-1821: Bump facter dependency to 1.7 or greater](
https://tickets.puppetlabs.com/browse/PUP-1821)
- [PUP-1732: 'puppet resource service' with systemd provider shows lots
of
non-services](https://tickets.puppetlabs.com/browse/PUP-1732)
- [PUP-1766: Make systemd the default provider for RHEL7](
https://tickets.puppetlabs.com/browse/PUP-1766)
### Smaller New Features
In addition to the big-ticket improvements above, we added a lot of smaller
features.
Misc features:
* Pluginsync can now sync external facts to agent nodes! This requires
Facter 2.0.1 or later. (At the time of RC1, Facter 2.0.1 was still in RC.)
* Certificate extensions will now appear in the `$trusted` hash.
* There's a new `strict_variables` setting; if set to true, it will throw
parse errors when accessing undeclared variables. Right now, this will
wreak havoc; eventually, it will make Puppet code easier to debug.
* Related to the last: The `defined` function can now test whether a
variable is defined. Note that you have to single-quote the variable name,
like this: `defined('$my_var')` --- otherwise, the function will receive
the value of the variable instead of its name. Anyway, going forward, this
will be a more accurate way to distinguish between `false`, `undef`, and
uninitialized variables, especially if you're using `strict_variables true`.
* The `http` report processor can use basic auth now when forwarding
reports.
* Puppet apply now has a `--test` option that acts much like puppet agent's
`--test`.
* On Windows, the puppet agent service will now log activity using the
Windows Event Log instead of a logfile.
Type and provider features:
* The `ssh_authorized_key` type can use ssh-ed25519 keys now.
* When `service` resources fail to start or restart, they'll log the exit
code, stdin, and stderr text as Puppet errors to help with debugging.
* The `rpm` package provider now accepts virtual packages.
* The `rpm` package provider now supports `uninstall_options`.
* The `package` type has a new `package_settings` attribute. This is a
property that can be implemented differently per-provider; currently
nothing uses it, but there are plans to make the FreeBSD provider use it
for port options.
* The `user` type now validates the `shell` attribute, to make sure it
actually exists and is executable.
* You can now use msgpack as the on-disk cache format for some of Puppet's
generated data types.
* The `file` type has a new `validate_cmd` attribute that can help protect
against accidentally writing broken config files.
* The `resources` type has a new `unless_uid` attribute that acts like an
improved version of the `unless_system_user` attribute --- it lets you
protect multiple UIDs and ranges of UIDs from deletion when purging `user`
resources.
* You can now purge unmanaged `cron` resources with the `resources` type.
Features for extension writers:
* The Puppet::Util::Profiler#profile API is now public, and can be used by
extensions like indirector termini and report handlers.
* There's a new v2.0 HTTP API, which doesn't have to abide by the
(sometimes inconsistent and weird) semantics of the main API. Right now,
the only v2.0 endpoint is for getting information about environments via
the API.
Related issues:
- [PUP-1068: Puppet master can't submit reports to an HTTP server using
basic auth](https://tickets.puppetlabs.com/browse/PUP-1068)
- [PUP-1218: Improve ssh-ed25519 integration](
https://tickets.puppetlabs.com/browse/PUP-1218)
- [PUP-1219: PR (2182): Improve ssh-ed25519 integration - jasperla](
https://tickets.puppetlabs.com/browse/PUP-1219)
- [PUP-950: PR (2132): (#23376) Add support for ssh-ed25519 keys to
ssh_authorized_key type - jasperla](
https://tickets.puppetlabs.com/browse/PUP-950)
- [PUP-1318: Provide a logoutput for service like exec](
https://tickets.puppetlabs.com/browse/PUP-1318)
- [PUP-897: package type should accept virtual package for rpm](
https://tickets.puppetlabs.com/browse/PUP-897)
- [PUP-1369: Package options property for package](
https://tickets.puppetlabs.com/browse/PUP-1369)
- [PUP-1448: User's type 'shell' parameter should be validated](
https://tickets.puppetlabs.com/browse/PUP-1448)
- [PUP-1327: PR (2060) owner of files created by nagios resource types](
https://tickets.puppetlabs.com/browse/PUP-1327)
- [PUP-1589: PR (2328): Msgpack terminii - dalen](
https://tickets.puppetlabs.com/browse/PUP-1589)
- [PUP-1670: PR (2347): A way to validate file content syntax before
replacing files](https://tickets.puppetlabs.com/browse/PUP-1670)
- [PUP-1447: Allow specified UIDs to be excluded from purge](
https://tickets.puppetlabs.com/browse/PUP-1447)
- [PUP-1490: Support --test option for puppet apply](
https://tickets.puppetlabs.com/browse/PUP-1490)
- [PUP-1564: PR (2319) package rpm provider should support
:uninstall_options feature](https://tickets.puppetlabs.com/browse/PUP-1564)
- [PUP-649: PR (2024): (#3220) crontab: allow purging unmanaged resources -
ffrank](https://tickets.puppetlabs.com/browse/PUP-649)
- [PUP-1772: Proposal to make Puppet::Util::Profiler#profile api public](
https://tickets.puppetlabs.com/browse/PUP-1772)
- [PUP-672: Informational certificate extensions should be exposed inside
the Puppet DSL](https://tickets.puppetlabs.com/browse/PUP-672)
- [PUP-1048: PR (2161): (#21641) Windows puppet service should log to the
eventlog - glennsarti](https://tickets.puppetlabs.com/browse/PUP-1048)
- [PUP-1505: Puppet should use new Facter.search_external for external
facts pluginsync](https://tickets.puppetlabs.com/browse/PUP-1505)
- [PUP-1432: Implement v2.0 API error responses](
https://tickets.puppetlabs.com/browse/PUP-1432)
- [PUP-1549: V2.0 API shows the message body in the Reason-Phrase](
https://tickets.puppetlabs.com/browse/PUP-1549)
- [PUP-1166: Add better error message for strict variables (current
parser)](https://tickets.puppetlabs.com/browse/PUP-1166)
- [PUP-1372: with strict variable lookup option there is no way to check if
var is defined](https://tickets.puppetlabs.com/browse/PUP-1372)
### Deprecations and Removals
As we start to get ready for Puppet 4, we're deprecating some features
we're hoping to remove or replace. (Be ready for more of these in Puppet
3.6, too.) Using deprecated features will cause warnings to be logged on
the puppet master; these features will be removed in Puppet 4.
Deprecations in the Puppet language:
* The `import` keyword is deprecated. Instead of importing, you should set
your `manifest` setting to a directory of .pp files.
* Modifying arrays and hashes in Puppet code or templates is deprecated.
(This actually should never have been possible, but we can't kill it in a
minor version because it might break something.)
Deprecations in the type and provider API:
* Using the `:parent` option when creating a type is deprecated. This
actually hasn't worked for a long while, but now it will warn you that it
won't do anything.
Removals:
* The experimental bindings-based Hiera2/data-in-modules code has been
removed. We're back to the drawing board on this.
Related issues:
- [PUP-899: Deprecate parent parameter for type](
https://tickets.puppetlabs.com/browse/PUP-899)
- [PUP-864: Deprecate Data Structure Mutation](
https://tickets.puppetlabs.com/browse/PUP-864)
- [PUP-866: Deprecate "import"](
https://tickets.puppetlabs.com/browse/PUP-866)
- [PUP-546: Remove Hiera2 and bindings-based data in modules code](
https://tickets.puppetlabs.com/browse/PUP-546)
### Performance Improvements
3.5 is faster! We found a situation where defined types were a lot slower
than they needed to be, some slow cases in `puppet cert list` and the
module tool, and a few other performance wins.
Related issues:
- [PUP-716: Puppet::FileSystem::File creates many short-lived objects](
https://tickets.puppetlabs.com/browse/PUP-716)
- [PUP-751: Performance regression due to excessive file watching](
https://tickets.puppetlabs.com/browse/PUP-751)
- [PUP-753: Create a reasonable "benchmark" manifest](
https://tickets.puppetlabs.com/browse/PUP-753)
- [PUP-1059: PR (2162): (#16570) Don't load the node object again in
configurer - dalen](https://tickets.puppetlabs.com/browse/PUP-1059)
- [PUP-1592: Puppet excessively stats the filesystem when looking for
defined types](https://tickets.puppetlabs.com/browse/PUP-1592)
- [PUP-1563: PR (2322) Module tool rechecks for conflicts for each
installed module](https://tickets.puppetlabs.com/browse/PUP-1563)
- [PUP-1665: PR - Puppet cert list behavior is suboptimal](
https://tickets.puppetlabs.com/browse/PUP-1665)
- [PUP-1058: puppet apply loading facts twice](
https://tickets.puppetlabs.com/browse/PUP-1058)
### Bug Fixes and Clean-Ups
We fixed a bunch of bugs in types and providers (including a big cleanup of
the yumrepo type), improved standards-compliance in our use of
certificates, fixed a bunch of Windows-specific problems, cleaned up some
inconsistencies, and fixed some bugs that don't fit in any particular
bucket.
Type and provider bugs:
- [PUP-1051: gem package provider is confused by platform components in
version strings](https://tickets.puppetlabs.com/browse/PUP-1051)
- [PUP-1158: Augeas provider warns on parse errors in other files handled
by same lens](https://tickets.puppetlabs.com/browse/PUP-1158)
- [PUP-1421: appdmg prematurely filters for sources ending in .dmg](
https://tickets.puppetlabs.com/browse/PUP-1421)
- [PUP-1450: [Windows] Copying file resources from non-NTFS volumes causes
Invalid DACL errors](https://tickets.puppetlabs.com/browse/PUP-1450)
- [PUP-1559: Windows - Specifying well-known SIDs as a group / user in
manifests causes errors](https://tickets.puppetlabs.com/browse/PUP-1559)
- [PUP-730: PR (2140): (#23141) Add OpenBSD to the exclusion list for
'remounts' in mount type - jasperla](
https://tickets.puppetlabs.com/browse/PUP-730)
- [PUP-1192: PR (2176): (maint) Windows file provider :links => :follow -
Iristyle](https://tickets.puppetlabs.com/browse/PUP-1192)
- [PUP-1561: puppet resource cron does not list crontab entries](
https://tickets.puppetlabs.com/browse/PUP-1561)
- [PUP-713: PR (2050): (#4820) cron type should not allow specification of
special parameter and normal hour/minute/day/etc parameters. - ffrank](
https://tickets.puppetlabs.com/browse/PUP-713)
- [PUP-1085: Pacman provider constantly reinstalls package groups on arch
linux](https://tickets.puppetlabs.com/browse/PUP-1085)
- [PUP-648: PR (2023): Add upgradeable and versionable features to pkgin
provider - javiplx](https://tickets.puppetlabs.com/browse/PUP-648)
- [PUP-1510: ensure => absent on user resource with forcelocal => true
does
not work as expected.](https://tickets.puppetlabs.com/browse/PUP-1510)
- [PUP-1338: yumrepo module is too picky about white space](
https://tickets.puppetlabs.com/browse/PUP-1338)
- [PUP-789: Yumrepo should be refactored to use a provider](
https://tickets.puppetlabs.com/browse/PUP-789)
- [PUP-1722: Yumrepo doesn't permit HTTPS URLs](
https://tickets.puppetlabs.com/browse/PUP-1722)
- [PUP-778: PR (2086): Initial refactoring of yumrepo. - apenney](
https://tickets.puppetlabs.com/browse/PUP-778)
- [PUP-1066: yum repos should be ensurable.](
https://tickets.puppetlabs.com/browse/PUP-1066)
- [PUP-652: PR (2026): #19422: Deal with invalid arguments to nagios types
- yath](https://tickets.puppetlabs.com/browse/PUP-652)
- [PUP-714: PR (2051): Suppress misleading warn. in openbsd provider -
ptomulik](https://tickets.puppetlabs.com/browse/PUP-714)
- [PUP-1846: PR (2410): File content diffing should respect loglevel -
wfarr](https://tickets.puppetlabs.com/browse/PUP-1846)
- [PUP-1473: user resource fails on UTF-8 comment](
https://tickets.puppetlabs.com/browse/PUP-1473)
Windows-related bugs:
- [PUP-1368: Puppet on Windows segfaulting](
https://tickets.puppetlabs.com/browse/PUP-1368)
- [PUP-1494: Windows colors.rb may be subject to Ruby corruption bug with
wide strings](https://tickets.puppetlabs.com/browse/PUP-1494)
- [PUP-1681: Windows stat doesn't expose the correct mode](
https://tickets.puppetlabs.com/browse/PUP-1681)
- [PUP-1275: Windows agent only runs when --onetime is specified](
https://tickets.puppetlabs.com/browse/PUP-1275)
- [PUP-1278: PR: Windows Puppet Agent Service gracefully terminates after
succesfully being put into a Paused state](
https://tickets.puppetlabs.com/browse/PUP-1278)
- [PUP-1284: win32-security gem doesn't handle 'Authenticated Users'
correctly](https://tickets.puppetlabs.com/browse/PUP-1284)
- [PUP-797: PR (2094): (#23219) - Fix support of extra arguments in windows
service - luisfdez](https://tickets.puppetlabs.com/browse/PUP-797)
Standards compliance improvements:
- [PUP-1407: puppet CA generates CRL that does not conform to RFC5280](
https://tickets.puppetlabs.com/browse/PUP-1407)
- [PUP-1409: add an authorityKeyIdentifier extension to node certificates](
https://tickets.puppetlabs.com/browse/PUP-1409)
Clean-ups:
- [PUP-1120: Change default private key permissions to permit group read](
https://tickets.puppetlabs.com/browse/PUP-1120)
- [PUP-1451: PR (2257) Make public SSL files publicly readable](
https://tickets.puppetlabs.com/browse/PUP-1451)
- [PUP-1262: PR (2196): (maint) cron: Make the munge method for the command
property more readable - ffrank](
https://tickets.puppetlabs.com/browse/PUP-1262)
General bugs:
- [PUP-1064: Puppet master fails with 'stack level too deep' error when
storeconfigs = true with rails stack 3.1.0](
https://tickets.puppetlabs.com/browse/PUP-1064)
- [PUP-1136: When applying the settings catalog, a failed transaction may
not properly surface information about the event that caused it to fail](
https://tickets.puppetlabs.com/browse/PUP-1136)
- [PUP-1150: Race condition in Puppet::Util::Lockfile](
https://tickets.puppetlabs.com/browse/PUP-1150)
- [PUP-1246: Hiding error details in fileserver.conf parser when this
config is wrong](https://tickets.puppetlabs.com/browse/PUP-1246)
- [PUP-1470: mk_resource_methods getters can't deal with false](
https://tickets.puppetlabs.com/browse/PUP-1470)
- [PUP-1484: msgpack serialization of TagSet broken](
https://tickets.puppetlabs.com/browse/PUP-1484)
- [PUP-1578: puppetlabs/reboot: Ruby on windows can get into an infinite
loop when exiting](https://tickets.puppetlabs.com/browse/PUP-1578)
- [PUP-1101: Static compiler does not filter exported resources from the
catalog](https://tickets.puppetlabs.com/browse/PUP-1101)
- [PUP-721: PR (2056): (#7659)(#20122) Fix comment stack when parsing
hashes - hlindberg](https://tickets.puppetlabs.com/browse/PUP-721)
- [PUP-786: PR (2090): (#21869) Fix recursion in cert expiration check -
Sharpie](https://tickets.puppetlabs.com/browse/PUP-786)
- [PUP-804: PR (2097): (maint) Handle empty or malformed JSON lockfiles -
adrienthebo](https://tickets.puppetlabs.com/browse/PUP-804)
- [PUP-906: PR (2118): (#22330) add btrfs to SELinux filesystem whitelist -
qralston](https://tickets.puppetlabs.com/browse/PUP-906)
- [PUP-1243: PR (2184): (maint) Fix can't modify frozen Symbol error on
Ruby 2.1.0 - jeffmccune](https://tickets.puppetlabs.com/browse/PUP-1243)
- [PUP-1282: puppet gem does not include platform specific gem
dependencies](https://tickets.puppetlabs.com/browse/PUP-1282)
- [PUP-1350: PR (2215): Don't replace original stacktrace when error
happens parsing inline template - carlossg](
https://tickets.puppetlabs.com/browse/PUP-1350)
- [PUP-1502: PR (2293): (maint) Puppet fails to properly surface backtraces
- Iristyle](https://tickets.puppetlabs.com/browse/PUP-1502)
- [PUP-1420: PR (2248): move StateMachine out of the global scope -
crankharder](https://tickets.puppetlabs.com/browse/PUP-1420)
- [PUP-1707: Faces help sometimes blows up when descriptions are absent](
https://tickets.puppetlabs.com/browse/PUP-1707)
- [PUP-1387: CA generates subjectKeyIdentifier from issuer cert instead of
cert itself](https://tickets.puppetlabs.com/browse/PUP-1387)
- [PUP-1568: Error reporting within augeas provider fails](
https://tickets.puppetlabs.com/browse/PUP-1568)
- [PUP-1839: Puppet device results in SSL stack too deep error](
https://tickets.puppetlabs.com/browse/PUP-1839)
- [PUP-1885: File type ignore can't convert Fixnum into String](
https://tickets.puppetlabs.com/browse/PUP-1885) (This one was a regression
from 3.3.0.)
- [PUP-1404: PR (2234): ensure Puppet::Util::Execution.execpipe always run
the command with LANG... - doc75](
https://tickets.puppetlabs.com/browse/PUP-1404)
### All Resolved Issues for 3.5.0
Our ticket tracker has the list of [all issues resolved in Puppet 3.5.0.](
https://tickets.puppetlabs.com/browse/PUP/fixforversion/11009)
### Contributors
Adrien Thebo, Alejandro Ramirez, Alex Harvey, Alexei Romanoff, Anderson
Mills, Andrew Parker, Ashley Penney, Bart ten Brinke, Bert Hajee, Branan
Purvine-Riley, Brandon High, Carlos Sanchez, Charlie Sharpsteen, Dan
Lidral-Porter, Daniele Sluijters, Derek Yarnell, Dominic Cleal, Eric
Sorenson, Erik Dalén, Ethan J. Brown, Felix Frank, Gavin Williams, Glenn
Pratt, Guillaume Virlet, Henrik Lindberg, Iristyle, James Ralston, Jasper
Lievisse Adriaanse, Javier Palacios, Jeff McCune, Jeremy T. Bouse, Joe
Julian, John (JJ) Jawed, John Julien, Jonathan Webb, Josh Cooper, Josh
Partlow, Josh Sharpe, Joshua Hoblitt, Ken Barber, Kylo Ginsberg, Luis
Fernandez Alvarez, Marc Seeger, Matthew Nicholas Bradley, Nick Fagerlund,
Patrick Carlisle, Paweł Tomulik, Pedro Côrte-Real, Peter Huene, Peter
Meier, Peter Souter, Raphaël Pinson, Rob Braden, Rob Reynolds, Ryan McKern,
Sam Kottler, Sebastian Schmidt, Stephen Gelman, Vincent Ambo, Will
Farrington, fhrbek, glenn.sarti, glennsarti, jrussek
### Contributions
Adrien Thebo (21):
107f0e4 (maint) Handle empty or malformed JSON lockfiles
f066e74 (#22744) Filter virtual resources in the static compiler
2327f68 (maint) Ensure HieraPuppet cached instance is reset
eac21e8 (PUP-1218) Add spec coverage for ssh_authorized_key
ssh-ed25519
6a6ef5c (PUP-1218) Add spec coverage for sshkey ssh-ed25519
76ae6a2 (maint) Clean up sshkey and ssh_authorizd_key type specs
bda42f2 (maint) expand ExtensionFactory creation for clarity
b4235bc (doc) Document certificate_factory methods
3156ca1 (maint) Don't duplicate hash keys in rspec tests
273f2d6 Revert "Merge branch 'pull-2137'"
90351dc (maint) Pass Facter.search arrays instead of strings
85c0894 (maint) Don't check for Facter.search
728d836 (maint) Add missing noun that was accidentally
a0e9882 (maint) Implement FileSystem.file? for consistency
d032a16 (maint) fixup yumrepo provider to use fs abstraction
fa522ac (maint) Allow arrays, bools, and numerics to be frozen
20c3c01 (PUP-876) Add 'any' confine
7bdcbea (PUP-876) Enable upstart service provider on Redhat
f7ea505 Merge pull request #2402 from
kylog/issue/pup-1825/allow-use-of-facter-2
18bf7e9 (PUP-876) Skip resource service check on EL 6
e11cb26 (PUP-1821) Require Facter 1.7 or greater
Alejandro Ramirez (1):
73b0c2b (PUP-1448) Validates the user type shell property
Alex Harvey (1):
66e0fd2 (doc) Fix a typo in docs for the include function
Alexei Romanoff (1):
8124266 (PUP-1246) Fixed hiding error details in fileserver.conf
parser
Anderson Mills (1):
6c4539c (PUP-759) Remove reference to ca_days in ca_ttl default
Andrew Parker (134):
9f0fbb3 (#23373) Update acceptance test to use config set
625b3dc (Maint) Allow specifying tests to run to rake task
6505d15 (#23373) Allow basic control of puppet.conf
e4b7556 (#23373) Remove duplicate config file parsers
056f65b (#23373) Pull apart ConfigFile and IniFile
024df99 (#23373) Support selecting the section
39f54e8 (#23373) Have config parsing use IniFile's sections
3ffabc7 (#23373) Provide a more structure config file parse
1285d40 (#23373) Pull apart settings into a few more classes
00c2abf (#23373) Add section control to the config print action
3b486fb (#23373) Reuse existing section headers
ce6b415 (#23373) Check for minimal use of [main]
6f2c833 (#23373) Don't set metadata when it isn't supported
53a4203 (#23373) Use puppet config set in tests
2ad6b8d (#23373) Don't apply all metadata
9059da0 (Maint) Remove unused code
1b26c11 (#23373) Restore 'all' functionality
e195de6 (#23373) Only parse section lines once
69ad509 (Maint) Fix deprecation message to point to the right
alternative
da5d5a2 (Maint) Revert including augeas
2307946 (PUP-665) Allow settings to be undefined
e25be73 (PUP-665) Setting nil reverts to default
330ce17 (PUP-665) Don't call hooks unless absolutely necessary
8f5a575 (PUP-986) Update references to point to Jira
a595118 (PUP-1246) Update tests to show line numbers
f879dbc (Maint) Remove duplicate test
13fcb1a (maint) Update test to work on non-UTF-8 systems
f5b2a41 (PUP-672) Add acceptance test for trusted data
d0c6e41 (Maint) Remove use of mocking
c320f65 (maint) Require json for logstash test
46f3300 (PUP-672) Add nested context capabilities
8841654 (maint) Log exception using log_exception
3383996 (PUP-672) Add defaults for context lookups
a80015a (PUP-672) Track trusted information using the context
a706fa3 (PUP-672) Provide certificate extensions as trusted data
5f7fc89 (PUP-672) Updated test to match trusted data structure
747076f (PUP-1068) Add basic auth to HTTP Connection
3c67f61 (PUP-716) Fix up YAML specs
2699ca9 (PUP-716) Fix up watcher spec
b4b18e1 (PUP-716) Fix up all of util
5d26652 (PUP-716) Fix up the type tests
3acea26 (PUP-716) Fix up transaction tests
3d03292 (PUP-716) Fix up tests in ssl dir
47238bd (PUP-716) Add Memory based file impl
56fb51b (PUP-716) Re-add memory impl
c342ede (PUP-716) Change back to stubs from mocks
ff429b6 (PUP-1151) Specify JSON and error responses
3a68c73 (PUP-1151) Have puppet depend on json
828a759 (PUP-1151) Move HTTP Errors to own module
2e9d8dd (PUP-1151) Authorize v2 api requests
1e04f6e (PUP-1151) Hard code return of only production environment
fc42c64 (PUP-1151) Inject source of environments
7cdb196 (PUP-1151) Add access to environments in auth.conf
6dcd9b1 (PUP-1151) Ensure that json is installed for tests
2e7ba15 (PUP-1151) Consolidate JSON schema validation
8142d09 (PUP-1151) Convert to cygwin paths on windows
4810aeb (PUP-1118) Fetch the environment's manifest & modulepath
at
init
bdce683 (PUP-1118) Introduce "create" to make specific
environments
58a6cc5 (PUP-1118) Provide context at initialization for environments
23fb77f (Maint) Alias TESTS as TEST
abdb04a (PUP-1118) Remove use of Environment.current
03fea79 (PUP-1118) Move global context methods to Puppet
f716cf7 (Maint) Mark new context methods private
898b660 (Maint) Unravel require of forge code
76c064f (PUP-1118) Add check for getting multiple environments
ecb317b (PUP-1118) List environments from a directory
f40365a (PUP-1118) Load full environments from a directory
ba6e5ab (PUP-1118) Simplify Puppet::Context
757505b (PUP-1118) Create a new context after app initialization
4b30d16 (PUP-1118) Make environments readable by puppet master
1b9cf6f (PUP-1118) Document Puppet::Environments
8781d0d (PUP-1118) Move root environment to Context
5d6f48d (maint) Only load yard tasks if yard is available
255d381 (PUP-1151) Respond with 404 when path not known
e70300f (PUP-1118) Ensure there is only one *root*
d474c2e (PUP-1118) Add acceptance test for using directory envs
5c988b9 (PUP-1118) Stop using Environment.new
b439bb8 (Maint) Remove dead port code
3c4669d (PUP-1118) Convert environment for nodes on load
1ca7c2c (maint) Remove warning added during debugging
181d56c (PUP-1549) Use standard reason phrases on webrick
655ace5 (PUP-1549) Update documentation showing reason phrase
8bab12e (Maint) Extract re-usable resource matcher
83c0eff (PUP-865) Allow BlockExpression to evaluate everything
dae56db (PUP-865) Only use the pops merge for the future evaluator
4d408df (Maint) Clean up tests
f8ceaa0 (Maint) Remove documentation rspec output
8384c50 (PUP-1470) Add test for new behavior
ae24299 (PUP-753) Benchmark puppet compiling w/many modules
f1d6683 (PUP-753) Profile the many_modules benchmark scenario
61cffab (PUP-753) Extract benchmark impl into file
2a6b1c7 (PUP-753) Generate scenario tasks from filesystem
cac434a (PUP-753) Include a minimal metadata in each module
5b2f99c (Maint) Remove unused dependencies
b3c5ca8 (PUP-753) Use correct format constant on 1.8.7
a36d369 (PUP-753) Remove duplicate calls to setup
6f24451 (doc) Point to the local docs
fe16ed6 (doc) Create a quickstart guide to get people going
6e1c325 (doc) Extract sections of README_DEVELOPER
22e6b07 (doc) Remove remaining developer docs
e978330 (doc) Explain some basics for profiling puppet
9dbbdbe (PUP-753) Write a JMeter CSV log
a5ee135 (doc) Stop using non-words
05e1036 (doc) Clarify use of --profile
fac2f11 (doc) Point readers to how to run acceptance tests
770194f (doc) Update rspec examples to show desired style
a8391b5 (PUP-753) Add task to run/profile all scenarios
56bdffc (PUP-753) Write times in millis
ba5a68f (PUP-753) Benchmark system startup
1c0e54c (PUP-649) Use class instance variable
48c8152 (PUP-649) Loosen checks for crontab provider
0b64460 (PUP-751) Check for reparse once per compile
0412515 (maint) Optimize adding tags
40c315b (maint) Use JSON for parsing metadata.json
f854342 (maint) Remove String check
018e2b4 (maint) Reduce calls to settings
c129f40 (maint) Hold token name in local variabel
c8c1ea5 (PUP-751) Benchmark defined resource types
13ab9b4 (PUP-751) Preserve environment across resource copy
69d03c8 (maint) Fork for each scenario
0729c99 (PUP-751) Ensure resource knows it's type
1e6a373 (PUP-751) Fix resource_type to check for changes
413a733 (Maint) Ensure there is a fully ruby env
c7e3697 (PUP-1678) List environment settings instead of modules
601c76d (PUP-1678) Provide valid, standard source URIs
cad535d (maint) Remove desc for generate tasks
637dd61 (maint) Detect reparse when :code changes
5207eba (PUP-542) Test the gamut of mutation
5455b53 (PUP-1839) Flush cache when setting value
7e836e5 (PUP-1839) Re-deprecate set_value
c967d63 (PUP-1839) Introduce overridden defaults
e2fee27 (PUP-1839) Override settings by just assigning
73c53bb (PUP-1885) Stringify ignores for file serving
495efc7 (Maint) Remove some duplication in tests
Ashley Penney (7):
ce83c66 (PUP-1066) Add the ability to delete files. Add a .destory
and .destroy? in order to flag files for deletion. We also sneak in a
.entries reader in order to let us read the entries directly.
7b8650e (PUP-789) Break yumrepo into a type/provider.
8f4d73f (maint) Remove the noop check here, we don't allow flush to
be called when noop is set.
0263cab Ensure that section cannot accidently return nil.
dd5d3e1 (maint) Added Yarddoc documentation.
601b0fa Replace .select! with delete_if for ruby 1.8.7
747a62f (maint) Switch from an .each to a .last so we don't repeat
ourselves.
Bart ten Brinke (1):
8408ac0 (PUP-1447) Added unless_uid option to User Resource
management.
Bert Hajee (1):
fcfe176 (pup-899) Add deprecation message for use of parent in new
type
Branan Purvine-Riley (1):
5aca376 (PUP-1677) Fix tests for PE compatibility
Brandon High (5):
91ebb1f Fixing HTTP API link formatting
9ed39df Adding link to LICENCE
c1d1060 LICENCE is not a .md
36ef118 Spelling LICENSE correctly
3127da4 Updating copyright years in LICENSE
Carlos Sanchez (1):
f9bcdf6 (PUP-1350) keep original stacktrace when error happens
parsing inline template
Charlie Sharpsteen (3):
0b84445 (#21869) Fix recursion in cert expiration check
f2801ca (DOCUMENT-22) Clarify matching of crontab entries
2968a45 (PUP-1564) Add uninstall_options to RPM provider docs
Dan Lidral-Porter (19):
35ada47 Add vagrant testing guide to acceptance/README.
a08de79 (PUP-1151) Environment enumeration authorization test.
ecddcc5 (PUP-1151) Factor out v1 HTTP request processing into own
request processor.
3f0c113 (maint) Get rid of http handler's initialize_for_puppet
method.
5189d6e (PUP-1151) Add routing framework.
7ac514e (PUP-1151) Add a 405 error class to http handler
bf002ce (PUP-1151) Change Route matching semantic specs.
64b9d96 (PUP-1151) Implement Route changes.
32e54bd (PUP-1151) Add documentation for environments endpoint
64b7629 (PUP-1151) Fix environment enumeration endpoint test
6c54310 (PUP-1404) Add tests for execpipe locale setting
6551e50 (PUP-1404) LC_ALL test to actually tests LC_ALL
0b1f4bd Don't run LANG/LC_ALL tests on windows
fcf482a (PUP-1404) Don't swallow execpipe tests on windows
5a5f0d3 (PUP-1432) Add V2 API structured errors.
7ce5d10 (PUP-1432) Move JSON error ser8n to error classes
208f6e9 (PUP-1432) Fix error JSON schema
a8e9358 (PUP-1432) Add error spec that tests serialization
f44bca4 (maint) really fix the execution locale test
Daniele Sluijters (1):
a690fef (PUP-1470) Make mk_resource_method with false.
Derek Yarnell (1):
6a5adf0 Adds support for building puppet on RHEL7 via spec.
Dominic Cleal (5):
0d0c999 (maint) Add ruby-augeas to Gemfile and Travis for more test
coverage
c35ae4f (PUP-1158) Only output load warning when file given by user
has an error
654438a (PUP-1722) Permit HTTPS and FTP protocols in yumrepo
b5b96cf (PUP-1735) Reimplement deprecated
Puppet::Node::Environment.current
0a09175 (PUP-1905) Split modulepath when supplied as an override from
CLI
Eric Sorenson (3):
1c4fccd (maint) Update README.md for support clarification
3bdb35c Fix trailing whitespace, add EOL clarification
38db379 Wording tweaks from review feedback
Erik Dalén (16):
32b1f61 (#16570) Don't load the node object again in configurer
8fc9544 (maint) remove dead code for indirector cache
4a89dcf (PUP-1490) Support --test option for puppet apply
446f39e (PUP-1484) Fix serialization of TagSet
abcfc8d (maint) Fix error message in reduce function
b349e7d (maint) Add optional_parameter_count method to Closure
4acaafb (maint) Fix syntax error in example code
39c2fdf (maint) Change name from from_pson to from_data_hash
3c892bf (maint) Deprecate from_pson methods
346bebe (maint) Unify to_pson in FormatSupport module, just like with
to_msgpack
faa3978 (maint) Simplify msgpack format code
fb6c03b (PUP-1588) Add msgpack indirector terminii
dcd63c1 (maint) Make msgpack feature do the correct requires
411e8fd (PUP-1451) Make SSL file permissions a bit more relaxed for
public files
cffffb2 (PUP-1670) Add validate_cmd parameter to file type
828e581 (maint) Add to_data_hash on Puppet::SSL::Base
Ethan J. Brown (16):
262f5b4 (maint) Report errs correctly on settings apply
107271b (maint) Windows file provider :links => :follow
ba09bfe (PUP-1133) Windows tests write config to temp
776767c (PUP-1133) Reset permission on Windows test files
d758620 (PUP-1133) Clean up leftover parser generate temp
3e00466 (PUP-1133) Cleanup Windows symlink
187e047 (PUP-1133) Cleanup after Rails temp log files
403a9a3 (PUP-266) Ensure ADSI Group SIDs may be looked up
d17b938 (PUP-266) Puppet manages group and owner on config
ce904cf PUP-1494 - Remove Windows iconv from colors.rb
9fa4a39 (maint) Puppet fails to properly surface backtraces
b7c10f5 PUP-1494 Guard against Win32 memory corruption
923a766 PUP-1450 Windows file resource Invalid DACL errors
ee34bf9 PUP-1450 Honor source_permissions_ignore
580a1ce (PUP-1559) Ensure ADSI Group SIDs may be looked up
857291e PUP-1681 Stat doesn't expose correct mode on Win
Felix Frank (17):
a838929 (#7659) add a test for puppetdoc in the presence of hash
literals
90e103f (#7659) add more tests for possible hash use syntaxes
dac92a0 (maint) cron: Make the munge method for the command property
more readable
5a5bd36 (#3220) crontab: allow purging unmanaged resources
5645ba2 (#3220) make sure that generated cron resources belong to the
correct user
fd200e6 (#3220) fix a cron testing quirk with potential benefits for
normale operation
3957d38 (#3220) make the unit test "generating cron resources"
match
the new behaviour
f098f2e (#3220) save overhead in cron type unit test and add cleanup
977aacf (#3220) uniquify implicit record names
39f2015 (PUP-1327) add the file attributes owner, group and mode to
nagios types
ffbf6b3 (PUP-1327) simple unit test for the new nagios parameters
ede7cf4 (PUP-1327) integration spec for the nagios type
1ee89b7 (PUP-713) cron: forbid the mixing of special and numeric
schedules
75766d5 (PUP-713) Add tests for the special property of the cron type
c54a95d (PUP-1220) apply proper scoping rules to scope#to_hash
29cff9d (PUP-1220) make the dynamic scoping fix for #22800 flexible
51b8731 (PUP-1220) optimize template scoping fix
Gavin Williams (1):
ad2b5ea (#23316) Update yum package provider support :holdable
Glenn Pratt (2):
d6f67ea (maint) Fix unused argument and variable in file_spec.rb
488bcc2 (PUP-1150) Fix race condition in Puppet::Util::Lockfile.
Guillaume Virlet (1):
c9b51eb (PUP-1404) execpipe resets LANG and LC_ALL
Henrik Lindberg (340):
38198f6 (#22363) Add [] method to PPatternType to create regexp.
3110458 (#22363) Extend type system with PHostClassType and
PResourceType
120774f (#22363) Add type parameter to PType
9305ffa (#22363) Add abstract type PCatalogEntryType
f1eab08 (#22363) Remove super type from PHostClassType
c0591c2 (#22363) Add [] type operation to subtypes of PCatalogType
ff551b5 (#22363) Add test of capability to create array of types
using []
43c7b3e (#22454) Fix partial shadowing of match variables.
2a3d619 (maint) Remove unused ephemeral?(name) from scope.
ff5be26 (#22363) Add "future evaluator"
8dbd865 (#22363) Add variables tests and fix evaluation
implementation.
9788ff3 (#22363) Remove defunct testing of type operations
74278bc (#22363) Add Integer[from, to, step] feature to produce array
e5fcabe (#22363) Fix typos in test example titles
253fc14 (#22363) Add evaluation of conditionals test and fixes
a66b923 (maint) Cleanup Scope impl from unused methods & test
specific code
709b843 (#22363) Add examples for match result variable shadowing
0ccf3c9 (#22363) Add tests of Block, and Array/Hash +, -, and <<
operators
34f10b5 (#22363) Add support for -= operator (validate as error in
puppet 3).
3c1c376 (#22363) Add validation test for -= (UNSUPPORTED_OPERATOR) in
Puppet 3
d1bd7e7 (#22363) Add examples for -= and += (parser) and fix issues
in evaluator
51ef75e (#22363) Add evaluation of calls / lambdas
299b324 (maint) Remove TODO comment (fixed thing), and yardoc text
typos
28ccec2 (perf) Add optimized versions of Visitorv.visit_this_n
35807f6 (perf) Change TypeCalculator to use optimized visitor calls.
89bc985 (perf) Make lexer 30% faster
37c602c (perf) Add Lexer2 - a faster Lexer replacement
872f0d7 (#20516) Add support for epp templates in new lexer
39e097b (maint) Improve output from match_tokens2.
4adaaf7 (maint) Fix problem after adding flag to respond_tp? call
2989f40 (maint) Move Lexer2 to the correct namespace
(Puppet::Pops::Parser)
1a54491 (perf) Make future parser use new faster lexer
7770c23 (maint) Add test examples for nested naming of classes
3765069 (maint) Fix parsing hostnames containing '.' as sequence
instead of name
fd7525c (#22962) Remove alternative lambda syntaxes from tests
02e9223 (perf) Speed up containment calculation by 2x
cd7f8ad (maint) Allow any expression as hash key in parser
a0bca5e (maint) Improve handling of loc/sourcepos calculation in
parser support
8ca589f (perf) Include perf benchmark for parse + validate
8a154ab (perf) Make location calculation lazy and pass all tests
4b3438d (maint) Remove dead / unused and broken code in Factory
a930dbf (maint) Add use of new evaluator in specialization of
EvaluatingParser
07b39dd (#22363) Add parse / validate / evaluate tests, fix evaluator
issues
0859519 (maint) Fix indentation
d9be82d (maint) Add missing DELETES token in grammar
01b5296 (maint) Cleanup comments
68f7272 (maint) Remove unused file CallOperator
ada7756 (maint) Protect against endless recursion if user calls with
wrong type
f61cdde (#22363) Change evaluator error reporting to use Pops::Issues
6f45d1c (perf) Move all behcmarks to one unit test and exclude it
with filter
f61569a (perf) Make small performance improvement to validation
40ded61 (perf) Make small performance improvement to assignment
validation
2dba6bf (maint) Fix issue after optimizing validation calls; renamed
var
563554a (maint) Remove unused model class LiteralText
aebf6b2 (#22363) Refactor model of literals
6fbc1ef (#21874) Apply making name[x] and name [x] different.
04fe41e (#22363) Add Puppet 4x validator & tests
52ca43b (#22363) Add tests for evaluation of types
eafaec2 (#22363) Make if, unless, case be rvalue producers
bb39e91 (maint) Remove unused cruft from pops model
8a4de7a (#22363) Add top level Program model, and add pops AST bridge
f523ac8 (#22363) First wiring of new evaluator to parser factory
acb7f73 (#22363) Fix typos, missing methods
86d6f53 (#22363) Add evaluation of Resource Expression
0f3a988 (#22363) Fix issues relating to handling of undef and
"to_s"
ff5c140 (#22363) Add impl of evaluation of resource defaults and
overrides
775d209 (#22363) Add lookup of resource parameter value
5b3fec7 (maint) Remove unused OptionalAttributeOperation
29ecb43 (maint) Clean up stale comments
fb6a1ee (maint) Remove unused constructs and use faster polymorph
calls
1cdea27 (maint) Remove support for hyphen in name in lexer2
ac6a8d2 (#22363) Add support for evaluation of CollectExpression.
c3e089f (#22363) Make selector and case use same equality as for
'=='
operator
8779a40 (#22363) Remove unused datatype_reference method in evaluator.
ea3d6ac (maint) Remove stale TODO comments
60bf2af (#22363) Remove the support for applying [] operation without
arg(s).
78a7270 (#22363) Refactor name of Puppet::Pops::Evaluator::Lambda to
Closure
9f1a1ae (maint) Cleanup unused code and fix comments
f88ab81 (maint) Delete reference grammar.ra
aaf2d91 (maint) Add TODO comment about \u handling in string quoting
1ce685e (#22363) Improve handling of PNilType
19d2c2b (#22363) Add missing support for Numeric type
f944fc2 (#22363) Correct failing test that relied on fixed bug for
Type[Undef]
450dd9e (#22363) Make interpolation use string_ for all runtime types
09b7115 (#22363) Add test for interpolation string conversion undef /
default
1713df3 (#22363) Add more String interpolation tests
050314a (#22363) Remove ablity to apply operator % to floats
e37a98b (#22363) Add test that shows negaice shift reverses direction
edf5e8e (#22363) Add test that false != ''
8f6f9fb (#22363) Remove support for compound assignments
aa234c0 (#22363) Make Integer[from, to] work as a Range type
b5f900a (#22363) Add test for Integer type to string
57c869d (#22363) Add Integer range inference test
60dc68c (#22363) Add test of instance? for integer range
7b28eaa (maint) Remove dead code/comment
39acf01 (#22363) Fix problems in TypeParser
81e85da (#22363) Fix problem with reversal of compare <, > of types
ac7618d (#22363) Fix issues with type comparisons
9c5b4af (#22363) Add additional Integer range tests
2ddb879 (#22363) Add capability to match against Type
463ce09 (#22363) Make access with [] also work for class parameters
b610a28 (#22363) Make test for [] on Class to get parameter really
work
8298f4b (#22363) Handle failing tests due to renamed collect/map
37a3011 (#22363) Rename box_numeric to coerce_numeric
8319670 (#22363) Port use of FileSystem to Lexer2
d057f61 (#22363) Add strict variable lookup mode
ee46b7b (#22363) Add test that literal type can be interpolated
7c7bc58 (#22363) Add tests for [] without keys and unsupported LHS =>
error
0a4e52e (maint) Refactor evaluating parser tests
63ea50e (#22363) Add relationship test
f99fc7d (#22363) Fix problem with integer string to Integer on Ruby
1.8.7
5604115 (#22363) Make string and array access operation work as
specified.
54300d9 (#22363) Fix failing tests on Ruby 1.8.7
aef7e43 (#22363) Refactor Type system, add Enum, Regexp, and Variant
8d1d883 (#22363) Add alternative Visitor impl that may prove faster
647a76a (#22363) Add validation of case and hash.
1f31e7e (#22363) Add additional rvalue checks to if, unless, and
literal list
ba4ced2 (#22366) Fix model building of CollectExpression
1fa7110 (#22365) Add validation of select expression
f9343fd (#22363) Improve error messages for division by 0 and infinity
20ae071 (#22363) Produce meaningful output for all runtime errors
c64c1c1 (maint) Error with file set to "" should be taked as
file is
not known
6921bcb (#22363) Fix problems with undef equality & problems from
added tests
6c4f052 (#22363) Make queries work with future evaluator
ab509d9 (maint) Remove call to debugger
826c157 (maint) Remove debugger call
231ddaa (#22363) Make compilation work using new evaluator
c88d587 (#22363) Make errors for illegal Class[x] references better.
7a6a7d8 (#22363) Add compiler integration test for future evaluator
7d1ed7b (#22363) Improve validation of names and variables
3ec41e2 (#22363) Improve error for Class[File['foo']]
7d3b22b (#22363) Fix failing test (typo in regexp).
dca73e6 (#22363) Remove support for extract type and title from type
calculator
dfedea7 (#22363) Add file/line when creating resources and parameters
d91ec64 (#22363) Add file/line information to resource operations
a93904b (#22363) Make hash lookup agnostic for nil/undef lookup
5ab367f (#22363) Add test to assert that hash lookup miss == undef
0bf0e62 (#22363) Add label.plural support to LabelProvider
6173265 (#22363) Improve label provider
c37da60 (#22363) Improve error messages from [] operator
96862df (#22363) Add support for Float range.
e4e4a57 (maint) Fix failing tests after rebase to latest master
82300dc (maint) Raise exception when reaching corner case of code
merge
fa18883 (maint) Remove calls to debugger in performance /
serialization tests
7e83025 (maint) Fix indentation in benchmark_spec.rb
b2e845f (maint) Fix typo of o-diaresis char in comment
fe9112d (maint) Fix indentation of attr_reader
5f2281b (#22363) Add description of iterating an enumerable type with
each.
66fce66 (maint) Comment out unreachable code in pops bridge
facef51 (yardoc) Fix typo in source pos adapter yardoc.
4406e45 (yardoc) Fix stale yardoc for Resource [] operator
16c9097 (#22363) Remove validation of relationship expressions
1d121c3 (maint) Fix stale comments and remove commented out code.
718ebc4 (#22363) Fix problems from changed validation of
relationships.
4707539 (#22363) Fix faulty references to Puppet::AST
987b8ea (maint) Move require pops_bridge to pops.rb
ef3309e (pup-954) Correct flaws in the Pattern Type implementation
4ad3536 (maint) Fix type calculations for Variant
f5d0880 (pup-954) Fix issues with typesystem's handling of inference.
c502975 (pup-954) Fix failing test for Ruby 1.8.7 (hash entry order)
f6b77cc (PUP-992) Add support for Array as operand in relationships
26da689 (PUP-994) Ensure relationship operands have uniq content
b766960 (PUP-490) Remove partial import-support from future evaluator
f09ea59 (PUP-490) Remove partial support for import (the sequel)
dbdbde2 (PUP-866) Deprecate Import
9ce3dca (PUP-490) Remove comment that mentions "import" from
transform_calls
69d4f56 (PUP-490) Remove dead code after removal of ImportExpression
32197e7 (maint) Fix typo in example title
07abcba (PUP-954) Remove commented out debugger breakpoint
341bb39 (PUP-865) Add ability to parse a directory of manifests
9cde175 (PUP-865) Change name of shared test group to one not already
claimed
0dacd1e (PUP-865) Update defaults text for :manifest to show use of
directory
32bae2d (PUP-864) Add deprecation warning for mutation of array/hash
08e490a (PUP-939) Add ability to filter an enumerable type.
fdcee69 (PUP-939) Update documentation of filter function.
4d7a26e (PUP-939) Add support for enumerable type in reduce function.
bff9f8a (PUP-939) Add support to iterate over enumerable type in map
function
58e885c (PUP-939) Add support for enumerable type to slice function.
09a44c6 (maint) Fix "should_not_reassign" acceptance test for
future
parser
fbdc1cf (maint) Fix future parser inability to parse virtual class
instantiation
513ece6 (maint) Add Issue for reassignment of variable
65e4739 (maint) Move 'jeff_append_to_array' from acceptance to
integration test
a475153 (maint) Make integratin/scope_spec run for both current &
future parser
e07333c (maint) Fix issue with dumping a future evaluator Expression
a07ee79 (maint) Fix dumping of ast (PopsBridge::Expression).
71e9217 (maint) Fix flawed test for future evaluator
1741f32 (maint) Fix problems with scope bound? and exist? methods
f11b917 (maint) Fix issues in runtime3 support for future evaluator
1659b26 (maint) Fix various issues with +=, -= in future evaluator
8a68b3d (maint) Differentiate between re-assignment and reserved var
assignment
1d9692d (maint) Make [] operator flatten keys for all LHS types
except hash.
8c8e101 (maint) Fix failing test for access operator since array is
now ok
bc4d7b9 (PUP-910) Convert args from 4x representation to 3x
7d1cf4c (maint) Make 3x conversion use verbatim types for non
Host/Resource.
29b705d (maint) Make Resource::Type use the CodeMerger strategy
9efd726 (pup-546) Remove hiera2 support from binder
11be2bf (pup-546) Remove automatic injector lookup for class
parameters.
3937029 (pup-546) Remove hiera2.rb (central file with require's for
hiera2)
c494b1e (pup-546) Update default.rb and remove mention of hiera2
a223088 (PUP-546) Replace lookup function with something useful
16909de (PUP-546) Fix problems with lookup after removal of hiera2
3215d45 (maint) Provide option to 4x->3x convert to handle :undef
differently
6b5b08b (PUP-798) Add call to watch_files to ensure reparsing
48c73a2 (maint) Add Optional Type
092ee00 (maint) Add support for Optional in TypeParser and TypeFactory
bff6ed3 (maint) Make handling of undef more strict as a type
8590720 (maint) Make injector accept undef/nil when doing type
checking
3d1ddf1 (maint) Fix several issues with type system implementation
fa4e64e (maint) Add support for creating the PType (metatype) in type
factory
860b0d0 (maint) Add support for Type[T] in access operator
a702bb8 (maint) Add test of Type[T] access operator.
cda3993 (maint) Add support for Type[T] in TypeParser
eb0196d (maint) Add support for Ruby['classname'] in access
operator.
335278d (maint) Add test for Ruby['classname']
5614f21 (maint) Add support for Ruby['classname'] in type parser
f8cb0ce (maint) Add support for Collection[<size constraint>] to
type
parser
4250646 (maint) Correct assignable? for Type without type parameter
a430cbc (maint) Add test for Type[Type[x]] instance? operations
be0cebf (maint) Fix inconsistency when case option is a Type.
93b43a0 (maint) Remove support for categories in the binder
44ac0e3 (yardoc) Fix yardoc text for Injector and BindingsFactory
b94a4aa (maint) Refactor Binder to not use two step creation.
5c48b2f (maint) Cleanup spec tests after refactor of binder one step
create
091730d (maint) Add support for final binding
255df4e (maint) Add handling of layered multibind
de12ade (maint) Add convenient create/override ability to Injector
6fccece (PUP-1176) Add evaluator feature switch for future/current
evaluator
0b401fc (PUP-1176) Add feature switch for evaluator to ParserFactory
33b3920 (maint) Fix typo in documentation for --parser and --evaluator
c2446db (PUP-1144) Make future parser accept $_private
1304a33 (PUP-1144) Fix up failing tests (pending new/better
validation)
ae9d4f9 (PUP-1144) Make variable name checking stricter
ca3adc4 (PUP-800) Add offset and length to Locatable base class in
model
fecccb3 (maint) Remove stale commented code
f49b9ce (maint) Fix up type parser's handling of String
938b4e7 (PUP-716) Change Puppet::FileSystem::File to module methods
4592401 (PUP-716) Change more tests after refactoring
b5d8439 (PUP-716) Make more tests in fileset_spec pass
268483c (PUP-716) Fix up fileset_spec (1 failing test remains)
0e02e6b (PUP-716) Fix up content_spec.rb
0180757 (PUP-716) Fix up metadata_spec after refactored FileSystem
changes
a96e7f2 (PUP-716) Refactor and mae file_system/file_spec green
2cdcce4 (PUP-716) Refactor tempfile_spec after FileSystem API change
f28781c (PUP-716) Fix up base_spec tests after FileSystem API change
7c0d051 (PUP-716) Fix reference to removed FileSystem::File
dae0a9d (PUP-716) Fix typos after change of FileSystem API
45a7fd2 (PUP-716) Fix reference to FileSystem::File in implementation
e9d2c99 (PUP-716) Remove references to FileSystem::File in non code
3aa4c98 (PUP-716) Fix up direct_file_server_spec after FileServer API
change
b79bcfa (PUP-716) Fix up file_server_spec after FileSystem API change
1970b55 (PUP-716) Fix up json_spec after FileSystem API change
25d7156 (PUP-716) Fix up ssl_file_spec, yaml_spec after FileSystem
API change
09a4d48 (PUP-716) Fix up unit/network specs after FileSystem API
change
897f317 (maint) Add () around potentially problematic Ruby expression
6d3075c (PUP-716) Fix up FileSystem API change, tests indirector,
parser, node
6574ecc (PUP-716) Fix up tests after FileSystem API change
28e63af (PUP-716) Fix up tests after FileSystem API change
(unit/provider)
eec0c81 (PUP-761) Fix issues with unit/indirector/key/filespec
FileSystem API
e15cae8 (PUP-761) Make most FileSystem API change related test pass
1959c1a (maint) Remove unused file_system/file.rb
3649986 (PUP-761) Fix integration tests after FileSystem API change
f880bb7 (PUP-800) Clean up and improve handling of location / position
207bb32 (PUP-716) Fix issues found in review (mainly typos)
d584977 (PUP-1212) Fix uninformative stack backtrace in evaluator
errors
ca995cc (maint) Correct documentation of each function
3d55fa9 (PUP-1212) Add stacktrace to all evaluator issues
df859f8 (maint) remove dead code in scope_spec
02878e8 (PUP-1166) Add better error message when turning on
strict_variables
efa9eef (PUP-1529) Make squelch of parse error use context instead of
global
424ce15 (PUP-1579) Rename the Literal type to Scalar
df159e2 (PUP-1029) Add Enumeration - common place to produce an
Enumerator.
70eb5d9 (PUP-1029) Make filter function use common Enumeration
support.
720059c (PUP-1029) Make map function use common Enumeration support.
fef9f01 (PUP-1029) Make each function use the Enumeration support.
0ef996b (PUP-1029) Make reduce functon use common Enumeration support.
09bfbcb (PUP-1029) Make the slice function use the common Enumeration
support.
253866c (PUP-1029) Fix problem with class Enumerator btw. 1.8.7 and
1.9.3
ba8199d (PUP-1029) Fix problem with Enumerator for String chars on
Ruby 2.0.0
da6f08a (PUP-1029) Make map function consistent with others
34bf008 (PUP-1029) Update documentation of map function
36ec72d (PUP-1619) Add first impl of working Tuple Type
9c3068a (PUP-1619) Fix problem with parsing Tuple
690f029 (maint) Add Array type size constraint test
731d2ba (PUP-1619) Add more tests of Tuple Type
c527b94 (PUP-1619) Make Tuple a subtype of Data when its elements are
Data
b9840e5 (PUP-1619) Add support for a Struct Type
e372a34 (PUP-1619) Accept missing struct keys if type for key is
optional
8c27513 (maint) Fix issue with type_of not handling Optional type
e93ac60 (maint) Correct indentation in type parser
dbdff13 (PUP-1619) Add support for Struct in Type Parser
d5c26fe (PUP-1619) Add tests and fix issues in type parser
8952cdb (maint) Fix regexp with unescaped { causing warning when
running tests
e1d378d (PUP-1619) Fix problems with Ruby 1.8.7 Range min/max &
Infinity
d2cfada (PUP-1619) Fix typo in Tuple instance_of logic
5b8e79a (PUP-1619) Add instance? tests for struct and tuple
96fc0cf (maint) Add missing class method instance? to TypeCalculator
e79d999 (PUP-1029) Improve error message consistency and information
e0240fe (PUP-1592) Speed up loading of user defined types by 2x
5801c89 (maint) Remove stale comment about shortened list in
http_environments
e7b6d9f (maint) Make setting not screw up when interpolating a false
value
8ccb392 (PUP-542) Add structured facts to immutable $facts
b51c12b (PUP-542) Improve descriptions of trusted & immutable node
data settings
bf84e35 (maint) Add test for interpolation of setting having false
value
56521b7 (PUP-542) Make tests pass on 1.8.7 ('hash' vs
'Hash' in
message)
6fc7d25 (PUP-1576) Make hyphen in bare words legal (future parser)
8c7cc30 (maint) Fix typo in unicode escape in future lexer
a3befa0 (PUP-1144) Improve handling of underscore in variable names
95a3a09 (PUP-1814) Make double backslash in sq string behave as
documented.
2f8428c (PUP-30) Add foundation for heredoc and epp (parser and model)
f409405 (maint) Add eAllContainers enumerator to Containment
420edbd (PUP-30) Add SubLocatableExpression to handle "embedded"
expressions
e93eeaa (PUP-30) Add support for the SubLocatableExpression
74873c4 (PUP-30) Add SUBLOCATE token to lexer to communicate subspace
6e81e03 (PUP-30) Complete implementation of sublocated expression
022fe3d (maint) Fix issue when issure report was called without issues
c9f4c58 (maint) Fix missing argument in BindingsModelDumper
e13941e (maint) Speed up External Syntax Check if there are no errors
be64496 (PUP-30) Add tests for heredoc at parser and evaluator levels
6f97e45 (maint) Correct spelling in comments
787d3f3 (PUP-30) Make epp parser emit EPP_START, and generate Program
e692abb (PUP-30) Add tests for epp parser and make them pass
2437c17 (PUP-30) Add call-by-value of closure in evaluator
b72749e (PUP-30) Rename epptemplate and inline_epptemplate to use
'epp'
95aa2d6 (PUP-30) Complete implementation of functions epp, and
inline_epp
1539c1b (maint) Fix scope.find_global_scope when running tests
8ac3bd1 (PUP-30) Fix tests and issues occurring when running tests
b49ccda (PUP-30) Add more tests of epp() function
d782a60 (maint) Correct name of test for epp function
2a73421 (PUP-30) Add tests of inline_epp function
597cde0 (PUP-30) Fix problem with changed behavior in
StringScanner.scan_until
2cba220 (PUP-1895) Change <%( )%> to <%| |%> for EPP
parameters
12849b5 (PUP-1898) Fix broken exception raising when inline_epp gets
non string
a78662b (PUP-1898) Fix reference to ArgumentException
cffea9c (maint) Remove dead code checking non existing
ImportExpression
b3f8cb0 (maint) Remove dead-code check if ImportExpression is r-value
edd3e8e (PUP-1897) Allow EPP render expression to render a block
8a4d1b3 (PUP-979) Fix unparenthesized calls with hash to not give
strange error
a916a53 (PUP-1897) Change epp lexer/grammar to only accept single
rendered expr
323f228 (PUP-1897) Fix failing lexer2 test, and update with
additional tests
ab1ae3c (PUP-1897) Improve test of EPP trim, and expr after params
Iristyle (2):
c580cd9 Revert "Merge branch
'ticket/master/18342-windows-file-setting-owner-group'"
ffecc4e (maint) Fix major performance regression in Puppet specs
James Ralston (1):
f73142e (PUP-2118) (#22330) add btrfs to SELinux filesystem whitelist
Jasper Lievisse Adriaanse (5):
c6c2c74 (#23141) Add OpenBSD to the exclusion list for 'remounts'
in
mount type
87b7299 On systems without "-o remount", use "-o
update" except for
AIX.
b69a3e2 (#23376) Add support for ssh-ed25519 keys to
ssh_authorized_key type
fff10ad (PUP-1218) Add ssh-ed25519 support to the sshkey type
208ca9b (PUP-1218) Teach the ssh_authorized_key provider about
ssh-ed25519 too.
Javier Palacios (1):
c73d590 (PUP-648) Implement upgradeable and versionable on the pkgin
package provider
Jeff McCune (1):
cb55950 (maint) Fix can't modify frozen Symbol error on Ruby 2.1.0
Jeremy T. Bouse (1):
c6846c2 (PUP-1120) Fix private key permissions for group read
Joe Julian (1):
218e0f1 (PUP-1563) resolve_install_conflicts excessively recurses
John (JJ) Jawed (1):
be1e39d (PUP-1665) Fix traversal of signed certs when listing signing
requests.
John Julien (1):
c1a17ff (PUP-1510) Fixed forcelocal bug with ensure => absent
Jonathan Webb (1):
14e257d (PUP-1421) Remove flawed source validation in package
provider appdmg.
Josh Cooper (16):
40193c5 (PUP-1282) Express Windows specific gem dependencies
29509c3 (Maint) Fix load order dependency
1246979 (PUP-1120) Make modes of public ssl directories explicit
8fb2253 (PUP-1120) Be explicit about group for ssl directory
f1fed00 (PUP-1120) Remove group write permission for ca settings
ed2e92b (PUP-1407) Verify that CRL times are within expected ranges
e32b0e9 (PUP-1407) Verify extensions are still present after
revocation
4b75311 (PUP-1407) Actually test deserialization and CRLReasons
d65211e (PUP-1407) Fix specs on 187
5820d4c (PUP-1681) Always go through the native windows methods
5208c1a (PUP-1707) Ensure puppet man works for all applications
b6b7906 (PUP-1707) Ensure ERB generated help content is UTF-8 encoded
e418494 (PUP-1707) StringIO#set_encoding doesn't exist in ruby 1.8
e117af8 (PUP-1275) Never try to fork on Windows
3da573e (maint) Remove trailing commas
9936638 (PUP-1563) Don't recurse when dependencies are empty
Josh Partlow (64):
62cd3aa (#23373) Fix line number tracking for settings config
7cc05f5 (#23373) Always open config so we are reading from the
beginning
ff96ef3 (maint) Add an acceptance pre-suite step to set the parser
96caba1 (maint) Share common acceptance setup
2b5d183 (maint) Ensure rgen gem installed for future parser tests
a5a9c01 (maint) Windows ruby commands need a cmd /c prefix
c9ff5a9 (maint) Move everything out of el6 and into acceptance/
4ce17f7 (maint) Pin acceptance to beaker ~> 1.2
6ba2acb (maint) Script package pipeline submission for Jenkins
2179b4a (maint) Disable repo_proxy when running solaris acceptance
2479210 (maint) Don't cd to nonexistent el6 directory
3bba6db (maint) Remove an escaped return char that was breaking
solaris options
caf92e6 (maint) Check --parser setting on the test host
74bda42 (maint) Switch to setting Beaker log_level to debug
39d630f (PUP-798) E4ParserAdapter watches files through Environment
9acfb98 (maint) Uniform use of TypeCollectionHelper in Scope
37aabc4 (maint) No longer install json gem for future parser
acceptance runs
f7e81b3 (maint) Acceptance test selector tests for a string rather
than a type
959e0cc (main) Remove symlinks from acceptance harness
260eaf1 (maint) Simply confine test to any platform with Ruby shadow
7a1a025 (PUP-672) Puppet::Context is immutable.
d288d68 (PUP-672) Move TrustedInformation into Puppet::Context
59b13da (PUP-672) Fail fast if pop root of Context stack
513f5ff Revert "Merge pull request #2207 from
jpartlow/maint/master/simplify-confine-for-6857-test"
1004eae (PUP-724,#21922) Autoload compares only integer secs
781e579 (maint) Update fedora platform designation for ticket_6857
test
fa2f6cf (PUP-672) TrustedInformation handles a nil certificate.
f9b76ae (maint) Improve docs for acceptance ci:test:git from another
FORK
b390fc3 (PUP-716) File19Windows#symlink calls exist? on instance not
class.
33db03f (PUP-716) Assert path before making stat expectation
c593804 (maint) Reset Puppet::Parser::Functions early in
TestHelper.initialize
f381f2c (PUP-1118) Fix rdoc1 specs to match changes to rdoc
puppet_parser_core
f4b6cc2 (PUP-576) Handle Ruby 2.0 OpenSSL lib error message
284bbfc (PUP-576,PUP-1064) Update to activerecord 3.2.x to work
around a Ruby 2.x issue
7534bf7 (maint) Acceptance install_utils uses release rpm symlinks
3ebdccf (PUP-576) Update store_configs test for Debian
04a657c (PUP-1551) Change environmentdir to environmentpath
370d5bc (PUP-1551) Rename environmentdir acceptance test to
environmentpath
e17268b (PUP-1551) Use environmentpath in can_enumerate_environments
test
6b9b19c (PUP-753) Use an earlier version of ruby-prof on 1.8.7
85ffdfb (PUP-753) Constrain ruby-prof solely to the development group
c65745c (PUP-1574) Environment setting does not override apply/parser
manifest
a2c320c (PUP-1588) Constrain new msgpack specs to only run with
msgpack lib
6a5600f (PUP-1584) Module tool acceptance with_environment tests
directory envs
a07e73b (PUP-1584) module_tool uses current_environment with
target_dir overrides
f3c2d6c (PUP-1584) Be explicit about adding log functions to root
environment
444c333 (PUP-1584) Expand some modulepath settings for windows
5d7ff32 (PUP-1676) Puppet::Settings retrieves directory environment
settings
9725e5b (PUP-1676) Environmentpath acceptance test uses basemodulepath
30ee60d (PUP-1676) Allow main as a directory environment.
0b0a3b6 (DOC) Environments route is v2.0 not v2
f9a51e9 (maint) Broaden managehome acceptance test on windows 2003
445c54e (PUP-1678) Puppet::Node::Environment.create expands manifest
path
1df0eb4 (maint) Use with_puppet_running_on in backported cve tests.
fd0ed3c (maint) Broaden managehome acceptance test on windows 2003
9088d34 (PUP-1765) Directory env respects cmdline modulepath and
manifest
674bee9 (maint) Match current spec style and usage
c40941d (PUP-1765) Change assert_not_match to assert_no_match
c977045 (PUP-1372) Add variable and pops type checks to defined
function
5d49d37 (PUP-1765) Use master ssldir setting with default environment
test
c00e883 (maint) Release hosts to the vcloud pooling api
a0ae696 (maint) Remove unused rsync for preserved acceptance test
reruns
30aa2be (maint) Pin to Beaker 1.7 and default to preserve_hosts onfail
ba3b5d9 (maint) Change regex for picking up beaker hosts to match
current output
Josh Sharpe (1):
2292f59 (PUP-1420) Move global StateMachine to Puppet::Zone
Joshua Hoblitt (1):
e37330f (PUP-1564) add :uninstall_options feature to package rpm
provider
Ken Barber (1):
0e794fe PUP-1772 Change api for Puppet::Util::Profiler#profile to
public
Kylo Ginsberg (40):
157ac49 (maint) Fix spelling in a comment.
11fd446 (#23141) Fix remount on bsd if options are specified
a04d428 (maint) Remove obsolete line of code
5e7ad8b (#23141) Split spec test into two for the two non-remounts
scenarios
cbe63d3 (#23141) Remove Darwin from the list of OSs with the new
'update' support
e1fde8c (maint) Pin beaker to 1.2.0
1b112a1 (maint) Fix a comment.
6494a11 (maint) Fix rdoc generator for Ruby 2.1.0
3c79f8a (maint) Drop -v flag when untarring acceptance artifacts
236b87d (maint) Add temp workaround for travis
b1dfbd2 (maint) Add a diagnostic check that lmhosts is running
1fa50a4 (PUP-1151) Fix the master port # (thus addressing a failure
on windows)
f2e7760 (maint) Derive path for status.json (rather than fixed offset
from cwd)
a685897 (maint) Fix typo in a RuntimeError name
22a0032 (maint) Fix typo in spec test description
44ae495 (pup-923) Add a fedora 20 config
2f31653 (pup-1505) Switch to using facter.search_external for setting
search paths for external facts
c5162bc (maint) Fix another broken rspec restriction
2418ebd (pup-640) Update report schema for error events
6c982a9 (maint) Add how-to for destroying individual hosts
379c5af (maint) Switch from -fd to -fp for specs to reduce disk space
usage
6d2eeaa (maint) Unset the defaultprovider after caching it
c87f1fe (maint) Fix typo in spec
1d52d35 (pup-1636) Add a rhel7 config
9ffb57a (pup-1636) Add firewall service name for rhel7
cfdcf76 (maint) Fix two example command lines that were missing
'rake'
06d5f53 (maint) Add newline at end-of-file under lib
4bdee68 (pup-1636) Skip enc test on RHEL7
159a979 (pup-1636) Confine two tests to el5 and el6 which are all the
tests are written for
8b54913 (pup-1732) Report only services from systemd
8ae792f (pup-1732) Remove the fixture and stub for what *not* to do
f597f80 (maint) Remove a pending test which isn't pending on anything
planned or asked for
04067ed (maint) Revert to installing facter.git#stable if testing
from github
d5fedb3 (pup-1505) Correct require
4444551 (pup-1766) Remove duplicate test
5cc77cc (pup-1766) Add support for multiple defaultfor's
0b5cbc8 (pup-1766) Set systemd as a default provider for the service
type on rhel7
784b5e6 (pup-1766) Add support for :feature to defaultfor
d25afca (pup-1766) Break out at first failed match
079e3ec (pup-1825) Allow use of facter 2.x
Luis Fernandez Alvarez (1):
7fb721d (#23219) - Fix support of extra arguments in windows service
Marc Seeger (1):
8a877d8 (maint) Add Ruby 2.1.0 to Travis CI
Matthew Nicholas Bradley (1):
9c888b6 Correct all misspelled instances of the word occurred
Nick Fagerlund (15):
9a9bf1b Maint: Be more clear that puppet queue is deprecated
ef6943c Maint: Add link to list of lenses in Augeas type's lens
parameter
bad6c0e Maint: Catch a notice/notify confusion in a function
description
c052a47 Maint: (#18294) Update docs for ip property of Zone type
(allows defrouters since 2.6)
d74dd9c Maint: Move pkgdmg documentation into provider description;
document changed behavior
5f2dc71 Maint: Remove remaining links to wiki pages in Puppet source
b915e7f (docs) Update description for Exec type's logoutput parameter
6d26a20 (maint) Revise and reformat docs for validate_cmd parameter
a0d87d2 (maint) Scrub whitespace on global setting descriptions when
inserting into man pages
24c8fa2 (PUP-1707) Fix possible gsubs on nil in man page ERB template
e9c916d (maint) Revise docs for evaluator setting
641f5ea (maint) Improve Puppet::Util::Docs.scrub's handling of
one-liners
85922de (maint) Typo fixes: repeated words (e.g. "the the")
ce5d84d (maint) Revise help for puppet config subcommand
3bd0a26 (maint) Banish "configuration parameter"
Patrick Carlisle (2):
03734e5 (#20584) Add acceptance test for safer yaml handling in
request body
56c2a36 (#20584) Add acceptance test for safer yaml handling in query
parameters
Paweł Tomulik (5):
a3881a9 Suppress misleading warn. in openbsd provider
6ba2a7b (pup-1369) Add package_settings property for package
652f3b2 (pup-1369) Add more specs for package/package_settings
4ef4e50 (pup-1369) Fixed a bug in package/package_settings
0e283d8 fix regular expression in ClassGen#is_constant_defined?
Pedro Côrte-Real (2):
b08f570 Bug 1051 (platforms mistook for versions)
39a8807 (PUP-1051) Add rspec test to verify fix
Peter Huene (15):
0bb13a1 (PUP-1492) Fix pacman specs so that they pass when yaourt is
installed. Stub out the location of yaourt. Fix spec that assumes pacman is
executed when yaourt is installed.
295467b (PUP-1318) Fixing expected parameters in service provider
specs now that service output is no longer squelched by default. Redmine
565, a seven year old issue referenced in a comment in
lib/puppet/provider/service/service.rb, is no longer applicable to
`Puppet::Util::Execution#execute`. It was squelching service output
because of a bug in ruby where `#read` on a pipe never returned when the
spawned process is SIGTERM'd by one of its children. The current
implementation of `Puppet::Util::Execution#execute` redirects to a
temporary file instead of reading from a pipe. We should no longer be
squelching service output so that users can easily diagnose service
failures.
21ddae1 (maint) Adding .ruby-version and .ruby-gemset to .gitignore
for RVM users.
da5bc0e (maint) Fix acceptance test failure caused by backtrace
preservation change (GH-2293). We should not be accessing the exception
object from the else clause of the begin/rescue/else.
8e835d5 (maint) Fixing acceptance test failure caused by GH-2293.
ab168ce (PUP-1278) Updating Windows service event messages.
065c4f5 (PUP-1473) Fix issue with UTF-8 in user comments
18a87a4 (maint) Fix pkgin package provider spec to ensure resource
uses the pkgin provider.
a76d681 (maint) Fix yumrepo inifile spec to stub the correct method
69a4051 (maint) Fix spec for UTF-8 strings in user comment properties
abfc76c (PUP-897) Allow rpm package provider to query by virtual
package name.
e61ac84 (maint) Fix useradd spec when using ruby-shadow 2.3.3.
88c1012 (maint) Change Travis CI to output documentation format for
specs.
420a9db (maint) Add rake task for parallelizing specs.
7c4cfe2 (maint) Fix parallel:spec rake task when dependencies are not
present.
Peter Meier (2):
658f123 Fix PUP-1568 - no success variable anymore
49412e0 Fix broken spec & wording of error message.
Peter Souter (2):
50a9eb3 (PUP-1318) Make service squelch false This will allow us to
get failure output from commands...
4c38910 (PUP-1318) Service now outputs full errorlog on fail
Raphaël Pinson (1):
5d70a82 Fix small typo
Rob Braden (1):
f7f4550 (pup-1491)(packaging) Remove Fedora 18 as a default build
target
Rob Reynolds (1):
fe4bcba (PUP-1282) Allow patch version float on windows dependencies
Ryan McKern (3):
47316e9 Add initial support for building in a RHEL 7 mock
69f5e99 (maint) Update Debian dependencies for new debian-testing
packages
64f8b93 (packaging) Update PUPPETVERSION to 3.5.0-rc1
Sam Kottler (1):
78b54c7 (PUP-1463) Enable puppet.service during upgrade if
puppetagent.service was previously enabled
Sebastian Schmidt (2):
64f1a1a (#7659) Fix commentstack when parsing hashes
4ebf3af (PUP-652) Fix error reporting for ParsedFile
Stephen Gelman (1):
34c4697 (#7173) Add HTTP basic auth support to HTTP reporting in
Puppet.
Vincent Ambo (2):
28490d2 (PUP-1085) Make Pacman provider group-aware
82cdf16 (PUP-1085) Add and fix pacman provider tests
Will Farrington (1):
93102e5 (PUP-1846) File content diffing should respect loglevel
fhrbek (1):
d56347a PUP-1322 Do not fail hard on unparseable files
glenn.sarti (1):
2cfc323 (PUP-1278) Windows Puppet Agent Service gracefully terminates
after succesfully being put into a Paused state
glennsarti (2):
f605577 (PUP-1048) Windows puppet service should log to the eventlog
0ce0c64 (PUP-1048) Windows puppet service should log to the eventlog
jrussek (4):
d45930c (PUP-1387) fixes wrong hash in subjectKeyIdentifier
9fbcbf0 (PUP-1409) add authorityKeyIdentifier to client certificates
29dffc4 (PUP-1407) Rewrite certificate_revocation_list test to use a
temporary CA instead of mocks
64f94d1 (PUP-1407) Add authorityKeyIdentifier to CRL to make the CA
conform to RFC5280
--
Ryan McKern
Release Engineer, Puppet Labs
*Join us at PuppetConf 2014, September 23-24 in San Francisco* -*
http://bit.ly/pupconf14
<http://bit.ly/pupconf14>*
Register now and save $350!
--
You received this message because you are subscribed to the Google Groups
"Puppet Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to puppet-users+unsubscribe@googlegroups.com.
To view this discussion on the web visit
https://groups.google.com/d/msgid/puppet-users/CADj7mEdPFqZk1XSFBsQ3EVm8BfM3cmcK1shin060d_2XrHwDMA%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.