In [114]:
import pandas as pd
import matplotlib.pyplot as plt
# %matplotlib notebook
%matplotlib inline
import matplotlib
matplotlib.style.use('ggplot')

In [115]:
df = pd.read_csv('cleaned-commit-info.csv')

In [116]:
del df['Unnamed: 0']

In [117]:
df[df.repo=='areadetector/adcore'].authors.unique()


Out[117]:
array(['markrivers', 'timmmooney', 'mdmoo1978', 'ulrikpedersen', 'oirled',
       'ajgdls', 'aglowacki', 'edwarrick', 'prjemian', 'keenanlang',
       'nicholasrees', 'jlmuir', 'mp49', 'bhill-slac', 'xiaoqiangwang',
       'unknown', 'jabrnthy', 'roehrig', 'anjohnson', 'epics', 'mrkraimer',
       'rivers', 'mooney', 'gebhardt', 'jemian', 'mwpearson', 'kpetersn',
       'hammonds'], dtype=object)

In [118]:
len(df[df.authors == 'dchabot'])


Out[118]:
176

In [119]:
df.head()


Out[119]:
authors committers dates messages repo shas
0 ericdill Eric Dill 2015-09-22T13:54:22Z Merge pull request #342 from chuckie82/contrib... scikit-xray/scikit-xray bd24fbbc7914d0d13ef8e1e2a92e3d8b404d1880
1 ericdill Eric Dill 2015-09-22T13:54:06Z Merge pull request #343 from chuckie82/dockerf... scikit-xray/scikit-xray 636aed899eaa4a561752d7cf8e95881ee7af9af0
2 chuck Chuck 2015-09-22T00:55:18Z Fix sphinx syntax scikit-xray/scikit-xray 882af16373f545681fb1f8ab5828b7e391e27026
3 chuck Chuck 2015-09-22T00:05:58Z Fixed slash and comment scikit-xray/scikit-xray 2d0eee4f09f26812d767337a2f8ca73ff66c48ed
4 chuck Chuck 2015-09-21T22:39:05Z Added a Dockerfile for running skxray on any m... scikit-xray/scikit-xray 493895f44c24ac05b5e54185f1a331baa25f5fe7

In [120]:
ymds = [date[:10] for date in df.dates]
last_six_months = ['2014-01-01' <= ymd <= '2016-01-01' for ymd in ymds]
last_six_months = df[last_six_months]

In [121]:
authors = list([str(author) for author in last_six_months.authors.unique()])
repos = list(last_six_months.repo.unique())

In [122]:
len(last_six_months)


Out[122]:
77096

In [123]:
users_of_interest = [
    'ericdill',
    'tacaswell',
    'danielballan',
    'CJ-Wright',
    'afluerasu',
    'arkilic',
    'brunoseivam',
    'cowanml',
    'dchabot',
    'giltis',
    'gjwillms',
    'kevinrknox',
    'klauer',
    'licode',
    'pavoljuhas',
    'sameera2004',
    'stuwilkins',
    'waynelewis',
    'yugangzhang'
]

In [124]:
last_six_months = last_six_months[[str(author) in users_of_interest for author in last_six_months.authors]]

In [125]:
last_six_months.groupby('repo').agg(len)


Out[125]:
authors committers dates messages shas
repo
areadetector/adfastccd 132 132 132 132 132
arkilic/mdsbenchmark 5 5 5 5 5
arkilic/metadatastore 1 1 1 1 1
arkilic/v4table_example 2 2 2 2 2
cowanml/lsdc 140 140 140 140 140
cowanml/samplemanager 99 99 99 99 99
cowanml/samplemangler 46 46 46 46 46
danielballan/blog 3 3 3 3 3
danielballan/channelarchiver 1 1 1 1 1
danielballan/conda-kernels 10 10 10 10 10
danielballan/docs 1 1 1 1 1
danielballan/fetch 15 15 15 15 15
danielballan/ipython 2 2 2 2 2
danielballan/jhu-thesis-template 54 54 54 54 54
danielballan/jupyter 1 1 1 1 1
danielballan/lmfit-py 28 28 28 28 28
danielballan/mpld3 7 7 7 7 7
danielballan/needle 26 26 26 26 26
danielballan/photoactivation-paper 6 6 6 6 6
danielballan/pyav 7 7 7 7 7
danielballan/remotekernel 13 13 13 13 13
danielballan/replay 1 1 1 1 1
danielballan/snase-notebooks 2 2 2 2 2
danielballan/soft-matter.github.io-trackpy 1 1 1 1 1
danielballan/trackpy-bench 3 3 3 3 3
danielballan/video 8 8 8 8 8
danielballan/widget-history 3 3 3 3 3
danielballan/xraylib 1 1 1 1 1
danielballan/zvi_reader 5 5 5 5 5
dchabot/adsim 9 9 9 9 9
... ... ... ... ... ...
nsls-ii/databroker 969 969 969 969 969
nsls-ii/datamuxer 11 11 11 11 11
nsls-ii/dataportal 8 8 8 8 8
nsls-ii/docs 136 136 136 136 136
nsls-ii/exlog 54 54 54 54 54
nsls-ii/filestore 274 274 274 274 274
nsls-ii/metadatastore 642 642 642 642 642
nsls-ii/nsls-ii.github.io 33 33 33 33 33
nsls-ii/ophyd 528 528 528 528 528
nsls-ii/pyepics 5 5 5 5 5
nsls-ii/pyolog 100 100 100 100 100
nsls-ii/replay 164 164 164 164 164
nsls-ii/samplemanager 38 38 38 38 38
nsls-ii/suitcase 14 14 14 14 14
nsls-ii/vertical-integration 32 32 32 32 32
nsls-ii/wishlist 1 1 1 1 1
scikit-xray/scikit-xray 1336 1336 1336 1336 1336
scikit-xray/scikit-xray-bench 5 5 5 5 5
scikit-xray/scikit-xray-examples 114 114 114 114 114
scikit-xray/scikit-xray-feedstock 49 49 49 49 49
scikit-xray/scikit-xray-feedstock-dev 48 48 48 48 48
soft-matter/mr 30 30 30 30 30
soft-matter/pims 278 278 278 278 278
soft-matter/slicerator 11 11 11 11 11
soft-matter/trackpy 345 345 345 345 345
soft-matter/trackpy-examples 27 27 27 27 27
synchbot/metadataclientv4 6 6 6 6 6
synchbot/metadataservice 82 82 82 82 82
synchbot/metadatastorev4 107 107 107 107 107
vistrails/vistrails 5 5 5 5 5

180 rows × 5 columns


In [126]:
last_six_months.groupby('authors').agg(len)


Out[126]:
committers dates messages repo shas
authors
afluerasu 1 1 1 1 1
arkilic 529 529 529 529 529
brunoseivam 1 1 1 1 1
cowanml 291 291 291 291 291
danielballan 2018 2018 2018 2018 2018
dchabot 160 160 160 160 160
ericdill 2167 2167 2167 2167 2167
giltis 126 126 126 126 126
gjwillms 27 27 27 27 27
kevinrknox 11 11 11 11 11
klauer 521 521 521 521 521
licode 591 591 591 591 591
pavoljuhas 145 145 145 145 145
sameera2004 370 370 370 370 370
stuwilkins 903 903 903 903 903
tacaswell 3425 3425 3425 3425 3425
waynelewis 4 4 4 4 4
yugangzhang 1 1 1 1 1

In [127]:
non_merge = last_six_months[['merge' not in str(msg).lower() for msg in last_six_months.messages]]
merge = last_six_months[['merge' in str(msg).lower() for msg in last_six_months.messages]]

In [128]:
def clean_dataframe(df, min_contributor_commits=25, min_repo_size=25):
            
    # squash beamline specific projects into one row
    beamline_summaries = {}
    for blid in ['csx', 'hxn', 'xpd', 'srx', 'ixs', 'chx']:
        bl_rows = [('nsls-ii-%s' % blid) in row_name for row_name in df.index]
        print('nsls-ii-%s has %s repos that are being merged.\n%s\n' 
              % (blid, len([row for row in bl_rows if row]), list(df.index[bl_rows])))
        series = df.ix[bl_rows].sum()
        df = df.ix[[not row for row in bl_rows]]
        beamline_summaries['%s specific repos' % blid] = series
    squashed_beamline_repos = pd.DataFrame(beamline_summaries).T
    
    # squash repos with < `min_repo_size` commits into one row
    minimum_commits = min_repo_size
    small_rows = [df.ix[row].sum() < minimum_commits for row in df.index]
    small_row_names = df.index[small_rows]
    series = df.ix[small_rows].sum()
    df = df.ix[[not row for row in small_rows]]
    small_repos = pd.DataFrame({'small-repos': series}).T
    
    # concatenate the manipulated dataframes together
    squashed = pd.concat([df, squashed_beamline_repos, small_repos])
    
    # ignore people with less than `min_contributor_commits` commits
    ignored_contributors = []
    for col in squashed:
        if squashed[col].sum() < min_contributor_commits:
            ignored_contributors.append(col)
            del squashed[col]
    
    print('%s repos are being combined into the "small-repos" row because they have less than '
          '%s commits in the dataset\n%s\n' % (len(small_row_names), min_repo_size, list(small_row_names)))
    print('%s contributors are being ignored because they have less than %s commits\n%s' 
          % (len(ignored_contributors), min_contributor_commits, list(ignored_contributors)))
    return squashed

In [129]:
nonmerge_commits_by_repo = {author: non_merge[non_merge.authors==author].groupby('repo').agg(len).messages for author in authors}
nonmerge_commits_by_repo = clean_dataframe(pd.DataFrame(nonmerge_commits_by_repo))


nsls-ii-csx has 22 repos that are being merged.
['nsls-ii-csx/acopian', 'nsls-ii-csx/baffleslits', 'nsls-ii-csx/caautoconfig', 'nsls-ii-csx/calibration', 'nsls-ii-csx/conda-recipes', 'nsls-ii-csx/csxtools', 'nsls-ii-csx/fastccdconfig', 'nsls-ii-csx/lakeshore336', 'nsls-ii-csx/libcin', 'nsls-ii-csx/logbook', 'nsls-ii-csx/lupit', 'nsls-ii-csx/nsls-ii-csx.github.io', 'nsls-ii-csx/nsls2notifyme', 'nsls-ii-csx/omegam4061', 'nsls-ii-csx/ophyd', 'nsls-ii-csx/pyvlspgm', 'nsls-ii-csx/qcinview', 'nsls-ii-csx/stanforddg645', 'nsls-ii-csx/testioc', 'nsls-ii-csx/timestamp', 'nsls-ii-csx/undcontrol', 'nsls-ii-csx/vlspgm']

nsls-ii-hxn has 3 repos that are being merged.
['nsls-ii-hxn/hxntools', 'nsls-ii-hxn/ipython_ophyd', 'nsls-ii-hxn/pyxrf']

nsls-ii-xpd has 1 repos that are being merged.
['nsls-ii-xpd/ipython_ophyd']

nsls-ii-srx has 4 repos that are being merged.
['nsls-ii-srx/controlsui', 'nsls-ii-srx/ipython_ophyd', 'nsls-ii-srx/nsls2-xf-utils', 'nsls-ii-srx/srxtools']

nsls-ii-ixs has 0 repos that are being merged.
[]

nsls-ii-chx has 3 repos that are being merged.
['nsls-ii-chx/chxtools', 'nsls-ii-chx/eiger_tools', 'nsls-ii-chx/ipython_ophyd']

101 repos are being combined into the "small-repos" row because they have less than 25 commits in the dataset
['arkilic/mdsbenchmark', 'arkilic/metadatastore', 'arkilic/v4table_example', 'danielballan/blog', 'danielballan/channelarchiver', 'danielballan/conda-kernels', 'danielballan/docs', 'danielballan/fetch', 'danielballan/ipython', 'danielballan/jupyter', 'danielballan/mpld3', 'danielballan/photoactivation-paper', 'danielballan/pyav', 'danielballan/remotekernel', 'danielballan/replay', 'danielballan/snase-notebooks', 'danielballan/soft-matter.github.io-trackpy', 'danielballan/trackpy-bench', 'danielballan/video', 'danielballan/widget-history', 'danielballan/xraylib', 'danielballan/zvi_reader', 'dchabot/adsim', 'dchabot/areadetector-1-9-1', 'dchabot/caautoconfig', 'dchabot/cls-orbitcontrol', 'dchabot/dotfiles', 'dchabot/motor-synapps', 'dchabot/motorsim', 'dchabot/python-pcaspy', 'dchabot/synapps-mca', 'ericdill/album', 'ericdill/archiver', 'ericdill/bokeh', 'ericdill/committery', 'ericdill/conda-builder', 'ericdill/conda-recipes', 'ericdill/democsx', 'ericdill/diffpy.srxplanar', 'ericdill/documentsinlabnotebooks', 'ericdill/dummybroker', 'ericdill/filestore-v0.0.2-feedstock', 'ericdill/github-changelog-generator', 'ericdill/hkl', 'ericdill/image_inspector', 'ericdill/mdsbenchmark', 'ericdill/miniature-hipster', 'ericdill/notes-dev', 'ericdill/ophyd', 'ericdill/pandas', 'ericdill/plasticsim', 'ericdill/pyatoms', 'ericdill/pymca', 'ericdill/pyspec', 'ericdill/replay', 'ericdill/scikit-xray', 'ericdill/tomopy', 'ericdill/versioneer', 'giltis/channelarchiver', 'giltis/conda-prescriptions', 'giltis/data-exchange', 'giltis/dotfiles', 'giltis/glogg', 'giltis/pyqtgraph', 'giltis/scikit-image', 'giltis/scikit-xray-examples', 'giltis/scipy', 'klauer/conda-prescriptions', 'klauer/ddrive', 'klauer/ecli', 'klauer/ez4axis', 'klauer/f460', 'klauer/ipplan', 'klauer/pmd101', 'klauer/pmd90', 'klauer/pvrename', 'klauer/pympx', 'klauer/qolibri', 'klauer/simple_scaler', 'klauer/smarpod', 'klauer/stepscan', 'matplotlib/matplotlib.github.com', 'nikea/benchmark_scripts', 'nikea/nikea.github.io', 'nikea/nsls2_gui', 'nikea/pyxpcs', 'nsls-ii/brokerstreamserver', 'nsls-ii/bug-reports', 'nsls-ii/channelarchiver', 'nsls-ii/configs', 'nsls-ii/datamuxer', 'nsls-ii/dataportal', 'nsls-ii/pyepics', 'nsls-ii/suitcase', 'nsls-ii/wishlist', 'scikit-xray/scikit-xray-bench', 'soft-matter/mr', 'soft-matter/slicerator', 'soft-matter/trackpy-examples', 'synchbot/metadataclientv4', 'vistrails/vistrails']

1578 contributors are being ignored because they have less than 25 commits
['1tush', '3lnc', '4lejandrito', '=', 'aa3438', 'aashish24', 'abalkin', 'abeguerra', 'abele', 'abelopolsky', 'abergeron', 'abestanis', 'acanthostega', 'acorbe', 'adam hodgen', 'adam siembida', 'adamatus', 'adambark', 'adamfeuer', 'adamgreenhall', 'adelq', 'adeodatus', 'adgaudio', 'adrn', 'aericson', 'aevri', 'aflaxman', 'afluerasu', 'afrancais', 'agardelein', 'agijsberts', 'aglowacki', 'ahaldane', 'aheginbotham', 'ahmadia', 'ahmed', 'ahojnnes', 'aisipos', 'ajasja', 'ajdawson', 'ajgdls', 'ajholyoake', 'ajschumacher', 'akshayaurora', 'alan-fgr', 'alanhdu', 'alanjds', 'alberthilb', 'alchemyst', 'aleksandra-tarkowska', 'alemirone', 'alex', 'alexamici', 'alexbrc', 'alexei colin', 'alexeyum', 'alexsavio', 'alexwh', 'alimanfoo', 'alimuldal', 'alishir', 'allendowney', 'almarklein', 'alorenzo175', 'ambakshi', 'amcdawes', 'amelio-vazquez-reina', 'aminb', 'amormachine', 'amueller', 'amyteegarden', 'ananelson', 'andershogqvist', 'andreas-h', 'andreaswallner', 'andrei zbikowski', 'andrenarchy', 'andrew burrows', 'andrew nelson', 'andrewjesaitis', 'andrewkittredge', 'androomerrill', 'andyfaff', 'anishathalye', 'anjohnson', 'ankit-maverick', 'ankostis', 'anntzer', 'anomrake', 'anthonyalmarza', 'anton-d', 'anykraus', 'apelisse', 'apiszcz', 'argriffing', 'ariejdl', 'arlowhite', 'arnaudf-iter', 'aron-bordin', 'artagnon', 'artemy kolchinsky', 'artemyk', 'arunpersaud', 'arve0', 'aseyboldt', 'asmacdo', 'asmeurer', 'asobrien', 'asottile', 'aspidites', 'astrofrog', 'aszilagyi', 'atemysemicolon', 'audreyr', 'azd325', 'azixmcaze', 'azjps', 'b3ni', 'bald', 'balkian', 'barentsen', 'basharovv', 'basheersubei', 'bavardage', 'bburan-galenea', 'bdowling', 'behzadnouri', 'belltailjp', 'beltashazzer', 'bemclaugh', 'ben schiller', 'benabik', 'benjamin root', 'benjaminabel', 'benjaminaschultz', 'benjaminmgross', 'benjwadams', 'benmarwick', 'bennlich', 'benoitpointet', 'beregond', 'bergtholdt', 'berryma4', 'bfredl', 'bgamari', 'bgruening', 'bhill-slac', 'billletson', 'billyshambrook', 'bionoid', 'birdsarah', 'bitdeli-chef', 'bjacobowski', 'bjanssen', 'bjcohen', 'bjodah', 'bjonen', 'bjornarneson', 'bkreider', 'blazej pindelski', 'blebo', 'blink1073', 'blippy', 'blowekamp', 'bluescarni', 'bmcage', 'bmcorser', 'bmistree', 'bocribbz', 'bokehserver', 'bollwyvl', 'boonsnaibot', 'borisverk', 'bouk', 'bountysource-support', 'bquistorff', 'bramalingam', 'brendanlong', 'brett patterson', 'brettcannon', 'brettrmurphy', 'briandrawert', 'brianhelba', 'briannewsom', 'broessli', 'brousch', 'brunobeltran', 'brunoseivam', 'bryan van de ven', 'bryevdv', 'bsvh', 'bthyreau', 'bubenkoff', 'buchuki', 'bulli92', 'burrowsa', 'buzmakov', 'bwignall', 'bwkeller', 'byronyi', 'bytbox', 'c05mic', 'cadair', 'caleb epstein', 'camdavidsonpilon', 'cammil', 'campagnola', 'canavandl', 'cancan101', 'capitanbatata', 'captainwhippet', 'carandraug', 'carlfk', 'carreau', 'carterbox', 'caryan', 'casolt', 'caspervdw', 'catstyle', 'cayci', 'cbahr', 'cbenhagen', 'cbrueffer', 'ccordoba12', 'cdeil', 'cekees', 'cel4', 'celiafish', 'certik', 'cestdiego', 'cgardn', 'cgestes', 'cgilling', 'cgohlke', 'chadawagner', 'chadfulton', 'chaosphere2112', 'chapmanb', 'chappers', 'charris', 'chatcannon', 'chdoig', 'chebee7i', 'chenz', 'chinasaur', 'choffmann', 'chozabu', 'chris-allan', 'chris-roerig', 'chrisbeaumont', 'christian@christian-linux.sarrazin.local', 'christianbrodbeck', 'christopher whelan', 'chrisvam', 'chronitis', 'chuck', 'chx', 'chx operator', 'cimarronm', 'cj-wright', 'cjdrake', 'ckald', 'clarkfitzg', 'claymation', 'claytonpassmore', 'clham', 'cloudbees dev@cloud', 'cneves', 'coderforlife', 'colin blackburn', 'colin fang', 'commonlisp', 'compassym', 'connie', 'corydolphin', 'cowlicks', 'cpcloud', 'cpommranz', 'crazym', 'crbates', 'creamycookie', 'cristal', 'crwilcox', 'csachs', 'csivanich', 'cstoafer', 'csx-1 operator', 'ctokheim', 'curiale', 'curufinwe', 'curzona', 'cuuuurzel', 'cwebster2', 'cxmcc', 'cynddl', 'czarneckid', 'czheo', 'daetalus', 'dagss', 'dakefeng', 'dakoop', 'dalejung', 'damianavila', 'damoxc', 'dan-blanchard', 'danbirken', 'danclewley', 'dangra', 'danhickstein', 'daniel hahler', 'danielwe', 'dapid', 'daradib', 'dareonion', 'data-exchange', 'davclark', 'davehunt', 'david anderson', 'david bew', 'david kaplan', 'david@mcbf.net', 'davidastephens', 'davidbord', 'davidljung', 'davidnt', 'davidovitch', 'davidshinn', 'davidszotten', 'davidwilemski', 'dawehner', 'daydreamt', 'dbarbeau', 'dbew', 'ddale', 'decarlof', 'deeplook', 'dejande', 'delcypher', 'demotu', 'denys-duchier', 'dequis', 'derdon', 'derekstavis', 'derickl', 'dessant', 'dexterdev', 'dgursoy', 'dhickin', 'dhirschfeld', 'dhruv13j', 'diego0020', 'dirk-thomas', 'dirkjot', 'dirn', 'dizzydogg', 'dj gilcrease', 'djarecka', 'djvine', 'dkua', 'dlax', 'dloss', 'dlovell', 'dmcdougall', 'dmpelt', 'doga gursoy', 'dominikl', 'domitto', 'domspad', 'donaldseo', 'dongweiming', 'donkirkby', 'donnemartin', 'dopplershift', 'doraf', 'dorandeluz', 'doublereedkurt', 'douglas rudd', 'dpwrussell', 'dragonsa', 'drevicko', 'drothlis', 'dsblank', 'dsm054', 'duncanmmacleod', 'dupuy', 'dustin farris', 'dvreed77', 'dwf', 'dwillmer', 'dxshank', 'e-q', 'ebenolson', 'echatelet', 'edisongustavo', 'edwarrick', 'efiring', 'eglassman', 'ehrenfeu', 'ekimekim', 'eldeveloper', 'electronwill', 'elephanter', 'eli-b', 'ellisonbg', 'elpres', 'elubeck', 'emanuele', 'emanuele-f', 'embray', 'emikulic', 'emilienschultz', 'emilroz', 'emmanuelle', 'encukou', 'endolith', 'epanepucci', 'epics', 'epifanio', 'er0', 'eric dill', 'eric l frederich', 'eric ma', 'eric siegerman', 'eric89gxl', 'ericfrederich', 'ericmjl', 'eriknw', 'eschuhmacher', 'esparta', 'eteq', 'etgalloway', 'eugen beck', 'eugene yurtsev', 'ev-br', 'evgeni burovski', 'ewh', 'ewmoore', 'fabio zanini', 'fabioz', 'fahhem', 'falcondai', 'famousgarkin', 'fardal', 'fariza', 'fastccduser', 'fat-crocodile', 'fayimora', 'fcolas', 'felipe contreras', 'felipec', 'felixlawrence', 'feralbytes', 'ffteja', 'fgz73762', 'filmor', 'fingolfin', 'fisadev', 'flamingbear', 'flazz', 'florianrhiem', 'flothesof', 'flub', 'flying-sheep', 'fmaussion', 'fmmb', 'fonnesbeck', 'foogod', 'foogunlana', 'foxx', 'fperez', 'fpliger', 'fraglegs', 'francis lavoie', 'francisco-dlp', 'frank battaglia', 'frank mata', 'françois boulogne', 'frederikhermans', 'frenchwr', 'frewsxcv', 'fridh', 'frédéric-emmanuel picca', 'fscz', 'fulmicoton', 'fumiya-kubota', 'futrell', 'fvgoto', 'fvia', 'fycyang', 'ga7g08', 'gabraganca', 'gandalf013', 'garcia-marc', 'garrett berg', 'garrett-r', 'garrison', 'gary ruben', 'gatagat', 'gbaty', 'gbillotey', 'gdraps', 'gdv', 'gene-telligent', 'geoffrey french', 'gepcel', 'germangh', 'gerrrr', 'gertingold', 'ggoret', 'gibiansky', 'gilbertw', 'giles knap', 'gilesknap', 'gitaarik', 'gitster', 'gitter-badger', 'gkovacs', 'glenlovett', 'gluap', 'glyg', 'gm2211', 'gmarkall', 'godber', 'goodbest', 'gouarin', 'gouthambs', 'gporras', 'gpoulin', 'graingert', 'grdlok', 'grechkay', 'gregcaporaso', 'grelston', 'grlee77', 'groutr', 'gruen', 'grzegorz rygielski', 'gstoel', 'gtrivedi', 'guillempalou', 'guobao shen', 'gustavla', 'gutworth', 'guziy', 'habi', 'hadim', 'hakanardo', 'hallfox', 'hamogu', 'hans dembinski', 'has2k1', 'havoc-io', 'hawkerpl', 'hayd', 'he1per', 'helderc', 'helenst', 'helger', 'helper', 'henry hammond', 'henryoswald', 'heoj', 'herr-biber', 'hfaran', 'hflynn', 'hhuuggoo', 'hiaselhans', 'hickford', 'hildensia', 'hkleynhans', 'hmeine', 'holgerpeters', 'horta', 'horvatha', 'hpk42', 'hshimizu77', 'hsperr', 'htkm', 'hugadams', 'hugo', 'hugo shi', 'huitseeker', 'hunse', 'hunterowens', 'huyston', 'hxn operator', 'ianthomas23', 'iauns', 'ibell', 'icemac', 'iffy', 'ifosch', 'ihuston', 'ikajic', 'ikeviny', 'ilanschnell', 'iled', 'ilonajulczuk', 'iltis', 'imichka', 'immerrr', 'inclement', 'inducer', 'insertroar', 'invalid-email-address', 'ionel cristian mărieș', 'ionelmc', 'irritum', 'ischwabacher', 'isms', 'itziakos', 'ivanov', 'ivoflipse', 'iwschris', 'ixjlyons', 'ixs operator', 'izaid', 'j08lue', 'jabrnthy', 'jacobcvt12', 'jacobschaer', 'jacopo', 'jaidevd', 'jaime a farrington', 'jaimefrio', 'jake vanderplas', 'jakevdp', 'jakirkham', 'jakobgager', 'james pallister', 'james townley', 'jamestwebber', 'jammcc', 'janbednarik', 'janschulz', 'jaredly', 'jaschau', 'jasongrout', 'jasonliw93', 'jasonxxu', 'jatin', 'jaydyou', 'jayp16', 'jballanc', 'jbbrokaw', 'jbmohler', 'jbradish', 'jburel', 'jcb91', 'jcfr', 'jcftang', 'jchome', 'jcjaskula', 'jclevesque', 'jd', 'jdavidheiser', 'jdeblese', 'jdemeyer', 'jdfreder', 'jdimatteo', 'jdreaver', 'jdwarner', 'jean-marie burel', 'jedbrown', 'jeden', 'jeff kreis', 'jeff reback', 'jeffpaine', 'jeffreystarr', 'jeffspies', 'jeffwidman', 'jegger', 'jennystone', 'jenshnielsen', 'jeremyfix', 'jerrysxu', 'jesseengel', 'jessefarnham', 'jetuk', 'jf---', 'jfarrington', 'jfrazelle', 'jgarcke', 'jgbos', 'jgomezdans', 'jgoppert', 'jgors', 'jgoutin', 'jhamrick', 'jheinen', 'jhemmelg', 'jhull', 'jianli', 'jightuse', 'jikkujose', 'jimmy tang', 'jimmyshen', 'jinweiclarkchao', 'jjhelmus', 'jklymak', 'jkseppan', 'jleinonen', 'jlmuir', 'jlutgen', 'jluttine', 'jmcnamara', 'jmeppley', 'jmetz', 'jminardi', 'jmorris0x0', 'jnevrly', 'jni', 'jnmclarty', 'jnothman', 'jnovinger', 'joel bernier', 'joel v. bernier', 'joelfrederico', 'joelhullcio', 'joelvbernier', 'joergdietrich', 'joergrittinger', 'joferkington', 'johannesring', 'john lund', 'johnyf', 'jojje', 'jonasc', 'jonathan prates', 'jorisvandenbossche', 'josephcottam', 'josh warner', 'joshmoore', 'jowr', 'jpallen', 'jphammonds', 'jpvanhal', 'jqmp', 'jreback', 'jrevans', 'jreynolds01', 'jrjohansson', 'jsarver', 'jschueller', 'jseabold', 'jsexauer', 'jshirley', 'jskinner53', 'jsullivan-anl', 'jswhit', 'jtatum', 'jtorcasso', 'jtratner', 'jtyberg', 'jucoste', 'juhasch', 'juliancienfuegos', 'juliantaylor', 'jurko-gospodnetic', 'jvkersch', 'jvns', 'jwass', 'jxstanford', 'jzuhone', 'jzwinck', 'jérémy riviere', 'k lauer', 'k4rtik', 'kajiglet', 'kalibri', 'kambysese', 'kamil kwiek (irritum)', 'kangol', 'kastnerkyle', 'katie atkinson', 'katyhuff', 'kdavies4', 'kdiether', 'kdmurray91', 'kdodia', 'keenanlang', 'keith brister', 'kelsiegr', 'kelsolaar', 'kenneth lauer', 'kennethgillen', 'kermit666', 'kersulis', 'kestertong', "kevin ndung'u", 'kevin sheppard', 'kevin-keraudren', 'kevinaloys', 'kevincox', 'kevinrknox', 'kevkeating', 'khchan', 'khinsen', 'khyox', 'kieffer jerome', 'kif', 'kikocorreoso', 'kimmo palin', 'kirill pavlov', 'kived', 'kivy', 'kjordahl', 'klickverbot', 'klonuo', 'kloper', 'kmike', 'kmpeters', 'knabar', 'knappador', 'koldunovn', 'kolibreee', 'komnomnomnom', 'konishchevdmitry', 'konrad', 'konstantint', 'korijn', 'korniichuk', 'kovak', 'kpetersn', 'kpk09', 'krastanov', 'ksolan', 'kthyng', 'kyleam', 'lanewittgen', 'larrybradley', 'larsmans', 'laurent', 'lauritzthaulow', 'lcanavan', 'lebigot', 'ledmonster', 'lee kamentsky', 'leekamentsky', 'leeonadoh', 'lennart0901', 'leouieda', 'lepture', 'lesteve', 'lexicalunit', 'lexqt', 'lexual', 'lhelontra', 'li li', 'liambuchanan', 'lichri12', 'lidavidm', 'lidstrom83', 'lig', 'lila hickey', 'lilahickey', 'lili@bnl.gov', 'lilmatt', 'limtaesu', 'linkid', 'lkilcher', 'llimllib', 'lobocv', 'logicaldash', 'loujine', 'lpsinger', 'lqez', 'lschr', 'lucalianas', 'lucas-c', 'lucasb-eyer', 'luisibanez', 'luispedro', 'lukebarnard1', 'lunson', 'lvasseur', 'm-kuhn', 'm45t3r', 'm4urice', 'maarten', 'macduff111', 'macropas', 'madprime', 'magcius', 'maggie-m', 'magnunor', 'mahmoud', 'mairas', 'majidaldo', 'malaterre', 'malev', 'malitsky', 'mangecoeur', 'manics', 'manuelriel', 'marcmolla', 'marcua', 'marisuz obajtek', 'mark rivers', 'markmuetz', 'markreidvfx', 'markrivers', 'markrwilliams', 'markusr815', 'martinthoma', 'marty kraimer', 'martynsmith', 'mastermind2k', 'masud rahman', 'matejak', 'mateusz paprocki', 'matham', 'mathieu drapeau', 'mathieu duponchelle', 'mathieu1', 'matplotlibtravisbot', 'matsjoyce', 'matt newville', 'matt-climate', 'matt-li', 'matthew craig', 'matthew-brett', 'matthewgilbert', 'matthewturk', 'matthieucan', 'matthieudartiailh', 'mattpap', 'mattvonrocketstein', 'matze', 'mawesi', 'maxalbert', 'maxchang', 'maxgrenderjones', 'maximbaz', 'maximilian albert', 'mazieres', 'mbalasso', 'mbyt', 'mcjcode', 'mcsalgado', 'mcwitt', 'mdavidsaver', 'mdboom', 'mdebbar', 'mdehoon', 'mdengler', 'mdipierro', 'mdmoo1978', 'mdmueller', 'mechcoder', 'megies', 'mehdimu', 'melissalinkert', 'melund', 'merriam', 'mfitzp', 'mfkaptan', 'mgaitan', 'mgiuca-google', 'mgymrek', 'mhagdorn', 'michael droettboom', 'michaelaye', 'michaelws', 'michal romaniuk', 'michiel de hoon', 'michs', 'mihaineacsu', 'mikebailey', 'mikeboers', 'miketkelly', 'mikhail terekhov', 'mikhailmoshnogorsky', 'milljm', 'min rk', 'minad', 'mineo', 'minrk', 'mirandaxm', 'mistakevin', 'mjn19172', 'mjsu', 'mjuric', 'mkassner', 'mmckerns', 'mmcky', 'mohanraj-r', 'montefra', 'mooney', 'moonshoes87', 'morley93', 'mortada', 'mp49', 'mpastell', 'mpesavento', 'mpyrozhok', 'mrigal', 'mrkrd', 'mrleeh', 'mrngilles', 'mrocklin', 'mromberg', 'mrussell', 'msabramo', 'msarahan', 'mscross', 'mspacek', 'mssurajkaiga', 'mtbc', 'mtrbean', 'mtskelton', 'mutirri', 'mwaskom', 'mwcraig', 'mwiebe', 'mwpearson', 'myshen', 'nanopos', 'nathan heijermans', 'nathantypanski', 'nbarray', 'ncornette', 'ndevenish', 'necronomicron', 'neerajgangwar', 'neggert', 'neirbowj', 'nellev', 'nelson brown', 'nesanders', 'neuroserpens', 'nevion', 'newville', 'ngoldbaum', 'nh2', 'nhmc', 'niallrobinson', 'nicholasrees', 'nickystringer', 'nicoddemus', 'nicodelpiano', 'nicolaisi', 'nicolas delaby', 'nicolasdespres', 'nikhil s', 'nikolausdemmel', 'niole', 'nipunreddevil', 'nitind', 'nixon-', 'njsmith', 'njwilson23', 'nkeim', 'nkoep', 'nleite', 'nloadholtes', 'nlsn', 'noirbizarre', 'nonhermitian', 'normaljosh', 'notsimon', 'npr78', 'nsonnad', 'nspies', 'nwin', 'nzjrs', 'oarodriguez', 'oceanwolf', 'ocefpaf', 'ochubar', 'oddodood', 'odewahn', 'odiogosilva', 'ogrisel', 'ohaz', 'oirled', 'ojake', 'ojdo', 'okin', 'olgabot', 'oliver marks', 'oliverw1', 'olivierlefloch', 'olymk2', 'omer katz', 'onceuponatimeforever', 'onesandzeroes', 'opoplawski', 'osadalakmal', 'oselivanov', 'ostralopi-tk', 'otepoti', 'otizonaizit', 'ovillellas', 'ovz', 'ozak', 'pabs3', 'paddymul', 'pallav-fdsi', 'pankajp', 'papaloizouc', 'parente', 'parfenovs', 'parleur', 'pashadia', 'pasky', 'patchen', 'patricksnape', 'patricktokeeffe', 'paul g', 'paulvanschayck', 'pavol juhas', 'payel bandyopadhyay', 'payne92', 'pbanaszkiewicz', 'pberkes', 'pbrady', 'pbrod', 'pelme', 'pelson', 'per parker', 'per rosengren', 'perimosocordiae', 'pete leicester', 'petebachant', 'peter roesch', 'peter1000', 'peterruppel', 'petters', 'pfctdayelise', 'pfontana3w2', 'pganssle', 'phaebz', 'philfreo', 'phillipnordwall', 'phobson', 'picca', 'picca frédéric-emmanuel', 'picibucor', 'piem', 'pierre gerold', 'pierre-haessig', 'pieterproigia', 'pigmej', 'pipping', 'pitrou', 'pkeus', 'pmneila', 'pmpppeters1', 'polyrabbit', 'porterjamesj', 'pradal', 'pratapvardhan', 'prjemian', 'pstjohn', 'ptone', 'punya', 'pupssman', 'pv', 'pwcazenave', 'pwuertz', 'pxsys', 'pxuser', 'pydanny', 'pytry', 'pzwang', 'qidane', 'quackingduck', 'quaquel', 'quasiben', 'qulogic', 'qwhelan', 'r-b-g-b', 'r3vl1s', 'ra-dim', 'radarhere', 'radek-senfeld', 'radioxoma', 'ragetrue', 'rahiel', 'rainbowdesign', 'rainwoodman', 'ralphlange', 'rasbt', 'rastogiachyut', 'rawlik', 'razius', 'rbonvall', 'rcarneva', 'reallistic', 'rebeccaroisin', 'rebeccawperry', 'regdoug', 'rekom', 'remram44', 'renaud', 'renzobertocchi', 'rexissimus', 'rgbkrk', 'rgommers', 'rhattersley', 'rhiever', 'richard larkin', 'richardandersson', 'richardeverson', 'richardhansen', 'richardtsai', 'richkinder', 'rickkwa', 'rivers', 'rleigh-codelibre', 'rleigh-dundee', 'rma4ok', 'rmcgibbo', 'rnelsonchem', 'roadhead', 'robbieclarken', 'robertdavidwest', 'robertmaynard', 'robertour', 'robfalck', 'robind42', 'roblevy', 'rochacbruno', 'rockg', 'roehrig', 'roger leigh', 'rollcat', 'romanpekar', 'ronaldomercado', 'ronaldvanrij', 'ronnypfannschmidt', 'root', 'rosnfeld', 'rossant', 'rothnic', 'rouge8', 'rougier', 'rozza', 'rpetchler', 'rsmith31415', 'rsnape', 'rtrwalker', 'rudis', 'rupertthompson', 'russellluo', 'rutgerk', 'rutsky', 'rwest', 'ryanbelt', 's9w', 'sagivmalihi', 'sahat', 'salvatorescaramuzzino', 'sam brotherton', 'samstav', 'samureus', 'sangheestyle', 'saraschnadt', 'sargas', 'sbesson', 'sbodomerle', 'sbrother', 'scavone', 'sccolbert', 'schaunwheeler', 'schettino72', 'schiewe', 'schlamar', 'schwing', 'sciunto', 'scls19fr', 'scopatz', 'scott lasley', 'scw', 'sdementen', 'sebastien besson', 'sebp', 'seglberg', 'sentient07', 'serge chmelev', 'sergiopasra', 'serverhorror', 'seth-p', 'sfroid', 'sh9189', 'sharky93', 'shashi', 'shaunagm', 'shazeline', 'shoyer', 'shroffk', 'shughes-uk', 'shughes.uk@gmail.com', 'shuuji3', 'siggyf', 'silvia', 'silviav12', 'simleo', 'simonbiggs', 'simongibbons', 'sinhrks', 'sinisa veseli', 'sinisa veseli sveseli@anl.gov', 'sirpercival', 'sivapvarma', 'skarbat', 'skelpdar', 'skywinder', 'sluiter', 'smartsammler', 'smattis', 'smithsp', 'sn6uv', 'sneaky666', 'snoopycrimecop', 'snth', 'sohero', 'sol simpson', 'solarnz', 'solvents', 'someben', 'sontek', 'sotte', 'spenczar', 'splashdance', 'spootdev', 'springcoil', 'sptm', 'srossross', 'srstevenson', 'srx operator', 'ssanderson', 'stahlous', 'stallone1993', 'stanley, simon', 'staple', 'stas-sl', 'stefan rusu', 'stefankjartansson', 'stefanv', 'stephen horst', 'stephentu', 'stevejbrown', 'stevenmanton', 'stevesimmons', 'stonebig', 'stretch97', 'stuart wilkins', 'stuarteberg', 'stuartmarsden', 'stuntgoat', 'sue445', 'sugamasao', 'sumitsahrawat', 'sunfinite', 'surbas', 'suriyan', 'suzaku', 'sveseli', 'svisser', 'swederik', 'switham', 'sychan', 'sylm21', 'sylvain alborini', 'sylvain bellemare', 'sylvain corlay', 'sylvaincorlay', 'synesthesiam', 'sébastien fievet', 't-8ch', 't20100', 'tabchas', 'tabish chasmawala', 'takluyver', 'tamasgal', 'tanyaschlusser', 'tarzzz', 'tbekolay', 'tbittner', 'tboegi', 'td22057', 'tdimiduk', 'tea-dragon', 'techtonik', 'techwiz24', 'teh', 'telegraphic', 'teoliphant', 'termim', 'terrex', 'terrycojones', 'tespilla', 'test', 'test user', 'tfeldmann', 'tfogal', 'thatneat', 'the-compiler', 'thebitguru', 'thedrow', 'thegreatwall', 'theofanislekkas', 'thewtex', 'thisch', 'thomas kluyver', 'thomasballinger', 'thomascobb', 'thopiekar', 'thoppe', 'thouis', 'thrasibule', 'three-comrades', 'tiagoantao', 'tiagopereira', 'tigeraniya', 'tillsten', 'timcera', 'timmmooney', 'timothydmorton', 'timovwb', 'timsc', 'timshawver', 'tito', 'titsworth', 'tjdett', 'tmtabor', 'tobias oberstein', 'tobias47n9e', 'tobyhodges', 'toddrjen', 'tohin', 'tom-alcorn', 'tomaugspurger', 'tomflannaghan', 'tommy ellqvist', 'tommy3001', 'tomprimozic', 'tomspur', 'tomviner', 'tonnrueter', 'tony', 'tonysyu', 'toobaz', 'torrinos', 'touilleman', 'tpn', 'tpokorra', 'tpowellcio', 'trendelkampschroer', 'trent hauck', 'trentonoliphant', 'tritemio', 'trivedigaurav', 'tsaeger', 'tschoonj', 'tshauck', 'tshirtman', 'tswicegood', 'tswsl1989', 'ttgmichael', 'tvyomkesh', 'twmeggs', 'twoscomplement', 'tyarkoni', 'ugurthemaster', 'ulrich dobramysl', 'ulrikpedersen', 'umairidris', 'unisung', 'unknown', 'unutbu', 'userzimmermann', 'v923z', 'vagrant', 'vaibhavsagar', 'valrus', 'varunus', 'vasole', 'vbraun', 'venthur', 'vfilimonov', 'victor-rene', 'vighneshbirodkar', 'vikram bhandoh', 'villasv', 'vivek thampy', 'vjacheslav murashkin', 'vladwing', 'vladyslav frolov', 'vladzloteanu', 'vmarkovtsev', 'voen', 'vthorey', 'vuvova', 'wabu', 'wackywendell', 'waffle-iron', 'waffle-with-pears', 'warmspringwinds', 'warrenweckesser', 'watercrossing', 'wavedatalab', 'waveform80', 'wavexx', 'waynelewis', 'weathergod', 'wei xu', 'weichm', 'weitzner', 'welshjf', 'wen li', 'wenzeslaus', 'wernerfb', 'westurner', 'wholmgren', 'wilfred', 'will-moore', 'willpatera', 'wking', 'wmanley', 'wojcikstefan', 'wolever', 'woodscn', 'wooparadog', 'wosc', 'wpjunior', 'xaerxess', 'xarthisius', 'xbtsw', 'xguse', 'xiaohaoyang', 'xiaoqiangwang', 'ximenesuk', 'xolox', 'xpd operator', 'xuanyuansen', 'xwtang', 'y-p', 'yaniv256', 'yann', 'yannbrrd', 'yaph', 'yarikoptic', 'yelite', 'yieldsfalsehood', 'yjaaidi', 'yoavram', 'yograterol', 'yoramfisher', 'yotam', 'yprez', 'yrlihuan', 'ys-l', 'yugang zhang', 'yugangzhang', 'yunfei yang', 'yungyuc', 'yuvallanger', 'yw5aj', 'yyl', 'zach-hartwig', 'zachary spector', 'zachcp', 'zaharid', 'zairmubashar', 'zarch', 'zblz', 'zbrown1', 'zeb', 'zeehio', 'zen-code', 'zerosteiner', 'zetten', 'zischwartz', 'zyv', 'åsmund hjulstad']

The row labels below are somewhat misleading. Many of them come from my personal forks of stuff and not from the canonical repository. This is mostly because github wouldn't let me pull down any more information for the time being :( Apparently you can only have 500 requests per hour via their API and I exceeded that. I will update to be more accurate as time permits!


In [130]:
nonmerge_commits_by_repo.sum()


Out[130]:
arkilic          489
cowanml          264
danielballan    1617
dchabot          137
ericdill        1915
giltis           104
gjwillms          27
klauer           498
licode           542
pavoljuhas       140
sameera2004      340
stuwilkins       821
tacaswell       2305
dtype: float64

In [131]:
fig, ax = plt.subplots(figsize=(10,10))
cycle = ['y', 'c', 'k', 'm', 'r', 'white', 'gray', 'orange', 'pink', 'brown', 'violet', 'green', 'blue']
nonmerge_commits_by_repo.plot(kind='barh', stacked=True, ax=ax, color=cycle, title="Number of non-merge commits")
ax.set_xlabel('commits')
plt.show()



In [132]:
merge_commits_by_repo = {author: merge[merge.authors==author].groupby('repo').agg(len).messages for author in authors}
merge_commits_by_repo = clean_dataframe(pd.DataFrame(merge_commits_by_repo), min_contributor_commits=5, min_repo_size=5)


nsls-ii-csx has 5 repos that are being merged.
['nsls-ii-csx/caautoconfig', 'nsls-ii-csx/csxtools', 'nsls-ii-csx/libcin', 'nsls-ii-csx/undcontrol', 'nsls-ii-csx/vlspgm']

nsls-ii-hxn has 1 repos that are being merged.
['nsls-ii-hxn/pyxrf']

nsls-ii-xpd has 1 repos that are being merged.
['nsls-ii-xpd/ipython_ophyd']

nsls-ii-srx has 0 repos that are being merged.
[]

nsls-ii-ixs has 0 repos that are being merged.
[]

nsls-ii-chx has 1 repos that are being merged.
['nsls-ii-chx/chxtools']

32 repos are being combined into the "small-repos" row because they have less than 5 commits in the dataset
['arkilic/mdsbenchmark', 'cowanml/samplemanager', 'danielballan/lmfit-py', 'danielballan/mpld3', 'danielballan/pyav', 'dchabot/areadetector-1-9-1', 'ericdill/committery', 'ericdill/conda-builder', 'ericdill/diffpy.srfit', 'ericdill/diffpy.structure', 'ericdill/documentsinlabnotebooks', 'ericdill/miniature-hipster', 'ericdill/plasticsim', 'ericdill/pyrafters', 'giltis/channelarchiver', 'giltis/dotfiles', 'giltis/scikit-xray-examples', 'klauer/ppmac', 'matplotlib/sampledoc', 'nikea/benchmark_scripts', 'nikea/pyxpcs', 'nsls-ii/album', 'nsls-ii/bug-reports', 'nsls-ii/datamuxer', 'nsls-ii/dataportal', 'nsls-ii/exlog', 'nsls-ii/nsls-ii.github.io', 'nsls-ii/pyepics', 'nsls-ii/samplemanager', 'nsls-ii/suitcase', 'soft-matter/slicerator', 'synchbot/metadatastorev4']

1579 contributors are being ignored because they have less than 5 commits
['1tush', '3lnc', '4lejandrito', '=', 'aa3438', 'aashish24', 'abalkin', 'abeguerra', 'abele', 'abelopolsky', 'abergeron', 'abestanis', 'acanthostega', 'acorbe', 'adam hodgen', 'adam siembida', 'adamatus', 'adambark', 'adamfeuer', 'adamgreenhall', 'adelq', 'adeodatus', 'adgaudio', 'adrn', 'aericson', 'aevri', 'aflaxman', 'afluerasu', 'afrancais', 'agardelein', 'agijsberts', 'aglowacki', 'ahaldane', 'aheginbotham', 'ahmadia', 'ahmed', 'ahojnnes', 'aisipos', 'ajasja', 'ajdawson', 'ajgdls', 'ajholyoake', 'ajschumacher', 'akshayaurora', 'alan-fgr', 'alanhdu', 'alanjds', 'alberthilb', 'alchemyst', 'aleksandra-tarkowska', 'alemirone', 'alex', 'alexamici', 'alexbrc', 'alexei colin', 'alexeyum', 'alexsavio', 'alexwh', 'alimanfoo', 'alimuldal', 'alishir', 'allendowney', 'almarklein', 'alorenzo175', 'ambakshi', 'amcdawes', 'amelio-vazquez-reina', 'aminb', 'amormachine', 'amueller', 'amyteegarden', 'ananelson', 'andershogqvist', 'andreas-h', 'andreaswallner', 'andrei zbikowski', 'andrenarchy', 'andrew burrows', 'andrew nelson', 'andrewjesaitis', 'andrewkittredge', 'androomerrill', 'andyfaff', 'anishathalye', 'anjohnson', 'ankit-maverick', 'ankostis', 'anntzer', 'anomrake', 'anthonyalmarza', 'anton-d', 'anykraus', 'apelisse', 'apiszcz', 'argriffing', 'ariejdl', 'arlowhite', 'arnaudf-iter', 'aron-bordin', 'artagnon', 'artemy kolchinsky', 'artemyk', 'arunpersaud', 'arve0', 'aseyboldt', 'asmacdo', 'asmeurer', 'asobrien', 'asottile', 'aspidites', 'astrofrog', 'aszilagyi', 'atemysemicolon', 'audreyr', 'azd325', 'azixmcaze', 'azjps', 'b3ni', 'bald', 'balkian', 'barentsen', 'basharovv', 'basheersubei', 'bavardage', 'bburan-galenea', 'bdowling', 'behzadnouri', 'belltailjp', 'beltashazzer', 'bemclaugh', 'ben schiller', 'benabik', 'benjamin root', 'benjaminabel', 'benjaminaschultz', 'benjaminmgross', 'benjwadams', 'benmarwick', 'bennlich', 'benoitpointet', 'beregond', 'bergtholdt', 'berryma4', 'bfredl', 'bgamari', 'bgruening', 'bhill-slac', 'billletson', 'billyshambrook', 'bionoid', 'birdsarah', 'bitdeli-chef', 'bjacobowski', 'bjanssen', 'bjcohen', 'bjodah', 'bjonen', 'bjornarneson', 'bkreider', 'blazej pindelski', 'blebo', 'blink1073', 'blippy', 'blowekamp', 'bluescarni', 'bmcage', 'bmcorser', 'bmistree', 'bocribbz', 'bokehserver', 'bollwyvl', 'boonsnaibot', 'borisverk', 'bouk', 'bountysource-support', 'bquistorff', 'bramalingam', 'brendanlong', 'brett patterson', 'brettcannon', 'brettrmurphy', 'briandrawert', 'brianhelba', 'briannewsom', 'broessli', 'brousch', 'brunobeltran', 'brunoseivam', 'bryan van de ven', 'bryevdv', 'bsvh', 'bthyreau', 'bubenkoff', 'buchuki', 'bulli92', 'burrowsa', 'buzmakov', 'bwignall', 'bwkeller', 'byronyi', 'bytbox', 'c05mic', 'cadair', 'caleb epstein', 'camdavidsonpilon', 'cammil', 'campagnola', 'canavandl', 'cancan101', 'capitanbatata', 'captainwhippet', 'carandraug', 'carlfk', 'carreau', 'carterbox', 'caryan', 'casolt', 'caspervdw', 'catstyle', 'cayci', 'cbahr', 'cbenhagen', 'cbrueffer', 'ccordoba12', 'cdeil', 'cekees', 'cel4', 'celiafish', 'certik', 'cestdiego', 'cgardn', 'cgestes', 'cgilling', 'cgohlke', 'chadawagner', 'chadfulton', 'chaosphere2112', 'chapmanb', 'chappers', 'charris', 'chatcannon', 'chdoig', 'chebee7i', 'chenz', 'chinasaur', 'choffmann', 'chozabu', 'chris-allan', 'chris-roerig', 'chrisbeaumont', 'christian@christian-linux.sarrazin.local', 'christianbrodbeck', 'christopher whelan', 'chrisvam', 'chronitis', 'chuck', 'chx', 'chx operator', 'cimarronm', 'cj-wright', 'cjdrake', 'ckald', 'clarkfitzg', 'claymation', 'claytonpassmore', 'clham', 'cloudbees dev@cloud', 'cneves', 'coderforlife', 'colin blackburn', 'colin fang', 'commonlisp', 'compassym', 'connie', 'corydolphin', 'cowlicks', 'cpcloud', 'cpommranz', 'crazym', 'crbates', 'creamycookie', 'cristal', 'crwilcox', 'csachs', 'csivanich', 'cstoafer', 'csx-1 operator', 'ctokheim', 'curiale', 'curufinwe', 'curzona', 'cuuuurzel', 'cwebster2', 'cxmcc', 'cynddl', 'czarneckid', 'czheo', 'daetalus', 'dagss', 'dakefeng', 'dakoop', 'dalejung', 'damianavila', 'damoxc', 'dan-blanchard', 'danbirken', 'danclewley', 'dangra', 'danhickstein', 'daniel hahler', 'danielwe', 'dapid', 'daradib', 'dareonion', 'data-exchange', 'davclark', 'davehunt', 'david anderson', 'david bew', 'david kaplan', 'david@mcbf.net', 'davidastephens', 'davidbord', 'davidljung', 'davidnt', 'davidovitch', 'davidshinn', 'davidszotten', 'davidwilemski', 'dawehner', 'daydreamt', 'dbarbeau', 'dbew', 'ddale', 'decarlof', 'deeplook', 'dejande', 'delcypher', 'demotu', 'denys-duchier', 'dequis', 'derdon', 'derekstavis', 'derickl', 'dessant', 'dexterdev', 'dgursoy', 'dhickin', 'dhirschfeld', 'dhruv13j', 'diego0020', 'dirk-thomas', 'dirkjot', 'dirn', 'dizzydogg', 'dj gilcrease', 'djarecka', 'djvine', 'dkua', 'dlax', 'dloss', 'dlovell', 'dmcdougall', 'dmpelt', 'doga gursoy', 'dominikl', 'domitto', 'domspad', 'donaldseo', 'dongweiming', 'donkirkby', 'donnemartin', 'dopplershift', 'doraf', 'dorandeluz', 'doublereedkurt', 'douglas rudd', 'dpwrussell', 'dragonsa', 'drevicko', 'drothlis', 'dsblank', 'dsm054', 'duncanmmacleod', 'dupuy', 'dustin farris', 'dvreed77', 'dwf', 'dwillmer', 'dxshank', 'e-q', 'ebenolson', 'echatelet', 'edisongustavo', 'edwarrick', 'efiring', 'eglassman', 'ehrenfeu', 'ekimekim', 'eldeveloper', 'electronwill', 'elephanter', 'eli-b', 'ellisonbg', 'elpres', 'elubeck', 'emanuele', 'emanuele-f', 'embray', 'emikulic', 'emilienschultz', 'emilroz', 'emmanuelle', 'encukou', 'endolith', 'epanepucci', 'epics', 'epifanio', 'er0', 'eric dill', 'eric l frederich', 'eric ma', 'eric siegerman', 'eric89gxl', 'ericfrederich', 'ericmjl', 'eriknw', 'eschuhmacher', 'esparta', 'eteq', 'etgalloway', 'eugen beck', 'eugene yurtsev', 'ev-br', 'evgeni burovski', 'ewh', 'ewmoore', 'fabio zanini', 'fabioz', 'fahhem', 'falcondai', 'famousgarkin', 'fardal', 'fariza', 'fastccduser', 'fat-crocodile', 'fayimora', 'fcolas', 'felipe contreras', 'felipec', 'felixlawrence', 'feralbytes', 'ffteja', 'fgz73762', 'filmor', 'fingolfin', 'fisadev', 'flamingbear', 'flazz', 'florianrhiem', 'flothesof', 'flub', 'flying-sheep', 'fmaussion', 'fmmb', 'fonnesbeck', 'foogod', 'foogunlana', 'foxx', 'fperez', 'fpliger', 'fraglegs', 'francis lavoie', 'francisco-dlp', 'frank battaglia', 'frank mata', 'françois boulogne', 'frederikhermans', 'frenchwr', 'frewsxcv', 'fridh', 'frédéric-emmanuel picca', 'fscz', 'fulmicoton', 'fumiya-kubota', 'futrell', 'fvgoto', 'fvia', 'fycyang', 'ga7g08', 'gabraganca', 'gandalf013', 'garcia-marc', 'garrett berg', 'garrett-r', 'garrison', 'gary ruben', 'gatagat', 'gbaty', 'gbillotey', 'gdraps', 'gdv', 'gene-telligent', 'geoffrey french', 'gepcel', 'germangh', 'gerrrr', 'gertingold', 'ggoret', 'gibiansky', 'gilbertw', 'giles knap', 'gilesknap', 'gitaarik', 'gitster', 'gitter-badger', 'gjwillms', 'gkovacs', 'glenlovett', 'gluap', 'glyg', 'gm2211', 'gmarkall', 'godber', 'goodbest', 'gouarin', 'gouthambs', 'gporras', 'gpoulin', 'graingert', 'grdlok', 'grechkay', 'gregcaporaso', 'grelston', 'grlee77', 'groutr', 'gruen', 'grzegorz rygielski', 'gstoel', 'gtrivedi', 'guillempalou', 'guobao shen', 'gustavla', 'gutworth', 'guziy', 'habi', 'hadim', 'hakanardo', 'hallfox', 'hamogu', 'hans dembinski', 'has2k1', 'havoc-io', 'hawkerpl', 'hayd', 'he1per', 'helderc', 'helenst', 'helger', 'helper', 'henry hammond', 'henryoswald', 'heoj', 'herr-biber', 'hfaran', 'hflynn', 'hhuuggoo', 'hiaselhans', 'hickford', 'hildensia', 'hkleynhans', 'hmeine', 'holgerpeters', 'horta', 'horvatha', 'hpk42', 'hshimizu77', 'hsperr', 'htkm', 'hugadams', 'hugo', 'hugo shi', 'huitseeker', 'hunse', 'hunterowens', 'huyston', 'hxn operator', 'ianthomas23', 'iauns', 'ibell', 'icemac', 'iffy', 'ifosch', 'ihuston', 'ikajic', 'ikeviny', 'ilanschnell', 'iled', 'ilonajulczuk', 'iltis', 'imichka', 'immerrr', 'inclement', 'inducer', 'insertroar', 'invalid-email-address', 'ionel cristian mărieș', 'ionelmc', 'irritum', 'ischwabacher', 'isms', 'itziakos', 'ivanov', 'ivoflipse', 'iwschris', 'ixjlyons', 'ixs operator', 'izaid', 'j08lue', 'jabrnthy', 'jacobcvt12', 'jacobschaer', 'jacopo', 'jaidevd', 'jaime a farrington', 'jaimefrio', 'jake vanderplas', 'jakevdp', 'jakirkham', 'jakobgager', 'james pallister', 'james townley', 'jamestwebber', 'jammcc', 'janbednarik', 'janschulz', 'jaredly', 'jaschau', 'jasongrout', 'jasonliw93', 'jasonxxu', 'jatin', 'jaydyou', 'jayp16', 'jballanc', 'jbbrokaw', 'jbmohler', 'jbradish', 'jburel', 'jcb91', 'jcfr', 'jcftang', 'jchome', 'jcjaskula', 'jclevesque', 'jd', 'jdavidheiser', 'jdeblese', 'jdemeyer', 'jdfreder', 'jdimatteo', 'jdreaver', 'jdwarner', 'jean-marie burel', 'jedbrown', 'jeden', 'jeff kreis', 'jeff reback', 'jeffpaine', 'jeffreystarr', 'jeffspies', 'jeffwidman', 'jegger', 'jennystone', 'jenshnielsen', 'jeremyfix', 'jerrysxu', 'jesseengel', 'jessefarnham', 'jetuk', 'jf---', 'jfarrington', 'jfrazelle', 'jgarcke', 'jgbos', 'jgomezdans', 'jgoppert', 'jgors', 'jgoutin', 'jhamrick', 'jheinen', 'jhemmelg', 'jhull', 'jianli', 'jightuse', 'jikkujose', 'jimmy tang', 'jimmyshen', 'jinweiclarkchao', 'jjhelmus', 'jklymak', 'jkseppan', 'jleinonen', 'jlmuir', 'jlutgen', 'jluttine', 'jmcnamara', 'jmeppley', 'jmetz', 'jminardi', 'jmorris0x0', 'jnevrly', 'jni', 'jnmclarty', 'jnothman', 'jnovinger', 'joel bernier', 'joel v. bernier', 'joelfrederico', 'joelhullcio', 'joelvbernier', 'joergdietrich', 'joergrittinger', 'joferkington', 'johannesring', 'john lund', 'johnyf', 'jojje', 'jonasc', 'jonathan prates', 'jorisvandenbossche', 'josephcottam', 'josh warner', 'joshmoore', 'jowr', 'jpallen', 'jphammonds', 'jpvanhal', 'jqmp', 'jreback', 'jrevans', 'jreynolds01', 'jrjohansson', 'jsarver', 'jschueller', 'jseabold', 'jsexauer', 'jshirley', 'jskinner53', 'jsullivan-anl', 'jswhit', 'jtatum', 'jtorcasso', 'jtratner', 'jtyberg', 'jucoste', 'juhasch', 'juliancienfuegos', 'juliantaylor', 'jurko-gospodnetic', 'jvkersch', 'jvns', 'jwass', 'jxstanford', 'jzuhone', 'jzwinck', 'jérémy riviere', 'k lauer', 'k4rtik', 'kajiglet', 'kalibri', 'kambysese', 'kamil kwiek (irritum)', 'kangol', 'kastnerkyle', 'katie atkinson', 'katyhuff', 'kdavies4', 'kdiether', 'kdmurray91', 'kdodia', 'keenanlang', 'keith brister', 'kelsiegr', 'kelsolaar', 'kenneth lauer', 'kennethgillen', 'kermit666', 'kersulis', 'kestertong', "kevin ndung'u", 'kevin sheppard', 'kevin-keraudren', 'kevinaloys', 'kevincox', 'kevinrknox', 'kevkeating', 'khchan', 'khinsen', 'khyox', 'kieffer jerome', 'kif', 'kikocorreoso', 'kimmo palin', 'kirill pavlov', 'kived', 'kivy', 'kjordahl', 'klickverbot', 'klonuo', 'kloper', 'kmike', 'kmpeters', 'knabar', 'knappador', 'koldunovn', 'kolibreee', 'komnomnomnom', 'konishchevdmitry', 'konrad', 'konstantint', 'korijn', 'korniichuk', 'kovak', 'kpetersn', 'kpk09', 'krastanov', 'ksolan', 'kthyng', 'kyleam', 'lanewittgen', 'larrybradley', 'larsmans', 'laurent', 'lauritzthaulow', 'lcanavan', 'lebigot', 'ledmonster', 'lee kamentsky', 'leekamentsky', 'leeonadoh', 'lennart0901', 'leouieda', 'lepture', 'lesteve', 'lexicalunit', 'lexqt', 'lexual', 'lhelontra', 'li li', 'liambuchanan', 'lichri12', 'lidavidm', 'lidstrom83', 'lig', 'lila hickey', 'lilahickey', 'lili@bnl.gov', 'lilmatt', 'limtaesu', 'linkid', 'lkilcher', 'llimllib', 'lobocv', 'logicaldash', 'loujine', 'lpsinger', 'lqez', 'lschr', 'lucalianas', 'lucas-c', 'lucasb-eyer', 'luisibanez', 'luispedro', 'lukebarnard1', 'lunson', 'lvasseur', 'm-kuhn', 'm45t3r', 'm4urice', 'maarten', 'macduff111', 'macropas', 'madprime', 'magcius', 'maggie-m', 'magnunor', 'mahmoud', 'mairas', 'majidaldo', 'malaterre', 'malev', 'malitsky', 'mangecoeur', 'manics', 'manuelriel', 'marcmolla', 'marcua', 'marisuz obajtek', 'mark rivers', 'markmuetz', 'markreidvfx', 'markrivers', 'markrwilliams', 'markusr815', 'martinthoma', 'marty kraimer', 'martynsmith', 'mastermind2k', 'masud rahman', 'matejak', 'mateusz paprocki', 'matham', 'mathieu drapeau', 'mathieu duponchelle', 'mathieu1', 'matplotlibtravisbot', 'matsjoyce', 'matt newville', 'matt-climate', 'matt-li', 'matthew craig', 'matthew-brett', 'matthewgilbert', 'matthewturk', 'matthieucan', 'matthieudartiailh', 'mattpap', 'mattvonrocketstein', 'matze', 'mawesi', 'maxalbert', 'maxchang', 'maxgrenderjones', 'maximbaz', 'maximilian albert', 'mazieres', 'mbalasso', 'mbyt', 'mcjcode', 'mcsalgado', 'mcwitt', 'mdavidsaver', 'mdboom', 'mdebbar', 'mdehoon', 'mdengler', 'mdipierro', 'mdmoo1978', 'mdmueller', 'mechcoder', 'megies', 'mehdimu', 'melissalinkert', 'melund', 'merriam', 'mfitzp', 'mfkaptan', 'mgaitan', 'mgiuca-google', 'mgymrek', 'mhagdorn', 'michael droettboom', 'michaelaye', 'michaelws', 'michal romaniuk', 'michiel de hoon', 'michs', 'mihaineacsu', 'mikebailey', 'mikeboers', 'miketkelly', 'mikhail terekhov', 'mikhailmoshnogorsky', 'milljm', 'min rk', 'minad', 'mineo', 'minrk', 'mirandaxm', 'mistakevin', 'mjn19172', 'mjsu', 'mjuric', 'mkassner', 'mmckerns', 'mmcky', 'mohanraj-r', 'montefra', 'mooney', 'moonshoes87', 'morley93', 'mortada', 'mp49', 'mpastell', 'mpesavento', 'mpyrozhok', 'mrigal', 'mrkrd', 'mrleeh', 'mrngilles', 'mrocklin', 'mromberg', 'mrussell', 'msabramo', 'msarahan', 'mscross', 'mspacek', 'mssurajkaiga', 'mtbc', 'mtrbean', 'mtskelton', 'mutirri', 'mwaskom', 'mwcraig', 'mwiebe', 'mwpearson', 'myshen', 'nanopos', 'nathan heijermans', 'nathantypanski', 'nbarray', 'ncornette', 'ndevenish', 'necronomicron', 'neerajgangwar', 'neggert', 'neirbowj', 'nellev', 'nelson brown', 'nesanders', 'neuroserpens', 'nevion', 'newville', 'ngoldbaum', 'nh2', 'nhmc', 'niallrobinson', 'nicholasrees', 'nickystringer', 'nicoddemus', 'nicodelpiano', 'nicolaisi', 'nicolas delaby', 'nicolasdespres', 'nikhil s', 'nikolausdemmel', 'niole', 'nipunreddevil', 'nitind', 'nixon-', 'njsmith', 'njwilson23', 'nkeim', 'nkoep', 'nleite', 'nloadholtes', 'nlsn', 'noirbizarre', 'nonhermitian', 'normaljosh', 'notsimon', 'npr78', 'nsonnad', 'nspies', 'nwin', 'nzjrs', 'oarodriguez', 'oceanwolf', 'ocefpaf', 'ochubar', 'oddodood', 'odewahn', 'odiogosilva', 'ogrisel', 'ohaz', 'oirled', 'ojake', 'ojdo', 'okin', 'olgabot', 'oliver marks', 'oliverw1', 'olivierlefloch', 'olymk2', 'omer katz', 'onceuponatimeforever', 'onesandzeroes', 'opoplawski', 'osadalakmal', 'oselivanov', 'ostralopi-tk', 'otepoti', 'otizonaizit', 'ovillellas', 'ovz', 'ozak', 'pabs3', 'paddymul', 'pallav-fdsi', 'pankajp', 'papaloizouc', 'parente', 'parfenovs', 'parleur', 'pashadia', 'pasky', 'patchen', 'patricksnape', 'patricktokeeffe', 'paul g', 'paulvanschayck', 'pavol juhas', 'payel bandyopadhyay', 'payne92', 'pbanaszkiewicz', 'pberkes', 'pbrady', 'pbrod', 'pelme', 'pelson', 'per parker', 'per rosengren', 'perimosocordiae', 'pete leicester', 'petebachant', 'peter roesch', 'peter1000', 'peterruppel', 'petters', 'pfctdayelise', 'pfontana3w2', 'pganssle', 'phaebz', 'philfreo', 'phillipnordwall', 'phobson', 'picca', 'picca frédéric-emmanuel', 'picibucor', 'piem', 'pierre gerold', 'pierre-haessig', 'pieterproigia', 'pigmej', 'pipping', 'pitrou', 'pkeus', 'pmneila', 'pmpppeters1', 'polyrabbit', 'porterjamesj', 'pradal', 'pratapvardhan', 'prjemian', 'pstjohn', 'ptone', 'punya', 'pupssman', 'pv', 'pwcazenave', 'pwuertz', 'pxsys', 'pxuser', 'pydanny', 'pytry', 'pzwang', 'qidane', 'quackingduck', 'quaquel', 'quasiben', 'qulogic', 'qwhelan', 'r-b-g-b', 'r3vl1s', 'ra-dim', 'radarhere', 'radek-senfeld', 'radioxoma', 'ragetrue', 'rahiel', 'rainbowdesign', 'rainwoodman', 'ralphlange', 'rasbt', 'rastogiachyut', 'rawlik', 'razius', 'rbonvall', 'rcarneva', 'reallistic', 'rebeccaroisin', 'rebeccawperry', 'regdoug', 'rekom', 'remram44', 'renaud', 'renzobertocchi', 'rexissimus', 'rgbkrk', 'rgommers', 'rhattersley', 'rhiever', 'richard larkin', 'richardandersson', 'richardeverson', 'richardhansen', 'richardtsai', 'richkinder', 'rickkwa', 'rivers', 'rleigh-codelibre', 'rleigh-dundee', 'rma4ok', 'rmcgibbo', 'rnelsonchem', 'roadhead', 'robbieclarken', 'robertdavidwest', 'robertmaynard', 'robertour', 'robfalck', 'robind42', 'roblevy', 'rochacbruno', 'rockg', 'roehrig', 'roger leigh', 'rollcat', 'romanpekar', 'ronaldomercado', 'ronaldvanrij', 'ronnypfannschmidt', 'root', 'rosnfeld', 'rossant', 'rothnic', 'rouge8', 'rougier', 'rozza', 'rpetchler', 'rsmith31415', 'rsnape', 'rtrwalker', 'rudis', 'rupertthompson', 'russellluo', 'rutgerk', 'rutsky', 'rwest', 'ryanbelt', 's9w', 'sagivmalihi', 'sahat', 'salvatorescaramuzzino', 'sam brotherton', 'samstav', 'samureus', 'sangheestyle', 'saraschnadt', 'sargas', 'sbesson', 'sbodomerle', 'sbrother', 'scavone', 'sccolbert', 'schaunwheeler', 'schettino72', 'schiewe', 'schlamar', 'schwing', 'sciunto', 'scls19fr', 'scopatz', 'scott lasley', 'scw', 'sdementen', 'sebastien besson', 'sebp', 'seglberg', 'sentient07', 'serge chmelev', 'sergiopasra', 'serverhorror', 'seth-p', 'sfroid', 'sh9189', 'sharky93', 'shashi', 'shaunagm', 'shazeline', 'shoyer', 'shroffk', 'shughes-uk', 'shughes.uk@gmail.com', 'shuuji3', 'siggyf', 'silvia', 'silviav12', 'simleo', 'simonbiggs', 'simongibbons', 'sinhrks', 'sinisa veseli', 'sinisa veseli sveseli@anl.gov', 'sirpercival', 'sivapvarma', 'skarbat', 'skelpdar', 'skywinder', 'sluiter', 'smartsammler', 'smattis', 'smithsp', 'sn6uv', 'sneaky666', 'snoopycrimecop', 'snth', 'sohero', 'sol simpson', 'solarnz', 'solvents', 'someben', 'sontek', 'sotte', 'spenczar', 'splashdance', 'spootdev', 'springcoil', 'sptm', 'srossross', 'srstevenson', 'srx operator', 'ssanderson', 'stahlous', 'stallone1993', 'stanley, simon', 'staple', 'stas-sl', 'stefan rusu', 'stefankjartansson', 'stefanv', 'stephen horst', 'stephentu', 'stevejbrown', 'stevenmanton', 'stevesimmons', 'stonebig', 'stretch97', 'stuart wilkins', 'stuarteberg', 'stuartmarsden', 'stuntgoat', 'sue445', 'sugamasao', 'sumitsahrawat', 'sunfinite', 'surbas', 'suriyan', 'suzaku', 'sveseli', 'svisser', 'swederik', 'switham', 'sychan', 'sylm21', 'sylvain alborini', 'sylvain bellemare', 'sylvain corlay', 'sylvaincorlay', 'synesthesiam', 'sébastien fievet', 't-8ch', 't20100', 'tabchas', 'tabish chasmawala', 'takluyver', 'tamasgal', 'tanyaschlusser', 'tarzzz', 'tbekolay', 'tbittner', 'tboegi', 'td22057', 'tdimiduk', 'tea-dragon', 'techtonik', 'techwiz24', 'teh', 'telegraphic', 'teoliphant', 'termim', 'terrex', 'terrycojones', 'tespilla', 'test', 'test user', 'tfeldmann', 'tfogal', 'thatneat', 'the-compiler', 'thebitguru', 'thedrow', 'thegreatwall', 'theofanislekkas', 'thewtex', 'thisch', 'thomas kluyver', 'thomasballinger', 'thomascobb', 'thopiekar', 'thoppe', 'thouis', 'thrasibule', 'three-comrades', 'tiagoantao', 'tiagopereira', 'tigeraniya', 'tillsten', 'timcera', 'timmmooney', 'timothydmorton', 'timovwb', 'timsc', 'timshawver', 'tito', 'titsworth', 'tjdett', 'tmtabor', 'tobias oberstein', 'tobias47n9e', 'tobyhodges', 'toddrjen', 'tohin', 'tom-alcorn', 'tomaugspurger', 'tomflannaghan', 'tommy ellqvist', 'tommy3001', 'tomprimozic', 'tomspur', 'tomviner', 'tonnrueter', 'tony', 'tonysyu', 'toobaz', 'torrinos', 'touilleman', 'tpn', 'tpokorra', 'tpowellcio', 'trendelkampschroer', 'trent hauck', 'trentonoliphant', 'tritemio', 'trivedigaurav', 'tsaeger', 'tschoonj', 'tshauck', 'tshirtman', 'tswicegood', 'tswsl1989', 'ttgmichael', 'tvyomkesh', 'twmeggs', 'twoscomplement', 'tyarkoni', 'ugurthemaster', 'ulrich dobramysl', 'ulrikpedersen', 'umairidris', 'unisung', 'unknown', 'unutbu', 'userzimmermann', 'v923z', 'vagrant', 'vaibhavsagar', 'valrus', 'varunus', 'vasole', 'vbraun', 'venthur', 'vfilimonov', 'victor-rene', 'vighneshbirodkar', 'vikram bhandoh', 'villasv', 'vivek thampy', 'vjacheslav murashkin', 'vladwing', 'vladyslav frolov', 'vladzloteanu', 'vmarkovtsev', 'voen', 'vthorey', 'vuvova', 'wabu', 'wackywendell', 'waffle-iron', 'waffle-with-pears', 'warmspringwinds', 'warrenweckesser', 'watercrossing', 'wavedatalab', 'waveform80', 'wavexx', 'waynelewis', 'weathergod', 'wei xu', 'weichm', 'weitzner', 'welshjf', 'wen li', 'wenzeslaus', 'wernerfb', 'westurner', 'wholmgren', 'wilfred', 'will-moore', 'willpatera', 'wking', 'wmanley', 'wojcikstefan', 'wolever', 'woodscn', 'wooparadog', 'wosc', 'wpjunior', 'xaerxess', 'xarthisius', 'xbtsw', 'xguse', 'xiaohaoyang', 'xiaoqiangwang', 'ximenesuk', 'xolox', 'xpd operator', 'xuanyuansen', 'xwtang', 'y-p', 'yaniv256', 'yann', 'yannbrrd', 'yaph', 'yarikoptic', 'yelite', 'yieldsfalsehood', 'yjaaidi', 'yoavram', 'yograterol', 'yoramfisher', 'yotam', 'yprez', 'yrlihuan', 'ys-l', 'yugang zhang', 'yugangzhang', 'yunfei yang', 'yungyuc', 'yuvallanger', 'yw5aj', 'yyl', 'zach-hartwig', 'zachary spector', 'zachcp', 'zaharid', 'zairmubashar', 'zarch', 'zblz', 'zbrown1', 'zeb', 'zeehio', 'zen-code', 'zerosteiner', 'zetten', 'zischwartz', 'zyv', 'åsmund hjulstad']

The row labels below are somewhat misleading. Many of them come from my personal forks of stuff and not from the canonical repository. This is mostly because github wouldn't let me pull down any more information for the time being :( Apparently you can only have 500 requests per hour via their API and I exceeded that. I will update to be more accurate as time permits!


In [ ]:


In [133]:
fig, ax = plt.subplots(figsize=(10,10))
cycle = ['y', 'c', 'k', 'm', 'r', 'white', 'gray', 'orange', 'pink', 'brown', 'violet', 'blue', 'green']
merge_commits_by_repo.plot(kind='barh', stacked=True, ax=ax, color=cycle, title="Number of merge commits")
ax.set_xlabel('commits')
plt.show()



In [134]:
merge_commits_by_repo.sum()


Out[134]:
arkilic           40
cowanml           27
danielballan     401
dchabot           23
ericdill         252
giltis            22
klauer            23
licode            49
pavoljuhas         5
sameera2004       30
stuwilkins        82
tacaswell       1120
dtype: float64

In [135]:
merge_commits_by_repo


Out[135]:
arkilic cowanml danielballan dchabot ericdill giltis klauer licode pavoljuhas sameera2004 stuwilkins tacaswell
repo
areadetector/adfastccd NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN 6 NaN
cowanml/lsdc NaN 18 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
cowanml/samplemangler NaN 6 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
ericdill/ramdog NaN NaN NaN NaN 6 NaN NaN NaN NaN NaN NaN NaN
giltis/userpackages NaN NaN NaN NaN 7 NaN NaN NaN NaN NaN NaN 4
matplotlib/cycler NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN 5
matplotlib/matplotlib NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN 689
nikea/history NaN NaN 6 NaN NaN NaN NaN NaN NaN NaN NaN 4
nikea/vttools NaN NaN 1 NaN 12 4 NaN 4 NaN 5 NaN 17
nikea/xray-vision NaN NaN 1 NaN 24 NaN NaN 1 NaN 7 NaN 17
nsls-ii/bluesky NaN NaN 67 2 11 NaN 4 NaN NaN NaN NaN 45
nsls-ii/brokerstreamserver 5 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN 1
nsls-ii/conda-prescriptions NaN NaN 12 1 13 NaN NaN NaN NaN NaN 16 26
nsls-ii/databroker 1 NaN 41 NaN 63 NaN NaN 1 NaN NaN NaN 63
nsls-ii/docs NaN NaN 13 NaN 4 NaN NaN NaN NaN NaN 3 10
nsls-ii/filestore 4 NaN 21 NaN 5 NaN NaN NaN NaN NaN NaN 18
nsls-ii/metadatastore 15 NaN 22 NaN 17 NaN NaN NaN NaN NaN NaN 33
nsls-ii/ophyd 1 NaN 8 19 NaN NaN 17 NaN NaN NaN 17 14
nsls-ii/pyolog NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN 8 NaN
nsls-ii/replay NaN NaN 1 NaN 6 NaN NaN 1 NaN NaN NaN 2
scikit-xray/scikit-xray NaN NaN 11 NaN 66 15 NaN 14 NaN 12 NaN 79
scikit-xray/scikit-xray-examples NaN NaN 5 NaN 8 NaN NaN NaN NaN 6 NaN 6
soft-matter/mr NaN NaN 13 NaN NaN NaN NaN NaN NaN NaN NaN NaN
soft-matter/pims NaN NaN 48 NaN NaN NaN NaN NaN NaN NaN NaN 51
soft-matter/trackpy NaN NaN 109 NaN NaN NaN NaN NaN NaN NaN NaN 26
soft-matter/trackpy-examples NaN NaN 10 NaN NaN NaN NaN NaN NaN NaN NaN 2
synchbot/metadataservice 5 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
chx specific repos NaN NaN 1 NaN NaN NaN NaN NaN NaN NaN NaN NaN
csx specific repos NaN NaN NaN NaN 1 NaN NaN NaN NaN NaN 32 NaN
hxn specific repos NaN NaN NaN NaN NaN NaN NaN 28 NaN NaN NaN NaN
ixs specific repos 0 0 0 0 0 0 0 0 0 0 0 0
srx specific repos 0 0 0 0 0 0 0 0 0 0 0 0
xpd specific repos NaN NaN NaN NaN NaN NaN NaN NaN 1 NaN NaN NaN
small-repos 9 3 11 1 9 3 2 NaN 4 NaN NaN 8

In [ ]: