Daniel Garcia
573502298f
* Lots of work lifting the project up to more modern standards and improving code, thanks to Georges Toth (github @sim0nx), Matthias Urlichs (github @smurfix) and @ArtemIsmagilov. While this shouldn't matter for existing users, it will make the library more future-proof. * Quite long lists of fixes, improvements and some few changes, nothing big, main focus is on ensuring compatibility with as many server implementations as possible. See below. * Partial workaround for https://github.com/python-caldav/caldav/issues/401 - some servers require comptype in the search query - * At least one bugfix, possibly fixing #399 - the `accept_invite`-method not working - https://github.com/python-caldav/caldav/pull/403 * Fix/workaround for servers sending MAILTO in uppercase - https://github.com/python-caldav/caldav/issues/388, https://github.com/python-caldav/caldav/issues/399 and https://github.com/python-caldav/caldav/pull/403 * `get_duration`: make sure the algorithm doesn't raise an exception comparing dates with timestamps - https://github.com/python-caldav/caldav/pull/381 * `set_due`: make sure the algorithm doesn't raise an exception comparing naive timestamps with timezone timestamps - https://github.com/python-caldav/caldav/pull/381 * Code formatting / style fixes. * Jason Yau introduced the possibility to add arbitrary headers - but things like User-Agent would anyway always be overwritten. Now the custom logic takes precedence. Pull request https://github.com/python-caldav/caldav/pull/386, issue https://github.com/python-caldav/caldav/issues/385 * Search method has some logic handling non-conformant servers (loading data from the server if the search response didn't include the icalendar data, ignoring trash from the Google server when it returns data without a VTODO/VEVENT/VJOURNAL component), but it was inside an if-statement and applied only if Expanded-flag was set to True. Moved the logic out of the if, so it always applies. * Revisited a problem that Google sometimes delivers junk when doing searches - credits to OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-caldav?expand=0&rev=31
77 lines
2.3 KiB
RPMSpec
77 lines
2.3 KiB
RPMSpec
#
|
|
# spec file for package python-caldav
|
|
#
|
|
# Copyright (c) 2024 SUSE LLC
|
|
#
|
|
# All modifications and additions to the file contributed by third parties
|
|
# remain the property of their copyright owners, unless otherwise agreed
|
|
# upon. The license for this file, and modifications and additions to the
|
|
# file, is the same license as for the pristine package itself (unless the
|
|
# license for the pristine package is not an Open Source License, in which
|
|
# case the license is the MIT License). An "Open Source License" is a
|
|
# license that conforms to the Open Source Definition (Version 1.9)
|
|
# published by the Open Source Initiative.
|
|
|
|
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
|
#
|
|
|
|
|
|
%{?sle15_python_module_pythons}
|
|
|
|
%global modname caldav
|
|
Name: python-%{modname}
|
|
Version: 1.4.0
|
|
Release: 0
|
|
Summary: CalDAV (RFC4791) client library for Python
|
|
License: Apache-2.0 AND GPL-3.0-or-later
|
|
Group: Development/Languages/Python
|
|
URL: https://pypi.python.org/pypi/%{modname}
|
|
Source: https://files.pythonhosted.org/packages/source/c/caldav/%{modname}-%{version}.tar.gz
|
|
BuildRequires: %{python_module lxml}
|
|
BuildRequires: %{python_module pip}
|
|
BuildRequires: %{python_module requests}
|
|
BuildRequires: %{python_module setuptools}
|
|
BuildRequires: %{python_module vobject}
|
|
BuildRequires: %{python_module wheel}
|
|
BuildRequires: fdupes
|
|
BuildRequires: python-rpm-macros
|
|
Requires: python-icalendar
|
|
Requires: python-lxml
|
|
Requires: python-requests
|
|
Requires: python-vobject
|
|
BuildArch: noarch
|
|
%ifpython2
|
|
Requires: python-pytz
|
|
Requires: python-tzlocal
|
|
%endif
|
|
%python_subpackages
|
|
|
|
%description
|
|
This project is a CalDAV (RFC4791) client library for Python.
|
|
|
|
It can read all the tags, but only write a few things (create calendars,
|
|
events, modify events and properties).
|
|
|
|
%prep
|
|
%autosetup -p1 -n %{modname}-%{version}
|
|
# Remove shebangs
|
|
find caldav -name "*.py" | xargs sed -i '1 {/^#!/d}'
|
|
|
|
%build
|
|
%pyproject_wheel
|
|
|
|
%check
|
|
# almost all tests are online, would require
|
|
# caldav server to run
|
|
|
|
%install
|
|
%pyproject_install
|
|
%python_expand %fdupes %{buildroot}%{$python_sitelib}
|
|
|
|
%files %{python_files}
|
|
%license COPYING.APACHE COPYING.GPL
|
|
%{python_sitelib}/%{modname}-*.dist-info
|
|
%{python_sitelib}/%{modname}/
|
|
|
|
%changelog
|