diff --git a/.gitignore b/.gitignore index 74fbcff..131b402 100644 --- a/.gitignore +++ b/.gitignore @@ -18,3 +18,6 @@ /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 new file mode 100644 index 0000000..7526468 --- /dev/null +++ b/series @@ -0,0 +1 @@ +vdirsyncer-revert-license-metadata-update.diff diff --git a/sources b/sources index 271e235..c25ba16 100644 --- a/sources +++ b/sources @@ -1 +1,2 @@ -SHA512 (vdirsyncer-0.18.0.tar.gz) = 0daefdc57f5562a7cdddba014fdeae9f1e68ec08568753073040dfc52e1740662b367df35a8f45e31d0672df5717b257fc0293eb4bd4c9bb10bad7cc79b12556 +SHA512 (vdirsyncer-0.19.3.tar.gz) = 8651282302ad62b2bb6f7655429492dcff959cedc25e932d2e72deb2bb54406c6b5333fecdb14ae8c08ba3c20602856e8466198e24caee298fc9a08545fd3751 +SHA512 (vdirsyncer-0.20.0.tar.gz) = 8499440ce8ba036d40f5bbff9d7cadb485be8bb2419d1fbad947f244259dabba9f2527ffff24298f697dd10e6ccd39155ea9547a480c584f64da0eadb993dad7 diff --git a/vdirsyncer-revert-license-metadata-update.diff b/vdirsyncer-revert-license-metadata-update.diff new file mode 100644 index 0000000..919b5aa --- /dev/null +++ b/vdirsyncer-revert-license-metadata-update.diff @@ -0,0 +1,19 @@ +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 f25eb31..4f7147d 100644 --- a/vdirsyncer.spec +++ b/vdirsyncer.spec @@ -2,6 +2,14 @@ # 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 @@ -9,42 +17,45 @@ %global _docdir_fmt %{name} Name: vdirsyncer -Version: 0.18.0 -Release: 2%{?dist} +Version: 0.20.0 +Release: 7%{?dist} Summary: %{sum} -License: BSD +License: BSD-3-Clause URL: https://github.com/pimutils/%{name} -Source0: %{pypi_source} +Source: %{pypi_source} +# conditional patches +Patch1000: vdirsyncer-revert-license-metadata-update.diff BuildArch: noarch Obsoletes: python2-%{srcname} <= 0.12.1 -BuildRequires: make -BuildRequires: python3-atomicwrites >= 0.1.7 +BuildRequires: make BuildRequires: python3-click >= 5.0 -BuildRequires: python3-click-log >= 0.3 +BuildRequires: python3-click-log >= 0.4 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.3 +Requires: python3-click-log >= 0.4 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 @@ -57,17 +68,15 @@ 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.3 +Requires: python3-click-log >= 0.4 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. @@ -85,7 +94,14 @@ The vdirsyncer-doc package provides all the documentation for the vdirsyncer calendar/address-book synchronization utility. %prep -%setup -q +%autosetup -N +%autopatch -p1 -M 999 +%if %{with old_setuptools} +%autopatch -p1 1000 +%endif + +%generate_buildrequires +%pyproject_buildrequires %build # Here we set upstream version based on setuptools_scm documentation @@ -94,7 +110,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} -%py3_build +%pyproject_wheel # Custom sphinx docs need to import vdirsyncer classes from the untarred # source tree @@ -117,21 +133,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} -%py3_install +%pyproject_install +%pyproject_save_files -l %{srcname} 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} -%license LICENSE +%files -n python3-%{srcname} -f %{pyproject_files} %doc AUTHORS.rst README.rst CONTRIBUTING.rst -%{python3_sitelib}/%{srcname}-*.egg-info -%{python3_sitelib}/%{srcname} %files @@ -145,6 +161,91 @@ 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