Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python-wheel for openSUSE:Factory 
checked in at 2022-02-17 00:29:52
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-wheel (Old)
 and      /work/SRC/openSUSE:Factory/.python-wheel.new.1956 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-wheel"

Thu Feb 17 00:29:52 2022 rev:26 rq:954400 version:0.37.1

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-wheel/python-wheel.changes        
2022-01-29 20:57:46.480388456 +0100
+++ /work/SRC/openSUSE:Factory/.python-wheel.new.1956/python-wheel.changes      
2022-02-17 00:29:54.001439820 +0100
@@ -1,0 +2,10 @@
+Mon Feb 14 22:08:28 UTC 2022 - Dirk M??ller <dmuel...@suse.com>
+
+- update to 0.37.1:
+  * Fixed ``wheel pack`` duplicating the ``WHEEL`` contents when the build
+   number has changed Fixed parsing of file names containing commas in
+   ``RECORD`` (PR by Hood Chatham)
+  * Added official Python 3.10 support
+  * Updated vendored ``packaging`` library to v20.9
+
+-------------------------------------------------------------------

Old:
----
  wheel-0.36.2.tar.gz

New:
----
  wheel-0.37.1.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ python-wheel.spec ++++++
--- /var/tmp/diff_new_pack.TyLXco/_old  2022-02-17 00:29:54.773439688 +0100
+++ /var/tmp/diff_new_pack.TyLXco/_new  2022-02-17 00:29:54.777439687 +0100
@@ -32,7 +32,7 @@
 %bcond_with test
 %endif
 Name:           python-wheel%{psuffix}
-Version:        0.36.2
+Version:        0.37.1
 Release:        0
 Summary:        A built-package format for Python
 License:        MIT

++++++ wheel-0.36.2.tar.gz -> wheel-0.37.1.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/wheel-0.36.2/.cirrus.yml new/wheel-0.37.1/.cirrus.yml
--- old/wheel-0.36.2/.cirrus.yml        2020-12-13 19:07:13.000000000 +0100
+++ new/wheel-0.37.1/.cirrus.yml        2021-12-22 13:19:07.000000000 +0100
@@ -1,5 +1,5 @@
 freebsd_instance:
-  image_family: freebsd-12-1
+  image_family: freebsd-13-0-snap
 
 test_task:
   only_if: "$CIRRUS_BRANCH == 'master' || $CIRRUS_PR != ''"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/wheel-0.36.2/.github/workflows/codeqa-test.yml 
new/wheel-0.37.1/.github/workflows/codeqa-test.yml
--- old/wheel-0.36.2/.github/workflows/codeqa-test.yml  2020-12-13 
19:07:13.000000000 +0100
+++ new/wheel-0.37.1/.github/workflows/codeqa-test.yml  2021-12-22 
13:19:07.000000000 +0100
@@ -2,7 +2,7 @@
 
 on:
   push:
-    branches: [master]
+    branches: [main]
   pull_request:
 
 jobs:
@@ -11,7 +11,7 @@
     steps:
     - uses: actions/checkout@v2
     - name: Check code style with Flake8
-      uses: TrueBrain/actions-flake8@v1.2
+      uses: TrueBrain/actions-flake8@v2
       with:
         path: src tests
 
@@ -20,19 +20,17 @@
     strategy:
       fail-fast: false
       matrix:
-        os: [ubuntu-latest, macos-10.15, macos-11.0, windows-latest]
-        python-version: [2.7, 3.6, 3.9, pypy2, pypy3]
+        os: [ubuntu-latest, macos-10.15, macos-11, windows-latest]
+        python-version: ["2.7", "3.6", "3.9", "3.10", "pypy-2.7", "pypy-3.7"]
         exclude:
-        - os: macos-11.0
-          python-version: pypy2
-        - os: macos-11.0
-          python-version: pypy3
+        - os: macos-11
+          python-version: pypy-2.7
         - os: windows-latest
-          python-version: 2.7
+          python-version: "2.7"
         - os: windows-latest
-          python-version: pypy2
+          python-version: pypy-2.7
         - os: windows-latest
-          python-version: pypy3
+          python-version: pypy-3.7
     runs-on: ${{ matrix.os }}
     steps:
     - uses: actions/checkout@v2
@@ -47,4 +45,8 @@
     - name: Install test dependencies
       run: pip install .[test]
     - name: Test with pytest
-      run: python -b -m pytest -W always
+      run: python -b -m pytest -W always --cov-report=xml:pytest-cov.xml
+    - name: Send coverage data to Codecov
+      uses: codecov/codecov-action@v1
+      with:
+        file: pytest-cov.xml
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/wheel-0.36.2/MANIFEST.in new/wheel-0.37.1/MANIFEST.in
--- old/wheel-0.36.2/MANIFEST.in        2020-12-13 19:07:13.000000000 +0100
+++ new/wheel-0.37.1/MANIFEST.in        2021-12-22 13:19:07.000000000 +0100
@@ -5,6 +5,7 @@
 include tox.ini
 include manpages/*.rst
 include LICENSE.txt
+include src/wheel/vendored/vendor.txt
 prune tests/testdata/*/build
 prune tests/testdata/*/dist
 prune tests/testdata/*/*.egg-info
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/wheel-0.36.2/docs/news.rst 
new/wheel-0.37.1/docs/news.rst
--- old/wheel-0.36.2/docs/news.rst      2020-12-13 19:07:13.000000000 +0100
+++ new/wheel-0.37.1/docs/news.rst      2021-12-22 13:19:07.000000000 +0100
@@ -1,6 +1,16 @@
 Release Notes
 =============
 
+**0.37.1 (2021-12-22)**
+
+- Fixed ``wheel pack`` duplicating the ``WHEEL`` contents when the build 
number has changed (#415)
+- Fixed parsing of file names containing commas in ``RECORD`` (PR by Hood 
Chatham)
+
+**0.37.0 (2021-08-09)**
+
+- Added official Python 3.10 support
+- Updated vendored ``packaging`` library to v20.9
+
 **0.36.2 (2020-12-13)**
 
 - Updated vendored ``packaging`` library to v20.8
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/wheel-0.36.2/setup.cfg new/wheel-0.37.1/setup.cfg
--- old/wheel-0.36.2/setup.cfg  2020-12-13 19:07:13.000000000 +0100
+++ new/wheel-0.37.1/setup.cfg  2021-12-22 13:19:07.000000000 +0100
@@ -17,6 +17,7 @@
     Programming Language :: Python :: 3.7
     Programming Language :: Python :: 3.8
     Programming Language :: Python :: 3.9
+    Programming Language :: Python :: 3.10
 author = Daniel Holth
 author_email = dho...@fastmail.fm
 maintainer = Alex Gronholm
@@ -52,11 +53,12 @@
     bdist_wheel = wheel.bdist_wheel:bdist_wheel
 
 [tool:pytest]
-addopts = --cov=wheel
+addopts = --cov --cov-config=setup.cfg
 testpaths = tests
 
 [coverage:run]
 source = wheel
+omit = */vendored/*
 
 [coverage:report]
 show_missing = true
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/wheel-0.36.2/src/wheel/__init__.py 
new/wheel-0.37.1/src/wheel/__init__.py
--- old/wheel-0.36.2/src/wheel/__init__.py      2020-12-13 19:07:13.000000000 
+0100
+++ new/wheel-0.37.1/src/wheel/__init__.py      2021-12-22 13:19:07.000000000 
+0100
@@ -1 +1 @@
-__version__ = '0.36.2'
+__version__ = '0.37.1'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/wheel-0.36.2/src/wheel/cli/pack.py 
new/wheel-0.37.1/src/wheel/cli/pack.py
--- old/wheel-0.36.2/src/wheel/cli/pack.py      2020-12-13 19:07:13.000000000 
+0100
+++ new/wheel-0.37.1/src/wheel/cli/pack.py      2021-12-22 13:19:07.000000000 
+0100
@@ -57,9 +57,12 @@
             replacement = ('Build: %s\r\n' % build_number).encode('ascii') if 
build_number else b''
             with open(wheel_file_path, 'rb+') as f:
                 wheel_file_content = f.read()
-                if not BUILD_NUM_RE.subn(replacement, wheel_file_content)[1]:
+                wheel_file_content, num_replaced = 
BUILD_NUM_RE.subn(replacement,
+                                                                     
wheel_file_content)
+                if not num_replaced:
                     wheel_file_content += replacement
 
+                f.seek(0)
                 f.truncate()
                 f.write(wheel_file_content)
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/wheel-0.36.2/src/wheel/macosx_libfile.py 
new/wheel-0.37.1/src/wheel/macosx_libfile.py
--- old/wheel-0.36.2/src/wheel/macosx_libfile.py        2020-12-13 
19:07:13.000000000 +0100
+++ new/wheel-0.37.1/src/wheel/macosx_libfile.py        2021-12-22 
13:19:07.000000000 +0100
@@ -28,7 +28,7 @@
 
 Important remarks:
 - For fat files this implementation looks for maximum number version.
-  It not check if it is 32 or 64 and do not compare it with currently builded 
package.
+  It not check if it is 32 or 64 and do not compare it with currently built 
package.
   So it is possible to false report higher version that needed.
 - All structures signatures are taken form macosx header files.
 - I think that binary format will be more stable than `otool` output.
@@ -279,7 +279,7 @@
                             # Xcode will not set the deployment target below 
11.0.0
                             # for the arm64 architecture. Ignore the arm64 
deployment
                             # in fat binaries when the target is 11.0.0, that 
way
-                            # the other architetures can select a lower 
deployment
+                            # the other architectures can select a lower 
deployment
                             # target.
                             # This is safe because there is no arm64 variant 
for
                             # macOS 10.15 or earlier.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/wheel-0.36.2/src/wheel/vendored/packaging/tags.py 
new/wheel-0.37.1/src/wheel/vendored/packaging/tags.py
--- old/wheel-0.36.2/src/wheel/vendored/packaging/tags.py       2020-12-13 
19:07:13.000000000 +0100
+++ new/wheel-0.37.1/src/wheel/vendored/packaging/tags.py       2021-12-22 
13:19:07.000000000 +0100
@@ -458,14 +458,28 @@
                     major=major_version, minor=0, binary_format=binary_format
                 )
 
-    if version >= (11, 0) and arch == "x86_64":
+    if version >= (11, 0):
         # Mac OS 11 on x86_64 is compatible with binaries from previous 
releases.
         # Arm64 support was introduced in 11.0, so no Arm binaries from 
previous
         # releases exist.
-        for minor_version in range(16, 3, -1):
-            compat_version = 10, minor_version
-            binary_formats = _mac_binary_formats(compat_version, arch)
-            for binary_format in binary_formats:
+        #
+        # However, the "universal2" binary format can have a
+        # macOS version earlier than 11.0 when the x86_64 part of the binary 
supports
+        # that version of macOS.
+        if arch == "x86_64":
+            for minor_version in range(16, 3, -1):
+                compat_version = 10, minor_version
+                binary_formats = _mac_binary_formats(compat_version, arch)
+                for binary_format in binary_formats:
+                    yield "macosx_{major}_{minor}_{binary_format}".format(
+                        major=compat_version[0],
+                        minor=compat_version[1],
+                        binary_format=binary_format,
+                    )
+        else:
+            for minor_version in range(16, 3, -1):
+                compat_version = 10, minor_version
+                binary_format = "universal2"
                 yield "macosx_{major}_{minor}_{binary_format}".format(
                     major=compat_version[0],
                     minor=compat_version[1],
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/wheel-0.36.2/src/wheel/vendored/vendor.txt 
new/wheel-0.37.1/src/wheel/vendored/vendor.txt
--- old/wheel-0.36.2/src/wheel/vendored/vendor.txt      1970-01-01 
01:00:00.000000000 +0100
+++ new/wheel-0.37.1/src/wheel/vendored/vendor.txt      2021-12-22 
13:19:07.000000000 +0100
@@ -0,0 +1 @@
+packaging==20.9
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/wheel-0.36.2/src/wheel/wheelfile.py 
new/wheel-0.37.1/src/wheel/wheelfile.py
--- old/wheel-0.36.2/src/wheel/wheelfile.py     2020-12-13 19:07:13.000000000 
+0100
+++ new/wheel-0.37.1/src/wheel/wheelfile.py     2021-12-22 13:19:07.000000000 
+0100
@@ -5,6 +5,7 @@
 import os.path
 import re
 import stat
+import sys
 import time
 from collections import OrderedDict
 from distutils import log as logger
@@ -13,6 +14,16 @@
 from wheel.cli import WheelError
 from wheel.util import urlsafe_b64decode, as_unicode, native, 
urlsafe_b64encode, as_bytes, StringIO
 
+if sys.version_info >= (3,):
+    from io import TextIOWrapper
+
+    def read_csv(fp):
+        return csv.reader(TextIOWrapper(fp, newline='', encoding='utf-8'))
+else:
+    def read_csv(fp):
+        for line in csv.reader(fp):
+            yield [column.decode('utf-8') for column in line]
+
 # Non-greedy matching of an optional build number may be too clever (more
 # invalid wheel filenames will match). Separate regex for .dist-info?
 WHEEL_INFO_RE = re.compile(
@@ -60,23 +71,24 @@
                 raise WheelError('Missing {} file'.format(self.record_path))
 
             with record:
-                for line in record:
-                    line = line.decode('utf-8')
-                    path, hash_sum, size = line.rsplit(u',', 2)
-                    if hash_sum:
-                        algorithm, hash_sum = hash_sum.split(u'=')
-                        try:
-                            hashlib.new(algorithm)
-                        except ValueError:
-                            raise WheelError('Unsupported hash algorithm: 
{}'.format(algorithm))
-
-                        if algorithm.lower() in {'md5', 'sha1'}:
-                            raise WheelError(
-                                'Weak hash algorithm ({}) is not permitted by 
PEP 427'
-                                .format(algorithm))
+                for line in read_csv(record):
+                    path, hash_sum, size = line
+                    if not hash_sum:
+                        continue
+
+                    algorithm, hash_sum = hash_sum.split(u'=')
+                    try:
+                        hashlib.new(algorithm)
+                    except ValueError:
+                        raise WheelError('Unsupported hash algorithm: 
{}'.format(algorithm))
+
+                    if algorithm.lower() in {'md5', 'sha1'}:
+                        raise WheelError(
+                            'Weak hash algorithm ({}) is not permitted by PEP 
427'
+                            .format(algorithm))
 
-                        self._file_hashes[path] = (
-                            algorithm, 
urlsafe_b64decode(hash_sum.encode('ascii')))
+                    self._file_hashes[path] = (
+                        algorithm, urlsafe_b64decode(hash_sum.encode('ascii')))
 
     def open(self, name_or_info, mode="r", pwd=None):
         def _update_crc(newdata, eof=None):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/wheel-0.36.2/tests/cli/test_pack.py 
new/wheel-0.37.1/tests/cli/test_pack.py
--- old/wheel-0.36.2/tests/cli/test_pack.py     2020-12-13 19:07:13.000000000 
+0100
+++ new/wheel-0.37.1/tests/cli/test_pack.py     2021-12-22 13:19:07.000000000 
+0100
@@ -1,4 +1,5 @@
 import os
+from textwrap import dedent
 from zipfile import ZipFile
 
 import pytest
@@ -47,7 +48,15 @@
     assert new_record_lines == old_record_lines
 
     expected_build_num = build_tag_arg or existing_build_tag
+    expected_wheel_content = dedent("""\
+        Wheel-Version: 1.0
+        Generator: bdist_wheel (0.30.0)
+        Root-Is-Purelib: false
+        Tag: py2-none-any
+        Tag: py3-none-any
+    """.replace('\n', '\r\n'))
     if expected_build_num:
-        assert ('Build: %s\r\n' % expected_build_num).encode() in 
new_wheel_file_content
-    else:
-        assert b'Build: ' not in new_wheel_file_content
+        expected_wheel_content += 'Build: %s\r\n' % expected_build_num
+
+    expected_wheel_content = expected_wheel_content.encode('ascii')
+    assert new_wheel_file_content == expected_wheel_content
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/wheel-0.36.2/tests/conftest.py 
new/wheel-0.37.1/tests/conftest.py
--- old/wheel-0.36.2/tests/conftest.py  2020-12-13 19:07:13.000000000 +0100
+++ new/wheel-0.37.1/tests/conftest.py  2021-12-22 13:19:07.000000000 +0100
@@ -12,7 +12,7 @@
 @pytest.fixture(scope='session')
 def wheels_and_eggs(tmpdir_factory):
     """Build wheels and eggs from test distributions."""
-    test_distributions = "complex-dist", "simple.dist", "headers.dist"
+    test_distributions = "complex-dist", "simple.dist", "headers.dist", 
"commasinfilenames.dist"
     if sys.version_info >= (3, 6):
         # Only Python 3.6+ can handle packaging unicode file names reliably
         # across different platforms
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/wheel-0.36.2/tests/testdata/commasinfilenames.dist/setup.py 
new/wheel-0.37.1/tests/testdata/commasinfilenames.dist/setup.py
--- old/wheel-0.36.2/tests/testdata/commasinfilenames.dist/setup.py     
1970-01-01 01:00:00.000000000 +0100
+++ new/wheel-0.37.1/tests/testdata/commasinfilenames.dist/setup.py     
2021-12-22 13:19:07.000000000 +0100
@@ -0,0 +1,12 @@
+from setuptools import setup
+
+setup(
+    name='testrepo',
+    version='0.1',
+    packages=["mypackage"],
+    description='A test package with commas in file names',
+    include_package_data=True,
+    package_data={
+        "mypackage.data": ["*"]
+    },
+)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/wheel-0.36.2/tox.ini new/wheel-0.37.1/tox.ini
--- old/wheel-0.36.2/tox.ini    2020-12-13 19:07:13.000000000 +0100
+++ new/wheel-0.37.1/tox.ini    2021-12-22 13:19:07.000000000 +0100
@@ -4,7 +4,7 @@
 # and then run "tox" from this directory.
 
 [tox]
-envlist = py27, py35, py36, py37, py38, py39, pypy, pypy3, flake8
+envlist = py27, py35, py36, py37, py38, py39, py310, pypy, pypy3, flake8
 minversion = 3.3.0
 skip_missing_interpreters = true
 

Reply via email to