dom96 / nimbuild

Nim's build farm
http://build.nim-lang.org
12 stars 3 forks source link

Odd issues with large JSON from github #15

Open dom96 opened 10 years ago

dom96 commented 10 years ago
Traceback (most recent call last)
website.nim(1186)        website
asyncio.nim(631)         poll
asyncio.nim(212)         asyncSockHandleRead
website.nim(143)         :anonymous
website.nim(664)         handleModuleMsg
website.nim(498)         parseMessage
SIGSEGV: Illegal storage access. (Attempt to read from nil?)

Github module output:

eas Rumpf","email":"rumpf_a@web.de","username":"Araq"},"committer":{"name":"Andr
eas Rumpf","email":"rumpf_a@web.de","username":"Araq"},"added":["bin/empty.txt",
"build/empty.txt","tests/misc/99bottles.nim","tests/misc/minit.nim","tests/misc/
mvarious.nim","tests/misc/t99bott.nim","tests/misc/tack.nim","tests/misc/tatomic
.nim","tests/misc/tbug511622.nim","tests/misc/tcmdline.nim","tests/misc/tcolonis
proc.nim","tests/misc/tdllvar.nim","tests/misc/temit.nim","tests/misc/temptyecho
.nim","tests/misc/tendian.nim","tests/misc/teventemitter.nim","tests/misc/tevent
s.nim","tests/misc/tfib.nim","tests/misc/tfilter.nim","tests/misc/tgenconstraint
s.nim","tests/misc/tgetstartmilsecs.nim","tests/misc/tgtk.nim","tests/misc/thall
o.nim","tests/misc/theaproots.nim","tests/misc/thintoff.nim","tests/misc/tinc.ni
m","tests/misc/tinit.nim","tests/misc/tinout.nim","tests/misc/tints.nim","tests/
misc/tinvalidarrayaccess.nim","tests/misc/tinvalidnewseq.nim","tests/misc/tlastm
od.nim","tests/misc/tlibs.nim","tests/misc/tlocals.nim","tests/misc/tloops.nim",
"tests/misc/tmandelbrot.nim","tests/misc/tmemoization.nim","tests/misc/tmissingn
ilcheck.nim","tests/misc/tnew.nim","tests/misc/tnewderef.nim","tests/misc/tnewli
bs.nim","tests/misc/tnewsets.nim","tests/misc/tnewuns.nim","tests/misc/tnoforwar
d.nim","tests/misc/tnoinst.nim","tests/misc/tnolen.nim","tests/misc/tnoop.nim","
tests/misc/tnot.nim","tests/misc/tparedef.nim","tests/misc/tpos.nim","tests/misc
/tprep.nim","tests/misc/tquicksort.nim","tests/misc/tradix.nim","tests/misc/traw
str.nim","tests/misc/treadln.nim","tests/misc/treadx.nim","tests/misc/tromans.ni
m","tests/misc/tshadow_magic_type.nim","tests/misc/tsimplesort.nim","tests/misc/
tsimtych.nim","tests/misc/tsizeof.nim","tests/misc/tslices.nim","tests/misc/tsor
tdev.nim","tests/misc/tstrace.nim","tests/misc/tstrange.nim","tests/misc/tstrdes
c.nim","tests/misc/tstrdist.nim","tests/misc/tvarious.nim","tests/misc/tvarious1
.nim","tests/misc/tvarnums.nim"],"removed":[],"modified":["lib/system.nim"]},{"i
d":"8b82004359b8d852fa0107d79cc78b21eb35c028","distinct":false,"message":"delete
d & purged dlls","timestamp":"2014-04-09T18:17:42-05:00","url":"https://github.c
om/Araq/Nimrod/commit/8b82004359b8d852fa0107d79cc78b21eb35c028","author":{"name"
:"Simon Hafner","email":"hafnersimon@gmail.com","username":"reactormonk"},"commi
tter":{"name":"Simon Hafner","email":"hafnersimon@gmail.com","username":"reactor
monk"},"added":[],"removed":[],"modified":[]},{"id":"dcfc7a8896166563f6fd80fbab8
1bc50e0b5a217","distinct":true,"message":"resolved conflict","timestamp":"2014-0
4-10T01:47:20+02:00","url":"https://github.com/Araq/Nimrod/commit/dcfc7a88961665
63f6fd80fbab81bc50e0b5a217","author":{"name":"Andreas Rumpf","email":"ar@kimeta.
de"},"committer":{"name":"Andreas Rumpf","email":"ar@kimeta.de"},"added":["bin/e
mpty.txt","build/empty.txt","compiler/c2nim/tests/vincent.c","compiler/c2nim/tes
ts/vincent.h","compiler/canonicalizer.nim","compiler/lowerings.nim","compiler/se
mmacrosanity.nim"],"removed":[],"modified":["compiler/aliases.nim","compiler/ast
.nim","compiler/astalgo.nim","compiler/babelcmd.nim","compiler/bitsets.nim","com
piler/c2nim/c2nim.nim","compiler/c2nim/clex.nim","compiler/c2nim/cparse.nim","co
mpiler/c2nim/cpp.nim","compiler/ccgcalls.nim","compiler/ccgexprs.nim","compiler/
ccgmerge.nim","compiler/ccgstmts.nim","compiler/ccgthreadvars.nim","compiler/ccg
trav.nim","compiler/ccgtypes.nim","compiler/ccgutils.nim","compiler/cgen.nim","c
ompiler/cgendata.nim","compiler/cgmeth.nim","compiler/commands.nim","compiler/co
ndsyms.nim","compiler/crc.nim","compiler/depends.nim","compiler/docgen.nim","com
piler/docgen2.nim","compiler/evalffi.nim","compiler/evals.nim","compiler/evaltem
pl.nim","compiler/extccomp.nim","compiler/filter_tmpl.nim","compiler/filters.nim
","compiler/guards.nim","compiler/hlo.nim","compiler/idents.nim","compiler/idgen
.nim","compiler/importer.nim","compiler/jsgen.nim","compiler/jstypes.nim","compi
ler/lambdalifting.nim","compiler/lexer.nim","compiler/lists.nim","compiler/llstr
eam.nim","compiler/lookups.nim","compiler/magicsys.nim","compiler/main.nim","com
piler/modules.nim","compiler/msgs.nim","compiler/nimconf.nim","compiler/nimeval.
nim","compiler/nimlexbase.nim","compiler/nimrod.nim","compiler/nimrod.nimrod.cfg
","compiler/nimsets.nim","compiler/options.nim","compiler/parampatterns.nim","co
mpiler/parser.nim","compiler/pas2nim/pas2nim.nim","compiler/pas2nim/paslex.nim",
"compiler/pas2nim/pasparse.nim","compiler/passaux.nim","compiler/passes.nim","co
mpiler/patterns.nim","compiler/pbraces.nim","compiler/platform.nim","compiler/pr
agmas.nim","compiler/pretty.nim","compiler/procfind.nim","compiler/renderer.nim"
,"compiler/rodread.nim","compiler/rodutils.nim","compiler/rodwrite.nim","compile
r/ropes.nim","compiler/saturate.nim","compiler/sem.nim","compiler/semcall.nim","
compiler/semdata.nim","compiler/semdestruct.nim","compiler/semexprs.nim","compil
er/semfold.nim","compiler/semgnrc.nim","compiler/seminst.nim","compiler/semmagic
.nim","compiler/sempass2.nim","compiler/semstmts.nim","compiler/semtempl.nim","c
ompiler/semthreads.nim","compiler/semtypes.nim","compiler/semtypinst.nim","compi
ler/service.nim","compiler/sigmatch.nim","compiler/suggest.nim"]}],"head_commit"
:{"id":"dcfc7a8896166563f6fd80fbab81bc50e0b5a217","distinct":true,"message":"res
olved conflict","timestamp":"2014-04-10T01:47:20+02:00","url":"https://github.co
m/Araq/Nimrod/commit/dcfc7a8896166563f6fd80fbab81bc50e0b5a217","author":{"name":
"Andreas Rumpf","email":"ar@kimeta.de"},"committer":{"name":"Andreas Rumpf","ema
il":"ar@kimeta.de"},"added":["bin/empty.txt","build/empty.txt","compiler/c2nim/t
ests/vincent.c","compiler/c2nim/tests/vincent.h","compiler/canonicalizer.nim","c
ompiler/lowerings.nim","compiler/semmacrosanity.nim"],"removed":[],"modified":["
compiler/aliases.nim","compiler/ast.nim","compiler/astalgo.nim","compiler/babelc
md.nim","compiler/bitsets.nim","compiler/c2nim/c2nim.nim","compiler/c2nim/clex.n
im","compiler/c2nim/cparse.nim","compiler/c2nim/cpp.nim","compiler/ccgcalls.nim"
,"compiler/ccgexprs.nim","compiler/ccgmerge.nim","compiler/ccgstmts.nim","compil
er/ccgthreadvars.nim","compiler/ccgtrav.nim","compiler/ccgtypes.nim","compiler/c
cgutils.nim","compiler/cgen.nim","compiler/cgendata.nim","compiler/cgmeth.nim","
compiler/commands.nim","compiler/condsyms.nim","compiler/crc.nim","compiler/depe
nds.nim","compiler/docgen.nim","compiler/docgen2.nim","compiler/evalffi.nim","co
mpiler/evals.nim","compiler/evaltempl.nim","compiler/extccomp.nim","compiler/fil
ter_tmpl.nim","compiler/filters.nim","compiler/guards.nim","compiler/hlo.nim","c
ompiler/idents.nim","compiler/idgen.nim","compiler/importer.nim","compiler/jsgen
.nim","compiler/jstypes.nim","compiler/lambdalifting.nim","compiler/lexer.nim","
compiler/lists.nim","compiler/llstream.nim","compiler/lookups.nim","compiler/mag
icsys.nim","compiler/main.nim","compiler/modules.nim","compiler/msgs.nim","compi
ler/nimconf.nim","compiler/nimeval.nim","compiler/nimlexbase.nim","compiler/nimr
od.nim","compiler/nimrod.nimrod.cfg","compiler/nimsets.nim","compiler/options.ni
m","compiler/parampatterns.nim","compiler/parser.nim","compiler/pas2nim/pas2nim.
nim","compiler/pas2nim/paslex.nim","compiler/pas2nim/pasparse.nim","compiler/pas
saux.nim","compiler/passes.nim","compiler/patterns.nim","compiler/pbraces.nim","
compiler/platform.nim","compiler/pragmas.nim","compiler/pretty.nim","compiler/pr
ocfind.nim","compiler/renderer.nim","compiler/rodread.nim","compiler/rodutils.ni
m","compiler/rodwrite.nim","compiler/ropes.nim","compiler/saturate.nim","compile
r/sem.nim","compiler/semcall.nim","compiler/semdata.nim","compiler/semdestruct.n
im","compiler/semexprs.nim","compiler/semfold.nim","compiler/semgnrc.nim","compi
ler/seminst.nim","compiler/semmagic.nim","compiler/sempass2.nim","compiler/semst
mts.nim","compiler/semtempl.nim","compiler/semthreads.nim","compiler/semtypes.ni
m","compiler/semtypinst.nim","compiler/service.nim","compiler/sigmatch.nim","com
piler/suggest.nim"]},"repository":{"id":842037,"name":"Nimrod","url":"https://gi
thub.com/Araq/Nimrod","description":"Nimrod is a compiled, garbage-collected sys
tems programming language which has an excellent productivity/performance ratio.
 Nimrod's design focuses on efficiency, expressiveness, elegance (in the order o
f priority).","homepage":"http://nimrod-lang.org/","watchers":539,"stargazers":5
39,"forks":84,"fork":false,"size":333547,"owner":{"name":"Araq","email":"rumpf_a
@web.de"},"private":false,"open_issues":0,"has_issues":true,"has_downloads":true
,"has_wiki":true,"language":"Nimrod","created_at":1281991138,"pushed_at":1397087
261,"master_branch":"devel"},"pusher":{"name":"Araq","email":"rumpf_a@web.de"}}
       dcfc7a8896166563f6fd80fbab81bc50e0b5a217
  200 OK {Content-Type: text/html}
Araq commented 10 years ago

This make it crash too: https://gist.github.com/Araq/804fc05cea8463466e9c

Headers Request URL: http://picheta.me/github Request method: POST content-type: "application/x-www-form-urlencoded" Expect: "" User-Agent: "GitHub Hookshot 5e2786c" X-GitHub-Delivery: "56f2cf50-c041-11e3-87e3-32c2e1db3428" X-GitHub-Event: "push"

dom96 commented 10 years ago
Got line from github: { "payload":  { "ref": "refs/heads/devel",  "after": "2e99
50afe8911f27560c32d2f26d2d5c6d6e6cd3",  "before": "e333b8bc1ef27014066172c04881d
f191a4971fe",  "created": false,  "deleted": false,  "forced": false,  "compare"
: "https://github.com/Araq/Nimrod/compare/e333b8bc1ef2...2e9950afe891",  "commit
s": [ { "id": "90a6f4ba984334723ddf5a5bccf54f83f0e0707f",  "distinct": true,  "m
essage": "fixed a typo",  "timestamp": "2014-04-13T00:00:06+02:00",  "url": "htt
ps://github.com/Araq/Nimrod/commit/90a6f4ba984334723ddf5a5bccf54f83f0e0707f",  "
author":  { "name": "Andreas Rumpf",  "email": "ar@kimeta.de" },  "committer":
{ "name": "Andreas Rumpf",  "email": "ar@kimeta.de" },  "added": [],  "removed":
 [],  "modified": [ "doc/manual.txt" ] },  { "id": "6b1543a6a8514014c05cd164549d
9f30d341a6ed",  "distinct": true,  "message": "-d:useFFI is obsolete",  "timesta
mp": "2014-04-13T00:12:21+02:00",  "url": "https://github.com/Araq/Nimrod/commit
/6b1543a6a8514014c05cd164549d9f30d341a6ed",  "author":  { "name": "Andreas Rumpf
",  "email": "ar@kimeta.de" },  "committer":  { "name": "Andreas Rumpf",  "email
": "ar@kimeta.de" },  "added": [],  "removed": [],  "modified": [ "koch.nim" ] }
,  { "id": "587f0bd0863b381f5d0045fefedac92e3c504bde",  "distinct": true,  "mess
age": "fixes '==' for TTTable",  "timestamp": "2014-04-13T00:20:25+02:00",  "url
": "https://github.com/Araq/Nimrod/commit/587f0bd0863b381f5d0045fefedac92e3c504b
de",  "author":  { "name": "Andreas Rumpf",  "email": "ar@kimeta.de" },  "commit
ter":  { "name": "Andreas Rumpf",  "email": "ar@kimeta.de" },  "added": [],  "re
moved": [],  "modified": [ "lib/pure/collections/tables.nim" ] },  { "id": "3ee2
5170c3456640253b1d6ea7ffaaf3de88478f",  "distinct": true,  "message": "fixes '==
' for TTTable",  "timestamp": "2014-04-13T00:22:07+02:00",  "url": "https://gith
ub.com/Araq/Nimrod/commit/3ee25170c3456640253b1d6ea7ffaaf3de88478f",  "author":
 { "name": "Andreas Rumpf",  "email": "ar@kimeta.de" },  "committer":  { "name":
 "Andreas Rumpf",  "email": "ar@kimeta.de" },  "added": [],  "removed": [],  "mo
dified": [ "lib/pure/collections/tables.nim" ] },  { "id": "f862e80be96289ad0f54
c1d73a3e32734ed48cc3",  "distinct": true,  "message": "added 'hash' for set[T]'"
,  "timestamp": "2014-04-13T00:32:10+02:00",  "url": "https://github.com/Araq/Ni
mrod/commit/f862e80be96289ad0f54c1d73a3e32734ed48cc3",  "author":  { "name": "An
dreas Rumpf",  "email": "ar@kimeta.de" },  "committer":  { "name": "Andreas Rump
f",  "email": "ar@kimeta.de" },  "added": [],  "removed": [],  "modified": [ "li
b/pure/hashes.nim" ] },  { "id": "455c3c19cac3e2964fb4c2e89409f5780b09cf0b",  "d
istinct": true,  "message": "added mget for TSet",  "timestamp": "2014-04-13T00:
33:06+02:00",  "url": "https://github.com/Araq/Nimrod/commit/455c3c19cac3e2964fb
4c2e89409f5780b09cf0b",  "author":  { "name": "Andreas Rumpf",  "email": "ar@kim
eta.de" },  "committer":  { "name": "Andreas Rumpf",  "email": "ar@kimeta.de" },
  "added": [],  "removed": [],  "modified": [ "lib/pure/collections/sets.nim" ]
},  { "id": "fe387888bdd0ae26fe88e886604f9e101634633d",  "distinct": true,  "mes
sage": "fixes for asynchttpserver",  "timestamp": "2014-04-13T00:39:15+02:00",
"url": "https://github.com/Araq/Nimrod/commit/fe387888bdd0ae26fe88e886604f9e1016
34633d",  "author":  { "name": "Andreas Rumpf",  "email": "ar@kimeta.de" },  "co
mmitter":  { "name": "Andreas Rumpf",  "email": "ar@kimeta.de" },  "added": [],
 "removed": [],  "modified": [ "lib/pure/asyncdispatch.nim",  "lib/pure/asynchtt
pserver.nim",  "lib/pure/asyncnet.nim" ] },  { "id": "2e9950afe8911f27560c32d2f2
6d2d5c6d6e6cd3",  "distinct": true,  "message": "Merge branch 'devel' of https:/
/github.com/Araq/Nimrod into devel",  "timestamp": "2014-04-13T00:40:17+02:00",
 "url": "https://github.com/Araq/Nimrod/commit/2e9950afe8911f27560c32d2f26d2d5c6
d6e6cd3",  "author":  { "name": "Andreas Rumpf",  "email": "ar@kimeta.de" },  "c
ommitter":  { "name": "Andreas Rumpf",  "email": "ar@kimeta.de" },  "added": [ "
web/babelpkglist.nim" ],  "removed": [],  "modified": [ "compiler/jsgen.nim",  "
compiler/nimrod.nim",  "doc/lib.txt",  "lib/pure/json.nim",  "lib/pure/math.nim"
,  "lib/pure/streams.nim",  "lib/pure/strutils.nim",  "lib/system/jssys.nim",  "
tools/nimweb.nim" ] } ],  "head_commit":  { "id": "2e9950afe8911f27560c32d2f26d2
d5c6d6e6cd3",  "distinct": true,  "message": "Merge branch 'devel' of https://gi
thub.com/Araq/Nimrod into devel",  "timestamp": "2014-04-13T00:40:17+02:00",  "u
rl": "https://github.com/Araq/Nimrod/commit/2e9950afe8911f27560c32d2f26d2d5c6d6e
6cd3",  "author":  { "name": "Andreas Rumpf",  "email": "ar@kimeta.de" },  "comm
itter":  { "name": "Andreas Rumpf",  "email": "ar@kimeta.de" },  "added": [ "web
/babelpkglist.nim" ],  "removed": [],  "modified": [ "compiler/jsgen.nim",  "com
piler/nimrod.nim",  "doc/lib.txt",  "lib/pure/json.nim",  "lib/pure/math.nim",
"lib/pure/streams.nim",  "lib/pure/strutils.nim",  "lib/system/jssys.nim",  "too
ls/nimweb.nim" ] },  "repository":  { "id": 842037,  "name": "Nimrod",  "url": "
https://github.com/Araq/Nimrod",  "description": "Nimrod is a compiled, garbage-
collected systems programming language which has an excellent productivity/perfo
rmance ratio. Nimrod's design focuses on efficiency, expressiveness, elegance (i
n the order of priority).",  "homepage": "http://nimrod-lang.org/",  "watchers":
 542,  "stargazers": 542,  "forks": 78,  "fork": false,  "size": 335333,  "owner
":  { "name": "Araq",  "email": "rumpf_a@web.de" },  "private": false,  "open_is
sues": 12,  "has_issues": true,  "has_downloads": true,  "has_wiki": true,  "lan
guage": "Nimrod",  "created_at": 1281991138,  "pushed_at": 1397342430,  "master_
branch": "devel" },  "pusher":  { "name": "Araq",  "email": "rumpf_a@web.de" } }
}
Traceback (most recent call last)
website.nim(1211)        website
asyncio.nim(631)         poll
asyncio.nim(212)         asyncSockHandleRead
website.nim(144)         :anonymous
website.nim(680)         handleModuleMsg
website.nim(511)         parseMessage
SIGSEGV: Illegal storage access. (Attempt to read from nil?)

Another crash with a smaller payload.

Prettified JSON:

{ "payload" : { "after" : "2e9950afe8911f27560c32d2f26d2d5c6d6e6cd3",
      "before" : "e333b8bc1ef27014066172c04881df191a4971fe",
      "commits" : [ { "added" : [  ],
            "author" : { "email" : "ar@kimeta.de",
                "name" : "Andreas Rumpf"
              },
            "committer" : { "email" : "ar@kimeta.de",
                "name" : "Andreas Rumpf"
              },
            "distinct" : true,
            "id" : "90a6f4ba984334723ddf5a5bccf54f83f0e0707f",
            "message" : "fixed a typo",
            "modified" : [ "doc/manual.txt" ],
            "removed" : [  ],
            "timestamp" : "2014-04-13T00:00:06+02:00",
            "url" : "https://github.com/Araq/Nimrod/commit/90a6f4ba984334723ddf5a5bccf54f83f0e0707f"
          },
          { "added" : [  ],
            "author" : { "email" : "ar@kimeta.de",
                "name" : "Andreas Rumpf"
              },
            "committer" : { "email" : "ar@kimeta.de",
                "name" : "Andreas Rumpf"
              },
            "distinct" : true,
            "id" : "6b1543a6a8514014c05cd164549d9f30d341a6ed",
            "message" : "-d:useFFI is obsolete",
            "modified" : [ "koch.nim" ],
            "removed" : [  ],
            "timestamp" : "2014-04-13T00:12:21+02:00",
            "url" : "https://github.com/Araq/Nimrod/commit/6b1543a6a8514014c05cd164549d9f30d341a6ed"
          },
          { "added" : [  ],
            "author" : { "email" : "ar@kimeta.de",
                "name" : "Andreas Rumpf"
              },
            "committer" : { "email" : "ar@kimeta.de",
                "name" : "Andreas Rumpf"
              },
            "distinct" : true,
            "id" : "587f0bd0863b381f5d0045fefedac92e3c504bde",
            "message" : "fixes '==' for TTTable",
            "modified" : [ "lib/pure/collections/tables.nim" ],
            "removed" : [  ],
            "timestamp" : "2014-04-13T00:20:25+02:00",
            "url" : "https://github.com/Araq/Nimrod/commit/587f0bd0863b381f5d0045fefedac92e3c504bde"
          },
          { "added" : [  ],
            "author" : { "email" : "ar@kimeta.de",
                "name" : "Andreas Rumpf"
              },
            "committer" : { "email" : "ar@kimeta.de",
                "name" : "Andreas Rumpf"
              },
            "distinct" : true,
            "id" : "3ee25170c3456640253b1d6ea7ffaaf3de88478f",
            "message" : "fixes '==' for TTTable",
            "modified" : [ "lib/pure/collections/tables.nim" ],
            "removed" : [  ],
            "timestamp" : "2014-04-13T00:22:07+02:00",
            "url" : "https://github.com/Araq/Nimrod/commi/3ee25170c3456640253b1d6ea7ffaaf3de88478f"
          },
          { "added" : [  ],
            "author" : { "email" : "ar@kimeta.de",
                "name" : "Andreas Rumpf"
              },
            "committer" : { "email" : "ar@kimeta.de",
                "name" : "Andreas Rumpf"
              },
            "distinct" : true,
            "id" : "f862e80be96289ad0f54c1d73a3e32734ed48cc3",
            "message" : "added 'hash' for set[T]'",
            "modified" : [ "lib/pure/hashes.nim" ],
            "removed" : [  ],
            "timestamp" : "2014-04-13T00:32:10+02:00",
            "url" : "https://github.co/Araq/Nimrod/commit/f862e80be96289ad0f54c1d73a3e32734ed48cc3"
          },
          { "added" : [  ],
            "author" : { "email" : "ar@kimeta.de",
                "name" : "Andreas Rumpf"
              },
            "committer" : { "email" : "ar@kimeta.de",
                "name" : "Andreas Rumpf"
              },
            "distinct" : true,
            "id" : "455c3c19cac3e2964fb4c2e89409f5780b09cf0b",
            "message" : "added mget for TSet",
            "modified" : [ "lib/pure/collections/sets.nim" ],
            "removed" : [  ],
            "timestamp" : "2014-04-13T00:33:06+02:00",
            "url" : "https://github.com/Araq/Nimrod/commit/455c3c19cac3e2964fb4c2e89409f5780b09cf0b"
          },
          { "added" : [  ],
            "author" : { "email" : "ar@kimeta.de",
                "name" : "Andreas Rumpf"
              },
            "committer" : { "email" : "ar@kimeta.de",
                "name" : "Andreas Rumpf"
              },
            "distinct" : true,
            "id" : "fe387888bdd0ae26fe88e886604f9e101634633d",
            "message" : "fixes for asynchttpserver",
            "modified" : [ "lib/pure/asyncdispatch.nim",
                "lib/pure/asynchttpserver.nim",
                "lib/pure/asyncnet.nim"
              ],
            "removed" : [  ],
            "timestamp" : "2014-04-13T00:39:15+02:00",
            "url" : "https://github.com/Araq/Nimrod/commit/fe387888bdd0ae26fe88e886604f9e101634633d"
          },
          { "added" : [ "web/babelpkglist.nim" ],
            "author" : { "email" : "ar@kimeta.de",
                "name" : "Andreas Rumpf"
              },
            "committer" : { "email" : "ar@kimeta.de",
                "name" : "Andreas Rumpf"
              },
            "distinct" : true,
            "id" : "2e9950afe8911f27560c32d2f26d2d5c6d6e6cd3",
            "message" : "Merge branch 'devel' of https://github.com/Araq/Nimrod into devel",
            "modified" : [ "compiler/jsgen.nim",
                "compiler/nimrod.nim",
                "doc/lib.txt",
                "lib/pure/json.nim",
                "lib/pure/math.nim",
                "lib/pure/streams.nim",
                "lib/pure/strutils.nim",
                "lib/system/jssys.nim",
                "tools/nimweb.nim"
              ],
            "removed" : [  ],
            "timestamp" : "2014-04-13T00:40:17+02:00",
            "url" : "https://github.com/Araq/Nimrod/commit/2e9950afe8911f27560c32d2f26d2d5c6d6e6cd3"
          }
        ],
      "compare" : "https://github.com/Araq/Nimrod/compare/e333b8bc1ef2...2e9950afe891",
      "created" : false,
      "deleted" : false,
      "forced" : false,
      "head_commit" : { "added" : [ "web/babelpkglist.nim" ],
          "author" : { "email" : "ar@kimeta.de",
              "name" : "Andreas Rumpf"
            },
          "committer" : { "email" : "ar@kimeta.de",
              "name" : "Andreas Rumpf"
            },
          "distinct" : true,
          "id" : "2e9950afe8911f27560c32d2f26d2d5c6d6e6cd3",
          "message" : "Merge branch 'devel' of https://github.com/Araq/Nimrod into devel",
          "modified" : [ "compiler/jsgen.nim",
              "compiler/nimrod.nim",
              "doc/lib.txt",
              "lib/pure/json.nim",
              "lib/pure/math.nim",
              "lib/pure/streams.nim",
              "lib/pure/strutils.nim",
              "lib/system/jssys.nim",
              "tools/nimweb.nim"
            ],
          "removed" : [  ],
          "timestamp" : "2014-04-13T00:40:17+02:00",
          "url" : "https://github.com/Araq/Nimrod/commit/2e9950afe8911f27560c32d2f26d2d5c6d6e6cd3"
        },
      "pusher" : { "email" : "rumpf_a@web.de",
          "name" : "Araq"
        },
      "ref" : "refs/heads/devel",
      "repository" : { "created_at" : 1281991138,
          "description" : "Nimrod is a compiled, garbage-collected systems programming language which has an excellent productivity/performance ratio. Nimrod's design focuses on efficiency, expressiveness, elegance (in the order of priority).",
          "fork" : false,
          "forks" : 78,
          "has_downloads" : true,
          "has_issues" : true,
          "has_wiki" : true,
          "homepage" : "http://nimrod-lang.org/",
          "id" : 842037,
          "language" : "Nimrod",
          "master_branch" : "devel",
          "name" : "Nimrod",
          "open_issues" : 12,
          "owner" : { "email" : "rumpf_a@web.de",
              "name" : "Araq"
            },
          "private" : false,
          "pushed_at" : 1397342430,
          "size" : 335333,
          "stargazers" : 542,
          "url" : "https://github.com/Araq/Nimrod",
          "watchers" : 542
        }
    } }