From 853a5b19c541e476998fc511119392c1998f831a9ff7c4be6a64e657067c51bb Mon Sep 17 00:00:00 2001 From: Steve Kowalik Date: Wed, 11 Jun 2025 06:19:22 +0000 Subject: [PATCH] - Switch to pyproject macros. OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-PyInstaller?expand=0&rev=32 --- .gitattributes | 23 ++ .gitignore | 1 + pyinstaller-5.13.0.tar.gz | 3 + pyinstaller-6.11.1.tar.gz | 3 + pyinstaller-6.13.0.tar.gz | 3 + python-PyInstaller.changes | 455 +++++++++++++++++++++++++++++++++++++ python-PyInstaller.spec | 114 ++++++++++ 7 files changed, 602 insertions(+) create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 pyinstaller-5.13.0.tar.gz create mode 100644 pyinstaller-6.11.1.tar.gz create mode 100644 pyinstaller-6.13.0.tar.gz create mode 100644 python-PyInstaller.changes create mode 100644 python-PyInstaller.spec diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..57affb6 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.osc diff --git a/pyinstaller-5.13.0.tar.gz b/pyinstaller-5.13.0.tar.gz new file mode 100644 index 0000000..d9b3fd8 --- /dev/null +++ b/pyinstaller-5.13.0.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4de951522be6501348a378a1a02f699e5697be973f8d3c2da39a90e7c88991b4 +size 3874599 diff --git a/pyinstaller-6.11.1.tar.gz b/pyinstaller-6.11.1.tar.gz new file mode 100644 index 0000000..529e29b --- /dev/null +++ b/pyinstaller-6.11.1.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e0a46e918325b65349beaec43a760f9b0b6270a838fb24cd585d5ddbd4232f58 +size 3473485 diff --git a/pyinstaller-6.13.0.tar.gz b/pyinstaller-6.13.0.tar.gz new file mode 100644 index 0000000..3a0ba45 --- /dev/null +++ b/pyinstaller-6.13.0.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f4c6af17535813e24285120c787f4c9dab312d857db0983ea6ca0f2fe348b50a +size 3495847 diff --git a/python-PyInstaller.changes b/python-PyInstaller.changes new file mode 100644 index 0000000..523f4da --- /dev/null +++ b/python-PyInstaller.changes @@ -0,0 +1,455 @@ +------------------------------------------------------------------- +Wed Jun 11 05:49:29 UTC 2025 - Steve Kowalik + +- Switch to pyproject macros. + +------------------------------------------------------------------- +Mon Apr 28 16:40:42 UTC 2025 - Dirk Müller + +- update to 6.13.0: + * Extend analysis code so that when extension module is + encountered, it checks for the presence of an adjacent .py or + .pyi file, and if present, attempt to perform import analysis + on such accompanying source/interface file. (:issue:`9084`) + * Fix detection of setuptools-vendored modules (i.e., not + packages) in the + PyInstaller.utils.hooks.setuptools.SetuptoolsInfo hook + utility class; for example, the + setuptools/_vendor/typing_extensions.py module. + (:issue:`9102`) + * Add hook for PyQt6.QtStateMachine that was introduced in + PyQt6 v6.8.1. (:issue:`9019`) + * Fix ModuleNotFoundError for scipy when provided by Debian's + python3-scipy package. (:issue:`9069`) + * Update hook for PyGObject (gi) and associated helper code to + support changes made in PyGObject v3.52 (switch from + girepository-1.0 to girepository-2.0). (:issue:`9055`) + * On POSIX systems other than macOS, use POSIX semaphore API + instead of SysV semaphore API to synchronize onefile parent + and child process. This restores the ability to compile + bootloader under Termux, where sys/sem.h (and the SysV + semaphore API) is unavailable due to deliberate lack of + support for it in the underlying Android base. + (:issue:`9089`) + * Extend the :ref:`module_collection_mode ` setting from :issue:`6945` to also apply to modules + collected into base_library.zip archive. Implement discovery + of source .py files for modules in base_library.zip at run- + time. This allows collection and discovery of source .py + files for modules in base_library.zip, which might be + required by frameworks that perform aggressive recursive + introspection all way down to standard library modules (for + example, torch JIT in combination with certain model + implementations). (:issue:`8971`) + * Add exclude for libwayland*.so to prevent mismatches with + system drivers. (:issue:`8963`) + * Fix errors raised by setuptools hook utility class and + various related hooks when building with completely de- + vendored setuptools (for example, as packaged by Arch Linux). + (:issue:`8947`) + * Gracefully handle cases when _tkinter is a built-in instead + of an extension module, and thus does not have a __file__ + attribute. Most notable example of this are indygreg's + python-build-standalone CPython builds for macOS and Linux. + This fixes collection of tkinter and associated Tcl/Tk + resources when using such python builds. When trying to + enable splash screen, a descriptive error is now raised, + because splash screen requires shared Tcl/Tk libraries, while + a built-in _tkinter seems to indicate that python was + statically linked against Tcl/Tk libraries. (:issue:`9012`) + * Rework the localpycs cache in the build directory to avoid + relying on the source .py file timestamps. Some package + managers (e.g., Anaconda) (re)set the file + creation/modification time of installed files to the time of + packaging rather than having them reflect the time of + installation; therefore, the PyInstaller bootstrap script and + modules would fail to be properly recompiled when switching + between different versions of PyInstaller packaged by + Anaconda. (:issue:`8909`) + * When constructing PyiFrozenFinder for the given path and + trying to compute the path that is relative to the top-level + application directory, do not fully resolve the given path. + Instead, try computing relative path using both the original + and the fully resolved top-level application directory path. + This change prevents us from potentially resolving symbolic + links in parts of the given path that do not belong to the + top-level application directory. (:issue:`8994`) + * Add hook for gi.repository.Rsvg. (:issue:`8940`) + * Add hooks for PyQt6.QtGraphs and PyQt6.QtGraphsWidgets that + were introduced in PyQt6 v6.8.1 (via PyQt6-Graphs add-on + package). (:issue:`8924`) + * Split the PyiFrozenImporter (fused path based finder and + loader) into separate finder (PyiFrozenFinder) and loader + (PyiFrozenLoader). This better matches the separation between + python's built-in finders and loaders, and thus accommodates + 3rd-party code that naively expects to encounter only + python's built-in finders and loaders. (:issue:`8934`) + * The stock Linux bootloaders are now built using generic + Ubuntu 18.04 and Alpine 3.12 Docker images rather than + manylinux/musllinux/dockcross. (:issue:`8881`) + +------------------------------------------------------------------- +Fri Dec 6 12:46:11 UTC 2024 - Markéta Machová + +- Update to 6.11.1 + * Add automatic binary vs. data file (re)classification step to the + analysis process. + * Add support for specifying hash randomization seed via hash_seed= + run-time option when building the application. + * Allow spec files to take custom command line parameters. + * Implement pass-through for Python’s X-options via PyInstaller’s + run-time options mechanism. + * The PyInstaller.utils.hooks.collect_all() hook utility function now + attempts to translate the given importable package name into + distribution name before attempting to collect metadata. + * Removed support for building LSB-compliant bootloader, due to lack of + support for LSB (Linux Standard Base) in contemporary linux distributions. + * All of onedir build’s contents except for the executable are now moved + into a sub-directory (called _internal by default). sys._MEIPASS is + adjusted to point to this _internal directory. Assumptions that + os.path.dirname(sys.executable) == sys._MEIPASS will break. + * PyInstaller-frozen applications are not affected by the PYTHONUTF8 + environment variable anymore. To permanently enable or disable the UTF8 + mode, use the X utf8_mode=1 or X utf_mode=0 run-time option when + building the application. + * Remove bytecode encryption (--key and cipher options). + * Allow users to re-enable the old onedir layout (without contents + directory) by settings the --contents-directory option + * If the argcomplete Python module is installed, PyInstaller will use it + enable tab completion for its CLI tools. PyInstaller CLIs can still be + used without this optional dependency. + * Optimize the automatic binary-vs-data classification by avoiding + objdump based check on files that do not have ELF signature. + * Collect .hmac files accompanying shared libraries, if such files are + available. This allows frozen application to run on FIPS-enabled Red + Hat Enterprise systems, where HMAC is required by self-check implemented + by the OpenSSL crypto library. + * Implement strict Qt dependency validation for collection of Qt plugins + and QML components/plugins. We now perform preliminary binary dependency + analysis of the plugins, and automatically exclude plugins that have + at least one missing Qt dependency. + * Implement an option to explicitly specify the bytecode optimization level + for collected python code, independent of the optimization level in the + python process under which PyInstaller is running. + * Fix PyInstaller.depend.bindepend.resolve_library_path for cases when + ldconfig cache is not available + * Attempting to restart the application by spawning new process via + sys.executable and exiting the current process now requires the + PYINSTALLER_RESET_ENVIRONMENT environment variable to be set prior to + spawning the process. + * Add support for Python 3.13. + * Many more changes, see https://pyinstaller.org/en/stable/CHANGES.html +- Minor tweaks into the packaging + +------------------------------------------------------------------- +Tue Jul 11 12:38:14 UTC 2023 - Markéta Machová + +- Update to 5.13.0 + * Allow controlling the build log level (--log-level) via a + PYI_LOG_LEVEL environment variable. + * Fixes an issue with gi shared libraries not being packaged if + they don’t have version suffix and are in a special location + set by LD_LIBRARY_PATH instead of a typical library path. + * The deprecated PEP-302 find_module() and load_module() methods + have been removed from PyInstaller’s FrozenImporter. + * Compile the collected GLib schema files using glib-schema-compiler + instead of collecting the pre-compiled gschemas.compiled. + * The archive_viewer utility has been rewritten with modified + command-line interface (--log has been renamed to --list) and + with changed output formatting. + * Extend PySide6 hooks for PySide6 6.5.0 compatibility. + * Ensure that binaries that are manually specified in the .spec file + (or via corresponding --add-binary or --collect-binaries + command-line switches) undergo the binary dependency analysis, + so their dependencies are automatically collected. + * Remove the use of the TOC class in the analysis / build process, + and use plain list instances instead. + * Attempt to fix compatibility of PyInstaller’s PyiFrozenImporter + with importlib.util.LazyLoader. + * Add support for Python 3.12. + * Limit the import of collected packages prior to performing binary + dependency analysis to only Windows, where it is actually useful. + +------------------------------------------------------------------- +Mon May 8 07:30:04 UTC 2023 - Johannes Kastl + +- add sle15_python_module_pythons + +------------------------------------------------------------------- +Mon Nov 7 20:29:32 UTC 2022 - Yogalakshmi Arunachalam + +- Update to 5.6.2 + * Bugfix + (Linux, macOS) Fix the regression in shared library collection, where the shared library would end up collected under its fully-versioned . + so name (e.g., libsomething.so.1.2.3) instead of its originally referenced name (e.g., libsomething.so.1) due to accidental symbolic link resolution. (#7189) + +- Update to 5.6.1 + Bugfix + * (macOS) Fix regression in macOS app bundle signing caused by a typo made in #7180. (#7184) + +------------------------------------------------------------------- +Thu Oct 27 20:51:42 UTC 2022 - Yogalakshmi Arunachalam + +- Update to 5.6 + Features + - Add official support for Python 3.11. (Note that PyInstaller v5.5 is also expected to work but + - has only been tested with a pre-release of Python 3.11.) (#6783) + + Implement a new hook utility function, collect_delvewheel_libs_directory(), intended for dealing with external shared + library in delvewheel-enabled PyPI wheels for Windows. (#7170) + Bugfix + - (macOS) Fix OpenCV (cv2) loader error in generated macOS .app bundles, caused by the relocation of package’s source .py files. (#7180) + - (Windows) Improve compatibility with scipy 1.9.2, whose Windows wheels switched to delvewheel, and therefore have shared + libraries located in external .libs directory. (#7168) + - (Windows) Limit the DLL parent path preservation behavior from #7028 to files collected from site-packages directories + (as returned by site.getsitepackages() and site.getusersitepackages()) instead of all paths in sys.path, to avoid unintended + behavior in corner cases, such as sys.path containing the drive root or user’s home directory. (#7155) + - Fix compatibility with PySide6 6.4.0, where the deprecated Qml2ImportsPath location key is not available anymore; + use the new QmlImportsPath key when it is available. (#7164) + - Prevent PyInstaller runtime hook for setuptools from attempting to override distutils with setuptools-provided + version when setuptools is collected and its version is lower than 60.0. This both mimics the unfrozen behavior and + prevents errors on versions between 50.0 and 60.0, where we do not explicitly collect setuptools._distutils. (#7172) + + Incompatible Changes + - (macOS) In generated macOS .app bundles, the collected source .py files are not relocated from Contents/MacOS to Contents/Resources anymore, + to avoid issues when the path to a .py file is supposed to resolve to the same directory as adjacent binary extensions. + On the other hand, this change might result in regressions w.r.t. bundle signing and/or notarization. (#7180) + + Bootloader + - (Windows) Update the bundled zlib sources to v1.2.13. (#7166) + +- Update to 5.5 + Features + - (Windows) Support embedding multiple icons in the executable. (#7103) + Bugfix + - (Windows) Fix a regression introduced in PyInstaller 5.4 (#6925), where incorrect copy of python3.dll + (and consequently an additional, incorrect copy of python3X.dll from the same directory) is collected when additional python + installations are present in PATH. (#7102) + - (Windows) Provide run-time override for ctypes.util.find_library that searches sys._MEIPASS in addition to directories specified in PATH. (#7097) + - Fix the problem with pywin32 DLLs not being found when importing pywin32 top-level extension modules, caused by the DLL directory structure + preservation behavior introduced in #7028. Introduce a new bootstrap/loader module that adds the pywin32_system32 directory, + if available, to both sys.path and the DLL search paths, in lieu of having to provide a runtime hook script for every single top-level + extension module from pywin32. (#7110) + - Hooks + Fix an error raised by the matplotlib.backends hook when trying to specify the list of backends to collect via the hooks configuration. (#7091) + +------------------------------------------------------------------- +Fri Sep 30 08:41:35 UTC 2022 - Markéta Machová + +- Update to 5.4.1 + * Many changes, see upstream changelog + * Issue an error report if a .spec file will not be generated, but + command-line options specific to that functionality are given + * The `PyInstaller.utils.hooks.get_module_attribute` function now + returns the actual attribute value instead of its string representation. + * The matplotlib.backends hook no longer collects all available matplotlib + backends, but rather tries to auto-detect the used backend(s) by default. + * Drop support for Python 3.6. + * Make the error handing of `~PyInstaller.utils.hooks.collect_submodules` + configurable. + * 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. + * Implement a mechanism for controlling the collection mode of modules and + packages, with granularity ranging from top-level packages to individual + sub-modules. + * Add support for setuptools-provided distutils, available since + setuptools >= 60.0. + +------------------------------------------------------------------- +Thu Nov 18 15:23:35 UTC 2021 - Matej Cepl + +- Update to 4.7: + - Fix a bug since v4.6 where certain Unix system directories + were incorrectly assumed to exist and resulted in a + FileNotFoundError. + - Update sphinx hook for compatibility with latest version + (4.2.0). + - Replace use of PyRun_SimpleString with + PyRun_SimpleStringFlags. + - Add support for Python 3.10. + - Implement basic resource reader for accessing on-filesystem + resources (data files) via importlib.resources (python >= + 3.9) or importlib_resources (python <= 3.8). + - Ship precompiled wheels for musl-based Linux distributions + (such as Alpine or OpenWRT) on x86_64 and aarch64. + - Fix sys.executable pointing to the external package file + instead of the executable when in package side-load mode + (pkg_append=False). + - Fix a runaway glob which caused + ctypes.util.find_library("libfoo") to non-deterministically + pick any library matching libfoo* to bundle instead of + libfoo.so. + - Fix compatibility with with MIPS and loongarch64 + architectures. + - Fix the FrozenImporter.get_source() to correctly handle the + packages’ __init__.py source files. This in turn fixes + missing-source-file errors for packages that use pytorch JIT + when the source .py files are collected and available (for + example, kornia). + - Fix the location of the generated stand-alone pkg file when + using the side-load mode (pkg_append=False) in combination + with onefile mode. The package file is now placed next to the + executable instead of next to the .spec file. + - When generating spec files, avoid hard-coding the spec + file’s location as the pathex argument to the Analysis. + - Add a hook for pandas.plotting to restore compatibility with pandas 1.3.0 and later. + - Add a hook for QtOpenGLWidgets for PyQt6 and PySide6 to + collect the new QtOpenGLWidgets module introduced in Qt6 + - Add hooks for QtPositioning and QtLocation modules of the + Qt5-based packages (PySide2 and PyQt5) to ensure that + corresponding plugins are collected. + - Fix compatibility with PyQt5 5.9.2 from conda’s main channel. + - Prevent potential error in hooks for Qt-based packages that + could be triggered by a partial PyQt6 installation. + - Update QtNetwork hook for PyQt6 and PySide6 to collect the + new tls plugins that were introduced in Qt 6.2. + - Update the gi.repository.GtkSource hook to accept a + module-versions hooksconfig dict in order to allow the hook + to be used with GtkSource versions greater than 3.0. + - Update the Linux bootloader cross compiler Dockerfile to + allow using the official PyPA base images in place of the + dockcross ones. + +------------------------------------------------------------------- +Thu Sep 16 11:25:16 UTC 2021 - Matej Cepl + +- Update to 4.5.1: large number of changes, see packaged CHANGES.rst for + the complete list. +- Remove glibc233.patch (included upstream) + +------------------------------------------------------------------- +Thu Apr 1 13:27:23 UTC 2021 - Markéta Machová + +- Automagically skip matplotlib tests because matplotlib dropped python36 +- Add glibc233.patch to fix recent test failure (gh#pyinstaller/pyinstaller#5540) + +------------------------------------------------------------------- +Wed Mar 18 07:22:03 UTC 2020 - Tomáš Chvátal + +- Disable functional tests as it takes ages and basic checks + are okay with unittests + +------------------------------------------------------------------- +Tue Mar 10 09:31:11 UTC 2020 - Tomáš Chvátal + +- Use xdist for test execution as otherwise it takes ages + +------------------------------------------------------------------- +Fri Jan 17 13:33:04 UTC 2020 - Alberto Planas Dominguez + +- Requires python-devel, as `pyinstaller` cannot be used without it + +------------------------------------------------------------------- +Fri Jan 17 10:56:23 UTC 2020 - Alberto Planas Dominguez + +- Temporary disabled of tests test_egg* and test_nspkg1* + +------------------------------------------------------------------- +Thu Jan 16 16:26:53 UTC 2020 - Alberto Planas Dominguez + +- Update to version 3.6 + * See changelog at https://github.com/pyinstaller/pyinstaller/blob/v3.6/doc/CHANGES.rst +- Add %bcond_with python2 + +------------------------------------------------------------------- +Mon Sep 23 07:19:49 UTC 2019 - Tomáš Chvátal + +- Format with spec-cleaner, fix license + +------------------------------------------------------------------- +Fri Sep 20 03:37:50 UTC 2019 - John Vandenberg + +- Delete upstream bootloaders from the source distribution, forcing + re-compilation of bootloader for all platforms, removing 'noarch' +- Lightly update spec, year and https +- Update to v3.5 + * See changelog at https://github.com/pyinstaller/pyinstaller/blob/v3.5/doc/CHANGES.rst + +------------------------------------------------------------------- +Wed Oct 18 16:45:57 UTC 2017 - toddrme2178@gmail.com + +- Implement single-spec version +- Update to version 3.3 + * See changelog at https://github.com/pyinstaller/pyinstaller/blob/v3.3/doc/CHANGES.rst + +------------------------------------------------------------------- +Mon Jan 23 04:44:34 UTC 2017 - termim@gmail.com + +- use update-alternatives + +- update to 3.2.1 + * New, updated and fixed hooks: botocore (#2094), gi (#2347), jira (#2222), + PyQt5.QtWebEngineWidgets (#2269), skimage (#2195, 2225), sphinx (#2323,) + xsge_gui (#2251). + * Don't fail if working directory already exists (#1994) + * Avoid encoding errors in main script (#1976) + * Fix hasher digest bytes not str (#2229, #2230) + * (Windows) Fix additional dependency on the msvcrt10.dll (#1974) + * (Windows) Correctly decode a bytes object produced by pefile (#1981) + * (Windows) Package ``pefile`` with pyinstaller. This partially + undoes some changes in 3.2 in which the packaged pefiles were + removed to use the pypi version instead. The pypi version was + considerably slower in some applications, and still has a couple + of small issues on PY3. (#1920) + * (OS X) PyQt5 packaging issues on MacOS (#1874) + * (OS X) Replace run-time search path keyword (#1965) + * (OS X) (Re-) add argv emulation for OSX, 64-bit (#2219) + * (OS X) use decode("utf-8") to convert bytes in getImports_macholib() (#1973) + * (Bootloader) fix segfaults (#2176) + * (setup.py) pass option --no-lsb on GNU/Linux only (#1975) + * Updates and fixes in documentation, manuals, et al. (#1986, 2002, #2153, + #2227, #2231) +- update to version 3.2: + * Even the “main” script is now byte-compiled (#1847, #1856) + * The manual is on readthedocs.io now (#1578) + * On installation try to compile the bootloader if there is none for + the current plattform (#1377) + * (Unix) Use objcopy to create a valid ELF file (#1812, #1831) + * (Linux): Compile with _FORTIFY_SOURCE (#1820) + * New, updated and fixed hooks: CherryPy (#1860), Cryptography + (#1425, #1861), enchant (1562), gi.repository.GdkPixbuf (#1843), + gst (#1963), Lib2to3 (#1768), PyQt4, PyQt5, PySide (#1783, #1897, + #1887), SciPy (#1908, #1909), sphinx (#1911, #1912), sqlalchemy + (#1951), traitlets wx.lib.pubsub (#1837, #1838), + * For windowed mode add isatty() for our dummy NullWriter (#1883) + * Suppress “Failed to execute script” in case of SystemExit (#1869) + * Do not apply Upx compressor for bootloader files (#1863) + * Fix absolute path for lib used via ctypes (#1934) + * (OSX) Fix binary cache on NFS (#1573, #1849) + * (Windows) Fix message in grab_version (#1923) + * (Windows) Fix wrong icon paramter in Windows example (#1764) + * (Windows) Fix win32 unicode handling (#1878) + * (Windows) Fix unnecessary rebuilds caused by rebuilding + winmanifest (#1933) + * (Cygwin) Fix finding the Python library for Cygwin 64-bit (#1307, + #1810, #1811) + * (OSX) Fix compilation issue (#1882) + * (Windows) No longer bundle pefile, use package from for windows + (#1357) + * (Windows) Provide a more robust means of executing a Python script + * AIX fixes. + * Update waf to version 1.8.20 (#1868) + * Fix excludedimports, more predictable order how hooks are applied + #1651 + * Internal impovements and code clean-up (#1754, #1760, #1794, + #1858, #1862, #1887, #1907, #1913) + * Clean-ups fixes and improvements for the test suite + * Known Issues + + Apps built with Windows 10 and Python 3.5 may not run on Windows + versions earlier than 10 (#1566). + + The multipackage (MERGE) feature (#1527) is currently broken. + + (OSX) Support for OpenDocument events (#1309) is broken. +- updated to version 3.1.1: + * Fix problems with setuptools 19.4 (#1772, #1773, #1790, #1791) + * 3.1 does not collect certain direct imports (#1780) + * Git reports wrong version even if on unchanged release (#1778) + * Don’t resolve symlinks in modulegraph.py (#1750, #1755) + * ShortFileName not returned in win32 util (#1799) + +------------------------------------------------------------------- +Sat Jan 16 17:57:42 UTC 2016 - termim@gmail.com + +- Initial check in v3.1 + diff --git a/python-PyInstaller.spec b/python-PyInstaller.spec new file mode 100644 index 0000000..c9ef671 --- /dev/null +++ b/python-PyInstaller.spec @@ -0,0 +1,114 @@ +# +# spec file for package python-PyInstaller +# +# Copyright (c) 2025 SUSE LLC +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# + + +%{?sle15_python_module_pythons} +%bcond_without test +%define modname PyInstaller +Name: python-PyInstaller +Version: 6.13.0 +Release: 0 +Summary: Bundle a Python application and all its dependencies into a single package +License: GPL-2.0-only +URL: https://www.pyinstaller.org +Source: https://github.com/pyinstaller/pyinstaller/archive/refs/tags/v%{version}.tar.gz#/pyinstaller-%{version}.tar.gz +BuildRequires: %{python_module pip} +BuildRequires: %{python_module setuptools} +BuildRequires: %{python_module wheel} +BuildRequires: fdupes +BuildRequires: pkgconfig +BuildRequires: python-rpm-macros +BuildRequires: pkgconfig(zlib) +Requires: python-altgraph +Requires: python-packaging >= 22.0 +Requires: python-pyinstaller-hooks-contrib >= 2024.0 +Requires: python-setuptools >= 42.0.0 +Requires(post): update-alternatives +Requires(postun): update-alternatives +Recommends: upx +%if %{with test} +BuildRequires: %{python_module altgraph} +BuildRequires: %{python_module packaging >= 22.0} +BuildRequires: %{python_module psutil} +BuildRequires: %{python_module pyinstaller-hooks-contrib >= 2024.0} +BuildRequires: %{python_module pytest-xdist} +BuildRequires: %{python_module pytest} +BuildRequires: upx +%endif +%python_subpackages + +%description +PyInstaller bundles a Python application and all its dependencies into a single +package. The user can run the packaged app without installing a Python +interpreter or any modules. + +%prep +%setup -q -n pyinstaller-%{version} +%autopatch -p1 + +chmod a-x PyInstaller/utils/hooks/__init__.py + +# Force build of bootloader +rm -r PyInstaller/bootloader + +%build +# -Wno-stringop-overflow only needed on ppc64 +export CFLAGS="%{optflags} -Wno-stringop-truncation -Wno-unused-variable -Wno-unused-function -Wno-unused-but-set-variable -Wno-stringop-overflow" +%pyproject_wheel + +%install +%pyproject_install +%{python_expand # Relocate to sitearch +if [ "%{$python_sitearch}" != "%{$python_sitelib}" ]; then + mkdir -p %{buildroot}%{$python_sitearch} + mv %{buildroot}%{$python_sitelib}/* %{buildroot}%{$python_sitearch} +fi +%fdupes %{buildroot}%{$python_sitearch} +} + +%python_clone -a %{buildroot}%{_bindir}/pyinstaller +%python_clone -a %{buildroot}%{_bindir}/pyi-archive_viewer +%python_clone -a %{buildroot}%{_bindir}/pyi-bindepend +%python_clone -a %{buildroot}%{_bindir}/pyi-grab_version +%python_clone -a %{buildroot}%{_bindir}/pyi-makespec +%python_clone -a %{buildroot}%{_bindir}/pyi-set_version + +%if %{with test} +%check +export LANG=en_US.UTF-8 +%pytest_arch -n auto tests/unit +%endif + +%post +%{python_install_alternative pyinstaller pyi-archive_viewer pyi-bindepend pyi-grab_version pyi-makespec pyi-set_version} + +%postun +%python_uninstall_alternative pyinstaller + +%files %{python_files} +%doc README.rst doc/CHANGES.rst +%license COPYING.txt +%python_alternative %{_bindir}/pyinstaller +%python_alternative %{_bindir}/pyi-archive_viewer +%python_alternative %{_bindir}/pyi-bindepend +%python_alternative %{_bindir}/pyi-grab_version +%python_alternative %{_bindir}/pyi-makespec +%python_alternative %{_bindir}/pyi-set_version +%{python_sitearch}/PyInstaller +%{python_sitearch}/pyinstaller-%{version}*info + +%changelog