]> granicus.if.org Git - libevent/commitdiff
Add a script to add new contributors
authorAzat Khuzhin <azat@libevent.org>
Sun, 13 Nov 2022 20:44:10 +0000 (21:44 +0100)
committerAzat Khuzhin <azat@libevent.org>
Sun, 20 Nov 2022 20:50:27 +0000 (21:50 +0100)
extra/release/update-contributors.sh [new file with mode: 0755]

diff --git a/extra/release/update-contributors.sh b/extra/release/update-contributors.sh
new file mode 100755 (executable)
index 0000000..fe896b6
--- /dev/null
@@ -0,0 +1,24 @@
+#!/usr/bin/env bash
+
+function path_in_repo()
+{
+    echo "$(git rev-parse --show-toplevel)/$*"
+}
+function main()
+{
+    local new_contributors
+    new_contributors="$(mktemp libevent.XXXXXX)"
+    trap "rm $new_contributors $new_contributors.filtered" EXIT
+
+    git log "$(git describe --abbrev=0)..HEAD" --pretty='format:%cN%n%aN' > "$new_contributors"
+    awk '/^ \* / { split($0, cols, " \\* "); print(cols[2]); }' "$(path_in_repo CONTRIBUTORS.md)" | {
+        grep -F -x -v -f "$new_contributors"
+    } | {
+        local grep_patterns=(
+            GitHub
+        )
+        grep -F -x -v "${grep_patterns[@]}" 
+    } > "$new_contributors.filtered"
+    awk '{printf(" * %s\n", $0)}' "$new_contributors.filtered" >> "$(path_in_repo CONTRIBUTORS.md)"
+}
+main "$@"