]> git.ipfire.org Git - thirdparty/cups.git/blob - CHANGES-1.2.txt
Load cups into easysw/current.
[thirdparty/cups.git] / CHANGES-1.2.txt
1 CHANGES-1.2.txt
2 ---------------
3
4 CHANGES IN CUPS V1.2.10
5
6 - ppdLocalize() now supports localizing for Japanese
7 using the "jp" locale name used by the ppdmerge
8 program from the CUPS DDK 1.1.0 (STR #2301)
9 - _cupsAdminSetServerSettings() did not support changing
10 of top-level directives as designed.
11 - The init script path check was broken.
12 - CUPS incorrectly used the attribute "notify-recipient"
13 instead of "notify-recicpient-uri" in several places
14 (STR #2297)
15 - Fixed a configure script bug on MirBSD (STR #2294)
16 - The pdftops filter did not limit the amount of recursion
17 of page sets (STR #2293)
18 - Custom page sizes with fractional point sizes did not
19 work (STR #2296)
20 - The lpoptions command would crash when adding or removing
21 options on a system with no printers (STR #2295)
22
23
24 CHANGES IN CUPS V1.2.9
25
26 - The scheduler did not use the default job-sheets
27 (banners) for implicit classes (STR #2284)
28 - The scheduler could crash when listing complete jobs
29 that had been unloaded from memory (STR #2288)
30 - The French localization was doubled up (STR #2287)
31 - Build system fixes for several platforms (STR #2260,
32 STR #2275)
33 - The scheduler's openssl certificate generation code was
34 broken on some platforms (STR #2282)
35 - The scheduler's log rotation check for devices was
36 broken (STR #2278)
37 - The LPD mini-daemon did not handle the document-format
38 option correctly (STR #2266)
39 - The pdftops filter ignored the "match" size option in the
40 pdftops.conf file (STR #2285)
41 - cupstestppd now validates UTF-8 text strings in
42 globalized PPD files (STR #2283)
43 - The outputorder=reverse option did not work with all
44 printers (STR #2279)
45 - Classes containing other classes did not always work
46 (STR #2255)
47 - Printer location and description information was lost
48 if the corresponding string contained the "#" character
49 (STR #2254)
50 - cupsRemoveOption() did not work properly (STR #2264)
51 - The USB backend did not work with some USB to parallel
52 cables on Mac OS X.
53 - The test page did not print the rulers properly on
54 large media sizes (STR #2252)
55 - The text filter could crash when pretty printing certain
56 types of files (STR #2158)
57
58
59 CHANGES IN CUPS V1.2.8
60
61 - Documentation fixes (STR #2141, STR #2157)
62 - The HTTP upgrade redirection used by the scheduler did
63 not work with Internet Explorer (STR #2235)
64 - Members of a class with Unicode names did not appear
65 correctly in the web interface (STR #2154)
66 - Changing the "Save debugging information" setting in
67 the web interface no longer affects the other server
68 settings (STR #1993)
69 - The scheduler did not choose SSL certificates correctly
70 on Mac OS X (STR #2225)
71 - The scheduler could get in an infinite loop when
72 printing to a remote class (STR #2228)
73 - The jobs web page did not have separating space after
74 the number of pages column (STR #2230)
75 - Added French localization (STR #2221)
76 - Updated Spanish localization (STR #2223)
77 - Updated Japanese localization (STR #2216)
78 - cupsBorderlessScalingFacter was limited to a range of
79 0.9 to 1.1, but some printers need larger values (STR
80 #2222)
81 - Landscape printing of PDF files did not always work
82 (STR #2149)
83 - Fixed slow USB printing on Minolta printers (STR #2104,
84 STR #2219)
85 - The ZPL label printer driver could produce stretched
86 output (PR #6448)
87 - The IPP backend now clears the printer-state-message
88 when there are no outstanding errors or warnings (STR
89 #2126)
90 - The CUPS Java scripting support did not work with
91 recent versions of Java due to the use of Sun's private
92 Base64 class (STR #2152)
93 - The scheduler did not pass HTTP GET form variables to
94 custom CGI programs (STR #2173)
95 - The lpoptions command now displays the reason why a PPD
96 file cannot be found (STR #2184)
97 - The scheduler did not accept "none" as a browse
98 protocol name (STR #2200)
99 - The scheduler still loaded the remote printer cache,
100 even when browsing was disabled (STR #2198)
101 - The SNMP backend now shows OfficeJet printers with the
102 "HP" manufacturer prefix (STR #2151)
103 - Web interface HTML cleanup (STR #2153)
104 - The parallel backend consumed 100% CPU on FreeBSD due
105 to an apparently common parallel port driver bug (STR
106 #2161)
107 - ippReadIO() incorrectly returned IPP_IDLE when the
108 initial IPP message header could not be read (STR
109 #2179)
110 - cupsRasterInterpretPPD() did not support custom options
111 (STR #1960)
112 - Collated output produced by the PostScript filter could
113 lose some options (STR #2137)
114 - job-hold-until with time values for the next day would
115 be held for 60 days (STR #2144)
116 - Some types of Sun raster files did not print correctly
117 (STR #2107)
118 - Raw PBM files did not print correctly (STR #2106)
119 - The SNMP backend no longer uses IPP with HP printers,
120 as some recent firmware versions appear to not work
121 (STR #2055)
122 - cupsMarkOptions() did not handle the
123 multiple-document-handling option (STR #2135)
124 - lpstat did not show the local job ID of active printers
125 (STR #2125)
126 - The backends incorrectly used STATUS:
127 media-tray-empty-error messages for out-of-paper
128 conditions (STR #2123, STR #2124)
129 - cupsGetPPD2() returned the wrong error when the PPD
130 file did not exist (STR #2122)
131 - cupsDoAuthentication() did not translate the password
132 prompt (STR #2121)
133 - httpGetLength2() did not handle error messages without
134 content correctly (STR #2133)
135 - Added support for 32/64-bit libraries on HP-UX Itanium
136 systems (STR #2115)
137 - Fixed a configure script problem with the 32/64-bit
138 library support (STR #2114)
139 - The PostScript filter did not properly output document
140 setup commands for reversed output (STR #2111)
141 - The scheduler did not parse IPv6 netmasks properly (STR
142 #2117)
143
144
145 CHANGES IN CUPS V1.2.7
146
147 - Documentation updates (STR #2089)
148 - Added an Italian translation (STR #2105)
149 - The PostScript filter now rotates the bounding box
150 values as needed (STR #2079)
151 - The scheduler no longer loads the remote printer cache
152 when browsing is disabled (STR #2084)
153 - The scheduler no longer writes a new launchd
154 configuration file if it doesn't have to (STR #2083)
155 - Updated the USB and PAP backends for Mac OS X (STR
156 #2086)
157 - The scheduler now picks up on changes to IPv6 and DNS
158 configuration on Mac OS X (STR #2085)
159 - The lpstat program could still hang (STR #2098)
160 - Fixed an inefficiency in the SNMP IPP detection code
161 (STR #2100)
162 - The SSL negotiation code did not implement short
163 timeouts (STR #2091)
164
165
166 CHANGES IN CUPS V1.2.6
167
168 - The web interface was not localized on Mac OS X (STR
169 #2075)
170 - "lpc status" did not show the number of queued jobs for
171 disabled queues (STR #2069)
172 - The lpstat program could hang (STR #2073)
173 - The serial backend did not support the new USB serial
174 filenames on Linux (STR #2061)
175 - The parallel backend did not support bidirectional I/O
176 properly (STR #2056)
177 - The network backends now log the numeric address that
178 is being used (STR #2046)
179 - Fixed a compile error when using libpaper.
180 - Fixed a compile error when compiling on Solaris with
181 threading enabled (STR #2049, STR #2050)
182 - Missing printer-state-changed event for
183 printer-state-message updates (STR #2047)
184
185
186 CHANGES IN CUPS V1.2.5
187
188 - Documentation updates (STR #2038)
189 - The SNMP backend no longer uses IPP for Epson printers
190 (STR #2028)
191 - Updated the configure script for Tru64 UNIX 5.1 (STR
192 #2033)
193 - Tru64 5.1B's getaddrinfo() and getnameinfo() functions
194 leak file descriptors (STR #2034)
195 - cupsAddDest() didn't add the parent destination's
196 options and attributes.
197 - ppdConflicts() did not handle custom option
198 constraints.
199 - Raw printing of gzip'd files did not work (STR #2009)
200 - The scheduler no longer preserves default option
201 choices when the new PPD no longer provides the old
202 default choice (STR #1929)
203 - The Linux SCSI backend is now only built if the SCSI
204 development headers are installed.
205 - USB printing to Minolta printers did not work (STR
206 #2019)
207 - Windows clients could not monitor the queue status (STR
208 #2006)
209 - The scheduler didn't log the operation name in the
210 access_log file for Create-Job and Print-Job requests.
211 - The PostScript filter now separates collated copies
212 with any required JCL commands so that JCL-based
213 finishing options act on the individual copies and not
214 all of the copies as a single document.
215 - The PostScript filter now disables duplex printing when
216 printing a 1-page document.
217 - cups-lpd didn't pass the correct
218 job-originating-host-name value (STR #2023)
219 - Fixed some speling errors in the German message catalog
220 (STR #2012)
221 - cupstestppd did not catch PPD files with bad
222 UIConstraints values (STR #2016)
223 - The USB backend did not work with the current udev-
224 created printers if the first printer was disconnected
225 (STR #2017)
226 - Mirrored and rotated printing did not work with some
227 documents (STR #2004)
228 - 2-sided printing with banners did not work properly on
229 some printers (STR #2018)
230 - Updated the raw type rule to handle PJL within the
231 first 4k of a print job (STR #1969)
232 - Added an Estonian translation (STR #1957)
233 - Clarified the documentation for the cupsd.conf @LOCAL
234 and @IF(name) allow/deny functionality (STR #1992)
235 - The PostScript filters did not escape the Title and For
236 comments in the print job header (STR #1988)
237 - The scheduler would use 100% CPU if browsing was
238 disabled and the cupsd.conf file contained BrowsePoll
239 lines (STR #1994)
240 - The cupsDirRead() function did not work properly on
241 non-POSIX-compliant systems (STR #2001)
242 - The cupsFile functions didn't handle read/write errors
243 properly (STR #1996)
244 - The DBUS support now works with older versions of the
245 DBUS library.
246
247
248 CHANGES IN CUPS V1.2.4
249
250 - The --with-printcap configure option did not work (STR
251 #1984)
252 - The character set reported by cupsLangGet() did not
253 always reflect the default character set of a given
254 locale (STR #1983)
255 - Older Lexmark and Tektronix printers did not work with
256 IPP (STR #1980)
257 - Failsafe printing did not work (PR #6328)
258 - Some web interface redirects did not work (STR #1978)
259 - The web interface change settings button could
260 introduce a "Port 0" line in cupsd.conf if there was no
261 loopback connection available (STR #1979)
262 - The web interface change settings and edit
263 configuration file buttons would truncate the
264 cupsd.conf file (STR #1976)
265 - The German web interface used the wrong printer icon
266 images (STR #1973)
267 - The "All Documents" link in the on-line help was
268 missing a trailing slash (STR #1971)
269 - The Polish web interface translation used the wrong
270 URLs for the job history (STR #1963)
271 - The "reprint job" button did not work (STR #1956)
272 - The scheduler did not always report printer or job
273 events properly (STR #1955)
274 - The scheduler always stopped the queue on error,
275 regardless of the exit code, if the error policy was
276 set to "stop-printer" (STR #1959)
277 - ppdEmitJCL() included UTF-8 characters in the JCL job
278 name, which caused problems on some printers (STR
279 #1959)
280 - Fixed a buffering problem that cause high CPU usage
281 (STR #1968)
282 - The command-line applications did not convert
283 command-line strings to UTF-8 as needed (STR #1958)
284 - cupsDirRead() incorrectly aborted when reading a
285 symbolic link that pointed to a file/directory that did
286 not exist (STR #1953)
287 - The cupsInterpretRasterPPD() function did not handle
288 custom page sizes properly.
289
290
291 CHANGES IN CUPS V1.2.3
292
293 - The scheduler did not send job-state or
294 job-config-changed events when a job was held,
295 released, or changed (STR #1947)
296 - The scheduler now aborts if the configuration file and
297 directory checks fail (STR #1941)
298 - Fixed a problem with ippPort() not using the port
299 number that was set via the client.conf file or
300 CUPS_SERVER environment variable (STR #1945)
301 - HTTP headers were not buffered (STR #1899)
302 - Some IPP printers (HP) did not like UTF-8 job names
303 (STR #1837)
304 - The CUPS desktop icon is now localized for Polish (STR
305 #1920)
306 - Printer options were not always honored when printing
307 from Windows clients (STR #1839)
308 - The openssl command would lock up the scheduler when
309 generating an encryption certificate on some platforms
310 due to a lack of entropy for the random number
311 generator (STR #1876)
312 - The web admin page did not recognize that "Listen 631"
313 enabled remote access (STR #1908)
314 - The web admin page did not check whether changes were
315 made to the Basic Server Settings check boxes (STR
316 #1908)
317 - The IPP backend could generate N*N copies in certain
318 edge cases.
319 - The scheduler did not restore remote printers properly
320 when BrowseShortNames was enabled (STR #1893)
321 - Polling did not handle changes to the network
322 environment on Mac OS X (STR #1896)
323 - The "make test" subscription tests used invalid
324 notify-recipient-uri values (STR #1910)
325 - Printers could be left in an undefined state on system
326 sleep (STR #1905)
327 - The Berkeley and System V commands did not always use
328 the expected character set (STR #1915)
329 - Remote printing fixes (STR #1881)
330 - The cupstestppd utility did not validate translation
331 strings for custom options properly.
332 - Multi-language PPD files were not properly localized in
333 the web interface (STR #1913)
334 - The admin page's simple settings options did not check
335 for local domain socket or IPv6 addresses and did not
336 use "localhost" as the listen address.
337 - An empty BrowseProtocols, BrowseLocalProtocols, or
338 BrowseRemoteProtocols line would crash the scheduler
339 instead of disabling the corresponding browsing options.
340 - The scheduler now logs IPP operation status as debug
341 messages instead of info or error.
342 - cupsFileRewind() didn't clear the end-of-file state.
343 - cupstestppd didn't report the actual misspelling of the
344 1284DeviceID attribute (STR #1849)
345 - BrowseRelay didn't work on Debian (STR #1887)
346 - configure --without-languages didn't work (STR #1879)
347 - Manually added remote printers did not work (STR #1881)
348 - The <cups/backend.h> header was not installed.
349 - Updated the build files for Autoconf 2.60 (STR #1853)
350 - The scheduler incorrectly terminated the polling
351 processes after receiving a partial log line.
352 - The cups-lpd mini-daemon reported "No printer-state
353 attribute found" errors when reporting the queue status
354 (PR #6250, STR #1821)
355 - SNMP backend improvements (STR #1737, STR #1742, STR
356 #1790, STR #1835, STR #1880)
357 - The scheduler erroneously reported an error with the
358 CGI pipe (STR #1860)
359 - Fixed HP-UX compile problems (STR #1858, STR #1859)
360 - cupstestppd crashed with some PPD files (STR #1864)
361 - The <cups/dir.h> and <cups/file.h> header files did not
362 work with C++.
363
364
365 CHANGES IN CUPS V1.2.2
366
367 - Documentation updates (STR #1765, STR #1780)
368 - CUPS didn't know about alternate character set names
369 for Asian text (STR #1819)
370 - The lpoptions -o and -r options did not work unless you
371 specified a printer.
372 - The lpoptions command incorrectly allowed users to set
373 printer attributes like printer-type (STR #1791)
374 - httpWait() did not flush the write buffer, causing "bad
375 request" errors when communicating with CUPS 1.1.x
376 servers (STR #1717)
377 - Polling did not sanitize the printer description,
378 location, or make and model strings like broadcasts
379 did.
380 - Polled printers did not show the server's default
381 job-sheets option value.
382 - The Samba password prompt was not properly localized
383 (STR #1814)
384 - Added a German translation (STR #1842)
385 - The scheduler now creates self-signed SSL certficates
386 automatically when using OpenSSL and CDSA for
387 encryption, just as for GNU TLS.
388 - The SNMP backend sporatically reported some printers as
389 "unknown" (STR #1774)
390 - The scheduler now forces BrowseTimeout to be at least
391 twice the BrowseInterval value and non-zero to avoid
392 common configuration errors.
393 - The scheduler incorrectly returned printer URIs of the
394 form "ipp://server/printers/classname" for classes (STR
395 #1813)
396 - Updated Japanese localization (STR #1805)
397 - The scheduler's SSL certificate/key directory was not
398 created on installation (STR #1788)
399 - Added a mailto.conf man page and help page (STR #1754)
400 - The parallel and USB backends no longer wait for the
401 printer to go on-line - this caused problems with
402 certain printers that don't follow with the IEEE-1284
403 standard (STR #1738)
404 - The scheduler could crash on a reload when implicit
405 classes were present (STR #1828)
406 - The IPP backend incorrectly used the CUPS_ENCRYPTION
407 environment variable to determine the default
408 encryption mode when printing (STR #1820)
409 - USB printing did not work on Solaris (STR #1756)
410 - The scheduler sorted job priorities in the wrong order
411 (STR #1811)
412 - The scheduler did not automatically restart notifiers
413 that exited or crashed (STR #1793)
414 - IPv6 support did not work on NetBSD (STR #1834)
415 - The EPM packaging file did not work (STR #1804)
416 - The scheduler used up the CPU if BrowseRemoteProtocols
417 was empty (STR #1792)
418 - Custom page sizes did not work (STR #1787)
419 - The SNMP backend could crash on some systems when SNMP
420 logging was enabled (STR #1789)
421 - Browsing could produce some funny printer names when
422 ServerName was set to an IP address (STR #1799)
423 - Fixed the log message for BrowseRelay (STR #1798)
424 - Fixes to allow CUPS to compile on MirBSD (STR #1796)
425 - The scheduler incorrectly set the FINAL_CONTENT_TYPE
426 environment variable (STR #1795)
427 - The pdftops filter incorrectly embedded a "produced by"
428 comment, causing PDF printing not to work on some
429 operating systems (STR #1801)
430 - Sending raw jobs from a client system could cause the
431 client's scheduler to eventually crash (STR #1786)
432 - The scheduler now checks that the notifier exists prior
433 to accepting a new subscription request.
434 - The scheduler now reports the supported
435 notify-recipient schemes based on the contents of the
436 ServerBin/notifier directory.
437 - Event notifications did not include the
438 notify-sequence-number or other required attributes
439 (STR #1747)
440 - Allow/Deny addresses of the form "11.22.33.*" did not
441 work on Linux (STR #1769)
442 - cupsGetPPD() did not work if the scheduler was only
443 listening on a domain socket (STR #1766)
444 - The scheduler could crash advertising a class (STR
445 #1768)
446 - The scheduler could crash if the default printer was
447 deleted (STR #1776)
448 - Added a new default CUPS raster format (v3) which does
449 not compress the raster stream in order to provide the
450 same cupsRasterReadPixels() and cupsRasterWritePixels()
451 performance as CUPS 1.1.x.
452 - The cupsaddsmb man page listed the wrong files for the
453 CUPS driver.
454 - Some configure --with options did not work (STR #1746)
455 - "Allow @IF(name)" didn't work if "name" wasn't the
456 first network interface (STR #1758)
457 - The lpstat command did not use the correct character
458 set when reporting the date and time (STR #1751)
459 - The cupsaddsmb command and web interface did not update
460 the Windows PPD files properly, resulting in corrupt
461 PPD files for the Windows client to use (STR #1750)
462 - The cupsd.conf man page didn't describe the Listen
463 domain socket syntax (STR #1753)
464 - The scheduler no longer tries to support more than
465 FD_SETSIZE file descriptors.
466 - CDSA (encryption) support fixes for MacOS X.
467 - The lppasswd program needs to be setuid to root to
468 create and update the /etc/cups/passwd.md5 file (STR
469 #1735)
470 - 32/64-bit library installation was broken (STR #1741)
471 - The USB backend now reports a "no such device" error
472 when using the old filename-based USB URIs instead of
473 the "success" error.
474 - Increased the HTTP and IPP read timeouts to 10 seconds,
475 as 1 second was too short on congested networks (STR
476 #1719)
477 - The SNMP backend now uses the device description over
478 the printer-make-and-model attribute when the attribute
479 contains a generic name (STR #1728)
480 - Fixed another file descriptor leak when printing raw
481 files (STR #1736)
482 - Raw queues were not shared via LDAP (STR #1739)
483 - The pstops filter didn't always embed PageSetup
484 commands from the PPD file (STR #1740)
485 - "make install" didn't work if you disabled all of the
486 localizations.
487 - The scheduler didn't always choose the least costly
488 filter.
489 - Fixed parsing of IPv6 addresses in Allow, Deny,
490 BrowseAllow, BrowseDeny, and BrowseRelay directives
491 (STR #1713)
492 - Printers that were shared via LDAP did not get added to
493 the LDAP server properly (STR #1733)
494 - LDAP browsing would crash the scheduler if a required
495 value was missing (STR #1731)
496 - Special cases for the "localhost" hostname did not
497 work, causing printing to not work when the /etc/hosts
498 file did not contain a localhost entry (STR #1723)
499 - Updated the Spanish translation (STR #1720, STR #1770)
500 - Reverse-order page output was broken when N-up or
501 landscape orientations were used (STR #1725)
502 - The parallel, serial, socket, and USB backends needed
503 print data before they would report back-channel data,
504 causing problems with several new drivers (STR #1724)
505
506
507 CHANGES IN CUPS V1.2.1
508
509 - "lprm -h hostname" did not work (STR #1800)
510 - The web interface did not handle reloads properly for
511 MSIE (STR #1716)
512 - The configure script no longer adds linker rpath
513 options when they are unnecessary.
514 - The scheduler could crash printing a debug message on
515 Solaris (STR #1714)
516 - The --enable-32bit and --enable-64bit configure options
517 did not always work.
518 - The password prompt showed the domain socket address
519 instead of "localhost" for local authentication (STR
520 #1706)
521 - The web interface filtered the list of printers even if
522 the user wasn't logged in (STR #1700)
523 - The IPP backend did not work reliably with some Xerox
524 printers (STR #1704)
525 - Trailing banners were not added when printing a single
526 file (STR #1698)
527 - The web interface support programs crashed on Solaris
528 (STR #1699)
529 - cupstestppd incorrectly reported problems with
530 *1284DeviceID attributes (STR #1710)
531 - Browsing could get disabled after a restart (STR #1670)
532 - Custom page sizes were not parsed properly (STR #1709)
533 - The -U option wasn't supported by lpadmin (STR #1702)
534 - The -u option didn't work with lpadmin (STR #1703)
535 - The scheduler did not create non-blocking back-channel
536 pipes, which caused problems when the printer driver
537 did not read the back-channel data (STR #1705)
538 - The scheduler no longer uses chunking in responses to
539 clients - this caused problems with older versions of
540 CUPS like 1.1.17 (PR #6143)
541 - Automatic raw printing was broken (STR #1667)
542 - 6-up printing was broken (STR #1697)
543 - The pstops filter did not disable CTRL-D processing on
544 the printer/RIP.
545 - ppdOpen*() did not load custom options properly (STR
546 #1680)
547 - "Set Printer Options" in the web interface did not
548 update the DefaultImageableArea or
549 DefaultPaperDimension attributes in the PPD file (STR
550 #1689)
551 - Fixed compile errors (STR #1682, STR #1684, STR #1685,
552 STR #1690)
553 - The lpstat command displayed the wrong error message
554 for a missing destination (STR #1683)
555 - Revised and completed the Polish translation (STR
556 #1669)
557 - Stopped jobs did not show up in the list of active jobs
558 (STR #1676)
559 - The configure script did not use the GNU TLS
560 "libgnutls-config" script to find the proper compiler
561 and linker options.
562 - The imagetoraster filter did not correctly generate
563 several 1, 2, and 4-bit color modes.
564 - cupsRasterWritePixels() could lose track of the current
565 output row.
566 - cupsRasterReadPixels() did not automatically swap
567 12/16-bit chunked pixel data.
568 - Moved the private _cups_raster_s structure out of the
569 public header.
570 - Updated the CUPS raster format specification to include
571 encoding rules and colorspace definitions.
572 - The Zebra PPD files had the wrong PostScript code for
573 the "default" option choices.
574 - The imagetoraster filter did not generate correct CIE
575 XYZ or Lab color data.
576 - The cups-config script did not work when invoked from a
577 source directory (STR #1673)
578 - The SNMP backend did not compile on systems that used
579 the getifaddrs emulation functions (STR #1668)
580
581
582 CHANGES IN CUPS V1.2.0
583
584 - Documentation updates (STR #1618, STR #1620, STR #1622,
585 STR #1637)
586 - Static file copy buffers reduced from 64k to 32k to
587 work around bogus MallocDebug library assumptions (STR
588 #1660)
589 - The scheduler did not decode the backend exit code
590 properly (STR #1648)
591 - The MacOS X USB backend did not report the 1284 device ID,
592 nor did it fix device IDs returned by HP printers.
593 - The scheduler started more slowly than 1.1.x with large
594 numbers of printers (STR #1653)
595 - cupsRasterInterpretPPD() didn't support the
596 cupsPreferredBitsPerColor attribute, and imagetoraster
597 didn't use the new API.
598 - The "make test" script did not create all of the necessary
599 subdirectories for testing (STR #1638)
600 - The scheduler did not prevent rotation of logs
601 redirected to /dev/null (STR #1651)
602 - "make test" did not include the SNMP backend in the
603 test environment (STR #1625)
604 - The EPM packaging files did not work (STR #1621)
605 - "Use Default Configuration" inserted a broken
606 configuration file (STR #1624)
607 - Redirects in the web interface did not always preserve
608 the encrypted status of a connection (STR #1603)
609 - Added the Apple "pap" backend.
610 - Added CUPS library to CUPS Image shared library
611 linkage to support Linux --as-needed linker option
612 (STR #1606)
613 - Fixed support for --enable-pie (STR #1609)
614 - The pdftops filter did not validate the length of the
615 encryption key (STR #1608)
616 - Updated the Polish localization.
617 - "Encryption Required" in the cupsd.conf file now only
618 requires encryption when the connection is not over the
619 loopback interface or domain socket.
620 - Printer names containing "+" were not quoted properly in
621 the web interface (STR #1600)
622 - The SNMP backend now reports the make and model in the
623 information string so that the auto-generated printer
624 name is more useful than just an IP address.
625
626
627 CHANGES IN CUPS V1.2rc3
628
629 - The cups-lpd program always did reverse lookups on the
630 client address, which could be a performance problem.
631 Added a "-n" option to disable lookups.
632 - When configured with SSL support, require encryption by
633 default when displaying the /admin location (STR #1592)
634 - The next job ID was not computed correctly if the job
635 cache file got out of sync with the spool directory
636 (STR #1582)
637 - The PNG image handling code used deprecated functions
638 from libpng (STR #1587)
639 - Added a Polish translation (STR #1584, STR #1586)
640 - More changes to the scheduler to improve battery life
641 on portable devices (STR #1583)
642 - Changed the default log level for status messages back
643 to "DEBUG" to be consistent with CUPS 1.1.x (STR #1579)
644 - The error string was not set properly when
645 cupsDoFileRequest() was given the name of a directory
646 (STR #1578)
647 - Fixed handling of job-hold-until (STR #1581)
648 - Added explicit notes to the cupsaddsmb man page
649 explaining that the driver filenames are case-sensitive
650 under UNIX and that they must be all lowercase (Windows
651 2000) or all UPPERCASE (Windows 95/98/Me) to work (STR
652 #1568)
653 - The USB backend incorrectly split the manufacturer name
654 if it contained spaces (STR #1566)
655 - The scheduler would hang when listing PPD files for a
656 manufacturer whose name contained spaces (STR #1567)
657 - Added the SNMP backend for network printer discovery
658 (STR #1555)
659 - cupstestppd now fails PPD files with 1284DeviceId
660 instead of 1284DeviceID, and cups-driverd uses a
661 case-insensitive comparison when looking for it (STR
662 #1573)
663 - cupsDoFileRequest() and cupsDoRequest() now work
664 properly with non-blocking HTTP connections.
665 - Added Swedish translation (STR #1569)
666 - "make install" now installs the MIME files with world
667 read permissions (STR #1565)
668 - More CDSA encryption support fixes (STR #1563)
669 - Updated the default mime.types file to support printing
670 of files that do not have a locally-recognized MIME
671 media type to raw or System V queues.
672 - Updated the serial port detection code on Linux (STR
673 #1562)
674 - Added some more error checking to httpGetHostname()
675 (STR #1561)
676 - The title of some administration pages was not
677 localized (STR #1548)
678 - The edit-config.tmpl file was not generated or
679 installed for the Spanish or Japanese localizations
680 (STR #1547)
681 - The mimeDelete() function freed the types before the
682 filters, but the filters needed the type data (STR #1558)
683 - The scheduler didn't keep track of the status pipes
684 properly, leading to a bad select() for multi-file jobs
685 (STR #1559)
686 - The cupstestdsc program didn't validate the ordinal
687 page number value for %%Page: comments.
688
689
690 CHANGES IN CUPS V1.2rc2
691
692 - The scheduler was not always using the string pool,
693 causing random crashes.
694 - The lpmove and the web interface's Move Job button did
695 not work with stopped jobs (STR #1534)
696 - The PostScript filter did not handle the page-set
697 option properly with number-up printing (STR #1543)
698 - The scheduler now only warns about unsupported ACLs
699 once (STR #1532)
700 - The "fitplot" option did not work with output from
701 Mozilla (STR #1542)
702 - The imagetops filter did not work with Level 2 or 3
703 printers (STR #1533)
704 - The scheduler now recognizes PostScript files with PJL
705 commands that do not include an ENTER LANGUAGE command.
706 - Added --with-printcap configure option.
707 - 64-bit SSL fixes for MacOS X.
708 - The scheduler didn't send some printer state change
709 events.
710 - The scheduler didn't send jobs to busy remote printers.
711 - Fixed some problems with the launchd support.
712 - Added new USB printer backend for MacOS X.
713 - The PostScript filter now handles files that start with
714 an incomplete PJL header (PR #6076)
715 - The web interface language selection code did not try
716 the generic language localization (STR #1531)
717 - The language cache, string pool, and transcoding caches
718 are now process global instead of per-thread to avoid
719 problems with GNOME and to allow for data sharing
720 between threads (STR #1530)
721 - Fixed a CUPS 1.1.x compatibility bug (STR #1528)
722 - The web interface redirection after certain printer
723 administration tasks was broken (STR #1516)
724 - Web interface authorization could get stuck (STR #1512)
725 - Localization updates (STR #1513, STR #1518, STR #1520)
726 - The pstops filter didn't work with some files (STR
727 #1523)
728 - "./configure --enable-static" didn't work (STR #1522)
729 - The scheduler was not using the configured default
730 Group (STR #1521)
731 - The web interface still did not show the localized time
732 and date for some locales and systems (STR #1509)
733 - httpAddrGetList() would crash on systems without
734 getaddrinfo().
735 - Socket URIs without a trailing slash would cause the
736 port number to not be accepted (STR #1519)
737 - Local raw and System V printers were not advertised as
738 such for printer browsing (STR #1502)
739 - The RPM spec file incorrectly put duplicate copies of
740 the Japanese and Spanish web interface templates in the
741 main cups package (STR #1517)
742 - cupsSetDests() did not explicitly set the permissions
743 of the /etc/cups/lpoptions file (STR #1508)
744 - The lpq command crashed with the -h option (STR #1515)
745
746
747 CHANGES IN CUPS V1.2rc1
748
749 - Documentation updates (STR #1497, STR #1498)
750 - The scheduler now redirects browsers to https: URLs
751 when encryption is required.
752 - The scheduler would crash when printing with a banner
753 (STR #1500)
754 - cups-driverd did not use the LanguageEncoding attribute
755 in PPD files to convert the NickName to UTF-8 (STR
756 #1503)
757 - The lpadmin command could not set the
758 printer-error-policy attribute (STR #1504)
759 - The web interface did not show the time and date in the
760 correct format for the locale (STR #1505)
761 - CUPS no longer accepts print jobs if a printer does not
762 support the file format (STR #1501)
763 - Cleaned up the PostScript filter (pstops) so that it
764 properly supports %%IncludeFeature and page scaling
765 (STR #1453)
766 - Fixed the cupsFileRewind() and cupsFileSeek() functions
767 to work properly with uncompressed files.
768 - Added cupsFileGetLine(), cupsFileStderr(),
769 cupsFileStdin(), and cupsFileStdout() functions to the
770 CUPS library.
771 - Added a new cupstestdsc program to test the DSC
772 conformance of PostScript files.
773 - Added KDE/GNOME icons and a Manage Printers menu item.
774 - Added --enable-image and --enable-pdftops configure
775 options to control whether the image and PDF filters
776 are built and installed (default = yes for all
777 platforms but MacOS X)
778 - Fixed a minor memory leak in the PPD API.
779 - Fixed transcoding issues (STR #1493)
780 - The scheduler now enforces a minimum job cost of 100
781 when doing FilterLimit checks.
782 - The scheduler would leak file descriptors when printing
783 to raw queues (STR #1491)
784 - The IPv6 support did not compile on Tru64 UNIX (STR
785 #1488)
786 - ppdOpen2() now converts the NickName and all UI text to
787 UTF-8 (STR #1475)
788 - The Set Allowed Users web page did not work (STR #1486)
789 - When the default policy was not set or set to a non-
790 existing policy, the scheduler did not set the default
791 policy name to "default" (STR #1484)
792 - The Zebra CPCL driver did not use the correct righthand
793 margin for the 4" wide label sizes.
794 - Fixed a problem with the parsing of fractional real
795 numbers in PPD files.
796 - Added Spanish localization files (STR #1480)
797 - Fixed localization of a few scheduler messages (STR
798 #1478)
799 - Fixed support for HEAD requests in the scheduler (STR
800 #1481)
801
802
803 CHANGES IN CUPS V1.2b2
804
805 - Updated the CUPS design description.
806 - Added --enable-32bit and --enable-64bit configure
807 options to allow building of separate 32/64-bit
808 libraries on systems that support both environments
809 (STR #1472)
810 - Various compiler warning fixes.
811 - Fixes for Solaris 10 builds against old GNU TLS and
812 LDAP libraries.
813 - Added a cupsArrayUserData() function to retrieve the
814 user data pointer for an array (useful for typing
815 arrays)
816 - The ppdEmitString() function did not compute the
817 required buffer size properly, leading to dropped
818 characters on the end of the printer commands in pstops
819 and imagetops (STR #1470)
820
821
822 CHANGES IN CUPS V1.2b1
823
824 - The serial backend now supports Equinox 8-port serial
825 hubs (STR #526)
826 - The IPP backend now supports a compression option to
827 compress print files as they are sent to the remote
828 server (STR #956)
829 - The CUPS browse protocol now supports passing of
830 default options and browse timeout values from the
831 server to the clients (STR #800)
832 - Implicit classes that timed out could cause the
833 scheduler to crash (STR #1439)
834 - Added DragonFly support in local device backends (STR
835 #1362)
836 - Added LDAP printer browsing support (STR #338)
837 - Added official support for printer maintenance commands
838 via the CUPS Command file format and hooks in the
839 printer-type and web interfaces (STR #932)
840 - The HP-GL/2 filter could get in an infinite loop trying
841 to convert HP-PCL files (STR #1415)
842 - CUPS now implements the HTTP/1.1 Expect header (STR
843 #1407)
844 - Options in PPD files are no longer automatically put in
845 an "Extra" group; rather, all options that are not
846 inside an Open/CloseGroup will be placed in the
847 "General" group (STR #1385)
848 - The scheduler now creates a job-uuid attribute that
849 uniquely identifies a job on a network (STR #1410)
850 - The init script now unsets the TMPDIR environment
851 variable to prevent user temporary directories from
852 being used by cupsd accidentally (STR #1424)
853 - Added support for launchd on MacOS X.
854 - Added support for notify_post on MacOS X.
855 - Added support for DBUS on Linux.
856 - All of the Berkeley (except for lpc) and System V
857 commands now support specification of user, host, and
858 port (STR #1028, STR #1029, STR #1087)
859 - The lpmove command now allows you to move all jobs for
860 a given queue (STR #56)
861 - The web interface now supports moving of a job or jobs
862 to another queue (STR #56)
863 - The web interface now provides searching, paging, and
864 changing of the sort/display order of classes, jobs,
865 and printers.
866 - cupsaddsmb now accepts a password on the command-line
867 and supports passwords with special characters (STR
868 #822, STR #1236)
869 - ppdLoad*() no longer tries to "fix" bad characters in
870 UI text (STR #1101)
871 - Printer names can now (reliably) contain Unicode
872 characters (STR #896)
873 - The lpstat command now shows the time and date of the
874 last printer state change instead of the hardcoded "Jan
875 01 00:00" (STR #659)
876 - The scheduler now adds a job-actual-printer-uri
877 attribute to job objects when printing to a class (STR
878 #116)
879 - The scheduler now logs log file open errors to the
880 system log (STR #1289)
881 - The scheduler now sets the job-originating-user-name to
882 the authenticated username, if available (STR #1318)
883 - The scheduler now only updates the permissions of SSL
884 keys and certificates when they are under the
885 ServerRoot directory (STR #1324)
886 - The rastertodymo driver has been renamed to
887 rastertolabel (a symlink is installed so that existing
888 queues continue to work) and now also supports Zebra's
889 CPCL language.
890 - The lpstat command could show the wrong active job for
891 a printer (STR #1301)
892 - Fixed a potential crash problem in the scheduler when
893 aborting a CGI program (STR #1290)
894 - Added a "cancel all jobs" button to the class and
895 printer web interfaces (STR #1140)
896 - The add-printer web page now shows the
897 set-printer-options page after the printer has been
898 added (STR #690)
899 - The classes web page now provides links to each of the
900 member printers (STR #307)
901 - CUPS now handles HTTP request/response lines up to 32k
902 in length; this is mainly for better cookie support
903 (STR #1274)
904 - Added support for the Apache PassEnv and SetEnv
905 directives to cupsd.conf (STR #853)
906 - Added large file (64-bit) support (STR #541)
907 - Fixed a performance issue with the ippReadIO()
908 implementation (STR #1284)
909 - Fixed a performance issue with the scheduler's implicit
910 class implementation (STR #1283)
911 - The pdftops filter now adds the Title and Creator
912 fields from the PDF file to the PostScript document
913 comments section (STR #539, STR #830)
914 - Added a new cups_array_t and cupsArray*() functions to
915 the CUPS API to support sorted lists of data.
916 - Made the CUPS API library thread-safe (STR #1276)
917 - Added "media" option support for EFI EFMediaType option
918 (STR #902)
919 - Added write buffering to the HTTP code to improve
920 performance (STR #547)
921 - The scheduler now uses the attributes-natural-language
922 attribute to localize banner pages (STR #386)
923 - The scheduler now returns the address that was used to
924 connect to it (STR #1076)
925 - Fixed a problem with N-up printing and OpenOffice (STR
926 #576)
927 - Added support for the GCC position independent
928 executable options (STR #1209)
929 - Added new BrowseLocalProtocols and
930 BrowseRemoteProtocols directives to cupsd.conf,
931 allowing for different browse protocols for local and
932 remote printers (STR #877)
933 - PPD files can now contain strings up to 256k in length
934 (STR #1215)
935 - The pstops filter now supports the IncludeFeature DSC
936 comment (STR #1212)
937 - The pstops filter now disables the setpagedevice
938 procedure when doing N-up printing (STR #1161)
939 - The serial backend now supports "stop=1", "stop=2",
940 "parity=space", and "parity=mark" options (STR #1155)
941 - "make install" no longer overwrites an existing PAM
942 configuration file (STR #1064)
943 - The scheduler now closes all files on startup when run
944 in daemon mode (STR #1009)
945 - Added a new RGBW colorspace to the CUPS raster format
946 (STR #1071)
947 - The pdftops filter now sets the page size based on the
948 media box when not scaling the output (STR #912)
949 - The pdftops filter now supports masked images (STR
950 #281)
951 - The pdftops filter produced large output when rendering
952 PDF files containing lot of repeated images (STR #327)
953 - The pdftops filter now minimizes print processing of
954 PDF files when using the page-ranges option (STR #273)
955 - Updated pdftops filter to Xpdf 3.01.
956 - Added new cupsBackchannelRead() and
957 cupsBackchannelWrite() functions, as well as
958 backchannel support to the parallel, serial, socket,
959 and USB backends (STR #1252)
960 - The parallel and USB backends now treat a "no space
961 available" error as an out-of-paper condition (STR
962 #1225)
963 - The "lpc" command now supports the "status all" command
964 (STR #1004)
965 - ippReadIO() did not read collections properly (STR
966 #1249)
967 - The "make test" script now creates the test files in
968 "/tmp/cups-$USER" instead of "/tmp/$USER" (STR #981)
969 - All backends now abort on error when printing a job to
970 a class - this allows the next printer in the class to
971 print the job (STR #1084)
972 - The scheduler now verifies that a printer supports
973 Letter or A4 media sizes before setting them as the
974 initial default (STR #1250)
975 - The cupstestppd program now flags bad Resolution
976 options (STR #1269)
977 - The USB backend now retries printing when the printer
978 is disconnected or turned off (STR #1267)
979 - Added new httpGetHostname() function to CUPS API, and
980 use it instead of gethostname() so that the web
981 interface will work correctly on systems whose hostname
982 is not the FQDN (STR #1266)
983 - The scheduler now stops printers if the backend for the
984 queue is missing on startup (STR #1265)
985 - The configure script now supports "--disable-library"
986 to disable particular image file format support
987 libraries, even if they are available on the build
988 system (STR #1248)
989 - The IPP backend did not always report on the total
990 number of pages that were printed (STR #1251)
991 - The lpstat program could display garbage date and time
992 values for locales whose date format exceeded 31
993 characters (STR #1263)
994 - The cupstestppd program would segfault when testing
995 certain broken PPD files (STR #1268)
996 - Dramatically reduced the overhead of implicit classes.
997 - Added new cupsDir*() functions to CUPS API.
998 - Printers can now be published individually for sharing.
999 - Fixed a bug in the scheduler's startup signalling code
1000 which caused cupsd to send the SIGUSR1 signal to the
1001 init process instead of the original parent process
1002 (STR #1258)
1003 - Added new on-line help CGI to web interface to provide
1004 searchable help.
1005 - Devices are now tracked dynamically, with each query
1006 doing a new device scan. This eliminates a previous
1007 startup delay caused by slow backends and allows new
1008 printers to be seen without restarting the server,
1009 however it limits the amount of device URI checking
1010 that can be done (basically now the scheduler only
1011 requires a URI with a method that is a listed backend)
1012 - Added new printer auto-detection, server configuration,
1013 and log file viewing to the administration web page.
1014 - Added new "set allowed users" web interface to set the
1015 list of allowed users for a printer or class.
1016 - The scheduler, command-line, and web interfaces now
1017 limit the list of printers and classes to those
1018 accessible by a user.
1019 - cupsMarkOptions() now handles more non-standard
1020 duplexing options and choices (STR #915)
1021 - cups-lpd now honors remote banner requests with the
1022 "standard" banner whenever a printer does not have one
1023 defined (STR #1220)
1024 - The scheduler's denial-of-service checks did not work
1025 properly with IPv6 addresses (STR #1134)
1026 - The lp and lpr commands did not error out properly when
1027 they were unable to write to a temporary file (STR
1028 #1129)
1029 - The pstops filter did not handle Adobe-specific
1030 comments in Windows NT driver output (STR #1085)
1031 - "lpstat -l -p" incorrectly reported the printer
1032 interface (STR #936)
1033 - The web interface now operates exclusively with the
1034 UTF-8 encoding, and sends the appropriate character set
1035 and header information to the web browser (STR #919,
1036 STR #1007)
1037 - Added a "set allowed users" interface to the web
1038 interface so that you can set the list of allowed or
1039 denied users/groups for a printer or class.
1040 - Disallow the "#" character in printer names, since it
1041 has special meaning in the shell, config files, and in
1042 URIs (STR #917, STR #1202)
1043 - Added a new application/x-csource MIME type, and
1044 support for it to the texttops filter so that you can
1045 pretty print plain text files without the C/C++
1046 keywords being highlighted.
1047 - The pdftops filter did not compile with GCC 4.0 (STR
1048 #1226)
1049 - The texttops filter did not highlight preprocessor
1050 directives followed by a tab properly.
1051 - HP PJL output now uses both JOB DISPLAY and RDYMSG
1052 commands to show the current job on the printer's
1053 display (STR #1218)
1054 - Local authentication certificates are now stored in
1055 /var/run/cups/certs by default instead of
1056 /etc/cups/certs (STR #1211)
1057 - Backends now use "&" to separate options in device
1058 URIs; "+" is still recognized but is deprecated (STR
1059 #842)
1060 - The USB backend no longer supports the usb:/dev/foo
1061 format on systems that support device ID queries.
1062 - Forced classification markings did not work when the
1063 job-sheets parameters were "none,none".
1064 - "lpstat -l -p" incorrectly showed all users as allowed,
1065 even if the queue was restricted to certain users (STR
1066 #801)
1067 - The scheduler now automatically detects SSL/TLS clients
1068 without using the SSLPort/SSLListen directives.
1069 - The CUPS API and scheduler no longer support SSLv2-
1070 encrypted connections.
1071 - Updated the cupsaddsmb utility to correctly export the
1072 CUPS driver for Windows.
1073 - Fixed a signal-handling bug in httpRead() which
1074 ultimately caused the server to print multiple copies
1075 when it was busy (STR #1184)
1076 - The cupsFile API now uses the O_APPEND option when
1077 opening files in append mode (STR #990)
1078 - The md5.h header and md5_* functions are now officially
1079 private and have been renamed to avoid conflicts with
1080 other implementations with the same name.
1081 - The pdftops filter incorrectly embedded some Type1
1082 fonts (STR #1093)
1083 - The scheduler didn't detect a closed connection in the
1084 middle of an IPP request (STR #1153)
1085 - The scheduler could block trying to read the job status
1086 if there was input pending and the job was cancelled in
1087 the same input cycle (STR #1157)
1088 - The scheduler could crash when deleting a class due to
1089 infinite recursion.
1090 - Updated the Zebra ZPL label printer driver to use the
1091 run-length encoding and support more options.
1092 - Updated serial backend to scan for /dev/ttyC* as well
1093 as /dev/ttyc* for Cyclades serial ports (STR #1049)
1094 - The scheduler could hang reading the job status under
1095 certain circumstances (STR #1068)
1096 - The USB backend termination signal code was inverted
1097 (STR #1046)
1098 - Moved enable and disable commands to sbindir to be
1099 consistent.
1100 - Added new cupsRasterInterpretPPD() function for RIP
1101 filters to setup the raster page header from
1102 PostScript commands in a PPD file.
1103 - The CUPS browsing protocol now offers a "delete" bit
1104 to remove printers as soon as they are deleted on the
1105 server or as soon as the server shuts down gracefully
1106 (STR #793)
1107 - The CUPS_SERVER and ServerName directives (client.conf
1108 and ~/.cupsrc) may now contain names of the form
1109 "server:port" and "/path/to/domain/socket".
1110 - The "cancel -u user" command now works for ordinary
1111 users (STR #751)
1112 - Added test run support to "make test" target (STR #64)
1113 - Added domain socket support (STR #656)
1114 - Added BrowseLocalOptions directive to allow the
1115 administrator to add printer URI options to the browse
1116 URI, e.g. "encryption=required" (STR #732)
1117 - Added BrowseRemoteOptions directive to allow the
1118 administrator to add standard URI options to the
1119 remote printer URI, e.g. "encryption=required" (STR
1120 #732)
1121 - Now put "-I.." compiler option in front of all others
1122 to ensure that local CUPS headers are used before
1123 installed headers (STR #437)
1124 - New cupsLangPrintf() and cupsLangPuts() for localized
1125 interfaces.
1126 - Now support custom attributes and extended options in
1127 PPD files.
1128 - Now provide functions to save PPD files.
1129 - New policy mechanism allows per-operation and
1130 per-printer control over what users and groups are
1131 allowed to do various IPP operations.
1132 - New error policy mechanism to control how aborted
1133 backend errors are handled by the scheduler
1134 (abort-job, retry-job, requeue-job, stop-printer)
1135 - Updated the printer test page with a better color
1136 wheel and a separate grayscale ramp.
1137 - A single backend process is now run to send all print
1138 data for a job.
1139 - Backends and filters can now send and receive
1140 backchannel data over file descriptor 3.
1141 - Updated the raster stream format to support more
1142 user-defined attributes and to do compression of the
1143 page data.