python-caldav/python-caldav.spec
Daniel Garcia 573502298f - Update to 1.4.0
* 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
2024-11-26 11:20:26 +00:00

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