Add ChangeLog entries and release notes for previous work

This commit is contained in:
Jay Berkenbilt 2022-04-16 12:46:35 -04:00
parent cdd0b4fb7d
commit fc1bfe4a66
2 changed files with 71 additions and 34 deletions

View File

@ -1,3 +1,22 @@
2022-04-16 Jay Berkenbilt <ejb@ql.org>
* Perform code cleanup including some source-compatible but not
binary compatible changes to function signatures.
2022-04-09 Jay Berkenbilt <ejb@ql.org>
* Replace PointerHolder with std::shared_ptr through the QPDF API.
A backward-compatible interface is provided and enabled by default
with a warning that can be turned off. See "Smart Pointers" in the
"Design and Library Notes" section of the manual for information
including a detailed migration process to assist with migrating
code that uses the qpdf library.
2022-04-03 Jay Berkenbilt <ejb@ql.org>
* Add automatic code formatting with clang-format. See "Code
Formatting" in the "Contributing to qpdf" chapter of the manual.
2022-03-19 Jay Berkenbilt <ejb@ql.org>
* 10.6.3.0cmake1: unofficial release

View File

@ -6,47 +6,65 @@ Release Notes
For a detailed list of changes, please see the file
:file:`ChangeLog` in the source distribution.
10.6.3 + cmake: March 19, 2022
- This is an unofficial release and is marked as "pre-release" at
github. It is intended for developers and packagers who want to
test out the new build system.
11.0.0
- Replacement of ``PointerHolder`` with ``std::shared_ptr``
- The old autoconf-based build has been replaced with CMake. Version
3.16 or newer is required. For all the details, please read
:ref:`installing` and, if you package qpdf for a distribution,
:ref:`packaging`.
- The qpdf-specific ``PointerHolder`` smart pointer implementation
has now been completely replaced with ``std::shared_ptr``
through the qpdf API. Please see :ref:`smart-pointers` for
details about this change and a comprehensive migration plan.
Note that a backward-compatible ``PointerHolder`` class is
provided and is enabled by default. A warning is issued, but
this can be turned off by following the migration steps outlined
in the manual.
- For the most part, other than being familiar with generally how to
build things with cmake, what you need to know to convert your
build over is described in :ref:`autoconf-to-cmake`. Here are a
few changes in behavior to be aware of:
- Build replaced with cmake
- Example sources are installed by default in the documentation
directory.
- The old autoconf-based build has been replaced with CMake. Version
3.16 or newer is required. For all the details, please read
:ref:`installing` and, if you package qpdf for a distribution,
:ref:`packaging`.
- The configure options to enable image comparison and large file
tests have been replaced by environment variables. The old
options set environment variables behind the scenes. Before, to
skip image tests, you had to set
``QPDF_SKIP_TEST_COMPARE_IMAGES=1``, which was done by default.
Now these are off by default, and you have to set
``QPDF_TEST_COMPARE_IMAGES=1`` to enable them.
- For the most part, other than being familiar with generally how to
build things with cmake, what you need to know to convert your
build over is described in :ref:`autoconf-to-cmake`. Here are a
few changes in behavior to be aware of:
- In the default configuration, the native crypto provider is only
selected when explicitly requested or when there are no other
options. See :ref:`crypto.build` for a detailed discussion.
- Example sources are installed by default in the documentation
directory.
- Windows external libraries are detected by default if the
:file:`external-libraries` directory is found. Static libraries
for zlib, libjpeg, and openssl are provided as described in
:file:`README-windows.md`. They are only compatible with
non-debug builds.
- The configure options to enable image comparison and large file
tests have been replaced by environment variables. The old
options set environment variables behind the scenes. Before, to
skip image tests, you had to set
``QPDF_SKIP_TEST_COMPARE_IMAGES=1``, which was done by default.
Now these are off by default, and you have to set
``QPDF_TEST_COMPARE_IMAGES=1`` to enable them.
- In the default configuration, the native crypto provider is only
selected when explicitly requested or when there are no other
options. See :ref:`crypto.build` for a detailed discussion.
- Windows external libraries are detected by default if the
:file:`external-libraries` directory is found. Static libraries
for zlib, libjpeg, and openssl are provided as described in
:file:`README-windows.md`. They are only compatible with
non-debug builds.
- A new directory called ``pkg-tests`` has been added which
contains short shell scripts that can be used to smoke test an
installed qpdf package. These are used by the debian
``autopkgtest`` framework but can be used by others. See
:file:`pkg-test/README.md` for details.
- Other changes
- A new chapter on contributing to qpdf has been added to the
documentation. See :ref:`contributing`.
- The qpdf source code is now formatted automatically with
``clang-format``. See :ref:`code-formatting` for information.
- A new directory called ``pkg-tests`` has been added which
contains short shell scripts that can be used to smoke test an
installed qpdf package. These are used by the debian
``autopkgtest`` framework but can be used by others. See
:file:`pkg-test/README.md` for details.
10.6.3: March 8, 2022
- Announcement of upcoming change: