THIRD-PARTY LICENSES
====================

KlarPDF (AGPL-3.0-or-later) bundles the following third-party components in its
Windows installer and portable build. Their versions are pinned in
`requirements-win.txt` (the hashed, offline ship lock) and summarised in
`DEPENDENCIES.md`; the notices below match those exact versions.

Each component is redistributed under its own license, reproduced or pointed to
below. The full GNU AGPL-3.0 text (which also covers PyMuPDF) is in the root
`LICENSE` file. The GNU LGPL-3.0 (PySide6 / shiboken6) is the GNU GPL-3.0 plus
the additional permissions of the Lesser license; both texts are published at
the FSF URLs cited below and are bundled in-app under Help ▸ Open-Source
Licenses.

Summary
-------

| Component            | Version   | License, as the wheel declares it            | KlarPDF relies on |
|----------------------|-----------|---------------------------------------------|-------------------|
| PyMuPDF              | 1.27.2.3  | AGPL-3.0 **or** Artifex commercial *        | AGPL-3.0          |
| PySide6-Essentials   | 6.11.1    | `LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only` | LGPL-3.0-only |
| shiboken6            | 6.11.1    | `LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only` | LGPL-3.0-only |

* PyMuPDF is dual-licensed. KlarPDF uses it under the AGPL, which is why the whole
  project ships as AGPL-3.0-or-later (see README ▸ License and PLAN.md
  §Public-release readiness).

Provenance: the versions come from `requirements-win.txt`; the license strings are
read from each installed wheel's own `dist-info` (`METADATA`, `COPYING`) at exactly
those pinned versions, **not** from the projects' websites. Where a wheel ships no
copyright year, none is stated below rather than guessed.

pypdf (BSD-3-Clause) was bundled up to and including v0.19.0. It is no longer: it
powered a fallback save engine the app never used, and is now a test-only dependency.


--------------------------------------------------------------------------------
1. PyMuPDF 1.27.2.3
--------------------------------------------------------------------------------

Purpose in KlarPDF : render pages/thumbnails + lossless object-level page editing
License            : "Dual Licensed - GNU AFFERO GPL 3.0 or Artifex Commercial
                     License" (verbatim, from the wheel's own COPYING file)
Copyright          : Artifex Software, Inc. and the MuPDF authors. Upstream ships
                     no year range in the wheel, so none is asserted here.
Upstream           : https://github.com/pymupdf/PyMuPDF
PyPI               : https://pypi.org/project/PyMuPDF/1.27.2.3/
License text       : https://www.gnu.org/licenses/agpl-3.0.txt
                     (identical to the root LICENSE file in this repository)

PyMuPDF wraps the MuPDF library (also by Artifex, also AGPL-3.0). Because KlarPDF
links PyMuPDF and is a derivative work of it, KlarPDF is itself distributed under
the AGPL-3.0-or-later. The corresponding source is this repository at the release
tag from which each installer is built.


--------------------------------------------------------------------------------
2. PySide6-Essentials 6.11.1
--------------------------------------------------------------------------------

Purpose in KlarPDF : Qt 6 GUI (QtCore/QtGui/QtWidgets/QtSvg) + QtNetwork IPC +
                     QtPrintSupport printing
License            : declared by the wheel as "LGPL-3.0-only OR GPL-2.0-only OR
                     GPL-3.0-only". KlarPDF relies on the LGPL-3.0-only option.
Copyright          : The Qt Company Ltd. and the Qt for Python contributors
                     (the wheel ships no year range; none is asserted here)
Upstream           : https://doc.qt.io/qtforpython-6/
PyPI               : https://pypi.org/project/PySide6-Essentials/6.11.1/
License text       : LGPL-3.0  https://www.gnu.org/licenses/lgpl-3.0.txt
                     GPL-3.0   https://www.gnu.org/licenses/gpl-3.0.txt
                     (LGPL-3.0 extends GPL-3.0 with additional permissions)

PySide6 (Qt for Python) is available under LGPL-3.0, GPL-3.0, or a commercial
Qt license; KlarPDF uses the LGPL-3.0 wheels published on PyPI. The LGPL is
satisfied by shipping the unmodified upstream Qt/PySide6 binaries and offering
this project's corresponding source, which the AGPL source release already does.


--------------------------------------------------------------------------------
3. shiboken6 6.11.1
--------------------------------------------------------------------------------

Purpose in KlarPDF : PySide6 C++/Python binding runtime (transitive dependency
                     of PySide6-Essentials)
License            : declared by the wheel as "LGPL-3.0-only OR GPL-2.0-only OR
                     GPL-3.0-only". KlarPDF relies on the LGPL-3.0-only option.
Copyright          : The Qt Company Ltd. and the Qt for Python contributors
                     (the wheel ships no year range; none is asserted here)
Upstream           : https://doc.qt.io/qtforpython-6/shiboken6/
PyPI               : https://pypi.org/project/shiboken6/6.11.1/
License text       : LGPL-3.0  https://www.gnu.org/licenses/lgpl-3.0.txt
                     GPL-3.0   https://www.gnu.org/licenses/gpl-3.0.txt

Same licensing terms and source-offer as PySide6-Essentials above.
