aboutsummaryrefslogtreecommitdiffstats
path: root/libqpdf/QPDFJob.cc
AgeCommit message (Collapse)Author
2022-05-01Spell checkJay Berkenbilt
2022-04-30Mark weak encryption with API changes (fixes #576)Jay Berkenbilt
2022-04-30Using insecure crytpo from the CLI is now an error by defaultJay Berkenbilt
2022-04-30Code clean up: use range-style for loops wherever possibleJay Berkenbilt
Where not possible, use "auto" to get the iterator type. Editorial note: I have avoid this change for a long time because of not wanting to make gratuitous changes to version history, which can obscure when certain changes were made, but with having recently touched every single file to apply automatic code formatting and with making several broad changes to the API, I decided it was time to take the plunge and get rid of the older (pre-C++11) verbose iterator syntax. The new code is just easier to read and understand, and in many cases, it will be more effecient as fewer temporary copies are being made. m-holger, if you're reading, you can see that I've finally come around. :-)
2022-04-30Formatting: remove space in range-style for loopsJay Berkenbilt
Change .clang-format and commit automated changes from a fresh run of format-code
2022-04-30Use replaceKeyAndGet in a few places in existing codeJay Berkenbilt
2022-04-24Add new QPDF::warn that takes most of QPDFExc's argumentsJay Berkenbilt
2022-04-18QPDFJob: pass capture output streams through to underlying QPDFJay Berkenbilt
2022-04-16Use = default and = delete where possible in classesJay Berkenbilt
2022-04-09Replace PointerHolder with std::shared_ptr in library sources onlyJay Berkenbilt
(patrepl and cleanpatch are my own utilities) patrepl s/PointerHolder/std::shared_ptr/g {include,libqpdf}/qpdf/*.hh patrepl s/PointerHolder/std::shared_ptr/g libqpdf/*.cc patrepl s/make_pointer_holder/std::make_shared/g libqpdf/*.cc patrepl s/make_array_pointer_holder/QUtil::make_shared_array/g libqpdf/*.cc patrepl s,qpdf/std::shared_ptr,qpdf/PointerHolder, **/*.cc **/*.hh git restore include/qpdf/PointerHolder.hh cleanpatch ./format-code
2022-04-05Update some code manually to get better formatting resultsJay Berkenbilt
Add comments to force line breaks, parenthesize function arguments that are contatenated strings, etc. -- these kinds of changes improve clang-format's results and also cause emacs cc-mode to match clang-format. After this type of change, most of the time, when clang-format and emacs disagree, clang-format is better.
2022-04-04Programmatically apply new formatting to codeJay Berkenbilt
Run this: for i in **/*.cc **/*.c **/*.h **/*.hh; do clang-format < $i >| $i.new && mv $i.new $i done
2022-02-26Move default values to constexprJay Berkenbilt
This was mainly to get comments about defaults out of constructor initializer lists where their fragile when a code formatter is being used.
2022-02-11Fix tests for Form XObjectsm-holger
Remove test for type == /XObject in QPDFObjectHandle::isFormXObject as type value is optional (as per spec 8.10.2). Replace code to test for /Form in QPDFJob::shouldRemoveUnreferencedResources with a call to isFormXObject.
2022-02-08Only update output version from files used as inputJay Berkenbilt
If we're opening a PDF file to copy its encryption information or attachments, its version doesn't need to influence the output version.
2022-02-08Preserve input PDF version on pages/split-pages (fixes #610)Jay Berkenbilt
2022-02-07Update for clean compile with POINTERHOLDER_TRANSITION=2Jay Berkenbilt
2022-02-05Add operator ""_qpdf for creating QPDFObjectHandle literalsJay Berkenbilt
2022-02-05Improve use of std::unique_ptrJay Berkenbilt
* Use unique_ptr in place of shared_ptr in some cases * unique_ptr for arrays does not require a custom deleter * use std::make_unique (c++14) where possible
2022-02-04Fix --check-linearization of non-linearized files (fixes #615)m-holger
2022-02-01Move QTC::TC for qpdf to QPDFJobJay Berkenbilt
All the coverage cases that used to be in qpdf.cc are now in QPDFJob*.cc. It doesn't really matter, but better to follow the convention of starting with the class that includes the coverage call.
2022-02-01Move more code from qpdf.cc into QPDFJobJay Berkenbilt
2022-02-01QPDFJob: documentationJay Berkenbilt
2022-01-31Add optional version to --jsonJay Berkenbilt
2022-01-31QPDFJob: rename function that returns job schemaJay Berkenbilt
2022-01-30Use QPDFUsage exception for cli, json, and QPDFJob errorsJay Berkenbilt
2022-01-30QPDFJob: move placeholder json to a separate source fileJay Berkenbilt
2022-01-30QPDFJob: make remaining members privateJay Berkenbilt
2022-01-30Minor cleanupJay Berkenbilt
2022-01-30QPDFJob: move private members into MembersJay Berkenbilt
2022-01-30QPDFJob: eliminate most access to QPDFJob members from ArgParserJay Berkenbilt
All that's left now is input and output handling.
2022-01-30QPDFJob: convert under/overlay and rotateJay Berkenbilt
2022-01-30QPDFJob: move some helpers from ArgParser to QPDFJobJay Berkenbilt
2022-01-30Add QPDFJob::ConfigError exceptionJay Berkenbilt
2022-01-30QPDFJob: convert a flag in other than the main tableJay Berkenbilt
2022-01-30QPDFJob: begin configuration API with verboseJay Berkenbilt
2022-01-30QPDFJob: TRUE -> trueJay Berkenbilt
2022-01-30Move doFinalChecks to QPDFJob::checkConfigurationJay Berkenbilt
2022-01-30QPDFJob: make createsOutput callable before run()Jay Berkenbilt
2022-01-30QPDFJob: convert Under/Overlay to use shared pointersJay Berkenbilt
2022-01-30QPDFJob: convert Under/Overlay ranges to stringsJay Berkenbilt
2022-01-30QPDFJob: convert PageSpec to used shared pointerJay Berkenbilt
2022-01-30QPDFJob: convert outfilename to shared pointerJay Berkenbilt
2022-01-30QPDFJob: convert infilename to shared pointerJay Berkenbilt
2022-01-30QPDFJob: convert encryption_file args to shared pointersJay Berkenbilt
2022-01-30QPDFJob: convert password to shared pointerJay Berkenbilt
2022-01-30QPDFJob: use std::shared_ptr over PointerHolder where possibleJay Berkenbilt
Also fix QPDFArgParser
2022-01-30Fix json schema for objects to include dictionary keyJay Berkenbilt
2022-01-30Use JSON::parse to initialize schema for json modeJay Berkenbilt
2022-01-30Fix comment on duplicated top-level json keysJay Berkenbilt