Skip to content

Conversation

@renovate
Copy link
Contributor

@renovate renovate bot commented Nov 25, 2025

Note: This PR body was truncated due to platform limits.

This PR contains the following updates:

Package Change Age Confidence
pypdfium2 (changelog) ^4.30.0 -> ^5.0.0 age confidence

Release Notes

pypdfium2-team/pypdfium2 (pypdfium2)

v5.1.0

Compare Source

Changes (Release 5.1.0)

Summary (pypdfium2)
  • Added new helpers textpage.get_textobj(), PdfTextObj and PdfFont.
    These helpers currently just cover font info and object-level text extraction, but may be extended in the future.
    For objects of type FPDF_PAGEOBJ_TEXT, PdfPage.get_objects() and the PdfObject constructor will now return PdfTextObj rather than just PdfObject instances.
    Thanks to Mykola Skrynnyk for the initial proposal.
  • Rolled back musllinux tag from 1_2 to 1_1. This was erroneously incremented shortly before 5.0.0, but the pdfium-binaries do still run on musllinux_1_1, probably because they're statically linked.
  • build_toolchained: Significant portability enhancements. Should now work on Linux CPUs that are unhandled/incomplete upstream (e.g. aarch64). Also, building on Windows arm64 natively may now work. Added ability to cross-compile ppc64le from x86_64. Removed --use-syslibs option (use build_native instead).
  • build_native: Fixed Python 3.6/3.7 compatibility. Added --no-libclang-rt option.
  • Setup: Fixed inclusion of BUILD_LICENSES/ sub-directories. Added extra licenses for DLLs pulled in by auditwheel. This concerns sourcebuilds/cibuildwheel only. The wheels on PyPI are unaffected.
  • Added android targets to sbuild.yaml workflow. This does not impact releases, which still use the pdfium-binaries.
  • Added i686 (manylinux and musllinux) to cibuildwheel workflow.
    Use an arm64 host (GHA ubuntu-24.04-arm) for armv7l builds, which is much faster than with an x86_64 host. Added armv7l manylinux target (previously just musllinux).
    This does not impact releases yet, but it may in the future.
  • CI: Migrated from macos-13 to macos-15-intel.
pypdfium2 commit log

Commits between 5.0.0 and 5.1.0 (latest commit first):

  • 46afdae [autorelease main] update 5.1.0
  • d6d1ea5 build_toolchained: set config var regardless of sync
  • 1054d12 Update RTD build host
  • 0c2eef0 build_toolchained: update comment
  • 346bba0 build_toolchained: use PORTABLE_MODE on musllinux and android
  • edad47e main.yaml: add ref to upload-artifact bug
  • 24aea3c Update changelog again
  • 6bc04d3 main.yaml: propagate py_version
  • 28639a5 Add a comment
  • 5c93651 Readme: update sourcebuild section
  • 49404d2 Fix reuse lint
  • 7cb5bc0 Fix bootstrap_ninja()
  • b4f2bc6 Extract non-split-related work from PR #​394
  • d839e2e Defer _get_local_bin()
  • 6be8ad0 build_toolchained: in PORTABLE_MODE, use bootstrap_buildtools()
  • 6fb248b Make bootstrap_gn target dir portable
  • 1613353 Add proper ninja/gn bootstrapping functions
  • 6ec44e2 Avoid setup-just action where we can
  • 0cd1f73 Update changelog again
  • 5fc9bb0 sbuild_one: fix artifact naming if target_os is set
  • 3998f82 pdfium-binaries/android: bump to android_23
  • a645230 sbuild.yaml: attempt adding android builds
  • c739b22 build_toolchained: continue
  • a86826f build_toolchained: limit PORTABLE_MODE to Linux for now
  • 2c8bd51 sbuild_one: drop just dependency
  • 1bcc02a Update changelog
  • f60248c chores: fix just check, rename some patches
  • d9f66f0 build_toolchained: more portability fixes
  • 9d32e5f sbuild.yaml: test build_toolchained.py on native arm64 runner
  • f54247c Further build_toolchained improvements
  • 45c8084 build_toolchained.py: add ppc64le cross-comp ability
  • 2d8e00b Improve portability of build_toolchained.py
  • 3eb8204 Remove build_toolchained --syslibs from CI
  • 4c1038b build_native: add option to disable libclang_rt dependency
  • c345690 Readme: somewhat update licenses section
  • f5bff20 Add extra licenses for cibuildwheel builds (#​390)
  • 5159278 Clarify and update changelog
  • 7e849de Merge pull request #​392 from pypdfium2-team/font_helpers
  • 17c8412 Parametrize font helpers test
  • 51d0adf Add draft font helpers
  • a816bfe Update REUSE.toml, fix typo in pyproject.toml
  • da3b4f5 Make GN patch less invasive
  • 2e3d2ba Factor out cloning utility for cibw gn bootstrap
  • 4b4e344 cibw i686: try to improve GN bootstrap
  • fef5d24 Move patches
  • 9e0e53f cibw: fix manylinux_i686 target
  • 5bd0d31 Drop emulated musllinux_armv7l target
  • 0e74a4c cibw: retry armv7l with newer image
  • e5f2212 Comment out manylinux_armv7l again
  • bcad837 Yet another attempt at cibw/manylinux_armv7l
  • 0c7bde8 cibw/pyproject.toml nits
  • 4b6f2dc cibw/pyproject.toml: deduplicate symlinks (#​389)
  • 8d6f6ad cibw: give up on manylinux_armv7l for now
  • 767e3a5 cibw: have another go at armv7l
  • f06a078 cibw: try to fix manylinux_{i686,armv7l}
  • 9d56c4a Rearrange cibw.yaml
  • 2dbde32 autorelease.py: style nit
  • e7ca107 utils/get_gcc_prefix: handle armv8l as well
  • 2ea9a28 cibw: say ubuntu-latest instead of ubuntu-24.04
  • 6f1245a autorelease: make sure GH release notes stay below limits
  • 1060a86 Readme: make python setup deps slightly clearer
  • 55a94e8 Changelog
  • 73c1a96 Update macos-13 to macos-15-intel (fixes #​388)
  • d3beb16 Fix up previous commit
  • 009f11a Re-suspend trigger_main schedule after all
  • 605d765 Minor cleanups
  • 94b02c1 setup/build_native: python < 3.8 compat
  • 1f457d4 build(deps): bump actions/upload-artifact from 4 to 5
  • 77f0697 build(deps): bump actions/download-artifact from 5 to 6
  • 8aa2658 Fix inclusion of BUILD_LICENSES sub-directories
  • c74b8f4 Further changelog tweak
  • 1c50fb3 Changelog markdown rendering fix
  • a3f2a9f main.yaml/test: install auditwheel only on linux
  • e26769a Post-release chores, reinstall schedule
PDFium commit log

Commits between 7483 and 7529 (latest commit first):

  • c2e74df91 Add FPDF_SYSFONTINFO version 2 for per-request font matching
  • 99e950ba7 Remove CFX_Face::GetRec() callers from CFGAS_FontMgr
  • 917797d28 Add CFX_Face::HasFaceRec()
  • a3cc2e30e Remove FXFT_Get_Glyph_* macros
  • ce3baac0f Rename "pFace" instances to "face"
  • 2a230b8e7 Fix decoding of JBIG2 files with more than four referred-to segments
  • 2de46c603 Remove redundant jbig2 test files
  • 503710a3d Rename "pStreamAcc" instances to "stream_acc"
  • 57baefcd1 Make Skia corpus tests pass for Mac ARM64 with macOS 15
  • 5f97789be Make Skia pixel tests pass for Mac ARM64 with macOS 15
  • bcd8f224d Teach suppressor.py about mac_arm and mac_x86
  • 1861f24ae Consolidate CFX_Face::Open() callers
  • 1a275e49a Update test corpus revision
  • dbfa29d16 Fix progressive unoptimized decoding of JBIG2 generic region with template 1
  • 4d3dc1bd8 Update some Skia test expectations for Mac ARM64 with macOS 15
  • 61b3d09eb Fix various pylint warnings in testing/tools/*.py
  • f2de80031 Auto-format testing/tools/*.py
  • a4c4d0ad1 Fix reading refine-one symbols in huffman symbol dictionaries using refinement
  • debf26bdc Limit bitmap memory usage in PDFiumFuzzerHelper
  • 450290147 Roll third_party/freetype/src/ 36f917c..fc9cc50 (17 commits)
  • c81783ef3 Roll third_party/freetype/src/ e969f52..36f917c (3 commits)
  • 1d67846a1 Roll Catapult from 67287c8 to 5b6dfc9 (37 revisions)
  • 2bf421a5e Roll Depot Tools from 3008b57 to 6f83fce (79 revisions)
  • 89bb8a241 Roll Code Coverage from ef6864e to 9e4876d (1 revision)
  • 06df1a295 Remove reference to third_party/instrumented_libraries
  • d7fbd2ca8 Update test expectations for Mac ARM64 with macOS 15
  • f49889b9c Regenerate jbig2-mmr.in
  • 0f689aaa2 Rename "iIndex" instances to "index"
  • 728097ea0 Delete CFX_Face::ClearExternalStream()
  • bebe89931 Remove dead code in xfa/fwl/cfwl_notedriver.cpp
  • 2fbebb9ef Enable new unsafe-buffers diagnostic for PDFium.
  • 0ca246f33 Fix another CHECK() failure in CXFA_Document::DataMerge_CopyContainer()
  • 0b9f84147 Rename "pContext" instances to "context" or "ctx"
  • 8ace2bfc6 Change pdfium_fuzzer_helper.cc to render with different bitmap formats
  • d83e98eb1 Use more spans in pdfium_fuzzer_helper.cc
  • 53d474a8e Roll third_party/freetype/src/ d3668e0..e969f52 (6 commits)
  • 5e6ead329 [rust png] Make libpng-dependent targets conditional.
  • dffbe9888 Consolidate the determination code for font styles
  • b3b74b1d1 Roll build, third_party/rust, clang, and tools/rust
  • ee0ba679a Roll abseil-cpp, buildtools, and libc++
  • bb669b8f8 Roll goldctl from 93cc2a2 to 53e5aa3
  • a61bc59be Roll Zlib from 85f05b0 to 5aa6173 (1 revision)
  • 7f43fd792 [rust png] Support using Rust-based PNG codec in XFA implementation.
  • 4d80852fd Update siso_version to 0915813
  • db3687db7 Revert "Add debugging data to help diagnose a hang in fread()"
  • e3387c5b1 Roll third_party/libc++abi/src/ f7f5a32..a02fa00 (4 commits)
  • 95856f11b Roll third_party/libunwind/src/ 6dc2f29..14b9dee (10 commits)
  • 4cb6688ca Roll third_party/llvm-libc/src/ dba78cf..006672b (52 commits)
  • a9cd189c6 Update reclient_version to re_client_version:0.185.0.db415f21-gomaip
  • ab7975e18 Roll third_party/icu/ 1b2e3e8..f27805b (6 commits)
  • 526366fa4 Roll v8/ 7f18b53..dd1717b (325 commits)
  • 3f8887d82 Update gn_version to 07d3c6f
  • ad29c35be Roll third_party/googletest/src/ 9df216c..b2b9072 (10 commits)
  • 797447805 Roll third_party/fp16/src/ b372061..3d2de18 (5 commits)
  • 639553c55 Roll third_party/skia/ 479696a..a1ff58d (61 commits; 6 trivial rolls)
  • ded86ac62 Roll third_party/clang-format/script/ 1549a8d..c2725e0 (20 commits)
  • 5bbc12ff9 Roll base/allocator/partition_allocator/ e3fec0a..2f4069f (9 commits)
  • d4c2dadd7 [rust png] Un-nest ProgressiveDecoderIface::Context.
  • b73d6847a [rust png] Stop using SkXPS...PngHelpers.h from PDFium.
  • b4b1cfd4d Move all FT_Load_Glyph calls into CFX_Face for consistency
  • 89afb3340 Remove dead code: CPWL_Edit::CutText()
  • 048a19460 Remove dead code: CPWL_Edit::{Copy,Paste}Text()
  • 216862ba4 [rust png] Introduce ProgressiveDecoder::PngReadMoreData.
  • 8f655643d [rust png] Deduplicate cleanup/return logic in PngContinueDecode.
  • b4937e9b4 [rust png] Devirtualize all methods of ProgressiveDecoderIface.
  • 3077cfa5a Roll libpng from dc2507e to 84d6766 (4 revisions)
  • f5c376f93 [rust png] Stop using hungarian (dwFoo / pFoo) in ReadMoreData.
  • 553e531de [rust png] Add explicit PngFinishedDecoding callback.
  • c890df130 [rust png] Remove unused ProgressiveDecoder::src_pass_number_ field.
  • e136238ea [rust png] Use new overload of SkXPS::MakeDocument.
  • d2c50ffd0 Roll third_party/skia/ 89a8bc5..479696a (104 commits; 20 trivial rolls)
  • 96a2bccf5 [rust png] Remove pass parameter from PngReadHeader.
  • 47dbb620e [rust png] Add ProgressiveDecoderTest unit test for a simple PNG.
  • dfba959ae Update bug IDs in TODOs in testing/SUPPRESSIONS and related test files
  • fa63d2782 Refactor CPDFSDK_PageView::OnKeyDown()
  • 4aa3b725c Upgrade libtiff from 4.7.0 to 4.7.1
  • b2e300aba Remove deprecated Skia SkPath API usage
  • 82125ddb8 [rust png] Decode PNGs directly into device_bitmap_.
  • a8cba1c40 [rust png] span-ify return type of PngAskScanlineBuf.
  • c6dac1b25 [rust png] Remove components_count and "bpc" from PngReadHeader.
  • 4c93f9f22 [rust png] Remove obsolete PngDecoderDelegate::DecodedColorType.
  • f0f8a099a [rust png] Check device_bitmap's format is always kBgra for PNGs.
  • 9ab3b8992 [rust png] Remove scanline_size_ field.
  • dd778d389 [rust png] Deduplicate code into a new GetScanlineSize method.
  • 923d946a1 Add crbug.com links to TODOs in testing/SUPPRESSIONS

v5.0.0

Compare Source

Changes (Release 5.0.0)
Summary (pypdfium2)

API changes

  • Rendering / Bitmap
    • Removed PdfDocument.render() (see deprecation rationale in v4.25 changelog). Instead, use PdfPage.render() with a loop or process pool.
    • Removed PdfBitmap.get_info() and PdfBitmapInfo, which existed mainly on behalf of data transfer with PdfDocument.render(). Instead, take the info from the PdfBitmap object directly. (If using an adapter that copies, you may want to store the relevant info in variables to avoid holding a reference to the original buffer.)
    • PdfBitmap.fill_rect(): Changed argument order. The color parameter now goes first.
    • PdfBitmap.to_numpy(): If the bitmap is single-channel (grayscale), use a 2d shape to avoid needlessly wrapping each pixel value in a list.
    • PdfBitmap.from_pil(): Removed recopy parameter.
  • Pageobjects
    • Renamed PdfObject.get_pos() to .get_bounds().
    • Renamed PdfImage.get_size() to .get_px_size().
    • PdfImage.extract(): Removed fb_render option because it does not fit in this API. If the image's rendered bitmap is desired, use .get_bitmap(render=True) in the first place.
  • PdfDocument.get_toc(): Replaced PdfOutlineItem namedtuple with method-oriented wrapper classes PdfBookmark and PdfDest, so callers may retrieve only the properties they actually need. This is closer to pdfium's original API and exposes the underlying raw objects. Provides signed count as-is rather than splitting in n_kids and is_closed. Also distinguishes between dest is None and a dest with unknown mode.
  • Renamed misleading PdfMatrix.mirror() parameters v, h to invert_x, invert_y, as the terms horizontal/vertical flip commonly refer to the transformation applied, not the axis around which is being flipped (i.e. the previous v meant flipping around the Y axis, which is vertical, but the resulting transform is inverting the X coordinates and thus actually horizontal). No behavior change if you did not use keyword arguments.
  • PdfTextPage.get_text_range(): Removed implicit translation of default calls to .get_text_bounded(), as pdfium reverted FPDFText_GetText() to UCS-2, which resolves the allocation concern. However, callers are encouraged to explicitly use .get_text_bounded() for full Unicode support.
  • Removed legacy version flags V_PYPDFIUM2, V_LIBPDFIUM, V_BUILDNAME, V_PDFIUM_IS_V8, V_LIBPDFIUM_FULL in favor of PYPDFIUM_INFO, PDFIUM_INFO.

Improvements and new features

  • Added PdfPosConv and PdfBitmap.get_posconv(page) helper for bidirectional translation between page and bitmap coordinates.
  • Added PdfObject.get_quad_points() to get the corner points of an image or text object.
  • Exposed PdfPage.flatten() (previously semi-private _flatten()), after having found out how to correctly use it. Added check and updated docs accordingly.
  • With PdfImage.get_bitmap(render=True), added scale_to_original option (defaults to True) to temporarily scale the image to its native pixel size. This should improve output quality and make the API substantially more useful. Thanks to Lei Zhang for the suggestion.
  • Added context manager support to PdfDocument, so it can be used in a with-statement, because opening from a file path binds a file descriptor (usually on the C side), which should be released explicitly, given OS limits.
  • If document loading failed, err_code is now assigned to the PdfiumError instance so callers may programmatically handle the error subtype. This addresses {issue}308.
  • In PdfPage.render(), added a new option maybe_alpha to use a pixel format with alpha channel if page content has transparency, as rendering to a non-alpha bitmap is inefficient with PDFium in this case. Therefore, it is recommended to set this option to True if dynamic (page-dependent) pixel format selection is acceptable. Alternatively, you might want to use only BGRA via force_bitmap_format=pypdfium2.raw.FPDFBitmap_BGRA (at the cost of occupying more memory compared to BGR).
  • In PdfBitmap.new_*() methods, avoid use of .from_raw(), and instead call the constructor directly, as most parameters are already known on the caller side when creating a bitmap.
  • PdfPage.remove_obj() is now aware of objects nested in Form XObjects, and will use the new pdfium API FPDFFormObj_RemoveObject() in that case. Correspondingly, a .container attribute has been added to PdfObject, which points to the parent Form XObject, or None if the object is not nested.
  • In the rendering CLI, added --invert-lightness --exclude-images post-processing options to render with selective lightness inversion. This may be useful to achieve a "dark theme" for light PDFs while preserving different colors, but goes at the cost of performance. (PDFium also provides a color scheme option, but this only allows you to set colors for certain object types, which are then forced on all instances of the type in question. This may flatten different colors into one, leading to a loss of visual information.)
  • Corrected some null pointer checks: we have to use bool(ptr) rather than ptr is None.
  • In PdfDocument.save(), changed default of flags from FPDF_NO_INCREMENTAL to 0, as suggested by an upstream maintainer.
  • Avoid creation of sized pointer types at runtime, to not blow up an unbounded pointer type cache of ctypes, which could effectively lead to a memory leak in a long-running application (i.e. do (type * size).from_address(addressof(first_ptr.contents)) instead of cast(first_ptr, POINTER(type * size)).contents). Thanks to Richard Hundt for the bug report, {issue}346. The root issue (ctypes using an unbounded cache in the first place) has been fixed recently in Python 3.14. See below for a list of APIs that were affected:
    • Anything using _buffer_reader/_buffer_writer under the hood (PdfDocument created from byte stream input, PdfImage.load_jpeg(), PdfDocument.save()).
    • PdfBitmap.from_raw() rsp. PdfBitmap._get_buffer() and their internal callers (PdfBitmap makers new_foreign and new_foreign_simple, PdfImage.get_bitmap()).
    • Also, some Readme snippets were affected, including the raw API rendering example. The Readme has been updated to mention the problem and use .from_address(...) instead.
    • With older versions of pypdfium2/python, periodically calling ctypes._reset_cache() can work around this issue.
  • Improved startup performance by deferring imports of optional dependencies to the point where they are actually needed, to avoid overhead if you do not use them.
  • Simplified version classes (no API change expected).

Platforms

  • Experimental Android (PEP 738) and iOS (PEP 730) support added.
    Android arm64_v8a, armeabi_v7a, x86_64, x86 and iOS arm64 device and arm64, x86_64 simulators are now handled in setup and should implicitly download the right pdfium-binaries. Provided on a best effort basis, and largely untested. Testers/feedback welcome.
  • pypdfium2's setup is now also capable of producing wheels for these platforms, but they will not actually be included in releases at this time. (Once Termux ships Python 3.13, we may want to publish Android arm64_v8a and maybe armeabi_v7a wheels, but we do not intend to provide wheels for simulators.)
  • iOS will not actually work yet, as the PEP indicates binaries ought to be moved to a special Frameworks location for permission reasons, in which case you'd also have to patch pypdfium2's library search. We cannot do anything about this yet without access to a device or clearer instructions. Community help would be appreciated here.
  • Added draft cibuildwheel workflow and configuration, as a second footing for the project (based on the native sourcebuild, see below). In the future, this may allow to stuff some Linux architecture gaps the quick & dirty way with emulation, or maybe new native runners. Many thanks to wojiushixiaobai for providing the initial workflow and helpful pointers.

Setup

  • When pdfium binaries are downloaded implicitly on setup or emplace.py is run, we now pin the pdfium version by default. This is to prevent possible API breakage when pypdfium2 is installed from source. It should also make the git dependency optional on default setup. update.py and craft.py continue to default to the latest pdfium-binaries version.
  • pdfium-binaries now use GitHub's new "immutable releases" feature and offer GitHub build provenance attestations, for enhanced supply chain safety. Many thanks to Benoit Blanchon and GitHub team. Conversely, update.py now exposes a --verify option to mandate checking the attestation, which is enabled in our release workflow. Otherwise, verification will be automatically enabled if the gh dependency is installed.
  • We finally have a build script that works without Google's toolchain, and instead uses system tools/libraries (build_native.py). This has been inspired by the libpdfium COPR / libpdfium-nojs AUR recipes. Thanks to the respective packagers for showing how to do this. By default, this will use the GCC compiler, but Clang should also work if you set up some symlinks. As of this writing, both passes on our Ubuntu x84_64/arm64 CI.
  • On host platforms not covered with pdfium-binaries, setup now looks for system/libreoffice pdfium. If this is not available either, build_native.py will be triggered. This can also be requested explicitly by setting PDFIUM_PLATFORM to fallback, system-search or build-native.
  • Reworked setup to expose all targets through PDFIUM_PLATFORM. Added proper system staging directory. Refactored integration of caller-provided data files to avoid ambiguity. See the updated Readme for details.
  • The toolchained build script continues to be available as well, but has been renamed from sourcebuild.py to build_toolchained.py.
  • Both build scripts now pin pdfium to the version last tested by pypdfium2-team.
  • With build_toolchained.py --update, avoid calling gclient revert and gclient sync, because this seems to sync twice, which is slow. Instead, call only gclient sync with -D --reset.
  • With pdfium-binaries, read the full version from the VERSION file embedded in the tarballs. This avoids a potentially expensive git ls-remote call to get Chromium tags.
  • Also added GIVEN_FULLVER and IGNORE_FULLVER env vars to manually set or skip the full version for other targets.
  • Use build-specific license files collected by pdfium-binaries. Replaced outdated LicenseRef-PdfiumThirdParty with BUILD_LICENSES/ directory.
  • Take PDFIUM_BINDINGS=reference into account on sourcebuild as well. Automatically fall back to reference bindings if ctypesgen is not installed (except on CI).
  • If packaging with PDFIUM_PLATFORM=sourcebuild, forward the platform tag determined by bdist_wheel's wrapper, rather than using the underlying sysconfig.get_platform() directly. This may provide more accurate results, e.g. on macOS.
  • Avoid needlessly calling _get_libc_ver(). Instead, call it only on Linux. A negative side effect of calling this unconditionally is that, on non-Linux platforms, an empty string may be returned, in which case the musllinux handler would be reached, which uses non-public API and isn't meant to be called on other platforms (though it seems to have passed).
  • Collect libraries with globbing patterns in later setup pipeline. This is a prerequisite in case we want to split off separate DLLs for some dependency libraries in the future (e.g. libjpeg).

Project

  • Replaced the bash ./run file with a justfile. Note that the runfile previously did not fail fast and propagate errors, which is potentially dangerous for a release workflow. This had been fixed on the runfile in v5.0.0b1 before introducing the justfile.
  • CI: Extended test matrices by Linux and Windows ARM64 (GH now provides free runners) and new Python versions.
  • Merged tests_old/ back into tests/.
  • Migrated from deprecated .reuse/dep5 to more visible REUSE.toml. Removed non-standard .reuse/dep5-wheel.
  • Docs: Improved logic when to include the unreleased version warning and upcoming changelog.
  • Bumped minimum pdfium requirement in conda recipe to >6635 (effectively >=6638), due to new errchecks.
  • Cleanly split out conda packaging into an own file, and confined it to the conda/ directory, to avoid polluting the main setup code.
pypdfium2 commit log

Commits between 5.0.0b2 and 5.0.0 (latest commit first):

  • 5ab1b3c [autorelease main] update 5.0.0
  • 6e2b804 workflows/trigger_main.yaml: fix dispatch
  • 7beb515 Clean up weird inconsistency in PdfPage.get_objects() code
  • 814ab5b PdfPage.render() docs: fix an oversight
  • 8bfd58e Fix windows cross-compilation targets (closes #​382)
  • baedbdf Attempt to fix windows sourcebuild
  • e4acf83 Comment cleanups
  • 6ba3e07 Issue template nits
  • ebde88f Readme: add another individual to Thanks section
  • 3ae2758 build_native: add full explanation for siso.patch case
  • fb47d39 text extraction: ack CRLF line breaks
  • 081463e update.py: tighten import
  • 5a85f3e Flatten setupsrc/pypdfium2_setup to just setupsrc/
  • a4caaf5 Actually drop the boilerplate and use local imports
  • daf5ec9 boilerplate: avoid bloating sys.path
  • f43b6b8 Further move verification logic to _verify.py
  • 14cc046 verify: move error handling to caller side
  • 683c8ce verify: use authenticated verification if available
  • 2a54c74 Outsource verification to an own file
  • 3e17edd Make verification less likely to fail setup
  • 5f0853d Readme nit
  • cca1255 update.py: IWYU: json
  • 29dd119 update.py: accelerate verification of multiple artifacts
  • efd837c Tokenless attestation verification
  • 5d74436 Register post_pdfium pin
  • 4312508 readme: ack required gh version
  • 934264f Migrate from slsa-verifier to gh attestation verify
  • 3a697c2 Readme: add wojiushixiaobai to Thanks section
  • d93975c build(deps): bump actions/setup-python from 5 to 6
  • 374ad8b Sourcebuild workflow refactoring (#​377)
  • dc858fe docs/conf.py: fix code blocks in markdown admonitions
  • 76a1f69 Cross-compilation instructions & code adaptions
  • fa08ac4 continue on readme
  • 7e6ea05 readme nit
  • b63376f Corrections around mac deployment target
  • 5990c3d Update changelog to reflect immutable releases
  • 0cb7eb5 Various small corrections/improvements
  • 5ca822a gh_pages: comment out rm -rf .doctrees/
  • aa17444 build(deps): bump actions/upload-pages-artifact from 3 to 4
  • 92f304d build(deps): bump actions/checkout from 4 to 5
  • 83d3d03 Add ar symlink to Readme as well
  • 5576d6c readme: update cibuildwheel section
  • ddd168e cibuildwheel mac/windows (#​375)
  • 4d5f58b build_toolchained: bump mac_deployment_target to 11
  • b1c9709 sourcebuild-native: add patch for musllinux ppc64le
  • 1df9569 Add missing emulated specifiers for s390x and ppc64le
  • e48e3f0 cibw: change SPDX info
  • bfefa3b cibw-one: improve job name
  • d0eb525 cibw-one: fix workflow_dispatch block
  • 5523e0b cibuildwheel, continued (#​374)
  • f5c1e8b build(deps): bump actions/checkout from 4 to 5
  • 47da6da cibuildwheel-related work (#​369)
  • 9701b0e build(deps): bump actions/download-artifact from 4 to 5
  • 5d4f312 conda.yaml: try to unify "Build package" step
  • 8a339a5 workflows: prefer env vars over templates in commands
  • 573d630 readme: comment out badge
  • fbd8f3b Refactor lazy imports implementation
  • 3569fb6 Rename use_bgra_on_transparency to maybe_alpha
  • 5d574a3 build_native nits
  • a8be9cf readme: add nv-ingest to popular dependents
  • c59411b docs/conf.py: actually comment out rst_prolog entirely
  • 29138c0 readme/dev: add missing push step
  • 07bc3a9 docs/conf.py: ignore changelog on beta release
  • 46cd411 docs/conf.py: fix nasty or-expression blunder
  • 622e10e Reinstate conda_raw release schedule
PDFium commit log

Commits between 7323 and 7483 (latest commit first):

  • 7a0db5a38 Add a script for converting pdf files to .in format
  • eaebc130d Fix undo/redo when typing over selected text
  • e0b782b23 Test all of the cases of typing into an edit box
  • 564cdec37 [rust png] Use SkDynamicMemoryWStream::detachAsVector method.
  • b377bab56 Roll build, clang, and rust
  • 536f60ee2 Roll third_party/skia/ 57866d8..89a8bc5 (76 commits; 12 trivial rolls)
  • f219a975c Ignore cmd+tab shortcuts in FORM_OnKeyDown
  • d22ddc087 Don't block edit shortcuts in CXFA_FFField::OnKeyDown
  • b53313721 Don't block edit shortcuts in CPWL_Edit::OnKeyDown
  • 6334ac2f5 Test edit shortcut handling in FORM_OnKeyDown()
  • 90a5b27be [rust png] Replace src_color_type with components_count.
  • 532da19dc Rename bpc to bits_per_component (also rename components).
  • d24f1d804 Ma

Configuration

📅 Schedule: Branch creation - "every weekend" in timezone US/Eastern, Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot force-pushed the renovate/pypdfium2-5.x branch 4 times, most recently from 0a4a1cc to ed79ae4 Compare December 1, 2025 16:19
@renovate renovate bot force-pushed the renovate/pypdfium2-5.x branch 13 times, most recently from fecc966 to 76a9dd6 Compare December 12, 2025 17:31
@renovate renovate bot force-pushed the renovate/pypdfium2-5.x branch from 76a9dd6 to 6c9712f Compare December 12, 2025 21:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant