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
Jay Berkenbilt
dd4f30226f
Rework PointerHolder transition to make it smoother
...
* Don't surprise people with deprecation warnings
* Provide detailed instructions and support for the transition
2022-02-07 17:38:20 -05:00
Jay Berkenbilt
df2f5c6a36
Add QUtil::make_shared_array to help with PointerHolder transition
2022-02-07 14:08:46 -05:00
Jay Berkenbilt
cfaae47dc6
Add getBufferSharedPointer() to Pl_Buffer and QPDFWriter
2022-02-07 12:53:28 -05:00
m-holger
3e98fe46a2
Tidy example CLI usage
...
Change "-" to "--" for named parameters.
Remove spaces inside "[ option ]" for optional parameters.
Fix "pdf-mod-info --dump file" to match usage message.
2022-02-07 12:49:24 -05:00
Jay Berkenbilt
4fd619818c
Fix doc typo
2022-02-06 11:27:02 -05:00
Jay Berkenbilt
6a2456f732
Comment, ChangeLog, release note for new contribution
2022-02-06 11:27:02 -05:00
m-holger
5901fcad4c
C-API expose QPDFObjectHandle::getKeyIfDict
2022-02-06 11:21:15 -05:00
m-holger
8371060340
Add method QPDFObjectHandle::getKeyIfDict
2022-02-06 11:21:15 -05:00
m-holger
2ed5f49a79
C-API expose QPDFObjectHandle::getValueAs... accessors
2022-02-05 19:40:30 -05:00
Jay Berkenbilt
b3bf02904a
TODO: cleanup
2022-02-05 16:07:17 -05:00
Jay Berkenbilt
eb481eb698
Prepare release notes for 10.6 (so far)
2022-02-05 15:41:22 -05:00
Jay Berkenbilt
c95f02115c
Doc updates from m-holger
2022-02-05 12:37:15 -05:00
Jay Berkenbilt
dd3b2cedd3
Update ChangeLog for contributions from m-holger
2022-02-05 11:29:25 -05:00
Jay Berkenbilt
af3f74de8c
Stop using std::iterator ( fixes #618 )
...
Create the typedefs directly in iterators rather than deriving from
the deprecated std::iterator class.
2022-02-05 11:29:25 -05:00
Jay Berkenbilt
2e476e189a
Remove stray TODO item
2022-02-05 11:29:25 -05:00
Jay Berkenbilt
7fb22740e1
Add operator ""_qpdf for creating QPDFObjectHandle literals
2022-02-05 11:29:25 -05:00
Jay Berkenbilt
b48a0ff0e8
Add qpdf_empty_pdf to C API
2022-02-05 11:29:25 -05:00
Jay Berkenbilt
8cf7f2bfb5
API contract: qpdf_get_qpdf_version() returns a static
2022-02-05 11:24:56 -05:00
Jay Berkenbilt
5f3f78822b
Improve use of std::unique_ptr
...
* Use unique_ptr in place of shared_ptr in some cases
* unique_ptr for arrays does not require a custom deleter
* use std::make_unique (c++14) where possible
2022-02-05 11:24:56 -05:00
Jay Berkenbilt
88c3d556d5
Spell check
2022-02-05 11:24:56 -05:00
Jay Berkenbilt
e782d5e951
TODO: update notes about PointerHolder
2022-02-05 11:24:56 -05:00
m-holger
e58b1174c7
Add new QPDFObjectHandle::getValueAs... accessors
2022-02-05 11:24:35 -05:00
Jay Berkenbilt
cfaa2de804
Update copyright for 2022
2022-02-04 16:36:22 -05:00
Jay Berkenbilt
2229e37e88
Add a blank line after the first header included in each source
2022-02-04 16:31:31 -05:00
Jay Berkenbilt
2abb305565
TODO
2022-02-04 13:41:05 -05:00
Jay Berkenbilt
8eab616d62
Add qpdf version macros to qpdf/DLL.h
2022-02-04 13:41:01 -05:00
Jay Berkenbilt
abc300f05c
Replace containers of PointerHolder with containers of std::shared_ptr
...
None of these are in the public API.
2022-02-04 13:12:37 -05:00
Jay Berkenbilt
f0c2e0ef1e
JSON: use std::shared_ptr internally
2022-02-04 13:12:37 -05:00
Jay Berkenbilt
9044a24097
PointerHolder: deprecate getPointer() and getRefcount()
...
Use get() and use_count() instead. Add #define
NO_POINTERHOLDER_DEPRECATION to remove deprecation markers for these
only.
This commit also removes all deprecated PointerHolder API calls from
qpdf's code except in PointerHolder's test suite, which must continue
to test the deprecated APIs.
2022-02-04 13:12:37 -05:00
Jay Berkenbilt
f727bc9443
PointerHolder: add get() and use_count() for forward compatibility
...
PointerHolder will be replaced with shared_ptr, so let people start
moving.
2022-02-04 13:12:37 -05:00
Jay Berkenbilt
f76191f0c2
Add array test to PointerHolder
2022-02-04 13:12:37 -05:00