From Fedora Project Wiki

CUPS 1.6

Summary

Update CUPS to the latest upstream release and use PDF rather than PostScript as baseline document format.

Owner

Current status

  • Targeted release: Fedora 19
  • Last updated: 2013-05-09
  • Percentage of completion: 100%

Detailed Description

CUPS 1.6 was released in July 2012 and has brought several important changes

  • Merged Fedora's patch for color management using colord
  • Merged Fedora's patch for mDNS/DNS-SD support using Avahi
  • Removed support for CUPS Browsing and Polling
    • Upstream rationale: The CUPS Browsing protocol is currently the primary mechanism for CUPS-to-CUPS printer queue discovery on Linux. It works by having each CUPS server periodically broadcast UDP packets on port 631 announcing its available queues, and listening for broadcasts from other CUPS servers. CUPS Browsing protocol has no longer been meeting the requirements of current networking technologies, and in fact has had some bad effects on wireless networks due to the use of UDP broadcasts. Rather than trying to address these issues by introducing a new and incompatible update to the protocol, the existing mDNS/DNS-SD standards can serve as a ready replacement and actually has been used in CUPS for many years now.
    • However, Fedora will need a way to use and provide CUPS Browsing and BrowsePoll features for those sites that cannot use mDNS/DNS-SD and to assist in migration.
  • All filters and backends not used by Mac OS X have been dropped
    • These filters and backends, together with the filters for the PDF printing workflow are now hosted as the cups-filters project at linuxfoundation.org.

PDF printing workflow

  • Currently CUPS uses PostScript as the common format for manipulating print jobs. We want to switch the standard print job transfer format from PostScript to PDF, which has many important advantages.
  • Additional filters for the PDF printing workflow have been added to the cups-filters project.

Benefit to Fedora

  • Fedora stays in sync with upstream.
  • Using PDF as standard print job format could lead to faster printing (as newer printers understand PDF natively) and more reliable page manipulation. PDF format allows for easier post-processing, newer features like transparency and high bit-depth color, and a simpler printing pipeline.
  • Continued compatibility with systems running older versions of CUPS.

Scope

  • update to cups-1.6.x (100% DONE)
  • package cups-filters (100% DONE, review)
  • package qpdf (100% DONE, review)
  • Avahi by Default on the Desktop (100% DONE)
    • Automatic CUPS queue discovery will require Avahi to be running on both the server (i.e. the system hosting the CUPS queue) and the clients (i.e. the systems wanting to print to it).
  • Add back CUPS Browsing and/or Polling capabilities to provide compatibility with systems running older versions of CUPS (100% DONE)
    • added to cups-browsed daemon (cups-filters-1.0.30)
  • Print dialog needs to support Bonjour broadcasting of remote printers (patch under review upstream)

How To Test

Test cases:

User Experience

Users will enjoy more reliable page manipulation.

Dependencies

Contingency Plan

If this feature is not ready by the deadline, revert back to cups-1.5.4.

Documentation

  • CUPS 1.6b1 release notes
  • PDF as Standard Print Job Format
  • Tim's post to fedora-devel mailing list
  • Tim's article about CUPS 1.6 changes ahead
  • Novell/SUSE bug tracking reasons for NOT updating to CUPS 1.6
  • article about CUPS 1.6 on lwn.net

Release Notes

  • Fedora 19 includes the latest version of the CUPS 1.6. The common format for manipulating print jobs is now PDF instead of PostScript.

Comments and Discussion