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 <dmuel...@suse.com>
+
+- 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 <o...@debian.org>  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 <o...@debian.org>  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()

Reply via email to