2
1
mirror of https://github.com/qpdf/qpdf.git synced 2024-06-01 01:40:51 +00:00

Update release notes for 4.1.0

This commit is contained in:
Jay Berkenbilt 2013-04-14 14:31:32 -04:00
parent eb6f066296
commit be72eab99b

View File

@ -5,8 +5,8 @@
<!ENTITY mdash "&#x2014;">
<!ENTITY ndash "&#x2013;">
<!ENTITY nbsp "&#xA0;">
<!ENTITY swversion "4.0.1">
<!ENTITY lastreleased "January 17, 2013">
<!ENTITY swversion "4.1.0">
<!ENTITY lastreleased "April 14, 2013">
]>
<book>
<bookinfo>
@ -2620,6 +2620,155 @@ print "\n";
<filename>ChangeLog</filename> in the source distribution.
</para>
<variablelist>
<varlistentry>
<term>4.1.0: April 14, 2013</term>
<listitem>
<itemizedlist>
<listitem>
<para>
Note to people including qpdf in distributions: the
<filename>.la</filename> files generated by libtool are now
installed by qpdf's <command>make install</command> target.
Before, they were not installed. This means that if your
distribution does not want to include <filename>.la</filename>
files, you must remove them as part of your packaging process.
</para>
</listitem>
<listitem>
<para>
Major enhancement: API enhancements have been made to support
parsing of content streams. This enhancement includes the
following changes:
<itemizedlist>
<listitem>
<para>
<function>QPDFObjectHandle::parseContentStream</function>
method parses objects in a content stream and calls
handlers in a callback class. The example
<filename>examples/pdf-parse-content.cc</filename>
illustrates how this may be used.
</para>
</listitem>
<listitem>
<para>
<type>QPDFObjectHandle</type> can now represent operators
and inline images, object types that may only appear in
content streams.
</para>
</listitem>
<listitem>
<para>
Method <function>QPDFObjectHandle::getTypeCode()</function>
returns an enumerated type value representing the
underlying object type. Method
<function>QPDFObjectHandle::getTypeName()</function>
returns a text string describing the name of the type of a
<type>QPDFObjectHandle</type> object. These methods can be
used for more efficient parsing and debugging/diagnostic
messages.
</para>
</listitem>
</itemizedlist>
</para>
</listitem>
<listitem>
<para>
<command>qpdf --check</command> now parses all pages' content
streams in addition to doing other checks. While there are
still many types of errors that cannot be detected, syntactic
errors in content streams will now be reported.
</para>
</listitem>
<listitem>
<para>
Minor compilation enhancements have been made to facilitate
easier for support for a broader range of compilers and
compiler versions.
<itemizedlist>
<listitem>
<para>
Warning flags have been moved into a separate variable in
<filename>autoconf.mk</filename>
</para>
</listitem>
<listitem>
<para>
The configure flag <option>--enable-werror</option> work
for Microsoft compilers
</para>
</listitem>
<listitem>
<para>
All MSVC CRT security warnings have been resolved.
</para>
</listitem>
<listitem>
<para>
All C-style casts in C++ Code have been replaced by C++
casts, and many casts that had been included to suppress
higher warning levels for some compilers have been removed,
primarily for clarity. Places where integer type coercion
occurs have been scrutinized. A new casting policy has
been documented in the manual. This is of concern mainly
to people porting qpdf to new platforms or compilers. It
is not visible to programmers writing code that uses the
library
</para>
</listitem>
<listitem>
<para>
Some internal limits have been removed in code that
converts numbers to strings. This is largely invisible to
users, but it does trigger a bug in some older versions of
mingw-w64's C++ library. See
<filename>README-windows.txt</filename> in the source
distribution if you think this may affect you. The copy of
the DLL distributed with qpdf's binary distribution is not
affected by this problem.
</para>
</listitem>
</itemizedlist>
</para>
</listitem>
<listitem>
<para>
The RPM spec file previously included with qpdf has been
removed. This is because virtually all Linux distributions
include qpdf now that it is a dependency of CUPS filters.
</para>
</listitem>
<listitem>
<para>
A few bug fixes are included:
<itemizedlist>
<listitem>
<para>
Overridden compressed objects are properly handled.
Before, there were certain constructs that could cause qpdf
to see old versions of some objects. The most usual
manifestation of this was loss of filled in form values for
certain files.
</para>
</listitem>
<listitem>
<para>
Installation no longer uses GNU/Linux-specific versions of
some commands, so <command>make install</command> works on
Solaris with native tools.
</para>
</listitem>
<listitem>
<para>
The 64-bit mingw Windows binary package no longer includes
a 32-bit DLL.
</para>
</listitem>
</itemizedlist>
</para>
</listitem>
</itemizedlist>
</listitem>
</varlistentry>
<varlistentry>
<term>4.0.1: January 17, 2013</term>
<listitem>