Jay Berkenbilt
22b35c4928
Expose QUtil::get_next_utf8_codepoint
2022-04-23 18:25:43 -04:00
Jay Berkenbilt
5bbb0d4c30
Replace switch statements with static map initializers
...
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-23 18:25:43 -04:00
Jay Berkenbilt
877694a583
Decide against adding handleWarning back to ParserCallbacks
2022-04-16 13:41:53 -04:00
Jay Berkenbilt
75fe4f60c3
Use anonymous namespaces for file-private classes
2022-04-16 13:35:27 -04:00
Jay Berkenbilt
38edca820e
Clarify note in TODO
2022-04-16 13:16:06 -04:00
Jay Berkenbilt
80ed3076a0
Remove deprecated name/number tree constructors
...
Remove the name/number tree object helper constructors that don't take
a QPDF&.
2022-04-16 13:13:15 -04:00
Jay Berkenbilt
6df6260751
Change default --json from 1 to latest
2022-04-16 12:57:33 -04:00
Jay Berkenbilt
cdd0b4fb7d
Use = default and = delete where possible in classes
2022-04-16 11:39:14 -04:00
Jay Berkenbilt
2a7d2b63c2
Make ABI-breaking changes that don't modify API at all
...
* Merge overloaded functions by adding default values
* Remove non-const methods that are identical to const methods
2022-04-16 10:41:46 -04:00
Jay Berkenbilt
dd35966367
Remove remaining cmake steps from TODO
2022-04-10 17:57:26 -04:00
Jay Berkenbilt
5f4675bb24
Mark non-ABI symbols in exported class with QPDF_DLL_PRIVATE
2022-04-10 16:54:23 -04:00
Jay Berkenbilt
90cfe80bac
Clean up/fix DLL.h
...
* 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-10 16:52:36 -04:00
Jay Berkenbilt
07edf96440
Remove methods of private classes from ABI
...
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 17:33:29 -04:00
Jay Berkenbilt
c7e877b88b
Update documentation for PointerHolder transition
2022-04-09 17:33:29 -04:00
Jay Berkenbilt
59834db472
Add documentation for code formatting and contribution guidelines
2022-04-09 12:25:08 -04:00
Jay Berkenbilt
2e41b805bd
Update TODO with additional notes
2022-04-05 14:56:19 -04:00
Jay Berkenbilt
77e889495f
Update some code manually to get better formatting results
...
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-05 14:56:19 -04:00
Jay Berkenbilt
f20fa61eb4
Add .clang-format and .dir-locals.el files to set coding style
...
Configure emacs and clang-format 15 to the coding style I am choosing
for qpdf.
2022-04-04 08:10:40 -04:00
Jay Berkenbilt
80801e4c56
TODO note
2022-04-03 17:58:34 -04:00
Jay Berkenbilt
198b96471a
Notes for next release
2022-03-19 08:57:47 -04:00
Jay Berkenbilt
11e34f29ce
TODO: update section for cmake
2022-03-18 19:53:18 -04:00
Jay Berkenbilt
96839decd0
TODO note about linux32 large file tests
2022-03-18 19:53:18 -04:00
Jay Berkenbilt
f58d2a60d5
Update build-related documentation and comments
2022-03-18 19:53:18 -04:00
Jay Berkenbilt
064a90da2d
TODO: update cmake notes
2022-03-08 11:55:59 -05:00
Jay Berkenbilt
584793ea1e
Spell check, update release notes for 10.6.3
2022-03-07 18:22:34 -05:00
Jay Berkenbilt
066efb69ae
TODO: cmake updates
2022-03-07 10:07:27 -05:00
Jay Berkenbilt
c0fc776ba4
TODO: notes for cmake migration
2022-03-01 15:00:29 -05:00
Jay Berkenbilt
6dd8465948
TODO: solidify plans for code formatting
2022-02-26 12:08:58 -05:00
Jay Berkenbilt
a531418964
TODO: more planning
2022-02-26 07:39:33 -05:00
Jay Berkenbilt
905e99a314
TODO: flesh out JSON v2 details
2022-02-25 14:54:25 -05:00
Jay Berkenbilt
e7ecc348f9
TODO: clarify fluent interfaces for QPDFObjectHandle
2022-02-25 11:24:56 -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
332cb76dd0
TODO: cmake for qpdf 11
2022-02-18 16:41:58 -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
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
cfaae47dc6
Add getBufferSharedPointer() to Pl_Buffer and QPDFWriter
2022-02-07 12:53:28 -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
dd3b2cedd3
Update ChangeLog for contributions from m-holger
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
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
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
8b67ac494e
TODO: add notes on json v2 and other post-QPDFJob activities/ideas
2022-02-04 13:12:37 -05:00
Jay Berkenbilt
2fd5a43f67
Add ChangeLog entries for refactoring work
2022-02-01 17:17:05 -05:00