X-Git-Url: http://git.ipfire.org/?a=blobdiff_plain;ds=sidebyside;f=CHANGES.txt;h=410b57e124a7270d3b1c9d12aaa512e5c4a1120c;hb=75bd9771f6e44fdd887ee90faac46f403aefc0fc;hp=4dd18bf0c0b4585c9d7410d59b1fa103dad7ea39;hpb=b86bc4cf571c35972a94a634ea884baff9799fa9;p=thirdparty%2Fcups.git diff --git a/CHANGES.txt b/CHANGES.txt index 4dd18bf0c..410b57e12 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,1088 +1,118 @@ -CHANGES.txt - 2007-02-06 +CHANGES.txt - 2008-06-25 ------------------------ -CHANGES IN CUPS V1.2.8 +CHANGES IN CUPS V1.4b1 + + - The USB backend now uses libusb when available (STR #1575) + - Added ppdLocalizeAttr function to get the localized version + of an attribute. + - MIME types now support a priority() attribute (STR #2719) + - The standard MIME types are now installed in + DataDir/mime (STR #2719) + - The lpoptions command now describes custom options and + the necessary parameters (STR #2660) + - The ppdmerge program did not support Simplified Chinese + or Traditional Chinese language version strings (STR #2851) + - The PPD compiler now supports localizable attributes + (STR #2738) + - The ppdpo utility now includes cupsIPPReasons values in + the message catalogs it generates (STR #2754) + - The PPD compiler now supports conditional directives + (STR #2636) + - The ppdc utility now supports a "-t" option to test PPD + files (STR #2739) + - The ppdc utility now supports a "-m" option to use the + ModelName value as the output filename. + - The ppdc utility now supports a FileName directive to + set an alternate output filename (STR #2740) + - The side-channel API now supports SNMP queries for the + standard network backends. + - Added a PageLogFormat directive to the cupsd.conf file to + control the format of lines in the page_log file. + - Filters can now send PPD: messages to stderr to set PPD + keywords like DefaultPageSize while a job is printing. + - Added a mdns backend for discovery and printing to printers + that advertise themselves via DNS-SD (Bonjour) + - The ipp, lpd, and socket backends now support DNS-SD service + name resolution. + - The scheduler now uses a single shared file descriptor for + all DNS-SD registrations (STR #2674) + - The ipp, lpd, and socket backends now support SNMP-based + page accounting and supply level monitoring (STR #1655) + - Added support for cupsPJLDisplay attribute to control what + PJL commands are used to display the job information. + - Driver information files can now be installed in + /Library/Printers/PPDs.drv on Mac OS X. + - The CUPS image library now supports reading images larger + than 2GB. + - The scheduler now delays writing config and state files to + reduce disk activity (STR #2684) + - The CUPS-Get-Devices operation now supports the + exclude-schemes and timeout attributes to control which + backends are polled and for how long. + - The cups-deviced helper application now runs backends in + parallel to get the list of devices faster. + - Added --enable-pap configure option. + - The default cupsd.conf file now includes an "authenticated" + policy which requires authentication for remote print jobs. + - Added support for Czech and Hungarian in PPD files + (STR #2735, STR #2736) + - The PPD compiler tools now support Mac OS X .strings files + for localization (STR #2737) + - ppdOpen*() now default the colorspace member to PPD_CS_N + when no DefaultColorSpace attribute is present in the PPD + file. + - The build system has been updated to support separate + installation of data, program, header, and library files. + - All support libraries are now built as shared libraries + by default. + - The scheduler now manages ICC color profiles on Mac OS X. + - The network backends (ipp, lpd, socket) now support + SNMP-based supply and page count monitoring (STR #1655) + - The lppasswd program is no longer installed setuid to + root to make the default installation more secure. + - Added a new ppdLocalizeMarkerName() function to get + the localized version of a marker-names value. + - The scheduler now provides the printer-dns-sd-name + attribute for printers shared via DNS-SD/Bonjour. + - The pdftops filter now executes the Xpdf or poppler + pdftops utility to convert PDF files (STR #1471) + - Bonjour printer registrations now advertise as local or + global based on the current access policies for the + printer. + - cupsGetDests*() and cupsSetDests*() now track the last + used printer preference on Mac OS X. + - Added a new streaming request API (STR #2261) + - Added a new cupsGetNamedDest() function to the CUPS + library for faster printing with lp and lpr (STR #2638) + - The scheduler now sets the PAM RHOST value on systems + that support it (STR #2637) + - The scheduler now sandboxes child processes when + possible. + - The Cancel-Job operation now supports a purge-job + attriibute to purge a specified job. + - ppdEmit* and ppdCollect* now use the NonUIOrderDependency + attributes for custom option selections. + - The web interface now enables/disables the printer + sharing (formerly publishing) controls based on the + server-is-sharing-printers state (STR #2233) + - The scheduler now tracks printer sharing via the + server-is-sharing-printers attribute, and manages LPD + and SMB sharing as well (STR #2233) + - The web interface now allows you to go back to the make/ + manufacturer page if there is no matching printer driver + on the model page (STR #2436) + - The printer list now shows the default media, banner, and + duplex options as well as the color and duplex capabilities + of printers (STR #1175) + - The web interface look-n-feel has been updated (STR #2492) + - The scheduler now supports a CUPS-Get-Document operation + that returns the specified print job document (STR #118) + - The cupsfilter utility now supports a "-J jobid" option + to filter the document from the specified job. + - The scheduler (cupsd) now supports a new option (-t) to + do a syntax check of the cupsd.conf file (STR #2003) + - Added new cupsGetPPD3() API to allow applications to + cache PPDs safely (STR #1473) + - Added generic PostScript and PCL printer driver PPDs. - - Documentation fixes (STR #2141, STR #2157) - - The HTTP upgrade redirection used by the scheduler did - not work with Internet Explorer (STR #2235) - - Members of a class with Unicode names did not appear - correctly in the web interface (STR #2154) - - Changing the "Save debugging information" setting in - the web interface no longer affects the other server - settings (STR #1993) - - The scheduler did not choose SSL certificates correctly - on Mac OS X (STR #2225) - - The scheduler could get in an infinite loop when - printing to a remote class (STR #2228) - - The jobs web page did not have separating space after - the number of pages column (STR #2230) - - Added French localization (STR #2221) - - Updated Spanish localization (STR #2223) - - Updated Japanese localization (STR #2216) - - cupsBorderlessScalingFacter was limited to a range of - 0.9 to 1.1, but some printers need larger values (STR - #2222) - - Landscape printing of PDF files did not always work - (STR #2149) - - Fixed slow USB printing on Minolta printers (STR #2104, - STR #2219) - - The ZPL label printer driver could produce stretched - output (PR #6448) - - The IPP backend now clears the printer-state-message - when there are no outstanding errors or warnings (STR - #2126) - - The CUPS Java scripting support did not work with - recent versions of Java due to the use of Sun's private - Base64 class (STR #2152) - - The scheduler did not pass HTTP GET form variables to - custom CGI programs (STR #2173) - - The lpoptions command now displays the reason why a PPD - file cannot be found (STR #2184) - - The scheduler did not accept "none" as a browse - protocol name (STR #2200) - - The scheduler still loaded the remote printer cache, - even when browsing was disabled (STR #2198) - - The SNMP backend now shows OfficeJet printers with the - "HP" manufacturer prefix (STR #2151) - - Web interface HTML cleanup (STR #2153) - - The parallel backend consumed 100% CPU on FreeBSD due - to an apparently common parallel port driver bug (STR - #2161) - - ippReadIO() incorrectly returned IPP_IDLE when the - initial IPP message header could not be read (STR - #2179) - - cupsRasterInterpretPPD() did not support custom options - (STR #1960) - - Collated output produced by the PostScript filter could - lose some options (STR #2137) - - job-hold-until with time values for the next day would - be held for 60 days (STR #2144) - - Some types of Sun raster files did not print correctly - (STR #2107) - - Raw PBM files did not print correctly (STR #2106) - - The SNMP backend no longer uses IPP with HP printers, - as some recent firmware versions appear to not work - (STR #2055) - - cupsMarkOptions() did not handle the - multiple-document-handling option (STR #2135) - - lpstat did not show the local job ID of active printers - (STR #2125) - - The backends incorrectly used STATUS: - media-tray-empty-error messages for out-of-paper - conditions (STR #2123, STR #2124) - - cupsGetPPD2() returned the wrong error when the PPD - file did not exist (STR #2122) - - cupsDoAuthentication() did not translate the password - prompt (STR #2121) - - httpGetLength2() did not handle error messages without - content correctly (STR #2133) - - Added support for 32/64-bit libraries on HP-UX Itanium - systems (STR #2115) - - Fixed a configure script problem with the 32/64-bit - library support (STR #2114) - - The PostScript filter did not properly output document - setup commands for reversed output (STR #2111) - - The scheduler did not parse IPv6 netmasks properly (STR - #2117) - - -CHANGES IN CUPS V1.2.7 - - - Documentation updates (STR #2089) - - Added an Italian translation (STR #2105) - - The PostScript filter now rotates the bounding box - values as needed (STR #2079) - - The scheduler no longer loads the remote printer cache - when browsing is disabled (STR #2084) - - The scheduler no longer writes a new launchd - configuration file if it doesn't have to (STR #2083) - - Updated the USB and PAP backends for Mac OS X (STR - #2086) - - The scheduler now picks up on changes to IPv6 and DNS - configuration on Mac OS X (STR #2085) - - The lpstat program could still hang (STR #2098) - - Fixed an inefficiency in the SNMP IPP detection code - (STR #2100) - - The SSL negotiation code did not implement short - timeouts (STR #2091) - - -CHANGES IN CUPS V1.2.6 - - - The web interface was not localized on Mac OS X (STR - #2075) - - "lpc status" did not show the number of queued jobs for - disabled queues (STR #2069) - - The lpstat program could hang (STR #2073) - - The serial backend did not support the new USB serial - filenames on Linux (STR #2061) - - The parallel backend did not support bidirectional I/O - properly (STR #2056) - - The network backends now log the numeric address that - is being used (STR #2046) - - Fixed a compile error when using libpaper. - - Fixed a compile error when compiling on Solaris with - threading enabled (STR #2049, STR #2050) - - Missing printer-state-changed event for - printer-state-message updates (STR #2047) - - -CHANGES IN CUPS V1.2.5 - - - Documentation updates (STR #2038) - - The SNMP backend no longer uses IPP for Epson printers - (STR #2028) - - Updated the configure script for Tru64 UNIX 5.1 (STR - #2033) - - Tru64 5.1B's getaddrinfo() and getnameinfo() functions - leak file descriptors (STR #2034) - - cupsAddDest() didn't add the parent destination's - options and attributes. - - ppdConflicts() did not handle custom option - constraints. - - Raw printing of gzip'd files did not work (STR #2009) - - The scheduler no longer preserves default option - choices when the new PPD no longer provides the old - default choice (STR #1929) - - The Linux SCSI backend is now only built if the SCSI - development headers are installed. - - USB printing to Minolta printers did not work (STR - #2019) - - Windows clients could not monitor the queue status (STR - #2006) - - The scheduler didn't log the operation name in the - access_log file for Create-Job and Print-Job requests. - - The PostScript filter now separates collated copies - with any required JCL commands so that JCL-based - finishing options act on the individual copies and not - all of the copies as a single document. - - The PostScript filter now disables duplex printing when - printing a 1-page document. - - cups-lpd didn't pass the correct - job-originating-host-name value (STR #2023) - - Fixed some speling errors in the German message catalog - (STR #2012) - - cupstestppd did not catch PPD files with bad - UIConstraints values (STR #2016) - - The USB backend did not work with the current udev- - created printers if the first printer was disconnected - (STR #2017) - - Mirrored and rotated printing did not work with some - documents (STR #2004) - - 2-sided printing with banners did not work properly on - some printers (STR #2018) - - Updated the raw type rule to handle PJL within the - first 4k of a print job (STR #1969) - - Added an Estonian translation (STR #1957) - - Clarified the documentation for the cupsd.conf @LOCAL - and @IF(name) allow/deny functionality (STR #1992) - - The PostScript filters did not escape the Title and For - comments in the print job header (STR #1988) - - The scheduler would use 100% CPU if browsing was - disabled and the cupsd.conf file contained BrowsePoll - lines (STR #1994) - - The cupsDirRead() function did not work properly on - non-POSIX-compliant systems (STR #2001) - - The cupsFile functions didn't handle read/write errors - properly (STR #1996) - - The DBUS support now works with older versions of the - DBUS library. - - -CHANGES IN CUPS V1.2.4 - - - The --with-printcap configure option did not work (STR - #1984) - - The character set reported by cupsLangGet() did not - always reflect the default character set of a given - locale (STR #1983) - - Older Lexmark and Tektronix printers did not work with - IPP (STR #1980) - - Failsafe printing did not work (PR #6328) - - Some web interface redirects did not work (STR #1978) - - The web interface change settings button could - introduce a "Port 0" line in cupsd.conf if there was no - loopback connection available (STR #1979) - - The web interface change settings and edit - configuration file buttons would truncate the - cupsd.conf file (STR #1976) - - The German web interface used the wrong printer icon - images (STR #1973) - - The "All Documents" link in the on-line help was - missing a trailing slash (STR #1971) - - The Polish web interface translation used the wrong - URLs for the job history (STR #1963) - - The "reprint job" button did not work (STR #1956) - - The scheduler did not always report printer or job - events properly (STR #1955) - - The scheduler always stopped the queue on error, - regardless of the exit code, if the error policy was - set to "stop-printer" (STR #1959) - - ppdEmitJCL() included UTF-8 characters in the JCL job - name, which caused problems on some printers (STR - #1959) - - Fixed a buffering problem that cause high CPU usage - (STR #1968) - - The command-line applications did not convert - command-line strings to UTF-8 as needed (STR #1958) - - cupsDirRead() incorrectly aborted when reading a - symbolic link that pointed to a file/directory that did - not exist (STR #1953) - - The cupsInterpretRasterPPD() function did not handle - custom page sizes properly. - - -CHANGES IN CUPS V1.2.3 - - - The scheduler did not send job-state or - job-config-changed events when a job was held, - released, or changed (STR #1947) - - The scheduler now aborts if the configuration file and - directory checks fail (STR #1941) - - Fixed a problem with ippPort() not using the port - number that was set via the client.conf file or - CUPS_SERVER environment variable (STR #1945) - - HTTP headers were not buffered (STR #1899) - - Some IPP printers (HP) did not like UTF-8 job names - (STR #1837) - - The CUPS desktop icon is now localized for Polish (STR - #1920) - - Printer options were not always honored when printing - from Windows clients (STR #1839) - - The openssl command would lock up the scheduler when - generating an encryption certificate on some platforms - due to a lack of entropy for the random number - generator (STR #1876) - - The web admin page did not recognize that "Listen 631" - enabled remote access (STR #1908) - - The web admin page did not check whether changes were - made to the Basic Server Settings check boxes (STR - #1908) - - The IPP backend could generate N*N copies in certain - edge cases. - - The scheduler did not restore remote printers properly - when BrowseShortNames was enabled (STR #1893) - - Polling did not handle changes to the network - environment on Mac OS X (STR #1896) - - The "make test" subscription tests used invalid - notify-recipient-uri values (STR #1910) - - Printers could be left in an undefined state on system - sleep (STR #1905) - - The Berkeley and System V commands did not always use - the expected character set (STR #1915) - - Remote printing fixes (STR #1881) - - The cupstestppd utility did not validate translation - strings for custom options properly. - - Multi-language PPD files were not properly localized in - the web interface (STR #1913) - - The admin page's simple settings options did not check - for local domain socket or IPv6 addresses and did not - use "localhost" as the listen address. - - An empty BrowseProtocols, BrowseLocalProtocols, or - BrowseRemoteProtocols line would crash the scheduler - instead of disabling the corresponding browsing options. - - The scheduler now logs IPP operation status as debug - messages instead of info or error. - - cupsFileRewind() didn't clear the end-of-file state. - - cupstestppd didn't report the actual misspelling of the - 1284DeviceID attribute (STR #1849) - - BrowseRelay didn't work on Debian (STR #1887) - - configure --without-languages didn't work (STR #1879) - - Manually added remote printers did not work (STR #1881) - - The header was not installed. - - Updated the build files for Autoconf 2.60 (STR #1853) - - The scheduler incorrectly terminated the polling - processes after receiving a partial log line. - - The cups-lpd mini-daemon reported "No printer-state - attribute found" errors when reporting the queue status - (PR #6250, STR #1821) - - SNMP backend improvements (STR #1737, STR #1742, STR - #1790, STR #1835, STR #1880) - - The scheduler erroneously reported an error with the - CGI pipe (STR #1860) - - Fixed HP-UX compile problems (STR #1858, STR #1859) - - cupstestppd crashed with some PPD files (STR #1864) - - The and header files did not - work with C++. - - -CHANGES IN CUPS V1.2.2 - - - Documentation updates (STR #1765, STR #1780) - - CUPS didn't know about alternate character set names - for Asian text (STR #1819) - - The lpoptions -o and -r options did not work unless you - specified a printer. - - The lpoptions command incorrectly allowed users to set - printer attributes like printer-type (STR #1791) - - httpWait() did not flush the write buffer, causing "bad - request" errors when communicating with CUPS 1.1.x - servers (STR #1717) - - Polling did not sanitize the printer description, - location, or make and model strings like broadcasts - did. - - Polled printers did not show the server's default - job-sheets option value. - - The Samba password prompt was not properly localized - (STR #1814) - - Added a German translation (STR #1842) - - The scheduler now creates self-signed SSL certficates - automatically when using OpenSSL and CDSA for - encryption, just as for GNU TLS. - - The SNMP backend sporatically reported some printers as - "unknown" (STR #1774) - - The scheduler now forces BrowseTimeout to be at least - twice the BrowseInterval value and non-zero to avoid - common configuration errors. - - The scheduler incorrectly returned printer URIs of the - form "ipp://server/printers/classname" for classes (STR - #1813) - - Updated Japanese localization (STR #1805) - - The scheduler's SSL certificate/key directory was not - created on installation (STR #1788) - - Added a mailto.conf man page and help page (STR #1754) - - The parallel and USB backends no longer wait for the - printer to go on-line - this caused problems with - certain printers that don't follow with the IEEE-1284 - standard (STR #1738) - - The scheduler could crash on a reload when implicit - classes were present (STR #1828) - - The IPP backend incorrectly used the CUPS_ENCRYPTION - environment variable to determine the default - encryption mode when printing (STR #1820) - - USB printing did not work on Solaris (STR #1756) - - The scheduler sorted job priorities in the wrong order - (STR #1811) - - The scheduler did not automatically restart notifiers - that exited or crashed (STR #1793) - - IPv6 support did not work on NetBSD (STR #1834) - - The EPM packaging file did not work (STR #1804) - - The scheduler used up the CPU if BrowseRemoteProtocols - was empty (STR #1792) - - Custom page sizes did not work (STR #1787) - - The SNMP backend could crash on some systems when SNMP - logging was enabled (STR #1789) - - Browsing could produce some funny printer names when - ServerName was set to an IP address (STR #1799) - - Fixed the log message for BrowseRelay (STR #1798) - - Fixes to allow CUPS to compile on MirBSD (STR #1796) - - The scheduler incorrectly set the FINAL_CONTENT_TYPE - environment variable (STR #1795) - - The pdftops filter incorrectly embedded a "produced by" - comment, causing PDF printing not to work on some - operating systems (STR #1801) - - Sending raw jobs from a client system could cause the - client's scheduler to eventually crash (STR #1786) - - The scheduler now checks that the notifier exists prior - to accepting a new subscription request. - - The scheduler now reports the supported - notify-recipient schemes based on the contents of the - ServerBin/notifier directory. - - Event notifications did not include the - notify-sequence-number or other required attributes - (STR #1747) - - Allow/Deny addresses of the form "11.22.33.*" did not - work on Linux (STR #1769) - - cupsGetPPD() did not work if the scheduler was only - listening on a domain socket (STR #1766) - - The scheduler could crash advertising a class (STR - #1768) - - The scheduler could crash if the default printer was - deleted (STR #1776) - - Added a new default CUPS raster format (v3) which does - not compress the raster stream in order to provide the - same cupsRasterReadPixels() and cupsRasterWritePixels() - performance as CUPS 1.1.x. - - The cupsaddsmb man page listed the wrong files for the - CUPS driver. - - Some configure --with options did not work (STR #1746) - - "Allow @IF(name)" didn't work if "name" wasn't the - first network interface (STR #1758) - - The lpstat command did not use the correct character - set when reporting the date and time (STR #1751) - - The cupsaddsmb command and web interface did not update - the Windows PPD files properly, resulting in corrupt - PPD files for the Windows client to use (STR #1750) - - The cupsd.conf man page didn't describe the Listen - domain socket syntax (STR #1753) - - The scheduler no longer tries to support more than - FD_SETSIZE file descriptors. - - CDSA (encryption) support fixes for MacOS X. - - The lppasswd program needs to be setuid to root to - create and update the /etc/cups/passwd.md5 file (STR - #1735) - - 32/64-bit library installation was broken (STR #1741) - - The USB backend now reports a "no such device" error - when using the old filename-based USB URIs instead of - the "success" error. - - Increased the HTTP and IPP read timeouts to 10 seconds, - as 1 second was too short on congested networks (STR - #1719) - - The SNMP backend now uses the device description over - the printer-make-and-model attribute when the attribute - contains a generic name (STR #1728) - - Fixed another file descriptor leak when printing raw - files (STR #1736) - - Raw queues were not shared via LDAP (STR #1739) - - The pstops filter didn't always embed PageSetup - commands from the PPD file (STR #1740) - - "make install" didn't work if you disabled all of the - localizations. - - The scheduler didn't always choose the least costly - filter. - - Fixed parsing of IPv6 addresses in Allow, Deny, - BrowseAllow, BrowseDeny, and BrowseRelay directives - (STR #1713) - - Printers that were shared via LDAP did not get added to - the LDAP server properly (STR #1733) - - LDAP browsing would crash the scheduler if a required - value was missing (STR #1731) - - Special cases for the "localhost" hostname did not - work, causing printing to not work when the /etc/hosts - file did not contain a localhost entry (STR #1723) - - Updated the Spanish translation (STR #1720, STR #1770) - - Reverse-order page output was broken when N-up or - landscape orientations were used (STR #1725) - - The parallel, serial, socket, and USB backends needed - print data before they would report back-channel data, - causing problems with several new drivers (STR #1724) - - -CHANGES IN CUPS V1.2.1 - - - "lprm -h hostname" did not work (STR #1800) - - The web interface did not handle reloads properly for - MSIE (STR #1716) - - The configure script no longer adds linker rpath - options when they are unnecessary. - - The scheduler could crash printing a debug message on - Solaris (STR #1714) - - The --enable-32bit and --enable-64bit configure options - did not always work. - - The password prompt showed the domain socket address - instead of "localhost" for local authentication (STR - #1706) - - The web interface filtered the list of printers even if - the user wasn't logged in (STR #1700) - - The IPP backend did not work reliably with some Xerox - printers (STR #1704) - - Trailing banners were not added when printing a single - file (STR #1698) - - The web interface support programs crashed on Solaris - (STR #1699) - - cupstestppd incorrectly reported problems with - *1284DeviceID attributes (STR #1710) - - Browsing could get disabled after a restart (STR #1670) - - Custom page sizes were not parsed properly (STR #1709) - - The -U option wasn't supported by lpadmin (STR #1702) - - The -u option didn't work with lpadmin (STR #1703) - - The scheduler did not create non-blocking back-channel - pipes, which caused problems when the printer driver - did not read the back-channel data (STR #1705) - - The scheduler no longer uses chunking in responses to - clients - this caused problems with older versions of - CUPS like 1.1.17 (PR #6143) - - Automatic raw printing was broken (STR #1667) - - 6-up printing was broken (STR #1697) - - The pstops filter did not disable CTRL-D processing on - the printer/RIP. - - ppdOpen*() did not load custom options properly (STR - #1680) - - "Set Printer Options" in the web interface did not - update the DefaultImageableArea or - DefaultPaperDimension attributes in the PPD file (STR - #1689) - - Fixed compile errors (STR #1682, STR #1684, STR #1685, - STR #1690) - - The lpstat command displayed the wrong error message - for a missing destination (STR #1683) - - Revised and completed the Polish translation (STR - #1669) - - Stopped jobs did not show up in the list of active jobs - (STR #1676) - - The configure script did not use the GNU TLS - "libgnutls-config" script to find the proper compiler - and linker options. - - The imagetoraster filter did not correctly generate - several 1, 2, and 4-bit color modes. - - cupsRasterWritePixels() could lose track of the current - output row. - - cupsRasterReadPixels() did not automatically swap - 12/16-bit chunked pixel data. - - Moved the private _cups_raster_s structure out of the - public header. - - Updated the CUPS raster format specification to include - encoding rules and colorspace definitions. - - The Zebra PPD files had the wrong PostScript code for - the "default" option choices. - - The imagetoraster filter did not generate correct CIE - XYZ or Lab color data. - - The cups-config script did not work when invoked from a - source directory (STR #1673) - - The SNMP backend did not compile on systems that used - the getifaddrs emulation functions (STR #1668) - - -CHANGES IN CUPS V1.2.0 - - - Documentation updates (STR #1618, STR #1620, STR #1622, - STR #1637) - - Static file copy buffers reduced from 64k to 32k to - work around bogus MallocDebug library assumptions (STR - #1660) - - The scheduler did not decode the backend exit code - properly (STR #1648) - - The MacOS X USB backend did not report the 1284 device ID, - nor did it fix device IDs returned by HP printers. - - The scheduler started more slowly than 1.1.x with large - numbers of printers (STR #1653) - - cupsRasterInterpretPPD() didn't support the - cupsPreferredBitsPerColor attribute, and imagetoraster - didn't use the new API. - - The "make test" script did not create all of the necessary - subdirectories for testing (STR #1638) - - The scheduler did not prevent rotation of logs - redirected to /dev/null (STR #1651) - - "make test" did not include the SNMP backend in the - test environment (STR #1625) - - The EPM packaging files did not work (STR #1621) - - "Use Default Configuration" inserted a broken - configuration file (STR #1624) - - Redirects in the web interface did not always preserve - the encrypted status of a connection (STR #1603) - - Added the Apple "pap" backend. - - Added CUPS library to CUPS Image shared library - linkage to support Linux --as-needed linker option - (STR #1606) - - Fixed support for --enable-pie (STR #1609) - - The pdftops filter did not validate the length of the - encryption key (STR #1608) - - Updated the Polish localization. - - "Encryption Required" in the cupsd.conf file now only - requires encryption when the connection is not over the - loopback interface or domain socket. - - Printer names containing "+" were not quoted properly in - the web interface (STR #1600) - - The SNMP backend now reports the make and model in the - information string so that the auto-generated printer - name is more useful than just an IP address. - - -CHANGES IN CUPS V1.2rc3 - - - The cups-lpd program always did reverse lookups on the - client address, which could be a performance problem. - Added a "-n" option to disable lookups. - - When configured with SSL support, require encryption by - default when displaying the /admin location (STR #1592) - - The next job ID was not computed correctly if the job - cache file got out of sync with the spool directory - (STR #1582) - - The PNG image handling code used deprecated functions - from libpng (STR #1587) - - Added a Polish translation (STR #1584, STR #1586) - - More changes to the scheduler to improve battery life - on portable devices (STR #1583) - - Changed the default log level for status messages back - to "DEBUG" to be consistent with CUPS 1.1.x (STR #1579) - - The error string was not set properly when - cupsDoFileRequest() was given the name of a directory - (STR #1578) - - Fixed handling of job-hold-until (STR #1581) - - Added explicit notes to the cupsaddsmb man page - explaining that the driver filenames are case-sensitive - under UNIX and that they must be all lowercase (Windows - 2000) or all UPPERCASE (Windows 95/98/Me) to work (STR - #1568) - - The USB backend incorrectly split the manufacturer name - if it contained spaces (STR #1566) - - The scheduler would hang when listing PPD files for a - manufacturer whose name contained spaces (STR #1567) - - Added the SNMP backend for network printer discovery - (STR #1555) - - cupstestppd now fails PPD files with 1284DeviceId - instead of 1284DeviceID, and cups-driverd uses a - case-insensitive comparison when looking for it (STR - #1573) - - cupsDoFileRequest() and cupsDoRequest() now work - properly with non-blocking HTTP connections. - - Added Swedish translation (STR #1569) - - "make install" now installs the MIME files with world - read permissions (STR #1565) - - More CDSA encryption support fixes (STR #1563) - - Updated the default mime.types file to support printing - of files that do not have a locally-recognized MIME - media type to raw or System V queues. - - Updated the serial port detection code on Linux (STR - #1562) - - Added some more error checking to httpGetHostname() - (STR #1561) - - The title of some administration pages was not - localized (STR #1548) - - The edit-config.tmpl file was not generated or - installed for the Spanish or Japanese localizations - (STR #1547) - - The mimeDelete() function freed the types before the - filters, but the filters needed the type data (STR #1558) - - The scheduler didn't keep track of the status pipes - properly, leading to a bad select() for multi-file jobs - (STR #1559) - - The cupstestdsc program didn't validate the ordinal - page number value for %%Page: comments. - - -CHANGES IN CUPS V1.2rc2 - - - The scheduler was not always using the string pool, - causing random crashes. - - The lpmove and the web interface's Move Job button did - not work with stopped jobs (STR #1534) - - The PostScript filter did not handle the page-set - option properly with number-up printing (STR #1543) - - The scheduler now only warns about unsupported ACLs - once (STR #1532) - - The "fitplot" option did not work with output from - Mozilla (STR #1542) - - The imagetops filter did not work with Level 2 or 3 - printers (STR #1533) - - The scheduler now recognizes PostScript files with PJL - commands that do not include an ENTER LANGUAGE command. - - Added --with-printcap configure option. - - 64-bit SSL fixes for MacOS X. - - The scheduler didn't send some printer state change - events. - - The scheduler didn't send jobs to busy remote printers. - - Fixed some problems with the launchd support. - - Added new USB printer backend for MacOS X. - - The PostScript filter now handles files that start with - an incomplete PJL header (PR #6076) - - The web interface language selection code did not try - the generic language localization (STR #1531) - - The language cache, string pool, and transcoding caches - are now process global instead of per-thread to avoid - problems with GNOME and to allow for data sharing - between threads (STR #1530) - - Fixed a CUPS 1.1.x compatibility bug (STR #1528) - - The web interface redirection after certain printer - administration tasks was broken (STR #1516) - - Web interface authorization could get stuck (STR #1512) - - Localization updates (STR #1513, STR #1518, STR #1520) - - The pstops filter didn't work with some files (STR - #1523) - - "./configure --enable-static" didn't work (STR #1522) - - The scheduler was not using the configured default - Group (STR #1521) - - The web interface still did not show the localized time - and date for some locales and systems (STR #1509) - - httpAddrGetList() would crash on systems without - getaddrinfo(). - - Socket URIs without a trailing slash would cause the - port number to not be accepted (STR #1519) - - Local raw and System V printers were not advertised as - such for printer browsing (STR #1502) - - The RPM spec file incorrectly put duplicate copies of - the Japanese and Spanish web interface templates in the - main cups package (STR #1517) - - cupsSetDests() did not explicitly set the permissions - of the /etc/cups/lpoptions file (STR #1508) - - The lpq command crashed with the -h option (STR #1515) - - -CHANGES IN CUPS V1.2rc1 - - - Documentation updates (STR #1497, STR #1498) - - The scheduler now redirects browsers to https: URLs - when encryption is required. - - The scheduler would crash when printing with a banner - (STR #1500) - - cups-driverd did not use the LanguageEncoding attribute - in PPD files to convert the NickName to UTF-8 (STR - #1503) - - The lpadmin command could not set the - printer-error-policy attribute (STR #1504) - - The web interface did not show the time and date in the - correct format for the locale (STR #1505) - - CUPS no longer accepts print jobs if a printer does not - support the file format (STR #1501) - - Cleaned up the PostScript filter (pstops) so that it - properly supports %%IncludeFeature and page scaling - (STR #1453) - - Fixed the cupsFileRewind() and cupsFileSeek() functions - to work properly with uncompressed files. - - Added cupsFileGetLine(), cupsFileStderr(), - cupsFileStdin(), and cupsFileStdout() functions to the - CUPS library. - - Added a new cupstestdsc program to test the DSC - conformance of PostScript files. - - Added KDE/GNOME icons and a Manage Printers menu item. - - Added --enable-image and --enable-pdftops configure - options to control whether the image and PDF filters - are built and installed (default = yes for all - platforms but MacOS X) - - Fixed a minor memory leak in the PPD API. - - Fixed transcoding issues (STR #1493) - - The scheduler now enforces a minimum job cost of 100 - when doing FilterLimit checks. - - The scheduler would leak file descriptors when printing - to raw queues (STR #1491) - - The IPv6 support did not compile on Tru64 UNIX (STR - #1488) - - ppdOpen2() now converts the NickName and all UI text to - UTF-8 (STR #1475) - - The Set Allowed Users web page did not work (STR #1486) - - When the default policy was not set or set to a non- - existing policy, the scheduler did not set the default - policy name to "default" (STR #1484) - - The Zebra CPCL driver did not use the correct righthand - margin for the 4" wide label sizes. - - Fixed a problem with the parsing of fractional real - numbers in PPD files. - - Added Spanish localization files (STR #1480) - - Fixed localization of a few scheduler messages (STR - #1478) - - Fixed support for HEAD requests in the scheduler (STR - #1481) - - -CHANGES IN CUPS V1.2b2 - - - Updated the CUPS design description. - - Added --enable-32bit and --enable-64bit configure - options to allow building of separate 32/64-bit - libraries on systems that support both environments - (STR #1472) - - Various compiler warning fixes. - - Fixes for Solaris 10 builds against old GNU TLS and - LDAP libraries. - - Added a cupsArrayUserData() function to retrieve the - user data pointer for an array (useful for typing - arrays) - - The ppdEmitString() function did not compute the - required buffer size properly, leading to dropped - characters on the end of the printer commands in pstops - and imagetops (STR #1470) - - -CHANGES IN CUPS V1.2b1 - - - The serial backend now supports Equinox 8-port serial - hubs (STR #526) - - The IPP backend now supports a compression option to - compress print files as they are sent to the remote - server (STR #956) - - The CUPS browse protocol now supports passing of - default options and browse timeout values from the - server to the clients (STR #800) - - Implicit classes that timed out could cause the - scheduler to crash (STR #1439) - - Added DragonFly support in local device backends (STR - #1362) - - Added LDAP printer browsing support (STR #338) - - Added official support for printer maintenance commands - via the CUPS Command file format and hooks in the - printer-type and web interfaces (STR #932) - - The HP-GL/2 filter could get in an infinite loop trying - to convert HP-PCL files (STR #1415) - - CUPS now implements the HTTP/1.1 Expect header (STR - #1407) - - Options in PPD files are no longer automatically put in - an "Extra" group; rather, all options that are not - inside an Open/CloseGroup will be placed in the - "General" group (STR #1385) - - The scheduler now creates a job-uuid attribute that - uniquely identifies a job on a network (STR #1410) - - The init script now unsets the TMPDIR environment - variable to prevent user temporary directories from - being used by cupsd accidentally (STR #1424) - - Added support for launchd on MacOS X. - - Added support for notify_post on MacOS X. - - Added support for DBUS on Linux. - - All of the Berkeley (except for lpc) and System V - commands now support specification of user, host, and - port (STR #1028, STR #1029, STR #1087) - - The lpmove command now allows you to move all jobs for - a given queue (STR #56) - - The web interface now supports moving of a job or jobs - to another queue (STR #56) - - The web interface now provides searching, paging, and - changing of the sort/display order of classes, jobs, - and printers. - - cupsaddsmb now accepts a password on the command-line - and supports passwords with special characters (STR - #822, STR #1236) - - ppdLoad*() no longer tries to "fix" bad characters in - UI text (STR #1101) - - Printer names can now (reliably) contain Unicode - characters (STR #896) - - The lpstat command now shows the time and date of the - last printer state change instead of the hardcoded "Jan - 01 00:00" (STR #659) - - The scheduler now adds a job-actual-printer-uri - attribute to job objects when printing to a class (STR - #116) - - The scheduler now logs log file open errors to the - system log (STR #1289) - - The scheduler now sets the job-originating-user-name to - the authenticated username, if available (STR #1318) - - The scheduler now only updates the permissions of SSL - keys and certificates when they are under the - ServerRoot directory (STR #1324) - - The rastertodymo driver has been renamed to - rastertolabel (a symlink is installed so that existing - queues continue to work) and now also supports Zebra's - CPCL language. - - The lpstat command could show the wrong active job for - a printer (STR #1301) - - Fixed a potential crash problem in the scheduler when - aborting a CGI program (STR #1290) - - Added a "cancel all jobs" button to the class and - printer web interfaces (STR #1140) - - The add-printer web page now shows the - set-printer-options page after the printer has been - added (STR #690) - - The classes web page now provides links to each of the - member printers (STR #307) - - CUPS now handles HTTP request/response lines up to 32k - in length; this is mainly for better cookie support - (STR #1274) - - Added support for the Apache PassEnv and SetEnv - directives to cupsd.conf (STR #853) - - Added large file (64-bit) support (STR #541) - - Fixed a performance issue with the ippReadIO() - implementation (STR #1284) - - Fixed a performance issue with the scheduler's implicit - class implementation (STR #1283) - - The pdftops filter now adds the Title and Creator - fields from the PDF file to the PostScript document - comments section (STR #539, STR #830) - - Added a new cups_array_t and cupsArray*() functions to - the CUPS API to support sorted lists of data. - - Made the CUPS API library thread-safe (STR #1276) - - Added "media" option support for EFI EFMediaType option - (STR #902) - - Added write buffering to the HTTP code to improve - performance (STR #547) - - The scheduler now uses the attributes-natural-language - attribute to localize banner pages (STR #386) - - The scheduler now returns the address that was used to - connect to it (STR #1076) - - Fixed a problem with N-up printing and OpenOffice (STR - #576) - - Added support for the GCC position independent - executable options (STR #1209) - - Added new BrowseLocalProtocols and - BrowseRemoteProtocols directives to cupsd.conf, - allowing for different browse protocols for local and - remote printers (STR #877) - - PPD files can now contain strings up to 256k in length - (STR #1215) - - The pstops filter now supports the IncludeFeature DSC - comment (STR #1212) - - The pstops filter now disables the setpagedevice - procedure when doing N-up printing (STR #1161) - - The serial backend now supports "stop=1", "stop=2", - "parity=space", and "parity=mark" options (STR #1155) - - "make install" no longer overwrites an existing PAM - configuration file (STR #1064) - - The scheduler now closes all files on startup when run - in daemon mode (STR #1009) - - Added a new RGBW colorspace to the CUPS raster format - (STR #1071) - - The pdftops filter now sets the page size based on the - media box when not scaling the output (STR #912) - - The pdftops filter now supports masked images (STR - #281) - - The pdftops filter produced large output when rendering - PDF files containing lot of repeated images (STR #327) - - The pdftops filter now minimizes print processing of - PDF files when using the page-ranges option (STR #273) - - Updated pdftops filter to Xpdf 3.01. - - Added new cupsBackchannelRead() and - cupsBackchannelWrite() functions, as well as - backchannel support to the parallel, serial, socket, - and USB backends (STR #1252) - - The parallel and USB backends now treat a "no space - available" error as an out-of-paper condition (STR - #1225) - - The "lpc" command now supports the "status all" command - (STR #1004) - - ippReadIO() did not read collections properly (STR - #1249) - - The "make test" script now creates the test files in - "/tmp/cups-$USER" instead of "/tmp/$USER" (STR #981) - - All backends now abort on error when printing a job to - a class - this allows the next printer in the class to - print the job (STR #1084) - - The scheduler now verifies that a printer supports - Letter or A4 media sizes before setting them as the - initial default (STR #1250) - - The cupstestppd program now flags bad Resolution - options (STR #1269) - - The USB backend now retries printing when the printer - is disconnected or turned off (STR #1267) - - Added new httpGetHostname() function to CUPS API, and - use it instead of gethostname() so that the web - interface will work correctly on systems whose hostname - is not the FQDN (STR #1266) - - The scheduler now stops printers if the backend for the - queue is missing on startup (STR #1265) - - The configure script now supports "--disable-library" - to disable particular image file format support - libraries, even if they are available on the build - system (STR #1248) - - The IPP backend did not always report on the total - number of pages that were printed (STR #1251) - - The lpstat program could display garbage date and time - values for locales whose date format exceeded 31 - characters (STR #1263) - - The cupstestppd program would segfault when testing - certain broken PPD files (STR #1268) - - Dramatically reduced the overhead of implicit classes. - - Added new cupsDir*() functions to CUPS API. - - Printers can now be published individually for sharing. - - Fixed a bug in the scheduler's startup signalling code - which caused cupsd to send the SIGUSR1 signal to the - init process instead of the original parent process - (STR #1258) - - Added new on-line help CGI to web interface to provide - searchable help. - - Devices are now tracked dynamically, with each query - doing a new device scan. This eliminates a previous - startup delay caused by slow backends and allows new - printers to be seen without restarting the server, - however it limits the amount of device URI checking - that can be done (basically now the scheduler only - requires a URI with a method that is a listed backend) - - Added new printer auto-detection, server configuration, - and log file viewing to the administration web page. - - Added new "set allowed users" web interface to set the - list of allowed users for a printer or class. - - The scheduler, command-line, and web interfaces now - limit the list of printers and classes to those - accessible by a user. - - cupsMarkOptions() now handles more non-standard - duplexing options and choices (STR #915) - - cups-lpd now honors remote banner requests with the - "standard" banner whenever a printer does not have one - defined (STR #1220) - - The scheduler's denial-of-service checks did not work - properly with IPv6 addresses (STR #1134) - - The lp and lpr commands did not error out properly when - they were unable to write to a temporary file (STR - #1129) - - The pstops filter did not handle Adobe-specific - comments in Windows NT driver output (STR #1085) - - "lpstat -l -p" incorrectly reported the printer - interface (STR #936) - - The web interface now operates exclusively with the - UTF-8 encoding, and sends the appropriate character set - and header information to the web browser (STR #919, - STR #1007) - - Added a "set allowed users" interface to the web - interface so that you can set the list of allowed or - denied users/groups for a printer or class. - - Disallow the "#" character in printer names, since it - has special meaning in the shell, config files, and in - URIs (STR #917, STR #1202) - - Added a new application/x-csource MIME type, and - support for it to the texttops filter so that you can - pretty print plain text files without the C/C++ - keywords being highlighted. - - The pdftops filter did not compile with GCC 4.0 (STR - #1226) - - The texttops filter did not highlight preprocessor - directives followed by a tab properly. - - HP PJL output now uses both JOB DISPLAY and RDYMSG - commands to show the current job on the printer's - display (STR #1218) - - Local authentication certificates are now stored in - /var/run/cups/certs by default instead of - /etc/cups/certs (STR #1211) - - Backends now use "&" to separate options in device - URIs; "+" is still recognized but is deprecated (STR - #842) - - The USB backend no longer supports the usb:/dev/foo - format on systems that support device ID queries. - - Forced classification markings did not work when the - job-sheets parameters were "none,none". - - "lpstat -l -p" incorrectly showed all users as allowed, - even if the queue was restricted to certain users (STR - #801) - - The scheduler now automatically detects SSL/TLS clients - without using the SSLPort/SSLListen directives. - - The CUPS API and scheduler no longer support SSLv2- - encrypted connections. - - Updated the cupsaddsmb utility to correctly export the - CUPS driver for Windows. - - Fixed a signal-handling bug in httpRead() which - ultimately caused the server to print multiple copies - when it was busy (STR #1184) - - The cupsFile API now uses the O_APPEND option when - opening files in append mode (STR #990) - - The md5.h header and md5_* functions are now officially - private and have been renamed to avoid conflicts with - other implementations with the same name. - - The pdftops filter incorrectly embedded some Type1 - fonts (STR #1093) - - The scheduler didn't detect a closed connection in the - middle of an IPP request (STR #1153) - - The scheduler could block trying to read the job status - if there was input pending and the job was cancelled in - the same input cycle (STR #1157) - - The scheduler could crash when deleting a class due to - infinite recursion. - - Updated the Zebra ZPL label printer driver to use the - run-length encoding and support more options. - - Updated serial backend to scan for /dev/ttyC* as well - as /dev/ttyc* for Cyclades serial ports (STR #1049) - - The scheduler could hang reading the job status under - certain circumstances (STR #1068) - - The USB backend termination signal code was inverted - (STR #1046) - - Moved enable and disable commands to sbindir to be - consistent. - - Added new cupsRasterInterpretPPD() function for RIP - filters to setup the raster page header from - PostScript commands in a PPD file. - - The CUPS browsing protocol now offers a "delete" bit - to remove printers as soon as they are deleted on the - server or as soon as the server shuts down gracefully - (STR #793) - - The CUPS_SERVER and ServerName directives (client.conf - and ~/.cupsrc) may now contain names of the form - "server:port" and "/path/to/domain/socket". - - The "cancel -u user" command now works for ordinary - users (STR #751) - - Added test run support to "make test" target (STR #64) - - Added domain socket support (STR #656) - - Added BrowseLocalOptions directive to allow the - administrator to add printer URI options to the browse - URI, e.g. "encryption=required" (STR #732) - - Added BrowseRemoteOptions directive to allow the - administrator to add standard URI options to the - remote printer URI, e.g. "encryption=required" (STR - #732) - - Now put "-I.." compiler option in front of all others - to ensure that local CUPS headers are used before - installed headers (STR #437) - - New cupsLangPrintf() and cupsLangPuts() for localized - interfaces. - - Now support custom attributes and extended options in - PPD files. - - Now provide functions to save PPD files. - - New policy mechanism allows per-operation and - per-printer control over what users and groups are - allowed to do various IPP operations. - - New error policy mechanism to control how aborted - backend errors are handled by the scheduler - (abort-job, retry-job, requeue-job, stop-printer) - - Updated the printer test page with a better color - wheel and a separate grayscale ramp. - - A single backend process is now run to send all print - data for a job. - - Backends and filters can now send and receive - backchannel data over file descriptor 3. - - Updated the raster stream format to support more - user-defined attributes and to do compression of the - page data.