Update cassandane.

Use current git head.
Add a couple of new build deps.
Remove all JMAP test exclusions, since cassandane no longer runs JMAP
  tests on the 3.0 branch.
Clean up exclusion lists.
Add ten additional skipped tests, after consultation with upstream.
This commit is contained in:
Jason Tibbitts 2018-02-26 21:36:59 -06:00
parent 7d83ccdff4
commit 7a0b31dd49

View File

@ -2,14 +2,14 @@
# Cassandane commit hash. Cassandane doesn't have releases often, but it # Cassandane commit hash. Cassandane doesn't have releases often, but it
# receives constant development. This was fetched on 20170622. # receives constant development. This was fetched on 20170622.
%global cocas 6d33978ebb0055be41a5cb8e52958e100401bf26 %global cocas 6bd697c4799cf3f5eed0d89fcc7a365a9ff93680
# Cassandane run by default. '--without cassandane' disables. # Cassandane run by default. '--without cassandane' disables.
%bcond_without cassandane %bcond_without cassandane
Name: cyrus-imapd Name: cyrus-imapd
Version: 3.0.5 Version: 3.0.5
Release: 5%{?dist} Release: 6%{?dist}
%define ssl_pem_file /etc/pki/%name/%name.pem %define ssl_pem_file /etc/pki/%name/%name.pem
@ -66,6 +66,8 @@ Source80: https://github.com/cyrusimap/cassandane/archive/%cocas.tar.gz#/cassand
# This archive was generated by running: # This archive was generated by running:
# svn export https://github.com/brong/Net-CalDAVTalk/trunk/testdata # svn export https://github.com/brong/Net-CalDAVTalk/trunk/testdata
# tar cfz cassandane-testdata-20170523.tar.gz testdata # tar cfz cassandane-testdata-20170523.tar.gz testdata
# Note that this changes very rarely. See
# https://github.com/brong/Net-CalDAVTalk/tree/master/testdata
Source81: cassandane-testdata-20170523.tar.gz Source81: cassandane-testdata-20170523.tar.gz
# A template config file for cassandane; we will substitute in varions values. # A template config file for cassandane; we will substitute in varions values.
@ -80,9 +82,6 @@ Source91: patch-cassandane-no-syslog
# Tell the annotator script to run as the current user/group # Tell the annotator script to run as the current user/group
# Upstream ticket https://github.com/cyrusimap/cyrus-imapd/issues/1995 # Upstream ticket https://github.com/cyrusimap/cyrus-imapd/issues/1995
Source92: patch-cassandane-fix-annotator Source92: patch-cassandane-fix-annotator
## Upstream commit:
## https://github.com/cyrusimap/cassandane/commit/2221787bf86cb886b878eb844e81829165f3ed15
Source93: patch-cassandane-unknown_calendars
BuildRequires: autoconf automake bison flex gcc gcc-c++ git groff libtool BuildRequires: autoconf automake bison flex gcc gcc-c++ git groff libtool
BuildRequires: pkgconfig systemd transfig BuildRequires: pkgconfig systemd transfig
@ -103,7 +102,8 @@ BuildRequires: cyrus-sasl-plain cyrus-sasl-md5
# Additional packages required for cassandane to function # Additional packages required for cassandane to function
BuildRequires: imaptest net-tools words BuildRequires: imaptest net-tools words
BuildRequires: perl(AnyEvent) perl(BSD::Resource) perl(Clone) BuildRequires: perl(AnyEvent) perl(BSD::Resource) perl(Clone)
BuildRequires: perl(File::chdir) perl(IO::Socket::INET6) perl(Mail::IMAPTalk) BuildRequires: perl(experimental) perl(File::chdir) perl(File::Slurp)
BuildRequires: perl(IO::Socket::INET6) perl(Mail::IMAPTalk)
BuildRequires: perl(Config::IniFiles) perl(Mail::JMAPTalk) perl(Math::Int64) BuildRequires: perl(Config::IniFiles) perl(Mail::JMAPTalk) perl(Math::Int64)
BuildRequires: perl(Net::CalDAVTalk) perl(Net::CardDAVTalk) BuildRequires: perl(Net::CalDAVTalk) perl(Net::CardDAVTalk)
BuildRequires: perl(Net::Server) perl(News::NNTPClient) perl(Path::Tiny) BuildRequires: perl(Net::Server) perl(News::NNTPClient) perl(Path::Tiny)
@ -217,7 +217,6 @@ tar xf %SOURCE81
patch -p1 < %SOURCE91 patch -p1 < %SOURCE91
patch -p1 < %SOURCE92 patch -p1 < %SOURCE92
patch -p1 < %SOURCE93
cp %SOURCE82 cassandane.ini cp %SOURCE82 cassandane.ini
# RF rpm-buildroot-usage # RF rpm-buildroot-usage
@ -461,6 +460,10 @@ tests=(
# intercepts coredumps. # intercepts coredumps.
Cassandane::Test::Core Cassandane::Test::Core
# Upstream recommends disabling this because it has an internal race and
# will fail randomly.
Master.sighup_recycling
# Fails because our Xapian is too old for proper CJK support. 1.5 will be # Fails because our Xapian is too old for proper CJK support. 1.5 will be
# OK, but it is not yet released. The alternative is to bundle. # OK, but it is not yet released. The alternative is to bundle.
SearchFuzzy.cjk_words SearchFuzzy.cjk_words
@ -482,40 +485,23 @@ tests=(
# Not sure why this one is failing. # Not sure why this one is failing.
Caldav.changes_remove Caldav.changes_remove
# This fails because of some libical issues # Upstream on IRC indicates that all of these are expected to fail on 3.0.
JMAPCalendars.getcalendareventlist_datetime CaldavAlarm.override_multiuser
Annotator.annotator_callout_disabled
CaldavAlarm.simple_multiuser_sametime
CaldavAlarm.simple_multiuser
Carddav.sharing_contactpaths
Info.info_lint_junk
Info.info_lint
Metadata.set_specialuse_twice
SearchFuzzy.search_subjectsnippet
) )
for i in ${tests[@]}; do exclude+=("!$i"); done for i in ${tests[@]}; do exclude+=("!$i"); done
%if 0%{?fedora} >= 28
# The update to libical3 caused an additional failure, reported upstream as
# https://github.com/cyrusimap/cyrus-imapd/issues/2200
tests=(
JMAPCalendars.setcalendarevents_recurrenceoverrides
)
for i in ${tests[@]}; do exclude+=("!$i"); done
%endif
%if 0%{?fedora} <= 27
tests=(
# Without libical3 or a patch to libical2, the following test will fail
# https://github.com/cyrusimap/cyrus-imapd/issues/2048
JMAPCalendars.setcalendarevents_alerts
JMAPCalendars.setcalendarevents_endtimezone_recurrence
)
for i in ${tests[@]}; do exclude+=("!$i"); done
%endif
%if 0%{?fedora} <= 26 %if 0%{?fedora} <= 26
# Some F26-specific test exclusions # Some F26-specific test exclusions
tests=( tests=(
# These fail because F26 libical has not been compiled with
# ICAL_ALLOW_EMPTY_PROPERTIES.
JMAPCalendars.setcalendarevents_locations
JMAPCalendars.setcalendarevents_recurrenceoverrides
# These all fail because F26 perl doesn't support quad types in unpack. # These all fail because F26 perl doesn't support quad types in unpack.
JMAPContacts.setcontacts_importance_later
Metadata.expunge_messages Metadata.expunge_messages
Metadata.msg_replication_new_mas_partial_wwd Metadata.msg_replication_new_mas_partial_wwd
Metadata.msg_replication_new_rep Metadata.msg_replication_new_rep
@ -644,6 +630,15 @@ getent passwd cyrus >/dev/null || /usr/sbin/useradd -c "Cyrus IMAP Server" -d /v
%changelog %changelog
* Mon Feb 26 2018 Jason L Tibbitts III <tibbs@math.uh.edu> - 3.0.5-6
- Update cassandane checkout.
- Add two new build dependencies.
- Remove all JMAP-related tests from the exclusion lists, since cassandane no
longer runs any JMAP tests on cyrus 3.0.
- Collapse unused test skip lists.
- Add ten additional skipped tests, after consultation with upstream.
* Mon Feb 26 2018 Jason L Tibbitts III <tibbs@math.uh.edu> - 3.0.5-5 * Mon Feb 26 2018 Jason L Tibbitts III <tibbs@math.uh.edu> - 3.0.5-5
- Add patch to fix segfaults in squatter. - Add patch to fix segfaults in squatter.
- Exclude one test on all releases instead of just F28+. - Exclude one test on all releases instead of just F28+.