For some reason, perl(AnnotateInlinedCIDs) was provided, so filter it
out.
Also move the legacy deliver symlink to the base package to follow the
deliver binary.
quota was renamed to cyr_quota ages ago. One place in the imap code, in
the implementation of the RECONSTRUCT command, will actually exec that
binary and so it must be patched to match.
Remove the ldconfig scriptlets; they're not needed in F28+.
Remove <= F26 conditional block of test exclusions; obviously that's not
needed.
If F27 is to be updated, it must be done by cherry picking or separate
commits, as F27 still needs the ldconfig calls.
I'm committing the initial work to get 3.0.6 built. Note that this will
build, but one cassandane test will fail. I'm tracking that down now
but I may have to disable that test until the issue is understood.
O# Please enter the commit message for your changes. Lines starting
This updates Cassandane, adds an upstream patch to fix a bug which the
new Cassandane tests, and then disable the ImapTest tests because
imaptest itself is broken on rawhide.
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.
- Update to 3.0.3, which contains an important security fix. The fix is not
embargoed but no CVE has been assigned yet.
- Drop patches merged upstream.
- An update of imaptest has resulted in three additional cassandane failures,
reported upstream as https://github.com/cyrusimap/cyrus-imapd/issues/2087.
In order to get the security fix out without delay, those three tests have been
disabled.
* Remove unneeded source file.
* Fix comment on excluded test suite to indicate that our libical is too
old.
* Handle all excluded tests through the same mechanism, and comment them
all.
Pull a couple of small patches from upstream which fix several
JMAP-related tests.
Rework the test exclusion list; there are now only a few which need to
be excluded.
Also drop a patch to cassandane to handle the quota->cyr_quota rename;
we can achieve the same thing now without patching.
Patch the default configuration file to enable the full supported
functionality of the build, and to more closely match the defaults from
older Fedora packages.
Add a tmpfiles.d configuration file to properly create the directories
under /run which upstream is now using. Also create and own those
directories properly.
Pull in a newer Cassandane snapshot and clean up the test lists. Down
to just five tests to figure out, plus nine that only fail on big-endian
machines which I've asked upstream to look into.
Rename quota and restore to have a "cyr_" prefix, and fix testsuite
hardcoding of those names.
Fix FTBFS related to a change in the way perl compiles XS modules.
Re-enable some tests on 32-bit rawhide because perl there now supports
quad types. But leave them disabled for F26.
Fix the location of cyr_fetchnews
More cleanup and commenting of the spec.
Bump to release 6.
I'm still trying to get a build through without failures related to
timeouts in the test code on the slowest build hosts. The failures are
not consistent, which is what makes this so difficult.
Remove the build dependency on clamav-devel so that cyr_virusscan and
such aren't built. Clamav still uses the old openssl libraries, and so
cyr_virusscan would occasionally segfault. This caused a Cassandane
failure on ppc64. (I have no idea why it only failed there.)
Add --cleanup to the testrunner.pl command line to keep disk usage
lower, This may help to fix an intermittent test failure which was
potentially related to disk space.
Bump to 3.0.1-3.
Both test suites are now run on all architectures. A few Cassandane
tests need to be excluded on 32-bit and big-endian architectures, but
the built-in test suite passes in its entirety and the vast majority of
Cassandane runs just fine.
I've decided to skip running the internal test suite on big-endian
machines, and to not run Cassandane on 32-bit machines. Upstream is
working on it but it's going to take a while.
Basically Cyrus is completely fine on 64-bit little-endian machines.
"make check" fails on big-endian machines. The Cassandane tests fail on
32-bit machines.
Some of the Cassandane tests are known to be due to bugs in the tests
suite; Fedora's 32-bit Perl does not support 64-bit types ("Q" and "q")
in pack and unpack. This is being fixed in rawhide on our side, but it
won't be a complete solution because there are some failures elsewhere
in the test suite.
Fedora is the first to fully integrate Cassandane into the build
process, and we appear to be the only ones to do testing on big-endian
and 32-bit machines. So there's a bit of teething still to get through.
I still do intend to try and push this to F26 as upstream has requested.
Working with upstream I got some fixes pushed and found out about a
couple of other tricks.
Was able to drop some patches and now cassandane runs 603 tests
successfully. The only tests excluded now are those which are expected
to fail with 3.0.1, and five coredump tests which would require removal
of systemd coredump redirection in order to be useful.
It turns that, at least in cyrus 3, the cyr_systemd_helper script will
end up wiping out your databases every time the daemon starts. It was
something that was needed to handle the horror that was Berkeley
DB/Sleepycat DB/whatever it's called today, but Cyrus no longer supports
BDB and so there's no point.
An extra systemd service file will call sscg to setup a secure initial
certificate if it does not exist. The new default imapd.conf file will
reference that cert.
vzic is bundled and has a different license than the rest of the code.
Split it out for simplicity. It and the main package depend on each
other.
Add Provides: bundled(vzic).
Slihtly clean up the files list
The %pre scriptlet had some horrible hack to try and turn on synchronous
writes if /var was on ext2. That hasn't been useful for a long time.
cyrus no longer builds static libraries, so don't bother having the
-devel package provide a -static package.
Scriptlet dependencies were weird across the board; the -utils package
had scriptlet deps but didn't even have any scriptlets. Clean all of
that up.
/etc is way shorter and less obscuring than %{_sysconfdir}.
Reorder %configure options.
Add %configure options for new features.
Add build dependencies for those features.
Just build with %make_build. No need to get fancy.
When calling perl, we can just use "perl". Still use the macro for
actually embedding the path to perl into compiled code.
Just use the default compilation flags. The hardened flags are default
now.
Start using four space indentation.