Age | Commit message (Collapse) | Author | |
---|---|---|---|
2022-04-24 | QPDFJob json: make removeAttachment take an array (fixes #693) | Jay Berkenbilt | |
2022-04-24 | Fix build logic around generate_auto_job | Jay Berkenbilt | |
It was being run at configuration time, not build time. | |||
2022-04-24 | Fix some bugs around null values in dictionaries | Jay Berkenbilt | |
Make it so that a key with a null value is always treated as not being present. This was inconsistent before. | |||
2022-04-24 | Deprecate replaceOrRemoveKey -- it's the same as replaceKey | Jay Berkenbilt | |
2022-04-24 | Have dictionary/streams mutators take const& where possible | Jay Berkenbilt | |
2022-04-24 | Add new QPDF::warn that takes most of QPDFExc's arguments | Jay Berkenbilt | |
2022-04-24 | Expose QUtil::get_next_utf8_codepoint | Jay Berkenbilt | |
2022-04-24 | Replace switch statements with static map initializers | Jay Berkenbilt | |
Character transcoding from Unicode to single-byte characters used hard-coded switch statements because the code predated our adoption of C++11. Now we have thread-safe, static initialization of map literals, so use that instead. | |||
2022-04-18 | QPDFJob: pass capture output streams through to underlying QPDF | Jay Berkenbilt | |
2022-04-16 | Use anonymous namespaces for file-private classes | Jay Berkenbilt | |
2022-04-16 | Remove deprecated name/number tree constructors | Jay Berkenbilt | |
Remove the name/number tree object helper constructors that don't take a QPDF&. | |||
2022-04-16 | Remove QPDFAcroFormDocumentHelper::copyFieldsFromForeignPage | Jay Berkenbilt | |
2022-04-16 | Change default --json from 1 to latest | Jay Berkenbilt | |
2022-04-16 | Use = default and = delete where possible in classes | Jay Berkenbilt | |
2022-04-16 | Make ABI-breaking changes that don't modify API at all | Jay Berkenbilt | |
* Merge overloaded functions by adding default values * Remove non-const methods that are identical to const methods | |||
2022-04-10 | Fix typo in error message | Jay Berkenbilt | |
2022-04-10 | Clean up/fix DLL.h | Jay Berkenbilt | |
* Change DLL_EXPORT to libqpdf_EXPORTS (internal to the build). The new name is cmake's default, is more conventional, and is less likely to clash with other symbols. * Add QPDF_DLL_PRIVATE for non-Windows * Make logic around when to define QPDF_DLL et al more explicit * Add detailed comments | |||
2022-04-09 | Remove methods of private classes from ABI | Jay Berkenbilt | |
Prior to the cmake conversion, several private classes had methods that were exported into the shared library so they could be tested with libtests. With cmake, we build libtests using an object library, so this is no longer necessary. The methods that are disappearing from the ABI were never exposed through public headers, so no code should be using them. Removal had to wait until the window for ABI-breaking changes was open. | |||
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 library sources only | Jay 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-09 | Remove accidentally committed file | Jay Berkenbilt | |
2022-04-09 | Add documentation for code formatting and contribution guidelines | Jay Berkenbilt | |
2022-04-05 | Update some code manually to get better formatting results | Jay 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-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-04-04 | Protect gnutls headers from clang-format rearranging them | Jay Berkenbilt | |
2022-04-03 | Exclude formatting on embedded native crypto | Jay Berkenbilt | |
2022-03-23 | Put spaces around version constraint in pkg-config (fixes #677) | Jay Berkenbilt | |
Also add a pkg-config runtime test that would have caught the error. | |||
2022-03-19 | Fix test for whether atomic library is needed | Jay Berkenbilt | |
Some platforms need it for atomic<long long> but not for atomic<int>. | |||
2022-03-19 | Remove "lt-" workarounds | Jay Berkenbilt | |
The executables that libtool built invoked the underlying binary with an "lt-" prefix. The code contained numerous workarounds for testing, which can now be removed. | |||
2022-03-19 | Update process for ABI testing | Jay Berkenbilt | |
2022-03-19 | Remove old build files | Jay Berkenbilt | |
2022-03-19 | Add cmake configuration files | Jay Berkenbilt | |
2022-03-19 | Switch variables to cmake in qpdf-config.h | 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-02-26 | TODO: solidify plans for code formatting | Jay Berkenbilt | |
2022-02-26 | Rename bits.icc to bits_include.cc | Jay Berkenbilt | |
2022-02-26 | Shorten coverage case name | Jay Berkenbilt | |
This is so it will fit on one line after a qtest upgrade allows us to split lines. | |||
2022-02-26 | generate_auto_job: protect generated files from formatting | Jay Berkenbilt | |
2022-02-26 | Move default values to constexpr | Jay 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-25 | Allow \/ in a json string | Jay Berkenbilt | |
2022-02-22 | Use val.at instead of val[] | Jay Berkenbilt | |
2022-02-22 | Recognize explicit UTF-8 strings (fixes #654) | Jay Berkenbilt | |
2022-02-22 | Fix autogeneration of job.sums | Jay Berkenbilt | |
2022-02-18 | Fix logic error with Tf when generating appearances (fixes #655) | Jay Berkenbilt | |
2022-02-16 | Remove special case for 0xad for 10.6.2.release-qpdf-10.6.2 | Jay Berkenbilt | |
2022-02-16 | Fix asymmetry between newUnicodeString and getUTF8Value | 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 | Ignore -- 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-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-11 | Fix tests for Form XObjects | m-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. |