This release largely makes `apt::key` and `apt::source` API-compatible with the 1.8.x versions for ease in upgrading, and also addresses some compatibility issues with older versions of Puppet.
####Features
- Add API compatibility to `apt::key` and `apt::source`
This is a major rewrite of the apt module. Many classes and defines were removed, but all existing functionality should still work. Please carefully review documentation before upgrading.
####Backwards-incompatible changes
As this is a major rewrite of the module there are a great number of backwards incompatible changes. Please review this and the updated README carefully before upgrading.
#####`apt_key`
-`keyserver_options` parameter renamed to `options`
#####`apt::backports`
- This no longer works out of the box on Linux Mint. If using this on mint, you must specify the `location`, `release`, `repos`, and `key` parameters. [Example](examples/backports.pp)
#####`apt::builddep`
- This define was removed. Functionality can be matched passing 'build-dep' to `install_options` in the package resource. [Example](examples/builddep.pp)
#####`apt::debian::testing`
- This class was removed. Manually add an `apt::source` instead. [Example](examples/debian_testing.pp)
#####`apt::debian::unstable`
- This class was removed. Manually add an `apt::source` instead. [Example](examples/debian_unstable.pp)
#####`apt::force`
- This define was removed. Functionallity can be matched by setting `install_options` in the package resource. See [here](examples/force.pp) for how to set the options.
#####`apt::hold`
- This define was removed. Simply use an `apt::pin` with `priority => 1001` for the same functionality.
#####`apt`
-`always_apt_update` - This parameter was removed. Use `update => { 'frequency' => 'always' }` instead.
-`apt_update_frequency` - This parameter was removed. Use `update => { 'frequency' => <frequency> }` instead.
-`disable_keys` - This parameter was removed. See this [example](examples/disable_keys.pp) if you need this functionality.
-`proxy_host` - This parameter was removed. Use `proxy => { 'host' => <host> }` instead.
-`proxy_port` - This parameter was removed. Use `proxy => { 'port' => <port> }` instead.
-`purge_sources_list` - This parameter was removed. Use `purge => { 'sources.list' => <bool> }` instead.
-`purge_sources_list_d` - This parameter was removed. Use `purge => { 'sources.list.d' => <bool> }` instead.
-`purge_preferences` - This parameter was removed. Use `purge => { 'preferences' => <bool> }` instead.
-`purge_preferences_d` - This parameter was removed. Use `purge => { 'preferences.d' => <bool> }` instead.
-`update_timeout` - This parameter was removed. Use `update => { 'timeout' => <timeout> }` instead.
-`update_tries` - This parameter was removed. Use `update => { 'tries' => <tries> }` instead.
#####`apt::key`
-`key` - This parameter was renamed to `id`.
-`key_content` - This parameter was renamed to `content`.
-`key_source` - This parameter was renamed to `source`.
-`key_server` - This parameter was renamed to `server`.
-`key_options` - This parameter was renamed to `options`.
#####`apt::release`
- This class was removed. See this [example](examples/release.pp) for how to achieve this functionality.
#####`apt::source`
-`include_src` - This parameter was removed. Use `include => { 'src' => <bool> }` instead. ***NOTE*** This now defaults to false.
-`include_deb` - This parameter was removed. Use `include => { 'deb' => <bool> }` instead.
-`required_packages` - This parameter was removed. Use package resources for these packages if needed.
-`key` - This can either be a key id or a hash including key options. If using a hash, `key => { 'id' => <id> }` must be specified.
-`key_server` - This parameter was removed. Use `key => { 'server' => <server> }` instead.
-`key_content` - This parameter was removed. Use `key => { 'content' => <content> }` instead.
-`key_source` - This parameter was removed. Use `key => { 'source' => <source> }` instead.
-`trusted_source` - This parameter was renamed to `allow_unsigned`.
#####`apt::unattended_upgrades`
- This class was removed and is being republished under the puppet-community namespace. The git repository is available [here](https://github.com/puppet-community/puppet-unattended_upgrades) and it will be published to the forge [here](https://forge.puppetlabs.com/puppet/unattended_upgrades).
####Changes to default behavior
- By default purge unmanaged files in 'sources.list', 'sources.list.d', 'preferences', and 'preferences.d'.
- Changed default for `package_manage` in `apt::ppa` to `false`. Set to `true` in a single PPA if you need the package to be managed.
-`apt::source` will no longer include the `src` entries by default.
-`pin` in `apt::source` now defaults to `undef` instead of `false`
####Features
- Added the ability to pass hashes of `apt::key`s, `apt::ppa`s, and `apt::setting`s to `apt`.
- Added 'https' key to `proxy` hash to allow disabling `https_proxy` for the `apt::ppa` environment.
- Added `apt::setting` define to abstract away configuration.
- Added the ability to pass hashes to `pin` and `key` in `apt::backports` and `apt::source`.
This is the last planned feature release of the 1.x series of this module. All new features will be evaluated for puppetlabs-apt 2.x.
This release includes many important features, including support for full fingerprints, and fixes issues where `apt_key` was not supporting user/password and `apt_has_updates` was not properly parsing the `apt-check` output.
####Changes to default behavior
- The apt module will now throw warnings if you don't use full fingerprints for `apt_key`s
####Features
- Use gpg to check keys to work around https://bugs.launchpad.net/ubuntu/+source/gnupg2/+bug/1409117 (MODULES-1675)
- Add 'oldstable' to the default update origins for wheezy
- Add utopic, vivid, and cumulus compatibility
- Add support for full fingerprints
- New parameter for `apt::source`
-`trusted_source`
- New parameters for `apt::ppa`
-`package_name`
-`package_manage`
- New parameter for `apt::unattended_upgrades`
-`legacy_origin`
- Separate `apt::pin` from `apt::backports` to allow pin by release instead of origin
####Bugfixes
- Cleanup lint and future parser issues
- Fix to support username and passwords again for `apt_key` (MODULES-1119)
- Fix issue where `apt::force``$install_check` didn't work with non-English locales (MODULES-1231)
- Allow 5 digit ports in `apt_key`
- Fix for `ensure => absent` in `apt_key` (MODULES-1661)
- Fix `apt_has_updates` not parsing `apt-check` output correctly
- Fix inconsistent headers across files (MODULES-1200)
- Clean up formatting for 50unattended-upgrades.erb