diff --git a/.gitignore b/.gitignore index 131b402..604f295 100644 --- a/.gitignore +++ b/.gitignore @@ -17,7 +17,3 @@ /vdirsyncer-0.16.3.tar.gz /vdirsyncer-0.16.7.tar.gz /vdirsyncer-0.16.8.tar.gz -/vdirsyncer-0.18.0.tar.gz -/vdirsyncer-0.19.2.tar.gz -/vdirsyncer-0.19.3.tar.gz -/vdirsyncer-0.20.0.tar.gz diff --git a/series b/series deleted file mode 100644 index 7526468..0000000 --- a/series +++ /dev/null @@ -1 +0,0 @@ -vdirsyncer-revert-license-metadata-update.diff diff --git a/sources b/sources index c25ba16..f2793c9 100644 --- a/sources +++ b/sources @@ -1,2 +1 @@ -SHA512 (vdirsyncer-0.19.3.tar.gz) = 8651282302ad62b2bb6f7655429492dcff959cedc25e932d2e72deb2bb54406c6b5333fecdb14ae8c08ba3c20602856e8466198e24caee298fc9a08545fd3751 -SHA512 (vdirsyncer-0.20.0.tar.gz) = 8499440ce8ba036d40f5bbff9d7cadb485be8bb2419d1fbad947f244259dabba9f2527ffff24298f697dd10e6ccd39155ea9547a480c584f64da0eadb993dad7 +SHA512 (vdirsyncer-0.16.8.tar.gz) = 12cb50f592085af37bd9c4207c0d31fdd38fc2a44712eb6288b12e7e7ee9af82070d1d405fa9579e935e545e6c92aafb6f8334ebde4976c4eb9412e78e7c5ada diff --git a/vdirsyncer-0.16.8-click_compatibility.patch b/vdirsyncer-0.16.8-click_compatibility.patch new file mode 100644 index 0000000..c0ee62f --- /dev/null +++ b/vdirsyncer-0.16.8-click_compatibility.patch @@ -0,0 +1,35 @@ +commit 3eb9ce5ae4320d52e6c876874511ff96a8a45f51 +Author: Hugo Osvaldo Barrera +Date: Tue Jun 9 14:45:02 2020 +0200 + + Add compatibility with latest click + +diff --git a/setup.py b/setup.py +index 59549f16842a..d584b95dd297 100644 +--- a/setup.py ++++ b/setup.py +@@ -11,7 +11,7 @@ from setuptools import setup + + requirements = [ + # https://github.com/mitsuhiko/click/issues/200 +- 'click>=5.0,<6.0', ++ 'click>=5.0', + 'click-log>=0.3.0, <0.4.0', + + # https://github.com/pimutils/vdirsyncer/issues/478 +diff --git a/tests/system/cli/test_sync.py b/tests/system/cli/test_sync.py +index f242376417f3..43d35dd8541e 100644 +--- a/tests/system/cli/test_sync.py ++++ b/tests/system/cli/test_sync.py +@@ -123,7 +123,10 @@ def test_verbosity(tmpdir, runner): + runner.write_with_general('') + result = runner.invoke(['--verbosity=HAHA', 'sync']) + assert result.exception +- assert 'invalid value for "--verbosity"' in result.output.lower() ++ assert ( ++ 'invalid value for "--verbosity"' in result.output.lower() ++ or "invalid value for '--verbosity'" in result.output.lower() ++ ) + + + def test_collections_cache_invalidation(tmpdir, runner): diff --git a/vdirsyncer-0.16.8-python_getiterator_deprecation.patch b/vdirsyncer-0.16.8-python_getiterator_deprecation.patch new file mode 100644 index 0000000..bdcb7f2 --- /dev/null +++ b/vdirsyncer-0.16.8-python_getiterator_deprecation.patch @@ -0,0 +1,22 @@ +From 7577fa21177442aacc2d86640ef28cebf1c4aaef Mon Sep 17 00:00:00 2001 +From: Hugo Osvaldo Barrera +Date: Tue, 9 Jun 2020 17:04:46 +0200 +Subject: [PATCH] Update usage of deprecated method + +--- + vdirsyncer/storage/dav.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/vdirsyncer/storage/dav.py b/vdirsyncer/storage/dav.py +index 07d164fb..a7e2422c 100644 +--- a/vdirsyncer/storage/dav.py ++++ b/vdirsyncer/storage/dav.py +@@ -124,7 +124,7 @@ def _merge_xml(items): + return None + rv = items[0] + for item in items[1:]: +- rv.extend(item.getiterator()) ++ rv.extend(item.iter()) + return rv + + diff --git a/vdirsyncer-revert-license-metadata-update.diff b/vdirsyncer-revert-license-metadata-update.diff deleted file mode 100644 index 919b5aa..0000000 --- a/vdirsyncer-revert-license-metadata-update.diff +++ /dev/null @@ -1,19 +0,0 @@ -Reverting changes in 03d1c4666d701283ceba479174925963fa607f3b but with improvements - -See https://github.com/pimutils/vdirsyncer/pull/1204 for bumping the required setuptools to actually work with the new declarations ---- a/pyproject.toml -+++ b/pyproject.toml -@@ -16,11 +16,11 @@ description = "Synchronize calendars and - readme = "README.rst" - requires-python = ">=3.8" - keywords = ["todo", "task", "icalendar", "cli"] --license = "BSD-3-Clause" --license-files = ["LICENSE"] -+license = {file = "LICENSE"} - classifiers = [ - "Development Status :: 4 - Beta", - "Environment :: Console", -+ "License :: OSI Approved :: BSD License", - "Operating System :: POSIX", - "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.10", diff --git a/vdirsyncer.spec b/vdirsyncer.spec index 4f7147d..e0d0036 100644 --- a/vdirsyncer.spec +++ b/vdirsyncer.spec @@ -2,14 +2,6 @@ # as we need to package both wsgi_intercept and pytest-localserver # for them to work. Will also need BR: pystest once the two # above packages exist in Fedora -%bcond tests 0 - -%if (%{defined fedora} && 0%{?fedora} <= 42) || (%{defined rhel} && 0%{?rhel} <= 10) -# setuptools < 77 does not support PEP 639 -%bcond old_setuptools 1 -%else -%bcond old_setuptools 0 -%endif %global sum Synchronize calendars and contacts %global srcname vdirsyncer @@ -17,45 +9,43 @@ %global _docdir_fmt %{name} Name: vdirsyncer -Version: 0.20.0 -Release: 7%{?dist} +Version: 0.16.8 +Release: 4%{?dist} Summary: %{sum} -License: BSD-3-Clause +License: BSD URL: https://github.com/pimutils/%{name} -Source: %{pypi_source} -# conditional patches -Patch1000: vdirsyncer-revert-license-metadata-update.diff +Source0: %{pypi_source} +Patch0: vdirsyncer-0.16.8-click_compatibility.patch +Patch1: vdirsyncer-0.16.8-python_getiterator_deprecation.patch BuildArch: noarch Obsoletes: python2-%{srcname} <= 0.12.1 -BuildRequires: make +BuildRequires: python3-atomicwrites >= 0.1.7 BuildRequires: python3-click >= 5.0 -BuildRequires: python3-click-log >= 0.4 +BuildRequires: python3-click-log >= 0.3 BuildRequires: python3-click-threading >= 0.4.0 BuildRequires: python3-devel BuildRequires: python3-icalendar BuildRequires: python3-lxml BuildRequires: python3-requests >= 2.10 +BuildRequires: python3-requests-oauthlib BuildRequires: python3-requests-toolbelt >= 0.4.0 +BuildRequires: python3-setuptools BuildRequires: python3-setuptools_scm BuildRequires: python3-sphinx BuildRequires: python3-sphinx_rtd_theme -BuildRequires: python3-aiohttp-oauthlib -BuildRequires: python3-trustme -BuildRequires: python3-pytest-httpserver -BuildRequires: python3-pytest-localserver -BuildRequires: python3-pkg-resources +Requires: python3-atomicwrites >= 0.1.7 Requires: python3-click >= 5.0 -Requires: python3-click-log >= 0.4 +Requires: python3-click-log >= 0.3 Requires: python3-click-threading >= 0.4.0 Requires: python3-icalendar Requires: python3-lxml >= 3.1 Requires: python3-requests >= 2.10 +Requires: python3-requests-oauthlib Requires: python3-requests-toolbelt >= 0.4.0 -Requires: python3-aiohttp-oauthlib Requires: python3-vdirsyncer = %{version} Requires: sqlite @@ -68,15 +58,17 @@ It aims to be for CalDAV and CardDAV what OfflineIMAP is for IMAP. %package -n python3-%{srcname} Summary: %{sum} +%{?python_provide:%python_provide python3-%{srcname}} +Requires: python3-atomicwrites >= 0.1.7 Requires: python3-click >= 5.0 -Requires: python3-click-log >= 0.4 +Requires: python3-click-log >= 0.3 Requires: python3-click-threading >= 0.4.0 Requires: python3-icalendar Requires: python3-lxml >= 3.1 Requires: python3-requests >= 2.10 +Requires: python3-requests-oauthlib Requires: python3-requests-toolbelt >= 0.4.0 -Requires: python3-aiohttp-oauthlib %description -n python3-%{srcname} vdirsyncer synchronizes your calendars and address books between two entities. @@ -94,14 +86,9 @@ The vdirsyncer-doc package provides all the documentation for the vdirsyncer calendar/address-book synchronization utility. %prep -%autosetup -N -%autopatch -p1 -M 999 -%if %{with old_setuptools} -%autopatch -p1 1000 -%endif - -%generate_buildrequires -%pyproject_buildrequires +%setup -q +%patch0 -p1 +%patch1 -p1 %build # Here we set upstream version based on setuptools_scm documentation @@ -110,7 +97,7 @@ for the vdirsyncer calendar/address-book synchronization utility. # since we are not importing a .git repository in the tarball # From: https://athoscr.fedorapeople.org/packaging/python-setuptools_scm_git_archive.spec export SETUPTOOLS_SCM_PRETEND_VERSION=%{version} -%pyproject_wheel +%py3_build # Custom sphinx docs need to import vdirsyncer classes from the untarred # source tree @@ -133,21 +120,21 @@ rm -fv docs/_build/html/{.buildinfo,objects.inv} # since we are not importing a .git repository in the tarball # From: https://athoscr.fedorapeople.org/packaging/python-setuptools_scm_git_archive.spec export SETUPTOOLS_SCM_PRETEND_VERSION=%{version} -%pyproject_install -%pyproject_save_files -l %{srcname} +%py3_install install -d "$RPM_BUILD_ROOT%{_mandir}/man1" cp -r docs/_build/man/%{name}.1 "$RPM_BUILD_ROOT%{_mandir}/man1" %check -%pyproject_check_import - %if %{with tests} sh build.sh tests %endif -%files -n python3-%{srcname} -f %{pyproject_files} +%files -n python3-%{srcname} +%license LICENSE %doc AUTHORS.rst README.rst CONTRIBUTING.rst +%{python3_sitelib}/%{srcname}-*.egg-info +%{python3_sitelib}/%{srcname} %files @@ -161,107 +148,6 @@ sh build.sh tests %doc docs/_build/html docs/_build/text %changelog -* Fri Jul 17 2026 Fedora Release Engineering - 0.20.0-7 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_45_Mass_Rebuild - -* Thu Jun 04 2026 Python Maint - 0.20.0-6 -- Rebuilt for Python 3.15 - -* Thu May 07 2026 Tomáš Hrnčiar - 0.20.0-5 -- Add BR on python3-pkg-resources, setuptools 82 dropped pkg_resources - -* Sat Jan 17 2026 Fedora Release Engineering - 0.20.0-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild - -* Tue Dec 16 2025 Michel Lind - 0.20.0-3 -- Support building with old setuptools (pre-PEP 639) - -* Fri Sep 19 2025 Python Maint - 0.20.0-2 -- Rebuilt for Python 3.14.0rc3 bytecode - -* Thu Aug 28 2025 Ben Boeckel - 0.20.0-1 -- Update to 0.20.0 - -* Mon Aug 18 2025 Ben Boeckel - 0.19.3-6 -- Remove atomicwrites dependency (see rhbz#2385436) - -* Fri Aug 15 2025 Python Maint - 0.19.3-5 -- Rebuilt for Python 3.14.0rc2 bytecode - -* Fri Jul 25 2025 Fedora Release Engineering - 0.19.3-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild - -* Wed Jul 09 2025 Ben Boeckel - 0.19.3-3 -- Modernize RPM macros (rhbz#2378494) - -* Tue Jun 03 2025 Python Maint - 0.19.3-2 -- Rebuilt for Python 3.14 - -* Wed May 21 2025 David Kaufmann - 0.19.3-1 -- Update to v0.19.3 - -* Sun Jan 19 2025 Fedora Release Engineering - 0.19.2-7 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild - -* Wed Sep 04 2024 Miroslav Suchý - 0.19.2-6 -- convert license to SPDX - -* Mon Aug 26 2024 Michel Lind - 0.19.2-5 -- Bump allowed version of aiostream again -- Fixes: RHBZ#2308075 - -* Sat Jul 20 2024 Fedora Release Engineering - 0.19.2-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild - -* Sun Jun 09 2024 Python Maint - 0.19.2-3 -- Rebuilt for Python 3.13 - -* Sat Feb 03 2024 David Kaufmann - 0.19.2-1 -- Update to v0.19.2 - -* Sat Jan 27 2024 Fedora Release Engineering - 0.18.0-11 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Sat Jul 22 2023 Fedora Release Engineering - 0.18.0-10 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild - -* Thu Jun 15 2023 Python Maint - 0.18.0-9 -- Rebuilt for Python 3.12 - -* Sat Jan 21 2023 Fedora Release Engineering - 0.18.0-8 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild - -* Wed Aug 17 2022 David Kaufmann - 0.18.0-7 -- Fix autogenerated dependency - -* Mon Aug 15 2022 David Kaufmann - 0.18.0-6 -- Update click-log dependency in all places - -* Sat Jul 23 2022 Fedora Release Engineering - 0.18.0-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild - -* Wed Jun 15 2022 Python Maint - 0.18.0-4 -- Rebuilt for Python 3.11 - -* Fri Mar 18 2022 David Kaufmann - 0.18.0-3 -- Update click-log dependency - -* Sat Jan 22 2022 Fedora Release Engineering - 0.18.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild - -* Thu Nov 11 2021 David Kaufmann - 0.18.0-1 -- Update to v0.18.0 - -* Tue Jul 27 2021 Fedora Release Engineering - 0.16.8-7 -- Second attempt - Rebuilt for - https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild - -* Fri Jun 04 2021 Python Maint - 0.16.8-6 -- Rebuilt for Python 3.10 - -* Wed Jan 27 2021 Fedora Release Engineering - 0.16.8-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild - * Sun Nov 01 2020 David Kaufmann - 0.16.8-4 - Fix patch, as only Patch0 gets applied by default