Index index by Group index by Distribution index by Vendor index by creation date index by Name Mirrors Help Search

qpdf-11.9.1-1.2 RPM for x86_64

From OpenSuSE Tumbleweed for x86_64

Name: qpdf Distribution: openSUSE Tumbleweed
Version: 11.9.1 Vendor: openSUSE
Release: 1.2 Build date: Thu Jun 13 17:34:21 2024
Group: Development/Libraries/C and C++ Build host: reproducible
Size: 1173956 Source RPM: qpdf-11.9.1-1.2.src.rpm
Packager: https://bugs.opensuse.org
Url: https://qpdf.sourceforge.io/
Summary: Command-line tools and library for transforming PDF files
QPDF is a program that does structural, content-preserving
transformations on PDF files.  It could have been called something
like pdf-to-pdf.  It also provides many useful capabilities to
developers of PDF-producing software or for people who just want to
look at the innards of a PDF file to learn more about how they work.

QPDF offers many capabilities such as linearization (web
optimization), encrypt, and decryption of PDF files.  Note that QPDF
does not have the capability to create PDF files from scratch; it is
only used to create PDF files with special characteristics starting
from other PDF files or to inspect or extract information from
existing PDF files.

Provides

Requires

License

Apache-2.0

Changelog

* Thu Jun 13 2024 Dirk Müller <dmueller@suse.com>
  - update to 11.9.1:
    * Rewrite a recursive function to be iterative in linearization
      to enable more complex files to be linearized, especially on
      Windows.
    * Avoid non-standard use of `std::basic_string_view`.
* Thu Feb 29 2024 Pedro Monreal <pmonreal@suse.com>
  - Update to 11.9.0:
    * CLI Enhancements
    - Add new command-line arguments --file and --range which can be
      used within --pages in place of positional arguments. Allow
    - -file to be used inside of --overlay and --underlay as well.
      These new options can be freely intermixed with positional
      arguments.
    - Allow --overlay and --underlay to be repeated. They may appear
      multiple times on the command-line and will be stacked in the
      order in which they appear. In QPDFJob JSON (see QPDFJob: a
      Job-Based Interface), the overlay and underlay keys may contain
      arrays. For compatibility, they may also contain a single dictionary.
    * Library Enhancements
    - Add file(), range(), and password() to QPDFJob::PagesConfig
      as an alternative to pageSpec.
    - Add QPDFObjectHandle::writeJSON to write the JSON representation
      of the object directly to a pipeline. This is much faster than
      calling QPDFObjectHandle::getJSON.
    * Other Enhancements
    - There have been non-user-visible improvements to the reliability
      of the JSON parser. The JSON parser has been added to fuzz testing
      with OSS-Fuzz.
    * Remove openssl3_2-fuzz-16214.patch fixed upstream
* Wed Jan 17 2024 Otto Hollmann <otto.hollmann@suse.com>
  - Temporary workaround for test fuzz-16214 (bsc#1218902)
    * Add openssl3_2-fuzz-16214.patch
  - Update to 11.8.0:
    * Bug fixes:
    - When flattening annotations, preserve hyperlinks and other annotations
      that inherently have no appearance information.
    * CLI Enhancements
    - Introduce x in the numeric range syntax to allow exclusion of pages
      within a page range. See Page Ranges for details.
    - Support comma-separated numeric values with --collate to select
      different numbers of pages from different groups.
    - Add --set-page-labels option to completely override page labels in the
      output.
    * Library Enhancements
    - Add API to support --set-page-labels:
    - QPDFJob::Config::setPageLabels
    - pdf_page_label_e enumerated type
    - QPDFPageLabelDocumentHelper::pageLabelDict
    - Improve file recovery logic to better handle files with cross-reference
      streams. This should enable qpdf to recover some files that it would
      previously have reported “unable to find trailer dictionary.”
* Wed Dec 27 2023 Dirk Müller <dmueller@suse.com>
  - update to 11.7.0:
    * Add QPDFAcroFormDocumentHelper::disableDigitalSignatures,
      which disables any digital signature fields, leaving their
      visual representations intact.
      The --remove-restrictions command-line argument now calls this.
    * Generate a more complete qpdf "man page" from the same source
      as qpdf --help. Fixes #1064.
    * Allow the syntax "--encrypt --user-password=user-password
    - -owner-password=owner-password --bits={40,128,256}" when
      encrypting PDF files. This is an alternative to the syntax
      "--encrypt user-password owner-password {40,128,256}", which
      will continue to be supported. The new syntax works better with
      shell completion and allows creation of passwords that start
      with "-".
    * When setting a check box value, allow any value other than
      /Off to mean checked. This is permitted by the spec.
    * Fix to QPDF JSON: a floating point number that appears in
      scientific notation will be converted to fixed-point notation,
      rounded to six digits after the decimal point.
    * Fix to QPDF JSON: the syntax "n:/pdf-syntax" is now accepted
      as an alternative way to represent names. This can be used for
      any name (e.g. "n:/text#2fplain"), but it is necessary when the
      name contains binary characters.
    * Update code and tests so that qpdf's test suite no longer
      depends on the output of any specific zlib implementation.
      This makes it possible to get a fully passing test suite with any
      API-compatible zlib library. CI tests with the default zlib
      as well as zlib-ng (including verifying that zlib-ng is not the
      default), but any zlib implementation should work. Fixes
      [#774].
    * Bug fix: with --compress-streams=n, don't compress object,
      XRef, or linearization hint streams.
    * Add new C++ functions "qpdf_c_get_qpdf" and "qpdf_c_wrap" to
      qpdf-c.h that make it possible to write your own extern "C"
      functions in C++ that interoperate with the C API. See
      examples/extend-c-api for more information.
* Fri Dec 15 2023 Dirk Müller <dmueller@suse.com>
  - update to 11.6.4:
    * Install fix: include cmake files with the dev component.
    * Build AppImage with an older Linux distribution to support
      AWS Lambda. Fixes #1086.
* Sun Oct 29 2023 Dirk Müller <dmueller@suse.com>
  - update to 11.6.3:
    * Tweak linearization code to better handle files between 2 GB
      and 4 GB in size. Fixes #1023.
    * Fix data loss bug: qpdf could discard a the character after
      an escaped octal string consisting of less than three
      digits. For content, this would only happen with QDF or when
      normalizing content. Outside of content, it could have happened
      in any binary string, such as /ID, if the encoding software used
      octal escape strings with less than three digits. This bug was
      introduced between 10.6.3 and 11.0.0.
* Tue Oct 10 2023 Paolo Stivanin <info@paolostivanin.com>
  - version update to 11.6.2:
    * Bug fix: when piping stream data, don't call finish on failure
      if the failure was caused by a previous call to finish.
* Mon Oct 02 2023 pgajdos@suse.com
  - version update to 11.6.1
    * Bug fixes:
    - Fix a logic error introduced in 11.6.0 in the fix to copyForeignObject.
      The bug could result in some pages not being copied.
* Mon Sep 04 2023 pgajdos@suse.com
  - version update to 11.6.0
    - Bug fixes:
    - Fix corner case in the ASCII85 decoder.
    - Properly report warnings when ``--pages`` is used and the
      warnings appear in other than the primary file.
    - Improve ``--bash-completion`` and ``--zsh-completion`` to better
      support paths with spaces in them.
    - Move detection of random number device from compile-time to
      runtime to improve cross compilation.
    - Fix bugs around attempting to copy ``/Pages`` objects with
      ``copyForeignObject`` (which explicitly doesn't allow this).
* Tue Jul 25 2023 ecsos <ecsos@opensuse.org>
  - Don't build doc for Leap. Will break building of packages.
    Only build doc for Tumbleweed.
* Thu Jul 13 2023 Paolo Stivanin <info@paolostivanin.com>
  - Update to 11.5.0:
    * When copying the same page more than once, ensure that annotations
      are copied and not shared among multiple pages.
    * Add new method Buffer::copy and deprecate Buffer copy constructor
      and assignment operator. Buffer copies are expensive and should be
      done explicitly.
    * The source code was reformatted to 100 columns instead of 80.
      Numerous cosmetic changes and changes suggested by clang-tidy were made.
* Wed Jun 07 2023 pgajdos@suse.com
  - version update to 11.4.0
    CLI Enhancements
    * The --optimize-images option now optimizes images inside of form XObjects.
    Library Enhancements
    * Allow QPDFJob’s workflow to be split into a reading phase and a writing
      phase to allow the caller to operate on the QPDF object before it is written.
      This adds methods QPDFJob::createQPDF and QPDFJob::writeQPDF and corresponding
      C API functions qpdfjob_create_qpdf and qpdfjob_write_qpdf.
    * Add QPDF::newReserved as a better alternative to QPDFObjectHandle::newReserved.
    * If you add an uninitialized QPDFObjectHandle to an array, qpdf will throw a
      logic_error. It has always been invalid to do this, but before, it wouldn’t
      have been caught until later.
    Bug fixes
    * Ignore an annotation’s appearance state when the annotation only has one
      appearance. This prevents qpdf’s annotation flattening logic from throwing
      away appearances of annotations whose annotation state is set incorrectly,
      as has been seen in some PDF files.
* Thu Mar 02 2023 Martin Liška <mliska@suse.cz>
  - Use -fexcess-precision=fast as GCC 13 changes the default
    for C++ compiler and without the change some tests fail on i586.
* Wed Mar 01 2023 Paolo Stivanin <info@paolostivanin.com>
  - update to 11.3.0:
    * When performing overlay or underlay operations, convert the
      original page to a form XObject instead of simply isolating its
      contents with q/Q operators. This prevents unbalanced q/Q
      operators in any of the original pages from messing up the
      graphics state of anything that is overlaid on top of it.
* Sat Dec 03 2022 Dirk Müller <dmueller@suse.com>
  - update to 11.2.0:
    * Move stream creation functions in the QPDF object where they belong. The ones
      in QPDFObjectHandle are not deprecated and will stick around.
    * Add some convenience methods to QPDFTokenizer::Token for testing token types.
      This is part of qpdf’s lexical layer and will not be needed by most developers.
    * Fix issue with missing symbols in the mingw build.
    * Fix major performance bug with the OpenSSL crypto provider. This bug was
      causing a 6x to 12x slowdown for encrypted files when OpenSSL 3 was in use.
      This includes the default Windows builds distributed with the qpdf release.
    * Fix obscure bug involving appended files that reuse an object number that was
      used as a cross reference stream in an earlier stage of the file.
* Wed Oct 12 2022 C J <c.j@tuta.io>
  - update to 11.1.1:
    * Bug fixes for #778 & #789
    * Code tidying and performance improvements
  - version 11.1.0: Build fixes
  - version 11.0.0:
    * Replacement of PointerHolder with std::shared_ptr
    * JSON output mode is now at version 2
    * Performance improvements, cleanup and refactoring.
    * CLI: breaking changes:
      The --show-encryption flag now provides encryption information
      even if a correct password is not supplied.
      Default json output version with --json has changed from 1 to 2.
      The --allow-weak-crypto flag is now mandatory when explicitly
      creating files with weak cryptographic algorithms.
    * API: breaking changes:
      Deprecate QPDFObject.hh for removal in qpdf 12.
      Pipeline::write use unsigned char const* instead of unsigned char*.
      Deprecated QPDFAcroFormDocumentHelper::copyFieldsFromForeignPage.
      The function passed to and called by QPDFJob::doIfVerbose now
      takes a Pipeline& argument instead of a std::ostream& argument.
      Remove pre qpdf-8.4.0 encryption API methods from QPDFWriter and
      their corresponding C API functions.
      QPDFObjectHandle::warnIfPossible no longer takes an optional
      argument to throw an exception if there is no description.
      QPDF objects can no longer be copied or assigned to.
    * CLI Enhancements
    * Library Enhancements:
      A new object QPDFLogger has been added.
      In QPDFObjectHandle, new methods insertItemAndGetNew,
      appendItemAndGetNew, and replaceKeyAndGetNew. New methods
      eraseItemAndGetOld, replaceKeyAndGetOld, and removeKeyAndGetOld.
      QPDFObjectHandle::isDestroyed method.
      QPDFObjectHandle::getOwningQPDF method now returns a null pointer
      when the owning QPDF object has been destroyed.
      QPDFObjectHandle::getQPDF is an alternative to
      QPDFObjectHandle::getOwningQPDF.
      Add method QPDFObjectHandle::isSameObjectAs.
      New factory method QPDF::create() returns a std::shared_ptr<QPDF>.
      New Pipeline methods have been added to reduce the amount of casting
      that is needed (write, writeCstr, writeString, operator <<)
      New Pipeline type Pl_OStream writes to a std::ostream.
      New Pipeline type Pl_String appends to a std::string.
      New Pipeline type Pl_Function.
      Methods have been added to QUtil for converting PDF timestamps and
      QPDFTime objects to ISO-8601 timestamps.
      Enhancement to JSON class.
      Add new functions to the C API for qpdfjob that use a qpdfjob_handle.
      QPDFJob::registerProgressReporter & qpdfjob_register_progress_reporter
      as a custom progress reporter with QPDFJob.
      New overloads: QPDFObjectHandle::StreamDataProvider::provideStreamData
      with QPDFObjGen const& instead of object ID and generation parameters.
      In QPDFPageObjectHelper, add a copy_if_fallback parameter to most of
      the page bounding box methods.
      Add a move constructor to the Buffer class.
    * Other changes:
      In JSON v1 mode: "objects" key now reflects the repaired pages
      tree if "pages" is specified.
      Chapter "Contributing to qpdf" was added to the documentation.
      The qpdf source code is now formatted automatically with clang-format.
  - drop obsolete patches:
    disable-newpdf-renderer.patch
    qpdf-10.6.3-grep-3.8.patch
* Thu Sep 08 2022 Andreas Stieger <andreas.stieger@gmx.de>
  - fix build with GNU grep 3.8 (boo#1203231)
    add qpdf-10.6.3-grep-3.8.patch
* Tue Jul 19 2022 Dirk Müller <dmueller@suse.com>
  - add disable-newpdf-renderer.patch (bsc#1201642)
* Sun Mar 20 2022 Dirk Müller <dmueller@suse.com>
  - update to 10.6.3:
    * Minor internal changes to assist with building in other
      environments: rename internal bits.icc to qpdf/bits_functions.hh
      (not part of public API), enforce reordering of header files to
      prevent jpeglib.h from interfering with other headers, remove an
      unused header that was accidentally added in 10.6.0 but never
      referenced by any code.
    * Make build work and tests work when NDEBUG is defined. This
      involved a few changes to some test files but no changes to any
      library code.
    * Bug fix in JSON parser: accept \/ in a string as valid input per
      JSON spec even though we don't translate / to \/ on output.
    * Recognize PDF strings explicitly marked as UTF-8 as allowed by
      the PDF 2.0 spec. Fixes #654.
    * Bug fix: when generating appearance streams, the font size was
      substituted incorrectly from /DA if Tf was absent or the number
      preceding Tf was out of range. Fixes #655.
* Wed Feb 23 2022 Bjørn Lie <bjorn.lie@gmail.com>
  - Update to version 10.6.2:
    * Recognize strings encoded as UTF-16LE as Unicode. The PDF spec
      only allows UTF-16BE, but most readers accept UTF16-LE as well.
    * Fix a regression in command-line argument parsing to restore a
      previously undocumented behavior that some people were relying
      on.
    * Fix one more problem with mapping Unicode to PDF doc encoding.
  - Drop fix-signedness-warning.patch for real, the patch was still
    present in obs.
* Mon Feb 14 2022 Dirk Müller <dmueller@suse.com>
  - update to 10.6.1:
    * All functionality previously available only from the qpdf CLI has been
      exposed to the library using a new QPDFJob API, which includes fluent
      interfaces as well as a JSON format that's equivalent to qpdf's
      command-line arguments.
    * Many new interfaces have been added to QPDFObjectHandle and the C API to
      allow more convient ways querying types and accessing object values in a
      more type-safe fashion.
    * qpdf --help has been revamped so that help is divided into categories, and
      help is available for each option
    * The Running qpdf section of the manual has been rewritten. The manual now
      includes an index of command-line arguments.
    * see https://qpdf.readthedocs.io/en/stable/release-notes.html
* Mon Feb 14 2022 Dirk Müller <dmueller@suse.com>
  - drop build-without-pdf.patch, fix-signedness-warning.patch (upstream)
* Mon Jan 10 2022 Dirk Müller <dmueller@suse.com>
  - add fix-signedness-warning.patch (build for aarch64)
* Tue Jan 04 2022 Dirk Müller <dmueller@suse.com>
  - update to 10.5.0:
    * Since qpdf version 8, using object accessor methods on an
      instance of ``QPDFObjectHandle`` may create warnings if the
      object is not of the expected type. These warnings now have an
      error code of ``qpdf_e_object`` instead of
      ``qpdf_e_damaged_pdf``. Also, comments have been added to
      :file:`QPDFObjectHandle.hh` to explain in more detail what the
      behavior is. See :ref:`object-accessors` for a more in-depth
      discussion.
    * Add ``Pl_Buffer::getMallocBuffer()`` to initialize a buffer
      allocated with ``malloc()`` for better cross-language
      interoperability.
    * Overhaul error handling for the object handle functions C API.
      Some rare error conditions that would previously have caused a
      crash are now trapped and reported, and the functions that
      generate them return fallback values. See comments in the
      ``ERROR HANDLING`` section of :file:`include/qpdf/qpdf-c.h` for
      details. In particular, exceptions thrown by the underlying C++
      code when calling object accessors are caught and converted into
      errors. The errors can be checked by calling ``qpdf_has_error``.
      Use ``qpdf_silence_errors`` to prevent the error from being
      written to stderr.
    * Add ``qpdf_get_last_string_length`` to the C API to get the
      length of the last string that was returned. This is needed to
      handle strings that contain embedded null characters.
    * Add ``qpdf_oh_is_initialized`` and
      ``qpdf_oh_new_uninitialized`` to the C API to make it possible
      to work with uninitialized objects.
    * Add ``qpdf_oh_new_object`` to the C API. This allows you to
      clone an object handle.
    * Add ``qpdf_get_object_by_id``, ``qpdf_make_indirect_object``,
      and ``qpdf_replace_object``, exposing the corresponding methods
      in ``QPDF`` and ``QPDFObjectHandle``.
  - add build-without-pdf.patch to fix documentation installation
  - enable documentation build, enable tests, enable werror
* Fri Nov 26 2021 Dirk Müller <dmueller@suse.com>
  - update to 10.4.0:
    * From the qpdf CLI, the --allow-weak-crypto is now required to suppress a
      warning when explicitly creating PDF files using RC4 encryption. While qpdf
      will always retain the ability to read and write such files, doing so will
      require explicit acknowledgment moving forward. For qpdf 10.4, this change
      only affects the command-line tool. Starting in qpdf 11, there will be
      small API changes to require explicit acknowledgment in those cases as
      well. For additional information, see Chapter 6, Weak Cryptography.
    * Fix potential bounds error when handling shell completion that could occur
      when given bogus input.
    * Properly handle overlay/underlay on completely empty pages
    * Fix crash that could occur under certain conditions when using --pages with
      files that had form fields.
    * Make QPDF::findPage functions public.
    * Add methods to Pl_Flate to be able to receive warnings on certain recoverable
      conditions.
    * Add an extra check to the library to detect when foreign objects are inserted
      directly (instead of using QPDF::copyForeignObject) at the time of insertion
      rather than when the file is written. Catching the error sooner makes it much
      easier to locate the incorrect code.
    * Improve diagnostics around parsing --pages command-line options
* Mon May 10 2021 Ismail Dönmez <ismail@i10z.com>
  - Update to version 10.3.2
    * See http://qpdf.sourceforge.net/files/qpdf-manual.html#ref.release-notes
      for the complete changelog.
* Fri Mar 12 2021 Ismail Dönmez <idonmez@suse.com>
  - Update to version 10.3.1
    * See http://qpdf.sourceforge.net/files/qpdf-manual.html#ref.release-notes
      for the complete changelog.
* Fri Mar 05 2021 Ismail Dönmez <idonmez@suse.com>
  - Update to version 10.3.0
    * See http://qpdf.sourceforge.net/files/qpdf-manual.html#ref.release-notes
      for the complete changelog.
* Thu Feb 25 2021 Ismail Dönmez <idonmez@suse.com>
  - Update to version 10.2.0
    * See http://qpdf.sourceforge.net/files/qpdf-manual.html#ref.release-notes
      for the complete changelog.
* Tue Jan 05 2021 Ismail Dönmez <idonmez@suse.com>
  - Update to version 10.1.0
    * See http://qpdf.sourceforge.net/files/qpdf-manual.html#ref.release-notes
      for the complete changelog.

Files

/usr/bin/fix-qdf
/usr/bin/qpdf
/usr/bin/zlib-flate
/usr/share/doc/packages/qpdf
/usr/share/doc/packages/qpdf/ChangeLog
/usr/share/doc/packages/qpdf/README-doc.txt
/usr/share/doc/packages/qpdf/qpdf-manual.pdf
/usr/share/licenses/qpdf
/usr/share/licenses/qpdf/Artistic-2.0
/usr/share/licenses/qpdf/LICENSE.txt
/usr/share/man/man1/fix-qdf.1.gz
/usr/share/man/man1/qpdf.1.gz
/usr/share/man/man1/zlib-flate.1.gz


Generated by rpm2html 1.8.1

Fabrice Bellet, Sat Dec 21 00:03:11 2024