The file can be re-generated using scripts/update-authors.sh.
File .mailmap is used for name canonicalization and fresh list of
authors replaces the old one in AUTHORS file automatically.
Gitlab CI checks its content before release (on branches named release-*).
Marek Vavruša is listed in .mailmap file twice intentionally,
once as CZ.NIC employee and second time as external contributor.
script:
- scripts/update-root-hints.sh
+authors:
+ <<: *test_nodep
+ only:
+ refs:
+ - /^release.*$/
+ script:
+ - scripts/update-authors.sh
+
test:valgrind:
<<: *test_flaky
when: delayed
--- /dev/null
+Aleš Mrázek <ales.mrazek@nic.cz> Ales Mrazek <ales.mrazek@nic.cz>
+Alex Forster <aforster@cloudflare.com>
+Ali Asad Lotia <ali.asad.lotia@gmail.com>
+Anbang Wen <anbang@cloudflare.com> <xofyarg@gmail.com>
+Anbang Wen <anbang@cloudflare.com> <anb@dev.null>
+Andreas Rammhold <andreas@rammhold.de>
+Daniel Kahn Gillmor <dkg@fifthhorseman.net>
+Daniel Salzman <daniel.salzman@nic.cz>
+daurnimator <quae@daurnimator.com>
+David Beitey <david@davidjb.com>
+Grigorii Demidov <grigorii.demidov@nic.cz>
+Hasnat <hasnat.ullah@gmail.com>
+Jiří Helebrant <jiri.helebrant@nic.cz> <helb@helb.cz>
+Ivana Krumlová <ivana.krumlova@nic.cz>
+Jan Holuša <jan.holusa@nic.cz>
+Jan Pavlinec <jan.pavlinec@nic.cz>
+Jan Včelák <jan.vcelak@nic.cz> <jv@fcelda.cz>
+Jan Včelák <jan.vcelak@nic.cz>
+Jayson Reis <santosdosreis@gmail.com>
+Jonathan Coetzee <jon@thancoetzee.com>
+Karel Slaný <karel.slany@nic.cz>
+Libor Peltan <libor.peltan@nic.cz>
+Lukáš Ježek <lukas.jezek@nic.cz>
+Manu Bretelle <chantr4@gmail.com>
+Marek Vavruša <marek.vavrusa@nic.cz>
+Marek Vavruša <mvavrusa@cloudflare.com> <marek@vavrusa.com>
+Marek Vavruša <mvavrusa@cloudflare.com>
+Michal Karm Babáček <karm@email.cz>
+Michal Lupečka <mlupecka@nic.cz>
+Ondřej Surý <ondrej.sury@nic.cz> <ondrej@sury.org>
+Paul Hoffman <paul.hoffman@icann.org> <phoffman@proper.com>
+Paul Hoffman <paul.hoffman@icann.org>
+Pavel Valach <valach.pavel@gmail.com>
+Petr Špaček <petr.spacek@nic.cz>
+rickhg12hs <rickhg12hs@users.noreply.github.com>
+Robert Šefr <robert.sefr@outlook.com>
+SH <sh@analogic.cz>
+Štěpán Balážik <stepan.balazik@nic.cz>
+Štěpán Kotek <stepan.kotek@nic.cz> <stepan.kotek@gmail.com>
+Štěpán Kotek <stepan.kotek@nic.cz>
+The Gitter Badger <badger@gitter.im>
+Tomáš Hozza <thozza@redhat.com>
+Tomáš Křížek <tomas.krizek@nic.cz>
+Ulrich Wisser <ulrich.wisser@iis.se>
+Leo Vandewoestijne <github@unicycle.net>
+Vicky Shrestha <vicky@cloudflare.com> <vicky@geeks.net.np>
+Vítězslav Kříž <vitezslav.kriz@nic.cz>
+Vladimír Čunát <vladimir.cunat@nic.cz> <vcunat@gmail.com>
-Marek Vavrusa <marek@vavrusa.com>
-Ondřej Surý <ondrej.sury@nic.cz>
-Jan Vcelak <jan.vcelak@nic.cz>
-Grigorii Demidov <grigorii.demidov@nic.cz>
-Karel Slany <karel.slany@nic.cz>
+Knot Resolver was conceived and is being developed
+by research department of CZ.NIC, the CZ TLD operator.
+
+Over the years many organizations and individuals contributed to the project.
+Special thanks belongs to following organizations:
+- Comcast
+- Cloudflare
+- ICANN
+
+People who contributed commits to our Git repo are:
+Aleš Mrázek <ales.mrazek@nic.cz>
+Alex Forster <aforster@cloudflare.com>
+Ali Asad Lotia <ali.asad.lotia@gmail.com>
+Anbang Wen <anbang@cloudflare.com>
+Andreas Rammhold <andreas@rammhold.de>
+Daniel Kahn Gillmor <dkg@fifthhorseman.net>
Daniel Salzman <daniel.salzman@nic.cz>
+daurnimator <quae@daurnimator.com>
+David Beitey <david@davidjb.com>
+Grigorii Demidov <grigorii.demidov@nic.cz>
+Hasnat <hasnat.ullah@gmail.com>
+Ivana Krumlová <ivana.krumlova@nic.cz>
+Jan Holuša <jan.holusa@nic.cz>
+Jan Pavlinec <jan.pavlinec@nic.cz>
+Jan Včelák <jan.vcelak@nic.cz>
+Jayson Reis <santosdosreis@gmail.com>
+Jiří Helebrant <jiri.helebrant@nic.cz>
+Jonathan Coetzee <jon@thancoetzee.com>
+Karel Slaný <karel.slany@nic.cz>
+Leo Vandewoestijne <github@unicycle.net>
+Libor Peltan <libor.peltan@nic.cz>
+Lukáš Ježek <lukas.jezek@nic.cz>
+Manu Bretelle <chantr4@gmail.com>
+Marek Vavruša <marek.vavrusa@nic.cz>
+Marek Vavruša <mvavrusa@cloudflare.com>
+Michal Karm Babáček <karm@email.cz>
+Michal Lupečka <mlupecka@nic.cz>
+Ondřej Surý <ondrej.sury@nic.cz>
+Paul Hoffman <paul.hoffman@icann.org>
Pavel Valach <valach.pavel@gmail.com>
-Tomas Hozza <thozza@redhat.com>
-Daniel Kahn Gillmor <dkg@fifthhorseman.net>
-Vladimír Čunát <vladimir.cunat@nic.cz>
-Štěpán Balážik <stepan.balazik@nic.cz>
Petr Špaček <petr.spacek@nic.cz>
-Tomas Krizek <tomas.krizek@nic.cz>
-Daniel Kahn Gillmor <dkg@fifthhorseman.net>
+rickhg12hs <rickhg12hs@users.noreply.github.com>
+Robert Šefr <robert.sefr@outlook.com>
+SH <sh@analogic.cz>
+Štěpán Balážik <stepan.balazik@nic.cz>
+Štěpán Kotek <stepan.kotek@nic.cz>
+The Gitter Badger <badger@gitter.im>
+Tomáš Hozza <thozza@redhat.com>
+Tomáš Křížek <tomas.krizek@nic.cz>
+Ulrich Wisser <ulrich.wisser@iis.se>
+Vicky Shrestha <vicky@cloudflare.com>
+Vítězslav Kříž <vitezslav.kriz@nic.cz>
+Vladimír Čunát <vladimir.cunat@nic.cz>
+
+Knot Resolver source tree also bundles code and content published by:
+Austin Appleby <aappleby@gmail.com>
+Dan Vanderkam <danvdk@gmail.com>
+Jonas Gehring <jonas@jgehring.net>
+Jonathan Allard <jonathan@allard.io>
+Joseph A. Adams <joeyadams3.14159@gmail.com>
+Mark DiMarco <mark.dimarco@gmail.com>
+Michael Bostock <mike@ocks.org>
+Rusty Russell <rusty@rustcorp.com.au>
+Thomas Park <thomas@thomaspark.co>
+Fastly
+jQuery Foundation
+Knot DNS contributors
+Twitter
+United Computer Wizards
+
+Thanks to everyone who knowingly or unknowingly contributed!
--- /dev/null
+#!/bin/bash
+# SPDX-License-Identifier: GPL-3.0-or-later
+set -o nounset -o xtrace
+
+function spdx_originator_to_authors {
+ # $1 = Person/Organization
+ find -name '*.spdx' | xargs grep --no-filename "^PackageOriginator: $1: " \
+ | cut -d : -f 3 | sed -e 's/^ *//' -e 's/(/</' -e 's/)/>/' | sort -u
+}
+
+cd "$(git rev-parse --show-toplevel)"
+AUTHORS_FILE=AUTHORS
+TEMP_FILE="$(mktemp AUTHORS.XXXXXXXXXX)"
+
+# drop all names from the current file
+sed '/^People who contributed commits to our Git repo are/q' "${AUTHORS_FILE}" > "${TEMP_FILE}"
+# append to the new file
+git log --format="%aN <%aE>" | sort -u | git check-mailmap --stdin | sort -u >> "${TEMP_FILE}"
+
+echo '' >> "${TEMP_FILE}"
+echo 'Knot Resolver source tree also bundles code and content published by:' >> "${TEMP_FILE}"
+spdx_originator_to_authors "Person" >> "${TEMP_FILE}"
+spdx_originator_to_authors "Organization" >> "${TEMP_FILE}"
+
+echo '' >> "${TEMP_FILE}"
+echo 'Thanks to everyone who knowingly or unknowingly contributed!' >> "${TEMP_FILE}"
+
+# check for changes
+diff "${AUTHORS_FILE}" "${TEMP_FILE}"
+CHANGED=$?
+
+if [ $CHANGED -ne 0 ]; then
+ # update
+ mv "${TEMP_FILE}" "${AUTHORS_FILE}"
+fi
+
+# cleanup
+rm -f "${TEMP_FILE}"
+
+# signal change with exit code
+exit $CHANGED