diff options
author | Joan Touzet <wohali@users.noreply.github.com> | 2017-04-30 16:12:51 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-04-30 16:12:51 -0400 |
commit | 4e7e9ee8670f9383343fdd5b5c92e5e5f9a2a0a0 (patch) | |
tree | 30fdcb11d7dad1d27c76ff1ec6e23339dbfbe695 /build-aux | |
parent | d1b16e28d41020d69d968d3b271c4476af6bde66 (diff) | |
parent | cc5a5521293721fcc512f26dbeb0682970067203 (diff) | |
download | couchdb-4e7e9ee8670f9383343fdd5b5c92e5e5f9a2a0a0.tar.gz |
Merge pull request #312 from robertkowalski/build-thanks
build: pull authors out of subrepos
Diffstat (limited to 'build-aux')
-rwxr-xr-x | build-aux/print-committerlist.sh | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/build-aux/print-committerlist.sh b/build-aux/print-committerlist.sh new file mode 100755 index 000000000..7fbb96b7f --- /dev/null +++ b/build-aux/print-committerlist.sh @@ -0,0 +1,68 @@ +#!/bin/sh +# +# Licensed under the Apache License, Version 2.0 (the "License"); you may not +# use this file except in compliance with the License. You may obtain a copy of +# the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +# License for the specific language governing permissions and limitations under +# the License. + +function get_contributors { + local OS=`uname -s` + case "$OS" in + Linux|CYGWIN*) # GNU sed + local SED_ERE_FLAG=-r + ;; + *) # BSD sed + local SED_ERE_FLAG=-E + ;; + esac + + local CONTRIB_EMAIL_SED_COMMAND="s/^[[:blank:]]{5}[[:digit:]]+[[:blank:]]/ * /" + if [ "$1" == "couchdb-main-repo" ] + then + git shortlog -se 6c976bd..HEAD \ + | grep -v @apache.org \ + | sed $SED_ERE_FLAG -e "$CONTRIB_EMAIL_SED_COMMAND" + else + cd src/$1 + git shortlog -se HEAD \ + | grep -v @apache.org \ + | sed $SED_ERE_FLAG -e "$CONTRIB_EMAIL_SED_COMMAND" + cd .. && cd .. + fi +} + +function print_comitter_list { + # list of external repos that we exclude + local EXCLUDE=("bear" "folsom" "goldrush" "ibrowse" "jiffy" "lager" "meck" "mochiweb" "oauth" "snappy") + local EXCLUDE=$(printf "\|%s" "${EXCLUDE[@]}") + local EXCLUDE=${EXCLUDE:2} + local SUBREPOS=$(ls src/ | grep -v "$EXCLUDE") + + if test -e .git; then + + { + for i in $SUBREPOS; do + get_contributors $i + done; + get_contributors "couchdb-main-repo" + } | git check-mailmap --stdin | awk ' + BEGIN { + } + { + $1 = ""; + persons[$0] = $0; + } + END { + for (i in persons) { + print persons[i]; + } + }' + fi +} |