m-holger
f69ed209d0
Use QPDF::newStream in examples
2022-11-19 14:10:42 -05:00
m-holger
9ebabd1953
Add new methods QPDF::newStream
2022-11-19 14:10:42 -05:00
m-holger
0a3c533186
Add private method QPDF::nextObjGen
2022-11-19 14:10:42 -05:00
m-holger
b3d71e1f58
Add private overload of QPDF::makeIndirectObject taking a QPDFObject shared_ptr
2022-11-19 14:10:42 -05:00
Jay Berkenbilt
486c273a4f
Explicitly install libfuse for appimage smoke test
2022-11-19 12:30:33 -05:00
Jay Berkenbilt
65f9fe41fc
Upgrade github actions versions
2022-11-17 15:47:03 -05:00
Jay Berkenbilt
434d84ece6
TODO note on digital signatures
2022-11-14 07:06:22 -05:00
m-holger
fc64d0a371
Fix stray formatting error
2022-11-14 07:05:58 -05:00
Jay Berkenbilt
b30273f174
Indicate that msvc64 is the default download for Windows
2022-10-08 17:28:35 -04:00
Jay Berkenbilt
d94e6958ef
Fix stray formatting error
2022-10-08 17:05:11 -04:00
Jay Berkenbilt
2bc9121fa1
Fix major performance bug with openssl crypto ( fixes #798 )
...
Lazily load MD5 and RC4 once in the life of the program. Only load the
legacy provider if RC4 is actually being used.
2022-10-08 17:04:59 -04:00
Jay Berkenbilt
b745920961
Allow specific performance tests to be run
2022-10-08 16:10:15 -04:00
Jay Berkenbilt
5c5b4e640e
Be more conservative about QPDF_DLL_CLASS with mingw ( fixes #799 )
...
* Define it even though previous experiments have shown it to be
unnecessary since it seems like it may be necessary after all
* Add QPDF_DLL_CLASS to QPDFObjectHelper and QPDFDocumentHelper in
case there's some future unknown reason why someone may want to have
them and/or in case it helps with the weird
QPDFNameTreeObjectHelper problem.
2022-10-06 08:40:08 -04:00
Jay Berkenbilt
db6598b449
Attempt to test for QPDFNameTreeObjectHelper's vtable
...
It has disappeared from the DLL on Windows a few times.
2022-10-06 08:40:08 -04:00
Jay Berkenbilt
06c6f9a971
Enable verbose build for CI
...
That way we can always ensure that the right compiler flags are being
used if there is an issue.
2022-10-06 07:14:23 -04:00
Jay Berkenbilt
d14765f1c3
Bump version to 11.2.0
2022-10-06 07:02:43 -04:00
Jay Berkenbilt
6826330adc
Require a C++-17 compiler
2022-10-06 06:58:38 -04:00
Jay Berkenbilt
741211a199
TODO reminders
2022-10-06 06:58:38 -04:00
m-holger
d44bba3914
Fix typos in error message
2022-10-03 11:42:27 -04:00
Jay Berkenbilt
236a02d402
Prepare 11.1.1 release
2022-10-01 12:04:50 -04:00
Jay Berkenbilt
5e122f145f
Ignore things from std:: in the ABI
2022-10-01 12:04:50 -04:00
m-holger
c63fb86c01
Inline call to QPDFObjectHandle::parse in QPDF::readObject
2022-10-01 11:17:39 -04:00
m-holger
cb0a6be983
Code tidy: use QPDF::toS and QPDF::toI where possible
2022-10-01 11:17:39 -04:00
m-holger
5ccab4be03
Add private methods QPDF::damagedPDF
2022-10-01 11:17:39 -04:00
m-holger
b948366280
Add doc comment to QPDF::getFilename
2022-10-01 11:17:39 -04:00
Jay Berkenbilt
c115680e7c
Add smoke tests to AppImage build in CI
...
Verify runpath for all executables, check to make sure the AppImage
works in various intended ways.
2022-09-27 09:33:52 -04:00
Jay Berkenbilt
c56edf41fe
AppImage build: fix library issues
...
* Use correct cmake flag to not build static libraries
* Force correct relative RPATH in installed executables
2022-09-27 09:32:31 -04:00
Jay Berkenbilt
7a74a491b1
Fixes in appimage AppRun ( fixes #789 )
...
* Don't "shift" when $ARGV0 is a qpdf executable
* Base -- to basename to avoid stuff like `qpdf --version` calling
`basename --version`
2022-09-27 07:39:09 -04:00
Jay Berkenbilt
f4ca04cec1
Fix edge case in character encoding ( fixes #778 )
...
Avoid representing as PDF Doc encoding any string whose PDF Doc
encoding representation starts with a UTF-16 or UTF-8 marker.
2022-09-26 08:06:47 -04:00
m-holger
4fb7d1335a
Tune QPDF_String::useHexString()
2022-09-24 17:09:56 -04:00
Jay Berkenbilt
77111086eb
Add code to CI to verify signed/unsigned char
...
Make sure that our attempt to test both signed and unsigned char is
actually right.
2022-09-23 17:44:16 -04:00
Jay Berkenbilt
a085479ad9
Run tests in CI with char as unsigned char
2022-09-23 17:27:18 -04:00
Jay Berkenbilt
9a9a7ab097
Comment about qpdf/PointerHolder.hh in public headers
2022-09-23 15:15:39 -04:00
m-holger
44a7aff56f
Refactor Pl_Buffer
...
Base implementation of the buffer on std::basic_string<unsigned char>.
2022-09-23 15:09:13 -04:00
m-holger
ae800361fe
Tune QUtil::hex_encode
2022-09-23 06:20:12 -04:00
m-holger
033a66e9a5
Tune unparsing of hex strings in QPDF_String::unparse
2022-09-23 06:20:12 -04:00
Jay Berkenbilt
92b3543e12
Update TODO with notes about next major version
...
For greater visibility and community participation, track ABI change
ideas that aren't in the source in a github discussion item rather
than in TODO.
2022-09-22 07:57:52 -04:00
Jay Berkenbilt
6b371cc727
Bump version to 11.1.1
2022-09-21 15:58:32 -04:00
m-holger
2e6869483b
Replace calls to QUtil::int_to_string with std::to_string
2022-09-21 15:57:14 -04:00
Jay Berkenbilt
da67a0aa04
11.1: Fix typo in release notes
2022-09-14 17:04:13 -04:00
Jay Berkenbilt
e39f14eaf0
Prepare 11.1.0 release
2022-09-14 15:44:17 -04:00
Jay Berkenbilt
772c92227c
Revert "Add default move constructor/assignment to QPDFObjectHandle"
...
This reverts commit 416d9668ee
.
This commit causes numerous failures in the pikepdf test suite and
also causes a symbol to disappear from the public API. More
investigation will be required.
2022-09-14 15:44:17 -04:00
Jay Berkenbilt
6c7c76e0e4
Fix issues with abi-perf-test
2022-09-14 15:44:17 -04:00
Jay Berkenbilt
2e35ead579
Doc: add examples for install dev component ( fixes #767 )
2022-09-14 09:58:56 -04:00
Jay Berkenbilt
faac493a5d
Force project includes before system includes ( fixes #763 )
...
From time to time, someone has a problem because their build is
grabbing an old version of qpdf header files that are installed
somewhere on their system. I am hoping this will put an end to that.
2022-09-14 07:41:13 -04:00
Jay Berkenbilt
5796475a5e
Cosmetic: use default constructor for QPDFObjGen
2022-09-14 07:35:32 -04:00
Jay Berkenbilt
9a273c4098
Mention change of tagging convention ( fixes #772 )
2022-09-13 11:59:46 -04:00
Jay Berkenbilt
2394acf7a6
Remove explicit direct object check from getObject
...
An indirect object reference to 0, 0 is invalid. If it appears in the
file or is parsed from a string, the parser catches it. This check
would only be useful for someone explicitly calling getObject with 0,
0, and that would trigger an error during resolve().
2022-09-13 11:21:29 -04:00
Jay Berkenbilt
a0b1a18172
Remove redundant function calls
2022-09-13 11:20:28 -04:00
Jay Berkenbilt
c5f61fcbd3
Improve efficiency of ResolveRecorder
...
Removing an element from a set with iterator is constant time, and
std::set specifies that other operations on the set do not invalidate
existing iterators.
2022-09-13 11:19:24 -04:00