Release Notes -- Apache PDFBox -- Version 3.0.7

Introduction
------------

The Apache PDFBox library is an open source Java tool for working with PDF documents.

This is an incremental bugfix release based on the earlier 3.0.6 release. It contains
a couple of fixes and small improvements.

A migration guide is available at https://pdfbox.apache.org/3.0/migration.html. It is
still a work in progress and we are happy to include any valuable feedback from our 
community. 

For more details on these changes and all the other fixes and improvements
included in this release, please refer to the following issues on the
PDFBox issue tracker at https://issues.apache.org/jira/browse/PDFBOX.

Bug

[PDFBOX-2378] - XMPBox removes namespaces on serialization
[PDFBOX-3882] - False negative on PDFA-1b validation : missing field type
[PDFBOX-5049] - PlainText.Paragraph.getLines extremely slow on long lines
[PDFBOX-5288] - Valid PDF/A 1B is rejected
[PDFBOX-5369] - PDDocument.saveIncremental () and stack exhaustion
[PDFBOX-6036] - StackOverflowError in COSWriterCompressionPool for large number of bookmarks
[PDFBOX-6085] - TTFSubsetter.buildGlyfTable() modifies glyphIds while iterating over its entries possibly causing ConcurrentModificationException to be thrown
[PDFBOX-6086] - IndexOutOfBoundsException in Type1CharStringParser.processCallSubr()
[PDFBOX-6088] - Exception "No type defined for {http://www.aiim.org/pdfa/ns/id/}rev" when trying to determine version of PDF/A-4 document
[PDFBOX-6090] - allow new PDF/A-4 conformance levels
[PDFBOX-6091] - pdfbox-app-X.X.X-sources.jar on maven central are empty (and javadoc jar is missing)
[PDFBOX-6092] - Cmd line docs
[PDFBOX-6095] - IllegalArgumentException: Multiplying two matrices produces illegal values in PDFStreamEngine.processAnnotation()
[PDFBOX-6097] - Avoid StackOverflow when collecting indirect object keys
[PDFBOX-6099] - XmpParsingException: Schema is not set in this document : http://ns.adobe.com/xap/1.0/sType/ResourceEvent#
[PDFBOX-6101] - NullPointerException in FontMapperImpl.getFontMatches()
[PDFBOX-6102] - StackOverflowError when Copying 1000+ bookmarks
[PDFBOX-6104] - border style in FDFAnnotation is not initialized if width is 0
[PDFBOX-6105] - German umlauts are not rendered
[PDFBOX-6106] - Invalid type in Schema not detected when in XML attributes
[PDFBOX-6107] - Serializing produces date "1-01-01T00:00:00+01:00"
[PDFBOX-6109] - Seconds of date "D:2015-02-03T10:11:12" returned as 0
[PDFBOX-6110] - Confusing naming of "DerivedFrom" property getter in XMPMediaManagementSchema
[PDFBOX-6111] - ClassCastException in XMPMediaManagementSchema.getHistory()
[PDFBOX-6115] - IllegalArgumentException: Input buffer too short in StandardSecurityHandler.computeRC4key()
[PDFBOX-6117] - Print shows wrong name
[PDFBOX-6118] - IllegalArgumentException: Width (0) and height (0) cannot be <= 0 when printing landscape rotated with RASTERIZE_DPI_AUTO
[PDFBOX-6119] - DateConverter fails on valid date
[PDFBOX-6121] - ClassCastException: class org.apache.xmpbox.type.TextType cannot be cast to class org.apache.xmpbox.type.ArrayProperty in DublinCoreSchema.getCreatorsProperty()
[PDFBOX-6122] - tiff:YCbCrSubSampling and tiff:YCbCrPositioning have wrong cardinality
[PDFBOX-6125] - ClassCastException: class org.apache.xmpbox.type.FlashType
[PDFBOX-6126] - Cannot find a definition for the namespace http://www.w3.org/1999/02/22-rdf-syntax-ns#, property: rdf:Description
[PDFBOX-6127] - Non standard namespaces not recognized if in rdf:RDF
[PDFBOX-6128] - XmpParsingException: Schema is not set in this document : http://ns.adobe.com/xap/1.0/sType/ResourceEvent#, property: stEvt:action
[PDFBOX-6129] - XmpParsingException: Missing pdfaSchema:property in type definition in lenient mode
[PDFBOX-6131] - XmpParsingException: Unknown property value type : Open Choice of Integer
[PDFBOX-6133] - XmpParsingException: Property 'CountryCode' not defined in http://www.epo.org/patent-bibliographic-data/1.0/
[PDFBOX-6134] - date "0-00-00T00:00:00-04:00" read as "0002-11-30T00:00:00-40:00"
[PDFBOX-6135] - XmpParsingException: Type 'stRef:documentName' not defined in http://ns.adobe.com/xap/1.0/sType/ResourceRef# in lenient mode
[PDFBOX-6136] - Invalid PDF/A namespace definition, prefix: xmlns, namespace: http://www.aiim.org/pdfa/ns/extension/
[PDFBOX-6138] - XmpParsingException: Schema is not set in this document : http://www.aiim.org/pdfa/ns/extension/, property: pdfaExtension:schemas
[PDFBOX-6141] - NegativeArraySizeException in PredictorOutputStream()
[PDFBOX-6142] - New release will produce incorrect files.
[PDFBOX-6143] - NullpointerException in PDAcroForm.getField(Line 485)
[PDFBOX-6144] - "render" command line utility ignores "page" parameter
[PDFBOX-6146] - OutOfMemoryError when trying to extract text from pdf
[PDFBOX-6153] - Catch cycles in outlines
[PDFBOX-6165] - Rendered text missing
[PDFBOX-6171] - Inverted images due to enlarged decode array
[PDFBOX-6172] - PDF displays garbled characters in Adobe Reader but renders correctly in web browsers

New Feature

[PDFBOX-6103] - Add DFLT script support in GSUB system for OpenType fonts

Improvement

[PDFBOX-5292] - Valid XMP Extension Schema rejected
[PDFBOX-6083] - optimize DataInputRandomAccessRead
[PDFBOX-6084] - Remove dead code from PDFMarkedContentExtractor
[PDFBOX-6096] - Include test file in test class
[PDFBOX-6100] - Reduce access rights to temp files
[PDFBOX-6108] - Get and Add PageTextSchema
[PDFBOX-6112] - Expand test coverage of PhotoShopSchema
[PDFBOX-6113] - Remove / deprecate TypeMapping.getAssociatedSchemaObject()
[PDFBOX-6114] - Improve PDF/A extension schema validation with missing fields names
[PDFBOX-6123] - Support Seq / Bag mixup in lenient mode
[PDFBOX-6130] - Parse xmp files in lenient mode that have no processing instructions
[PDFBOX-6164] - Support TIFF-files with FillOrder=2 conversion to PDF

Task

[PDFBOX-6089] - Remove / deprecate unused parts of PDIndexed
[PDFBOX-6139] - modernize rat exclusions
[PDFBOX-6140] - Run regression tests for 3.0.7

Release Contents
----------------

This release consists of a single source archive packaged as a zip file.
The archive can be unpacked with the jar tool from your JDK installation.
See the README.txt file for instructions on how to build this release.

The source archive is accompanied by SHA512 checksums and a PGP signature
that you can use to verify the authenticity of your download.
The public key used for the PGP signature can be found at
https://www.apache.org/dist/pdfbox/KEYS.

About Apache PDFBox
-------------------

Apache PDFBox is an open source Java library for working with PDF documents.
This project allows creation of new PDF documents, manipulation of existing
documents and the ability to extract content from documents. Apache PDFBox
also includes several command line utilities. Apache PDFBox is published
under the Apache License, Version 2.0.

For more information, visit https://pdfbox.apache.org/

About The Apache Software Foundation
------------------------------------

Established in 1999, The Apache Software Foundation provides organizational,
legal, and financial support for more than 100 freely-available,
collaboratively-developed Open Source projects. The pragmatic Apache License
enables individual and commercial users to easily deploy Apache software;
the Foundation's intellectual property framework limits the legal exposure
of its 2,500+ contributors.

For more information, visit https://www.apache.org/
