Commit Graph

2568 Commits

Author SHA1 Message Date
Jay Berkenbilt 2e3664e1e4 Update qtest 1.9 and copy back into qpdf 2022-08-06 16:46:00 -04:00
Jay Berkenbilt 48dfae6443 TODO: rescope some items 2022-08-06 16:35:40 -04:00
Jay Berkenbilt 433be3718a Update ChangeLog for recent changes 2022-08-06 16:35:22 -04:00
Jay Berkenbilt 7084c3f715 Add comment clarifying getObject vs others 2022-08-06 14:25:12 -04:00
Jay Berkenbilt 3ec43f055a Fix parsing comment 2022-08-06 14:24:08 -04:00
Jay Berkenbilt a3037ca440
Merge pull request #739 from m-holger/getobject
Add QPDF::getObject to replace getObjectByObjGen and getObjectByID
2022-08-06 14:23:56 -04:00
Jay Berkenbilt 8095006668
Merge pull request #738 from m-holger/inline
Inline QPDFObjectHandle::getObjGen etc
2022-08-06 14:19:23 -04:00
m-holger 1553868c4a Add QPDF::getObject to replace getObjectByObjGen and getObjectByID
For consistency with similar methods, e.g. replaceObject.
2022-08-01 19:22:37 +01:00
m-holger 407b0766b8 Inline QPDFObjectHandle::getObjGen etc
Also, make QPDFObjectHandle::isIndirect const.
2022-08-01 15:08:48 +01:00
Jay Berkenbilt a9c0b02668 Fix code formatting for deprecated 2022-07-31 17:10:55 -04:00
Jay Berkenbilt 5d63730b93 Clean up documentation 2022-07-31 16:26:02 -04:00
Jay Berkenbilt 12d065c751 Provide a simpler QPDF::writeJSON 2022-07-31 16:23:17 -04:00
Jay Berkenbilt 13cf35ce2f Use calledgetallpages and pushedinheritedpageresources 2022-07-31 16:23:17 -04:00
Jay Berkenbilt 5f4224f31a Simplify --json-output
Now --json-output just changes defaults. Allow output file with --json.
2022-07-31 16:23:17 -04:00
Jay Berkenbilt 80acfc3826 Fix --json-help to take a version parameter 2022-07-31 16:23:17 -04:00
Jay Berkenbilt 69820847af Change the output of --json to use "qpdf" instead of "objects" 2022-07-31 15:17:01 -04:00
Jay Berkenbilt d01c4f8819 Change --json-output format
from "qpdf-v2" to "qpdf": [..., ...]
2022-07-31 10:32:55 -04:00
Jay Berkenbilt bb96499b61 Update docs and prepare QPDF::writeJSON for changes
Add additional parameters that will be needed to call QPDF::writeJSON
in partial mode.
2022-07-31 10:32:55 -04:00
Jay Berkenbilt 0e3d4cdc97 Fix/clarify meaning of depth parameter to json write methods 2022-07-31 10:32:55 -04:00
Jay Berkenbilt 8ad39a6c9a Spell check 2022-07-31 10:32:55 -04:00
Jay Berkenbilt 7654a39b27 Remove extraneous statement after raising an exception 2022-07-31 10:22:56 -04:00
Jay Berkenbilt 4feb10fdaf
Merge pull request #734 from m-holger/nullptr
Code tidy : replace 0 with nullptr or true
2022-07-31 08:33:45 -04:00
Jay Berkenbilt c9cc8cfd74 Remove lgtm banner
Over time, qpdf's grade has dropped on lgtm, but they are not
transparent about how grades are assigned. Fixing current alerts, in
my opinion, reduces clarity and maintainability of the code in the
name of performance in non-critical sections of code. Some analysis by
m-holger suggests that fixing some of the current alerts actually
degrades performance (slightly) while fixing others results in
insignificant improvements. The quality of qpdf can be measured in
other ways, such as its extensive test suite, documentation, and long
track record of reliably manipulating PDFs with high performance, few
bugs, and few external dependencies. The lgtm rating is a distraction
at best.
2022-07-31 08:21:53 -04:00
m-holger 073808aa50 Code tidy : replace 0 with nullptr or true 2022-07-26 13:40:13 +01:00
Jay Berkenbilt 4674c04cb8 JSON schema: support multi-element array validation 2022-07-24 16:44:51 -04:00
Jay Berkenbilt f8d1ab9462 JSON schema -- accept single item in place of array
When the schema wants a variable-length array, allow a single item as
well as allowing an array.
2022-07-24 16:17:03 -04:00
Jay Berkenbilt b3e6d445cb Tweak "AndGet" mutator functions again
Remove any ambiguity around whether old or new value is being
returned.
2022-07-24 15:42:23 -04:00
Jay Berkenbilt 3661f2749a Fix regex used for finding classes in the library 2022-07-24 15:41:02 -04:00
Jay Berkenbilt d27edd54c4 Add ChangeLog and release notes for previous contribution 2022-07-24 14:47:40 -04:00
Jay Berkenbilt 5696a507b6
Merge pull request #731 from m-holger/og_unparse
Tidy QPDFObjGen related code
2022-07-24 14:41:33 -04:00
m-holger 8b4afa428e Revert making second parameter of QPDFObjGen::QPDFObjGen optional
Also, change test for QPDFObjGen::isIndirect to obj != 0.
Delete comment from commit afd35f9.
2022-07-24 16:55:10 +01:00
m-holger afd35f9a30 Overload StreamDataProvider::provideStreamData
Use 'QPDFObjGen const&' instead of 'int, int' in signature.
2022-07-24 16:02:35 +01:00
m-holger 5d0469f1bc QPDFObjGen : tidy QPDFJob
Use QPDFObjGen::unparse where appropriate.
2022-07-24 16:02:35 +01:00
m-holger 4b73d057fb QPDFObjGen : tidy QPDF_Stream
Change method signatures to use QPDFObjGen.
Replace QPDF_Stream::objid and generation with QPDF_Stream::og.
2022-07-24 16:02:35 +01:00
m-holger f7978db1f6 QPDFObjGen : tidy QPDF private methods
Change method signatures to use QPDFObjGen.
Use QPDFObjGen methods where possible.
Remove redundant QPDF::objGenToIndirect.
2022-07-24 16:02:35 +01:00
m-holger 3404ca8ac8 QPDFObjGen : tidy QPDFObjectHandle private methods
Change method signature to use QPDFObjGen.
2022-07-24 15:59:49 +01:00
m-holger b123f79dfd Replace QPDFObjectHandle::objid and generation with QPDFObjectHandle::og 2022-07-24 15:59:49 +01:00
m-holger c0168cf88c QPPFObjGen : tidy QPDF::readObjectAtOffset
Change method signature to use QPDFObjGen.
2022-07-24 15:59:49 +01:00
m-holger 6ea17d1f0e Make second parameter of QPDFObjGen::QPDFObjGen optional 2022-07-24 15:41:48 +01:00
m-holger 21b8625f95 Add QPDFObjGen operator != 2022-07-24 15:41:48 +01:00
m-holger bc5f0fa20b Add method QPDFObjGen::isIndirect 2022-07-24 15:41:48 +01:00
m-holger eeb6162f76 Add optional parameter separator to QPDFObjGen::unparse
Also, revert inlining of unparse and operator << from commit 4c6640c in
order to avoid exposing QUtil.
2022-07-24 15:41:48 +01:00
Jay Berkenbilt 6f1041afb8 Clarify intent in readObjectAtOffset
Rather than using object id -1 to mean "don't care", use object ID 0,
and clarify the difference between that use and indication of a direct
object.
2022-07-24 09:40:11 -04:00
Jay Berkenbilt 9de29daba5 Format code after previous pull request 2022-07-16 15:29:18 -04:00
m-holger 4c6640cb45 Inline QPDFObjGen methods
ABI breaking change
2022-07-16 14:32:48 -04:00
Jay Berkenbilt a603c1e395 Run format-code 2022-06-27 12:50:35 -04:00
Jay Berkenbilt c810f0f21e TODO: QPDFObject parent idea 2022-06-27 12:49:46 -04:00
Jay Berkenbilt db8a02c20e Add ChangeLog for last commit 2022-06-27 12:49:46 -04:00
m-holger f0a8178091 Refactor QPDFObject creation and cloning
Move responsibility for creating shared pointers to objects and cloning from QPDFObjectHandle to QPDFObject.
2022-06-27 12:47:02 -04:00
m-holger 5aa8225f49 Refactor QPDFObjectTypeAccessor and QPDFObjectHandle::dereference 2022-06-27 10:39:04 -04:00