* Detect if an icon file (``.ico`` or ``.icns``) is of another image type but
has been mislabelled as a native icon type via its file suffix then either
normalise to a genuinely native image type if ``pillow`` is installed or raise
an error. (:issue:`6870`)
* Exit gracefully with an explanatory :class:`SystemExit` if the user moves or
deletes the application whilst it's still running. Note that this is only
detected on trying to load a module which has not already been loaded.
(:issue:`6856`)
* Implement new standard hook variable, called
``warn_on_missing_hiddenimports``. This optional boolean flag allows a hook to
opt out from warnings generated by missing hidden imports originating from
that hook. (:issue:`6914`)
Bugfix
* (Linux) Fix potential mismatch between the collected Python shared library
name and the name expected by the bootloader when using Anaconda environment.
The mismatch would occur on some attempts to freeze a program that uses an
extension that is also linked against the python shared library.
(:issue:`6831`)
* (Linux) Fix the missing ``gi.repository`` error in an application frozen on
RHEL/Fedora linux with GObject introspection installed from the distribution's
RPM package. (:issue:`6780`)
* (macOS) The ``QtWebEngine`` hook now makes ``QtOpenGL`` and ``QtDBus``
available to the renderer process with framework installs of Qt 6.
(:issue:`6892`)
* (Windows) Optimize EXE PE headers fix-up process in an attempt to reduce the
processing time and the memory footprint with large onefile builds.
(:issue:`6874`)
* Add a try/except guard around :func:`ctypes.util.find_library` to protect
against `CPython bug [#93094](https://github.com/pyinstaller/pyinstaller/issues/93094) <https://github.com/python/cpython/issues/93094>`_
which leads to a :class:`FileNotFoundError`. (:issue:`6864`)
* Fix regression in PyInstaller v5 where an import of a non-existent GObject
introspection (`gi`) module (for example, an optional dependency) in the
program causes a build-time error and aborts the build process.
(:issue:`6897`)
* If passed a name of an importable module instead of a package, the
:func:`PyInstaller.utils.hooks.collect_submodules` function now returns
a list containing the module's name, same as it would for a package without
submodules. (:issue:`6850`)
* Prevent :func:`PyInstaller.utils.hooks.collect_submodules` from recursing into
sub-packages that are excluded by the function passed via the ``filter``
</tr></table>
</code></pre>
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/pyinstaller/pyinstaller/commit/c7040cb6505bf36bc17aaab897f9224181aec1ec"><code>c7040cb</code></a> Release 5.2.</li>
<li><a href="https://github.com/pyinstaller/pyinstaller/commit/22d1d2a5378228744cc95f14904dae1664df32c4"><code>22d1d2a</code></a> Tests: Requirements: Scheduled weekly dependency update for week 27 (<a href="https://github-redirect.dependabot.com/pyinstaller/pyinstaller/issues/6927">#6927</a>)</li>
<li><a href="https://github.com/pyinstaller/pyinstaller/commit/35451d0df77dd4e2c3ad613ee35cb28d99a9421e"><code>35451d0</code></a> depend: allow hooks to opt out of missing hidden import warnings</li>
<li><a href="https://github.com/pyinstaller/pyinstaller/commit/b4fa6a60047bedb667128a48c1a67a9de73ccac3"><code>b4fa6a6</code></a> Tests: Requirements: Scheduled weekly dependency update for week 26 (<a href="https://github-redirect.dependabot.com/pyinstaller/pyinstaller/issues/6912">#6912</a>)</li>
<li><a href="https://github.com/pyinstaller/pyinstaller/commit/684bfac8adcf254fec5777f212c13eb62181f900"><code>684bfac</code></a> hooks: refactor GObject introspection (gi) hooks</li>
<li><a href="https://github.com/pyinstaller/pyinstaller/commit/832c4286755968eace91881f0639ccd3986f6f2b"><code>832c428</code></a> add badges to README (<a href="https://github-redirect.dependabot.com/pyinstaller/pyinstaller/issues/6909">#6909</a>) [skip ci]</li>
<li><a href="https://github.com/pyinstaller/pyinstaller/commit/43c9a8f4b7aecfad1f853b8f93e5703dc23bcb6a"><code>43c9a8f</code></a> hooks: disable QtWebEngine sandboxing for Qt6 on macOS</li>
<li><a href="https://github.com/pyinstaller/pyinstaller/commit/987771fbe88616fafada835ea5c09801521934e3"><code>987771f</code></a> Tests: Requirements: Scheduled weekly dependency update for week 25 (<a href="https://github-redirect.dependabot.com/pyinstaller/pyinstaller/issues/6902">#6902</a>)</li>
<li><a href="https://github.com/pyinstaller/pyinstaller/commit/6889f341d1dd1bae8ce5df3237502fd20292fee4"><code>6889f34</code></a> Fix QtWebEngine with PyQt6 framework builds (<a href="https://github-redirect.dependabot.com/pyinstaller/pyinstaller/issues/6892">#6892</a>)</li>
<li><a href="https://github.com/pyinstaller/pyinstaller/commit/11997b8e4d5b36f4feadea0cc5f434b6b1c98b17"><code>11997b8</code></a> ci: Force colored output</li>
<li>Additional commits viewable in <a href="https://github.com/pyinstaller/pyinstaller/compare/v5.1...v5.2">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=pyinstaller&package-manager=pip&previous-version=5.1&new-version=5.2)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Bumps pyinstaller from 5.1 to 5.2.
Release notes
Sourced from pyinstaller's releases.
Changelog
Sourced from pyinstaller's changelog.