Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package python-flit-core for openSUSE:Factory checked in at 2022-11-09 12:55:57 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-flit-core (Old) and /work/SRC/openSUSE:Factory/.python-flit-core.new.1597 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-flit-core" Wed Nov 9 12:55:57 2022 rev:12 rq:1034459 version:3.8.0 Changes: -------- --- /work/SRC/openSUSE:Factory/python-flit-core/python-flit-core.changes 2022-10-14 15:40:05.331672889 +0200 +++ /work/SRC/openSUSE:Factory/.python-flit-core.new.1597/python-flit-core.changes 2022-11-09 12:56:01.791872477 +0100 @@ -1,0 +2,27 @@ +Tue Nov 8 00:36:32 UTC 2022 - Yogalakshmi Arunachalam <yarunacha...@suse.com> + +- Update to v3.8.0 + + * Merge pull request #607 from pypa/relnotes-3.8 + Add release notes for version 3.8 + * Add --only-deps option to release notes + * Merge pull request #546 from dciborow/dciborow/install-reqs + Add "install-reqs" command to CLI + * Fix some remaining uses of tomli in the tests, for Python 3.11 + * Remove test with side effects + * Replace install-reqs subcommand with --only-deps option + * Merge pull request #581 from nanonyme/nanonyme/bytecode + * Merge pull request #602 from Mariatta/patch-1 + Document that token-based upload is supported + * Merge pull request #604 from gotmax23/tomli + Remove vestigial tomli usage + * Test on Python 3.11-dev + * Add python 3.11 to the test matrix + * Adjust test deps in tox.ini + * tests: Only use tomli if tomllib is missing + * Fallback to installed tomli when vendor is removed + In Fedora, we bootstrap tomli differently, so we remove the vendored + version. This makes it so we don't also have to patch flit_core.config + ourselves. + +------------------------------------------------------------------- Old: ---- flit_core-3.7.1.tar.gz New: ---- flit_core-3.8.0.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-flit-core.spec ++++++ --- /var/tmp/diff_new_pack.6OwWwm/_old 2022-11-09 12:56:03.007879331 +0100 +++ /var/tmp/diff_new_pack.6OwWwm/_new 2022-11-09 12:56:03.011879354 +0100 @@ -46,7 +46,7 @@ %bcond_with test %endif Name: %{pprefix}-flit-core%{?psuffix} -Version: 3.7.1 +Version: 3.8.0 Release: 0 Summary: Distribution-building parts of Flit License: BSD-3-Clause AND MIT ++++++ flit_core-3.7.1.tar.gz -> flit_core-3.8.0.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/flit_core-3.7.1/LICENSE new/flit_core-3.8.0/LICENSE --- old/flit_core-3.7.1/LICENSE 1970-01-01 01:00:00.000000000 +0100 +++ new/flit_core-3.8.0/LICENSE 2022-11-05 13:52:43.629104400 +0100 @@ -0,0 +1,29 @@ +Copyright (c) 2015, Thomas Kluyver and contributors +All rights reserved. + +BSD 3-clause license: + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this +list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, +this list of conditions and the following disclaimer in the documentation and/or +other materials provided with the distribution. + +3. Neither the name of the copyright holder nor the names of its contributors +may be used to endorse or promote products derived from this software without +specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/flit_core-3.7.1/PKG-INFO new/flit_core-3.8.0/PKG-INFO --- old/flit_core-3.7.1/PKG-INFO 1970-01-01 01:00:00.000000000 +0100 +++ new/flit_core-3.8.0/PKG-INFO 1970-01-01 01:00:00.000000000 +0100 @@ -1,6 +1,6 @@ Metadata-Version: 2.1 Name: flit_core -Version: 3.7.1 +Version: 3.8.0 Summary: Distribution-building parts of Flit. See flit package for more information Author-email: Thomas Kluyver & contributors <tho...@kluyver.me.uk> Requires-Python: >=3.6 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/flit_core-3.7.1/README.rst new/flit_core-3.8.0/README.rst --- old/flit_core-3.7.1/README.rst 2021-11-14 15:34:30.346272500 +0100 +++ new/flit_core-3.8.0/README.rst 1970-01-01 01:00:00.000000000 +0100 @@ -1,6 +0,0 @@ -flit_core ---------- - -This provides a PEP 517 build backend for packages using Flit. -The only public interface is the API specified by PEP 517, at ``flit_core.buildapi``. - diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/flit_core-3.7.1/bootstrap_install.py new/flit_core-3.8.0/bootstrap_install.py --- old/flit_core-3.7.1/bootstrap_install.py 2022-02-21 20:04:37.818999300 +0100 +++ new/flit_core-3.8.0/bootstrap_install.py 2022-11-05 13:52:43.629104400 +0100 @@ -37,12 +37,21 @@ default=purelib, help=f'installdir directory (defaults to {purelib})', ) + parser.add_argument( + '--install-root', + type=Path, + default=None, + help='if given, installdir is considered to be under this' + ) args = parser.parse_args() if not args.wheel.name.startswith('flit_core-'): sys.exit("Use this script only for flit_core wheels") - if not args.installdir.is_dir(): - sys.exit(f"{args.installdir} is not a directory") + if args.install_root: + installdir = args.install_root / args.installdir.relative_to("/") + else: + installdir = args.installdir - extract_wheel(args.wheel, args.installdir) + installdir.mkdir(parents=True, exist_ok=True) + extract_wheel(args.wheel, installdir) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/flit_core-3.7.1/flit_core/__init__.py new/flit_core-3.8.0/flit_core/__init__.py --- old/flit_core-3.7.1/flit_core/__init__.py 2022-02-23 12:35:47.109032400 +0100 +++ new/flit_core-3.8.0/flit_core/__init__.py 2022-11-05 14:06:27.382138300 +0100 @@ -4,4 +4,4 @@ All the convenient development features live in the main 'flit' package. """ -__version__ = '3.7.1' +__version__ = '3.8.0' diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/flit_core-3.7.1/flit_core/common.py new/flit_core-3.8.0/flit_core/common.py --- old/flit_core-3.7.1/flit_core/common.py 2022-02-23 12:35:15.232898500 +0100 +++ new/flit_core-3.8.0/flit_core/common.py 2022-11-05 13:52:43.629104400 +0100 @@ -135,9 +135,11 @@ # string assignment to __version__ is_version_str = ( isinstance(child, ast.Assign) - and len(child.targets) == 1 - and isinstance(child.targets[0], ast.Name) - and child.targets[0].id == "__version__" + and any( + isinstance(target, ast.Name) + and target.id == "__version__" + for target in child.targets + ) and isinstance(child.value, ast.Str) ) if is_version_str: @@ -398,7 +400,7 @@ def supports_py2(self): """Return True if Requires-Python indicates Python 2 support.""" for part in (self.requires_python or "").split(","): - if re.search(r"^\s*(>\s*(=\s*)?)?[3-9]", part): + if re.search(r"^\s*(>=?|~=|===?)?\s*[3-9]", part): return False return True diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/flit_core-3.7.1/flit_core/config.py new/flit_core-3.8.0/flit_core/config.py --- old/flit_core-3.7.1/flit_core/config.py 2022-02-21 19:53:07.976436100 +0100 +++ new/flit_core-3.8.0/flit_core/config.py 2022-11-05 13:52:43.630104300 +0100 @@ -7,7 +7,16 @@ from pathlib import Path import re -from .vendor import tomli +try: + import tomllib +except ImportError: + try: + from .vendor import tomli as tomllib + # Some downstream distributors remove the vendored tomli. + # When that is removed, import tomli from the regular location. + except ImportError: + import tomli as tomllib + from .versionno import normalise_version log = logging.getLogger(__name__) @@ -66,7 +75,7 @@ def read_flit_config(path): """Read and check the `pyproject.toml` file with data about the package. """ - d = tomli.loads(path.read_text('utf-8')) + d = tomllib.loads(path.read_text('utf-8')) return prep_toml_config(d, path) @@ -138,8 +147,12 @@ loaded_cfg.sdist_include_patterns = _check_glob_patterns( dtool['sdist'].get('include', []), 'include' ) + exclude = [ + "**/__pycache__", + "**.pyc", + ] + dtool['sdist'].get('exclude', []) loaded_cfg.sdist_exclude_patterns = _check_glob_patterns( - dtool['sdist'].get('exclude', []), 'exclude' + exclude, 'exclude' ) data_dir = dtool.get('external-data', {}).get('directory', None) @@ -216,11 +229,6 @@ '{} pattern {!r} contains bad characters (<>:\"\\ or control characters)' .format(clude, p) ) - if '**' in p: - raise ConfigError( - "Recursive globbing (**) is not supported yet (in {} pattern {!r})" - .format(clude, p) - ) normp = osp.normpath(p) @@ -426,7 +434,8 @@ if 'name' not in proj: raise ConfigError('name must be specified in [project] table') _check_type(proj, 'name', str) - lc.module = md_dict['name'] = proj['name'] + md_dict['name'] = proj['name'] + lc.module = md_dict['name'].replace('-', '_') unexpected_keys = proj.keys() - pep621_allowed_fields if unexpected_keys: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/flit_core-3.7.1/flit_core/sdist.py new/flit_core-3.8.0/flit_core/sdist.py --- old/flit_core-3.7.1/flit_core/sdist.py 2022-02-21 19:53:07.977436000 +0100 +++ new/flit_core-3.8.0/flit_core/sdist.py 2022-11-05 13:52:43.630104300 +0100 @@ -43,7 +43,7 @@ self.files = set() for pattern in patterns: - for path in sorted(glob(osp.join(basedir, pattern))): + for path in sorted(glob(osp.join(basedir, pattern), recursive=True)): rel = osp.relpath(path, basedir) if osp.isdir(path): self.dirs.add(rel) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/flit_core-3.7.1/flit_core/tests/samples/inclusion/pyproject.toml new/flit_core-3.8.0/flit_core/tests/samples/inclusion/pyproject.toml --- old/flit_core-3.7.1/flit_core/tests/samples/inclusion/pyproject.toml 2021-11-14 15:34:30.348272600 +0100 +++ new/flit_core-3.8.0/flit_core/tests/samples/inclusion/pyproject.toml 2022-11-05 13:52:43.630104300 +0100 @@ -9,4 +9,4 @@ [tool.flit.sdist] include = ["doc"] -exclude = ["doc/*.txt"] +exclude = ["doc/*.txt", "doc/**/*.md"] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/flit_core-3.7.1/flit_core/tests/samples/moduleunimportabledouble.py new/flit_core-3.8.0/flit_core/tests/samples/moduleunimportabledouble.py --- old/flit_core-3.7.1/flit_core/tests/samples/moduleunimportabledouble.py 1970-01-01 01:00:00.000000000 +0100 +++ new/flit_core-3.8.0/flit_core/tests/samples/moduleunimportabledouble.py 2022-11-05 13:52:43.630104300 +0100 @@ -0,0 +1,8 @@ + +""" +A sample unimportable module with double assignment +""" + +raise ImportError() + +VERSION = __version__ = "0.1" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/flit_core-3.7.1/flit_core/tests/samples/normalization/pyproject.toml new/flit_core-3.8.0/flit_core/tests/samples/normalization/pyproject.toml --- old/flit_core-3.7.1/flit_core/tests/samples/normalization/pyproject.toml 1970-01-01 01:00:00.000000000 +0100 +++ new/flit_core-3.8.0/flit_core/tests/samples/normalization/pyproject.toml 2022-11-05 13:52:43.630104300 +0100 @@ -0,0 +1,14 @@ +[build-system] +requires = ["flit_core >=3.8,<4"] +build-backend = "flit_core.buildapi" + +[project] +name = "my-python-module" +version = "0.0.1" +description = "Hyphenated package name, infered import name" +authors = [ + {name = "Sir Robin", email = "ro...@camelot.uk"} +] + +[project.urls] +homepage = "http://github.com/me/python-module" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/flit_core-3.7.1/flit_core/tests/test_common.py new/flit_core-3.8.0/flit_core/tests/test_common.py --- old/flit_core-3.7.1/flit_core/tests/test_common.py 2022-02-23 12:35:15.233898400 +0100 +++ new/flit_core-3.8.0/flit_core/tests/test_common.py 2022-11-05 13:52:43.630104300 +0100 @@ -70,6 +70,11 @@ 'version': '0.1'} ) + info = get_info_from_module(Module('moduleunimportabledouble', samples_dir)) + self.assertEqual(info, {'summary': 'A sample unimportable module with double assignment', + 'version': '0.1'} + ) + info = get_info_from_module(Module('module1', samples_dir / 'constructed_version')) self.assertEqual(info, {'summary': 'This module has a __version__ that requires runtime interpretation', 'version': '1.2.3'} @@ -113,6 +118,9 @@ ("<4, > 3.2", False), (">3.4", False), (">=2.7, !=3.0.*, !=3.1.*, !=3.2.*", True), + ("== 3.9", False), + ("~=2.7", True), + ("~=3.9", False), ], ) def test_supports_py2(requires_python, expected_result): diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/flit_core-3.7.1/flit_core/tests/test_config.py new/flit_core-3.8.0/flit_core/tests/test_config.py --- old/flit_core-3.7.1/flit_core/tests/test_config.py 2021-11-18 23:10:43.578393000 +0100 +++ new/flit_core-3.8.0/flit_core/tests/test_config.py 2022-11-05 13:52:43.630104300 +0100 @@ -20,6 +20,11 @@ assert inf.module == 'ns1.pkg' assert inf.metadata['home_page'] == 'http://github.com/sirrobin/module1' +def test_load_normalization(): + inf = config.read_flit_config(samples_dir / 'normalization' / 'pyproject.toml') + assert inf.module == 'my_python_module' + assert inf.metadata['name'] == 'my-python-module' + def test_load_pep621(): inf = config.read_flit_config(samples_dir / 'pep621' / 'pyproject.toml') assert inf.module == 'module1a' @@ -108,7 +113,6 @@ ('foo/../../bar', 'out of the directory'), ('/home', 'absolute path'), ('foo:bar', 'bad character'), - ('foo/**/bar', '[Rr]ecursive glob') ]) def test_bad_include_paths(path, err_match): toml_cfg = {'tool': {'flit': { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/flit_core-3.7.1/flit_core/tests/test_sdist.py new/flit_core-3.8.0/flit_core/tests/test_sdist.py --- old/flit_core-3.7.1/flit_core/tests/test_sdist.py 2022-02-21 19:53:07.978436000 +0100 +++ new/flit_core-3.8.0/flit_core/tests/test_sdist.py 2022-11-05 13:52:43.631104500 +0100 @@ -49,6 +49,7 @@ assert osp.join('doc', 'test.rst') in files assert osp.join('doc', 'test.txt') not in files assert osp.join('doc', 'subdir', 'test.txt') in files + assert osp.join('doc', 'subdir', 'subsubdir', 'test.md') not in files def test_data_dir(): diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/flit_core-3.7.1/pyproject.toml new/flit_core-3.8.0/pyproject.toml --- old/flit_core-3.7.1/pyproject.toml 2022-02-21 20:04:37.819999200 +0100 +++ new/flit_core-3.8.0/pyproject.toml 2022-11-05 13:52:43.631104500 +0100 @@ -11,6 +11,7 @@ description = "Distribution-building parts of Flit. See flit package for more information" dependencies = [] requires-python = '>=3.6' +license = {file = "LICENSE"} classifiers = [ "License :: OSI Approved :: BSD License", "Topic :: Software Development :: Libraries :: Python Modules", diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/flit_core-3.7.1/update-vendored-tomli.sh new/flit_core-3.8.0/update-vendored-tomli.sh --- old/flit_core-3.7.1/update-vendored-tomli.sh 2022-01-15 14:08:55.118355800 +0100 +++ new/flit_core-3.8.0/update-vendored-tomli.sh 1970-01-01 01:00:00.000000000 +0100 @@ -1,18 +0,0 @@ -#!/bin/bash -# Update the vendored copy of tomli -set -euo pipefail - -version=$1 -echo "Bundling tomli version $version" - -rm -rf flit_core/vendor/tomli* -pip install --target flit_core/vendor/ "tomli==$version" - -# Convert absolute imports to relative (from tomli.foo -> from .foo) -for file in flit_core/vendor/tomli/*.py; do - sed -i -E 's/((from|import)[[:space:]]+)tomli\./\1\./' "$file" -done - -# Delete some files that aren't useful in this context. -# Leave LICENSE & METADATA present. -rm flit_core/vendor/tomli*.dist-info/{INSTALLER,RECORD,REQUESTED,WHEEL}