Merge pull request #869 from lelutin/purge_apt_conf
[puppet-modules/puppetlabs-apt.git] / CHANGELOG.md
1 # Change log
2
3 All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](http://semver.org).
4
5 ## [v7.1.0](https://github.com/puppetlabs/puppetlabs-apt/tree/v7.1.0) (2019-07-29)
6
7 [Full Changelog](https://github.com/puppetlabs/puppetlabs-apt/compare/v7.0.1...v7.1.0)
8
9 ### Added
10
11 - \(FM-8215\) Convert to using litmus [\#864](https://github.com/puppetlabs/puppetlabs-apt/pull/864) ([florindragos](https://github.com/florindragos))
12
13 ## [v7.0.1](https://github.com/puppetlabs/puppetlabs-apt/tree/v7.0.1) (2019-05-13)
14
15 [Full Changelog](https://github.com/puppetlabs/puppetlabs-apt/compare/7.0.0...v7.0.1)
16
17 ## [7.0.0](https://github.com/puppetlabs/puppetlabs-apt/tree/7.0.0) (2019-04-24)
18
19 [Full Changelog](https://github.com/puppetlabs/puppetlabs-apt/compare/6.3.0...7.0.0)
20
21 ### Changed
22
23 - pdksync - \(MODULES-8444\) - Raise lower Puppet bound [\#853](https://github.com/puppetlabs/puppetlabs-apt/pull/853) ([david22swan](https://github.com/david22swan))
24
25 ### Added
26
27 - Allow weak SSL verification for apt\_key [\#849](https://github.com/puppetlabs/puppetlabs-apt/pull/849) ([tuxmea](https://github.com/tuxmea))
28
29 ## [6.3.0](https://github.com/puppetlabs/puppetlabs-apt/tree/6.3.0) (2019-01-21)
30
31 [Full Changelog](https://github.com/puppetlabs/puppetlabs-apt/compare/6.2.1...6.3.0)
32
33 ### Added
34
35 - Add support for dist-upgrade & autoremove action [\#832](https://github.com/puppetlabs/puppetlabs-apt/pull/832) ([aboks](https://github.com/aboks))
36 - \(MODULES-8321\) - Add manage\_auth\_conf parameter [\#831](https://github.com/puppetlabs/puppetlabs-apt/pull/831) ([eimlav](https://github.com/eimlav))
37
38 ### Fixed
39
40 - \(MODULES-8418\) Fix /etc/apt/auth.conf owner changing endlessly [\#836](https://github.com/puppetlabs/puppetlabs-apt/pull/836) ([antaflos](https://github.com/antaflos))
41 - pdksync - \(FM-7655\) Fix rubygems-update for ruby \< 2.3 [\#835](https://github.com/puppetlabs/puppetlabs-apt/pull/835) ([tphoney](https://github.com/tphoney))
42 - \(MODULES-8326\) - apt-transport-https not ensured properly [\#830](https://github.com/puppetlabs/puppetlabs-apt/pull/830) ([eimlav](https://github.com/eimlav))
43
44 ## [6.2.1](https://github.com/puppetlabs/puppetlabs-apt/tree/6.2.1) (2018-11-20)
45
46 [Full Changelog](https://github.com/puppetlabs/puppetlabs-apt/compare/6.2.0...6.2.1)
47
48 ### Fixed
49
50 - \(MODULES-8272\) - Revert "Autorequire dirmngr in apt\_key types" [\#825](https://github.com/puppetlabs/puppetlabs-apt/pull/825) ([eimlav](https://github.com/eimlav))
51
52 ## [6.2.0](https://github.com/puppetlabs/puppetlabs-apt/tree/6.2.0) (2018-11-19)
53
54 [Full Changelog](https://github.com/puppetlabs/puppetlabs-apt/compare/6.1.1...6.2.0)
55
56 ### Added
57
58 - \(MODULES-8081\): add support for hkps:// protocol in apt::key [\#815](https://github.com/puppetlabs/puppetlabs-apt/pull/815) ([simondeziel](https://github.com/simondeziel))
59
60 ### Fixed
61
62 - Apt-key fixes to properly work on Debian 9 [\#822](https://github.com/puppetlabs/puppetlabs-apt/pull/822) ([ekohl](https://github.com/ekohl))
63 - \(maint\) - Update Link to REFERENCE.md [\#811](https://github.com/puppetlabs/puppetlabs-apt/pull/811) ([pmcmaw](https://github.com/pmcmaw))
64
65 ## [6.1.1](https://github.com/puppetlabs/puppetlabs-apt/tree/6.1.1) (2018-10-01)
66
67 [Full Changelog](https://github.com/puppetlabs/puppetlabs-apt/compare/6.1.0...6.1.1)
68
69 ### Fixed
70
71 - Revert "\(MODULES-6408\) - Fix dirmngr install failing" [\#808](https://github.com/puppetlabs/puppetlabs-apt/pull/808) ([eimlav](https://github.com/eimlav))
72
73 ## [6.1.0](https://github.com/puppetlabs/puppetlabs-apt/tree/6.1.0) (2018-09-28)
74
75 [Full Changelog](https://github.com/puppetlabs/puppetlabs-apt/compare/6.0.0...6.1.0)
76
77 ### Added
78
79 - pdksync - \(FM-7392\) - Puppet 6 Testing Changes [\#800](https://github.com/puppetlabs/puppetlabs-apt/pull/800) ([pmcmaw](https://github.com/pmcmaw))
80 - pdksync - \(MODULES-6805\) metadata.json shows support for puppet 6 [\#798](https://github.com/puppetlabs/puppetlabs-apt/pull/798) ([tphoney](https://github.com/tphoney))
81 - \(MODULES-3307\) - Auto update expired keys [\#795](https://github.com/puppetlabs/puppetlabs-apt/pull/795) ([eimlav](https://github.com/eimlav))
82 - \(FM-7316\) - Implementation of the i18n process [\#789](https://github.com/puppetlabs/puppetlabs-apt/pull/789) ([david22swan](https://github.com/david22swan))
83 - Introduce an Apt::Proxy type to validate the hash [\#773](https://github.com/puppetlabs/puppetlabs-apt/pull/773) ([ekohl](https://github.com/ekohl))
84
85 ### Fixed
86
87 - \(MODULES-6408\) - Fix dirmngr install failing [\#801](https://github.com/puppetlabs/puppetlabs-apt/pull/801) ([eimlav](https://github.com/eimlav))
88 - \(MODULES-1630\) - Expanding source list fix to cover all needed versions [\#788](https://github.com/puppetlabs/puppetlabs-apt/pull/788) ([david22swan](https://github.com/david22swan))
89
90 ## [6.0.0](https://github.com/puppetlabs/puppetlabs-apt/tree/6.0.0) (2018-08-24)
91
92 [Full Changelog](https://github.com/puppetlabs/puppetlabs-apt/compare/5.0.1...6.0.0)
93
94 ### Changed
95
96 - \(MODULES-7668\) Remove support for Puppet 4.7 [\#780](https://github.com/puppetlabs/puppetlabs-apt/pull/780) ([jarretlavallee](https://github.com/jarretlavallee))
97
98 ### Added
99
100 - Check existence of gpg key in apt:ppa [\#774](https://github.com/puppetlabs/puppetlabs-apt/pull/774) ([wenzhengjiang](https://github.com/wenzhengjiang))
101 - Make sure PPA source file is absent when apt-add-repository fails [\#768](https://github.com/puppetlabs/puppetlabs-apt/pull/768) ([wenzhengjiang](https://github.com/wenzhengjiang))
102
103 ## 5.0.1
104
105 [Full Changelog](https://github.com/puppetlabs/puppetlabs-apt/compare/5.0.0...5.0.1)
106
107 ### Fixed
108
109 - \(MODULES-7540\) - add apt-transport-https with https [\#775](https://github.com/puppetlabs/puppetlabs-apt/pull/775) ([tphoney](https://github.com/tphoney))
110
111 ## [5.0.0](https://github.com/puppetlabs/puppetlabs-apt/tree/5.0.0) (2018-07-18)
112
113 [Full Changelog](https://github.com/puppetlabs/puppetlabs-apt/compare/4.5.1...5.0.0)
114
115 ### Changed
116
117 - \[FM-6956\] Removal of unsupported Debian 7 from apt [\#760](https://github.com/puppetlabs/puppetlabs-apt/pull/760) ([david22swan](https://github.com/david22swan))
118
119 ### Added
120
121 - \(MODULES-7467\) Update apt to support Ubuntu 18.04 [\#769](https://github.com/puppetlabs/puppetlabs-apt/pull/769) ([david22swan](https://github.com/david22swan))
122 - Support managing login configurations in /etc/apt/auth.conf [\#752](https://github.com/puppetlabs/puppetlabs-apt/pull/752) ([antaflos](https://github.com/antaflos))
123
124 ### Fixed
125
126 - \(MODULES-7327\) - Update README with supported OS [\#767](https://github.com/puppetlabs/puppetlabs-apt/pull/767) ([pmcmaw](https://github.com/pmcmaw))
127 - \(bugfix\) Dont run ftp tests in travis [\#766](https://github.com/puppetlabs/puppetlabs-apt/pull/766) ([tphoney](https://github.com/tphoney))
128 - \(maint\) make apt testing more stable, cleanup [\#764](https://github.com/puppetlabs/puppetlabs-apt/pull/764) ([tphoney](https://github.com/tphoney))
129 - Remove .length from variable $pin\_release in app [\#754](https://github.com/puppetlabs/puppetlabs-apt/pull/754) ([paladox](https://github.com/paladox))
130 - Replace UTF-8 whitespace in comment [\#748](https://github.com/puppetlabs/puppetlabs-apt/pull/748) ([bernhardschmidt](https://github.com/bernhardschmidt))
131 - Fix "E: Unable to locate package  -y" [\#747](https://github.com/puppetlabs/puppetlabs-apt/pull/747) ([aboks](https://github.com/aboks))
132 - Fix automatic coercion warning [\#743](https://github.com/puppetlabs/puppetlabs-apt/pull/743) ([smortex](https://github.com/smortex))
133
134 ## Supported Release [4.5.1]
135 ### Summary
136 This release fixes CVE-2018-6508 which is a potential arbitrary code execution via tasks.
137
138 ### Fixed
139 - Fix init task for arbitrary remote code
140
141 ## Supported Release [4.5.0]
142 ### Summary
143 This release uses the PDK convert functionality which in return makes the module PDK compliant. It also includes a roll up of maintenance changes.
144
145 ### Added
146 - PDK convert apt ([MODULES-6452](https://tickets.puppet.com/browse/MODULES-6452)).
147 - Testing on Travis using rvm 2.4.1.
148 - Modulesync updates.
149
150 ### Fixed
151 - Changes to address additional Rubocop failures.
152 - (maint) Addressing puppet-lint doc warnings.
153
154 ### Removed
155 - `gem update bundler` command in .travis.yml due to ([MODULES-6339](https://tickets.puppet.com/browse/MODULES-6339)).
156
157 ## Supported Release [4.4.1]
158 ### Summary
159 This release is to update the formatting of the module, Rubocop having been run for all ruby files and been set to run automatically on all future commits.
160
161 ### Changed
162 - Rubocop has been implemented.
163
164 ## Supported Release [4.4.0]
165 ### Summary
166
167 This release is a rollup of new features and fixes.
168
169 #### Added
170 - Install `apt-transport-https` if using Debian 7, 8, 9 or Ubuntu 14.04, 16.04.
171 - Adds a boolean option `direct` to proxy settings to bypass `https_proxy` if not set.
172 - Adds facter facts for `dist-upgrade` apt updates.
173
174 #### Changed
175 - Update class is now private.
176 - Some tidyup of ruby code from Rubocop.
177 - Fixed circular dependency for package dirmngr.
178 - Debian updates are no longer treated as security updates.
179 - Legacy functions have been removed.
180 - Updates to tests.
181
182 #### Fixed
183 - [(MODULES-4265)](https://tickets.puppetlabs.com/browse/MODULES-4265) Detect security updates from multiple sources.
184
185 ## Supported Release [4.3.0]
186 ### Summary
187
188 This release is adding Tasks to the apt module.
189
190 #### Added
191 - Add a task that allows apt-get update and upgrade
192
193 ## Supported Release [4.2.0]
194 ### Summary
195
196 This release is primarily to fix an error around GPG keys in Debian 9, but includes some other small features and fixes as well.
197
198 #### Added
199 - `apt_package_security_updates` fact
200 - The ability to modify the loglevel of `Exec['apt_update'}`
201 - Puppet 5 support
202
203 #### Changed
204 - Ubuntu 16.04 now uses `software-priorities-common`
205
206 #### Removed
207 - Debian 6, Ubuntu 10.04 and 12.04 support. Existing compatibility remains intact but bugs will not be prioritized for these OSes.
208
209 #### Fixed
210 - **[(MODULES-4686)](https://tickets.puppetlabs.com/browse/MODULES-4686) an error that was causing GPG keyserver imports to fail on Debian 9**
211
212 ## Supported Release 4.1.0
213 ### Summary
214
215 This release removes Data in Modules due to current compatibility issues and reinstates the params.pp file. Also includes a couple of bug fixes.
216
217 #### Features
218 - (MODULES-4973) Data in Modules which was introduced in the last release has now been reverted due to compatibility issues.
219
220 #### Bugfixes
221 - Now apt_key only sends the auth basic header when userinfo can be parsed from the URL.
222 - Reverted the removal of Evolving Web's attribution in NOTICE file.
223 - Test added to ensure empty string allowed for $release in apt::source.
224
225
226 ## Supported Release 3.0.0 and 4.0.0
227 ### Summary
228
229 This release adds new Puppet 4 features: data in modules, EPP templates, the $facts hash, and data types. This release is fully backwards compatible to existing Puppet 4 configurations and provides you with deprecation warnings for every argument that will not work as expected with the final 4.0.0 release. See the stdlib docs here for an in-depth discussion of this: https://github.com/puppetlabs/puppetlabs-stdlib#validate_legacy
230
231 If you want to learn more about the new features used or you wish to upgrade a module yourself, have a look at the NTP: A Puppet 4 language update blog post.
232
233 If you're still running Puppet 3, remain on the latest puppetlabs-apt 2.x release for now, and see the documentation to upgrade to Puppet 4.
234
235 #### Changes
236
237 Data in modules: Moves all distribution and OS-dependent defaults into YAML files in data/, alleviating the need for a params class. Note that while this feature is currently still classed as experimental, the final implementation will support the changes here.
238 EPP templating: Uses the Puppet language as a base for templates to create simpler and safer templates. No need for Ruby anymore!
239 The $facts hash: Makes facts visibly distinct from other variables for more readable and maintainable code. This helps eliminate confusion if you use a local variable whose name happens to match that of a common fact.
240 Data types for validation: Helps you find and replace deprecated code in existing validate functions with stricter, more readable data type notation. First upgrade to the 3.0.0 release of this module, and address all deprecation warnings before upgrading to the final 4.0.0 release. Please see the stdlib docs for an in-depth discussion of this process.
241
242 #### Bugfixes
243 - Fix apt::source epp template regression introduced in 3.0.0 for the architecture parameter
244
245 ## Supported Release 2.4.0
246 ### Summary
247 A release that includes only a couple of additional features, but includes several cleanups and bugfixes around existing issues.
248
249 #### Features
250 - Tests updated to check for idempotency.
251 - (MODULES-4224) Implementation of beaker-module_install_helper.
252 - Deprecation warnings are now handled by the deprecation function in stdlib.
253
254 #### Bugfixes
255 - Now http and https sources fixed for apt_key and can take a userinfo.
256 - GPG key update.
257 - Notify_update param now defaults to true to avoid validation errors.
258 - Implement retry on tests which pull key from a key server which sometimes times out (transient error).
259 - String comparison error now comphensated for in update.pp.
260 - (MODULES-4104) Removal of the port number from repository location in order to get the host name of the repository.
261 - Puppet lint warnings addressed.
262 - A few small readme issues addressed.
263
264 ## Supported Release 2.3.0
265 ### Summary
266 A release containing many bugfixes with additional features.
267
268 #### Features
269 - Apt_updates facts now use /usr/bin/apt-get.
270 - Addition of notify update to apt::source.
271 - Update to newest modulesync_configs.
272 - Installs software-properties-common for Xenial.
273 - Modulesync updates.
274 - Add ability to specify a hash of apt::conf defines.
275
276 #### Bugfixes
277 - A clean up of spec/defines/key_compat_specs, also now runs under STRICT_VARIABLES.
278 - Apt::setting expects priority to be an integer, set defaults accordingly.
279 - Fixed version check for Ubuntu on 16.04.
280 - Now uses hkps.pool.sks-keyservers.net instead of pgp.mit.edu.
281 - Updates and fixes to tests. General cleanup.
282 - Fixed regexp for $ensure params.
283 - Apt/params: Remove unused LSB facts.
284 - Replaced `-s` with `-f` in ppa rspec tests - After the repository is added, the "${::apt::sources_list_d}/${sources_list_d_filename}" file is created as an empty file. The unless condition of Exec["add-apt-repository-${name}"] calls test -s, which returns 1 if the file is empty. Because the file is empty, the unless condition is never true and the repository is added on every execution. This change replaces the -s test condition with -f, which is true if the file exists or false otherwise.
285 - Limit non-strict parsing to pre-3.5.0 only - Puppet 3.5.0 introduced strict variables and the module handles strict variables by using the defined() function. This does not work on prior versions of puppet so we now gate based on that version. Puppet 4 series has a new setting `strict` that may be set to enforce strict variables while `strict_variables` remains unset (see PUP-6358) which causes the conditional in manifests/params.pp to erroniously use non-strict 3.5-era parsing and fail. This new conditional corrects the cases such that strict variable behavior happens on versions 3.5.0 and later.
286
287 ## Supported Release 2.2.2
288 ### Summary
289
290 Several bug fixes and the addition of support updates to Debian 8 and Ubuntu Wily.
291
292 #### Bugfixes
293 - Small fixes to descriptions within the readme and the addition of some examples.
294 - Updates to run on Ubuntu Wily.
295 - Fixed apt_key tempfile race condition.
296 - Run stages limitation added to the documentation.
297 - Remove unneeded whitespace in source.list template.
298 - Handle PPA names that contain a plus character.
299 - Update to current msync configs.
300 - Avoid duplicate package resources when package_manage => true.
301 - Avoid multiple package resource declarations.
302 - Ensure PPAs in tests have valid form.
303 - Look for correct sources.list.d file for apt::ppa.
304 - Debian 8 support addiiton to metadata.
305
306 ## Supported Release 2.2.1
307 ### Summary
308
309 Small release for support of newer PE versions. This increments the version of PE in the metadata.json file.
310
311 ## 2015-09-29 - Supported Release 2.2.0
312 ### Summary
313
314 This release includes a few bugfixes.
315
316 #### Features
317 - Adds an `ensure` parameter for user control of proxy presence.
318 - Adds ability to set `notify_update` to `apt::conf` (MODULES-2269).
319 - Apt pins no longer trigger an `apt-get update` run.
320 - Adds support for creating pins from main class.
321
322 #### Bugfixes
323 - Updates to use the official Debian mirrors.
324 - Fixes path to `preferences` and `preferences.d`
325 - Fixes pinning for backports (MODULES-2446).
326 - Fixes the name/extension of the preferences files.
327
328 ## 2015-07-28 - Supported Release 2.1.1
329 ### Summary
330
331 This release includes a few bugfixes.
332
333 #### Bugfixes
334 - Fix incorrect use of anchoring (MODULES-2190)
335 - Use correct comment type for apt.conf files
336 - Test fixes
337 - Documentation fixes
338
339 ## 2015-06-16 - Supported Release 2.1.0
340 ### Summary
341
342 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.
343
344 #### Features
345 - Add API compatibility to `apt::key` and `apt::source`
346 - Added `apt_reboot_required` fact
347
348 #### Bugfixes
349 - Fix compatibility with Puppet versions 3.0-3.4
350 - Work around future parser bug PUP-4133
351
352 ## 2015-04-28 - Supported Release 2.0.1
353 ### Summary
354
355 This bug fixes a few compatibility issues that came up with the 2.0.0 release, and includes test and documentation updates.
356
357 #### Bugfixes
358 - Fix incompatibility with keyrings containing multiple keys
359 - Fix bugs preventing the module from working with Puppet < 3.5.0
360
361 ## 2015-04-07 - Supported Release 2.0.0
362 ### Summary
363
364 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.
365
366 #### Backwards-incompatible changes
367
368 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.
369
370 ##### `apt_key`
371 - `keyserver_options` parameter renamed to `options`
372
373 ##### `apt::backports`
374 - 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)
375
376 ##### `apt::builddep`
377 - This define was removed. Functionality can be matched passing 'build-dep' to `install_options` in the package resource. [Example](examples/builddep.pp)
378
379 ##### `apt::debian::testing`
380 - This class was removed. Manually add an `apt::source` instead. [Example](examples/debian_testing.pp)
381
382 ##### `apt::debian::unstable`
383 - This class was removed. Manually add an `apt::source` instead. [Example](examples/debian_unstable.pp)
384
385 ##### `apt::force`
386 - 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.
387
388 ##### `apt::hold`
389 - This define was removed. Simply use an `apt::pin` with `priority => 1001` for the same functionality.
390
391 ##### `apt`
392 - `always_apt_update` - This parameter was removed. Use `update => { 'frequency' => 'always' }` instead.
393 - `apt_update_frequency` - This parameter was removed. Use `update => { 'frequency' => <frequency> }` instead.
394 - `disable_keys` - This parameter was removed. See this [example](examples/disable_keys.pp) if you need this functionality.
395 - `proxy_host` - This parameter was removed. Use `proxy => { 'host' => <host> }` instead.
396 - `proxy_port` - This parameter was removed. Use `proxy => { 'port' => <port> }` instead.
397 - `purge_sources_list` - This parameter was removed. Use `purge => { 'sources.list' => <bool> }` instead.
398 - `purge_sources_list_d` - This parameter was removed. Use `purge => { 'sources.list.d' => <bool> }` instead.
399 - `purge_preferences` - This parameter was removed. Use `purge => { 'preferences' => <bool> }` instead.
400 - `purge_preferences_d` - This parameter was removed. Use `purge => { 'preferences.d' => <bool> }` instead.
401 - `update_timeout` - This parameter was removed. Use `update => { 'timeout' => <timeout> }` instead.
402 - `update_tries` - This parameter was removed. Use `update => { 'tries' => <tries> }` instead.
403
404 ##### `apt::key`
405 - `key` - This parameter was renamed to `id`.
406 - `key_content` - This parameter was renamed to `content`.
407 - `key_source` - This parameter was renamed to `source`.
408 - `key_server` - This parameter was renamed to `server`.
409 - `key_options` - This parameter was renamed to `options`.
410
411 ##### `apt::release`
412 - This class was removed. See this [example](examples/release.pp) for how to achieve this functionality.
413
414 ##### `apt::source`
415 - `include_src` - This parameter was removed. Use `include => { 'src' => <bool> }` instead. ***NOTE*** This now defaults to false.
416 - `include_deb` - This parameter was removed. Use `include => { 'deb' => <bool> }` instead.
417 - `required_packages` - This parameter was removed. Use package resources for these packages if needed.
418 - `key` - This can either be a key id or a hash including key options. If using a hash, `key => { 'id' => <id> }` must be specified.
419 - `key_server` - This parameter was removed. Use `key => { 'server' => <server> }` instead.
420 - `key_content` - This parameter was removed. Use `key => { 'content' => <content> }` instead.
421 - `key_source` - This parameter was removed. Use `key => { 'source' => <source> }` instead.
422 - `trusted_source` - This parameter was renamed to `allow_unsigned`.
423
424 ##### `apt::unattended_upgrades`
425 - 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).
426
427 #### Changes to default behavior
428 - By default purge unmanaged files in 'sources.list', 'sources.list.d', 'preferences', and 'preferences.d'.
429 - 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.
430 - `apt::source` will no longer include the `src` entries by default.
431 - `pin` in `apt::source` now defaults to `undef` instead of `false`
432
433 #### Features
434 - Added the ability to pass hashes of `apt::key`s, `apt::ppa`s, and `apt::setting`s to `apt`.
435 - Added 'https' key to `proxy` hash to allow disabling `https_proxy` for the `apt::ppa` environment.
436 - Added `apt::setting` define to abstract away configuration.
437 - Added the ability to pass hashes to `pin` and `key` in `apt::backports` and `apt::source`.
438
439 #### Bugfixes
440 - Fixes for strict variables.
441
442 ## 2015-03-17 - Supported Release 1.8.0
443 ### Summary
444
445 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.
446
447 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.
448
449 #### Changes to default behavior
450 - The apt module will now throw warnings if you don't use full fingerprints for `apt_key`s
451
452 #### Features
453 - Use gpg to check keys to work around https://bugs.launchpad.net/ubuntu/+source/gnupg2/+bug/1409117 (MODULES-1675)
454 - Add 'oldstable' to the default update origins for wheezy
455 - Add utopic, vivid, and cumulus compatibility
456 - Add support for full fingerprints
457 - New parameter for `apt::source`
458   - `trusted_source`
459 - New parameters for `apt::ppa`
460   - `package_name`
461   - `package_manage`
462 - New parameter for `apt::unattended_upgrades`
463   - `legacy_origin`
464 - Separate `apt::pin` from `apt::backports` to allow pin by release instead of origin
465
466 #### Bugfixes
467 - Cleanup lint and future parser issues
468 - Fix to support username and passwords again for `apt_key` (MODULES-1119)
469 - Fix issue where `apt::force` `$install_check` didn't work with non-English locales (MODULES-1231)
470 - Allow 5 digit ports in `apt_key`
471 - Fix for `ensure => absent` in `apt_key` (MODULES-1661)
472 - Fix `apt_has_updates` not parsing `apt-check` output correctly
473 - Fix inconsistent headers across files (MODULES-1200)
474 - Clean up formatting for 50unattended-upgrades.erb
475
476 ## 2014-10-28 - Supported Release 1.7.0
477 ### Summary
478
479 This release includes several new features, documentation and test improvements, and a few bug fixes.
480
481 #### Features
482 - Updated unit and acceptance tests
483 - Update module to work with Linux Mint
484 - Documentation updates
485 - Future parser / strict variables support
486 - Improved support for long GPG keys
487 - New parameters!
488   - Added `apt_update_frequency` to apt
489   - Added `cfg_files` and `cfg_missing` parameters to apt::force
490   - Added `randomsleep` to apt::unattended_upgrades
491 - Added `apt_update_last_success` fact
492 - Refactored facts for performance improvements
493
494 #### Bugfixes
495 - Update apt::builddep to require Exec['apt_update'] instead of notifying it
496 - Clean up lint errors
497
498 ## 2014-08-20 - Supported Release 1.6.0
499 ### Summary
500
501 #### Features
502 - Allow URL or domain name for key_server parameter
503 - Allow custom comment for sources list
504 - Enable auto-update for Debian squeeze LTS
505 - Add facts showing available updates
506 - Test refactoring
507
508 #### Bugfixes
509 - Allow dashes in URL or domain for key_server parameter
510
511 ## 2014-08-13 - Supported Release 1.5.3
512 ### Summary
513
514 This is a bugfix releases.  It addresses a bad regex, failures with unicode
515 characters, and issues with the $proxy_host handling in apt::ppa.
516
517 #### Features
518 - Synced files from Modulesync
519
520 #### Bugfixes
521 - Fix regex to follow APT requirements in apt::pin
522 - Fix for unicode characters
523 - Fix inconsistent $proxy_host handling in apt and apt::ppa
524 - Fix typo in README
525 - Fix broken acceptance tests
526
527 ## 2014-07-15 - Supported Release 1.5.2
528 ### Summary
529
530 This release merely updates metadata.json so the module can be uninstalled and
531 upgraded via the puppet module command.
532
533 ## 2014-07-10 - Supported Release 1.5.1
534 ### Summary
535
536 This release has added tests to ensure graceful failure on OSX.
537
538 ## 2014-06-04 - Release 1.5.0
539 ### Summary
540
541 This release adds support for Ubuntu 14.04.  It also includes many new features
542 and important bugfixes.  One huge change is that apt::key was replaced with
543 apt_key, which allows you to use puppet resource apt_key to inventory keys on
544 your system.
545
546 Special thanks to daenney, our intrepid unofficial apt maintainer!
547
548 #### Features
549 - Add support for Ubuntu Trusty!
550 - Add apt::hold define
551 - Generate valid *.pref files in apt::pin
552 - Made pin_priority configurable for apt::backports
553 - Add apt_key type and provider
554 - Rename "${apt_conf_d}/proxy" to "${apt_conf_d}/01proxy"
555 - apt::key rewritten to use apt_key type
556 - Add support for update_tries to apt::update
557
558 #### Bugfixes
559 - Typo fixes
560 - Fix unattended upgrades
561 - Removed bogus line when using purge_preferences
562 - Fix apt::force to upgrade allow packages to be upgraded to the pacakge from the specified release
563
564 ## 2014-03-04 - Supported Release 1.4.2
565 ### Summary
566
567 This is a supported release. This release tidies up 1.4.1 and re-enables
568 support for Ubuntu 10.04
569
570 #### Features
571
572 #### Bugfixes
573 - Fix apt:ppa to include the -y Ubuntu 10.04 requires.
574 - Documentation changes.
575 - Test fixups.
576
577 #### Known Bugs
578
579 * No known issues.
580
581
582
583 ## 2014-02-13 1.4.1
584 ### Summary
585 This is a bugfix release.
586
587 #### Bugfixes
588 - Fix apt::force unable to upgrade packages from releases other than its original
589 - Removed a few refeneces to aptitude instead of apt-get for portability
590 - Removed call to getparam() due to stdlib dependency
591 - Correct apt::source template when architecture is provided
592 - Retry package installs if apt is locked
593 - Use root to exec in apt::ppa
594 - Updated tests and converted acceptance tests to beaker
595
596 ## 2013-10-08 - Release 1.4.0
597
598 ### Summary
599
600 Minor bugfix and allow the timeout to be adjusted.
601
602 #### Features
603 - Add an `updates_timeout` to apt::params
604
605 #### Bugfixes
606 - Ensure apt::ppa can read a ppa removed by hand.
607
608
609 ## 2013-10-08 - Release 1.3.0
610 ### Summary
611
612 This major feature in this release is the new apt::unattended_upgrades class,
613 allowing you to handle Ubuntu's unattended feature.  This allows you to select
614 specific packages to automatically upgrade without any further user
615 involvement.
616
617 In addition we extend our Wheezy support, add proxy support to apt:ppa and do
618 various cleanups and tweaks.
619
620 #### Features
621 - Add apt::unattended_upgrades support for Ubuntu.
622 - Add wheezy backports support.
623 - Use the geoDNS http.debian.net instead of the main debian ftp server.
624 - Add `options` parameter to apt::ppa in order to pass options to apt-add-repository command.
625 - Add proxy support for apt::ppa (uses proxy_host and proxy_port from apt).
626
627 #### Bugfixes
628 - Fix regsubst() calls to quote single letters (for future parser).
629 - Fix lint warnings and other misc cleanup.
630
631
632 ## 2013-07-03 - Release 1.2.0
633
634 #### Features
635 - Add geppetto `.project` natures
636 - Add GH auto-release
637 - Add `apt::key::key_options` parameter
638 - Add complex pin support using distribution properties for `apt::pin` via new properties:
639   - `apt::pin::codename`
640   - `apt::pin::release_version`
641   - `apt::pin::component`
642   - `apt::pin::originator`
643   - `apt::pin::label`
644 - Add source architecture support to `apt::source::architecture`
645
646 #### Bugfixes
647 - Use apt-get instead of aptitude in apt::force
648 - Update default backports location
649 - Add dependency for required packages before apt-get update
650
651
652 ## 2013-06-02 - Release 1.1.1
653 ### Summary
654
655 This is a bug fix release that resolves a number of issues:
656
657 * By changing template variable usage, we remove the deprecation warnings
658   for Puppet 3.2.x
659 * Fixed proxy file removal, when proxy absent
660
661 Some documentation, style and whitespaces changes were also merged. This
662 release also introduced proper rspec-puppet unit testing on Travis-CI to help
663 reduce regression.
664
665 Thanks to all the community contributors below that made this patch possible.
666
667 #### Detail Changes
668
669 * fix minor comment type (Chris Rutter)
670 * whitespace fixes (Michael Moll)
671 * Update travis config file (William Van Hevelingen)
672 * Build all branches on travis (William Van Hevelingen)
673 * Standardize travis.yml on pattern introduced in stdlib (William Van Hevelingen)
674 * Updated content to conform to README best practices template (Lauren Rother)
675 * Fix apt::release example in readme (Brian Galey)
676 * add @ to variables in template (Peter Hoeg)
677 * Remove deprecation warnings for pin.pref.erb as well (Ken Barber)
678 * Update travis.yml to latest versions of puppet (Ken Barber)
679 * Fix proxy file removal (Scott Barber)
680 * Add spec test for removing proxy configuration (Dean Reilly)
681 * Fix apt::key listing longer than 8 chars (Benjamin Knofe)
682
683
684
685
686 ## Release 1.1.0
687 ### Summary
688
689 This release includes Ubuntu 12.10 (Quantal) support for PPAs.
690
691 ---
692
693 ## 2012-05-25 - Puppet Labs <info@puppetlabs.com> - Release 0.0.4
694 ### Summary
695
696  * Fix ppa list filename when there is a period in the PPA name
697  * Add .pref extension to apt preferences files
698  * Allow preferences to be purged
699  * Extend pin support
700
701
702 ## 2012-05-04 - Puppet Labs <info@puppetlabs.com> - Release 0.0.3
703 ### Summary
704
705  * only invoke apt-get update once
706  * only install python-software-properties if a ppa is added
707  * support 'ensure => absent' for all defined types
708  * add apt::conf
709  * add apt::backports
710  * fixed Modulefile for module tool dependency resolution
711  * configure proxy before doing apt-get update
712  * use apt-get update instead of aptitude for apt::ppa
713  * add support to pin release
714
715
716 ## 2012-03-26 - Puppet Labs <info@puppetlabs.com> - Release 0.0.2
717 ### Summary
718
719 * 41cedbb (#13261) Add real examples to smoke tests.
720 * d159a78 (#13261) Add key.pp smoke test
721 * 7116c7a (#13261) Replace foo source with puppetlabs source
722 * 1ead0bf Ignore pkg directory.
723 * 9c13872 (#13289) Fix some more style violations
724 * 0ea4ffa (#13289) Change test scaffolding to use a module & manifest dir fixture path
725 * a758247 (#13289) Clean up style violations and fix corresponding tests
726 * 99c3fd3 (#13289) Add puppet lint tests to Rakefile
727 * 5148cbf (#13125) Apt keys should be case insensitive
728 * b9607a4 Convert apt::key to use anchors
729
730
731 ## 2012-03-07 - Puppet Labs <info@puppetlabs.com> - Release 0.0.1
732 ### Summary
733
734 * d4fec56 Modify apt::source release parameter test
735 * 1132a07 (#12917) Add contributors to README
736 * 8cdaf85 (#12823) Add apt::key defined type and modify apt::source to use it
737 * 7c0d10b (#12809) $release should use $lsbdistcodename and fall back to manual input
738 * be2cc3e (#12522) Adjust spec test for splitting purge
739 * 7dc60ae (#12522) Split purge option to spare sources.list
740 * 9059c4e Fix source specs to test all key permutations
741 * 8acb202 Add test for python-software-properties package
742 * a4af11f Check if python-software-properties is defined before attempting to define it.
743 * 1dcbf3d Add tests for required_packages change
744 * f3735d2 Allow duplicate $required_packages
745 * 74c8371 (#12430) Add tests for changes to apt module
746 * 97ebb2d Test two sources with the same key
747 * 1160bcd (#12526) Add ability to reverse apt { disable_keys => true }
748 * 2842d73 Add Modulefile to puppet-apt
749 * c657742 Allow the use of the same key in multiple sources
750 * 8c27963 (#12522) Adding purge option to apt class
751 * 997c9fd (#12529) Add unit test for apt proxy settings
752 * 50f3cca (#12529) Add parameter to support setting a proxy for apt
753 * d522877 (#12094) Replace chained .with_* with a hash
754 * 8cf1bd0 (#12094) Remove deprecated spec.opts file
755 * 2d688f4 (#12094) Add rspec-puppet tests for apt
756 * 0fb5f78 (#12094) Replace name with path in file resources
757 * f759bc0 (#11953) Apt::force passes $version to aptitude
758 * f71db53 (#11413) Add spec test for apt::force to verify changes to unless
759 * 2f5d317 (#11413) Update dpkg query used by apt::force
760 * cf6caa1 (#10451) Add test coverage to apt::ppa
761 * 0dd697d include_src parameter in example; Whitespace cleanup
762 * b662eb8 fix typos in "repositories"
763 * 1be7457 Fix (#10451) - apt::ppa fails to "apt-get update" when new PPA source is added
764 * 864302a Set the pin priority before adding the source (Fix #10449)
765 * 1de4e0a Refactored as per mlitteken
766 * 1af9a13 Added some crazy bash madness to check if the ppa is installed already. Otherwise the manifest tries to add it on every run!
767 * 52ca73e (#8720) Replace Apt::Ppa with Apt::Builddep
768 * 5c05fa0 added builddep command.
769 * a11af50 added the ability to specify the content of a key
770 * c42db0f Fixes ppa test.
771 * 77d2b0d reformatted whitespace to match recommended style of 2 space indentation.
772 * 27ebdfc ignore swap files.
773 * 377d58a added smoke tests for module.
774 * 18f614b reformatted apt::ppa according to recommended style.
775 * d8a1e4e Created a params class to hold global data.
776 * 636ae85 Added two params for apt class
777 * 148fc73 Update LICENSE.
778 * ed2d19e Support ability to add more than one PPA
779 * 420d537 Add call to apt-update after add-apt-repository in apt::ppa
780 * 945be77 Add package definition for python-software-properties
781 * 71fc425 Abs paths for all commands
782 * 9d51cd1 Adding LICENSE
783 * 71796e3 Heading fix in README
784 * 87777d8 Typo in README
785 * f848bac First commit
786
787 [5.0.1]:https://github.com/puppetlabs/puppetlabs-apt/compare/5.0.0...5.0.1
788 [5.0.0]:https://github.com/puppetlabs/puppetlabs-apt/compare/4.5.1...5.0.0
789 [4.5.1]:https://github.com/puppetlabs/puppetlabs-apt/compare/4.5.0...4.5.1
790 [4.5.0]:https://github.com/puppetlabs/puppetlabs-apt/compare/4.4.1...4.5.0
791 [4.4.1]:https://github.com/puppetlabs/puppetlabs-apt/compare/4.4.0...4.4.1
792 [4.4.0]:https://github.com/puppetlabs/puppetlabs-apt/compare/4.3.0...4.4.0
793 [4.3.0]:https://github.com/puppetlabs/puppetlabs-apt/compare/4.2.0...4.3.0
794 [4.2.0]:https://github.com/puppetlabs/puppetlabs-apt/compare/4.1.0...4.2.0
795
796
797 \* *This Changelog was automatically generated by [github_changelog_generator](https://github.com/skywinder/Github-Changelog-Generator)*