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