aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2022-09-13Mention change of tagging convention (fixes #772)Jay Berkenbilt
2022-09-13Remove explicit direct object check from getObjectJay Berkenbilt
An indirect object reference to 0, 0 is invalid. If it appears in the file or is parsed from a string, the parser catches it. This check would only be useful for someone explicitly calling getObject with 0, 0, and that would trigger an error during resolve().
2022-09-13Remove redundant function callsJay Berkenbilt
2022-09-13Improve efficiency of ResolveRecorderJay Berkenbilt
Removing an element from a set with iterator is constant time, and std::set specifies that other operations on the set do not invalidate existing iterators.
2022-09-13Fix up a few commentsJay Berkenbilt
2022-09-12Bump version to 11.1.0Jay Berkenbilt
Some new symbols were exported.
2022-09-12Add some missing QPDF_DLL markersJay Berkenbilt
These markers are being added for nested classes that are already marked with QPDF_DLL_CLASS. They don't make any different on Linux, but they matter on Windows.
2022-09-12Add default move constructor/assignment to QPDFObjectHandlem-holger
2022-09-12Bump version to 11.0.1Jay Berkenbilt
2022-09-12Remove obsolete LL_FMT check from build (fixes #768)Jay Berkenbilt
This was broken for cross-compilation and has probably been unnecessary for several years now. Also fix extraneous whitespace in related some tests.
2022-09-1011.0.0: Fix typos in comments in pkg-testv11.0.011.0Jay Berkenbilt
2022-09-10Prepare 11.0.0 releaseJay Berkenbilt
2022-09-10Tweak release instructionsJay Berkenbilt
2022-09-10Strengthen pkg-testJay Berkenbilt
* Define POINTERHOLDER_TRANSITION * Make sure we are getting the intended version of qpdf
2022-09-10Documentation fixJay Berkenbilt
Remove paragraph about traversal during destruction since this is still necessary with the new implementation.
2022-09-10Change QPDFObjectHandle == to isSameObjectAsJay Berkenbilt
Replace operator== and operator!=, which were testing for the same underlying object, with isSameObjectAs. This change was motivated by the fact that pikepdf internally had its own operator== method for QPDFObjectHandle that did structural comparison. I backed out qpdf's operator== as a courtesy to pikepdf (in my own testing) but also because I think people might naturally assume that operator== does a structural comparison, and isSameObjectAs is clearer in its intent.
2022-09-10Clean up the Design and Library Notes chapter of the manualJay Berkenbilt
2022-09-09Clean up release notes for qpdf 11Jay Berkenbilt
2022-09-09Add C API functions for using custom loggersJay Berkenbilt
Expose functions to the C API to create new loggers and to setLogger and getLogger for QPDF and QPDFJob.
2022-09-09Make QPDFLogger() private and provide create methodJay Berkenbilt
2022-09-09Fix tests with GNU grep 3.8Andreas Stieger
GNU grep 3.8 started to emit warnings when invoking egrep. Convert all calls to grep -E.
2022-09-09Fix doc typoJay Berkenbilt
2022-09-09Add JSON v2 support to C APIJay Berkenbilt
2022-09-08Switch user-supplied functions in C API to return intJay Berkenbilt
2022-09-08Add ability to initialize Pl_Function with a C-style functionJay Berkenbilt
2022-09-08Fix TODO notes on multiple direct object parent issueJay Berkenbilt
2022-09-08Rename QPDFValueProxy back to QPDFObjectJay Berkenbilt
QPDFValueProxy wasn't a good name for it. We decided the evil of having the header file be named QPDFObject_private.hh was less than the evil of having the class be named something other than what it should have been named.
2022-09-08Rename QPDFValueProxy.hh and QPDFValueProxy.ccJay Berkenbilt
Preparing to change the class name back to QPDFObject
2022-09-08Change reset to disconnect and clarify commentsJay Berkenbilt
I decided that it's actually fine to copy a direct object to another QPDF. Even if we eventually prevent a QPDFObject from having multiple parents, this could happen if an object is moved.
2022-09-08Create a special "destroyed" type rather than using nullJay Berkenbilt
When a QPDF is destroyed, changing indirect objects to direct nulls makes them effectively disappear silently when they sneak into other places. Instead, we should treat this as an error. Adding a destroyed object type makes this possible.
2022-09-08Clear owning QPDF information for all objects, not just indirectJay Berkenbilt
2022-09-08Update QPDFObject with commentJay Berkenbilt
Also, since it's just there for compatibility, we don't need to add new object types to it.
2022-09-08Remove superfluous call to resetObjGenJay Berkenbilt
2022-09-08Remove unneeded owning_qpdf from QPDFValueJay Berkenbilt
The qpdf member was already sufficient. Removing this actually fixed a few pre-existing issues around detecting foreign ownership and allowing certain conditions to be warnings rather than exceptions.
2022-09-07Revert getOwningQPDF, and add getQPDF that returns a referenceJay Berkenbilt
2022-09-07Fix typoJay Berkenbilt
2022-09-07Remove resolved TODO commentJay Berkenbilt
2022-09-07Clarify and improve QPDFPageObjectHelper::get*Box methodsJay Berkenbilt
Add copy_if_fallback and explain how it differs from copy_if_shared.
2022-09-07Implement QPDFObjectHandle equalityJay Berkenbilt
2022-09-06Remove lgtm since it's getting shut downJay Berkenbilt
It might be worth enabling code scanning at GitHub, which is a superset of lgtm.
2022-09-06Support --show-encryption without a valid password (fixes #598)Jay Berkenbilt
2022-09-06Update spelling dictionaryJay Berkenbilt
2022-09-06Validate RUNPATH of standalone Linux binaries in CIJay Berkenbilt
2022-09-06Move multiple direct owner notes in TODOJay Berkenbilt
2022-09-06Clarify comments for QPDFObjectHandle::getOwningQPDFJay Berkenbilt
2022-09-06Update documentation to clarify some limitations of qpdf JSONJay Berkenbilt
2022-09-06Update internals documentation to reflect QPDFObject splitJay Berkenbilt
2022-09-06Re-introduce QPDFObject.hh as deprecatedJay Berkenbilt
* Just removing a header file would cause build errors with no hint as to what happened. This way, people get a warning rather than error for the life of qpdf 11, and the warning tells them what to do. * This avoids build surprises resulting from having two versions of QPDF headers installed at once. If you were building code out of a checkout of qpdf but had an older version installed on your system, if your code included <qpdf/QPDFObject.hh>, everything would work, but then your code would break without QPDFObject.hh later.
2022-09-06Rename QPDFObject -> QPDFValueProxyJay Berkenbilt
This is in preparation for restoring a QPDFObject.hh to ease the transition on qpdf_object_type_e. This commit was created by * Renaming QPDFObject.cc and QPDFObject.hh * Replacing QPDFObject\b with QPDFValueProxy (where \b is word boundary) * Running format-code * Manually resorting files in libqpdf/CMakeLists.txt * Manually refilling the comment in QPDF.hh near class Resolver
2022-09-06TODO note about shared_ptr vs. unique_ptrJay Berkenbilt