From a49c91210117834638687732bc6481c2d20cc4e22c1d9eb495d14b44e2b6cd5d Mon Sep 17 00:00:00 2001 From: Steve Kowalik Date: Wed, 11 Dec 2024 00:13:48 +0000 Subject: [PATCH] - Update to 7.2.7: * bdist_rpm: drop rpm2_mode and refactor spec_file * hooks: the optimized mode is the default for pip installations * hooks: support numpy 2.0 * Exit with non-zero exit code on exception * hooks: improve scipy hooks * hooks: fix matplotlib hooks used in zip_include_packages * hooks: fix scipy hooks used in zip_include_packages * linux: bdist_rpm depends on rpmbuild being installed * chore: use pytest-datafiles to run tests in temporary path * fix: zip_include_packages/zip_exclude_packages regression * chore: use pytest-xdist to speed up the tests * chore: drop support for python 3.7 * parser: support for lief 0.14 ParserConfig * chore: add basic support for Python 3.12 * fix: bdist_rpm should generate only binaries [linux] * samples: fix pydantic sample to work python < 3.10 * hooks: fix the sentry_sdk hook * hooks: move sklearn hook to a submodule * hooks: add boto3 * fix: bdist_rpm to pass tests in python 3.12b4 * hooks: multiprocessing support for forkserver and spawn * hooks: update sysconfig hook * hooks: PySide2/6 - shiboken2/6 in zip_include_packages * finder: add base modules at the end to simplify tests * hooks: fix for pyqt [conda linux] * hooks: move ssl hook to a submodule * hooks: fix pyside2 webengine [conda linux] * hooks: fix pyqt5 webengine [conda linux] * module: ModuleHook class to support inheritance OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-cx_Freeze?expand=0&rev=32 --- 6.15.16.tar.gz | 3 -- 7.2.7.tar.gz | 3 ++ python-cx_Freeze.changes | 86 ++++++++++++++++++++++++++++++++++++++++ python-cx_Freeze.spec | 26 ++++++++---- python312.patch | 36 ----------------- 5 files changed, 107 insertions(+), 47 deletions(-) delete mode 100644 6.15.16.tar.gz create mode 100644 7.2.7.tar.gz delete mode 100644 python312.patch diff --git a/6.15.16.tar.gz b/6.15.16.tar.gz deleted file mode 100644 index 7300a8b..0000000 --- a/6.15.16.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:55b22bf25b4f84218fe6dd7ddc348d8b11126dd455d249ed9188314c66fc992e -size 1892501 diff --git a/7.2.7.tar.gz b/7.2.7.tar.gz new file mode 100644 index 0000000..a77d553 --- /dev/null +++ b/7.2.7.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:12d18f477b7cd71af64150550c8d94a8c61cd59d8243b8210074509078ad230d +size 3361024 diff --git a/python-cx_Freeze.changes b/python-cx_Freeze.changes index 190746b..c48dc7a 100644 --- a/python-cx_Freeze.changes +++ b/python-cx_Freeze.changes @@ -1,3 +1,89 @@ +------------------------------------------------------------------- +Wed Dec 11 00:13:31 UTC 2024 - Steve Kowalik + +- Update to 7.2.7: + * bdist_rpm: drop rpm2_mode and refactor spec_file + * hooks: the optimized mode is the default for pip installations + * hooks: support numpy 2.0 + * Exit with non-zero exit code on exception + * hooks: improve scipy hooks + * hooks: fix matplotlib hooks used in zip_include_packages + * hooks: fix scipy hooks used in zip_include_packages + * linux: bdist_rpm depends on rpmbuild being installed + * chore: use pytest-datafiles to run tests in temporary path + * fix: zip_include_packages/zip_exclude_packages regression + * chore: use pytest-xdist to speed up the tests + * chore: drop support for python 3.7 + * parser: support for lief 0.14 ParserConfig + * chore: add basic support for Python 3.12 + * fix: bdist_rpm should generate only binaries [linux] + * samples: fix pydantic sample to work python < 3.10 + * hooks: fix the sentry_sdk hook + * hooks: move sklearn hook to a submodule + * hooks: add boto3 + * fix: bdist_rpm to pass tests in python 3.12b4 + * hooks: multiprocessing support for forkserver and spawn + * hooks: update sysconfig hook + * hooks: PySide2/6 - shiboken2/6 in zip_include_packages + * finder: add base modules at the end to simplify tests + * hooks: fix for pyqt [conda linux] + * hooks: move ssl hook to a submodule + * hooks: fix pyside2 webengine [conda linux] + * hooks: fix pyqt5 webengine [conda linux] + * module: ModuleHook class to support inheritance + * finder: improve scan code to detect packages using import call + * finder: cache_path holds where distribution data is saved + * module: propagate cache_path from the finder + * module: get the implicit imports of extensions in a stub file + * module: add a importshed for parsed stubs + * hooks: qt extension modules are detected using stubs + * module: search for the stub file already parsed in the distribution + * hooks: improve tzdata/zoneinfo/pytz hooks a bit for use in zip + * hooks: use module.exclude_names to filter missing modules + * build-wheel: add support for ppc64le binary wheels for py310+ + * hooks: add pycryptodomex and update pycryptodome + * hooks: add support for pandas 2.1.0 + * hooks: improve numpy and pandas hooks + * samples: small tweaks to demonstrate independent options + * hooks: fix numpy/scipy dylibs are included twice + * hooks: add RNS (Reticulum) + * hooks: add numpy 1.26 + * hooks: move tkinter and tz data to share folder + * fix: avoid false builtin modules developing in multi-environment + * parser: use the internal path instead of sys.path + * hooks: add tidylib + * parser: exclude LD_PRELOAD to not include triggered dependencies + * hooks: initialize blas [numpy conda-forge] + * bdist_deb: create an DEB distribution [new feature] + * chore: rewrite some imports as absolute + * hooks: add triton and support for pytorch 2.1 + * hooks: tweaks to the debugging of qt hooks + * hooks: adds anyio, pyarrow and tiktoken + * hooks: add yt_dlp + * hooks: add AV and PyAV + * bdist_appimage: build Linux AppImage format [new feature] + * setup script: extend executables keyword to support more types + * setup script: pre-defined values for base are valid in all OS + * setup script: add an extension to executable icon that is valid across OS + * freezer: improve/fixes validate_executable + * hooks: opencv-python - minor fixes + * hooks: add pyproj + * parser: minor fix to support lief 0.14 + * fix: incorrect metadata usage in install/install_exe + * freezer: remove dead code (not used in py38+) + * hooks: add easyocr and torchvision (also update skickit-image and pytorch) + * hooks: support tensorflow plugins + * chore: refactor internal modules + * chore: move License to the project root dir + * chore: generate multiple files for requirements + * test: add a linux binary wheel test in ci + * fix: coverage report usage and omit option + * initscripts: use of loader is deprecated + * parser: show what patchelf is doing if silent is off + * fix: regression in _pre_copy_hook (Linux) + * hooks: support numpy in python 3.12 +- Drop patch python312.patch, included upstream. + ------------------------------------------------------------------- Fri Mar 22 19:36:23 UTC 2024 - Dirk Müller diff --git a/python-cx_Freeze.spec b/python-cx_Freeze.spec index 78e8c41..4057417 100644 --- a/python-cx_Freeze.spec +++ b/python-cx_Freeze.spec @@ -16,29 +16,39 @@ # +# https://github.com/marcelotduarte/cx_Freeze/issues/2568 +%define skip_python313 1 %define oldpython python Name: python-cx_Freeze -Version: 6.15.16 +Version: 7.2.7 Release: 0 Summary: Scripts to create standalone executables from Python scripts License: Python-2.0 URL: https://github.com/anthony-tuininga/cx_Freeze Source: https://github.com/anthony-tuininga/cx_Freeze/archive/%{version}.tar.gz -# PATCH-FIX-UPSTREAM python312.patch gh#marcelotduarte/cx_Freeze#1925 -Patch1: python312.patch -BuildRequires: %{python_module base >= 3.7} +BuildRequires: %{python_module base >= 3.9} BuildRequires: %{python_module devel} +BuildRequires: %{python_module filelock >= 3.12.3} BuildRequires: %{python_module hatchling} -BuildRequires: %{python_module openpyxl} +BuildRequires: %{python_module packaging >= 24} BuildRequires: %{python_module pip} +BuildRequires: %{python_module pytest-datafiles} BuildRequires: %{python_module pytest-mock} BuildRequires: %{python_module pytest} -BuildRequires: %{python_module setuptools} +BuildRequires: %{python_module setuptools >= 65} +BuildRequires: %{python_module tomli >= 2.0.1 if %python-base < 3.11} BuildRequires: %{python_module wheel} BuildRequires: chrpath BuildRequires: fdupes BuildRequires: patchelf BuildRequires: python-rpm-macros +Requires: patchelf +Requires: python-filelock >= 3.12 +Requires: python-packaging >= 24 +Requires: python-setuptools >= 65 +%if 0%{python_version_nodots} < 311 +Requires: python-tomli >= 2.0.1 +%endif Requires(post): update-alternatives Requires(postun): update-alternatives # we provide same binary like the deprecated py2 variant @@ -75,7 +85,7 @@ export CFLAGS="%{optflags}" %check # bdist_rpm is not long for this world, and it always execs the default Python -%pytest_arch -k 'not (test_command_bdist_rpm or test_command_build_exe or test_command_build)' +%pytest_arch -k 'not (test_command_bdist_rpm or test_command_build_exe or test_command_build or test_bdist_appimage)' %post %python_install_alternative cxfreeze-quickstart @@ -91,6 +101,6 @@ export CFLAGS="%{optflags}" %python_alternative %{_bindir}/cxfreeze %python_alternative %{_bindir}/cxfreeze-quickstart %{python_sitearch}/cx_Freeze -%{python_sitearch}/cx_Freeze-%{version}*info +%{python_sitearch}/cx_Freeze-%{version}.dist-info %changelog diff --git a/python312.patch b/python312.patch deleted file mode 100644 index 37ad145..0000000 --- a/python312.patch +++ /dev/null @@ -1,36 +0,0 @@ -Index: cx_Freeze-6.15.15/cx_Freeze/finder.py -=================================================================== ---- cx_Freeze-6.15.15.orig/cx_Freeze/finder.py -+++ cx_Freeze-6.15.15/cx_Freeze/finder.py -@@ -30,7 +30,10 @@ EXTENDED_ARG = opcode.opmap["EXTENDED_AR - LOAD_CONST = opcode.opmap["LOAD_CONST"] - IMPORT_NAME = opcode.opmap["IMPORT_NAME"] - IMPORT_FROM = opcode.opmap["IMPORT_FROM"] --IMPORT_STAR = opcode.opmap["IMPORT_STAR"] -+# Python 3.12+ uses CALL_INTRINSIC_1 with argument 2 -+IMPORT_STAR = ( -+ opcode.opmap.get("IMPORT_STAR") or opcode.opmap["CALL_INTRINSIC_1"] -+) - STORE_FAST = opcode.opmap["STORE_FAST"] - STORE_NAME = opcode.opmap["STORE_NAME"] - STORE_GLOBAL = opcode.opmap["STORE_GLOBAL"] -@@ -637,6 +640,7 @@ class ModuleFinder: - # import * statement: copy all global names - elif ( - opc == IMPORT_STAR -+ and (arg == 2 if opc > HAVE_ARGUMENT else None) - and top_level - and imported_module is not None - ): -Index: cx_Freeze-6.15.15/pyproject.toml -=================================================================== ---- cx_Freeze-6.15.15.orig/pyproject.toml -+++ cx_Freeze-6.15.15/pyproject.toml -@@ -31,6 +31,7 @@ classifiers = [ - "Programming Language :: Python :: 3.9", - "Programming Language :: Python :: 3.10", - "Programming Language :: Python :: 3.11", -+ "Programming Language :: Python :: 3.12", - "Topic :: Software Development :: Build Tools", - "Topic :: Software Development :: Libraries :: Python Modules", - "Topic :: System :: Software Distribution",