Recent Changes in Ghostscript

Contact Us
Download
Changes in the Most Recent Release of Ghostscript

This document is news about the most recent Ghostscript release. For earlier versions, see the history documents:

> History of Ghostscript versions 9.n
> History of Ghostscript versions 8.n
> History of Ghostscript versions 7.n
> History of Ghostscript versions 6.n
> History of Ghostscript versions 5.n
> History of Ghostscript versions 4.n
> History of Ghostscript versions 3.n
> History of Ghostscript versions 2.n
> History of Ghostscript versions 1.n

For other information, see the Ghostscript overview.

## Version 9.50 (2019-09-30)

Highlights in this release include:

- The change to version 9.50 (rather than the intended 9.28) follows recognition of the extent and importance of the file access control redesign/reimplementation outlined below.

- The file access control capability (enable with `-dSAFER`) has been completely rewritten, with a ground-up rethink of the design. For more details, see: SAFER.

  It is important to note that `-dSAFER` now only enables the file access controls, and no longer applies restrictions to standard Postscript functionality (specifically, restrictions on `setpagedevice`. If your application relies on these Postscript restrictions, see OLDSAFER, and please get in touch, as we do plan to remove those Postscript restrictions unless we have reason not to.

  IMPORTANT: File access controls are now enabled by default. In order to run Ghostscript without these controls, see NOSAFER

  Important Note for Windows Users: See below under Incompatible Changes

- IMPORTANT: We are in the process of forking LittleCMS. LCMS2 is not thread safe, and cannot be made thread safe without breaking the ABI. Our fork will be thread safe, and include performance enhancements (these changes have all be been offered and rejected upstream). We will maintain compatibility between Ghostscript and LCMS2 for a time, but not in perpetuity. Our fork will be available as its own package separately from Ghostscript (and MuPDF).

- The usual round of bug fixes, compatibility changes, and incremental improvements.

- Special thanks to Akira Kakuto, Paul Wessel, William Bader, Nelson H. F. Beebe and everyone else who put time and effort into testing this new release.

For a list of open issues, or to report problems, please visit bugs.ghostscript.com.

### Incompatible changes

- There are a couple of subtle incompatibilities between the old and new SAFER implementations. Firstly, as mentioned above, SAFER now leaves standard Postcript functionality unchanged (except for the file access limitations). Secondly, the interaction with `save`/`restore` operations, see SAFER.

  Important Note for Windows Users:
  The file/path pattern matching is case sensitive, even on Windows. This is a change in behaviour compared to the old code which, on Windows, was case insensitive. This is in recognition of changes in Windows behaviour, in that it now supports (although does not enforce) case sensitivity.

- The following is not strictly speaking new to 9.50, as not much has changed since 9.27 in this area, but for those who don't upgrade with every release:

  The process of "tidying" the Postscript name space should have removed only non-standard and undocumented operators. Nevertheless, it is possible that any integrations or utilities that rely on those non-standard and undocumented operators may stop working, or may change behaviour.

  If you encounter such a case, please contact us (either the #ghostscript IRC channel, or the gs-devel mailing list would be best), and we'll work with you to either find an alternative solution or return the previous functionality, if there is genuinely no other option.

  One case we know this has occurred is GSView 5 (and earlier). GSView 5 support for PDF files relied upon internal use only features which are no longer available. GSView 5 will still work as previously for Postscript files. For PDF files, users are encouraged to look at MuPDF.

### Changelog

See the history file for complete log of changes.

Copyright © 2005-2019 Artifex Software, Inc. All rights reserved.

This software is provided AS-IS with no warranty, either express or implied. This software is distributed under license and may not be copied, modified or distributed except as expressly authorized under the terms of that license. Refer to licensing information at http://www.artifex.com/ or contact Artifex Software, Inc., 1305 Grant Avenue - Suite 200, Novato, CA 94945, U.S.A., +1(415)492-9861, for further information.

Ghostscript version 9.50, 15 October 2019