]> git.ipfire.org Git - thirdparty/knot-resolver.git/log
thirdparty/knot-resolver.git
6 years agolibkres: bump ABI to 8
Tomas Krizek [Tue, 14 Aug 2018 15:09:25 +0000 (17:09 +0200)] 
libkres: bump ABI to 8

6 years agoupdate minimal libknot version to 2.7.1
Tomas Krizek [Tue, 14 Aug 2018 12:24:54 +0000 (14:24 +0200)] 
update minimal libknot version to 2.7.1

6 years agoscripts: utility script for OBS test build
Tomas Krizek [Mon, 13 Aug 2018 15:03:36 +0000 (17:03 +0200)] 
scripts: utility script for OBS test build

6 years agoci: turn on respdiff:iter.tls6 job
Tomas Krizek [Fri, 17 Aug 2018 11:58:50 +0000 (13:58 +0200)] 
ci: turn on respdiff:iter.tls6 job

6 years agocookies: hide module documentation
Petr Špaček [Tue, 14 Aug 2018 12:28:48 +0000 (14:28 +0200)] 
cookies: hide module documentation

6 years agoMerge branch 'restore-cache-ops' into 'master'
Petr Špaček [Fri, 17 Aug 2018 16:24:27 +0000 (16:24 +0000)] 
Merge branch 'restore-cache-ops' into 'master'

lua: resurrect cache.clear('name')

See merge request knot/knot-resolver!633

6 years agocache.clear() tests: add cache.clear('.', true)
Vladimír Čunát [Fri, 17 Aug 2018 16:18:19 +0000 (18:18 +0200)] 
cache.clear() tests: add cache.clear('.', true)

6 years agocache: update NEWS
Petr Špaček [Fri, 17 Aug 2018 13:54:40 +0000 (15:54 +0200)] 
cache: update NEWS

6 years agocache.clear: clearing root clears everything, not only the root zone
Petr Špaček [Fri, 17 Aug 2018 13:40:20 +0000 (15:40 +0200)] 
cache.clear: clearing root clears everything, not only the root zone

Problem was caused by our lookup format where only the root zone starts
with \0 and all other zones start differently. This caused
cache_match('.') to match only data from root zone.

6 years agocache: update docs
Petr Špaček [Fri, 17 Aug 2018 12:36:46 +0000 (14:36 +0200)] 
cache: update docs

6 years agocache: relocate cache ABI version entry
Vladimír Čunát [Fri, 17 Aug 2018 11:21:15 +0000 (13:21 +0200)] 
cache: relocate cache ABI version entry

... to avoid colliding e.g. with cache.clear('.')

6 years agocache.clear: log when asynchonous clear is finished, document interface
Petr Špaček [Fri, 17 Aug 2018 09:17:51 +0000 (11:17 +0200)] 
cache.clear: log when asynchonous clear is finished, document interface

6 years agoWIP: docs
Petr Špaček [Thu, 16 Aug 2018 17:41:44 +0000 (19:41 +0200)] 
WIP: docs

6 years agocache.clear: tests
Petr Špaček [Tue, 14 Aug 2018 13:37:01 +0000 (15:37 +0200)] 
cache.clear: tests

6 years agotests/config: remove duplicite keyfile tests
Petr Špaček [Tue, 14 Aug 2018 12:50:09 +0000 (14:50 +0200)] 
tests/config: remove duplicite keyfile tests

6 years agocache.clear: use same output format for full cache clear
Petr Špaček [Thu, 16 Aug 2018 15:37:02 +0000 (17:37 +0200)] 
cache.clear: use same output format for full cache clear

6 years agocache.clear: use same output format for exact qname+qtype match
Petr Špaček [Thu, 16 Aug 2018 15:08:37 +0000 (17:08 +0200)] 
cache.clear: use same output format for exact qname+qtype match

6 years agocache.clear: allow callback to modify return value
Petr Špaček [Thu, 16 Aug 2018 14:50:18 +0000 (16:50 +0200)] 
cache.clear: allow callback to modify return value

This is handy mainly for tests but it costs nothing so why not to do it.

6 years agocache.clear: clarify chunk size limit
Petr Špaček [Thu, 16 Aug 2018 14:26:53 +0000 (16:26 +0200)] 
cache.clear: clarify chunk size limit

6 years agocache.clear(): display apex name if needed
Petr Špaček [Thu, 16 Aug 2018 12:44:40 +0000 (14:44 +0200)] 
cache.clear(): display apex name if needed

Error message is now contains apex name and advice how to clear negative
proofs.

6 years agocache: return number of removed entries from remove_* functions
Petr Špaček [Wed, 15 Aug 2018 15:53:29 +0000 (17:53 +0200)] 
cache: return number of removed entries from remove_* functions

It is more convenient to return 0 instead of ENOENT.

6 years agocache.clear(): return a table
Vladimír Čunát [Wed, 15 Aug 2018 16:50:23 +0000 (18:50 +0200)] 
cache.clear(): return a table

Also make the CLI table-printer print a bit longer strings
than it used to.

6 years agocache.clear(): various warnings
Vladimír Čunát [Wed, 15 Aug 2018 16:24:23 +0000 (18:24 +0200)] 
cache.clear(): various warnings

WIP: needs at least review, perhaps some more modifications

6 years agocache API: avoid some ENOENT errors
Vladimír Čunát [Wed, 15 Aug 2018 15:31:29 +0000 (17:31 +0200)] 
cache API: avoid some ENOENT errors

6 years agolib/resolve nitpick: clear lint warnings
Vladimír Čunát [Wed, 15 Aug 2018 14:38:26 +0000 (16:38 +0200)] 
lib/resolve nitpick: clear lint warnings

(perhaps this started with libknot-2.7?)

6 years agocache+lua: add kr_cache_closest_apex() API
Vladimír Čunát [Wed, 15 Aug 2018 14:13:10 +0000 (16:13 +0200)] 
cache+lua: add kr_cache_closest_apex() API

6 years agodocs for cache.prune(): mention the planned GC
Vladimír Čunát [Tue, 14 Aug 2018 12:24:47 +0000 (14:24 +0200)] 
docs for cache.prune(): mention the planned GC

6 years agocache.get(): disable again, for now
Vladimír Čunát [Mon, 6 Aug 2018 16:21:48 +0000 (18:21 +0200)] 
cache.get(): disable again, for now

We need to think about the API carefully.

6 years agocache.clear(): more flexibility via parameters
Vladimír Čunát [Wed, 25 Jul 2018 14:09:27 +0000 (16:09 +0200)] 
cache.clear(): more flexibility via parameters

6 years agocache.clear(name), cache.get(name): review
Vladimír Čunát [Mon, 23 Jul 2018 14:46:33 +0000 (16:46 +0200)] 
cache.clear(name), cache.get(name): review

- fix some edge cases and nitpicks
- static storage -> stack (for temporaries of a few kilobytes)
- sync docs, including caveats of the implementation

6 years agocache: restore kr_cache_match and kr_cache_remove
Anbang Wen [Sun, 13 May 2018 21:55:24 +0000 (14:55 -0700)] 
cache: restore kr_cache_match and kr_cache_remove

1. Restore two cache op which got dropped in 2.0;
2. Add kr_unpack_cache_key to parse cache key;
3. Fix the lua binding for cache.get and cache.clear.

6 years agoMerge !657: remove memcached and redis from source tree
Vladimír Čunát [Fri, 17 Aug 2018 13:57:37 +0000 (13:57 +0000)] 
Merge !657: remove memcached and redis from source tree

6 years agoremove memcached and redis modules from source tree
Petr Špaček [Fri, 17 Aug 2018 12:55:56 +0000 (14:55 +0200)] 
remove memcached and redis modules from source tree

Source was kept for historical reasons but was not in use since 2.0.0.
It is now clear that there are better approaches to implement
distributed cache so it is pointless to keep old stuff in tree and
confuse users.

6 years agoMerge branch 'test-bitmaps' into 'master'
Petr Špaček [Thu, 16 Aug 2018 16:47:23 +0000 (16:47 +0000)] 
Merge branch 'test-bitmaps' into 'master'

Revert "kr_nsec_bitmap_contains_type(): moved to libdnssec"

See merge request knot/knot-resolver!655

6 years agoRevert "kr_nsec_bitmap_contains_type(): moved to libdnssec"
Vladimír Čunát [Thu, 16 Aug 2018 14:28:59 +0000 (16:28 +0200)] 
Revert "kr_nsec_bitmap_contains_type(): moved to libdnssec"

This reverts commit c13fe1f81abab6d9218e7373d24d5caf8d9ca8b6.
It turns out there's a bug in dnssec_nsec_bitmap_contains() (2.7.{0,1})

7 years agoMerge branch 'ta_sentinel-static' into 'master'
Petr Špaček [Tue, 14 Aug 2018 16:11:04 +0000 (16:11 +0000)] 
Merge branch 'ta_sentinel-static' into 'master'

ta_sentinel: also consider static trust anchors

See merge request knot/knot-resolver!654

7 years agota_sentinel: also consider static trust anchors
Vladimír Čunát [Tue, 14 Aug 2018 15:49:25 +0000 (17:49 +0200)] 
ta_sentinel: also consider static trust anchors

i.e. those not managed via RFC 5011.
The verbose log format is changed a bit, consequently.

7 years agoMerge branch 'rebrand' into 'master'
Petr Špaček [Tue, 14 Aug 2018 11:39:48 +0000 (11:39 +0000)] 
Merge branch 'rebrand' into 'master'

Rebrand to "Knot Resolver"

See merge request knot/knot-resolver!652

7 years agorebrand to "Knot Resolver"
Petr Špaček [Tue, 14 Aug 2018 11:26:27 +0000 (13:26 +0200)] 
rebrand to "Knot Resolver"

Let's see if it helps against confusion with "Knot DNS" authoritative
server or not.

7 years agorebrand to "Knot Resolver"
Petr Špaček [Tue, 14 Aug 2018 11:21:44 +0000 (13:21 +0200)] 
rebrand to "Knot Resolver"

Previously we were using names "Knot DNS Resolver" and "Knot Resolver"
interchangibly and the prefix "Knot DNS" was somehow confusing users.
Let's see if this rebranding actually helps or not.

7 years agoMerge branch 'knot-2.7' into 'master'
Petr Špaček [Tue, 14 Aug 2018 11:14:43 +0000 (11:14 +0000)] 
Merge branch 'knot-2.7' into 'master'

knot 2.7

See merge request knot/knot-resolver!630

7 years agoNEWS: polish for 3.0.0 release
Petr Špaček [Tue, 14 Aug 2018 11:10:38 +0000 (13:10 +0200)] 
NEWS: polish for 3.0.0 release

7 years agoKNOT_MINVER := 2.7.1
Vladimír Čunát [Mon, 13 Aug 2018 15:21:02 +0000 (17:21 +0200)] 
KNOT_MINVER := 2.7.1

7 years agocookies: disable for now
Grigorii Demidov [Fri, 1 Jun 2018 11:00:11 +0000 (13:00 +0200)] 
cookies: disable for now

7 years agodoc: add lua API changes
Vladimír Čunát [Mon, 6 Aug 2018 13:26:49 +0000 (15:26 +0200)] 
doc: add lua API changes

I intentionally didn't mark the function names as code or similar,
as changing formatting every other word seemed too visually distracting.

7 years agodoc: add ./NEWS as "Release notes" section
Vladimír Čunát [Mon, 6 Aug 2018 12:42:09 +0000 (14:42 +0200)] 
doc: add ./NEWS as "Release notes" section

7 years agoold NEWS nitpicks: fix warnings from Sphinx
Vladimír Čunát [Mon, 6 Aug 2018 14:30:22 +0000 (16:30 +0200)] 
old NEWS nitpicks: fix warnings from Sphinx

7 years agocache nitpick: avoid an unused value and recomputation
Vladimír Čunát [Fri, 3 Aug 2018 12:06:32 +0000 (14:06 +0200)] 
cache nitpick: avoid an unused value and recomputation

It's never been used apparently, since its introduction in 5b288464.
This commit doesn't depend on knot being 2.7 at all.

7 years agoreorder_RR(): don't rotate based on request ID
Vladimír Čunát [Fri, 3 Aug 2018 09:47:40 +0000 (11:47 +0200)] 
reorder_RR(): don't rotate based on request ID

As Marek noted, the option is meant to fix bad stub-resolvers,
and those may not put good randomness into the ID.

7 years agoreorder_RR(): implement again and better
Vladimír Čunát [Fri, 3 Aug 2018 09:30:22 +0000 (11:30 +0200)] 
reorder_RR(): implement again and better

... thanks to new API in libknot-2.7.
Apart from being simpler, it now rotates even uncached answers.

7 years agoknot_dname_in(): replace
Vladimír Čunát [Thu, 2 Aug 2018 14:16:27 +0000 (16:16 +0200)] 
knot_dname_in(): replace

This second part of API replacement in particular lengthens the code,
but I hope the new expression will be easier to understand at least.

7 years agoknot_dname_is_sub(): replace
Vladimír Čunát [Thu, 2 Aug 2018 14:07:16 +0000 (16:07 +0200)] 
knot_dname_is_sub(): replace

7 years agolua: clean up, generate libzscanner bindings
Vladimír Čunát [Thu, 19 Jul 2018 15:01:55 +0000 (17:01 +0200)] 
lua: clean up, generate libzscanner bindings

7 years agolua: finish fixing the mess around passing rdata
Vladimír Čunát [Thu, 19 Jul 2018 13:00:57 +0000 (15:00 +0200)] 
lua: finish fixing the mess around passing rdata

7 years agolua: rrsig_type_covered
Vladimír Čunát [Thu, 19 Jul 2018 12:49:22 +0000 (14:49 +0200)] 
lua: rrsig_type_covered

7 years agoiterate, nsrep: more resiliency to possible errors
Vladimír Čunát [Fri, 13 Jul 2018 11:49:37 +0000 (13:49 +0200)] 
iterate, nsrep: more resiliency to possible errors

7 years agoremoval of pos from parameters
Vladimír Čunát [Thu, 12 Jul 2018 16:34:02 +0000 (18:34 +0200)] 
removal of pos from parameters

7 years agoknot_rdata_t field rename
Vladimír Čunát [Thu, 12 Jul 2018 15:48:46 +0000 (17:48 +0200)] 
knot_rdata_t field rename

7 years agokr_nsec_bitmap_contains_type(): moved to libdnssec
Vladimír Čunát [Tue, 24 Jul 2018 14:27:35 +0000 (16:27 +0200)] 
kr_nsec_bitmap_contains_type(): moved to libdnssec

7 years agoknot_nsec*_bitmap*() changes
Vladimír Čunát [Thu, 12 Jul 2018 15:26:32 +0000 (17:26 +0200)] 
knot_nsec*_bitmap*() changes

7 years agoknot_rdataset_t field renames
Vladimír Čunát [Thu, 12 Jul 2018 14:41:46 +0000 (16:41 +0200)] 
knot_rdataset_t field renames

7 years agocache: rdataset layout changes in knot 2.7
Vladimír Čunát [Thu, 12 Jul 2018 14:20:20 +0000 (16:20 +0200)] 
cache: rdataset layout changes in knot 2.7

7 years agofixup: kr_rand_uint() parameter is exclusive bound
Vladimír Čunát [Wed, 11 Jul 2018 11:45:17 +0000 (13:45 +0200)] 
fixup: kr_rand_uint() parameter is exclusive bound

7 years agolua: most changes needed for knot 2.7
Vladimír Čunát [Mon, 9 Jul 2018 16:40:52 +0000 (18:40 +0200)] 
lua: most changes needed for knot 2.7

When at it, switch to generating the libzscanner bindings.

7 years agoknot_edns_* -> knot_pkt_
Vladimír Čunát [Mon, 9 Jul 2018 11:37:50 +0000 (13:37 +0200)] 
knot_edns_* -> knot_pkt_

7 years ago*_free() fixups
Vladimír Čunát [Wed, 4 Jul 2018 13:38:25 +0000 (15:38 +0200)] 
*_free() fixups

7 years agoDNSSEC_OUT_OF_RANGE -> KNOT_ERANGE
Vladimír Čunát [Wed, 4 Jul 2018 13:28:21 +0000 (15:28 +0200)] 
DNSSEC_OUT_OF_RANGE -> KNOT_ERANGE

This error code has been unused in knot since 2.3, and now it got removed.

7 years agoknot_rdata_* changes
Vladimír Čunát [Mon, 2 Jul 2018 12:47:46 +0000 (14:47 +0200)] 
knot_rdata_* changes

The _t isn't uint8_t* anymore but a structure with .len and .data.

7 years agotolower-related changes
Vladimír Čunát [Mon, 2 Jul 2018 12:47:04 +0000 (14:47 +0200)] 
tolower-related changes

libknot 2.7 stopped doing tolower inside its functions.
We're mostly OK, as packet parsing does DNSSEC canonization
(which lower-cases most things), but there are stil some places
that needed care, e.g. NSEC's next name.

7 years agoTTL changes: moved in libknot from rdata to rrset
Vladimír Čunát [Mon, 2 Jul 2018 12:40:58 +0000 (14:40 +0200)] 
TTL changes: moved in libknot from rdata to rrset

To work on RRSIG TTLs, libknot >= 2.7.1 is needed.

7 years agolib/utils: naive refactoring of kr_dname_lf()
Vladimír Čunát [Mon, 2 Jul 2018 12:13:19 +0000 (14:13 +0200)] 
lib/utils: naive refactoring of kr_dname_lf()

It's not optimal; we can improve performance later.

7 years agosimple include fixes
Vladimír Čunát [Mon, 2 Jul 2018 12:05:07 +0000 (14:05 +0200)] 
simple include fixes

- <dnssec/**> -> <libdnssec/**>
- <zscanner/**> -> <libzscanner/**>

7 years agoci: use Knot DNS 2.7 for rpm builds
Tomas Krizek [Mon, 6 Aug 2018 12:04:15 +0000 (14:04 +0200)] 
ci: use Knot DNS 2.7 for rpm builds

7 years agoci: use knot-2.7 docker containers
Tomas Krizek [Fri, 27 Jul 2018 11:44:43 +0000 (13:44 +0200)] 
ci: use knot-2.7 docker containers

7 years agoMerge branch 'nitpicks' into 'master'
Petr Špaček [Tue, 14 Aug 2018 06:16:12 +0000 (06:16 +0000)] 
Merge branch 'nitpicks' into 'master'

nitpicks

See merge request knot/knot-resolver!649

7 years agoREADME: note the docker image purpose
Vladimír Čunát [Mon, 13 Aug 2018 16:10:19 +0000 (18:10 +0200)] 
README: note the docker image purpose

7 years agolib/resolve: fix a typo in verbose message
Vladimír Čunát [Mon, 13 Aug 2018 16:08:24 +0000 (18:08 +0200)] 
lib/resolve: fix a typo in verbose message

7 years agoMerge branch 'packaging-use-upstream-files' into 'master'
Tomas Krizek [Mon, 13 Aug 2018 11:59:31 +0000 (11:59 +0000)] 
Merge branch 'packaging-use-upstream-files' into 'master'

packaging - use upstream files

See merge request knot/knot-resolver!648

7 years agoscripts: improve packaging scripts
Tomas Krizek [Fri, 10 Aug 2018 14:35:30 +0000 (16:35 +0200)] 
scripts: improve packaging scripts

7 years ago.gitlabci: use updated fedora image
Tomas Krizek [Fri, 10 Aug 2018 14:11:02 +0000 (16:11 +0200)] 
.gitlabci: use updated fedora image

7 years agodistro/tests: add testing repo
Tomas Krizek [Fri, 10 Aug 2018 13:04:53 +0000 (15:04 +0200)] 
distro/tests: add testing repo

7 years agodistro/deb: simplify deb sources hierarchy
Tomas Krizek [Fri, 10 Aug 2018 12:11:55 +0000 (14:11 +0200)] 
distro/deb: simplify deb sources hierarchy

7 years agoscripts: add generation of the .dsc file for Debian packaging
Tomas Krizek [Fri, 10 Aug 2018 12:00:46 +0000 (14:00 +0200)] 
scripts: add generation of the .dsc file for Debian packaging

7 years agodistro/common: kresd.conf - ensure hints loads before iterate
Tomas Krizek [Fri, 10 Aug 2018 11:50:51 +0000 (13:50 +0200)] 
distro/common: kresd.conf - ensure hints loads before iterate

7 years agodistro/rpm: use upstream packaging files
Tomas Krizek [Fri, 10 Aug 2018 11:50:28 +0000 (13:50 +0200)] 
distro/rpm: use upstream packaging files

7 years agodistro/arch: use upstream packaging files
Tomas Krizek [Fri, 10 Aug 2018 11:48:15 +0000 (13:48 +0200)] 
distro/arch: use upstream packaging files

7 years agoMerge branch 'ci-docker-curl' into 'master'
Tomas Krizek [Tue, 7 Aug 2018 16:52:12 +0000 (16:52 +0000)] 
Merge branch 'ci-docker-curl' into 'master'

ci: add curl to debian-stable, skip respdiff

See merge request knot/knot-resolver!647

7 years agoci: run respdiff only on code changes
Tomas Krizek [Tue, 7 Aug 2018 16:43:52 +0000 (18:43 +0200)] 
ci: run respdiff only on code changes

7 years agoci: add curl to debian-stable
Tomas Krizek [Tue, 7 Aug 2018 16:13:14 +0000 (18:13 +0200)] 
ci: add curl to debian-stable

7 years agoMerge branch 'ci_nightly' into 'master'
Petr Špaček [Tue, 7 Aug 2018 16:24:36 +0000 (16:24 +0000)] 
Merge branch 'ci_nightly' into 'master'

fixup! fixup! ci: do not re-run tests on master, use nightly instead

See merge request knot/knot-resolver!646

7 years agofixup! fixup! ci: do not re-run tests on master, use nightly instead
Petr Špaček [Tue, 7 Aug 2018 16:19:25 +0000 (18:19 +0200)] 
fixup! fixup! ci: do not re-run tests on master, use nightly instead

Oh well, this is nightmare to debug.

7 years agoMerge branch 'ci_nightly' into 'master'
Petr Špaček [Tue, 7 Aug 2018 16:03:33 +0000 (16:03 +0000)] 
Merge branch 'ci_nightly' into 'master'

fixup! ci: do not re-run tests on master, use nightly instead

See merge request knot/knot-resolver!645

7 years agofixup! ci: do not re-run tests on master, use nightly instead
Petr Špaček [Tue, 7 Aug 2018 16:02:13 +0000 (18:02 +0200)] 
fixup! ci: do not re-run tests on master, use nightly instead

7 years agoMerge branch 'ci_nightly' into 'master'
Petr Špaček [Tue, 7 Aug 2018 15:53:49 +0000 (15:53 +0000)] 
Merge branch 'ci_nightly' into 'master'

ci: do not re-run tests on master, use nightly instead

See merge request knot/knot-resolver!644

7 years agoci: do not re-run tests on master, use nightly instead
Petr Špaček [Tue, 7 Aug 2018 15:49:16 +0000 (17:49 +0200)] 
ci: do not re-run tests on master, use nightly instead

All tests are executed before merge and we allow only fast-forward
merges so it is pointless to re-run them again on merge commit.

Code coverage and OBS will be done on auto-synchornized nightly branch.

7 years agoMerge branch 'ta-parallel' into 'master'
Petr Špaček [Tue, 7 Aug 2018 14:27:26 +0000 (14:27 +0000)] 
Merge branch 'ta-parallel' into 'master'

trust anchors: use parallel-safe temporary name

See merge request knot/knot-resolver!643

7 years agotrust anchors: use parallel-safe temporary name
Vladimír Čunát [Tue, 7 Aug 2018 13:21:59 +0000 (15:21 +0200)] 
trust anchors: use parallel-safe temporary name

Previously multiple kresd processes might use the same .lock file at
once and thus have a race between writing and renaming.  That could
happen relatively often if starting many instances *at once*.

7 years agoMerge branch 'ci-respdiff-master' into 'master'
Petr Špaček [Tue, 7 Aug 2018 13:17:56 +0000 (13:17 +0000)] 
Merge branch 'ci-respdiff-master' into 'master'

ci: fixes and optimizations

See merge request knot/knot-resolver!641

7 years agocache nitpick: avoid verbose-logging of unitialized TTL
Vladimír Čunát [Tue, 7 Aug 2018 11:02:40 +0000 (13:02 +0200)] 
cache nitpick: avoid verbose-logging of unitialized TTL

Replaced by a visually recognizable dummy value, for simplicity.
These were introduced in commits:
  cache: don't require cached NS for aggresive answers
  cache closest_NS(): factor out the inside of a loop

7 years agoci: compute run code coverage only if explicitly requested by variable
Petr Špaček [Mon, 6 Aug 2018 16:37:54 +0000 (18:37 +0200)] 
ci: compute run code coverage only if explicitly requested by variable

Sometimes, for a unknown reason, coverage computation fails in Deckard pipeline:

$ MAKEFLAGS="--jobs $(nproc)" make coverage-c coverage-lua COVERAGE_STAGE=gcov-deckard 2>&1 | grep -vE '(source file is newer than notes file)|(the message is displayed only once per source file)'
lcov: Need one of options -z, -c, -a, -e, -r, -l, --diff or --summary
Use lcov --help to get usage information
coverage.mk:15: recipe for target 'coverage-c' failed
make: *** [coverage-c] Error 255

This is now normally disabled not to interfere with normal development.