Age | Commit message (Collapse) | Author | |
---|---|---|---|
2022-06-25 | Code tidy: QPDFJob::doJSONPageLabels | m-holger | |
Remove redundant variables pages and next. | |||
2022-06-19 | Use Pl_Function in qpdflogger C API implementation | Jay Berkenbilt | |
2022-06-19 | Add Pl_Function -- a generic function pipeline | Jay Berkenbilt | |
2022-06-19 | Add qpdfjob_register_progress_reporter | Jay Berkenbilt | |
2022-06-19 | Add QPDFJob::registerProgressReporter | Jay Berkenbilt | |
2022-06-19 | Move C-based ProgressReporter helper into QPDFWriter | Jay Berkenbilt | |
2022-06-19 | Add C API to QPDFLogger | Jay Berkenbilt | |
2022-06-19 | Add more flexible funtions to qpdfjob C API | Jay Berkenbilt | |
2022-06-18 | Use the default logger for other writes to stdout/stderr | Jay Berkenbilt | |
When there is no context for writing output or error messages, use the default logger. | |||
2022-06-18 | Use "save" logger when saving data to standard output | Jay Berkenbilt | |
This includes the output PDF, streams from --show-object and attachments from --save-attachment. This also enables --verbose and --progress to work with saving to stdout. | |||
2022-06-18 | QPDF, QPDFJob: use QPDFLogger instead of custom output streams | Jay Berkenbilt | |
2022-06-18 | Add and test QPDFLogger class | Jay Berkenbilt | |
2022-06-18 | Add integer types to Pipeline::operator<< | Jay Berkenbilt | |
2022-06-06 | Code tidy: remove redundant variable in QPDF::writeJSON | m-holger | |
2022-05-31 | Update documentation for qpdf JSON v2 | Jay Berkenbilt | |
2022-05-31 | In json mode, reveal recovered user password when otherwise unavailable | Jay Berkenbilt | |
2022-05-31 | Add additional information when listing attachments | Jay Berkenbilt | |
2022-05-31 | Add conversions to ISO-8601 date format | Jay Berkenbilt | |
2022-05-21 | Change default decode level to "none" with --json-output | Jay Berkenbilt | |
2022-05-21 | Allow empty b: binary JSON strings | Jay Berkenbilt | |
2022-05-21 | Format code | Jay Berkenbilt | |
2022-05-21 | Code clean up: use range-style for loops wherever possible | m-holger | |
Remove variables obsoleted by commit 4f24617. | |||
2022-05-21 | JSON: Fix large file support | Jay Berkenbilt | |
2022-05-21 | Replace std::regex with validators for better performance | Jay Berkenbilt | |
2022-05-20 | Exercise object description in tests | Jay Berkenbilt | |
2022-05-20 | Add test for bad data and bad datafile | Jay Berkenbilt | |
2022-05-20 | Test --update-from-json | Jay Berkenbilt | |
2022-05-20 | Bug fix: don't clobber stream length with replaceDict | Jay Berkenbilt | |
2022-05-20 | JSON: detect duplicate dictionary keys while parsing | Jay Berkenbilt | |
2022-05-20 | Test (and fix) handling of dangling references | Jay Berkenbilt | |
2022-05-20 | Bug fix: isReserved() true for indirect reference to reserved object | Jay Berkenbilt | |
2022-05-20 | Explicitly test ignoring unknown keys in JSON input | Jay Berkenbilt | |
2022-05-20 | Make version default to latest for --json-output (like --json) | Jay Berkenbilt | |
2022-05-20 | JSON fix: correctly parse UTF-16 surrogate pairs | Jay Berkenbilt | |
2022-05-20 | Major rework -- see long comments | Jay 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-20 | Add QUtil::FileCloser to the public API | Jay Berkenbilt | |
2022-05-20 | Support stream data -- not tested | Jay Berkenbilt | |
There are no automated tests yet, but committing work so far in preparation for some refactoring. | |||
2022-05-20 | replaceStreamData: accept uninitialized filter/decode_parms | Jay Berkenbilt | |
These mean to leave the original values alone. This is needed for reconstructing streams from JSON given that the stream data and stream dictionary may appear in any order in the JSON. | |||
2022-05-20 | Back out fluent QPDFObjectHandle methods. Keep the andGet methods. | Jay Berkenbilt | |
I decided these were confusing and inconsistent with how JSON works. They muddle the API rather than improving it. | |||
2022-05-20 | Parse objects; stream data is not yet handled | Jay Berkenbilt | |
2022-05-20 | Add private methods for reserving specific objects | Jay Berkenbilt | |
2022-05-16 | Implement top-level qpdf json parsing | Jay Berkenbilt | |
2022-05-16 | Add scaffolding for QPDF JSON reactor | Jay Berkenbilt | |
2022-05-16 | Add --create-from-json and --update-from-json arguments | Jay Berkenbilt | |
Also add stubs for top-level QPDF methods (createFromJSON, updateFromJSON) | |||
2022-05-16 | Remove offset from missing /Root error | Jay Berkenbilt | |
The last offset is irrelevant to not being able to find /Root. | |||
2022-05-16 | Improve handling of replacing stream data with empty strings | Jay Berkenbilt | |
When an empty string was passed to replaceStreamData, the code was passing a null pointer to memcpy. Since a 0 size was also passed, this was harmless, but it triggers sanitizer errors. The code properly handles a null pointer as the buffer in other places. | |||
2022-05-16 | Add QUtil::is_long_long | Jay Berkenbilt | |
2022-05-14 | JSON reactor: improve handling of nested containers | Jay Berkenbilt | |
Call the parent container's item method before calling the child item's start method so we can easily know the current nesting level when nested items are added. | |||
2022-05-08 | Add maxobjectid to JSON | Jay Berkenbilt | |
2022-05-08 | Add --to-json option | Jay Berkenbilt | |