]>
Commit | Line | Data |
---|---|---|
1 | CHANGES - 2.3.0 - 2019-08-01 | |
2 | ============================ | |
3 | ||
4 | ||
5 | Changes in CUPS v2.3.0 | |
6 | ---------------------- | |
7 | ||
8 | - Documentation updates (Issue #5604) | |
9 | - Fixed a bug in the scheduler job cleanup code (Issue #5588) | |
10 | - Fixed builds when there is no TLS library (Issue #5590) | |
11 | - Eliminated some new GCC compiler warnings (Issue #5591) | |
12 | - Removed dead code from the scheduler (Issue #5593) | |
13 | - "make" failed with GZIP options (Issue #5595) | |
14 | - Fixed potential excess logging from the scheduler when removing job files | |
15 | (Issue #5597) | |
16 | - Fixed a NULL pointer dereference bug in `httpGetSubField2` (Issue #5598) | |
17 | - Added FIPS-140 workarounds for GNU TLS (Issue #5601, Issue #5622) | |
18 | - The scheduler no longer provides a default value for the description | |
19 | (Issue #5603) | |
20 | - The scheduler now logs jobs held for authentication using the error level so | |
21 | it is clear what happened (Issue #5604) | |
22 | - The `lpadmin` command did not always update the PPD file for changes to the | |
23 | `cupsIPPSupplies` and `cupsSNMPSupplies` keywords (Issue #5610) | |
24 | - The scheduler now uses both the group's membership list as well as the | |
25 | various OS-specific membership functions to determine whether a user belongs | |
26 | to a named group (Issue #5613) | |
27 | - Added USB quirks rule for HP LaserJet 1015 (Issue #5617) | |
28 | - Fixed some PPD parser issues (Issue #5623, Issue #5624) | |
29 | - Fixed an issue with unsupported "sides" values in the IPP backend | |
30 | (rdar://51775322) | |
31 | - The scheduler would restart continuously when idle and printers were not | |
32 | shared (rdar://52561199) | |
33 | - Fixed an issue with `EXPECT !name WITH-VALUE ...` tests. | |
34 | - Fixed a command ordering issue in the Zebra ZPL driver. | |
35 | - Fixed a memory leak in `ppdOpen`. | |
36 | ||
37 | ||
38 | Changes in CUPS v2.3rc1 | |
39 | ----------------------- | |
40 | ||
41 | - The `cups-config` script no longer adds extra libraries when linking against | |
42 | shared libraries (Issue #5261) | |
43 | - The supplied example print documents have been optimized for size | |
44 | (Issue #5529) | |
45 | - The `cupsctl` command now prevents setting "cups-files.conf" directives | |
46 | (Issue #5530) | |
47 | - The "forbidden" message in the web interface is now explained (Issue #5547) | |
48 | - The footer in the web interface covered some content on small displays | |
49 | (Issue #5574) | |
50 | - The libusb-based USB backend now enforces read limits, improving print speed | |
51 | in many cases (Issue #5583) | |
52 | - The `ippeveprinter` command now looks for print commands in the "command" | |
53 | subdirectory. | |
54 | - The `ipptool` command now supports `$date-current` and `$date-start` variables | |
55 | to insert the current and starting date and time values, as well as ISO-8601 | |
56 | relative time values such as "PT30S" for 30 seconds in the future. | |
57 | ||
58 | ||
59 | Changes in CUPS v2.3b8 | |
60 | ---------------------- | |
61 | ||
62 | - Media size matching now uses a tolerance of 0.5mm (rdar://33822024) | |
63 | - The lpadmin command would hang with a bad PPD file (rdar://41495016) | |
64 | - Fixed a potential crash bug in cups-driverd (rdar://46625579) | |
65 | - Fixed a performance regression with large PPDs (rdar://47040759) | |
66 | - Fixed a memory reallocation bug in HTTP header value expansion | |
67 | (rdar://problem/50000749) | |
68 | - Timed out job submission now yields an error (Issue #5570) | |
69 | - Restored minimal support for the `Emulators` keyword in PPD files to allow | |
70 | old Samsung printer drivers to continue to work (Issue #5562) | |
71 | - The scheduler did not encode octetString values like "job-password" correctly | |
72 | for the print filters (Issue #5558) | |
73 | - The `cupsCheckDestSupported` function did not check octetString values | |
74 | correctly (Issue #5557) | |
75 | - Added support for `UserAgentTokens` directive in "client.conf" (Issue #5555) | |
76 | - Updated the systemd service file for cupsd (Issue #5551) | |
77 | - The `ippValidateAttribute` function did not catch all instances of invalid | |
78 | UTF-8 strings (Issue #5509) | |
79 | - Fixed an issue with the self-signed certificates generated by GNU TLS | |
80 | (Issue #5506) | |
81 | - Fixed a potential memory leak when reading at the end of a file (Issue #5473) | |
82 | - Fixed potential unaligned accesses in the string pool (Issue #5474) | |
83 | - Fixed a potential memory leak when loading a PPD file (Issue #5475) | |
84 | - Added a USB quirks rule for the Lexmark E120n (Issue #5478) | |
85 | - Updated the USB quirks rule for Zebra label printers (Issue #5395) | |
86 | - Fixed a compile error on Linux (Issue #5483) | |
87 | - The lpadmin command, web interface, and scheduler all queried an IPP | |
88 | Everywhere printer differently, resulting in different PPDs for the same | |
89 | printer (Issue #5484) | |
90 | - The web interface no longer provides access to the log files (Issue #5513) | |
91 | - Non-Kerberized printing to Windows via IPP was broken (Issue #5515) | |
92 | - Eliminated use of private headers and some deprecated macOS APIs (Issue #5516) | |
93 | - The scheduler no longer stops a printer if an error occurs when a job is | |
94 | canceled or aborted (Issue #5517) | |
95 | - Added a USB quirks rule for the DYMO 450 Turbo (Issue #5521) | |
96 | - Added a USB quirks rule for Xerox printers (Issue #5523) | |
97 | - The scheduler's self-signed certificate did not include all of the alternate | |
98 | names for the server when using GNU TLS (Issue #5525) | |
99 | - Fixed compiler warnings with newer versions of GCC (Issue #5532, Issue #5533) | |
100 | - Fixed some PPD caching and IPP Everywhere PPD accounting/password bugs | |
101 | (Issue #5535) | |
102 | - Fixed `PreserveJobHistory` bug with time values (Issue #5538) | |
103 | - The scheduler no longer advertises the HTTP methods it supports (Issue #5540) | |
104 | - Localization updates (Issue #5461, Issues #5471, Issue #5481, Issue #5486, | |
105 | Issue #5489, Issue #5491, Issue #5492, Issue #5493, Issue #5494, Issue #5495, | |
106 | Issue #5497, Issue #5499, Issue #5500, Issue #5501, Issue #5504) | |
107 | - The scheduler did not always idle exit as quickly as it could. | |
108 | - Added a new `ippeveprinter` command based on the old ippserver sample code. | |
109 | ||
110 | ||
111 | Changes in CUPS v2.3b7 | |
112 | ---------------------- | |
113 | ||
114 | - Fixed some build failures (Issue #5451, Issue #5463) | |
115 | - Running ppdmerge with the same input and output filenames did not work as | |
116 | advertised (Issue #5455) | |
117 | ||
118 | ||
119 | Changes in CUPS v2.3b6 | |
120 | ---------------------- | |
121 | ||
122 | - Localization update (Issue #5339, Issue #5348, Issue #5362, Issue #5408, | |
123 | Issue #5410) | |
124 | - Documentation updates (Issue #5369, Issue #5402, Issue #5403, Issue #5404) | |
125 | - CVE-2018-4300: Linux session cookies used a predictable random number seed. | |
126 | - All user commands now support the `--help` option (Issue #5326) | |
127 | - The `lpoptions` command now works with IPP Everywhere printers that have not | |
128 | yet been added as local queues (Issue #5045) | |
129 | - The lpadmin command would create a non-working printer in some error cases | |
130 | (Issue #5305) | |
131 | - The scheduler would crash if an empty `AccessLog` directive was specified | |
132 | (Issue #5309) | |
133 | - The scheduler did not idle-exit on some Linux distributions (Issue #5319) | |
134 | - Fixed a regression in the changes to ippValidateAttribute (Issue #5322, | |
135 | Issue #5330) | |
136 | - Fixed a crash bug in the Epson dot matrix driver (Issue #5323) | |
137 | - Automatic debug logging of job errors did not work with systemd (Issue #5337) | |
138 | - The web interface did not list the IPP Everywhere "driver" (Issue #5338) | |
139 | - The scheduler did not report all of the supported job options and values | |
140 | (Issue #5340) | |
141 | - The IPP Everywhere "driver" now properly supports face-up printers | |
142 | (Issue #5345) | |
143 | - Fixed some typos in the label printer drivers (Issue #5350) | |
144 | - Setting the `Community` name to the empty string in `snmp.conf` now disables | |
145 | SNMP supply level monitoring by all the standard network backends | |
146 | (Issue #5354) | |
147 | - Multi-file jobs could get stuck if the backend failed (Issue #5359, | |
148 | Issue #5413) | |
149 | - The IPP Everywhere "driver" no longer does local filtering when printing to | |
150 | a shared CUPS printer (Issue #5361) | |
151 | - The lpadmin command now correctly reports IPP errors when configuring an | |
152 | IPP Everywhere printer (Issue #5370) | |
153 | - Fixed some memory leaks discovered by Coverity (Issue #5375) | |
154 | - The PPD compiler incorrectly terminated JCL options (Issue #5379) | |
155 | - The cupstestppd utility did not generate errors for missing/mismatched | |
156 | CloseUI/JCLCloseUI keywords (Issue #5381) | |
157 | - The scheduler now reports the actual location of the log file (Issue #5398) | |
158 | - Added USB quirk rules (Issue #5395, Issue #5420, Issue #5443) | |
159 | - The generated PPD files for IPP Everywhere printers did not contain the | |
160 | cupsManualCopies keyword (Issue #5433) | |
161 | - Kerberos credentials might be truncated (Issue #5435) | |
162 | - The handling of `MaxJobTime 0` did not match the documentation (Issue #5438) | |
163 | - Fixed a bug adding a queue with the `-E` option (Issue #5440) | |
164 | - The `cupsaddsmb` program has been removed (Issue #5449) | |
165 | - The `cupstestdsc` program has been removed (Issue #5450) | |
166 | - The scheduler was being backgrounded on macOS, causing applications to spin | |
167 | (rdar://40436080) | |
168 | - The scheduler did not validate that required initial request attributes were | |
169 | in the operation group (rdar://41098178) | |
170 | - Authentication in the web interface did not work on macOS (rdar://41444473) | |
171 | - Fixed an issue with HTTP Digest authentication (rdar://41709086) | |
172 | - The scheduler could crash when job history was purged (rdar://42198057) | |
173 | - Fixed a crash bug when mapping PPD duplex options to IPP attributes | |
174 | (rdar://46183976) | |
175 | - Fixed a memory leak for some IPP (extension) syntaxes. | |
176 | - The `cupscgi`, `cupsmime`, and `cupsppdc` support libraries are no longer | |
177 | installed as shared libraries. | |
178 | - The `snmp` backend is now deprecated. | |
179 | ||
180 | ||
181 | Changes in CUPS v2.3b5 | |
182 | ---------------------- | |
183 | ||
184 | - The `ipptool` program no longer checks for duplicate attributes when running | |
185 | in list or CSV mode (Issue #5278) | |
186 | - The `cupsCreateJob`, `cupsPrintFile2`, and `cupsPrintFiles2` APIs did not use | |
187 | the supplied HTTP connection (Issue #5288) | |
188 | - Fixed another crash in the scheduler when adding an IPP Everywhere printer | |
189 | (Issue #5290) | |
190 | - Added a workaround for certain web browsers that do not support multiple | |
191 | authentication schemes in a single response header (Issue #5289) | |
192 | - Fixed policy limits containing the `All` operation (Issue #5296) | |
193 | - The scheduler was always restarted after idle-exit with systemd (Issue #5297) | |
194 | - Added a USB quirks rule for the HP LaserJet P1102 (Issue #5310) | |
195 | - The mailto notifier did not wait for the welcome message (Issue #5312) | |
196 | - Fixed a parsing bug in the pstops filter (Issue #5321) | |
197 | - Documentation updates (Issue #5299, Issue #5301, Issue #5306) | |
198 | - Localization updates (Issue #5317) | |
199 | - The scheduler allowed environment variables to be specified in the | |
200 | `cupsd.conf` file (rdar://37836779, rdar://37836995, rdar://37837252, | |
201 | rdar://37837581) | |
202 | - Fax queues did not support pause (p) or wait-for-dialtone (w) characters | |
203 | (rdar://39212256) | |
204 | - The scheduler did not validate notify-recipient-uri values properly | |
205 | (rdar://40068936) | |
206 | - The IPP parser allowed invalid group tags (rdar://40442124) | |
207 | - Fixed a parsing bug in the new authentication code. | |
208 | ||
209 | ||
210 | Changes in CUPS v2.3b4 | |
211 | ---------------------- | |
212 | ||
213 | - NOTICE: Printer drivers are now deprecated (Issue #5270) | |
214 | - Kerberized printing to another CUPS server did not work correctly | |
215 | (Issue #5233) | |
216 | - Fixed printing to some IPP Everywhere printers (Issue #5238) | |
217 | - Fixed installation of filters (Issue #5247) | |
218 | - The scheduler now supports using temporary print queues for older IPP/1.1 | |
219 | print queues like those shared by CUPS 1.3 and earlier (Issue #5241) | |
220 | - Star Micronics printers need the "unidir" USB quirk rule (Issue #5251) | |
221 | - Documentation fixes (Issue #5252) | |
222 | - Fixed a compile issue when PAM is not available (Issue #5253) | |
223 | - Label printers supported by the rastertolabel driver don't support SNMP, so | |
224 | don't delay printing to test it (Issue #5256) | |
225 | - The scheduler could crash while adding an IPP Everywhere printer (Issue #5258) | |
226 | - The Lexmark Optra E310 printer needs the "no-reattach" USB quirk rule | |
227 | (Issue #5259) | |
228 | - Systemd did not restart cupsd when configuration changes were made that | |
229 | required a restart (Issue #5263) | |
230 | - The IPP Everywhere PPD generator did not include the `cupsJobPassword` | |
231 | keyword, when supported (Issue #5265) | |
232 | - Fixed an Avahi crash bug in the scheduler (Issue #5268) | |
233 | - Raw print queues are now deprecated (Issue #5269) | |
234 | - Fixed an RPM packaging problem (Issue #5276) | |
235 | - The IPP backend did not properly detect failed PDF prints (rdar://34055474) | |
236 | - TLS connections now properly timeout (rdar://34938533) | |
237 | - Temp files could not be created in some sandboxed applications | |
238 | (rdar://37789645) | |
239 | - The ipptool `--ippserver` option did not encode out-of-band attributes | |
240 | correctly. | |
241 | - Added public `cupsEncodeOption` API for encoding a single option as an IPP | |
242 | attribute. | |
243 | - Removed support for the `-D_PPD_DEPRECATED=""` developer cheat - the PPD API | |
244 | should no longer be used. | |
245 | - Removed support for `-D_IPP_PRIVATE_STRUCTURES=1` developer cheat - the IPP | |
246 | accessor functions should be used instead. | |
247 | ||
248 | ||
249 | Changes in CUPS v2.3b3 | |
250 | ---------------------- | |
251 | ||
252 | - More fixes for printing to old CUPS servers (Issue #5211) | |
253 | - The IPP Everywhere PPD generator did not support deep grayscale or 8-bit per | |
254 | component AdobeRGB (Issue #5227) | |
255 | - Additional changes for the scheduler to substitute default values for invalid | |
256 | job attributes when running in "relaxed conformance" mode (Issue #5229) | |
257 | - Localization changes (Issue #5232, rdar://37068158) | |
258 | - The `cupsCopyDestInfo` function did not work with all print queues | |
259 | (Issue #5235) | |
260 | ||
261 | ||
262 | Changes in CUPS v2.3b2 | |
263 | ---------------------- | |
264 | ||
265 | - Localization changes (Issue #5210) | |
266 | - Build fixes (Issue #5217) | |
267 | - IPP Everywhere PPDs were not localized to English (Issue #5205) | |
268 | - The `cupsGetDests` and `cupsEnumDests` functions no longer filter out local | |
269 | print services like IPP USB devices (Issue #5206) | |
270 | - The `cupsCopyDest` function now correctly copies the `is_default` value | |
271 | (Issue #5208) | |
272 | - Printing to old CUPS servers has been fixed (Issue #5211) | |
273 | - The `ppdInstallableConflict` tested too many constraints (Issue #5213) | |
274 | - All HTTP field values can now be longer than `HTTP_MAX_VALUE` bytes | |
275 | (Issue #5216) | |
276 | - Added a USB quirk rule for Canon MP280 series printers (Issue #5221) | |
277 | - The `cupsRasterWritePixels` function did not correctly swap bytes for some | |
278 | formats (Issue #5225) | |
279 | - Fixed an issue with mapping finishing options (rdar://34250727) | |
280 | - The `ppdLocalizeIPPReason` function incorrectly returned a localized version | |
281 | of "none" (rdar://36566269) | |
282 | - The scheduler did not add ".local" to the default DNS-SD host name when | |
283 | needed. | |
284 | ||
285 | ||
286 | Changes in CUPS v2.3b1 | |
287 | ---------------------- | |
288 | ||
289 | - CUPS is now provided under the Apache License, Version 2.0. | |
290 | - Documentation updates (Issue #4580, Issue #5177, Issue #5192) | |
291 | - The `cupsCopyDestConflicts` function now handles collection attribute | |
292 | ("media-col", "finishings-col", etc.) constraints (Issue #4096) | |
293 | - The `lpoptions` command incorrectly saved default options (Issue #4717) | |
294 | - The `lpstat` command now reports when new jobs are being held (Issue #4761) | |
295 | - The `ippfind` command now supports finding printers whose name starts with an | |
296 | underscore (Issue #4833) | |
297 | - The CUPS library now supports the latest HTTP Digest authentication | |
298 | specification including support for SHA-256 (Issue #4862) | |
299 | - The scheduler now supports the "printer-id" attribute (Issue #4868) | |
300 | - No longer support backslash, question mark, or quotes in printer names | |
301 | (Issue #4966) | |
302 | - The scheduler no longer logs pages as they are printed, instead just logging | |
303 | a total of the pages printed at job completion (Issue #4991) | |
304 | - Dropped RSS subscription management from the web interface (Issue #5012) | |
305 | - Bonjour printer sharing now uses the DNS-SD hostname (or ServerName value if | |
306 | none is defined) when registering shared printers on the network (Issue #5071) | |
307 | - The `ipptool` command now supports writing `ippserver` attributes files | |
308 | (Issue #5093) | |
309 | - The `lp` and `lpr` commands now provide better error messages when the default | |
310 | printer cannot be found (Issue #5096) | |
311 | - The `lpadmin` command now provides a better error message when an unsupported | |
312 | System V interface script is used (Issue #5111) | |
313 | - The scheduler did not write out dirty configuration and state files if there | |
314 | were open client connections (Issue #5118) | |
315 | - The `SSLOptions` directive now supports `MinTLS` and `MaxTLS` options to | |
316 | control the minimum and maximum TLS versions that will be allowed, | |
317 | respectively (Issue #5119) | |
318 | - Dropped hard-coded CGI scripting language support (Issue #5124) | |
319 | - The `cupsEnumDests` function did not include options from the lpoptions | |
320 | files (Issue #5144) | |
321 | - Fixed the `ippserver` sample code when threading is disabled or unavailable | |
322 | (Issue #5154) | |
323 | - Added label markup to checkbox and radio button controls in the web interface | |
324 | templates (Issue #5161) | |
325 | - Fixed group validation on OpenBSD (Issue #5166) | |
326 | - Improved IPP Everywhere media support, including a new | |
327 | `cupsAddDestMediaOptions` function (Issue #5167) | |
328 | - IPP Everywhere PPDs now include localizations of printer-specific media types, | |
329 | when available (Issue #5168) | |
330 | - The cups-driverd program incorrectly stopped scanning PPDs as soon as a loop | |
331 | was seen (Issue #5170) | |
332 | - IPP Everywhere PPDs now support IPP job presets (Issue #5179) | |
333 | - IPP Everywhere PPDs now support finishing templates (Issue #5180) | |
334 | - Fixed a journald support bug in the scheduler (Issue #5181) | |
335 | - Fixed PAM module detection and added support for the common PAM definitions | |
336 | (Issue #5185) | |
337 | - The scheduler now substitutes default values for invalid job attributes when | |
338 | running in "relaxed conformance" mode (Issue #5186) | |
339 | - The scheduler did not work with older versions of uClibc (Issue #5188) | |
340 | - The scheduler now generates a strings file for localizing PPD options | |
341 | (Issue #5194) |