Age | Commit message (Collapse) | Author | |
---|---|---|---|
2022-09-05 | Take advantage of unique_ptr and move construction for Buffer | James R. Barlow | |
Since Buffer has always implemented its copy constructor with a deep copy, its Members object will never have multiple owners. Change to unique_ptr. Also implement move constructors for Buffer, since there may be cases where a deep copy is not needed. | |||
2022-08-31 | Add QUtil::get_max_memory_usage for testing | Jay Berkenbilt | |
2022-07-24 | JSON schema: support multi-element array validation | Jay Berkenbilt | |
2022-07-24 | JSON schema -- accept single item in place of array | Jay Berkenbilt | |
When the schema wants a variable-length array, allow a single item as well as allowing an array. | |||
2022-06-25 | Reformat code | Jay Berkenbilt | |
2022-06-19 | Add Pl_Function -- a generic function pipeline | Jay Berkenbilt | |
2022-06-19 | Add C API to QPDFLogger | Jay Berkenbilt | |
2022-06-18 | Add and test QPDFLogger class | Jay Berkenbilt | |
2022-05-31 | Add conversions to ISO-8601 date format | Jay Berkenbilt | |
2022-05-21 | Format code | Jay Berkenbilt | |
2022-05-21 | Replace std::regex with validators for better performance | Jay Berkenbilt | |
2022-05-20 | JSON: detect duplicate dictionary keys while parsing | Jay Berkenbilt | |
2022-05-20 | JSON fix: correctly parse UTF-16 surrogate pairs | Jay Berkenbilt | |
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-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-07 | Prepare code for JSON v2 | Jay Berkenbilt | |
Update getJSON() methods and calls to them | |||
2022-05-07 | JSON: add blob type that generates base64-encoded binary data | Jay Berkenbilt | |
2022-05-04 | Change JSON parser to parse from an InputSource | Jay Berkenbilt | |
2022-05-04 | Add new FileInputSource constructors | Jay Berkenbilt | |
2022-05-04 | Add new Pl_OStream Pipeline | Jay Berkenbilt | |
2022-05-04 | Make Pipeline::write take an unsigned char const* (API change) | Jay Berkenbilt | |
2022-05-04 | Spell check with newer cSpell | Jay Berkenbilt | |
2022-05-04 | Make assert handling less error-prone | Jay Berkenbilt | |
Prevent my future self or other contributors from using assert in tests and then having that assert not do anything because of the NDEBUG macro. | |||
2022-05-04 | Add internal Pl_Base64 | Jay Berkenbilt | |
Bidirectional base64; will be used by JSON v2. | |||
2022-05-02 | Add reactors to the JSON parser | Jay Berkenbilt | |
2022-05-02 | Windows perl workaround | Jay Berkenbilt | |
2022-05-01 | Limit parser depth for json parser | Jay Berkenbilt | |
2022-04-30 | Code clean up: use range-style for loops wherever possible | Jay 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-30 | Formatting: remove space in range-style for loops | Jay Berkenbilt | |
Change .clang-format and commit automated changes from a fresh run of format-code | |||
2022-04-30 | Use fluent appendItem | Jay Berkenbilt | |
2022-04-30 | Use fluent replaceKey | Jay Berkenbilt | |
2022-04-24 | Expose QUtil::get_next_utf8_codepoint | Jay Berkenbilt | |
2022-04-16 | Use = default and = delete where possible in classes | Jay Berkenbilt | |
2022-04-09 | Remove PointerHolder.hh from other than public header files | Jay Berkenbilt | |
Increase to POINTERHOLDER_TRANSITION=4 | |||
2022-04-09 | Replace PointerHolder with std::shared_ptr in the rest of the code | Jay Berkenbilt | |
Increase to POINTERHOLDER_TRANSITION=3 patrepl s/PointerHolder/std::shared_ptr/g **/*.cc **/*.hh patrepl s/make_pointer_holder/std::make_shared/g **/*.cc patrepl s/make_array_pointer_holder/QUtil::make_shared_array/g **/*.cc patrepl s,qpdf/std::shared_ptr,qpdf/PointerHolder, **/*.cc **/*.hh git restore include/qpdf/PointerHolder.hh git restore libtests/pointer_holder.cc cleanpatch ./format-code | |||
2022-04-09 | Rewrite PointerHolder as derived from std::shared_ptr | Jay Berkenbilt | |
2022-04-04 | Programmatically apply new formatting to code | Jay Berkenbilt | |
Run this: for i in **/*.cc **/*.c **/*.h **/*.hh; do clang-format < $i >| $i.new && mv $i.new $i done | |||
2022-03-19 | Remove old build files | Jay Berkenbilt | |
2022-03-19 | Add cmake configuration files | Jay Berkenbilt | |
2022-03-08 | Rename bits_include.cc to qpdf/bits_functions.hh | Jay Berkenbilt | |
It's better to just make it a .hh file to reduce confusion. | |||
2022-03-07 | Force assert to be defined in test code | Jay Berkenbilt | |
2022-02-26 | Rename bits.icc to bits_include.cc | Jay Berkenbilt | |
2022-02-25 | Allow \/ in a json string | Jay Berkenbilt | |
2022-02-16 | Remove special case for 0xad for 10.6.2.release-qpdf-10.6.2 | Jay Berkenbilt | |
2022-02-16 | Spell check | Jay Berkenbilt | |
2022-02-15 | Silently/transparently recognize UTF-16LE as UTF-16 (fixes #649) | Jay Berkenbilt | |
The PDF spec only allows UTF-16BE, but most readers seem to accept UTF-16LE as well, so now qpdf does too. | |||
2022-02-15 | Handle odd PDFDoc codepoints in UTF-8 during transcoding (fixes #650) | Jay Berkenbilt | |
There are codepoints in PDFDoc that are not valid UTF-8 but map to valid UTF-8. We were handling those correctly with bidirectional mapping. However, if those same code points appeared in UTF-8, where they have no meaning, they were left as fixed points when converting to PDFDoc, where they do have meaning. This change recognizes them as errors. | |||
2022-02-09 | Fix one more PDF doc encoding error for 10.6 release (fixes #637)release-qpdf-10.6.0 | Jay Berkenbilt | |
2022-02-08 | Add QPDF::getVersionAsPDFVersion | Jay Berkenbilt | |