Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package python-vobject for openSUSE:Factory checked in at 2025-06-24 20:45:23 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-vobject (Old) and /work/SRC/openSUSE:Factory/.python-vobject.new.7067 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-vobject" Tue Jun 24 20:45:23 2025 rev:10 rq:1288115 version:0.9.9 Changes: -------- --- /work/SRC/openSUSE:Factory/python-vobject/python-vobject.changes 2025-05-09 18:39:34.483551577 +0200 +++ /work/SRC/openSUSE:Factory/.python-vobject.new.7067/python-vobject.changes 2025-06-24 20:45:29.535208705 +0200 @@ -1,0 +2,6 @@ +Tue Jun 24 02:58:12 UTC 2025 - Steve Kowalik <steven.kowa...@suse.com> + +- Switch to pyproject macros. +- Refresh no-six.patch. + +------------------------------------------------------------------- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-vobject.spec ++++++ --- /var/tmp/diff_new_pack.513aPk/_old 2025-06-24 20:45:30.223237228 +0200 +++ /var/tmp/diff_new_pack.513aPk/_new 2025-06-24 20:45:30.227237394 +0200 @@ -23,7 +23,6 @@ Release: 0 Summary: Python package for parsing and creating iCalendar and vCard files License: Apache-2.0 -Group: Development/Languages/Python URL: https://github.com/py-vobject/vobject/ Source: https://files.pythonhosted.org/packages/source/v/vobject/%{modname}-%{version}.tar.gz # PATCH-FIX-UPSTREAM https://github.com/py-vobject/vobject/pull/87 remove six @@ -32,9 +31,11 @@ Patch0: no-six.patch BuildRequires: %{python_module PyICU} BuildRequires: %{python_module devel >= 2.7} +BuildRequires: %{python_module pip} BuildRequires: %{python_module python-dateutil >= 2.7.0} BuildRequires: %{python_module pytz} BuildRequires: %{python_module setuptools} +BuildRequires: %{python_module wheel} BuildRequires: fdupes BuildRequires: python-rpm-macros Requires: python-python-dateutil >= 2.7.0 @@ -61,10 +62,10 @@ cp %{S:1} test_files/. %build -%python_build +%pyproject_wheel %install -%python_install +%pyproject_install for p in change_tz ics_diff ; do %python_clone -a %{buildroot}%{_bindir}/$p done @@ -87,5 +88,5 @@ %python_alternative %{_bindir}/change_tz %python_alternative %{_bindir}/ics_diff %{python_sitelib}/%{modname}/ -%{python_sitelib}/%{modname}-%{version}-py*.egg-info +%{python_sitelib}/%{modname}-%{version}.dist-info ++++++ no-six.patch ++++++ --- /var/tmp/diff_new_pack.513aPk/_old 2025-06-24 20:45:30.251238389 +0200 +++ /var/tmp/diff_new_pack.513aPk/_new 2025-06-24 20:45:30.251238389 +0200 @@ -1,7 +1,8 @@ -diff -rU 3 a/vobject/base.py b/vobject/base.py ---- a/vobject/base.py 2024-12-16 08:15:20.000000000 +0100 -+++ b/vobject/base.py 2025-05-08 10:54:19.517509757 +0200 -@@ -6,7 +6,7 @@ +Index: vobject-0.9.9/vobject/base.py +=================================================================== +--- vobject-0.9.9.orig/vobject/base.py ++++ vobject-0.9.9/vobject/base.py +@@ -6,7 +6,7 @@ import copy import codecs import logging import re @@ -10,7 +11,7 @@ import sys # Package version -@@ -858,7 +858,7 @@ +@@ -858,7 +858,7 @@ def getLogicalLines(fp, allowQP=True): Quoted-printable data will be decoded in the Behavior decoding phase. # We're leaving this test in for awhile, because the unittest was ugly and dumb. @@ -19,7 +20,7 @@ >>> f=StringIO(testLines) >>> for n, l in enumerate(getLogicalLines(f)): ... print("Line %s: %s" % (n, l[0])) -@@ -881,7 +881,7 @@ +@@ -881,7 +881,7 @@ def getLogicalLines(fp, allowQP=True): else: quotedPrintable = False @@ -28,7 +29,7 @@ logicalLine = newbuffer() lineNumber = 0 lineStartNumber = 0 -@@ -996,7 +996,7 @@ +@@ -996,7 +996,7 @@ def defaultSerialize(obj, buf, lineLengt """ Encode and fold obj and its children, write to buf or return a string. """ @@ -37,7 +38,7 @@ if isinstance(obj, Component): if obj.group is None: -@@ -1018,7 +1018,7 @@ +@@ -1018,7 +1018,7 @@ def defaultSerialize(obj, buf, lineLengt if obj.behavior and not startedEncoded: obj.behavior.encode(obj) @@ -46,7 +47,7 @@ if obj.group is not None: s.write(obj.group + '.') -@@ -1082,7 +1082,7 @@ +@@ -1082,7 +1082,7 @@ def readComponents(streamOrString, valid Generate one Component at a time from a stream. """ if isinstance(streamOrString, basestring): @@ -55,10 +56,11 @@ else: stream = streamOrString -diff -rU 3 a/vobject/hcalendar.py b/vobject/hcalendar.py ---- a/vobject/hcalendar.py 2024-10-01 16:46:45.000000000 +0200 -+++ b/vobject/hcalendar.py 2025-05-08 10:55:12.047890349 +0200 -@@ -28,7 +28,7 @@ +Index: vobject-0.9.9/vobject/hcalendar.py +=================================================================== +--- vobject-0.9.9.orig/vobject/hcalendar.py ++++ vobject-0.9.9/vobject/hcalendar.py +@@ -28,7 +28,7 @@ and an equivalent event in hCalendar for </span> """ @@ -67,7 +69,7 @@ from datetime import date, datetime, timedelta -@@ -45,7 +45,7 @@ +@@ -45,7 +45,7 @@ class HCalendar(VCalendar2_0): Serialize iCalendar to HTML using the hCalendar microformat (http://microformats.org/wiki/hcalendar) """ @@ -76,10 +78,11 @@ level = 0 # holds current indentation level tabwidth = 3 -diff -rU 3 a/vobject/icalendar.py b/vobject/icalendar.py ---- a/vobject/icalendar.py 2024-12-16 08:09:54.000000000 +0100 -+++ b/vobject/icalendar.py 2025-05-08 10:57:12.542858557 +0200 -@@ -10,7 +10,7 @@ +Index: vobject-0.9.9/vobject/icalendar.py +=================================================================== +--- vobject-0.9.9.orig/vobject/icalendar.py ++++ vobject-0.9.9/vobject/icalendar.py +@@ -10,7 +10,7 @@ import string import base64 from dateutil import rrule, tz @@ -88,7 +91,7 @@ try: import pytz -@@ -56,7 +56,7 @@ +@@ -56,7 +56,7 @@ def toUnicode(s): """ Take a string or unicode, turn it into unicode, decoding as utf-8 """ @@ -97,7 +100,7 @@ s = s.decode('utf-8') return s -@@ -135,7 +135,7 @@ +@@ -135,7 +135,7 @@ class TimezoneComponent(Component): good_lines = ('rdate', 'rrule', 'dtstart', 'tzname', 'tzoffsetfrom', 'tzoffsetto', 'tzid') # serialize encodes as utf-8, cStringIO will leave utf-8 alone @@ -106,7 +109,7 @@ # allow empty VTIMEZONEs if len(self.contents) == 0: return None -@@ -569,7 +569,7 @@ +@@ -569,7 +569,7 @@ class RecurringComponent(Component): self.add(name).value = setlist elif name in RULENAMES: for rule in setlist: @@ -115,7 +118,7 @@ buf.write('FREQ=') buf.write(FREQUENCIES[rule._freq]) -@@ -1010,7 +1010,7 @@ +@@ -1010,7 +1010,7 @@ class VCalendar2_0(VCalendarComponentBeh transformed = obj undoTransform = False out = None @@ -124,4 +127,17 @@ if obj.group is None: groupString = '' else: +Index: vobject-0.9.9/setup.py +=================================================================== +--- vobject-0.9.9.orig/setup.py ++++ vobject-0.9.9/setup.py +@@ -49,7 +49,7 @@ setup(name = "vobject", + include_package_data = True, + install_requires=["python-dateutil >= 2.5.0; python_version < '3.10'", + "python-dateutil >= 2.7.0; python_version >= '3.10'", +- "pytz", 'six'], ++ "pytz"], + platforms = ["any"], + packages = find_packages(), + description = "A full-featured Python package for parsing and creating "