From a59e7ac7ec1ab018bf28518c065d8c86773db339 Mon Sep 17 00:00:00 2001 From: Jay Berkenbilt Date: Fri, 2 Sep 2022 08:53:27 -0400 Subject: Disable copying/assigning to QPDF objects, add QPDF::create() --- manual/release-notes.rst | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) (limited to 'manual/release-notes.rst') diff --git a/manual/release-notes.rst b/manual/release-notes.rst index e3e65d88..abc3f42a 100644 --- a/manual/release-notes.rst +++ b/manual/release-notes.rst @@ -139,11 +139,18 @@ For a detailed list of changes, please see the file - See :ref:`breaking-crypto-api` for specific details, and see :ref:`weak-crypto` for a general discussion. - - QPDFObjectHandle::warnIfPossible no longer takes an optional + - ``QPDFObjectHandle::warnIfPossible`` no longer takes an optional argument to throw an exception if there is no description. If there is no description, it writes to the default logger's error stream. + - ``QPDF`` objects can no longer be copied or assigned to. It has + never been safe to do this because of assumptions made by + library code. Now it is prevented by the API. If you run into + trouble, use ``QPDF::create()`` to create ``QPDF`` shared + pointers (or create them in some other way if you need backward + compatibility with older qpdf versions). + - CLI Enhancements - ``qpdf --list-attachments --verbose`` include some additional @@ -196,6 +203,9 @@ For a detailed list of changes, please see the file generally not happen for correct code, but at least the situation is detectible now. + - Add new factory method ``QPDF::create()`` that returns a + ``std::shared_ptr``. + - Add new ``Pipeline`` methods to reduce the amount of casting that is needed: -- cgit v1.2.3-54-g00ecf