Releases: pypdfium2-team/pypdfium2
Releases · pypdfium2-team/pypdfium2
4.4.0
Changes (Release 4.4.0)
Summary (pypdfium2)
pypdfium2 commit log
Commits between 4.3.0
and 4.4.0
(latest commit first):
4018c9c
[autorelease] update changelog and version fileae7d739
bitmap: slightly improve docs4bbae67
pageobjects: remove ridiculous if expressionb5a97fc
setup/pkg_base: add dev note15c5562
bases: add task7019e67
add note on musl task0a158b5
[ws only] reformat packaging_base header6df39f1
Slightly polishsetup.py
c519024
document: add task71a0a63
Add reference bindings (closes #192) (#196)7bb3549
Transfer ownership of ctypesgen fork (closes #194)e285802
MANIFEST.in: add missing word in comment
PDFium commit log
Commits between 5664
and 5677
(latest commit first):
aae3f4452
Simplify pitch calculation in CFX_DIBitmap::CalculatePitchAndSize()a59704451
Add a pixel test for axial shading7bfe65fa5
Add RemoveTextObjectWithTwoPagesSharingContentStreamAndResources test22614014f
Clamp rectangle values in FindTextlineFlowOrientationab00c1bc9
Use SkPackARGB32NoCheck() instead of SkPackARGB32()a066864b6
Remove unnecessary Clear(0) from CPDF_RenderStatus3f80d9332
Make SkBitmap immutable before asImage()9286281aa
[Skia] Support pre-multiplied MultiplyAlpha()168d065ea
Clarify what CPDF_PageObject isef71e9ae3
Do more checks in a FPDFPage_RemoveObject() test2dee06f04
Remove a toolchain workaround in FPDF_NewFormObjectFromXObject()b4357750c
[Skia] Add methods to force pre-multiplied stated914c5fe1
Avoid overloading CPDF_StreamContentParser::AddImage()22d7c0733
Do less work in CPDF_PageContentGenerator when there are no streams15b1203da
Use NOTREACHED_NORETURN() in fpdfsdk99dbaf4f6
Implement NOTREACHED_NORETURN()d75dded3f
Sync third_party/base/immediate_crash.h with Chromium copy8bc8377e8
Add MultiplyAlpha() API to CFX_RenderDevice867f7e996
Roll Catapult from 6234cc4e018d to c9f4f650cdee (57 revisions)5e426ab5c
Roll Code Coverage from 67720beda1c7 to b0f9daa5b3f5 (3 revisions)45d010567
Add pixel test for transparency group compositing
4.3.0
Changes (Release 4.3.0)
Summary (pypdfium2)
- Fixed forms rendering in the multi-page renderer by initializing a formenv in worker jobs if the triggering document has one.
pypdfium2 commit log
Commits between 4.2.0
and 4.3.0
(latest commit first):
e99eb07
[autorelease] update changelog and version filefa29f02
further nits6ccc681
cli: style nits6df5b7c
utils.is_buffer: nits5362ef3
Update changelog styling59f7108
PdfDocument.page_as_xobject()
: clarify exception msg2979a6c
unsp: initialize var with None0167ad4
docs: order CLI modules alphabetically994e148
shell api: add attachments clia013940
Continue on 9b16f75 as planned9b16f75
Revert "Continue on 260140b / c2d4a17 (CC #191)"abed2ec
changelog: add notee39b8ba
Attempt to fix RTD build4d25bb2
Continue on 260140b / c2d4a17 (CC #191)c2d4a17
Update task260140b
Start fixing forms rendering in multipage renderer
PDFium commit log
Commits between 5648
and 5664
(latest commit first):
dcb27a396
Trim third_party/base/bits.hafdb7cbdb
Sync third_party/base/no_destructor.h with the Chromium copy54a61350f
Remove unused STL includes15ee367a7
Add a new test for rendering JPX imagesf5057c75a
Roll third_party/instrumented_libraries/ 87467200f..0f536d22d (10 commits)97f66c181
Unsuppress TimeField.pdf3f9c5f10e
Update the matching entry for formfeild.pdf in suppression listf44118bb1
Unsuppress Mac Skia tests35bf2da24
Unsuppress format_custom_format.pdf5b81b29a8
Update documentation for FPDFBitmap_GetBuffer()2821a5034
[Skia] Remove DebugVerify*IsPreMultiplied() callsde5e3799e
[AGG] Add more pixel tests for out-of-bounds coordinate lines3095afdd6
Add more helpers to deal with variable length fields in cpdf_parser.cppd3fb7d00e
Revert "Enable cppgc plugin for pdfium"9634d4940
Roll testing/corpus/ 746093a2b..62a96ab80 (1 commit)9140e3ff7
Enable cppgc plugin for pdfium02beb5f6b
Roll v8/ b1f01d3ab..8a4efd3df (590 commits)7dc8aeb39
Roll third_party/skia/ f9c77b544..0012a5e84 (163 commits)ca3a9c297
Roll third_party/abseil-cpp/ cd843b25b..28c6deaca (9 commits)14f88c511
Tidy class TreeNode.ab486ae8d
Use CRTP idiom to avoid cppgc plugin warnings in TreeNode.d32298341
Add tests for optional /JPXDecode parametersd611f5db9
Add basic /JPXDecode test casesa4669f7b8
Add OWNERS file for skia subdirectory7f2d281eb
Roll skia and change SK_SUPPORT_GPU -> SK_GANESH
4.2.0
Changes (Release 4.2.0)
Summary (pypdfium2)
- API-breaking changes around forms code, necessary to fix conceptual issues. Closes {issue}
182
.may_init_forms
parameter replaced withinit_forms()
, so that a custom form config can be provided.
This is particularly required for V8 enabled PDFium.formtype
attribute replaced withget_formtype()
.
Previously,formtype
would only be set correctly ifmay_init_forms=True
,
which caused confusion for documents that have forms but no initialized form env.
PdfPage.get_*box()
functions now provide an option to disable fallbacks. Closes {issue}187
.- Some formerly hidden utilities are now exposed in the new namespace
pypdfium2.internal
.
pypdfium2 commit log
Commits between 4.1.0
and 4.2.0
(latest commit first):
ae25d31
[autorelease] update changelog and version filee77c8c2
get_bufreader()
skip atell()
call74849ad
pdfinfo: nitf4f93f6
somewhat fix autoflake compliance47eed2b
forms rendering test: improve code stylee7b82bb
Update tasks7904984
Makeget_metadata_dict()
slightly nicerb3ff4f6
pdfinfo: inline helper function intomain()
dadbe01
Misc doc nitsef13095
PdfPage.get_*box()
: Make fallback optional (fixes #187)86e8cb7
docs/python_api: note new internal API275ffb3
fix typo3171a37
PdfObject: remove some isinstance checksd4d98d5
PdfDocument: Restructure forms code0100cd4
internals: remove docs212e4dd
Somewhat expose internal API45cec58
setup.py: rm unnecessary return
PDFium commit log
Commits between 5633
and 5648
(latest commit first):
caf4ce163
Ensure {{include}} output ends on its own line6df67a765
Make CFXJS_PerObjectData constructor private.e6113f28d
Store global proxy object in CJS_Document1c6ab7fa5
Fix CPPGC Plugin warnings for PDFiumce0337c08
[Skia] Remove redundant DrawDeviceText() branchesc4e67dc29
Remove SkiaState05293b016
Inline SkiaState::DrawPath()f6f88fc87
Remove clipping operations from SkiaStatee78b73593
Roll Fuchsia SDK from version:11.20230202.3.1 to version:11.20230306.1.152f6c6098
Enable C++20 for Fuchsiac4a35e9cc
Remove "temporary" SkiaState fields7bac6ae44
Remove SkiaState::m_drawMatrix68cac2f06
Remove CFX_SkiaDeviceDriver::Flush()c1dee3ae8
Roll build/ f8777b60d..1da99af9b (48 commits)defd00cdc
Roll tools/clang/ 59d4a6deb..2a7073518 (6 commits)7a0dece3a
Get code coverage for CPDFSDK_Widget::Synchronize()5471c3078
Eliminate support for lazy SkiaState flushesfb5325380
Do early return to CPDF_PageContentManager::ExecuteScheduledRemovals()2a43d47fb
Use absl::variant in CPDF_PageContentManager8a87da2cf
More tightly validate XML names in CXFA_FFDocView::GetWidgetByName()7ea7c90ea
Make CPDF_PageContentManager::ExecuteScheduledRemovals() privatefbd5dcdc4
Support indirect objects for /Filter arrays359cbde94
Make CXFA_FFPageWidgetIterator CPPGC_STACK_ALLOCATED703e42226
Simplify CPDF_StreamContentParser::Handle_SetFont()f8a1e5f5b
Roll buildtools/third_party/libc++abi/trunk/ b74d77161..cff1f2def (9 commits)734822fb1
Roll buildtools and libc++63e3719f1
Observe CPWL_* object destruction across CPDFSDK_Widget methods2da56e26f
Roll buildtools/third_party/libunwind/trunk/ e95b94b74..7b03cc568 (10 commits)82473b67e
Update resultdb_version to git_revision:ebc74d10fa0d64057daa6f128e89f3672eeeec95eec0143e7
[Skia] Eagerly flush text52bc7bd48
[Skia] Eagerly flush paths922ceb17d
Move CXFA_EventParam::m_pTarget into CFXJSE_Engine74b865949
Regenerate Skia expectation for bug_1963.in168173ce1
Enable xfermodes{2,3}.pdf tests for Skiaf5756d30d
Roll Skia7f37dc2d2
Add support for per-test fuzzy matching0bac03976
Roll tools/memory/ 930bae8b2..b55593f4d (1 commit)597d4c21e
Add fuzzy matching to pdfium_diff38756a395
Roll third_party/skia/ 215b0bcad..7e2c9f54c (1 commit)
4.1.0
Changes (Release 4.1.0)
Summary (pypdfium2)
pypdfium2 commit log
Commits between 4.0.0
and 4.1.0
(latest commit first):
31ce921
[autorelease] update changelog and version filea461b9c
Attempt to address #184b7f10fc
update v4 changelog2bf200a
update_pdfium: actually fix tar vuln false negativese0e53ba
cli/version: fix possible double space25fda69
Slightly polish docsd4b3e24
Make use of sphinx-issuesac75249
somewhat simplify extract_text cli41c8298
changelog: rephrasea428b0f
version: fix commentf4be3c7
readme: nits20bd36c
setup: remove check_depse93af95
nitsfcd3d4b
Have may_init_forms default to False3eda6d1
Start working on #182
PDFium commit log
Commits between 5619
and 5633
(latest commit first):
f9a00f86c
Roll base/allocator/partition_allocator/ bb821f990..22b087c8b (40 commits)1cdd3207d
Roll third_party/skia/ 5935b0dc4..215b0bcad (16 commits)04e76e408
Update gn_version to git_revision:fe330c0ae1ec29db30b6f830e50771a335e071fbc73d784b6
Roll base/trace_event/common/ 05a225a3e..147f65333 (1 commit)d71a97249
Roll third_party/zlib/ 2d44c51ad..90e67ba3f (2 commits)eba6b007e
Roll third_party/freetype/src/ 646cc8ef8..d874ffa96 (36 commits)cffa6ad2b
Roll third_party/depot_tools/ 963e01c76..424814829 (60 commits; 23 trivial rolls)623df7e06
Roll third_party/icu/ 2c51e5cc7..1e49ac26d (8 commits)140c14e52
[Skia] Flush after drawing soft mask dictionary44910af4e
Improving test equality checks to use _NE and _EQ in fx_bidi_unittest.cppc1ce4c495
Improve RTL support for numbers with separatorsf9562f5d1
Remove //:gn_visibility carve out.
4.0.0
Changes (Release 4.0.0)
Summary (pypdfium2)
- Full support model rewrite. Many existing features changed and new helpers added. Numerous bugs fixed on the way.
Read the updated documentation to migrate your code. - The raw API is now isolated in a separate namespace (
pypdfium2.raw
).
Moreover, the raw API bindings do not implicitly encode strings anymore (pypdfium2 is now built with a patched version of ctypesgen by default). - Helper objects now automatically resolve to the underlying raw object if used as ctypes function parameter.
- Overhauled the code base to use
pathlib
and f-strings. - Updated wheel tags.
- Improved command-line interface, setup code, and documentation.
pypdfium2 commit log
Commits between 4.0.0b2
and 4.0.0
(latest commit first):
cd79ac2
[autorelease] update changelog and version filea6d43a7
update_pdfium: fix tar vuln false negatives (e. g. '/dest', '/dest2')369af47
Fix unused imports in setup_base00ae082
attempt to fix autorelease5d4bc43
Revert "test_sourcebuild: combine regular and syslibs build"f16d461
test_sourcebuild: combine regular and syslibs buildadd0c4c
test_sourcebuild: attempt to add syslibs build testing750805f
setup.py: move v8 status creation where it belongsd4f784f
update_pdfium: add emplace option9a1d2e2
update_pdfium/setup: start working on V8 supporte393835
Rework PDFium version handlinga83b303
gh_pages wf: nit4fa259a
Consistently get pages using index access28e87bb
Re-schedule workflow to Tuesday2ba08e2
readme: note code contributors graph97631f3
Fix reuse lint on release workflow44bf803
autorelease: attempt to fix commit log9bc2c7c
update_pdfium: improve note on path traversal899cacc
build wf: also move install step5b8b016
build workflow: move test step9786f0c
build workflow: comments3424202
build_pdfium: windows fixa76651a
Port setup code to pathlib (#181)ea5a55e
page: add renderer tasksa98cb78
Further f-stringsddcc5f2
Rename pl_setup to pypdfium2_setup42d0f19
Start porting src/pypdfium2/ to f-strings (where appropriate)c0e3ca0
Rename craft_wheels to craft_packages48cfca5
build_packages/test: download all packages for simplicity31fc5ba
nits4cea0ce
textpage: add consecutive optionab72fe5
docs: nit0e6d624
Attempt to fix RTD build4bdb6db
Attempt to fix test_release workflowcc300fa
Revert "suspend schedule"3d49517
autorelease: comment nit
PDFium commit log
Commits between 5579
and 5619
(latest commit first):
f3b685793
Make more dictionaries const in fpdf_signature.cpp97a5abdc3
Use more form field constants in fpdf_signature.cppaa2ec3591
Roll v8/ 8256e3617..b1f01d3ab (78 commits)676f921fd
Update a pixel test to render the black image more visible.96aa3bff6
Update yapf style from "chromium" to "yapf"ca7b98bb1
Add a test case fo indirect references in a /Filter array8efda5c1d
Define enable_safe_libcxx in build_overrides/build.gni.bf5900a3c
Remove 1_matrix.pdf from the suppression list for Skiab2ac55750
Remove the renderer filter in the suppression list for bug_1973.in0c3dbb0d2
Roll build/ ae79e7228..f8777b60d (111 commits) and tools/clang/ 44e5e39a9..59d4a6deb (13 commits)8d2d3732f
Drop 11.pdf from the suppression list.5ff5d508b
Speculative change for SEGV above CFXJSE_Context::ExecuteScript()5be0603fa
Set SkPaint stroke width to 0 to guarantee drawing hairline.0e8db7578
Remove 2_halftone.pdf from the suppression list.f8963b1c1
Drop obsolete Skia suppressionsbad2c6c8f
Roll Catapult from c4e9d16032d8 to 6234cc4e018d (89 revisions)f3e449bc6
Roll Code Coverage from aa4af3749029 to 67720beda1c7 (5 revisions)807692bc8
Move PaintStroke() out of CFX_SkiaDeviceDriver class3ec4d6508
Update the CFX_FillRenderOptions used for flushing paths0c2edd779
[Skia] Remove 8-bit to 8-bit image pathb4e947272
Add pixel test for 8-bit image scalinga29e1163a
Reuse expectations in --regenerate_expectedc5387b9b1
Fix a potential OOB read in CFX_SkiaDeviceDriver::DrawShading().- [
b4aca121f
](https...
4.0.0b2
Changes (Release 4.0.0b2)
Summary (pypdfium2)
- Full support model rewrite. Many existing features changed and new helpers added. Numerous bugs fixed on the way.
Read the updated documentation to migrate your code. - The raw API is now isolated in a separate namespace (
pypdfium2.raw
).
Moreover, the raw API bindings do not implicitly encode strings anymore (pypdfium2 is now built with a patched version of ctypesgen by default). - Helper objects now automatically resolve to the underlying raw object if used as ctypes function parameter.
- Improved command-line interface.
- Improved documentation.
pypdfium2 commit log
4.0.0b1
Changes (Release 4.0.0b1)
Warning: PyPI upload failed due to #177
Summary (pypdfium2)
- Full support model rewrite. Many existing features changed and new helpers added. Numerous bugs fixed on the way.
Read the updated documentation to migrate your code. - The raw API is now isolated in a separate namespace (
pypdfium2.raw
).
Moreover, the raw API bindings do not implicitly encode strings anymore (pypdfium2 is now built with a patched version of ctypesgen by default). - Helper objects now automatically resolve to the underlying raw object if used as ctypes function parameter.
- Improved command-line interface.
- Improved documentation.
3.21.1
3.21.0
Changes (Release 3.21.0)
Summary (pypdfium2)
pypdfium2 commit log
Commits between 3.20.1
and 3.21.0
(latest commit first):
6514939
[autorelease] update changelog and version file
PDFium commit log
Commits between 5567
and 5579
(latest commit first):
4f5038d08
Roll buildtools, libc++/libc++abi, and abseil-cpp9de35bc5c
Use a stable sort to rank XFA font candidates064da5387
Roll third_party/zlib/ 18d27fa10..2d44c51ad (5 commits)907fb2cf1
Roll third_party/freetype/src/ ace97a02a..646cc8ef8 (29 commits)0d637fa95
Update resultdb_version to git_revision:ac21cf9883af7d1bf6d60e8a7448918eb3b6aa182bc0e2b3a
Roll third_party/depot_tools/ 5b0c93402..963e01c76 (88 commits; 13 trivial rolls)c9c139aff
Roll third_party/libjpeg_turbo/ ed683925e..0b6e6a152 (1 commit)8961defcf
Roll base/allocator/partition_allocator/ 85f9e65df..bb821f990 (10 commits)2997b101a
Roll buildtools/third_party/libunwind/trunk/ 5e22a7fe2..e95b94b74 (2 commits)70583a9f2
Roll base/trace_event/common/ 521ac34eb..05a225a3e (2 commits)515651e88
Roll third_party/nasm/ 0873b2bae..7fc833e88 (3 commits)4235f4ce9
Roll tools/memory/ 5d2efcc93..930bae8b2 (4 commits)be7e92f0f
Roll Fuchsia SDK from version:11.20230103.1.1 to version:11.20230202.3.133cb4f0c1
Update gn_version to git_revision:84c8431f3e03cc6226c59dd49637c15ea31169a1a5ec3a4a1
Avoid a potentially dangling pointer in CPDF_PageImageCache.bac72b00c
Roll build/ 46f1d3482..ae79e7228 (203 commits)936ec3fe8
Roll tools/clang/ 3b54a131a..44e5e39a9 (24 commits)a30e656e2
Update libtiff from 4.2.0 to 4.5.0.1c95623be
Add a pixel test for masked image filtering