14
0

4 Commits

Author SHA256 Message Date
262f03cb7b Accepting request 1309606 from devel:languages:python
Automatic submission by obs-autosubmit

OBS-URL: https://build.opensuse.org/request/show/1309606
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-pikepdf?expand=0&rev=29
2025-10-07 16:29:17 +00:00
241decae35 - update to 9.11.0:
- Upgraded to cibuildwheel 3.1.4.
  - We now build wheels for the CPython 3.14 prerelease (but
    without freethreading, since lxml does not release wheels with
    freethreading).
  - Now using uv for building.
  - Fixed broken link in documentation.
  - Migrated all remaining uses of "dumb" pointer holders to
    ``py::smart_holder``.
  - Updated contributing guidelines and build steps.
  - Fixed type signature of AttachedFileSpec to clarify its usage.
  - Fixed missing default /Decode for image masks. {issue}`664`
  - Fixed a missing dependency for ReadTheDocs documentation
    generation.
  - Upgraded to pybind11 3.0, which is now required. Changed many
    of our pointer holder types to use the py::smart_holder.
  - ``Pdf.check()`` is now deprecated, in favor of ``Pdf.check_pdf_syntax()``.
  - Use explicit page number substitution in mupdf to avoid
    problems in how it names output files. {issue}`661`
  - Upgraded to cibuildwheel 3.0.0.
  - C++-20 compiler is now required for building pikepdf.
  - Fixed a reference counting test on Python 3.14a.
  - We no longer build PyPy wheels by default.
  - If a folder named ``../qpdf`` is found, we automatically use
    that as the companion qpdf when building. For developers this
    means building works without setting environment variables.
    Environment variables can still be set to redirect to specific
    installation.
  - Introduced a new {class}`DimensionedFont` to avoid breaking
    changes in other code (mainly OCRmyPDF) that subclasses

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-pikepdf?expand=0&rev=58
2025-09-30 11:27:33 +00:00
ec1aa1147e Accepting request 1225560 from devel:languages:python
- update to 9.4.2:
  * Internal type assertion error messages from qpdf that previously
    triggered a RuntimeError will now raise a PdfError. Generally
    these errors only occur in corrupted files.
  * When we are updating XMP in the processing of saving, errors
    from updating XML are wrapped differently to clarify the
    context in which the error occurs.
  * Fixed a process abort in JBIG2 handling related to cleanup of
    Python objects owned by C++ code.
  * Fixed inconsistent behavior when setting metadata records to an
    empty value.  :issue:`622`
  * Added missing Python 3.13 wheels for a few platforms that were
    missing them, mainly ARM Linux, musllinux/Alpine, and Windows.
  * Since Homebrew has ended support for macOS 12, macOS 13 is now
    the minimum requirement for Intel macOS.
  * Suppressed some spurious warnings during build tests.
  * Integrated OSS Fuzz.
  * Prevented generation of PDF date strings with invalid trailing
    apostrophes, while still accepting them.
  * Improved error message on parsing invalid date strings.
  * Dropped support for Python 3.8 (end of life October 2024).
  * Fixed some inconsistencies with the pikepdf.Rectangle class.
  * Python 3.13 with free-threading added to test matrix.
  * Removed wheel package as build requirement since modern packing
    no longer needs it.
  * Updated C++/Python exception translation to new pybind11
    2.12.0+ protocol, fixing possible undefined behavior in
    multithreaded applications.
  * pybind11 2.12.0 is now required.
  * qpdf 11.9.1 is now used to build wheels.

OBS-URL: https://build.opensuse.org/request/show/1225560
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-pikepdf?expand=0&rev=28
2024-11-21 14:19:27 +00:00
6db6aebbbd - update to 9.4.2:
* Internal type assertion error messages from qpdf that previously
    triggered a RuntimeError will now raise a PdfError. Generally
    these errors only occur in corrupted files.
  * When we are updating XMP in the processing of saving, errors
    from updating XML are wrapped differently to clarify the
    context in which the error occurs.
  * Fixed a process abort in JBIG2 handling related to cleanup of
    Python objects owned by C++ code.
  * Fixed inconsistent behavior when setting metadata records to an
    empty value.  :issue:`622`
  * Added missing Python 3.13 wheels for a few platforms that were
    missing them, mainly ARM Linux, musllinux/Alpine, and Windows.
  * Since Homebrew has ended support for macOS 12, macOS 13 is now
    the minimum requirement for Intel macOS.
  * Suppressed some spurious warnings during build tests.
  * Integrated OSS Fuzz.
  * Prevented generation of PDF date strings with invalid trailing
    apostrophes, while still accepting them.
  * Improved error message on parsing invalid date strings.
  * Dropped support for Python 3.8 (end of life October 2024).
  * Fixed some inconsistencies with the pikepdf.Rectangle class.
  * Python 3.13 with free-threading added to test matrix.
  * Removed wheel package as build requirement since modern packing
    no longer needs it.
  * Updated C++/Python exception translation to new pybind11
    2.12.0+ protocol, fixing possible undefined behavior in
    multithreaded applications.
  * pybind11 2.12.0 is now required.
  * qpdf 11.9.1 is now used to build wheels.

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-pikepdf?expand=0&rev=56
2024-11-21 10:04:58 +00:00
4 changed files with 140 additions and 7 deletions

View File

@@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:653aceedb2b3a4cdb579a55aaf78632b434b7cd53e2557b2bc8c8590bfe1d92b
size 2870723

3
pikepdf-9.11.0.tar.gz Normal file
View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:5ad6bffba08849c21eee273ba0b6fcd4b6a9cff81bcbca6988f87a765ba62163
size 4546289

View File

@@ -1,3 +1,136 @@
-------------------------------------------------------------------
Tue Sep 30 06:48:05 UTC 2025 - Dirk Müller <dmueller@suse.com>
- update to 9.11.0:
- Upgraded to cibuildwheel 3.1.4.
- We now build wheels for the CPython 3.14 prerelease (but
without freethreading, since lxml does not release wheels with
freethreading).
- Now using uv for building.
- Fixed broken link in documentation.
- Migrated all remaining uses of "dumb" pointer holders to
``py::smart_holder``.
- Updated contributing guidelines and build steps.
- Fixed type signature of AttachedFileSpec to clarify its usage.
- Fixed missing default /Decode for image masks. {issue}`664`
- Fixed a missing dependency for ReadTheDocs documentation
generation.
- Upgraded to pybind11 3.0, which is now required. Changed many
of our pointer holder types to use the py::smart_holder.
- ``Pdf.check()`` is now deprecated, in favor of ``Pdf.check_pdf_syntax()``.
- Use explicit page number substitution in mupdf to avoid
problems in how it names output files. {issue}`661`
- Upgraded to cibuildwheel 3.0.0.
- C++-20 compiler is now required for building pikepdf.
- Fixed a reference counting test on Python 3.14a.
- We no longer build PyPy wheels by default.
- If a folder named ``../qpdf`` is found, we automatically use
that as the companion qpdf when building. For developers this
means building works without setting environment variables.
Environment variables can still be set to redirect to specific
installation.
- Introduced a new {class}`DimensionedFont` to avoid breaking
changes in other code (mainly OCRmyPDF) that subclasses
{class}`Font`. Remove the new abstract methods from
{class}`Font.
- Added a significant new feature to support filling and
rendering PDF forms. Thanks @dmjohnsson23. See `pikepdf.form`
and `pikepdf.canvas`.
- Now building wheels against qpdf 12.2.0.
- We no longer build PyPy wheels on Windows, due to strange test
failures that appear there and nowhere else.
- Merged {pr}`639`, a branch containing support for calculating
the current transformation matrix at time of rendering. This is
a valuable building block for users wishing to determine when
and where images are drawn.
- Clarified need for setuptools 77.0.3 to build. {issue}`648`
- `pikepdf.Object` that are indirect objects now raise an
exception on attempts to hash them (add to dict-type
containers), since they are in fact potentially
mutable. For now, direct objects can still be hashed, but this
is likely to be discontinued. {issue}`647`
- Wheels are now built against qpdf 12.0.0, which should bring
performance improvements for most workloads.
- qpdf 11.9.0 is now the minimum build requirement.
- We no longer build PyPy wheels on macOS, due to poor supporting
infrastructure and unfixed issues. pikepdf will likely drop
PyPy in its next major release.
- `pikepdf._core._ObjectList` no longer reports its `repr()`
correctly on Windows. This issue appears to be a compiler bug
in MSVC++ and has no known resolution, but also very minor
impact.
- setuptools 77.0.3 is now required for building.
- Updates to tooling.
- Fixed an issue where temporary files could be left behind when
using allow_overwriting_input=True and a SIGINT is sent while
the file is being flushed to disk, or generally within a
specific timing window.
- Fixed an issue via OCRmyPDF by replacing an invalid Document
Info dictionary with a valid dictionary.
- Bump version to address sigstore build issues.
- Pillow dropped PyPy 3.9 so we're dropping it too.
- Created setter for Outline management to make manipulating outlines easier.
- pikepdf now sets XMP properties as subelements instead of
inline properties, in line with the XMP specification.
- pikepdf an issue with converting certain images to PIL
- Added a new `pikepdf.exceptions` module which organizes all
exceptions more conveniently.
- pikepdf now tries harder to extract corrupt images in a PDF
when they are found.
- Fixed an issue where an exception handler referred to an object
not in scope, causing another exception.
- Dropped a comment about an unsupported dependency.
-------------------------------------------------------------------
Thu Nov 21 10:01:31 UTC 2024 - Dirk Müller <dmueller@suse.com>
- update to 9.4.2:
* Internal type assertion error messages from qpdf that previously
triggered a RuntimeError will now raise a PdfError. Generally
these errors only occur in corrupted files.
* When we are updating XMP in the processing of saving, errors
from updating XML are wrapped differently to clarify the
context in which the error occurs.
* Fixed a process abort in JBIG2 handling related to cleanup of
Python objects owned by C++ code.
* Fixed inconsistent behavior when setting metadata records to an
empty value. :issue:`622`
* Added missing Python 3.13 wheels for a few platforms that were
missing them, mainly ARM Linux, musllinux/Alpine, and Windows.
* Since Homebrew has ended support for macOS 12, macOS 13 is now
the minimum requirement for Intel macOS.
* Suppressed some spurious warnings during build tests.
* Integrated OSS Fuzz.
* Prevented generation of PDF date strings with invalid trailing
apostrophes, while still accepting them.
* Improved error message on parsing invalid date strings.
* Dropped support for Python 3.8 (end of life October 2024).
* Fixed some inconsistencies with the pikepdf.Rectangle class.
* Python 3.13 with free-threading added to test matrix.
* Removed wheel package as build requirement since modern packing
no longer needs it.
* Updated C++/Python exception translation to new pybind11
2.12.0+ protocol, fixing possible undefined behavior in
multithreaded applications.
* pybind11 2.12.0 is now required.
* qpdf 11.9.1 is now used to build wheels.
* Modernized copyright information to REUSE.toml specification.
* Added a new test file for a rare case, CCITT with EndOfLine=True.
* Fixed handling of CalRGB and CalGray images with palettes.
* Fixed a test suite failure when numpy 2.1 is installed. :issue:`603`
* Prevented use of setuptools 72+ since it seems to introduce build errors.
* Added a missing #include header. :issue:`600`
* Fixed an issue where small floating point values would be recorded in
scientific notation, contrary to the PDF specification. :issue:`598`
* Fixed some false positive warnings on Windows C++ compilers.
* Improved support for Python 3.13 pre-release.
* Fixed a potential resource leak if we opened a file to read it
as a PDF but it was not a valid PDF.
* When overwriting an existing PDF with ``Pdf.save()``, pikepdf
now attempts to retain the original file permissions and
ownership.
* Fixed missing return type for PageList.Extend. :issue:`592`
------------------------------------------------------------------- -------------------------------------------------------------------
Thu May 2 08:23:18 UTC 2024 - Dirk Müller <dmueller@suse.com> Thu May 2 08:23:18 UTC 2024 - Dirk Müller <dmueller@suse.com>

View File

@@ -1,7 +1,7 @@
# #
# spec file for package python-pikepdf # spec file for package python-pikepdf
# #
# Copyright (c) 2024 SUSE LLC # Copyright (c) 2025 SUSE LLC and contributors
# Copyright (c) 2020-2021, Martin Hauke <mardnh@gmx.de> # Copyright (c) 2020-2021, Martin Hauke <mardnh@gmx.de>
# #
# All modifications and additions to the file contributed by third parties # All modifications and additions to the file contributed by third parties
@@ -19,7 +19,7 @@
%{?sle15_python_module_pythons} %{?sle15_python_module_pythons}
Name: python-pikepdf Name: python-pikepdf
Version: 8.15.1 Version: 9.11.0
Release: 0 Release: 0
Summary: Read and write PDFs with Python, powered by qpdf Summary: Read and write PDFs with Python, powered by qpdf
License: MPL-2.0 License: MPL-2.0
@@ -36,8 +36,8 @@ BuildRequires: %{python_module hypothesis >= 6.36}
BuildRequires: %{python_module lxml >= 4.8} BuildRequires: %{python_module lxml >= 4.8}
BuildRequires: %{python_module packaging} BuildRequires: %{python_module packaging}
BuildRequires: %{python_module psutil >= 5.9} BuildRequires: %{python_module psutil >= 5.9}
BuildRequires: %{python_module pybind11 >= 2.10.1} BuildRequires: %{python_module pybind11 >= 3.0.0}
BuildRequires: %{python_module pybind11-devel >= 2.10.0} BuildRequires: %{python_module pybind11-devel >= 3.0.0}
BuildRequires: %{python_module pytest >= 6.2.5} BuildRequires: %{python_module pytest >= 6.2.5}
BuildRequires: %{python_module pytest-cov >= 3.0.0} BuildRequires: %{python_module pytest-cov >= 3.0.0}
BuildRequires: %{python_module pytest-forked} BuildRequires: %{python_module pytest-forked}