Update ChangeLog and release notes

This commit is contained in:
Jay Berkenbilt 2023-07-09 09:51:18 -04:00
parent 2c2436b23c
commit 2dc2633872
3 changed files with 72 additions and 1 deletions

View File

@ -1,3 +1,42 @@
2023-07-09 Jay Berkenbilt <ejb@ql.org>
* This release consists entirely of changes made by M. Holger.
Mostly this is changes to the private API, performance
enhancements, code cleanup, and reformatting to 100 columns
instead of 80. For qpdf development, we are starting to use
JetBrains CLion, so a lot of the changes are moving us toward a
cleaner development experience in that environment.
2023-06-15 Jay Berkenbilt <ejb@ql.org>
* Bug fix: when a the same page is copied multiple times, copy
the annotations rather than having multiple pages share an
annotation object. Thanks to M. Holger for the fix. Fixes #600.
2023-06-14 Jay Berkenbilt <ejb@ql.org>
* Add "FUTURE" build option for enabling experimental APIs. Do not
package qpdf built with the FUTURE option as there are no binary
compatibility or even source compatibility guarantees. The option
is intended for developers who want to ensure that future
potentially breaking changes are compatible with their code or
provide feedback on upcoming changes. At present, the only feature
enabled by FUTURE is a move constructor for QPDFObjectHandle.
While this shouldn't break any code, it would change details about
how many copies of a specific QPDFObjectHandle were in existence,
so it could potentially break code that was relying on internal
shared pointer reference counts. Thanks to M. Holger for the idea
and contribution.
2023-05-25 Jay Berkenbilt <ejb@ql.org>
* Add new method Buffer::copy and deprecate Buffer copy
constructor and assignment operator. Buffer copy operations are
expensive as they always involve copying the buffer content. Use
"buffer2 = buffer1.copy();" or "Buffer buffer2{buffer1.copy()};"
to make it explicit that copying is intended. This change was
contributed by M. Holger.
2023-05-21 Jay Berkenbilt <ejb@ql.org>
* 11.4.0: release

View File

@ -285,7 +285,7 @@ FUTURE
installed qpdf libraries. Set this if you want to test your code
with proposed QPDF API changes and provide feedback prior to the
inclusion of those changes in a release. Packagers should never
distribute backages built with this option.
distribute packages built with this option.
QTEST_COLOR
Turn this on or off to control whether qtest uses color in its

View File

@ -27,8 +27,40 @@ Planned changes for future 12.x (subject to change):
it's possible that the new qpdf-provided conversion may override
your conversion.
- ``Buffer`` copy constructor and assignment operator will be
removed. ``Buffer`` copy operations are expensive as they always
involve copying the buffer content. Use ``buffer2 =
buffer1.copy();`` or ``Buffer buffer2{buffer1.copy()};`` to make
it explicit that copying is intended.
.. x.y.z: not yet released
11.5.0: July 9, 2023
- Bug Fixes
- When copying the same page more than once, ensure that
annotations are copied and not shared among multiple pages.
- Build Changes
- Add new ``FUTURE`` build option. This option enables you to test
code against proposed changes to qpdf's API. See
:ref:`build-options` for details. Packagers: do not package qpdf
with the ``FUTURE`` option enabled as there are no API/ABI
compatibility guarantees when the option is turned on.
- Library Enhancements
- Add new method ``Buffer::copy`` and deprecate ``Buffer`` copy
constructor and assignment operator. ``Buffer`` copies are
expensive and should be done explicitly.
- Miscellaneous Changes
- The source code was reformatted to 100 columns instead of 80.
Numerous cosmetic changes and changes suggested by clang-tidy
were made. M. Holger did all the hard work.
11.4.0: May 21, 2023
- CLI Enhancements