* (Linux) Extend the mechanism for collection of ``.hmac`` files from
:issue:`8288` to also include ``.hmac`` files in the ``fipscheck`` directory.
(:issue:`8719`)
* Add support for Python 3.13. (:issue:`8198`)
Introduce new :envvar:PYINSTALLER_RESET_ENVIRONMENT environment variable, to
be used by application developers when trying to launch
:data:sys.executable-based process that is supposed to outlive the current
application process (which includes the :ref:application restart scenario <independent subprocess>). This is considered the official and preferred
approach at spawning new independent instances of the same application (as
opposed to modifying the private :envvar:_PYI_ARCHIVE_FILE environment
variable). (:issue:8634)
The splash screen in splash-screen enabled frozen application can now
be disabled by the user at run-time, using the new
:envvar:PYINSTALLER_SUPPRESS_SPLASH_SCREEN environment variable. If the
environment variable is set to 1, the splash screen is not shown,
and functions from :mod:pyi_splash become no-op without raising errors
or displaying warning messages. (:issue:8634)
Bugfix
* (Windows) Attempt to work around the leak of ``VCRUNTIME140.dll`` in
``onefile`` applications with splash screen enabled in scenarios where
the OS and/or anti-virus program injects additional DLLs into the process
that also depend on ``VCRUNTIME140.dll``. (:issue:`7106`)
* (Windows) Fix regression in PyInstaller 6.x that caused console-enabled
onefile to applications fail to clean up their temporary directory during
system session shutdown (i.e., when user logs off or initiates system shutdown
or restart). For console-enabled onefile applications, this used to work up
until PyInstaller 6.0 by means of installed console handler; however, due to
contemporary bootloader executables being linked against ``user32.dll``, the
console handler does not receive ``CTRL_LOGOFF_EVENT`` and
``CTRL_SHUTDOWN_EVENT`` console events anymore (for the same reason, this did
not work for builds with splash screen, even between v5.3 and 6.0). Instead,
session shutdown is now handled by means of hidden window and handling of
``WM_QUERYENDSESSION`` and ``WM_ENDSESSION`` event messages. (:issue:`8648`)
* (Windows) Improve handling of ``CTRL_CLOSE_EVENT`` console event in
``onefile`` builds for compatibility with Windows Terminal in order to
avoid leaking temporary files when user closes the terminal window
(or tab). Upon receiving the event, the parent process now gives the child
process a 500-millisecond grace period to exit, after which it terminates
</tr></table>
</code></pre>
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/pyinstaller/pyinstaller/commit/085296f616a4b7eff4614710f9527b164c463c21"><code>085296f</code></a> Release v6.10.0. [skip ci]</li>
<li><a href="https://github.com/pyinstaller/pyinstaller/commit/af549bb71d8c6c6a29577f1728e2ba4d0d9a6059"><code>af549bb</code></a> misc: adjust for changes in _pyinstaller_hooks_contrib layout</li>
<li><a href="https://github.com/pyinstaller/pyinstaller/commit/86cfc103ff29eca938d5c07c5db65c417eae5b47"><code>86cfc10</code></a> hookutils: Tcl/Tk: fix Tk data directory when using Tk framework bundle</li>
<li><a href="https://github.com/pyinstaller/pyinstaller/commit/709dbd224cc4a5823906f531714eda0502bdc2bb"><code>709dbd2</code></a> hooks: tkinter: change Tcl/Tk script directory names to avoid conflicts</li>
<li><a href="https://github.com/pyinstaller/pyinstaller/commit/67f932ee66b3cf2bbb69108ab85d707b5ae1440c"><code>67f932e</code></a> tests: add a full functional test for tkinter</li>
<li><a href="https://github.com/pyinstaller/pyinstaller/commit/bc3f2e0f286d3014061e3d9b5ae1fc3522750d2d"><code>bc3f2e0</code></a> hookutils: robustify <code>can_import_module</code> against interpreter crashes</li>
<li><a href="https://github.com/pyinstaller/pyinstaller/commit/5c23105220e176e3300ab631412de735e725b481"><code>5c23105</code></a> hookutils: rework the Tcl/Tk utility functions</li>
<li><a href="https://github.com/pyinstaller/pyinstaller/commit/c28e448c4d99fd6f0f1e877d7a3a968541749197"><code>c28e448</code></a> hookutils: setuptools: fix couple of typos</li>
<li><a href="https://github.com/pyinstaller/pyinstaller/commit/80724ff94bc51fcb9115c28696b134a51a516097"><code>80724ff</code></a> tests: add test for GIL setting in freethreading-enabled python builds</li>
<li><a href="https://github.com/pyinstaller/pyinstaller/commit/eb71f10d435019b65f852a41d218d89d0c00132c"><code>eb71f10</code></a> README: add python 3.13 to list of supported versions</li>
<li>Additional commits viewable in <a href="https://github.com/pyinstaller/pyinstaller/compare/v6.9.0...v6.10.0">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=6.9.0&new-version=6.10.0)](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 show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@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 6.9.0 to 6.10.0.
Release notes
Sourced from pyinstaller's releases.
Changelog
Sourced from pyinstaller's changelog.