Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python-pikepdf for openSUSE:Factory 
checked in at 2026-10-12 22:07:19
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-pikepdf (Old)
 and      /work/SRC/openSUSE:Factory/.python-pikepdf.new.3698736 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-pikepdf"

Mon Oct 12 22:07:19 2026 rev:37 rq:1384243 version:10.17.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-pikepdf/python-pikepdf.changes    
2026-10-01 16:45:21.992819538 +0200
+++ 
/work/SRC/openSUSE:Factory/.python-pikepdf.new.3698736/python-pikepdf.changes   
    2026-10-12 22:07:24.817795273 +0200
@@ -1,0 +2,73 @@
+Mon Oct 12 06:04:56 UTC 2026 - Martin Hauke <[email protected]>
+
+- Update to version 10.17.0
+  * Added {class}pikepdf.ObjectSet, which records the objects that
+    a walk of a PDF's object graph has already visited.
+  * Added {meth}pikepdf.Object.is_same_object_as.
+  * Added {meth}pikepdf.Pdf.content_scopes and
+    {meth}pikepdf.Page.content_scopes
+  * Added {meth}pikepdf.Page.get_resources.
+  * Fixed comparing two objects with == taking exponential time
+    when the objects being compared share children, such as the
+    same file opened twice.  Each pair of objects is now compared
+    once.
+  * Fixed {meth}pikepdf.Pdf.add_pages_from hanging on a page with
+    an action whose /Next actions are shared or form a loop.
+  * Fixed {meth}pikepdf.Pdf.open_outline reading only the first
+    item at each level of an outline whose items are direct
+    objects. Such items are now made indirect when the outline is
+    saved, as the PDF specification requires.
+  * Reading a stream that will not decode now raises
+    {exc}~pikepdf.exceptions.DataDecodingError with the reason,
+    whether the stream's data was read from a file or set from
+    memory. Previously a stream read from a file raised a
+    {exc}~pikepdf.exceptions.PdfError that said only
+    "read_bytes called on unfilterable stream", and the reason was
+    available only from {meth}pikepdf.Pdf.get_warnings.
+    DataDecodingError is a PdfError, so existing handlers are
+    unaffected. {issue}182
+  * An exception raised by a JBIG2 decoder now reaches the caller
+    of {meth}pikepdf.PdfImage.as_pil_image,
+    {meth}pikepdf.PdfImage.extract_to and
+    {meth}pikepdf.PdfImage.read_bytes unchanged, with its own type,
+    message and traceback. Previously, for an image read from a
+    file, it was replaced by a generic DataDecodingError or
+    PdfError. {issue}182
+  * Added {exc}~pikepdf.exceptions.QpdfRuntimeError, raised for
+    errors from qpdf that pikepdf has no more specific exception
+    for. These were previously raised as a bare RuntimeError, which
+    except pikepdf.PikepdfError did not catch. The new exception
+    derives from both {exc}~pikepdf.exceptions.PikepdfError and
+    RuntimeError, so handlers written for RuntimeError still work.
+  * The empty name / is now supported. The PDF 1.7 and 2.0
+    specifications define a lone slash as a valid name made of
+    zero characters, but pikepdf.Name('/') raised ValueError, and
+    dictionaries refused / as a key. This broke
+    {meth}pikepdf.Pdf.add_pages_from on files with an
+    empty-named destination such as /Dests << / 3 0 R >>. Such names
+    can now be created, used as dictionary keys, and migrated during
+    page copying. bool(Name('/')) is False, like an empty
+    {class}pikepdf.String. Name(''), which lacks the leading slash,
+    is still rejected. PDF/A does not forbid empty names, and the
+    PDF/A validator accepts them. {issue}745
+  * AcroFormField.get_inheritable_field_value_as_name() now returns
+    a {class}pikepdf.Name, as documented, instead of a str. When the
+    value is missing or not a name, it returns the empty name
+    Name('/'), which is falsy, instead of ''. Comparisons such as
+    == '/Tx' are unaffected. {issue}748
+  * Fixed an out-of-bounds read when opening a PDF from a Python
+    file object whose readinto() reports more bytes than were
+    requested. This now raises ValueError, as writing to such a
+    stream already did. Non-blocking streams,
+    whose readinto() returns None, now raise ValueError instead
+    of hanging. {issue}747
+  * {func}pikepdf.open reads directly from the file descriptor
+    when given a filename, instead of calling the seek() and
+    readinto() methods of a Python file object for every read.
+    Opening and reading a large file with many objects is about
+    four to five times faster, matching the speed of memory
+    mapping (access_mode=AccessMode.mmap). Streams passed to
+    {func}pikepdf.open, including plain file objects, are read
+    through their methods as before.
+
+-------------------------------------------------------------------

Old:
----
  pikepdf-10.16.0.tar.gz

New:
----
  pikepdf-10.17.0.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ python-pikepdf.spec ++++++
--- /var/tmp/diff_new_pack.w97yto/_old  2026-10-12 22:07:25.794835603 +0200
+++ /var/tmp/diff_new_pack.w97yto/_new  2026-10-12 22:07:25.796835686 +0200
@@ -19,7 +19,7 @@
 
 %{?sle15_python_module_pythons}
 Name:           python-pikepdf
-Version:        10.16.0
+Version:        10.17.0
 Release:        0
 Summary:        Read and write PDFs with Python, powered by qpdf
 License:        MPL-2.0
@@ -29,7 +29,9 @@
 ## SECTION test requirements
 BuildRequires:  %{python_module Pillow >= 10.0.1}
 BuildRequires:  %{python_module devel >= 3.10}
+BuildRequires:  %{python_module fonttools >= 4.40}
 BuildRequires:  %{python_module hypothesis >= 6.36}
+BuildRequires:  %{python_module jsonschema >= 4.18}
 BuildRequires:  %{python_module lxml >= 4.8}
 BuildRequires:  %{python_module nanobind-devel >= 2.0}
 BuildRequires:  %{python_module packaging}
@@ -37,6 +39,8 @@
 BuildRequires:  %{python_module pytest >= 6.2.5}
 BuildRequires:  %{python_module pytest-cov >= 3.0.0}
 BuildRequires:  %{python_module pytest-helpers-namespace >= 2019.1.8}
+BuildRequires:  %{python_module tzdata}
+BuildRequires:  timezone
 # Upstream use pytest-timeout >= 1.4.2
 BuildRequires:  %{python_module pytest-timeout >= 2.1.0}
 BuildRequires:  %{python_module pytest-xdist >= 2.5.0}
@@ -74,7 +78,7 @@
 %python_expand %fdupes %{buildroot}%{$python_sitearch}
 
 %check
-%pytest_arch -k "not test_minimum_qpdf_version"
+%pytest_arch -k "not test_minimum_qpdf_version and not 
test_descriptor_reads_match_stream_reads_damaged"
 
 %files %{python_files}
 %license LICENSE.txt

++++++ pikepdf-10.16.0.tar.gz -> pikepdf-10.17.0.tar.gz ++++++
/work/SRC/openSUSE:Factory/python-pikepdf/pikepdf-10.16.0.tar.gz 
/work/SRC/openSUSE:Factory/.python-pikepdf.new.3698736/pikepdf-10.17.0.tar.gz 
differ: char 23, line 1

Reply via email to