Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-distutils-extra for
openSUSE:Factory checked in at 2023-02-10 14:35:54
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-distutils-extra (Old)
and /work/SRC/openSUSE:Factory/.python-distutils-extra.new.1848 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-distutils-extra"
Fri Feb 10 14:35:54 2023 rev:32 rq:1064200 version:2.49
Changes:
--------
---
/work/SRC/openSUSE:Factory/python-distutils-extra/python-distutils-extra.changes
2022-12-04 14:59:24.072632134 +0100
+++
/work/SRC/openSUSE:Factory/.python-distutils-extra.new.1848/python-distutils-extra.changes
2023-02-10 14:35:55.106134963 +0100
@@ -1,0 +2,7 @@
+Fri Feb 10 10:00:42 UTC 2023 - Dirk Müller <[email protected]>
+
+- update to 2.49:
+ * Add missing python3-setuptools Depends
+ * Adapt tests to setuptools 54+
+
+-------------------------------------------------------------------
Old:
----
python-distutils-extra-2.47.tar.bz2
New:
----
python-distutils-extra-2.49.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-distutils-extra.spec ++++++
--- /var/tmp/diff_new_pack.iJh4hw/_old 2023-02-10 14:35:55.582137807 +0100
+++ /var/tmp/diff_new_pack.iJh4hw/_new 2023-02-10 14:35:55.590137855 +0100
@@ -1,7 +1,7 @@
#
# spec file for package python-distutils-extra
#
-# Copyright (c) 2022 SUSE LLC
+# Copyright (c) 2023 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -18,7 +18,7 @@
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-distutils-extra
-Version: 2.47
+Version: 2.49
Release: 0
Summary: Distutils/Setuptools Adapter
License: GPL-2.0-only
++++++ python-distutils-extra-2.47.tar.bz2 ->
python-distutils-extra-2.49.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/python-distutils-extra-2.47/DistUtilsExtra/auto.py
new/python-distutils-extra-2.49/DistUtilsExtra/auto.py
--- old/python-distutils-extra-2.47/DistUtilsExtra/auto.py 2022-06-17
13:42:49.000000000 +0200
+++ new/python-distutils-extra-2.49/DistUtilsExtra/auto.py 2023-01-30
06:55:51.000000000 +0100
@@ -85,6 +85,9 @@
for d in ignore_dirs:
if f.startswith(d + os.path.sep):
src.remove(f)
+ # Also remove files from the .egg-info directory
+ if '.egg-info/' in f:
+ src.remove(f)
__cmdclass(attrs)
__modules(attrs, src)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/python-distutils-extra-2.47/debian/changelog
new/python-distutils-extra-2.49/debian/changelog
--- old/python-distutils-extra-2.47/debian/changelog 2022-06-17
13:42:49.000000000 +0200
+++ new/python-distutils-extra-2.49/debian/changelog 2023-01-30
06:55:51.000000000 +0100
@@ -1,3 +1,16 @@
+python-distutils-extra (2.49) unstable; urgency=medium
+
+ * Add missing python3-setuptools Depends, fixes autopkgtest
+
+ -- Didier Raboud <[email protected]> Mon, 30 Jan 2023 06:52:11 +0100
+
+python-distutils-extra (2.48) unstable; urgency=medium
+
+ * Team upload
+ * Adapt tests to setuptools 54+, bump B-D. Fixes FTBFS (Closes: #1026568)
+
+ -- Didier Raboud <[email protected]> Sun, 29 Jan 2023 14:22:46 +0100
+
python-distutils-extra (2.47) unstable; urgency=medium
* Team upload.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/python-distutils-extra-2.47/debian/control
new/python-distutils-extra-2.49/debian/control
--- old/python-distutils-extra-2.47/debian/control 2022-06-17
13:42:49.000000000 +0200
+++ new/python-distutils-extra-2.49/debian/control 2023-01-30
06:55:51.000000000 +0100
@@ -6,7 +6,7 @@
Build-Depends: debhelper-compat (= 13),
dh-python,
python3-all (>= 3.1.2-10~),
- python3-setuptools,
+ python3-setuptools (>= 54.0.0~),
python3-httplib2,
python3-pkg-resources,
python3-gi,
@@ -27,6 +27,7 @@
intltool,
python3-distutils,
python3-pkg-resources,
+ python3-setuptools (>= 54.0.0~),
Suggests: devscripts
Breaks: python-distutils-extra (<< 2.44)
Replaces: python-distutils-extra (<< 2.44)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/python-distutils-extra-2.47/test/auto.py
new/python-distutils-extra-2.49/test/auto.py
--- old/python-distutils-extra-2.47/test/auto.py 2022-06-17
13:42:49.000000000 +0200
+++ new/python-distutils-extra-2.49/test/auto.py 2023-01-30
06:55:51.000000000 +0100
@@ -51,6 +51,17 @@
self.snapshot = None
self.install_tree = None
+ def assert_egg_info_directory_is_present_and_well(self):
+ '''Check that no .egg-info file is present, that an egg_info directory
is present and that it contains the expected files'''
+
+ f = self.installed_files()
+ # All files are in an .egg-info directory; no .egg-info file is created
+ self.assertFalse(any([_.endswith('.egg-info') for _ in f ]))
+ # There are 4 files in said directory
+ self.assertEqual(len(f), 4)
+ # Check that the four exist
+ self.assertTrue(all([any([_.endswith(c) for c in ['PKG-INFO',
'SOURCES.txt', 'dependency_links.txt', 'top_level.txt']]) for _ in f]))
+
#
# actual tests come here
#
@@ -63,10 +74,7 @@
self.assertEqual(s, 0)
self.assertNotIn('following files are not recognized', o)
- f = self.installed_files()
- # just installs the .egg_info
- self.assertEqual(len(f), 1)
- self.assertTrue(f[0].endswith('.egg-info'))
+ self.assert_egg_info_directory_is_present_and_well()
def test_vcs(self):
'''Ignores revision control files'''
@@ -81,10 +89,7 @@
self.assertEqual(s, 0)
self.assertNotIn('following files are not recognized', o)
- f = self.installed_files()
- # just installs the .egg_info
- self.assertEqual(len(f), 1)
- self.assertTrue(f[0].endswith('.egg-info'))
+ self.assert_egg_info_directory_is_present_and_well()
def test_modules(self):
'''Python modules'''
@@ -157,7 +162,7 @@
self.assertIn('\n stuff/super.service\n', o)
f = self.installed_files()
- self.assertEqual(len(f), 4) # 3 D-BUS files plus .egg-info
+ self.assertEqual(len(f), 7) # 3 D-BUS files plus 4 files in egg-info
directory
self.assertIn('/etc/dbus-1/system.d/com.example.foo.conf', f)
self.assertIn('/usr/share/dbus-1/system-services/com.example.foo.service', f)
self.assertIn('/usr/share/dbus-1/services/com.example.foo.gui.service', f)
@@ -178,7 +183,7 @@
self.assertEqual(s, 0)
f = self.installed_files()
- self.assertEqual(len(f), 3) # 2 schema files plus .egg-info
+ self.assertEqual(len(f), 6) # 2 schema files plus 4 files in .egg-info
directory
self.assertIn('/usr/share/glib-2.0/schemas/org.test.myapp.gschema.xml', f)
self.assertNotIn('gschemas.compiled', '\n'.join(f))
@@ -201,7 +206,7 @@
self.assertNotIn('following files are not recognized', o)
f = self.installed_files()
- self.assertEqual(len(f), 3, f) # 2 hook files plus .egg-info
+ self.assertEqual(len(f), 6, f) # 2 hook files plus 4 in .egg-info
self.assertIn('/usr/share/apport/package-hooks/foo.py', f)
self.assertIn('/usr/share/apport/package-hooks/source_foo.py', f)
@@ -513,7 +518,7 @@
self._mksrc('LICENSE')
self._mksrc('COPYING.LIB')
self._mksrc('README.txt')
- self._mksrc('MANIFEST.in')
+ self._mksrc('MANIFEST.in', content="# dummy")
self._mksrc('MANIFEST')
self._mksrc('NEWS')
self._mksrc('TODO')
@@ -731,22 +736,23 @@
if 'template.py' in f or 'shiny' in f:
self.assertNotIn('packages', f)
- # parse .egg-info
+ # parse .egg-info directory
(o, e, s) = self.setup_py(['install_egg_info', '-d',
self.install_tree])
self.assertEqual(e, 'ERROR: Python module unknown not found\n')
- egg_paths = [x for x in inst if x.endswith('.egg-info')]
- self.assertEqual(len(egg_paths), 1)
- egg =
self._installed_contents(egg_paths[0].strip(os.path.sep)).splitlines()
- self.assertIn('Name: foo', egg)
+ in_egg_paths = [x for x in inst if '.egg-info/' in x]
+ self.assertEqual(len(in_egg_paths), 4) # Always 4 files in .egg-info
directory
+
+ pkginfo = self._installed_contents([x for x in in_egg_paths if
x.endswith('PKG-INFO')][0].strip(os.path.sep)).splitlines()
+ self.assertIn('Name: foo', pkginfo)
# check provides
- prov = [prop.split(' ', 1)[1] for prop in egg if
prop.startswith('Provides: ')]
+ prov = [prop.split(' ', 1)[1] for prop in pkginfo if
prop.startswith('Provides: ')]
self.assertEqual(set(prov), set(['foo', 'mymod', 'broken', 'grab_cli',
'pygi']))
# check requires
- req = [prop.split(' ', 1)[1] for prop in egg if
prop.startswith('Requires: ')]
+ req = [prop.split(' ', 1)[1] for prop in pkginfo if
prop.startswith('Requires: ')]
self.assertEqual(set(req), set(['httplib2', 'pkg_resources',
- 'gi.repository.GLib', 'gi.repository.GObject']))
+ 'gi.repository.GLib', 'gi.repository.GObject',
'distutils.command.register']))
def test_help_docbook(self):
'''Docbook XML help'''
@@ -815,9 +821,7 @@
self.assertIn('following files are not recognized', o)
self.assertIn('\n binary_trap\n', o)
- f = self.installed_files()
- self.assertEqual(len(f), 1, f)
- self.assertIn('egg-info', f[0])
+ self.assert_egg_info_directory_is_present_and_well()
def test_utf8_filenames(self):
'''UTF-8 file names'''
@@ -830,9 +834,7 @@
self.assertEqual(e, '')
self.assertEqual(s, 0)
- f = self.installed_files()
- self.assertEqual(len(f), 1, f)
- self.assertIn('egg-info', f[0])
+ self.assert_egg_info_directory_is_present_and_well()
self.assertIn('following files are not recognized', o)
# this might not be the correct file name when the locale is e. g. C
@@ -880,7 +882,10 @@
self.setup_py(['build'])
return self.setup_py(['install', '--no-compile', '--skip-build',
- '--prefix=/usr', '--root=' + self.install_tree])
+ '--prefix=/usr',
+ '--install-data=/usr',
+ '--install-scripts=/usr/bin',
+ '--root=' + self.install_tree])
def installed_files(self):
'''Return list of file paths in install tree.'''
@@ -921,12 +926,17 @@
shutil.copytree(self.src, os.path.join(self.snapshot, 's'),
symlinks=True)
def diff_snapshot(self):
- '''Compare source tree to snapshot.
+ '''Compare source tree to snapshot, excluding known offenders.
+
+ Check https://github.com/pypa/setuptools/issues/1347 for reference
Return diff -Nur output.
'''
assert self.snapshot, 'no snapshot taken'
- diff = subprocess.Popen(['diff', '-x', 'foo.pot', '-x', '*.pyc',
+ diff = subprocess.Popen(['diff',
+ '-x', 'foo.pot',
+ '-x', '*.pyc',
+ '-x', '*.egg-info',
'-Nur', os.path.join(self.snapshot, 's'), self.src],
stdout=subprocess.PIPE, stderr=subprocess.PIPE)
(out, err) = diff.communicate()