All of lore.kernel.org
 help / color / mirror / Atom feed
From: Loic Dachary <loic@dachary.org>
To: Andrew Woodward <xarses@gmail.com>
Cc: Ceph Development <ceph-devel@vger.kernel.org>,
	Ceph Community <ceph-community@lists.ceph.com>
Subject: Re: [Ceph-community] v0.75 contributors credits ( experimental)
Date: Wed, 15 Jan 2014 18:26:06 +0100	[thread overview]
Message-ID: <52D6C4AE.704@dachary.org> (raw)
In-Reply-To: <CACEfbZgrHbCFGPXkTSsO=kWZycOoZTKC_xJWpnDhqX4gw7+hHg@mail.gmail.com>

[-- Attachment #1: Type: text/plain, Size: 8296 bytes --]



On 15/01/2014 16:47, Andrew Woodward wrote:
> Loic,
> 
> Have you seen the stackalytics project that we use for OpenStack? 
> 
> http://www.stackalytics.com/
> https://github.com/Mirantis/stackalytics
> 

Hi Andrew, 

I know of stackalytics and recently updated my affiliations there ;-) 

The purpose of this tiny script is originally to be of use to metrics.ceph.com : it can read from https://github.com/ceph/ceph/blob/master/.organizationmap to figure out the affiliation of authors. More importantly, authors can update this information with the same path they use on a daily basis to contribute to ceph itself: there is nothing to learn to fix a mistake or add a new affiliation. The command line is also a convenient way to see that the mapping works, without the need to deploy a graphical user interface.

And to answer Patrick's question : what I would like to see is a count of reviewers in a graphical user interface. It is important to me ( and probably others ) when I explain to my employer the nature of the work I do in Ceph. If reviews show on a leaderboard, it is easier to explain why it is important to keep the project healthy because other developers also spend time reviewing.

Cheers

> 
> 
> On Wed, Jan 15, 2014 at 12:21 AM, Loic Dachary <loic@dachary.org <mailto:loic@dachary.org>> wrote:
> 
>     Hi Ceph,
> 
>     Here is a sorted list of authors and organizations who contributed to v0.75, by number of commits or reviews back to v0.74. The affiliation of authors to organizations can be updated by submitting a patch to https://github.com/ceph/ceph/blob/master/.organizationmap
> 
>     If you are curious about how it is done, the details are at the end of this mail.
> 
>     Commits by authors
>          1      104 Sage Weil <sage@inktank.com <mailto:sage@inktank.com>>
>          2       86 Loic Dachary <loic@dachary.org <mailto:loic@dachary.org>>
>          3       18 Noah Watkins <noah.watkins@inktank.com <mailto:noah.watkins@inktank.com>>
>          4       12 David Zafman <david.zafman@inktank.com <mailto:david.zafman@inktank.com>>
>          5        8 Josh Durgin <josh.durgin@inktank.com <mailto:josh.durgin@inktank.com>>
>          6        7 John Wilkins <john.wilkins@inktank.com <mailto:john.wilkins@inktank.com>>
>          7        6 Samuel Just <sam.just@inktank.com <mailto:sam.just@inktank.com>>
>          8        4 Yan, Zheng <zheng.z.yan@intel.com <mailto:zheng.z.yan@intel.com>>
>          9        3 Ken Dreyer <ken.dreyer@inktank.com <mailto:ken.dreyer@inktank.com>>
>         10        2 Yehuda Sadeh <yehuda@inktank.com <mailto:yehuda@inktank.com>>
>         11        2 Greg Farnum <greg@inktank.com <mailto:greg@inktank.com>>
>         12        2 Gary Lowell <gary.lowell@inktank.com <mailto:gary.lowell@inktank.com>>
>         13        2 David Moreau Simard <dmsimard@iweb.com <mailto:dmsimard@iweb.com>>
>         14        2 Christophe Courtaut <christophe.courtaut@gmail.com <mailto:christophe.courtaut@gmail.com>>
>         15        1 Yan, Zheng <ukernel@gmail.com <mailto:ukernel@gmail.com>>
>         16        1 Xihui He <xihuihe@gmail.com <mailto:xihuihe@gmail.com>>
>         17        1 Rutger ter Borg <rutger@terborg.net <mailto:rutger@terborg.net>>
>         18        1 Kun Huang <academicgareth@gmail.com <mailto:academicgareth@gmail.com>>
>         19        1 Jonathan Dieter <jdieter@lesbg.com <mailto:jdieter@lesbg.com>>
>         20        1 Dan Mick <dan.mick@inktank.com <mailto:dan.mick@inktank.com>>
>         21        1 Bjørnar Ness <bjornar.ness@gmail.com <mailto:bjornar.ness@gmail.com>>
>         22        1 Andreas Peters <andreas.joachim.peters@cern.ch <mailto:andreas.joachim.peters@cern.ch>>
>     Commits by organizations
>          1      165 Inktank <contact@inktank.com <mailto:contact@inktank.com>>
>          2       88 Cloudwatt <libre.licensing@cloudwatt.com <mailto:libre.licensing@cloudwatt.com>>
>          3        4 Intel <contact@intel.com <mailto:contact@intel.com>>
>          4        2 IWeb <contact@iweb.com <mailto:contact@iweb.com>>
>          5        1 Yan, Zheng <ukernel@gmail.com <mailto:ukernel@gmail.com>>
>          6        1 Xihui He <xihuihe@gmail.com <mailto:xihuihe@gmail.com>>
>          7        1 Rutger ter Borg <rutger@terborg.net <mailto:rutger@terborg.net>>
>          8        1 Kun Huang <academicgareth@gmail.com <mailto:academicgareth@gmail.com>>
>          9        1 Jonathan Dieter <jdieter@lesbg.com <mailto:jdieter@lesbg.com>>
>         10        1 CERN <contact@cern.ch <mailto:contact@cern.ch>>
>         11        1 Bjørnar Ness <bjornar.ness@gmail.com <mailto:bjornar.ness@gmail.com>>
>     Reviews by authors
>          1       28 Sage Weil <sage@inktank.com <mailto:sage@inktank.com>>
>          2        6 Loic Dachary <loic@dachary.org <mailto:loic@dachary.org>>
>          3        6 Josh Durgin <josh.durgin@inktank.com <mailto:josh.durgin@inktank.com>>
>          4        3 Samuel Just <sam.just@inktank.com <mailto:sam.just@inktank.com>>
>          5        2 Yan, Zheng <zheng.z.yan@intel.com <mailto:zheng.z.yan@intel.com>>
>          6        2 João Eduardo Luís <joao.luis@inktank.com <mailto:joao.luis@inktank.com>>
>          7        2 Greg Farnum <greg@inktank.com <mailto:greg@inktank.com>>
>          8        2 Dan Mick <dan.mick@inktank.com <mailto:dan.mick@inktank.com>>
>          9        1 Yehuda Sadeh <yehuda@inktank.com <mailto:yehuda@inktank.com>>
>         10        1 Roald J. van Loon <roald@roaldvanloon.nl <mailto:roald@roaldvanloon.nl>>
>         11        1 Noah Watkins <noah.watkins@inktank.com <mailto:noah.watkins@inktank.com>>
>         12        1 David Moreau Simard <dmsimard@iweb.com <mailto:dmsimard@iweb.com>>
>         13        1 Andreas Peters <andreas.joachim.peters@cern.ch <mailto:andreas.joachim.peters@cern.ch>>
>     Reviews by organizations
>          1       45 Inktank <contact@inktank.com <mailto:contact@inktank.com>>
>          2        6 Cloudwatt <libre.licensing@cloudwatt.com <mailto:libre.licensing@cloudwatt.com>>
>          3        2 Intel <contact@intel.com <mailto:contact@intel.com>>
>          4        1 Roald van Loon Consultancy <roald@roaldvanloon.nl <mailto:roald@roaldvanloon.nl>>
>          5        1 IWeb <contact@iweb.com <mailto:contact@iweb.com>>
>          6        1 CERN <contact@cern.ch <mailto:contact@cern.ch>>
> 
>     The script used to generate this output is (copy paste at the root of a git clone https://github.com/ceph/ceph.git):
> 
>     cat > credits.sh <<'EOF'
>     previous_version=$1
>     next_version=$2
> 
>     echo "Commits by authors"
>     git log --after $previous_version --before $next_version --pretty='%aN <%aE>' | sort | uniq -c | sort -rn | nl
>     echo "Commits by organizations"
>     git log --after $previous_version --before $next_version --pretty='%aN <%aE>' | git -c mailmap.file=.organizationmap check-mailmap --stdin | sort | uniq -c | sort -rn | nl
>     echo "Reviews by authors"
>     git log --after $previous_version --before $next_version --pretty=%b | perl -n -e 'print "$_\n" if(s/^\s*Reviewed-by:\s*(.*<.*>)\s*$/\1/)' | git check-mailmap --stdin | sort | uniq -c | sort -rn | nl
>     echo "Reviews by organizations"
>     git log --after $previous_version --before $next_version --pretty=%b | perl -n -e 'print "$_\n" if(s/^\s*Reviewed-by:\s*(.*<.*>)\s*$/\1/)' | git check-mailmap --stdin | git -c mailmap.file=.organizationmap check-mailmap --stdin | sort | uniq -c | sort -rn | nl
>     EOF
>     v0_74=2013-12-30 ; v0_75=2014-01-14 ; bash credits.sh $v0_74 $v0_75
> 
>     Authors names are normalized with .mailmap and authors affiliations to a given organization comes from .organizationmap, both of which can be found and patched at the root of the ceph source tree.
> 
>     --
>     Loïc Dachary, Artisan Logiciel Libre
> 
> 
>     _______________________________________________
>     Ceph-community mailing list
>     Ceph-community@lists.ceph.com <mailto:Ceph-community@lists.ceph.com>
>     http://lists.ceph.com/listinfo.cgi/ceph-community-ceph.com
> 
> 
> 
> 
> -- 
> If google has done it, Google did it right!

-- 
Loïc Dachary, Artisan Logiciel Libre


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 263 bytes --]

  parent reply	other threads:[~2014-01-15 17:26 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-01-15  8:21 v0.75 contributors credits ( experimental) Loic Dachary
     [not found] ` <CACEfbZgrHbCFGPXkTSsO=kWZycOoZTKC_xJWpnDhqX4gw7+hHg@mail.gmail.com>
2014-01-15 15:52   ` [Ceph-community] " Patrick McGarry
2014-01-15 17:26   ` Loic Dachary [this message]
2014-01-15 20:19 ` Robin H. Johnson
2014-01-15 22:53   ` Loic Dachary

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=52D6C4AE.704@dachary.org \
    --to=loic@dachary.org \
    --cc=ceph-community@lists.ceph.com \
    --cc=ceph-devel@vger.kernel.org \
    --cc=xarses@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.