Skip to content

Releases: OpenPrinting/cups-filters

cups-filters 1.25.7

07 Oct 14:03
Compare
Choose a tag to compare

Bug fix release, fixing several crashes, pdftoraster not working with monochrome jobs, printing to clusters.

  • implicitclass, libcupsfilters: Fixes to solve an assertion error and printing to an Apple Raster printer (Issue #162, Ubuntu bug #1845286, Ubuntu bug #1845548).
  • cups-browsed: Do not try to resolve the network interface name on Avahi messages which are not interface-related (like "All for now"or "Cache exhausted", Issue #163).
  • Build system: The helper script ln-srf to build on systems with old ln was not included in the release tarballs (Issue #161).
  • pdftoraster: Fixed some bugs in output bitmap generation (writePageImage() function): Segfault on output of up-side-down pages (back side when printing duplex on some printers), margin offsets not taken into account on monochrome jobs, CUPS_CSPACE_W color space not recognized as monochrome (Ubuntu bug #1845286).

cups-filters 1.25.6

23 Sep 16:19
Compare
Choose a tag to compare

Bug fix release which especially fixes a bug when printing into a cluster but also soives other minor issues.

  • implicitclass: Make sure the destination printer gets always set and do not pass on the cups-browsed-dest-printer when sending the job to the final destination (Issue #152, Pull request #159).
  • Build system: Support old ln versions without the -r option (Pull request #154, #157).
  • texttotext: Link with libiconv if needed (Pull request #155, #158).
  • foomatic-rip: Fix argument representation for raw queue debug message (Pull request #153).

cups-filters 1.25.5

06 Sep 14:50
Compare
Choose a tag to compare

Bug fix release, mainly for cups-browsed not to die on left over locally generated queues of unclaen shutdown of the previous session.

  • bannertopdf: Added missing "#include " to pdf.cxx so that bannertopdf correctly builds with QPDF 9.0.0 (Issue #134, Issue #151, Gentoo bug #693498).
  • rastertopdf: Let the getIPPColorProfileName() function not return a pointer to a local variable (clang warning, Issue #150).
  • cups-browsed: If a locally generated queue (usually with "implicitclass://..." URI) left over from a previous (crashed) session is picked up on startup, do not set the URI as the remote printer's URI and do not cause a fatal error on a failed get-printer-attributes IPP request (Issue #148, Debian bug #939316).
  • pdftopdf: Do not preserve encryption, since the output already goes into the printer (Issue #146, Pull request #147).

cups-filters 1.25.4

30 Aug 09:29
Compare
Choose a tag to compare

Bug fix release for the page geometry and CUPS Raster output issues in the imagetoraster, imagetopdf, and pdftoraster filters:

  • imagetoraster: Do not call imagetops and pstoraster for classifications and page labels as these filters are not included any more with cups-filters. Classifications and page labels are currently not supported for direct image printing, only for PDF or PostScript input (which goes through pdftopdf).
  • imagetoraster, imagetopdf: Fixed auto-rotation of images to fit output page best (Issue #145).
  • pdftoraster: If the PPD contains several equally-sized page size entries which match the size of the input page and one is the size selected by the user via the "PageSize" or "media" option (or the default selection in the PPD) then prefer this one instead of simply the first matching one.
  • pdftoraster: If the input page size cannot be matched with one of the PPD's page sizes it is considered a custom size, fill the page size name field of the CUPS Raster header with "Custom.XXXxYYY" then.
  • pdftoraster: Match the input page size with a page size in the PPD only if the differences of the dimensions are less than 1%, also match the input page size against the imageable area of the PPD's page sizes if no match with the full page size is found (Issue #138).

cups-filters 1.25.3

21 Aug 16:14
Compare
Choose a tag to compare

Bug fix release, especially to fix a compatibility issue with CUPS 2.2.12:

  • Sample PPDs: In HP-Color_LaserJet_CM3530_MFP-PDF.ppd renamed "custom" choice of the option "stapleoption" to "customsize" as from CUPS 2.2.12 on "custom" is not accepted any more as a choice name in a PPD file.
  • cups-browsed: Fixed check whether the remote printer understands PWG Raster (Issue #141).

cups-filters 1.25.2

16 Aug 15:06
Compare
Choose a tag to compare

Improved cups-browsed's handling of the DNS-SD records of advertised local and remote IPP print services. Especially made sure that local queues do not get already removed when the service on a single network interface disappears (for example Wi-Fi turned off) while still present on other interfaces. Also let local services preferably be accessed through the loopback ("localhost") interface to avoid data leaks into the network.

  • foomatic-rip: Fixed segmentation fault when running foomatic-rip by hand and the PRINTER environment variable is not set (Pull request #139).
  • cups-browsed: Added note to cups-browsed.conf and man page about IP-based URIs depending on the network interface used.
  • cups-browsed: For each DNS-SD-discovered printer register each DNS-SD discovery instance with network interface, family, and IPP type. When DNS-SD messages of instances disappearing show up, only unregister this instance and remove the printer only if no instance is left. This prevents a local queue of a still available printer being removed when Wi-Fi (= one interface) is turned off (Issue #136).
  • cups-browsed: If a remote printer is served from the local machine, prefer the "localhost"/loopback interface URI.
  • cups-browsed: If a remote printer is discovered more than once, use the new instance only if it has no downgrades and at least one upgrade compared to the old one. Features currently compared are IPP/IPPS, loopback interface or not, and discovery via CUPS legacy/LDAP/DNS-SD.
  • cups-browsed: If an Avahi-discovered entry comes through the "lo" interface, always use the host name "localhost". Use IP addresses instead of host names only if explicitly requested.
  • cups-browsed: Consider remote printer entries also as from the same printer if one has the local machine's network name and the other "localhost" as host name (Issue #136).

cups-filters 1.25.1

05 Jul 14:37
Compare
Choose a tag to compare

Bug fix release for the filters, mainly for the new pdftoraster filter.

  • imagetopdf: Fixed crash when no PPD file was supplied (Pull request #133).
  • pdftoraster: Fixed offset issues leading to segmentation faults (Issue #131, Pull request #132).
  • pdftoraster: Added anti-aliasing for better raster image quality (Pull request #129).
  • pdftoraster: Added graceful handling of zero-page input (Issue #117, Pull request #127).

cups-filters 1.25.0

06 Jun 13:28
Compare
Choose a tag to compare

In this release the pdftoraster filter is changed to only use stable/documented APIs of Poppler (Tanmay Anand's Google Summer of Code 2019 project) and the deprecated, Poppler-based filters pdftoijs and pdftoopvp are finally completely removed. Now Poppler is only used for the pdftoraster filter. Poppler's unstable/internal APIs are nowhere used any more in cups-filters.
Note for distribution packagers: cups-filters now uses libpoppler-cpp for pdftoraster.

  • pdftoijs, pdftoopvp: Removed these deprecated filters completely as there is no demand for them any more. They also used unstable, undocumented APIs of Poppler.
  • pdftoraster: Changed from using unstable, undocumented APIs of Poppler to stable, documented ones, to improve maintainability of this filter, and with it of the cups-filters package. Thanks to Tanmay Anand for contributing this as his Google Summer of Code 2019 project.
  • libcupsfilters: Added support for color spaces CMY and RGBW when using filters without PPD file (mainly for development and debugging, option "print-color-mode" with values "cmy-XX" and "rgbw-XX" with XX being the number of bits per color).

cups-filters 1.24.0

03 Jun 21:04
Compare
Choose a tag to compare

Integration of Deepak Patankar's Google Summer of Code 2018 project with the main goal of clustering different printers with cups-browsed and automatically selecting the destination printers by job content and option/attribute settings. To achieve this, several other features got added to cups-browsed, especially support for mixed clusters of remote CUPS queues and native IPP printers and not downloading PPDs from remote CUPS servers any more. All changes of this release are done by Deepak as parts of his project.

  • cups-browsed, implicitclass: Support for mixed clusters of remote CUPS queues and IPP network printers. For this PPD files of remote CUPS queues are generated by cups-browsed based on IPP queries, as for native IPP printers, the number of jobs for load balancing is polled in a way that it works also with native IPP printers, the implicitclass backend sends jobs directky to the printer instead of re-queueing them via CUPS.
  • cups-browsed: Merge IPP attributes of several printers to combined attributes for the cluster to generate the cluster's PPD file, including PPD constraints for option combinations not fulfillable by any of the member printers, and finding reasonable, non-conflicting default settings,
  • cups-browsed: Selection algorithm for the destination printer for a job sent to the cluster. Based on the job settings requested such as page size, media type, print quality, ... the best most suitable printer in the cluster for the job will be selected.
  • cups-browsed, implicitclass: Filter jobs to clusters already locally. Due to the fact that a cluster's member printers are not exclusively non-raw CUPS queues with the complete filtering framework on the remote server, but also native IPP printers, we need to support generic driverless printers as destination. So we cannot pass on the input data unfiltered but need to filter locally. We let the cluster's PPD file emulate a PDF printer, letting the local CUPS queue of the cluster run pdftopdf and any pre-filters to turn the input into PDF and we let the implicitclass backend turn PDF into a format understood by the destination printer, supporting the 4 formats of driverless IPP printing: PDF, PWG Raster, Apple Raster, PCLm.

cups-filters 1.23.0

16 May 13:08
Compare
Choose a tag to compare

This release adds support for the "print-scaling" IPP attribute and has the code for the support of MuPDF as PDF renderer vastly simplified.

  • pdftops, mupdftoraster: Let pdftops call mutool directly and so that it directly outputs PostScript, eliminating the need to call the mupdftoraster and rastertops filters.
  • mupdftoraster: Reduced the use of temporary files from 3 to just one.
  • imagetopdf, imagetoraster, pdftopdf: Add support for print-scaling option (Issue #108, Pull request #118).