Features/CUPS1.6

From FedoraProject

< Features(Difference between revisions)
Jump to: navigation, search
(added almost-empty page)
 
(Fix last update date)
(22 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-03-11
* Percentage of completion: 75%
+
* Percentage of completion: 90%
  
 
== 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 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 [http://bzr.linuxfoundation.org/loggerhead/openprinting/cups-filters/changes 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 ==
 
== Benefit to Fedora ==
 
<!-- What is the benefit to the platform?  If this is a major capability update, what has changed?  If this is a new feature, what capabilities does it bring? Why will Fedora become a better distribution or project because of this feature?-->
 
<!-- What is the benefit to the platform?  If this is a major capability update, what has changed?  If this is a new feature, what capabilities does it bring? Why will Fedora become a better distribution or project because of this feature?-->
 +
 +
* 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.
 +
* Continued compatibility with systems running older versions of CUPS.
  
 
== Scope ==
 
== Scope ==
 
<!-- What work do the developers have to accomplish to complete the feature in time for release?  Is it a large change affecting many parts of the distribution or is it a very isolated change? What are those changes?-->
 
<!-- What work do the developers have to accomplish to complete the feature in time for release?  Is it a large change affecting many parts of the distribution or is it a very isolated change? What are those changes?-->
 +
 +
* update to cups-1.6.x (100% DONE)
 +
* package cups-filters (100% DONE, [https://bugzilla.redhat.com/show_bug.cgi?id=832130 review])
 +
* package qpdf (100% DONE, [https://bugzilla.redhat.com/show_bug.cgi?id=848466 review])
 +
* [[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).
 +
* Add back CUPS Browsing and/or Polling capabilities to provide compatibility with systems running older versions of CUPS (90% 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])
  
 
== How To Test ==
 
== How To Test ==
Line 38: Line 64:
 
3. What are the expected results of those actions?
 
3. What are the expected results of those actions?
 
-->
 
-->
 +
 +
Test cases:
 +
 +
* [[QA:Testcase_Printing_New_Printer|Connecting a local printer]]
 +
* [[QA:Testcase_Printing_Known_Printer|Reconnecting a local printer]]
 +
* [[QA:Testcase_Printing_Network_Printer|Printing to a network printer]]
 +
* [[QA:Testcase_Printing_Complex|Printing copies/pages/duplexing from the print dialog]]
 +
* [[QA:Testcase_Printing_Troubleshooting|Status feedback]]
  
 
== 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 ==
 
<!-- If you cannot complete your feature by the final development freeze, what is the backup plan?  This might be as simple as "None necessary, revert to previous release behaviour."  Or it might not.  If you feature is not completed in time we want to assure others that other parts of Fedora will not be in jeopardy.  -->
 
<!-- If you cannot complete your feature by the final development freeze, what is the backup plan?  This might be as simple as "None necessary, revert to previous release behaviour."  Or it might not.  If you feature is not completed in time we want to assure others that other parts of Fedora will not be in jeopardy.  -->
 +
 +
If this feature is not ready by the deadline, revert back to cups-1.5.4.
  
 
== Documentation ==
 
== Documentation ==
 
<!-- Is there upstream documentation on this feature, or notes you have written yourself?  Link to that material here so other interested developers can get involved. -->
 
<!-- Is there upstream documentation on this feature, or notes you have written yourself?  Link to that material here so other interested developers can get involved. -->
*
+
 
 +
* CUPS 1.6b1 release [http://www.cups.org/articles.php?L675 notes]
 +
* PDF as Standard Print Job [http://www.linuxfoundation.org/collaborate/workgroups/openprinting/pdf_as_standard_print_job_format Format]
 +
* 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]
 +
* 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]
  
 
== Release Notes ==
 
== 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 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 ==
* See [[Talk:Features/Your_Feature_Name]]  <!-- This adds a link to the "discussion" tab associated with your page.  This provides the ability to have ongoing comments or conversation without bogging down the main feature page -->
+
* See [[Talk:Features/CUPS1.6]]  <!-- This adds a link to the "discussion" tab associated with your page.  This provides the ability to have ongoing comments or conversation without bogging down the main feature page -->
  
  
[[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 -->

Revision as of 08:50, 12 March 2013

Contents

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-03-11
  • Percentage of completion: 90%

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 (90% 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