aboutsummaryrefslogtreecommitdiffstats
path: root/libqpdf/QPDFJob_argv.cc
AgeCommit message (Collapse)Author
2022-07-31Fix --json-help to take a version parameterJay Berkenbilt
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-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-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-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-15Ignore -- at the top level arg parser (fixes #652)Jay Berkenbilt
This was unintended behavior that was added back for backward compatibility. It is intentionally undocumented.
2022-02-04Update copyright for 2022Jay Berkenbilt
2022-02-04Add a blank line after the first header included in each sourceJay Berkenbilt
2022-02-01QPDFJob: let initializeFromArgv just take argv, not argcJay Berkenbilt
Let argv be a null-terminated array. There is already code that assumes this, and it makes it easier to construct the arguments.
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-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-01Clean up documentation and help around json optionsJay 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: rename function that returns job schemaJay Berkenbilt
2022-01-31QPDFJob: add checkConfiguration to ConfigJay Berkenbilt
2022-01-31QPDFJob: prepare for automatically generated json handlersJay Berkenbilt
2022-01-30Use QPDFUsage exception for cli, json, and QPDFJob errorsJay Berkenbilt
2022-01-30QPDFJob: use manually named end functions for Config classesJay Berkenbilt
Use named functions rather than just end() for clarity.
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: use config API in place-holder jsonJay 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 some helpers from ArgParser to QPDFJobJay Berkenbilt
2022-01-30QPDFJob: move more top-level trivial handlers into configJay Berkenbilt
2022-01-30QPDFJob: convert pagesJay 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: start changing generation for trivial config handlersJay Berkenbilt
2022-01-30QPDFJob: convert trivial functions to config APIJay Berkenbilt
2022-01-30QPDFJob: begin configuration API with verboseJay Berkenbilt
2022-01-30Mark trivial arg functionsJay Berkenbilt
2022-01-30Move doFinalChecks to QPDFJob::checkConfigurationJay Berkenbilt
2022-01-30QPDFJob: placeholder for initializeFromJsonJay Berkenbilt
2022-01-30QPDFJob: allocate QPDFArgParser on stackJay Berkenbilt
The previous commits have removed all references to memory from QPDFArgParser from QPDFJob. This commit removes the constraint that QPDFArgParser remain in scope. This is a prerequisite to allowing JSON as an alternative way to initialize QPDFJob and to initialize it directly using a public API.
2022-01-30QPDFJob: convert Under/Overlay to use shared pointersJay 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-30Document how to add a command-line argumentJay Berkenbilt
2022-01-30Generate help content from manualJay Berkenbilt
This is a massive rewrite of the help text and cli.rst section of the manual. All command-line flags now have their own help and are specifically index. qpdf --help is completely redone.
2022-01-30QPDFArgParser: handle optional choices including helpJay Berkenbilt
Handle optional choices in addition to required choices. Refactor the way help options are added to completion to make it work with optional help choices.
2022-01-30QPDFJob increment: generate option table initializationJay Berkenbilt