2
1
mirror of https://github.com/qpdf/qpdf.git synced 2024-11-02 11:46:35 +00:00
Commit Graph

2253 Commits

Author SHA1 Message Date
Jay Berkenbilt
ae17402c52 Move default values to constexpr
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-26 08:16:12 -05:00
Jay Berkenbilt
a531418964 TODO: more planning 2022-02-26 07:39:33 -05:00
Jay Berkenbilt
78ad4ad180 Bump version to 10.6.3 2022-02-26 07:15:14 -05:00
Jay Berkenbilt
39ad799e2d Change version numbering practice: main is now next
We have been keeping main's version at the last released version, but
starting now, main's version will always be whatever it would be if
a release were cut from the tip of main.
2022-02-26 07:13:36 -05:00
Jay Berkenbilt
dca0c7eae6 Simplify confusing terminology in the README and manual (fixes #660)
Some people don't know what CI is, so remove use of that abbreviation
when it doesn't add any value.
2022-02-25 18:21:50 -05:00
Jay Berkenbilt
905e99a314 TODO: flesh out JSON v2 details 2022-02-25 14:54:25 -05:00
Jay Berkenbilt
36794a60cf Allow \/ in a json string 2022-02-25 11:42:50 -05:00
Jay Berkenbilt
e7ecc348f9 TODO: clarify fluent interfaces for QPDFObjectHandle 2022-02-25 11:24:56 -05:00
m-holger
527810e939 Tidy pdf-attach-file example 2022-02-25 11:23:43 -05:00
Jay Berkenbilt
56b4d5a610 Use val.at instead of val[] 2022-02-22 08:40:49 -05:00
Jay Berkenbilt
f7ac591590 Recognize explicit UTF-8 strings (fixes #654) 2022-02-22 08:10:05 -05:00
Jay Berkenbilt
07a2bb332d Add documentation and release notes around 0 Tf issue 2022-02-22 08:10:05 -05:00
Jay Berkenbilt
3b4b9efd21 Fix autogeneration of job.sums 2022-02-22 08:10:05 -05:00
Jay Berkenbilt
332cb76dd0 TODO: cmake for qpdf 11 2022-02-18 16:41:58 -05:00
Jay Berkenbilt
31b45b0fd4 Fix logic error with Tf when generating appearances (fixes #655) 2022-02-18 13:46:35 -05:00
Jay Berkenbilt
3e2109ab37 Remove special case for 0xad for 10.6.2. 2022-02-16 06:52:05 -05:00
Jay Berkenbilt
38d8362c09 Prepare 10.6.2 release 2022-02-15 19:36:39 -05:00
Jay Berkenbilt
74d66a9349 Spell check 2022-02-15 19:36:12 -05:00
Jay Berkenbilt
b63e17fffb Fix lgtm warning 2022-02-15 19:30:34 -05:00
Jay Berkenbilt
e810fe678a Fix asymmetry between newUnicodeString and getUTF8Value 2022-02-15 19:22:35 -05:00
Jay Berkenbilt
e35abe2fb7 Add release notes for 10.6.2 changes so far 2022-02-15 16:15:57 -05:00
Jay Berkenbilt
a478cbb6dc Silently/transparently recognize UTF-16LE as UTF-16 (fixes #649)
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 16:13:12 -05:00
Jay Berkenbilt
fbd3e56da7 Ignore -- at the top level arg parser (fixes #652)
This was unintended behavior that was added back for backward
compatibility. It is intentionally undocumented.
2022-02-15 16:13:12 -05:00
Jay Berkenbilt
19608ec151 Add missing spaces in usageExit 2022-02-15 16:11:33 -05:00
Jay Berkenbilt
894940d17a Temporarily require windows-2019 github runner 2022-02-15 08:52:40 -05:00
Jay Berkenbilt
1065bbb016 Handle odd PDFDoc codepoints in UTF-8 during transcoding (fixes #650)
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-15 08:32:38 -05:00
Jay Berkenbilt
2b8d0f385b Prepare 10.6.1 release 2022-02-11 09:36:17 -05:00
m-holger
5b0030ff59 Tidy pdf-bookmarks example
Convert loops to use range-based for statements.
Simplify the extract_bookmarks function.
2022-02-11 09:27:39 -05:00
Jay Berkenbilt
956a272d62 Remove abs calls and pick correct floating point epsilon values (fixes #641) 2022-02-11 07:18:33 -05:00
m-holger
4ff837f099 Fix tests for Form XObjects
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.
2022-02-10 19:47:37 -05:00
Jay Berkenbilt
235c89e037 Fix one more PDF doc encoding error for 10.6 release (fixes #637) 2022-02-09 05:47:58 -05:00
Jay Berkenbilt
15248592c9 Prepare 10.6.0 release (take 2) 2022-02-08 17:37:12 -05:00
Jay Berkenbilt
d6fe473029 Prepare 10.6.0 release 2022-02-08 16:54:03 -05:00
Jay Berkenbilt
ec778ef98b Add additional comments about new accessor methods 2022-02-08 16:49:43 -05:00
Jay Berkenbilt
fa0b63846b README-maintainer: update instructions on testing pikepdf locally 2022-02-08 14:37:32 -05:00
Jay Berkenbilt
acc24ba494 Only install docs if they exist
Sometimes someone may build only a subset of the documentation. The
logic has to be conditional upon whether it exists, not whether it is
built, since we pull pre-built docs in for CI installation.
2022-02-08 13:52:01 -05:00
Jay Berkenbilt
48ca63e957 Spell check 2022-02-08 13:49:22 -05:00
Jay Berkenbilt
d501e1c0d4 Only update output version from files used as input
If we're opening a PDF file to copy its encryption information or
attachments, its version doesn't need to influence the output version.
2022-02-08 13:49:22 -05:00
Dirk Müller
043c44556a Use DOC_DEST variable for installing documentation 2022-02-08 13:47:50 -05:00
Jay Berkenbilt
f91b21c7d4 Preserve input PDF version on pages/split-pages (fixes #610) 2022-02-08 12:34:14 -05:00
Jay Berkenbilt
cfd5147d92 Add QPDF::getVersionAsPDFVersion 2022-02-08 12:34:14 -05:00
Jay Berkenbilt
8082af09be Add PDFVersion class 2022-02-08 12:34:14 -05:00
Jay Berkenbilt
014dcb02c9 Revert an incorrect correction 2022-02-08 12:34:14 -05:00
Jay Berkenbilt
511d70166d Check generated QPDFJob files in CI
This is to catch pull requests that make changes that would affect
automatically generated job files without including those
modifications.
2022-02-08 11:51:15 -05:00
Jay Berkenbilt
cb769c62e5 WHITESPACE ONLY -- expand tabs in source code
This comment expands all tabs using an 8-character tab-width. You
should ignore this commit when using git blame or use git blame -w.

In the early days, I used to use tabs where possible for indentation,
since emacs did this automatically. In recent years, I have switched
to only using spaces, which means qpdf source code has been a mixture
of spaces and tabs. I have avoided cleaning this up because of not
wanting gratuitous whitespaces change to cloud the output of git
blame, but I changed my mind after discussing with users who view qpdf
source code in editors/IDEs that have other tab widths by default and
in light of the fact that I am planning to start applying automatic
code formatting soon.
2022-02-08 11:51:15 -05:00
m-holger
716381f65a Fix doc typos 2022-02-08 11:50:58 -05:00
Jay Berkenbilt
68e4aec054 Clarify qpdf's representation of names in the API
Clarify that names are to appear in canonical form with PDF escaping
resolved when used in non-parsing QPDFObjectHandle APIs and their C
API counterparts. See https://github.com/qpdf/qpdf/discussions/625.
2022-02-08 09:09:23 -05:00
Jay Berkenbilt
c62e8e2b28 Update for clean compile with POINTERHOLDER_TRANSITION=2 2022-02-07 17:38:22 -05:00
Jay Berkenbilt
3f22bea084 Use make_array_pointer_holder
This will be able to be replaced with QUtil::make_shared_array
2022-02-07 17:38:22 -05:00
Jay Berkenbilt
40f1946df8 Replace PointerHolder arrays with shared_ptr arrays where possible
Replace PointerHolder arrays wherever it can be done without breaking ABI.
2022-02-07 17:38:22 -05:00