Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-pyqt-builder for
openSUSE:Factory checked in at 2024-11-05 15:39:43
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-pyqt-builder (Old)
and /work/SRC/openSUSE:Factory/.python-pyqt-builder.new.2020 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-pyqt-builder"
Tue Nov 5 15:39:43 2024 rev:22 rq:1221009 version:1.16.4
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-pyqt-builder/python-pyqt-builder.changes
2024-04-23 18:55:13.052613899 +0200
+++
/work/SRC/openSUSE:Factory/.python-pyqt-builder.new.2020/python-pyqt-builder.changes
2024-11-05 15:39:54.711285226 +0100
@@ -1,0 +2,15 @@
+Mon Nov 4 13:05:02 UTC 2024 - Daniel Garcia <[email protected]>
+
+- Use pypi url for source
+- Update to 1.16.4
+ * Support for Windows on Arm for Qt6
+ * Support for Linux on Arm for Qt6
+1.16.3:
+ * Link to the stable SIP documentation
+ * missing multimedia libraries in Qt v6.7
+ * Added support for sub-wheels to pyqt-qt-wheel
+1.16.2:
+ * The links to the SIP documentation have been fixed.
+ * The ICU libraries were missing from the Linux Qt v6.7 wheels.
+
+-------------------------------------------------------------------
Old:
----
pyqt_builder-1.16.1.tar.gz
New:
----
pyqt_builder-1.16.4.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-pyqt-builder.spec ++++++
--- /var/tmp/diff_new_pack.bixZ4R/_old 2024-11-05 15:39:55.247307698 +0100
+++ /var/tmp/diff_new_pack.bixZ4R/_new 2024-11-05 15:39:55.247307698 +0100
@@ -19,13 +19,12 @@
%define mname pyqt-builder
%{?sle15_python_module_pythons}
Name: python-%{mname}
-Version: 1.16.1
+Version: 1.16.4
Release: 0
Summary: The PEP 517 compliant PyQt build system
License: BSD-2-Clause
URL: https://github.com/Python-PyQt/PyQt-builder
-#Source0:
https://files.pythonhosted.org/packages/source/P/PyQt-builder/PyQt-builder-%%{version}.tar.gz
-Source0:
https://www.riverbankcomputing.com/pypi/packages/snapshots/PyQt-builder/pyqt_builder-%{version}.tar.gz
+Source0:
https://files.pythonhosted.org/packages/source/P/PyQt-builder/pyqt_builder-%{version}.tar.gz
# PATCH-FEATURE-SUSE support-python3.6.patch [email protected] -- The PyQt5
packages have the SLE15 python module macro, but it is disable in some
maintance projects
Patch0: support-python3.6.patch
BuildRequires: %{python_module base >= 3.6}
++++++ pyqt_builder-1.16.1.tar.gz -> pyqt_builder-1.16.4.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/pyqt_builder-1.16.1/PKG-INFO
new/pyqt_builder-1.16.4/PKG-INFO
--- old/pyqt_builder-1.16.1/PKG-INFO 2024-04-21 01:32:11.054156800 +0200
+++ new/pyqt_builder-1.16.4/PKG-INFO 2024-07-12 18:07:27.087464600 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: PyQt-builder
-Version: 1.16.1
+Version: 1.16.4
Summary: The PyQt build system
Author-email: Phil Thompson <[email protected]>
License: Copyright 2024 Phil Thompson <[email protected]>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/pyqt_builder-1.16.1/PyQt_builder.egg-info/PKG-INFO
new/pyqt_builder-1.16.4/PyQt_builder.egg-info/PKG-INFO
--- old/pyqt_builder-1.16.1/PyQt_builder.egg-info/PKG-INFO 2024-04-21
01:32:10.000000000 +0200
+++ new/pyqt_builder-1.16.4/PyQt_builder.egg-info/PKG-INFO 2024-07-12
18:07:27.000000000 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: PyQt-builder
-Version: 1.16.1
+Version: 1.16.4
Summary: The PyQt build system
Author-email: Phil Thompson <[email protected]>
License: Copyright 2024 Phil Thompson <[email protected]>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/pyqt_builder-1.16.1/pyqtbuild/_version.py
new/pyqt_builder-1.16.4/pyqtbuild/_version.py
--- old/pyqt_builder-1.16.1/pyqtbuild/_version.py 2024-04-21
01:32:10.000000000 +0200
+++ new/pyqt_builder-1.16.4/pyqtbuild/_version.py 2024-07-12
18:07:26.000000000 +0200
@@ -12,5 +12,5 @@
__version_tuple__: VERSION_TUPLE
version_tuple: VERSION_TUPLE
-__version__ = version = '1.16.1'
-__version_tuple__ = version_tuple = (1, 16, 1)
+__version__ = version = '1.16.4'
+__version_tuple__ = version_tuple = (1, 16, 4)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/pyqt_builder-1.16.1/pyqtbuild/bundle/abstract_package.py
new/pyqt_builder-1.16.4/pyqtbuild/bundle/abstract_package.py
--- old/pyqt_builder-1.16.1/pyqtbuild/bundle/abstract_package.py
2024-04-21 01:31:59.000000000 +0200
+++ new/pyqt_builder-1.16.4/pyqtbuild/bundle/abstract_package.py
2024-06-21 17:28:00.000000000 +0200
@@ -58,7 +58,7 @@
# This default implementation does nothing.
def bundle_qt(self, target_qt_dir, platform_tag, exclude, ignore_missing,
- bindings=True):
+ bindings=True, subwheel=None):
""" Bundle the relevant parts of the Qt installation. Returns True if
the LGPL applies to all bundled parts.
"""
@@ -113,7 +113,7 @@
lgpl = lgpl and metadata.lgpl
metadata.bundle(name, target_qt_dir, self._qt_dir, platform_tag,
- self.qt_version, ignore_missing)
+ self.qt_version, ignore_missing, subwheel)
return lgpl
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/pyqt_builder-1.16.1/pyqtbuild/bundle/packages/pyqt6.py
new/pyqt_builder-1.16.4/pyqtbuild/bundle/packages/pyqt6.py
--- old/pyqt_builder-1.16.1/pyqtbuild/bundle/packages/pyqt6.py 2024-04-21
01:31:59.000000000 +0200
+++ new/pyqt_builder-1.16.4/pyqtbuild/bundle/packages/pyqt6.py 2024-06-21
17:28:00.000000000 +0200
@@ -17,6 +17,14 @@
VersionedMetadata(version=(6, 2, 0), qml=True),
'QtCore': (
+ VersionedMetadata(version=(6, 7, 0),
+ other_lib_deps={
+ 'linux': ('libicui18n.so.73', 'libicuuc.so.73',
+ 'libicudata.so.73')},
+ translations=('qt_', 'qt_help', 'qtbase', 'qtconnectivity',
+ 'qtdeclarative', 'qtlocation', 'qtmultimedia',
+ 'qtquickcontrols2', 'qtserialport', 'qtwebsockets'),
+ excluded_plugins=('designer', 'qmltooling')),
VersionedMetadata(version=(6, 2, 0),
other_lib_deps={
'linux': ('libicui18n.so.56', 'libicuuc.so.56',
@@ -57,10 +65,27 @@
#'QtLocation':
# VersionedMetadata(qml=True),
- 'QtMultimedia':
- VersionedMetadata(version=(6, 2, 0),
+ 'QtMultimedia': (
+ VersionedMetadata(version=(6, 7, 1),
lib_deps={'': ('QtMultimediaQuick', )},
+ other_lib_deps={
+ 'macos': ('libavcodec.60.dylib', 'libavformat.60.dylib',
+ 'libavutil.58.dylib', 'libswresample.4.dylib',
+ 'libswscale.7.dylib'),
+ 'win': ('avcodec-60.dll', 'avformat-60.dll',
+ 'avutil-58.dll', 'swresample-4.dll',
+ 'swscale-7.dll')},
+ qml=True),
+ VersionedMetadata(version=(6, 7, 0),
+ lib_deps={'': ('QtMultimediaQuick', )},
+ other_lib_deps={
+ 'win': ('avcodec-60.dll', 'avformat-60.dll',
+ 'avutil-58.dll', 'swresample-4.dll',
+ 'swscale-7.dll')},
qml=True),
+ VersionedMetadata(version=(6, 2, 0),
+ lib_deps={'': ('QtMultimediaQuick', )},
+ qml=True)),
'QtMultimediaWidgets':
VersionedMetadata(version=(6, 2, 0)),
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/pyqt_builder-1.16.1/pyqtbuild/bundle/packages/pyqt6_webengine.py
new/pyqt_builder-1.16.4/pyqtbuild/bundle/packages/pyqt6_webengine.py
--- old/pyqt_builder-1.16.1/pyqtbuild/bundle/packages/pyqt6_webengine.py
2024-04-21 01:31:59.000000000 +0200
+++ new/pyqt_builder-1.16.4/pyqtbuild/bundle/packages/pyqt6_webengine.py
2024-06-21 17:28:00.000000000 +0200
@@ -23,7 +23,9 @@
"Enable QtWebEngineProcess to find it's
resources.\n"), )},
others={
'linux': ('resources', 'translations/qtwebengine_locales'),
- 'win': ('resources', 'translations\\qtwebengine_locales')}),
+ 'win': ('resources', 'translations\\qtwebengine_locales')},
+ subwheel_files={
+ '': (('qtlib', 'QtWebEngineCore'), )}),
'QtWebEngineQuick':
VersionedMetadata(version=(6, 2, 0),
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/pyqt_builder-1.16.1/pyqtbuild/bundle/qt_metadata.py
new/pyqt_builder-1.16.4/pyqtbuild/bundle/qt_metadata.py
--- old/pyqt_builder-1.16.1/pyqtbuild/bundle/qt_metadata.py 2024-04-21
01:31:59.000000000 +0200
+++ new/pyqt_builder-1.16.4/pyqtbuild/bundle/qt_metadata.py 2024-06-21
17:28:00.000000000 +0200
@@ -21,7 +21,8 @@
def __init__(self, *, version=None, name=None, lib_deps=None,
other_lib_deps=None, exes=None, files=None, others=None, dll=True,
qml=False, qml_names=None, translations=None,
- excluded_plugins=None, lgpl=True, legacy=False):
+ excluded_plugins=None, lgpl=True, legacy=False,
+ subwheel_files=None):
""" Initialise the versioned bindings. """
self._version = version
@@ -36,15 +37,16 @@
self._qml_names = qml_names
self._translations = () if translations is None else translations
self._excluded_plugins = excluded_plugins
+ self._subwheel_files = {} if subwheel_files is None else subwheel_files
self.lgpl = lgpl
self.legacy = legacy
def bundle(self, name, target_qt_dir, qt_dir, platform_tag, qt_version,
- ignore_missing):
+ ignore_missing, subwheel):
""" Bundle part of Qt as defined by the meta-data. """
- verbose("Bundling {0}".format(name))
+ verbose(f"Bundling {name}")
if self._name is None:
self._name = name
@@ -65,11 +67,55 @@
if macos_thin_arch == 'arm64' and
AbstractPackage.missing_executable('codesign'):
raise UserException(
"'codesign' from Xcode must be installed on your
system")
+ # Bundle any sub-wheel files.
+ if subwheel is True:
+ for metadata_arch, subwheel_files in self._subwheel_files.items():
+ if self._is_platform(metadata_arch, platform_tag):
+ # Bundle each file in the sub-wheel according to its type
+ # (either 'data', 'exe', 'lib' or 'qtlib').
+ for file_type, file_name in subwheel_files:
+ if file_type == 'data':
+ self._bundle_file(file_name, target_qt_dir, qt_dir,
+ platform_tag, macos_thin_arch,
+ ignore_missing, might_be_code=False)
+
+ elif file_type == 'exe':
+ self._bundle_exe(file_name, target_qt_dir, qt_dir,
+ qt_version, platform_tag, macos_thin_arch,
+ ignore_missing)
+
+ elif file_type == 'lib':
+ self._bundle_library(file_name, target_qt_dir,
+ qt_dir, platform_tag, macos_thin_arch,
+ ignore_missing)
+
+ elif file_type == 'qtlib':
+ self._bundle_qt_library(file_name, target_qt_dir,
+ qt_dir, qt_version, platform_tag,
+ macos_thin_arch, ignore_missing,
+ bundle_resources=False)
+
+ # There is nothing else to do.
+ return
+
+ skip_files = []
+
+ # Build the list of files to skip as they will be in the sub-wheel.
+ if subwheel is False:
+ for metadata_arch, subwheel_files in self._subwheel_files.items():
+ if self._is_platform(metadata_arch, platform_tag):
+ for file_type, file_name in subwheel_files:
+ if file_type == 'qtlib':
+ file_name = self._impl_from_library(file_name,
+ platform_tag, qt_version)
+
+ skip_files.append(file_name)
# Bundle the Qt library that has been wrapped (if there is one).
if self._dll:
self._bundle_qt_library(self._name, target_qt_dir, qt_dir,
- qt_version, platform_tag, macos_thin_arch, ignore_missing)
+ qt_version, platform_tag, macos_thin_arch, ignore_missing,
+ skip_files=skip_files)
# Bundle any other dependent Qt libraries.
for metadata_arch, libs in self._lib_deps.items():
@@ -77,7 +123,7 @@
for lib in libs:
self._bundle_qt_library(lib, target_qt_dir, qt_dir,
qt_version, platform_tag, macos_thin_arch,
- ignore_missing)
+ ignore_missing, skip_files=skip_files)
# Bundle any other libraries.
lib_contents = None
@@ -97,26 +143,19 @@
if fnmatch.fnmatch(qt_lib, lib):
self._bundle_library(qt_lib, target_qt_dir,
qt_dir, platform_tag, macos_thin_arch,
- ignore_missing)
+ ignore_missing, skip_files=skip_files)
else:
self._bundle_library(lib, target_qt_dir, qt_dir,
- platform_tag, macos_thin_arch, ignore_missing)
+ platform_tag, macos_thin_arch, ignore_missing,
+ skip_files=skip_files)
# Bundle any executables.
for metadata_arch, exes in self._exes.items():
if self._is_platform(metadata_arch, platform_tag):
for exe in exes:
- bundled_exe = self._bundle_file(exe, target_qt_dir, qt_dir,
- platform_tag, macos_thin_arch, ignore_missing)
-
- if bundled_exe is not None:
- if self._is_platform('linux', platform_tag):
- self._fix_linux_executable(bundled_exe, qt_version)
- elif self._is_platform('macos', platform_tag):
- self._fix_macos_executable(bundled_exe, qt_version,
- macos_thin_arch)
- elif self._is_platform('win', platform_tag):
- self._fix_win_executable(bundled_exe)
+ self._bundle_exe(exe, target_qt_dir, qt_dir, qt_version,
+ platform_tag, macos_thin_arch, ignore_missing,
+ skip_files=skip_files)
# Bundle any QML files.
if self._qml:
@@ -127,7 +166,7 @@
for qml_subdir in qml_names:
self._bundle_nondebug(os.path.join('qml', qml_subdir),
target_qt_dir, qt_dir, platform_tag, macos_thin_arch,
- ignore_missing)
+ ignore_missing, skip_files=skip_files)
# Bundle any plugins. We haven't done the analysis of which plugins
# belong to which package so we assume that only the QtCore package
@@ -135,7 +174,7 @@
if self._excluded_plugins is not None:
self._bundle_nondebug('plugins', target_qt_dir, qt_dir,
platform_tag, macos_thin_arch, ignore_missing,
- exclude=self._excluded_plugins)
+ skip_files=skip_files, exclude=self._excluded_plugins)
# Bundle any translations:
if self._translations:
@@ -148,7 +187,7 @@
if qm.startswith(prefix):
self._bundle_file(qm, target_tr_dir, tr_dir,
platform_tag, macos_thin_arch,
- ignore_missing,
+ ignore_missing, skip_files=skip_files,
might_be_code=False)
# Bundle any dynamically created files.
@@ -167,7 +206,7 @@
for oth in others:
self._bundle_file(oth, target_qt_dir, qt_dir,
platform_tag, macos_thin_arch, ignore_missing,
- might_be_code=False)
+ skip_files=skip_files, might_be_code=False)
def is_applicable(self, qt_version):
""" Returns True if this meta-data is applicable for a particular Qt
@@ -178,7 +217,7 @@
@classmethod
def _bundle_nondebug(cls, src_dir, target_qt_dir, qt_dir, platform_tag,
- macos_thin_arch, ignore_missing, exclude=None):
+ macos_thin_arch, ignore_missing, skip_files=None, exclude=None):
""" Bundle the non-debug contents of a directory. """
if exclude is None:
@@ -202,15 +241,34 @@
cls._bundle_file(
os.path.relpath(os.path.join(dirpath, name), qt_dir),
target_qt_dir, qt_dir, platform_tag, macos_thin_arch,
- ignore_missing)
+ ignore_missing, skip_files=skip_files)
+
+ @classmethod
+ def _bundle_exe(cls, name, target_qt_dir, qt_dir, qt_version, platform_tag,
+ macos_thin_arch, ignore_missing, skip_files=None):
+ """ Bundle an executable. """
+
+ exe = cls._bundle_file(name, target_qt_dir, qt_dir, platform_tag,
+ macos_thin_arch, ignore_missing, skip_files=skip_files)
+
+ if exe is not None:
+ if cls._is_platform('linux', platform_tag):
+ cls._fix_linux_executable(exe, qt_version)
+ elif cls._is_platform('macos', platform_tag):
+ cls._fix_macos_executable(exe, qt_version, macos_thin_arch)
+ elif cls._is_platform('win', platform_tag):
+ cls._fix_win_executable(exe)
@staticmethod
def _bundle_file(name, target_dir, src_dir, platform_tag, macos_thin_arch,
- ignore_missing, ignore=None, might_be_code=True):
+ ignore_missing, skip_files=None, ignore=None, might_be_code=True):
""" Bundle a file (or directory) and return the name of the installed
file (or directory) or None if it was missing.
"""
+ if skip_files is not None and name in skip_files:
+ return None
+
src = os.path.join(src_dir, name)
dst = os.path.join(target_dir, name)
@@ -243,30 +301,32 @@
@classmethod
def _bundle_library(cls, name, target_qt_dir, qt_dir, platform_tag,
- macos_thin_arch, ignore_missing, ignore=None):
+ macos_thin_arch, ignore_missing, skip_files=None, ignore=None):
""" Bundle a library. """
cls._bundle_file(name,
os.path.join(target_qt_dir,
cls._get_qt_library_subdir(platform_tag)),
cls._get_qt_library_dir(qt_dir, platform_tag), platform_tag,
- macos_thin_arch, ignore_missing, ignore=ignore)
+ macos_thin_arch, ignore_missing, skip_files=skip_files,
+ ignore=ignore)
@classmethod
def _bundle_qt_library(cls, name, target_qt_dir, qt_dir, qt_version,
- platform_tag, macos_thin_arch, ignore_missing):
+ platform_tag, macos_thin_arch, ignore_missing, skip_files=None,
+ bundle_resources=True):
""" Bundle a Qt library. """
cls._bundle_library(
cls._impl_from_library(name, platform_tag, qt_version),
target_qt_dir, qt_dir, platform_tag, macos_thin_arch,
- ignore_missing)
+ ignore_missing, skip_files=skip_files)
- if cls._is_platform('macos', platform_tag):
+ if bundle_resources and cls._is_platform('macos', platform_tag):
# Copy the Resources directory without the unnecessary .prl files.
cls._bundle_library('{}.framework/Resources'.format(name),
target_qt_dir, qt_dir, platform_tag, macos_thin_arch,
- ignore_missing,
+ ignore_missing, skip_files=skip_files,
ignore=lambda d, c: [f for f in c if f.endswith('.prl')])
@staticmethod
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/pyqt_builder-1.16.1/pyqtbuild/bundle/qt_wheel.py
new/pyqt_builder-1.16.4/pyqtbuild/bundle/qt_wheel.py
--- old/pyqt_builder-1.16.1/pyqtbuild/bundle/qt_wheel.py 2024-04-21
01:31:59.000000000 +0200
+++ new/pyqt_builder-1.16.4/pyqtbuild/bundle/qt_wheel.py 2024-07-12
18:06:49.000000000 +0200
@@ -14,7 +14,7 @@
def qt_wheel(package, qt_dir, build_tag, suffix, msvc_runtime, openssl,
- openssl_dir, exclude, arch):
+ openssl_dir, exclude, arch, subwheel):
""" Create a wheel containing the subset of a Qt installation required for
a particular PyQt package.
"""
@@ -24,14 +24,12 @@
# Normalise the name of the package.
package_name = package.replace('-', '_')
- package_title = package_name.replace('_', '-')
# Get the package object.
package_factory = packages.__dict__.get(package_name)
if package_factory is None:
- raise UserException(
- "'{0}' is not a supported package".format(package_title))
+ raise UserException(f"'{package}' is not a supported package")
package = package_factory(qt_dir)
@@ -41,9 +39,12 @@
# Construct the tag.
qt_arch = os.path.basename(qt_dir)
- if qt_arch == 'gcc_64':
- platform_tag = 'manylinux{}_x86_64'.format(
- '_2_28' if package.qt_version[0] == 6 else '2014')
+
+ if qt_arch in ('gcc_64', 'gcc_arm64'):
+ manylinux = '_2_28' if package.qt_version[0] == 6 else '2014'
+ wheel_arch = 'x86_64' if qt_arch == 'gcc_64' else 'aarch64'
+ platform_tag = f'manylinux{manylinux}_{wheel_arch}'
+
elif qt_arch in ('macos', 'clang_64'):
if package.qt_version < (5, 15, 10) or (6, 0, 0) <= package.qt_version
< (6, 2, 0):
if arch is not None:
@@ -64,8 +65,15 @@
sdk_version = '10_14'
platform_tag = 'macosx_{}_{}'.format(sdk_version, subarch)
+
elif qt_arch.startswith('msvc'):
- platform_tag = 'win_amd64' if qt_arch.endswith('_64') else 'win32'
+ if qt_arch.endswith('_64'):
+ platform_tag = 'win_amd64'
+ elif qt_arch.endswith('_arm64'):
+ platform_tag = 'win_arm64'
+ else:
+ platform_tag = 'win32'
+
else:
raise UserException(
"Qt architecture '{0}' is unsupported".format(qt_arch))
@@ -73,8 +81,24 @@
tag_parts = ['py3', 'none', platform_tag]
tag = '-'.join(tag_parts)
+ package_title = package_name.replace('_', '-')
+ qt_version_suffix = '-Qt' + version_str[0]
+
+ # Determine sub-wheel dependent values'
+ subwheel_full_name = f'{package_title}Subwheel{qt_version_suffix}'
+
+ if subwheel is True:
+ package_full_name = subwheel_full_name
+ package_requires = ''
+ elif subwheel is False:
+ package_full_name = package_title + qt_version_suffix
+ package_requires = f'Requires-Dist: {subwheel_full_name}
(=={version_str})\n'
+ else:
+ package_full_name = package_title + qt_version_suffix
+ package_requires = ''
+
# Construct the name of the wheel.
- name_parts = [package_name + '_Qt' + version_str[0]]
+ name_parts = [package_full_name.replace('-', '_')]
name_parts.append(version_str)
distinfo_dir = '-'.join(name_parts) + '.dist-info'
@@ -97,7 +121,7 @@
# Bundle the relevant parts of the Qt installation.
target_qt_dir = package.get_target_qt_dir()
lgpl = package.bundle_qt(target_qt_dir, platform_tag, exclude,
- ignore_missing=True, bindings=False)
+ ignore_missing=True, bindings=False, subwheel=subwheel)
if platform_tag in ('win32', 'win_amd64'):
# Bundle the MSVC runtime if required.
@@ -121,7 +145,9 @@
metadata = s.read()
metadata = metadata.replace('@RB_PACKAGE@', package_title)
- metadata = metadata.replace('@RB_MAJOR_VERSION@', version_str[0])
+ metadata = metadata.replace('@RB_PACKAGE_NAME@', package_full_name)
+ metadata = metadata.replace('@RB_PACKAGE_REQUIRES@',
+ package_requires)
metadata = metadata.replace('@RB_VERSION@', version_str)
metadata = metadata.replace('@RB_LICENSE@',
"LGPL v3" if lgpl else "GPL v3")
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/pyqt_builder-1.16.1/pyqtbuild/bundle/qt_wheel_distinfo/METADATA
new/pyqt_builder-1.16.4/pyqtbuild/bundle/qt_wheel_distinfo/METADATA
--- old/pyqt_builder-1.16.1/pyqtbuild/bundle/qt_wheel_distinfo/METADATA
2024-04-21 01:31:59.000000000 +0200
+++ new/pyqt_builder-1.16.4/pyqtbuild/bundle/qt_wheel_distinfo/METADATA
2024-06-21 17:28:00.000000000 +0200
@@ -1,5 +1,5 @@
Metadata-Version: 2.1
-Name: @RB_PACKAGE@-Qt@RB_MAJOR_VERSION@
+Name: @RB_PACKAGE_NAME@
Version: @RB_VERSION@
Summary: The subset of a Qt installation needed by @RB_PACKAGE@.
Home-page: https://www.riverbankcomputing.com/software/pyqt/
@@ -9,7 +9,7 @@
Platform: Linux
Platform: macOS
Platform: Windows
-
+@RB_PACKAGE_REQUIRES@
This package contains the subset of a Qt installation that is required by
@RB_PACKAGE@. It would normally be installed automatically by pip when
you install @RB_PACKAGE@.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/pyqt_builder-1.16.1/pyqtbuild/bundle/qt_wheel_main.py
new/pyqt_builder-1.16.4/pyqtbuild/bundle/qt_wheel_main.py
--- old/pyqt_builder-1.16.1/pyqtbuild/bundle/qt_wheel_main.py 2024-04-21
01:31:59.000000000 +0200
+++ new/pyqt_builder-1.16.4/pyqtbuild/bundle/qt_wheel_main.py 2024-06-21
17:28:00.000000000 +0200
@@ -58,6 +58,12 @@
parser.add_argument(dest='packages', nargs=1, help="the PyQt package",
metavar="PACKAGE")
+ parser.add_argument('--subwheel', choices=('generate', 'exclude'),
+ default=None,
+ help="generate the package's sub-wheel or exclude the sub-wheel "
+ "contents from the main wheel [default: generate a full "
+ "wheel]")
+
args = parser.parse_args()
try:
@@ -68,10 +74,18 @@
except AttributeError:
arch = None
+ subwheel = args.subwheel
+
+ if subwheel == 'generate':
+ subwheel = True
+ elif subwheel == 'exclude':
+ subwheel = False
+
qt_wheel(package=args.packages[0], qt_dir=args.qt_dir,
build_tag=args.build_tag, suffix=args.suffix,
msvc_runtime=args.msvc_runtime, openssl=args.openssl,
- openssl_dir=args.openssl_dir, exclude=args.exclude, arch=arch)
+ openssl_dir=args.openssl_dir, exclude=args.exclude, arch=arch,
+ subwheel=subwheel)
except Exception as e:
handle_exception(e)