summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Schmitt <david.schmitt@puppet.com>2016-10-10 10:42:05 +0100
committerDavid Schmitt <david.schmitt@puppet.com>2016-10-10 16:40:12 +0100
commitc2dd2898f2d965614d9fa0ccc5ade57df910f800 (patch)
treee8b80d7f21e133c8a3896e755ff4751753943ed8
parent59553c8c2ec1f0732c4383ab31ab8b7a05da544e (diff)
Release prep for 4.13.0
* Changelog & Thanks * Add known issues/version compatiblity to README * Whitespace fixes * Update version and dependency information * Fix issue tracker URL
-rw-r--r--CHANGELOG.md47
-rw-r--r--README.markdown31
-rw-r--r--metadata.json8
3 files changed, 67 insertions, 19 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 2bc584b..8696b02 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,50 @@
+## Supported Release 4.13.0
+### Summary
+
+This version of stdlib deprecates a whole host of functions, and provides stepping stones to move to Puppet 4 type validations. Be sure to check out the new `deprecation()` and `validate_legacy()` functions to migrate off the deprecated v3-style data validations.
+
+Many thanks to all community contributors: bob, Dmitry Ilyin, Dominic Cleal, Joris, Joseph Yaworski, Loic Antoine-Gombeaud, Maksym Melnychok, Michiel Brandenburg, Nate Potter, Romain Tartière, Stephen Benjamin, and Steve Moore, as well as anyone contributing in the code review process and by submitting issues.
+
+Special thanks to [Voxpupuli's](https://voxpupuli.org/) Igor Galić for donating the puppet-tea types to kickstart this part of stdlib.
+
+
+#### Deprecations
+* `validate_absolute_path`, `validate_array`, `validate_bool`, `validate_hash`, `validate_integer`, `validate_ip_address`, `validate_ipv4_address`, `validate_ipv6_address`, `validate_numeric`, `validate_re`, `validate_slength`, `validate_string`, and their `is_` counter parts are now deprecated on Puppet 4. See the `validate_legacy()` description in the README for help on migrating away from those functions.
+* The `dig` function is provided by core puppet since 4.5.0 with slightly different calling convention. The stdlib version can still be accessed as `dig44` for now.
+
+
+#### Features
+* Add Puppet 4 data types for Unix, and Windows paths, and URLs.
+* Add `deprecation` function to warn users of functionality that will be removed soon.
+* Add `validate_legacy` function to help with migrating to Puppet 4 data types.
+
+* Add `any2bool` function, a combination of of `string2bool` and `num2bool`.
+* Add `delete_regex` function to delete array elements matching a regular expression.
+* Add `puppet_environmentpath` fact to expose the `environmentpath` setting.
+* Add `regexpescape` function to safely insert arbitrary strings into regular expressions.
+* Add `shell_escape`, `shell_join`, and `shell_split` functions for safer working with shell scripts..
+
+* The `delete` function now also accepts regular expressions as search term.
+* The `loadyaml` function now accepts a default value, which is returned when there is an error loading the file.
+
+#### Bugfixes
+* Fix `file_line.match_for_absence` implementation and description to actually work. (MODULES-3590)
+* Fix `getparam` so that it can now also return `false`. (MODULES-3933)
+* Fix the fixture setup for testing and adjust `load_module_metadata` and `loadjson` tests.
+* Fix `defined_with_params` to handle `undef` correctly on all puppet versions. (PUP-6422, MODULES-3543)
+* Fix `file_line.path` validation to use puppet's built in `absolute_path?` matcher.
+
+#### Minor Improvements
+* README changes: improved descriptions of `deep_merge`, `delete`, `ensure_packages`, `file_line.after`, `range`, and `validate_numeric`.
+* The `getvar` function now returns nil in all situations where the variable is not found.
+* Update the `dig44` function with better `undef`, `nil`, and `false` handling.
+* Better wording on `str2bool` argument validation error message.
+
+
+### Known issues
+* The `validate_legacy` function relies on internal APIs from Puppet 4.4.0 (PE 2016.1) onwards, and doesn't work on earlier versions.
+* Puppet 4.5.0 (PE 2016.2) has a number of improvements around data types - especially error handling - that make working with them much nicer.
+
## Supported Release 4.12.0
###Summary
diff --git a/README.markdown b/README.markdown
index c90c9c3..c0b3155 100644
--- a/README.markdown
+++ b/README.markdown
@@ -1,6 +1,6 @@
-#stdlib
+# stdlib
-####Table of Contents
+#### Table of Contents
1. [Overview](#overview)
2. [Module Description - What the module does and why it is useful](#module-description)
@@ -10,11 +10,11 @@
5. [Limitations - OS compatibility, etc.](#limitations)
6. [Development - Guide for contributing to the module](#development)
-##Overview
+## Overview
Adds a standard library of resources for Puppet modules.
-##Module Description
+## Module Description
This module provides a standard library of resources for the development of Puppet modules. Puppet modules make heavy use of this standard library. The stdlib module adds the following resources to Puppet:
@@ -27,11 +27,11 @@ This module provides a standard library of resources for the development of Pupp
> *Note:* As of version 3.7, Puppet Enterprise no longer includes the stdlib module. If you're running Puppet Enterprise, you should install the most recent release of stdlib for compatibility with Puppet modules.
-##Setup
+## Setup
Installing the stdlib module adds the functions, facts, and resources of this standard library to Puppet.
-##Usage
+## Usage
After you've installed stdlib, all of its functions, facts, and resources are available for module use or development.
@@ -136,20 +136,23 @@ All parameters are optional, unless otherwise noted.
### Data Types
-#### `absolutepath`
+#### `Stdlib::Absolutepath`
A strict absolute path type. Uses a Variant of Unixpath and Windowspath types.
-Acceptable input examples: /usr2/username/bin:/usr/local/bin:/usr/bin:.
+Acceptable input examples: /var/log
+ /usr2/username/bin:/usr/local/bin:/usr/bin:.
C:\\WINDOWS\\System32
+Unacceptable input example: ../relative_path
-#### `httpsurl`
+#### `Stdlib::Httpsurl`
Matches https URLs.
+
Acceptable input example: https://hello.com
Unacceptable input example: httds://notquiteright.org
-#### `httpurl`
+#### `Stdlib::Httpurl`
Matches both https and http URLs.
@@ -157,7 +160,7 @@ Acceptable input example: https://hello.com
http://hello.com
Unacceptable input example: httds://notquiteright.org
-#### `unixpath`
+#### `Stdlib::Unixpath`
Matches paths on Unix type Operating Systems.
@@ -165,7 +168,7 @@ Acceptable input example: /usr2/username/bin:/usr/local/bin:/usr/bin:.
/var/tmp
Unacceptable input example: C:/whatever
-#### `windowspath`
+#### `Stdlib::Windowspath`
Matches paths on Windows Operating systems.
@@ -1439,6 +1442,8 @@ validate_legacy("Optional[String]", "validate_re", "Value to be validated", ["."
This function supports updating modules from Puppet 3 style argument validation (using the stdlib `validate_*` functions) to Puppet 4 data types, without breaking functionality for those depending on Puppet 3 style validation.
+> Note: This function relies on internal APIs from Puppet 4.4.0 (PE 2016.1) onwards, and doesn't work on earlier versions.
+
##### For module users
If you are running Puppet 4 and receiving deprecation warnings about `validate_*` functions, the `validate_legacy` function can help you find and resolve the deprecated code.
@@ -1656,7 +1661,7 @@ Versions | Puppet 2.6 | Puppet 2.7 | Puppet 3.x | Puppet 4.x |
Puppet Labs modules on the Puppet Forge are open projects, and community contributions are essential for keeping them great. We can’t access the huge number of platforms and myriad hardware, software, and deployment configurations that Puppet is intended to serve. We want to keep it as easy as possible to contribute changes so that our modules work in your environment. There are a few guidelines that we need contributors to follow so that we can have a chance of keeping on top of things. For more information, see our [module contribution guide](https://docs.puppetlabs.com/forge/contributing.html).
To report or research a bug with any part of this module, please go to
-[http://tickets.puppetlabs.com/browse/PUP](http://tickets.puppetlabs.com/browse/PUP).
+[http://tickets.puppetlabs.com/browse/MODULES](http://tickets.puppetlabs.com/browse/MODULES).
## Contributors
diff --git a/metadata.json b/metadata.json
index 514023e..07672c3 100644
--- a/metadata.json
+++ b/metadata.json
@@ -1,6 +1,6 @@
{
"name": "puppetlabs-stdlib",
- "version": "4.12.0",
+ "version": "4.13.0",
"author": "puppetlabs",
"summary": "Standard library of resources for Puppet modules.",
"license": "Apache-2.0",
@@ -100,16 +100,12 @@
],
"requirements": [
{
- "name": "pe",
- "version_requirement": ">= 3.0.0 < 2015.4.0"
- },
- {
"name": "puppet",
"version_requirement": ">=2.7.20 <5.0.0"
}
],
"description": "Standard Library for Puppet Modules",
"dependencies": [
-
+
]
}