aboutsummaryrefslogtreecommitdiffstats
path: root/libqpdf/QPDFJob_config.cc
AgeCommit message (Collapse)Author
2022-09-01Rename --report-mem-usage to --report-memory-usageJay Berkenbilt
Avd xcsv brvtns.
2022-08-31Add --report-mem-usage option for debugging/testingJay Berkenbilt
2022-07-31Simplify --json-outputJay Berkenbilt
Now --json-output just changes defaults. Allow output file with --json.
2022-07-31Change the output of --json to use "qpdf" instead of "objects"Jay Berkenbilt
2022-07-31Update docs and prepare QPDF::writeJSON for changesJay Berkenbilt
Add additional parameters that will be needed to call QPDF::writeJSON in partial mode.
2022-07-26Code tidy : replace 0 with nullptr or truem-holger
2022-06-18Use the default logger for other writes to stdout/stderrJay Berkenbilt
When there is no context for writing output or error messages, use the default logger.
2022-05-21Change default decode level to "none" with --json-outputJay Berkenbilt
2022-05-20Make version default to latest for --json-output (like --json)Jay Berkenbilt
2022-05-20Major rework -- see long commentsJay Berkenbilt
* Replace --create-from-json=file with --json-input, which causes the regular input to be treated as json. * Eliminate --to-json * In --json=2, bring back "objects" and eliminate "objectinfo". Stream data is never present. * In --json-output=2, write "qpdf-v2" with "objects" and include stream data.
2022-05-16Add --create-from-json and --update-from-json argumentsJay Berkenbilt
Also add stubs for top-level QPDF methods (createFromJSON, updateFromJSON)
2022-05-08Add --to-json optionJay Berkenbilt
2022-05-08Implement JSON v2 outputJay Berkenbilt
2022-05-07Prepare code for JSON v2Jay Berkenbilt
Update getJSON() methods and calls to them
2022-05-07Add --test-json-schema command-line optionJay Berkenbilt
2022-04-16Change default --json from 1 to latestJay Berkenbilt
2022-04-10Fix typo in error messageJay 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-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-04Add a blank line after the first header included in each sourceJay Berkenbilt
2022-02-04PointerHolder: deprecate getPointer() and getRefcount()Jay Berkenbilt
Use get() and use_count() instead. Add #define NO_POINTERHOLDER_DEPRECATION to remove deprecation markers for these only. This commit also removes all deprecated PointerHolder API calls from qpdf's code except in PointerHolder's test suite, which must continue to test the deprecated APIs.
2022-02-01Make QPDFArgParser accept const argvJay Berkenbilt
This makes it much more convention to use the initializeFromArgv functions since you can use string literals.
2022-02-01QPDFJob: documentationJay Berkenbilt
2022-02-01generate_auto_job: generate overloaded config decls for optionalJay Berkenbilt
For optional parameter/choices, generate an overloaded config method that takes no arguments. This makes it possible to convert from a bare argument to one that takes an optional parameter without breaking binary compatibility.
2022-02-01QPDFJob json: make bare arguments expect the empty stringJay Berkenbilt
Changing from bool requiring true to string requiring the empty string is more consistent with the CLI and makes it possible to add an optional parameter or choices later without breaking compatibility.
2022-01-31Add optional version to --jsonJay Berkenbilt
2022-01-31Remove outdated commentsJay Berkenbilt
2022-01-31Change filename or path to file in json and QPDFJobJay Berkenbilt
Use "file" consistently for specifying a file path. We use "filename" when adding attachments for a completely different purpose.
2022-01-31QPDFJob: partial mode for initializeFromJsonJay Berkenbilt
2022-01-31Fix typo in error messageJay Berkenbilt
2022-01-31QPDFJob: add checkConfiguration to ConfigJay Berkenbilt
2022-01-30Use QPDFUsage exception for cli, json, and QPDFJob errorsJay Berkenbilt
2022-01-30QPDFJob: use pointers instead of references for ConfigJay Berkenbilt
Why? The main methods that create them return smart pointers so that users can initialize them when needed, which you can't do with references. Returning pointers instead of references makes for a more uniform interface.
2022-01-30QPDFJob: use manually named end functions for Config classesJay Berkenbilt
Use named functions rather than just end() for clarity.
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: move input/output handling into configJay 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 encryption handlersJay Berkenbilt
2022-01-30QPDFJob: convert under/overlay and rotateJay Berkenbilt
2022-01-30QPDFJob: move more top-level trivial handlers into configJay Berkenbilt
2022-01-30QPDFJob: convert pagesJay Berkenbilt
2022-01-30Add QPDFJob::ConfigError exceptionJay Berkenbilt
2022-01-30QPDFJob: convert AddAttachment handlersJay Berkenbilt
2022-01-30QPDFJob: convert password in two tablesJay Berkenbilt
2022-01-30QPDFJob: convert a flag in other than the main tableJay Berkenbilt
2022-01-30QPDFJob: convert trivial functions to config APIJay Berkenbilt
2022-01-30QPDFJob: begin configuration API with verboseJay Berkenbilt
2022-01-30QPDFJob: start real APIJay Berkenbilt
Create QPDFJob_options.cc to hold API implementation functions. Reorganize a little in preparation for moving public member variables private and creating the real QPDFJob API that will be used by callers as well as the argv/json initialization methods.