From Fedora Project Wiki
(100%)
 
(16 intermediate revisions by 3 users not shown)
Line 2: Line 2:


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


== Owner ==
== Owner ==
Line 12: Line 12:
== Current status ==
== Current status ==
* Targeted release: [[Releases/19 | Fedora 19 ]]  
* Targeted release: [[Releases/19 | Fedora 19 ]]  
* Last updated: 2013-01-28
* Last updated: 2013-05-09
* Percentage of completion: 75%
* Percentage of completion: 100%


== Detailed Description ==
== Detailed Description ==
<!-- Expand on the summary, if appropriate.  A couple sentences suffices to explain the goal, but the more details you can provide the better. -->
<!-- Expand on the summary, if appropriate.  A couple sentences suffices to explain the goal, but the more details you can provide the better. -->


CUPS 1.6 was released in July 2012 and has brought several important features
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 color management using colord
* Merged Fedora's patch for mDNS/DNS-SD support using Avahi
* Merged Fedora's patch for mDNS/DNS-SD support using Avahi
* Removed support for CUPS Browsing and Polling
* Removed support for CUPS Browsing and Polling
** 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.
** 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
* 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 [http://bzr.linuxfoundation.org/loggerhead/openprinting/cups-filters/changes linuxfoundation.org].
** These filters and backends, together with the filters for the PDF printing workflow are now hosted as the cups-filters project at [http://bzr.linuxfoundation.org/loggerhead/openprinting/cups-filters/changes linuxfoundation.org].
Line 28: Line 29:
PDF printing workflow
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.
* 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 new cups-filters.
* Additional filters for the PDF printing workflow have been added to the cups-filters project.


== Benefit to Fedora ==
== Benefit to Fedora ==
Line 35: Line 36:
* Fedora stays in sync with upstream.
* Fedora stays in sync with upstream.
* Using [http://www.linuxfoundation.org/collaborate/workgroups/openprinting/pdfasstandardprintjobformat 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.
* Using [http://www.linuxfoundation.org/collaborate/workgroups/openprinting/pdfasstandardprintjobformat 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 ==
== Scope ==
Line 44: Line 46:
* [[Features/AvahiDefaultOnDesktop | Avahi by Default on the Desktop]] (100% DONE)
* [[Features/AvahiDefaultOnDesktop | 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).
** 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, probably to cups-browsed daemon (cups-filters package) (0% DONE)
* 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 [https://bugzilla.gnome.org/show_bug.cgi?id=688956 upstream])
* Print dialog needs to support Bonjour broadcasting of remote printers (patch under review [https://bugzilla.gnome.org/show_bug.cgi?id=688956 upstream])


Line 72: Line 75:
== User Experience ==
== User Experience ==
<!-- If this feature is noticeable by its target audience, how will their experiences change as a result?  Describe what they will see or notice. -->
<!-- If this feature is noticeable by its target audience, how will their experiences change as a result?  Describe what they will see or notice. -->
Users will enjoy more reliable page manipulation.


== Dependencies ==
== Dependencies ==
<!-- What other packages (RPMs) depend on this package?  Are there changes outside the developers' control on which completion of this feature depends?  In other words, completion of another feature owned by someone else and might cause you to not be able to finish on time or that you would need to coordinate?  Other upstream projects like the kernel (if this is not a kernel feature)? -->
<!-- What other packages (RPMs) depend on this package?  Are there changes outside the developers' control on which completion of this feature depends?  In other words, completion of another feature owned by someone else and might cause you to not be able to finish on time or that you would need to coordinate?  Other upstream projects like the kernel (if this is not a kernel feature)? -->
* cups-filters ([https://bugzilla.redhat.com/show_bug.cgi?id=832130 review])
* qpdf ([https://bugzilla.redhat.com/show_bug.cgi?id=848466 review])
* gtk+(print dialog) (upstream [https://bugzilla.gnome.org/show_bug.cgi?id=688956 bug])


== Contingency Plan ==
== Contingency Plan ==
Line 88: Line 97:
* Tim's [http://lists.fedoraproject.org/pipermail/devel/2012-January/161306.html post] to fedora-devel mailing list
* Tim's [http://lists.fedoraproject.org/pipermail/devel/2012-January/161306.html post] to fedora-devel mailing list
* Tim's article about CUPS 1.6 changes [http://cyberelk.net/tim/2012/02/06/cups-1-6-changes-ahead/ ahead]
* Tim's article about CUPS 1.6 changes [http://cyberelk.net/tim/2012/02/06/cups-1-6-changes-ahead/ ahead]
* Novell/SUSE [https://bugzilla.novell.com/show_bug.cgi?id=735404 bug] about CUPS 1.6
* Novell/SUSE [https://bugzilla.novell.com/show_bug.cgi?id=735404 bug] tracking reasons for NOT updating to CUPS 1.6
* article about CUPS 1.6 on [http://lwn.net/Articles/485617/ lwn.net]
* article about CUPS 1.6 on [http://lwn.net/Articles/485617/ lwn.net]


Line 94: Line 103:
<!-- The Fedora Release Notes inform end-users about what is new in the release.  Examples of past release notes are here: http://docs.fedoraproject.org/release-notes/ -->
<!-- The Fedora Release Notes inform end-users about what is new in the release.  Examples of past release notes are here: http://docs.fedoraproject.org/release-notes/ -->
<!-- The release notes also help users know how to deal with platform changes such as ABIs/APIs, configuration or data file formats, or upgrade concerns.  If there are any such changes involved in this feature, indicate them here.  You can also link to upstream documentation if it satisfies this need.  This information forms the basis of the release notes edited by the documentation team and shipped with the release. -->
<!-- The release notes also help users know how to deal with platform changes such as ABIs/APIs, configuration or data file formats, or upgrade concerns.  If there are any such changes involved in this feature, indicate them here.  You can also link to upstream documentation if it satisfies this need.  This information forms the basis of the release notes edited by the documentation team and shipped with the release. -->
*
 
* 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 ==
== Comments and Discussion ==
Line 100: Line 110:




[[Category:FeaturePageIncomplete]]
[[Category:FeatureAcceptedF19]]
<!-- When your feature page is completed and ready for review -->
<!-- When your feature page is completed and ready for review -->
<!-- remove Category:FeaturePageIncomplete and change it to Category:FeatureReadyForWrangler -->
<!-- remove Category:FeaturePageIncomplete and change it to Category:FeatureReadyForWrangler -->
<!-- After review, the feature wrangler will move your page to Category:FeatureReadyForFesco... if it still needs more work it will move back to Category:FeaturePageIncomplete-->
<!-- After review, the feature wrangler will move your page to Category:FeatureReadyForFesco... if it still needs more work it will move back to Category:FeaturePageIncomplete-->
<!-- A pretty picture of the page category usage is at: https://fedoraproject.org/wiki/Features/Policy/Process -->
<!-- A pretty picture of the page category usage is at: https://fedoraproject.org/wiki/Features/Policy/Process -->

Latest revision as of 12:08, 9 May 2013

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