Changes:
1.18.0
------
mutool draw: bbox output format.
mutool draw: structured text extraction in JSON format.
mutool run: StructuredText.walk()
mutool run: PDFPage.process() and PDFAnnotation.process()
mupdf-gl: Added IBM Common User Access shortcuts for copy & paste.
mupdf-gl: Improved redaction UI.
java: Example desktop Java viewer.
wasm: WebAssembly viewer that runs in a browser.
api: Dehyphenation option in structured text extraction, to improve
searching for words that are hyphenated across lines.
api: pdf_new_date, pdf_to_date, pdf_dict_put_date and pdf_dict_get_date.
api: Added choice of image redaction algorithms: none, full, partial.
api: Optional use of Tesseract to use OCR to extract text.
svg: Many small parsing fixes.
svg: Parse inline CSS style attributes.
svg: Text elements (simple text layout only).
html: Added HTML5 parser.
pdf: High security redaction -- save redacted PDF as flattened bitmap,
guaranteed to not leak any sensitive redacted information.
Experimental C++ bindings.
Experimental Python bindings.
pkgsrc changes:
- Remove patches/patch-platform_x11_pdfapp.c, no longer needed
Changes:
1.17.0
------
api: Improved accessors for markup/ink/polygon annotation data.
api: Chapter based API for faster EPUB loading.
api: Add more documentation to header files.
api: Improved digital signature signing and verification.
api: Validate changes in a signed PDF file.
build: Moved windows build to VS2019 solution.
pdf: Redaction now works on images and links as well as text.
pdf: Greek, Cyrillic, Chinese, Japanese, and Korean scripts in forms and annotations.
pdf: File attachment annotations.
pdf: Use CCITT Fax compression for 1-bit images when creating PDF files.
epub: More forgiving XHTML parsing.
epub: Accelerator files to cache chapter data for faster EPUB loading.
epub: Optimized memory use.
mutool run: Edit Markup, Ink, and Polygon annotation data.
mutool run: Fill out form fields.
viewer: Ask for confirmation before closing a PDF with unsaved changes.
viewer: Embed and extract file attachment annotations.
library: Miscellaneous bugfixes.
library: Fixes to store operation.
thirdparty: Updated Harfbuzz to 2.6.4.
thirdparty: Updated jbig2dec to 0.18.
thirdparty: Updated MuJS to 1.0.7.
thirdparty: Updated OpenJPEG to 2.3.1.
thirdparty: Updated cURL to 7.66.0 (windows only).
Start building FreeGLUT with GLUT compatibility on.
- GLUT's maintainance state is much worse than FreeGLUT's, with no
substanital commits since 2011.
- GLUT can no longer be consider a core component of Mesa or X11.
- Nobody except us seems to be using it...
Other vendors still shipping GLUT:
- GoboLinux, T2 SDE, PLD Linux
Revbump packages using GLUT or freeglut by default.
pkgsrc changes:
- (re)add curl option to build mupdf with curl support (disabled by default).
Unlike previous versions that supported curl now mupdf with curl support is
installed as a separate binary as `mupdf-curl' as done by upstream.
Changes:
1.16.0
------
api: Major overhaul of color management architecture.
api: Improved functions to verify/sign PDF documents.
api: Number tree accessor function pdf_lookup_number.
api: Parse and handle more options for PWG output.
api: Removed obsolete gproof document type.
api: User callbacks for warning and error messages.
epub: Changed default page size to A5.
epub: Draw embedded SVG documents in EPUB/XHTML.
epub: New Noto fonts covering more unicode scripts.
epub: Support small-caps font-variant.
pdf: Add Redact annotation type and function to apply redactions.
pdf: Add/remove/change encryption and password when saving PDF files.
pdf: Improvements to text handling in PDF filter processor.
pdf: MP and DP operators now call begin/end_layer device methods.
pdf: New and improved progressive loading.
svg: Draw external images in SVG documents.
mutool show: Add 'form' selector to list PDF form fields.
mutool sign: Sign PDF documents from the command line.
mutool sign: Verify signatures in PDF documents from the command line.
viewer: Option to save a script of user actions for replay with mutool run.
viewer: Runtime toggle for ICC and spot rendering.
viewer: Tooltip when hovering over a link in mupdf-gl.
Fixes:
- Use `HAVE_GLUT ?= yes' instead of `HAVE_GLUT := yes' in patch-ab:
in that way possible `MAKE_ENV+= HAVE_GLUT=no' in options.mk is honored
(in 1.15.0 update this could lead to building and installing mupdf-gl
and failing due PLIST mismatch despite `opengl' option was not
set.)
Cleanups/patch hunks readds/improvements:
- Avoid to remove non existent thirdparty/curl directory no longer exists,
do not remove it in post-extract
- Clarify why pkgsrc lcms2 could not be used
- Remove curl leftover in buildlink3.mk
- Update patch-Makethird, patch-ab, patch-ac comments to reflect reality
- Populate SYS_GLUT_{CFLAGS,LIBS} via `pkg-config'
* Update lcms2 comment
* Remove removed www/curl option
Changelog:
List of changes in MuPDF 1.15.0
General improvements:
* WebAssembly build target and examples.
* Improved forms API in both C and Java bindings.
* Improved forms JavaScript support.
* Create appearance streams for more form field types.
* Fixed many bugs in ICC color management.
* Fixed many memory leaks in error cleanup.
* Fixed bugs in pdfwrite output.
* Improved text extraction from LaTeX documents with math symbols.
* Improved trace device formatting.
* Support CBZ and CBT files larger than 2Gb.
* Show table of contents for FB2 and XHTML documents.
* Show embedded raster images in SVG and XHTML documents.
* Show FB2 cover page.
* Add option to save PDF files without encryption.
* Add inhibit-spaces option to stext device to turn off missing space detection.
* Simplified fz_try/fz_always/fz_catch macros.
mupdf-gl improvements:
* Automatically open annotation editor when selecting an annotation.
* Full page color tinting option in mupdf-gl.
* Show/hide table of contents sections.
* Trigger a reload with sighup.
* Toggle spot color mode with 'e'.
mutool improvements:
mutool show $PDF outline -- show outline with open/closed state indicator.
mutool show $PDF js -- show document level javascript.
mutool clean -A -- create appearance streams when missing.
mutool clean -AA -- recreate all appearance streams.
mutool run docs/examples/portfolio.js -- extract embedded files from PDF document.
mutool run docs/examples/pdf-dejpx.js -- decompress JPEG2000 images in PDF document.
mutool run docs/examples/fix-s22pdf.js -- fix fonts in documents generated by S22PDF.
Significant API changes:
* New and improved forms API.
* Renamed -DNO_ICC to -DFZ_ENABLE_ICC=0
* Removed fz_annot superclass. Use pdf_annot and pdf_widget directly instead.
* Annotations and Widgets now have separate enumerators.
* Added optional separations argument to pixmap rendering utility functions.
Various cleanups:
Per-function documentation comments moved to the source file.
Hopefully they will stay up to date more often than when they
were hidden away in the header file.
Removed unused internal testing tools: mjsgen and jstest.
Removed TGA output support. Use one of the more common and useful PAM,
PNM, PNG, or TIFF formats instead.
Removed support for PDF portfolios. This work-in-progress feature was
never completed, and only worked for a small subset of files.
Removed support for progressive loading. This rarely used feature added
a lot of complexity and was an unending source of bugs and strange
behaviour. Removing this feature has allowed us to clean up and
simplify large amounts of code, and fix dozens of bugs in one fell
swoop.
pkgsrc changes:
- Pass USE_SYSTEM_LIBS=yes via MAKE_ENV in order to honor system (pkgsrc)
packages {C,LD}FLAGS
- Rewrite the logic to disable lcms2 in patch-ab and inject -DNO_ICC
directly via CFLAGS
Changes:
MuPDF 1.14.0
------------
* New features:
* Added "Source Han Serif" CJK fallback font.
* Added more scripts to the Noto fallback fonts.
* Multi-page PNM support.
* "mutool show" now supports a path syntax for selecting objects to show.
* Build system simplifications:
* Auto-generated CMap, ICC, and JS source files are checked in to git.
* Embedded CMap resources are now generated by a python script.
* Embedded font resources are linked directly if using GNU ld or windows.
* Namegen tool replaced by use of C macros.
* Simplified Makefile.
* Annotation editing:
* New annotation editing mode in mupdf-gl.
* Can create, edit, and delete most annotation types.
* Can create appearance streams for most annotation types.
* Can create appearance streams for Tx form fields.
* Can create appearance streams for Ch form fields.
* Form filling in mupdf-gl:
* Can click buttons, checkboxes, and radioboxes.
* Can fill out text fields using dialog box.
* Can select choice options using dialog box.
* Can verify and sign digital signatures.
* Improved UI for mupdf-gl:
* Password dialog.
* Error dialog.
* Open/save file dialog.
* Snap selection to words or lines by holding control or control+shift.
* Save and restore current location, bookmarks, and navigation history.
* Bug fixes:
* Improved CJK character fallback handling in EPUB.
* API changes:
* Pass rectangle and matrix structs by value.
* Replaced PDF_NAME_Xxx macros with PDF_NAME(Xxx).
* Added PDF_TRUE, PDF_FALSE, and PDF_NULL constant pdf_obj* macros.
* Added helper functions: pdf_dict_get_int, etc.
* Removed 'doc' argument in pdf_new_int, etc.
* Quads instead of rects when highlighting and searching text.
* mutool run: Pass arguments to script in scriptArgs global.
pkgsrc changes:
- Directly override VERSION in files/mupdf.pc in the post-build phase
(to avoid an extra manual step for every mupdf update)
- Get rid of OPJ_STATIC patch hunk in patches/patch-source_fitz_load-jpx.c (it
is no more needed, because the `-DOPJ_STATIC' is now passed in Makefile-s
when the bundled openjpeg is used).
- Pass HAVE_LIBCRYPTO=no to avoid requiring openssl>=1.1.0.
Changes:
1.13.0
------
* This is primarily a bugfix release.
* New "mutool sign" tool for showing and verifying digital signatures.
* Chinese, Japanese, Korean, Cyrillic, and Greek font support in mutool create.
* Improvements to annotation editing API.
pkgsrc changes:
- Add support for the `opengl' option via graphics/glut and remove the `glfw'
option to follow upstream changes. Adjust options.mk and buildlink3.mk
accordingly.
- Add patches/patch-platform_gl_gl-app.h to not force freeglut GLUT
implementation to every non-APPLE platforms (glut also works!) and adjust the
glut.h include.
- Add a commented out lcms2 bl3 inclusion entry, lcms2>=2.9 is needed (due
"lcms2art.h" et al. inclusion, so disable it for now)
- Explain the OPJ_STATIC comment in patches/patch-source_fitz_load-jpx.c
a bit more in depth... ...this will hopefully save some time to
debug opj_* undefined symbols when trying to link libmupdf and
accidently omitting the patches/patch-source_fitz_load-jpx.c
hunk (for extra debugging stories fun, if OPJ_STATIC is defined
some opj_* symbols are defined while others are not defined,
making the debugging of that problem more naughty!).
- Inject HAVE_{CURL,GLUT} variables via MAKE_ENV in options.mk to avoid
depending on www/curl and graphics/glut (yes, that's a bit kludgy
but unfortunately mupdf doesn't have a configure and so there
isn't a more sensible way to do it). This is needed to avoid
building mupdf-gl for native X.org where the glut.pc pkg-config
file is available at build time. Also adjust patches/patch-ab
accordingly.
- Remove patches/patch-CVE*, they are no longer needed (all applied in 1.12.0)
- Bump BUILDLINK_API_DEPENDS.mupdf to 1.12.0 (there were several API changes
from 1.11 to 1.12.0) and remove the now redundant and no longer needed
BUILDLINK_ABI_DEPENDS.mupdf.
Changes:
List of changes in MuPDF 1.12.0
* Color management:
* LCMS2 library for color management.
* CMYK rendering with overprint simulation.
* Spot color rendering.
* Transparency rendering fixes.
* Structured text output improvements:
* Reworked structured text API.
* Faster text searching.
* Highlight and copy text by selecting lines instead of by area.
* New semantic XHTML output format.
* New layout preserving HTML output format.
* Features and improvements:
* Improved non-AA rendering with new scan converter.
* Improved LARGEFILE support.
* Improved TIFF support.
* Improved documentation.
* PCLm output.
* PSD output.
* New "mutool trace" tool.
* New "mutool sign" tool (work in progress).
* Text redaction (work in progress).
* Lots of bug fixes.
Backport patches from upstream to address CVE-2017-14685, CVE-2017-14686,
CVE-2017-14687, CVE-2017-15369 and CVE-2017-15587.
These will not be needed for the next mupdf stable release.
Bump PKGREVISION.
With graphics/openjpeg (at least 2.2.0 and 2.3.0) mupdf can crashes when
calling opj_free().
Adapt a patch from OpenBSD ports
textproc/mupdf/patch-source_fitz_load-jpx_c,v 1.5 that fixes this issue.
Bump PKGREVISION
Changes:
List of changes in MuPDF 1.11
-----------------------------
* This is primarily a bug fix release.
* Split Android and iOS viewers into separate projects:
- mupdf-viewer-ios.git has the iOS viewer.
- mupdf-viewer-android-old.git has the Android viewer.
- mupdf-viewer-android-nui.git has a new advanced Android viewer.
- mupdf-viewer-android-mini.git has a new minimalist Android viewer.
* PDF portfolio support with command line tool "mutool portfolio".
* Add callbacks to load fallback fonts from the system.
* Use system fonts in Android to reduce install size.
* Flag to disable publisher styles in EPUB layout.
* Improved SVG output.
pkgsrc changes:
- Include more bl3 in buildlink3.mk to reflect current reality
- Bump BUILDLINK_A[BP]I_DEPENDS.mupdf to 1.10a (packages that depends on
mupdf seems to not run without being rebuilded despite a bug fix release)
Changes:
MuPDF 1.10a (2016-11-28)
------------------------
Version 1.10a is a bug fix release.
If you downloaded the windows release for 1.10 you should also
upgrade, since the zip archive accidentally included the RC2 binaries
instead of the final version.
A bug with mutool and saving PDF files using the 'ascii' option
has been fixed.
The iOS build issues have been fixed.