* (Wine) Prevent collection of Wine built-in DLLs (in either PE-converted or
fake/placeholder form) when building a Windows frozen application under
Wine. Display a warning for each excluded Wine built-in DLL. (:issue:`[#6622](https://github.com/pyinstaller/pyinstaller/issues/6622)`)
Bugfix
* (Linux) Remove the timeout on ``objcopy`` operations to prevent wrongful
abortions when processing large executables on slow disks. (:issue:`[#6647](https://github.com/pyinstaller/pyinstaller/issues/6647)`)
* (macOS) Limit the strict architecture validation for collected binaries to
extension modules only. Fixes architecture validation errors when a
``universal2`` package has its multi-arch extension modules' arch slices
linked against distinct single-arch thin shared libraries, as is the
case with ``scipy`` 1.8.0 macOS ``universal2`` wheel. (:issue:`[#6587](https://github.com/pyinstaller/pyinstaller/issues/6587)`)
* (macOS) Remove the 60 seconds timeout for each ``codesign`` and ``lipo``
operation which caused build abortion when
processing huge binaries. (:issue:`[#6644](https://github.com/pyinstaller/pyinstaller/issues/6644)`)
* (Windows) Use a made up (not ``.exe``) suffix for intermediate executable
files during the build process to prevent
antiviruses from attempting to scan the file whilst PyInstaller is still
working on it leading to a
:class:`PermissionError` at build time. (:issue:`[#6467](https://github.com/pyinstaller/pyinstaller/issues/6467)`)
* Fix an attempt to collect a non-existent ``.pyc`` file when the corresponding
source ``.py`` file has ``st_mtime`` set to zero. (:issue:`[#6625](https://github.com/pyinstaller/pyinstaller/issues/6625)`)
Hooks
~~~~~
* Add ``IPython`` to the list of excluded packages in the ``PIL`` hook in
order to prevent automatic collection of ``IPython`` when it is not
imported anywhere else. This in turn prevents whole ``matplotlib`` being
automatically pulled in when using ``PIL.Image``. (:issue:`[#6605](https://github.com/pyinstaller/pyinstaller/issues/6605)`)
Bootloader
</code></pre>
<ul>
<li>Fix detection of 32-bit <code>arm</code> platform when Thumb instruction set is
enabled in the compiler. In this case, the <code>ctx.env.DEST_CPU</code> in
<code>waf</code> build script is set to <code>thumb</code> instead of <code>arm</code>. (:issue:<code>[#6532](https://github.com/pyinstaller/pyinstaller/issues/6532)</code>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/pyinstaller/pyinstaller/commit/669313ba4c5c1403ebeb335c35cb68c8c6ba5dd4"><code>669313b</code></a> Release v4.10.</li>
<li><a href="https://github.com/pyinstaller/pyinstaller/commit/c4c8505f5ec1dba09d93d9427eea0eb3092f6639"><code>c4c8505</code></a> Linux: Remove the timeout on objcopy operations.</li>
<li><a href="https://github.com/pyinstaller/pyinstaller/commit/ed42f765d568046f2cba18d043348d3e962e5e6b"><code>ed42f76</code></a> macOS: Remove the timeouts for codesigning/signature stripping/lipo. (<a href="https://github-redirect.dependabot.com/pyinstaller/pyinstaller/issues/6644">#6644</a>)</li>
<li><a href="https://github.com/pyinstaller/pyinstaller/commit/e1c4da91a2ce313b8e7eae2a7cf89195f888d256"><code>e1c4da9</code></a> Building: Replace .exe suffix of temporary EXE files (<a href="https://github-redirect.dependabot.com/pyinstaller/pyinstaller/issues/6467">#6467</a>).</li>
<li><a href="https://github.com/pyinstaller/pyinstaller/commit/7933d7266042f9861306defd3335d69db31e66f6"><code>7933d72</code></a> utils: misc: fix needs_compile check in compile_py_files</li>
<li><a href="https://github.com/pyinstaller/pyinstaller/commit/e691fb9cb59f5385c6053af50959cecb9f8af549"><code>e691fb9</code></a> Avoid collecting Wine built-in DLLs</li>
<li><a href="https://github.com/pyinstaller/pyinstaller/commit/dc9daf8c519dde83917f4e0e53fc43535d290027"><code>dc9daf8</code></a> bootloader: add detection of RISC-V platform</li>
<li><a href="https://github.com/pyinstaller/pyinstaller/commit/45802bffed7a7c500493521d2e8d06f3c7d428ac"><code>45802bf</code></a> Doc: resolve pathlib paths in the examples for using <strong>file</strong>.</li>
<li><a href="https://github.com/pyinstaller/pyinstaller/commit/fb21212267d7f824eb8dd3190cf7e4d2d4a2a42f"><code>fb21212</code></a> tests & ci: sync pinned package versions with develop branch</li>
<li><a href="https://github.com/pyinstaller/pyinstaller/commit/1bd671c622cff9762794100c90dea80f8ea0692c"><code>1bd671c</code></a> hooks: PIL: prevent automatic inclusion of IPython</li>
<li>Additional commits viewable in <a href="https://github.com/pyinstaller/pyinstaller/compare/v4.9...v4.10">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=4.9&new-version=4.10)](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 4.9 to 4.10.
Release notes
Sourced from pyinstaller's releases.
Changelog
Sourced from pyinstaller's changelog.