30 Jul 2014CUPS 2.0b1
CUPS 2.0b1 is the first beta release of CUPS 2.0. The focus of this major release is mainly on performance and security improvements.
The CUPS library now provides a complete set of APIs for implementing HTTP and IPP services, and the scheduler uses those APIs to provide a modest code size reduction and corresponding improvement in performance. The scheduler is now also launched on demand on Linux, so for most users cupsd will only be running if something is being printed.
SSL/TLS support has been largely re-written to support certificate validation and policy enforcement, and on the server side we can now use different certificates depending on the hostname used. OpenSSL support has been dropped for a number of technical and security reasons.
IPP Everywhere support has been expanded to support long-edge feed printers and automatic retries using PWG Raster as needed. Finally, the ipptool utility has been updated with features needed to support IPP Everywhere printer self-certification.
We hope to release CUPS 2.0 in the coming months. Please let us know if you run into any issues with this beta release via the Bugs page at:
https://www.cups.org/str.php
Changes from CUPS 1.7.5 include:
- Added a “–list-filters” option to the cupsfilter command (Issue #4325)
- Added systemd support (Issue #3917)
- Added support for re-sending a job as a raster file if a higher-level format such as PDF fails (<rdar://problem/15583721>)
- Added support for regular expression matching in the MIME type rules (<rdar://problem/11131245>)
- Added support for TLS certificate validation and policy enforcement (Issue #1616)
- Added support for simultaneous XML and test output from ipptool.
- Added support for PAUSE directive in ipptool test files.
- Added support for auto-typing of TIFF files by ipptool (Issue #4418)
- The scheduler now returns completed jobs in the correct newest-to-oldest order (Issue #4396)
- The configure script now supports target-specific tools for pkg-config and others (Issue #4423)
- The ipptool program now supports EXPECT statements for collection member attributes (<rdar://problem/15355218>)
- The ipptool program now supports collection attributes with multiple values (<rdar://problem/15355124>)
- The sample drivers now include all of the installed localizations by default (<rdar://problem/14756625>)
- Adopted Linux man page conventions and updated all man pages (Issue #4372, Issue #4329)
- The scheduler now supports the “first-index” operation attribute for the Get-Jobs operation (Issue #2913)
- Changed the default AccessLogLevel and PageLogFormat to disable the access_log and page_log files by default (<rdar://problem/16495000>)
- cupsRasterInterpretPPD now supports the Orientation header in order to support long-edge feed raster printers (<rdar://problem/15837926>)
- The scheduler now allows run-as-root backends to have group read and execute permissions (Issue #2935)
- The ippFindAttribute and ippFindNextAttribute functions now support hierarchical searches (Issue #4395)
- Dropped OpenSSL support in favor of GNU TLS.
- Dropped “dark wake” support on OS X, which was preventing portables from going to sleep when there was a stuck job. We now use a variation of the CUPS 1.4 sleep support to do a cleaner sleep (<rdar://problem/14323704>)
- Dropped support for AIX, HP-UX, and OSF/1 (aka Digital UNIX)
- Dropped lppasswd and support for Digest authentication in in the scheduler (Issue #4321)
- The cupsGetClasses, cupsGetPrinters, and cupsTempFile functions are no longer supported.
- The scheduler now caches more job history data and limits the number of completed jobs returned by Get-Jobs as needed in order to prevent a denial-of-service on busy servers (Issue #2913)
- The filter/backend sandbox on OS X now defaults to a more strict whitelist (<rdar://problem/15939788>)
- Increased the default idle exit timeout to 60 seconds on OS X (<rdar://problem/16041820>)
- Printer classes were not accessible on OS X (<rdar://problem/16385643>)
- The scheduler now uses </DefaultPrinter> to close the default printer definition in printers.conf (Issue #4153)
- Canceling all jobs in the web interface now just cancels the jobs (Issue #1914)
Enjoy!