From 8d24a4523bcfd6335c4cca25064c3276890969b4 Mon Sep 17 00:00:00 2001 From: Philip Kimmey Date: Mon, 25 Jun 2012 11:42:48 -0700 Subject: [PATCH 01/10] [Issue] replace use of label _identity with name - The label's _identity attribute is URL encoded. This is probably correct when it is being used as part of an API endpoint URL, but when used as part of the POST data, GitHub will return a 422 error stating that the label does not exist. --- github/Issue.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/github/Issue.py b/github/Issue.py index f43ce05e..aeb7c0c6 100644 --- a/github/Issue.py +++ b/github/Issue.py @@ -120,7 +120,7 @@ class Issue( GithubObject.GithubObject ): def add_to_labels( self, *labels ): assert all( isinstance( element, Label.Label ) for element in labels ), labels - post_parameters = [ label._identity for label in labels ] + post_parameters = [ label.name for label in labels ] headers, data = self._requester.requestAndCheck( "POST", self.url + "/labels", @@ -240,7 +240,7 @@ class Issue( GithubObject.GithubObject ): def set_labels( self, *labels ): assert all( isinstance( element, Label.Label ) for element in labels ), labels - post_parameters = [ label._identity for label in labels ] + post_parameters = [ label.name for label in labels ] headers, data = self._requester.requestAndCheck( "PUT", self.url + "/labels", From cc775229d322b454788dabbe0e2af489a7fed4d0 Mon Sep 17 00:00:00 2001 From: Vincent Jacques Date: Thu, 28 Jun 2012 20:50:53 +0100 Subject: [PATCH 02/10] Add (failing) integration tests for issue #50 (labels with spaces in name) --- test/IntegrationTest.py | 1 + test/Issue50.py | 56 +++++++++++++++++++ test/ReplayData/Issue50.setUp.txt | 15 +++++ .../Issue50.testAddLabelToIssue.txt | 10 ++++ .../Issue50.testCreateIssueWithLabel.txt | 10 ++++ test/ReplayData/Issue50.testCreateLabel.txt | 5 ++ .../Issue50.testGetIssuesWithLabel.txt | 10 ++++ test/ReplayData/Issue50.testGetLabel.txt | 5 ++ test/ReplayData/Issue50.testGetLabels.txt | 5 ++ .../ReplayData/Issue50.testIssueGetLabels.txt | 5 ++ .../Issue50.testRemoveLabelFromIssue.txt | 10 ++++ .../ReplayData/Issue50.testSetIssueLabels.txt | 20 +++++++ 12 files changed, 152 insertions(+) create mode 100644 test/Issue50.py create mode 100644 test/ReplayData/Issue50.setUp.txt create mode 100644 test/ReplayData/Issue50.testAddLabelToIssue.txt create mode 100644 test/ReplayData/Issue50.testCreateIssueWithLabel.txt create mode 100644 test/ReplayData/Issue50.testCreateLabel.txt create mode 100644 test/ReplayData/Issue50.testGetIssuesWithLabel.txt create mode 100644 test/ReplayData/Issue50.testGetLabel.txt create mode 100644 test/ReplayData/Issue50.testGetLabels.txt create mode 100644 test/ReplayData/Issue50.testIssueGetLabels.txt create mode 100644 test/ReplayData/Issue50.testRemoveLabelFromIssue.txt create mode 100644 test/ReplayData/Issue50.testSetIssueLabels.txt diff --git a/test/IntegrationTest.py b/test/IntegrationTest.py index 86a98b44..a2d966b6 100755 --- a/test/IntegrationTest.py +++ b/test/IntegrationTest.py @@ -51,6 +51,7 @@ from UserKey import * from PaginatedList import * from Issue33 import * +from Issue50 import * from Exceptions import * Framework.main() diff --git a/test/Issue50.py b/test/Issue50.py new file mode 100644 index 00000000..2b50eac5 --- /dev/null +++ b/test/Issue50.py @@ -0,0 +1,56 @@ +# Copyright 2012 Vincent Jacques +# vincent@vincent-jacques.net + +# This file is part of PyGithub. http://vincent-jacques.net/PyGithub + +# PyGithub is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License +# as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. + +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. + +# You should have received a copy of the GNU Lesser General Public License along with PyGithub. If not, see . + +import github + +import Framework + +class Issue50( Framework.TestCase ): # https://github.com/jacquev6/PyGithub/issues/50 + def setUp( self ): + Framework.TestCase.setUp( self ) + self.repo = self.g.get_user().get_repo( "PyGithub" ) + self.issue = self.repo.get_issue( 50 ) + self.labelName = "Label with spaces and strange characters (&*#$)" + + def testCreateLabel( self ): + label = self.repo.create_label( self.labelName, "ffff00" ) + self.assertEqual( label.name, self.labelName ) + + def testGetLabel( self ): + label = self.repo.get_label( self.labelName ) + self.assertEqual( label.name, self.labelName ) + + def testGetLabels( self ): + self.assertListKeyEqual( self.repo.get_labels(), lambda l: l.name, [ "Refactoring", "Public interface", "Functionalities", "Project management", "Bug", "Question", "RequestedByUser", self.labelName ] ) + + def testAddLabelToIssue( self ): + self.issue.add_to_labels( self.repo.get_label( self.labelName ) ) + + def testRemoveLabelFromIssue( self ): + self.issue.remove_from_labels( self.repo.get_label( self.labelName ) ) + + def testSetIssueLabels( self ): + self.issue.set_labels( self.repo.get_label( "Bug" ), self.repo.get_label( "RequestedByUser" ), self.repo.get_label( self.labelName ) ) + + def testIssueLabels( self ): + self.assertListKeyEqual( self.issue.labels, lambda l: l.name, [ "Bug", "RequestedByUser", self.labelName ] ) + + def testIssueGetLabels( self ): + self.assertListKeyEqual( self.issue.get_labels(), lambda l: l.name, [ "Bug", "RequestedByUser", self.labelName ] ) + + def testGetIssuesWithLabel( self ): + self.assertListKeyEqual( self.repo.get_issues( labels = [ self.repo.get_label( self.labelName ) ] ), lambda i: i.number, [ 50 ] ) + + def testCreateIssueWithLabel( self ): + issue = self.repo.create_issue( "Issue created by PyGithub to test issue #50", labels = [ self.repo.get_label( self.labelName ) ] ) + self.assertListKeyEqual( issue.labels, lambda l: l.name, [ self.labelName ] ) diff --git a/test/ReplayData/Issue50.setUp.txt b/test/ReplayData/Issue50.setUp.txt new file mode 100644 index 00000000..1b3bfab7 --- /dev/null +++ b/test/ReplayData/Issue50.setUp.txt @@ -0,0 +1,15 @@ +GET /user {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('content-length', '801'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4926'), ('server', 'nginx/1.0.13'), ('last-modified', 'Fri, 15 Jun 2012 15:37:06 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"41ade9c2e4794dd5214bb5f497af92cb"'), ('cache-control', 'private, max-age=60'), ('date', 'Thu, 28 Jun 2012 19:49:48 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"type":"User","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","total_private_repos":5,"company":"Criteo","login":"jacquev6","owned_private_repos":5,"plan":{"space":614400,"private_repos":5,"collaborators":1,"name":"micro"},"following":24,"blog":"http://vincent-jacques.net","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","public_repos":11,"public_gists":3,"followers":13,"email":"vincent@vincent-jacques.net","private_gists":5,"created_at":"2010-07-09T06:10:06Z","disk_usage":16820,"collaborators":0,"html_url":"https://github.com/jacquev6","name":"Vincent Jacques","location":"Paris, France","hireable":false,"url":"https://api.github.com/users/jacquev6","id":327146,"bio":""} + +GET /repos/jacquev6/PyGithub {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('content-length', '1154'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4925'), ('server', 'nginx/1.0.13'), ('last-modified', 'Tue, 26 Jun 2012 12:30:06 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"eb3fdb98c65995892b016162b91ad68c"'), ('cache-control', 'private, max-age=60'), ('date', 'Thu, 28 Jun 2012 19:49:49 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"git_url":"git://github.com/jacquev6/PyGithub.git","homepage":"http://vincent-jacques.net/PyGithub","owner":{"login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"open_issues":11,"permissions":{"push":true,"admin":true,"pull":true},"description":"Python library implementing the full Github API v3","master_branch":"master","has_issues":true,"svn_url":"https://github.com/jacquev6/PyGithub","full_name":"jacquev6/PyGithub","mirror_url":null,"has_downloads":true,"size":184,"fork":false,"created_at":"2012-02-25T12:53:47Z","html_url":"https://github.com/jacquev6/PyGithub","name":"PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","language":"Python","clone_url":"https://github.com/jacquev6/PyGithub.git","private":false,"pushed_at":"2012-06-20T21:03:27Z","id":3544490,"forks":5,"has_wiki":false,"watchers":29,"ssh_url":"git@github.com:jacquev6/PyGithub.git","updated_at":"2012-06-26T12:30:06Z"} + +GET /repos/jacquev6/PyGithub/issues/50 {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4924'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '1971'), ('server', 'nginx/1.0.13'), ('last-modified', 'Wed, 27 Jun 2012 22:46:10 GMT'), ('connection', 'keep-alive'), ('etag', '"bb61450865a934ca7ee53d6dde588876"'), ('cache-control', 'private, max-age=60'), ('date', 'Thu, 28 Jun 2012 19:49:49 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"labels":[{"color":"e10c02","name":"Bug","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug"},{"color":"e10c02","name":"RequestedByUser","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/RequestedByUser"}],"body":null,"state":"open","closed_at":null,"assignee":{"login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"comments":2,"title":"[Issue] Replace label _identity with name","created_at":"2012-06-25T18:45:05Z","number":50,"milestone":{"open_issues":3,"state":"open","due_on":"2012-07-01T07:00:00Z","description":"","creator":{"login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_issues":0,"title":"Version 1.2","created_at":"2012-06-25T19:31:02Z","number":6,"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/6","id":136827},"html_url":"https://github.com/jacquev6/PyGithub/issues/50","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/50","closed_by":null,"user":{"login":"philipkimmey","gravatar_id":"6baf93a46e584369e1ea64bc1aca62f4","url":"https://api.github.com/users/philipkimmey","avatar_url":"https://secure.gravatar.com/avatar/6baf93a46e584369e1ea64bc1aca62f4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":211079},"id":5256315,"pull_request":{"patch_url":"https://github.com/jacquev6/PyGithub/pull/50.patch","diff_url":"https://github.com/jacquev6/PyGithub/pull/50.diff","html_url":"https://github.com/jacquev6/PyGithub/pull/50"},"updated_at":"2012-06-25T19:33:48Z"} + diff --git a/test/ReplayData/Issue50.testAddLabelToIssue.txt b/test/ReplayData/Issue50.testAddLabelToIssue.txt new file mode 100644 index 00000000..96b8f53b --- /dev/null +++ b/test/ReplayData/Issue50.testAddLabelToIssue.txt @@ -0,0 +1,10 @@ +GET /repos/jacquev6/PyGithub/labels/Label%20with%20spaces%20and%20strange%20characters%20%28%26%2A%23%24%29 {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4949'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '197'), ('server', 'nginx/1.0.13'), ('last-modified', 'Thu, 28 Jun 2012 19:29:52 GMT'), ('connection', 'keep-alive'), ('etag', '"c536d81e7479c8c9acfa7deeddeb6e72"'), ('cache-control', 'private, max-age=60'), ('date', 'Thu, 28 Jun 2012 19:38:12 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"color":"ffff00","name":"Label with spaces and strange characters (&*#$)","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Label+with+spaces+and+strange+characters+%28%26%2A%23%24%29"} + +POST /repos/jacquev6/PyGithub/issues/50/labels {'Authorization': 'Basic login_and_password_removed'} ["Label%20with%20spaces%20and%20strange%20characters%20%28%26%2A%23%24%29"] +422 +[('status', '422 Unprocessable Entity'), ('x-ratelimit-remaining', '4948'), ('content-length', '179'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('cache-control', ''), ('date', 'Thu, 28 Jun 2012 19:38:13 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"errors":[{"field":"name","resource":"Label","value":["Label%20with%20spaces%20and%20strange%20characters%20%28%26%2A%23%24%29"],"code":"missing"}],"message":"Validation Failed"} + diff --git a/test/ReplayData/Issue50.testCreateIssueWithLabel.txt b/test/ReplayData/Issue50.testCreateIssueWithLabel.txt new file mode 100644 index 00000000..64416fac --- /dev/null +++ b/test/ReplayData/Issue50.testCreateIssueWithLabel.txt @@ -0,0 +1,10 @@ +GET /repos/jacquev6/PyGithub/labels/Label%20with%20spaces%20and%20strange%20characters%20%28%26%2A%23%24%29 {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('content-length', '197'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4923'), ('server', 'nginx/1.0.13'), ('last-modified', 'Thu, 28 Jun 2012 19:29:52 GMT'), ('connection', 'keep-alive'), ('etag', '"c536d81e7479c8c9acfa7deeddeb6e72"'), ('cache-control', 'private, max-age=60'), ('date', 'Thu, 28 Jun 2012 19:49:50 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"color":"ffff00","name":"Label with spaces and strange characters (&*#$)","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Label+with+spaces+and+strange+characters+%28%26%2A%23%24%29"} + +POST /repos/jacquev6/PyGithub/issues {'Authorization': 'Basic login_and_password_removed'} {"labels": ["Label%20with%20spaces%20and%20strange%20characters%20%28%26%2A%23%24%29"], "title": "Issue created by PyGithub to test issue #50"} +422 +[('status', '422 Unprocessable Entity'), ('content-length', '179'), ('x-ratelimit-remaining', '4922'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('cache-control', ''), ('date', 'Thu, 28 Jun 2012 19:49:51 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"errors":[{"field":"name","resource":"Label","value":["Label%20with%20spaces%20and%20strange%20characters%20%28%26%2A%23%24%29"],"code":"missing"}],"message":"Validation Failed"} + diff --git a/test/ReplayData/Issue50.testCreateLabel.txt b/test/ReplayData/Issue50.testCreateLabel.txt new file mode 100644 index 00000000..f153d209 --- /dev/null +++ b/test/ReplayData/Issue50.testCreateLabel.txt @@ -0,0 +1,5 @@ +POST /repos/jacquev6/PyGithub/labels {'Authorization': 'Basic login_and_password_removed'} {"color": "ffff00", "name": "Label with spaces and strange characters (&*#$)"} +201 +[('status', '201 Created'), ('content-length', '197'), ('etag', '"99cbb3bf0f7ee7d6278c2ddd3ef42577"'), ('x-ratelimit-remaining', '4968'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('location', 'https://api.github.com/repos/jacquev6/PyGithub/labels/Label+with+spaces+and+strange+characters+%28%26%2A%23%24%29'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Thu, 28 Jun 2012 19:29:52 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"color":"ffff00","name":"Label with spaces and strange characters (&*#$)","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Label+with+spaces+and+strange+characters+%28%26%2A%23%24%29"} + diff --git a/test/ReplayData/Issue50.testGetIssuesWithLabel.txt b/test/ReplayData/Issue50.testGetIssuesWithLabel.txt new file mode 100644 index 00000000..10f7c4bd --- /dev/null +++ b/test/ReplayData/Issue50.testGetIssuesWithLabel.txt @@ -0,0 +1,10 @@ +GET /repos/jacquev6/PyGithub/labels/Label%20with%20spaces%20and%20strange%20characters%20%28%26%2A%23%24%29 {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4928'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '197'), ('server', 'nginx/1.0.13'), ('last-modified', 'Thu, 28 Jun 2012 19:29:52 GMT'), ('connection', 'keep-alive'), ('etag', '"c536d81e7479c8c9acfa7deeddeb6e72"'), ('cache-control', 'private, max-age=60'), ('date', 'Thu, 28 Jun 2012 19:48:05 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"color":"ffff00","name":"Label with spaces and strange characters (&*#$)","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Label+with+spaces+and+strange+characters+%28%26%2A%23%24%29"} + +GET /repos/jacquev6/PyGithub/issues?labels=Label%2520with%2520spaces%2520and%2520strange%2520characters%2520%2528%2526%252A%2523%2524%2529 {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('content-length', '2'), ('x-ratelimit-limit', '5000'), ('x-ratelimit-remaining', '4927'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('etag', '"d751713988987e9331980363e24189ce"'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Thu, 28 Jun 2012 19:48:05 GMT'), ('content-type', 'application/json; charset=utf-8')] +[] + diff --git a/test/ReplayData/Issue50.testGetLabel.txt b/test/ReplayData/Issue50.testGetLabel.txt new file mode 100644 index 00000000..f90001c9 --- /dev/null +++ b/test/ReplayData/Issue50.testGetLabel.txt @@ -0,0 +1,5 @@ +GET /repos/jacquev6/PyGithub/labels/Label%20with%20spaces%20and%20strange%20characters%20%28%26%2A%23%24%29 {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('content-length', '197'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4964'), ('server', 'nginx/1.0.13'), ('last-modified', 'Thu, 28 Jun 2012 19:29:52 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"c536d81e7479c8c9acfa7deeddeb6e72"'), ('cache-control', 'private, max-age=60'), ('date', 'Thu, 28 Jun 2012 19:32:14 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"color":"ffff00","name":"Label with spaces and strange characters (&*#$)","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Label+with+spaces+and+strange+characters+%28%26%2A%23%24%29"} + diff --git a/test/ReplayData/Issue50.testGetLabels.txt b/test/ReplayData/Issue50.testGetLabels.txt new file mode 100644 index 00000000..79208a00 --- /dev/null +++ b/test/ReplayData/Issue50.testGetLabels.txt @@ -0,0 +1,5 @@ +GET /repos/jacquev6/PyGithub/labels {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('content-length', '1015'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4953'), ('server', 'nginx/1.0.13'), ('last-modified', 'Thu, 28 Jun 2012 19:29:52 GMT'), ('connection', 'keep-alive'), ('etag', '"c536d81e7479c8c9acfa7deeddeb6e72"'), ('cache-control', 'private, max-age=60'), ('date', 'Thu, 28 Jun 2012 19:36:59 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"color":"0b02e1","name":"Refactoring","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Refactoring"},{"color":"d7e102","name":"Public interface","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface"},{"color":"e102d8","name":"Functionalities","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities"},{"color":"444444","name":"Project management","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management"},{"color":"e10c02","name":"Bug","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug"},{"color":"02e10c","name":"Question","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question"},{"color":"e10c02","name":"RequestedByUser","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/RequestedByUser"},{"color":"ffff00","name":"Label with spaces and strange characters (&*#$)","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Label+with+spaces+and+strange+characters+%28%26%2A%23%24%29"}] + diff --git a/test/ReplayData/Issue50.testIssueGetLabels.txt b/test/ReplayData/Issue50.testIssueGetLabels.txt new file mode 100644 index 00000000..0b6b4a57 --- /dev/null +++ b/test/ReplayData/Issue50.testIssueGetLabels.txt @@ -0,0 +1,5 @@ +GET /repos/jacquev6/PyGithub/issues/50/labels {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('content-length', '221'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4932'), ('server', 'nginx/1.0.13'), ('last-modified', 'Wed, 27 Jun 2012 22:46:10 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"bb61450865a934ca7ee53d6dde588876"'), ('cache-control', 'private, max-age=60'), ('date', 'Thu, 28 Jun 2012 19:46:04 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"color":"e10c02","name":"Bug","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug"},{"color":"e10c02","name":"RequestedByUser","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/RequestedByUser"}] + diff --git a/test/ReplayData/Issue50.testRemoveLabelFromIssue.txt b/test/ReplayData/Issue50.testRemoveLabelFromIssue.txt new file mode 100644 index 00000000..41914303 --- /dev/null +++ b/test/ReplayData/Issue50.testRemoveLabelFromIssue.txt @@ -0,0 +1,10 @@ +GET /repos/jacquev6/PyGithub/labels/Label%20with%20spaces%20and%20strange%20characters%20%28%26%2A%23%24%29 {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('content-length', '197'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4937'), ('server', 'nginx/1.0.13'), ('last-modified', 'Thu, 28 Jun 2012 19:29:52 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"c536d81e7479c8c9acfa7deeddeb6e72"'), ('cache-control', 'private, max-age=60'), ('date', 'Thu, 28 Jun 2012 19:43:02 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"color":"ffff00","name":"Label with spaces and strange characters (&*#$)","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Label+with+spaces+and+strange+characters+%28%26%2A%23%24%29"} + +DELETE /repos/jacquev6/PyGithub/issues/50/labels/Label%20with%20spaces%20and%20strange%20characters%20%28%26%2A%23%24%29 {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('content-length', '221'), ('x-ratelimit-limit', '5000'), ('x-ratelimit-remaining', '4936'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('etag', '"f52869e02750b4a36166ec2d23c2f471"'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Thu, 28 Jun 2012 19:43:02 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"color":"e10c02","name":"Bug","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug"},{"color":"e10c02","name":"RequestedByUser","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/RequestedByUser"}] + diff --git a/test/ReplayData/Issue50.testSetIssueLabels.txt b/test/ReplayData/Issue50.testSetIssueLabels.txt new file mode 100644 index 00000000..39e07c6a --- /dev/null +++ b/test/ReplayData/Issue50.testSetIssueLabels.txt @@ -0,0 +1,20 @@ +GET /repos/jacquev6/PyGithub/labels/Bug {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('content-length', '97'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4944'), ('server', 'nginx/1.0.13'), ('last-modified', 'Sat, 20 Oct 2007 11:24:19 GMT'), ('connection', 'keep-alive'), ('etag', '"147027ac86c95043e935b318f88c3683"'), ('cache-control', 'private, max-age=60'), ('date', 'Thu, 28 Jun 2012 19:40:43 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"color":"e10c02","name":"Bug","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug"} + +GET /repos/jacquev6/PyGithub/labels/RequestedByUser {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('content-length', '121'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4943'), ('server', 'nginx/1.0.13'), ('last-modified', 'Sat, 20 Oct 2007 11:24:19 GMT'), ('connection', 'keep-alive'), ('etag', '"147027ac86c95043e935b318f88c3683"'), ('cache-control', 'private, max-age=60'), ('date', 'Thu, 28 Jun 2012 19:40:44 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"color":"e10c02","name":"RequestedByUser","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/RequestedByUser"} + +GET /repos/jacquev6/PyGithub/labels/Label%20with%20spaces%20and%20strange%20characters%20%28%26%2A%23%24%29 {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('content-length', '197'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4942'), ('server', 'nginx/1.0.13'), ('last-modified', 'Thu, 28 Jun 2012 19:29:52 GMT'), ('connection', 'keep-alive'), ('etag', '"c536d81e7479c8c9acfa7deeddeb6e72"'), ('cache-control', 'private, max-age=60'), ('date', 'Thu, 28 Jun 2012 19:40:45 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"color":"ffff00","name":"Label with spaces and strange characters (&*#$)","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Label+with+spaces+and+strange+characters+%28%26%2A%23%24%29"} + +PUT /repos/jacquev6/PyGithub/issues/50/labels {'Authorization': 'Basic login_and_password_removed'} ["Bug", "RequestedByUser", "Label%20with%20spaces%20and%20strange%20characters%20%28%26%2A%23%24%29"] +422 +[('status', '422 Unprocessable Entity'), ('content-length', '179'), ('x-ratelimit-remaining', '4941'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('cache-control', ''), ('date', 'Thu, 28 Jun 2012 19:40:45 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"errors":[{"field":"name","resource":"Label","value":["Label%20with%20spaces%20and%20strange%20characters%20%28%26%2A%23%24%29"],"code":"missing"}],"message":"Validation Failed"} + From efdaa8945db2c10ddfd2ddd9f3f33cfcd1dcf1ee Mon Sep 17 00:00:00 2001 From: Vincent Jacques Date: Thu, 28 Jun 2012 21:06:05 +0100 Subject: [PATCH 03/10] Fix tests after merging #50, and fix Repository.create_issue and .get_issues as well --- github/Repository.py | 4 ++-- test/Issue50.py | 7 ++++--- test/ReplayData/Issue50.setUp.txt | 12 ++++++------ test/ReplayData/Issue50.testAddLabelToIssue.txt | 10 +++++----- .../Issue50.testCreateIssueWithLabel.txt | 10 +++++----- test/ReplayData/Issue50.testGetIssuesWithLabel.txt | 8 ++++---- test/ReplayData/Issue50.testIssueGetLabels.txt | 4 ++-- test/ReplayData/Issue50.testSetIssueLabels.txt | 14 +++++++------- 8 files changed, 35 insertions(+), 34 deletions(-) diff --git a/github/Repository.py b/github/Repository.py index d6628a1f..16ec98dd 100644 --- a/github/Repository.py +++ b/github/Repository.py @@ -367,7 +367,7 @@ class Repository( GithubObject.GithubObject ): if milestone is not GithubObject.NotSet: post_parameters[ "milestone" ] = milestone._identity if labels is not GithubObject.NotSet: - post_parameters[ "labels" ] = [ element._identity for element in labels ] + post_parameters[ "labels" ] = [ element.name for element in labels ] headers, data = self._requester.requestAndCheck( "POST", self.url + "/issues", @@ -764,7 +764,7 @@ class Repository( GithubObject.GithubObject ): if mentioned is not GithubObject.NotSet: url_parameters[ "mentioned" ] = mentioned._identity if labels is not GithubObject.NotSet: - url_parameters[ "labels" ] = ",".join( label._identity for label in labels ) + url_parameters[ "labels" ] = ",".join( label.name for label in labels ) if sort is not GithubObject.NotSet: url_parameters[ "sort" ] = sort if direction is not GithubObject.NotSet: diff --git a/test/Issue50.py b/test/Issue50.py index 2b50eac5..e4dbf492 100644 --- a/test/Issue50.py +++ b/test/Issue50.py @@ -43,14 +43,15 @@ class Issue50( Framework.TestCase ): # https://github.com/jacquev6/PyGithub/issu self.issue.set_labels( self.repo.get_label( "Bug" ), self.repo.get_label( "RequestedByUser" ), self.repo.get_label( self.labelName ) ) def testIssueLabels( self ): - self.assertListKeyEqual( self.issue.labels, lambda l: l.name, [ "Bug", "RequestedByUser", self.labelName ] ) + self.assertListKeyEqual( self.issue.labels, lambda l: l.name, [ "Bug", self.labelName, "RequestedByUser" ] ) def testIssueGetLabels( self ): - self.assertListKeyEqual( self.issue.get_labels(), lambda l: l.name, [ "Bug", "RequestedByUser", self.labelName ] ) + self.assertListKeyEqual( self.issue.get_labels(), lambda l: l.name, [ "Bug", self.labelName, "RequestedByUser" ] ) def testGetIssuesWithLabel( self ): - self.assertListKeyEqual( self.repo.get_issues( labels = [ self.repo.get_label( self.labelName ) ] ), lambda i: i.number, [ 50 ] ) + self.assertListKeyEqual( self.repo.get_issues( labels = [ self.repo.get_label( self.labelName ) ] ), lambda i: i.number, [ 52, 50 ] ) def testCreateIssueWithLabel( self ): issue = self.repo.create_issue( "Issue created by PyGithub to test issue #50", labels = [ self.repo.get_label( self.labelName ) ] ) self.assertListKeyEqual( issue.labels, lambda l: l.name, [ self.labelName ] ) + self.assertEqual( issue.number, 52 ) diff --git a/test/ReplayData/Issue50.setUp.txt b/test/ReplayData/Issue50.setUp.txt index 1b3bfab7..36fe550a 100644 --- a/test/ReplayData/Issue50.setUp.txt +++ b/test/ReplayData/Issue50.setUp.txt @@ -1,15 +1,15 @@ GET /user {'Authorization': 'Basic login_and_password_removed'} null 200 -[('status', '200 OK'), ('content-length', '801'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4926'), ('server', 'nginx/1.0.13'), ('last-modified', 'Fri, 15 Jun 2012 15:37:06 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"41ade9c2e4794dd5214bb5f497af92cb"'), ('cache-control', 'private, max-age=60'), ('date', 'Thu, 28 Jun 2012 19:49:48 GMT'), ('content-type', 'application/json; charset=utf-8')] -{"type":"User","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","total_private_repos":5,"company":"Criteo","login":"jacquev6","owned_private_repos":5,"plan":{"space":614400,"private_repos":5,"collaborators":1,"name":"micro"},"following":24,"blog":"http://vincent-jacques.net","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","public_repos":11,"public_gists":3,"followers":13,"email":"vincent@vincent-jacques.net","private_gists":5,"created_at":"2010-07-09T06:10:06Z","disk_usage":16820,"collaborators":0,"html_url":"https://github.com/jacquev6","name":"Vincent Jacques","location":"Paris, France","hireable":false,"url":"https://api.github.com/users/jacquev6","id":327146,"bio":""} +[('status', '200 OK'), ('x-ratelimit-remaining', '4892'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('last-modified', 'Fri, 15 Jun 2012 15:37:06 GMT'), ('connection', 'keep-alive'), ('etag', '"41ade9c2e4794dd5214bb5f497af92cb"'), ('cache-control', 'private, max-age=60'), ('date', 'Thu, 28 Jun 2012 20:04:04 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"following":24,"created_at":"2010-07-09T06:10:06Z","type":"User","private_gists":5,"public_repos":11,"followers":13,"hireable":false,"html_url":"https://github.com/jacquev6","bio":"","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","disk_usage":16820,"blog":"http://vincent-jacques.net","location":"Paris, France","total_private_repos":5,"login":"jacquev6","owned_private_repos":5,"collaborators":0,"name":"Vincent Jacques","company":"Criteo","url":"https://api.github.com/users/jacquev6","plan":{"space":614400,"private_repos":5,"collaborators":1,"name":"micro"},"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146,"public_gists":3,"email":"vincent@vincent-jacques.net"} GET /repos/jacquev6/PyGithub {'Authorization': 'Basic login_and_password_removed'} null 200 -[('status', '200 OK'), ('content-length', '1154'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4925'), ('server', 'nginx/1.0.13'), ('last-modified', 'Tue, 26 Jun 2012 12:30:06 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"eb3fdb98c65995892b016162b91ad68c"'), ('cache-control', 'private, max-age=60'), ('date', 'Thu, 28 Jun 2012 19:49:49 GMT'), ('content-type', 'application/json; charset=utf-8')] -{"git_url":"git://github.com/jacquev6/PyGithub.git","homepage":"http://vincent-jacques.net/PyGithub","owner":{"login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"open_issues":11,"permissions":{"push":true,"admin":true,"pull":true},"description":"Python library implementing the full Github API v3","master_branch":"master","has_issues":true,"svn_url":"https://github.com/jacquev6/PyGithub","full_name":"jacquev6/PyGithub","mirror_url":null,"has_downloads":true,"size":184,"fork":false,"created_at":"2012-02-25T12:53:47Z","html_url":"https://github.com/jacquev6/PyGithub","name":"PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","language":"Python","clone_url":"https://github.com/jacquev6/PyGithub.git","private":false,"pushed_at":"2012-06-20T21:03:27Z","id":3544490,"forks":5,"has_wiki":false,"watchers":29,"ssh_url":"git@github.com:jacquev6/PyGithub.git","updated_at":"2012-06-26T12:30:06Z"} +[('status', '200 OK'), ('content-length', '1154'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4891'), ('server', 'nginx/1.0.13'), ('last-modified', 'Tue, 26 Jun 2012 12:30:06 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"eb3fdb98c65995892b016162b91ad68c"'), ('cache-control', 'private, max-age=60'), ('date', 'Thu, 28 Jun 2012 20:04:05 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"homepage":"http://vincent-jacques.net/PyGithub","owner":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146},"open_issues":12,"mirror_url":null,"git_url":"git://github.com/jacquev6/PyGithub.git","permissions":{"push":true,"admin":true,"pull":true},"description":"Python library implementing the full Github API v3","master_branch":"master","has_issues":true,"svn_url":"https://github.com/jacquev6/PyGithub","full_name":"jacquev6/PyGithub","has_downloads":true,"size":184,"fork":false,"created_at":"2012-02-25T12:53:47Z","html_url":"https://github.com/jacquev6/PyGithub","name":"PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","language":"Python","clone_url":"https://github.com/jacquev6/PyGithub.git","private":false,"pushed_at":"2012-06-20T21:03:27Z","id":3544490,"forks":5,"has_wiki":false,"watchers":29,"ssh_url":"git@github.com:jacquev6/PyGithub.git","updated_at":"2012-06-26T12:30:06Z"} GET /repos/jacquev6/PyGithub/issues/50 {'Authorization': 'Basic login_and_password_removed'} null 200 -[('status', '200 OK'), ('x-ratelimit-remaining', '4924'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '1971'), ('server', 'nginx/1.0.13'), ('last-modified', 'Wed, 27 Jun 2012 22:46:10 GMT'), ('connection', 'keep-alive'), ('etag', '"bb61450865a934ca7ee53d6dde588876"'), ('cache-control', 'private, max-age=60'), ('date', 'Thu, 28 Jun 2012 19:49:49 GMT'), ('content-type', 'application/json; charset=utf-8')] -{"labels":[{"color":"e10c02","name":"Bug","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug"},{"color":"e10c02","name":"RequestedByUser","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/RequestedByUser"}],"body":null,"state":"open","closed_at":null,"assignee":{"login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"comments":2,"title":"[Issue] Replace label _identity with name","created_at":"2012-06-25T18:45:05Z","number":50,"milestone":{"open_issues":3,"state":"open","due_on":"2012-07-01T07:00:00Z","description":"","creator":{"login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_issues":0,"title":"Version 1.2","created_at":"2012-06-25T19:31:02Z","number":6,"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/6","id":136827},"html_url":"https://github.com/jacquev6/PyGithub/issues/50","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/50","closed_by":null,"user":{"login":"philipkimmey","gravatar_id":"6baf93a46e584369e1ea64bc1aca62f4","url":"https://api.github.com/users/philipkimmey","avatar_url":"https://secure.gravatar.com/avatar/6baf93a46e584369e1ea64bc1aca62f4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":211079},"id":5256315,"pull_request":{"patch_url":"https://github.com/jacquev6/PyGithub/pull/50.patch","diff_url":"https://github.com/jacquev6/PyGithub/pull/50.diff","html_url":"https://github.com/jacquev6/PyGithub/pull/50"},"updated_at":"2012-06-25T19:33:48Z"} +[('status', '200 OK'), ('content-length', '2169'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4890'), ('server', 'nginx/1.0.13'), ('last-modified', 'Wed, 27 Jun 2012 22:46:10 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"bb61450865a934ca7ee53d6dde588876"'), ('cache-control', 'private, max-age=60'), ('date', 'Thu, 28 Jun 2012 20:04:05 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"labels":[{"color":"e10c02","name":"Bug","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug"},{"color":"ffff00","name":"Label with spaces and strange characters (&*#$)","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Label+with+spaces+and+strange+characters+%28%26%2A%23%24%29"},{"color":"e10c02","name":"RequestedByUser","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/RequestedByUser"}],"body":null,"state":"open","closed_at":null,"assignee":{"login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"comments":2,"title":"[Issue] Replace label _identity with name","created_at":"2012-06-25T18:45:05Z","number":50,"milestone":{"open_issues":3,"state":"open","due_on":"2012-07-01T07:00:00Z","description":"","creator":{"login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_issues":0,"title":"Version 1.2","created_at":"2012-06-25T19:31:02Z","number":6,"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/6","id":136827},"html_url":"https://github.com/jacquev6/PyGithub/issues/50","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/50","closed_by":null,"user":{"login":"philipkimmey","gravatar_id":"6baf93a46e584369e1ea64bc1aca62f4","url":"https://api.github.com/users/philipkimmey","avatar_url":"https://secure.gravatar.com/avatar/6baf93a46e584369e1ea64bc1aca62f4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":211079},"id":5256315,"pull_request":{"diff_url":"https://github.com/jacquev6/PyGithub/pull/50.diff","patch_url":"https://github.com/jacquev6/PyGithub/pull/50.patch","html_url":"https://github.com/jacquev6/PyGithub/pull/50"},"updated_at":"2012-06-25T19:33:48Z"} diff --git a/test/ReplayData/Issue50.testAddLabelToIssue.txt b/test/ReplayData/Issue50.testAddLabelToIssue.txt index 96b8f53b..9f87f59a 100644 --- a/test/ReplayData/Issue50.testAddLabelToIssue.txt +++ b/test/ReplayData/Issue50.testAddLabelToIssue.txt @@ -1,10 +1,10 @@ GET /repos/jacquev6/PyGithub/labels/Label%20with%20spaces%20and%20strange%20characters%20%28%26%2A%23%24%29 {'Authorization': 'Basic login_and_password_removed'} null 200 -[('status', '200 OK'), ('x-ratelimit-remaining', '4949'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '197'), ('server', 'nginx/1.0.13'), ('last-modified', 'Thu, 28 Jun 2012 19:29:52 GMT'), ('connection', 'keep-alive'), ('etag', '"c536d81e7479c8c9acfa7deeddeb6e72"'), ('cache-control', 'private, max-age=60'), ('date', 'Thu, 28 Jun 2012 19:38:12 GMT'), ('content-type', 'application/json; charset=utf-8')] +[('status', '200 OK'), ('content-length', '197'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4918'), ('server', 'nginx/1.0.13'), ('last-modified', 'Thu, 28 Jun 2012 19:29:52 GMT'), ('connection', 'keep-alive'), ('etag', '"c536d81e7479c8c9acfa7deeddeb6e72"'), ('cache-control', 'private, max-age=60'), ('date', 'Thu, 28 Jun 2012 19:54:44 GMT'), ('content-type', 'application/json; charset=utf-8')] {"color":"ffff00","name":"Label with spaces and strange characters (&*#$)","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Label+with+spaces+and+strange+characters+%28%26%2A%23%24%29"} -POST /repos/jacquev6/PyGithub/issues/50/labels {'Authorization': 'Basic login_and_password_removed'} ["Label%20with%20spaces%20and%20strange%20characters%20%28%26%2A%23%24%29"] -422 -[('status', '422 Unprocessable Entity'), ('x-ratelimit-remaining', '4948'), ('content-length', '179'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('cache-control', ''), ('date', 'Thu, 28 Jun 2012 19:38:13 GMT'), ('content-type', 'application/json; charset=utf-8')] -{"errors":[{"field":"name","resource":"Label","value":["Label%20with%20spaces%20and%20strange%20characters%20%28%26%2A%23%24%29"],"code":"missing"}],"message":"Validation Failed"} +POST /repos/jacquev6/PyGithub/issues/50/labels {'Authorization': 'Basic login_and_password_removed'} ["Label with spaces and strange characters (&*#$)"] +200 +[('status', '200 OK'), ('content-length', '419'), ('x-ratelimit-limit', '5000'), ('x-ratelimit-remaining', '4917'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('etag', '"e1d0a1c54608a676af0cdc1f63e04da7"'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Thu, 28 Jun 2012 19:54:44 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"color":"e10c02","name":"Bug","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug"},{"color":"ffff00","name":"Label with spaces and strange characters (&*#$)","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Label+with+spaces+and+strange+characters+%28%26%2A%23%24%29"},{"color":"e10c02","name":"RequestedByUser","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/RequestedByUser"}] diff --git a/test/ReplayData/Issue50.testCreateIssueWithLabel.txt b/test/ReplayData/Issue50.testCreateIssueWithLabel.txt index 64416fac..e3b3cc62 100644 --- a/test/ReplayData/Issue50.testCreateIssueWithLabel.txt +++ b/test/ReplayData/Issue50.testCreateIssueWithLabel.txt @@ -1,10 +1,10 @@ GET /repos/jacquev6/PyGithub/labels/Label%20with%20spaces%20and%20strange%20characters%20%28%26%2A%23%24%29 {'Authorization': 'Basic login_and_password_removed'} null 200 -[('status', '200 OK'), ('content-length', '197'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4923'), ('server', 'nginx/1.0.13'), ('last-modified', 'Thu, 28 Jun 2012 19:29:52 GMT'), ('connection', 'keep-alive'), ('etag', '"c536d81e7479c8c9acfa7deeddeb6e72"'), ('cache-control', 'private, max-age=60'), ('date', 'Thu, 28 Jun 2012 19:49:50 GMT'), ('content-type', 'application/json; charset=utf-8')] +[('status', '200 OK'), ('content-length', '197'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4908'), ('server', 'nginx/1.0.13'), ('last-modified', 'Thu, 28 Jun 2012 19:29:52 GMT'), ('connection', 'keep-alive'), ('etag', '"c536d81e7479c8c9acfa7deeddeb6e72"'), ('cache-control', 'private, max-age=60'), ('date', 'Thu, 28 Jun 2012 19:56:20 GMT'), ('content-type', 'application/json; charset=utf-8')] {"color":"ffff00","name":"Label with spaces and strange characters (&*#$)","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Label+with+spaces+and+strange+characters+%28%26%2A%23%24%29"} -POST /repos/jacquev6/PyGithub/issues {'Authorization': 'Basic login_and_password_removed'} {"labels": ["Label%20with%20spaces%20and%20strange%20characters%20%28%26%2A%23%24%29"], "title": "Issue created by PyGithub to test issue #50"} -422 -[('status', '422 Unprocessable Entity'), ('content-length', '179'), ('x-ratelimit-remaining', '4922'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('cache-control', ''), ('date', 'Thu, 28 Jun 2012 19:49:51 GMT'), ('content-type', 'application/json; charset=utf-8')] -{"errors":[{"field":"name","resource":"Label","value":["Label%20with%20spaces%20and%20strange%20characters%20%28%26%2A%23%24%29"],"code":"missing"}],"message":"Validation Failed"} +POST /repos/jacquev6/PyGithub/issues {'Authorization': 'Basic login_and_password_removed'} {"labels": ["Label with spaces and strange characters (&*#$)"], "title": "Issue created by PyGithub to test issue #50"} +201 +[('status', '201 Created'), ('content-length', '963'), ('x-ratelimit-limit', '5000'), ('x-ratelimit-remaining', '4907'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('etag', '"e1e5db9ef97e084a3d36ede8dc41c0d9"'), ('location', 'https://api.github.com/repos/jacquev6/PyGithub/issues/52'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Thu, 28 Jun 2012 19:56:21 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"labels":[{"color":"ffff00","name":"Label with spaces and strange characters (&*#$)","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Label+with+spaces+and+strange+characters+%28%26%2A%23%24%29"}],"body":null,"state":"open","closed_at":null,"assignee":null,"comments":0,"title":"Issue created by PyGithub to test issue #50","created_at":"2012-06-28T19:56:21Z","number":52,"milestone":null,"html_url":"https://github.com/jacquev6/PyGithub/issues/52","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/52","closed_by":null,"user":{"login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146},"id":5330629,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"updated_at":"2012-06-28T19:56:21Z"} diff --git a/test/ReplayData/Issue50.testGetIssuesWithLabel.txt b/test/ReplayData/Issue50.testGetIssuesWithLabel.txt index 10f7c4bd..11f13f9b 100644 --- a/test/ReplayData/Issue50.testGetIssuesWithLabel.txt +++ b/test/ReplayData/Issue50.testGetIssuesWithLabel.txt @@ -1,10 +1,10 @@ GET /repos/jacquev6/PyGithub/labels/Label%20with%20spaces%20and%20strange%20characters%20%28%26%2A%23%24%29 {'Authorization': 'Basic login_and_password_removed'} null 200 -[('status', '200 OK'), ('x-ratelimit-remaining', '4928'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '197'), ('server', 'nginx/1.0.13'), ('last-modified', 'Thu, 28 Jun 2012 19:29:52 GMT'), ('connection', 'keep-alive'), ('etag', '"c536d81e7479c8c9acfa7deeddeb6e72"'), ('cache-control', 'private, max-age=60'), ('date', 'Thu, 28 Jun 2012 19:48:05 GMT'), ('content-type', 'application/json; charset=utf-8')] +[('status', '200 OK'), ('x-ratelimit-remaining', '4894'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '197'), ('server', 'nginx/1.0.13'), ('last-modified', 'Thu, 28 Jun 2012 19:29:52 GMT'), ('connection', 'keep-alive'), ('etag', '"c536d81e7479c8c9acfa7deeddeb6e72"'), ('cache-control', 'private, max-age=60'), ('date', 'Thu, 28 Jun 2012 20:03:09 GMT'), ('content-type', 'application/json; charset=utf-8')] {"color":"ffff00","name":"Label with spaces and strange characters (&*#$)","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Label+with+spaces+and+strange+characters+%28%26%2A%23%24%29"} -GET /repos/jacquev6/PyGithub/issues?labels=Label%2520with%2520spaces%2520and%2520strange%2520characters%2520%2528%2526%252A%2523%2524%2529 {'Authorization': 'Basic login_and_password_removed'} null +GET /repos/jacquev6/PyGithub/issues?labels=Label+with+spaces+and+strange+characters+%28%26%2A%23%24%29 {'Authorization': 'Basic login_and_password_removed'} null 200 -[('status', '200 OK'), ('content-length', '2'), ('x-ratelimit-limit', '5000'), ('x-ratelimit-remaining', '4927'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('etag', '"d751713988987e9331980363e24189ce"'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Thu, 28 Jun 2012 19:48:05 GMT'), ('content-type', 'application/json; charset=utf-8')] -[] +[('status', '200 OK'), ('content-length', '3101'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4893'), ('server', 'nginx/1.0.13'), ('last-modified', 'Thu, 28 Jun 2012 19:56:21 GMT'), ('connection', 'keep-alive'), ('etag', '"60a85542a2e824eb5fc96c5a99657fff"'), ('cache-control', 'private, max-age=60'), ('date', 'Thu, 28 Jun 2012 20:03:10 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"labels":[{"color":"ffff00","name":"Label with spaces and strange characters (&*#$)","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Label+with+spaces+and+strange+characters+%28%26%2A%23%24%29"}],"body":null,"state":"open","closed_at":null,"assignee":null,"comments":0,"title":"Issue created by PyGithub to test issue #50","created_at":"2012-06-28T19:56:21Z","number":52,"milestone":null,"html_url":"https://github.com/jacquev6/PyGithub/issues/52","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/52","user":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146},"id":5330629,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"updated_at":"2012-06-28T19:56:21Z"},{"labels":[{"color":"e10c02","name":"Bug","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug"},{"color":"e10c02","name":"RequestedByUser","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/RequestedByUser"},{"color":"ffff00","name":"Label with spaces and strange characters (&*#$)","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Label+with+spaces+and+strange+characters+%28%26%2A%23%24%29"}],"body":null,"state":"open","closed_at":null,"assignee":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146},"comments":2,"title":"[Issue] Replace label _identity with name","created_at":"2012-06-25T18:45:05Z","number":50,"milestone":{"open_issues":3,"state":"open","due_on":"2012-07-01T07:00:00Z","description":"","creator":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146},"closed_issues":0,"title":"Version 1.2","created_at":"2012-06-25T19:31:02Z","number":6,"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/6","id":136827},"html_url":"https://github.com/jacquev6/PyGithub/issues/50","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/50","user":{"avatar_url":"https://secure.gravatar.com/avatar/6baf93a46e584369e1ea64bc1aca62f4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"philipkimmey","gravatar_id":"6baf93a46e584369e1ea64bc1aca62f4","url":"https://api.github.com/users/philipkimmey","id":211079},"id":5256315,"pull_request":{"diff_url":"https://github.com/jacquev6/PyGithub/pull/50.diff","patch_url":"https://github.com/jacquev6/PyGithub/pull/50.patch","html_url":"https://github.com/jacquev6/PyGithub/pull/50"},"updated_at":"2012-06-25T19:33:48Z"}] diff --git a/test/ReplayData/Issue50.testIssueGetLabels.txt b/test/ReplayData/Issue50.testIssueGetLabels.txt index 0b6b4a57..219df7fa 100644 --- a/test/ReplayData/Issue50.testIssueGetLabels.txt +++ b/test/ReplayData/Issue50.testIssueGetLabels.txt @@ -1,5 +1,5 @@ GET /repos/jacquev6/PyGithub/issues/50/labels {'Authorization': 'Basic login_and_password_removed'} null 200 -[('status', '200 OK'), ('content-length', '221'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4932'), ('server', 'nginx/1.0.13'), ('last-modified', 'Wed, 27 Jun 2012 22:46:10 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"bb61450865a934ca7ee53d6dde588876"'), ('cache-control', 'private, max-age=60'), ('date', 'Thu, 28 Jun 2012 19:46:04 GMT'), ('content-type', 'application/json; charset=utf-8')] -[{"color":"e10c02","name":"Bug","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug"},{"color":"e10c02","name":"RequestedByUser","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/RequestedByUser"}] +[('status', '200 OK'), ('x-ratelimit-remaining', '4903'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '419'), ('server', 'nginx/1.0.13'), ('last-modified', 'Thu, 28 Jun 2012 19:29:52 GMT'), ('connection', 'keep-alive'), ('etag', '"c536d81e7479c8c9acfa7deeddeb6e72"'), ('cache-control', 'private, max-age=60'), ('date', 'Thu, 28 Jun 2012 19:57:21 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"color":"e10c02","name":"Bug","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug"},{"color":"ffff00","name":"Label with spaces and strange characters (&*#$)","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Label+with+spaces+and+strange+characters+%28%26%2A%23%24%29"},{"color":"e10c02","name":"RequestedByUser","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/RequestedByUser"}] diff --git a/test/ReplayData/Issue50.testSetIssueLabels.txt b/test/ReplayData/Issue50.testSetIssueLabels.txt index 39e07c6a..cdf3622e 100644 --- a/test/ReplayData/Issue50.testSetIssueLabels.txt +++ b/test/ReplayData/Issue50.testSetIssueLabels.txt @@ -1,20 +1,20 @@ GET /repos/jacquev6/PyGithub/labels/Bug {'Authorization': 'Basic login_and_password_removed'} null 200 -[('status', '200 OK'), ('content-length', '97'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4944'), ('server', 'nginx/1.0.13'), ('last-modified', 'Sat, 20 Oct 2007 11:24:19 GMT'), ('connection', 'keep-alive'), ('etag', '"147027ac86c95043e935b318f88c3683"'), ('cache-control', 'private, max-age=60'), ('date', 'Thu, 28 Jun 2012 19:40:43 GMT'), ('content-type', 'application/json; charset=utf-8')] +[('status', '200 OK'), ('content-length', '97'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4889'), ('server', 'nginx/1.0.13'), ('last-modified', 'Sat, 20 Oct 2007 11:24:19 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"147027ac86c95043e935b318f88c3683"'), ('cache-control', 'private, max-age=60'), ('date', 'Thu, 28 Jun 2012 20:04:06 GMT'), ('content-type', 'application/json; charset=utf-8')] {"color":"e10c02","name":"Bug","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug"} GET /repos/jacquev6/PyGithub/labels/RequestedByUser {'Authorization': 'Basic login_and_password_removed'} null 200 -[('status', '200 OK'), ('content-length', '121'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4943'), ('server', 'nginx/1.0.13'), ('last-modified', 'Sat, 20 Oct 2007 11:24:19 GMT'), ('connection', 'keep-alive'), ('etag', '"147027ac86c95043e935b318f88c3683"'), ('cache-control', 'private, max-age=60'), ('date', 'Thu, 28 Jun 2012 19:40:44 GMT'), ('content-type', 'application/json; charset=utf-8')] +[('status', '200 OK'), ('content-length', '121'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4888'), ('server', 'nginx/1.0.13'), ('last-modified', 'Sat, 20 Oct 2007 11:24:19 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"147027ac86c95043e935b318f88c3683"'), ('cache-control', 'private, max-age=60'), ('date', 'Thu, 28 Jun 2012 20:04:06 GMT'), ('content-type', 'application/json; charset=utf-8')] {"color":"e10c02","name":"RequestedByUser","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/RequestedByUser"} GET /repos/jacquev6/PyGithub/labels/Label%20with%20spaces%20and%20strange%20characters%20%28%26%2A%23%24%29 {'Authorization': 'Basic login_and_password_removed'} null 200 -[('status', '200 OK'), ('content-length', '197'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4942'), ('server', 'nginx/1.0.13'), ('last-modified', 'Thu, 28 Jun 2012 19:29:52 GMT'), ('connection', 'keep-alive'), ('etag', '"c536d81e7479c8c9acfa7deeddeb6e72"'), ('cache-control', 'private, max-age=60'), ('date', 'Thu, 28 Jun 2012 19:40:45 GMT'), ('content-type', 'application/json; charset=utf-8')] +[('status', '200 OK'), ('x-ratelimit-remaining', '4887'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '197'), ('server', 'nginx/1.0.13'), ('last-modified', 'Thu, 28 Jun 2012 19:29:52 GMT'), ('connection', 'keep-alive'), ('etag', '"c536d81e7479c8c9acfa7deeddeb6e72"'), ('cache-control', 'private, max-age=60'), ('date', 'Thu, 28 Jun 2012 20:04:07 GMT'), ('content-type', 'application/json; charset=utf-8')] {"color":"ffff00","name":"Label with spaces and strange characters (&*#$)","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Label+with+spaces+and+strange+characters+%28%26%2A%23%24%29"} -PUT /repos/jacquev6/PyGithub/issues/50/labels {'Authorization': 'Basic login_and_password_removed'} ["Bug", "RequestedByUser", "Label%20with%20spaces%20and%20strange%20characters%20%28%26%2A%23%24%29"] -422 -[('status', '422 Unprocessable Entity'), ('content-length', '179'), ('x-ratelimit-remaining', '4941'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('cache-control', ''), ('date', 'Thu, 28 Jun 2012 19:40:45 GMT'), ('content-type', 'application/json; charset=utf-8')] -{"errors":[{"field":"name","resource":"Label","value":["Label%20with%20spaces%20and%20strange%20characters%20%28%26%2A%23%24%29"],"code":"missing"}],"message":"Validation Failed"} +PUT /repos/jacquev6/PyGithub/issues/50/labels {'Authorization': 'Basic login_and_password_removed'} ["Bug", "RequestedByUser", "Label with spaces and strange characters (&*#$)"] +200 +[('status', '200 OK'), ('content-length', '419'), ('x-ratelimit-limit', '5000'), ('x-ratelimit-remaining', '4886'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('etag', '"e1d0a1c54608a676af0cdc1f63e04da7"'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Thu, 28 Jun 2012 20:04:08 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"color":"e10c02","name":"Bug","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug"},{"color":"ffff00","name":"Label with spaces and strange characters (&*#$)","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Label+with+spaces+and+strange+characters+%28%26%2A%23%24%29"},{"color":"e10c02","name":"RequestedByUser","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/RequestedByUser"}] From bdad6a46121e9f7fccc3d305228d41c85a345283 Mon Sep 17 00:00:00 2001 From: Vincent Jacques Date: Thu, 28 Jun 2012 21:27:53 +0100 Subject: [PATCH 04/10] Create documentation and method stubs for issue #49 (legacy search api) --- doc/ReferenceOfApis.md | 16 ++++++++++++++++ doc/ReferenceOfClasses.md | 10 ++++++++++ github/Github.py | 9 +++++++++ github/Repository.py | 3 +++ 4 files changed, 38 insertions(+) diff --git a/doc/ReferenceOfApis.md b/doc/ReferenceOfApis.md index 3ee24565..ce01775c 100644 --- a/doc/ReferenceOfApis.md +++ b/doc/ReferenceOfApis.md @@ -57,6 +57,22 @@ API `/issues` ============= * GET: `AuthenticatedUser.get_issues` +API `/legacy/issues/search/:owner/:repository/:state/:keyword` +============================================================== +* GET: `Repository.search_issues` + +API `/legacy/repos/search/:keyword` +============================================================== +* GET: `Github.search_repos` + +API `/legacy/user/search/:keyword` +============================================================== +* GET: `Github.search_users` + +API `/legacy/user/email/:email` +============================================================== +* GET: `Github.search_user_by_email` + API `/networks/:user/:repo/events` ================================== * GET: `Repository.get_network_events` diff --git a/doc/ReferenceOfClasses.md b/doc/ReferenceOfClasses.md index 102dd279..8e2b8aa8 100644 --- a/doc/ReferenceOfClasses.md +++ b/doc/ReferenceOfClasses.md @@ -20,7 +20,14 @@ Methods * `get_user( login )`: `NamedUser` * `get_organization( login )`: `Organization` * `get_gist( id )`: `Gist` + * `id`: integer * `get_gists()`: list of `Gist` +* `search_repos( keyword )`: list of `Repository` + * `keyword`: string +* `search_users( keyword )`: list of `NamedUser` + * `keyword`: string +* `search_user_by_email( email )`: `NamedUser` + * `email`: string Class `GithubException` ======================= @@ -1191,6 +1198,9 @@ Issues * `sort`: string * `direction`: string * `since`: datetime +* `search_issues( state, keyword )`: list of `Issue` + * `state`: "open" or "closed" + * `keyword`: string Issues_events ------------- diff --git a/github/Github.py b/github/Github.py index 9ffb5635..ec9ff2d7 100644 --- a/github/Github.py +++ b/github/Github.py @@ -64,3 +64,12 @@ class Github( object ): headers, data ) + + def search_repos( self, keyword ): + pass + + def search_users( self, keyword ): + pass + + def search_user_by_email( self, email ): + pass diff --git a/github/Repository.py b/github/Repository.py index 16ec98dd..bb266689 100644 --- a/github/Repository.py +++ b/github/Repository.py @@ -1002,6 +1002,9 @@ class Repository( GithubObject.GithubObject ): None ) + def search_issues( self, state, keyword ): + pass + @property def _identity( self ): return self.owner.login + "/" + self.name From ed31abe6de768d67e44faa3a53dfad63ff914fee Mon Sep 17 00:00:00 2001 From: Vincent Jacques Date: Thu, 28 Jun 2012 22:06:05 +0100 Subject: [PATCH 05/10] Add 4 (failing) tests for legacy search API (issue #49) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Naïve implementation done in this commit will not work: - pagination is managed another way - users, repositories and issues do not have the standard format --- github/Github.py | 38 +++++++++++++++++-- github/Repository.py | 15 +++++++- test/Github.py | 10 +++++ test/ReplayData/Github.testSearchRepos.txt | 5 +++ .../Github.testSearchUserByEmail.txt | 5 +++ test/ReplayData/Github.testSearchUsers.txt | 5 +++ .../Repository.testSearchIssues.txt | 5 +++ test/Repository.py | 3 ++ 8 files changed, 82 insertions(+), 4 deletions(-) create mode 100644 test/ReplayData/Github.testSearchRepos.txt create mode 100644 test/ReplayData/Github.testSearchUserByEmail.txt create mode 100644 test/ReplayData/Github.testSearchUsers.txt create mode 100644 test/ReplayData/Repository.testSearchIssues.txt diff --git a/github/Github.py b/github/Github.py index ec9ff2d7..0f64a0c5 100644 --- a/github/Github.py +++ b/github/Github.py @@ -17,6 +17,7 @@ import NamedUser import Organization import Gist import PaginatedList +import Repository class Github( object ): def __init__( self, login_or_token = None, password = None ): @@ -66,10 +67,41 @@ class Github( object ): ) def search_repos( self, keyword ): - pass + assert isinstance( keyword, ( str, unicode ) ), keyword + headers, data = self.__requester.requestAndCheck( + "GET", + "https://api.github.com/legacy/repos/search/" + keyword, + None, + None + ) + return PaginatedList.PaginatedList( + Repository.Repository, + self.__requester, + headers, + data[ "repositories" ] + ) def search_users( self, keyword ): - pass + assert isinstance( keyword, ( str, unicode ) ), keyword + headers, data = self.__requester.requestAndCheck( + "GET", + "https://api.github.com/legacy/user/search/" + keyword, + None, + None + ) + return PaginatedList.PaginatedList( + NamedUser.NamedUser, + self.__requester, + headers, + data[ "users" ] + ) def search_user_by_email( self, email ): - pass + assert isinstance( email, ( str, unicode ) ), email + headers, data = self.__requester.requestAndCheck( + "GET", + "https://api.github.com/legacy/user/email/" + email, + None, + None + ) + return NamedUser.NamedUser( self.__requester, data[ "user" ], completed = False ) diff --git a/github/Repository.py b/github/Repository.py index bb266689..499eab09 100644 --- a/github/Repository.py +++ b/github/Repository.py @@ -1003,7 +1003,20 @@ class Repository( GithubObject.GithubObject ): ) def search_issues( self, state, keyword ): - pass + assert state in [ "open", "closed" ], state + assert isinstance( keyword, ( str, unicode ) ), keyword + headers, data = self._requester.requestAndCheck( + "GET", + "https://api.github.com/legacy/issues/search/" + self.owner.login + "/" + self.name + "/" + state + "/" + keyword, + None, + None + ) + return PaginatedList.PaginatedList( + Issue.Issue, + self._requester, + headers, + data[ "issues" ] + ) @property def _identity( self ): diff --git a/test/Github.py b/test/Github.py index bf9ed4dd..6a9abe24 100644 --- a/test/Github.py +++ b/test/Github.py @@ -16,3 +16,13 @@ import Framework class Github( Framework.TestCase ): def testGetGists( self ): self.assertListKeyBegin( self.g.get_gists(), lambda g: g.id, [ "2729695", "2729656", "2729597", "2729584", "2729569", "2729554", "2729543", "2729537", "2729536", "2729533", "2729525", "2729522", "2729519", "2729515", "2729506", "2729487", "2729484", "2729482", "2729441", "2729432", "2729420", "2729398", "2729372", "2729371", "2729351", "2729346", "2729316", "2729304", "2729296", "2729276", "2729272", "2729265", "2729195", "2729160", "2729143", "2729127", "2729119", "2729113", "2729103", "2729069", "2729059", "2729051", "2729029", "2729027", "2729026", "2729022", "2729002", "2728985", "2728979", "2728964", "2728937", "2728933", "2728884", "2728869", "2728866", "2728855", "2728854", "2728853", "2728846", "2728825", "2728814", "2728813", "2728812", "2728805", "2728802", "2728800", "2728798", "2728797", "2728796", "2728793", "2728758", "2728754", "2728751", "2728748", "2728721", "2728716", "2728715", "2728705", "2728701", "2728699", "2728697", "2728688", "2728683", "2728677", "2728649", "2728640", "2728625", "2728620", "2728615", "2728614", "2728565", "2728564", "2728554", "2728523", "2728519", "2728511", "2728497", "2728496", "2728495", "2728487" ] ) + + def testSearchRepos( self ): + self.assertListKeyBegin( self.g.search_repos( "github api v3" ), lambda r: r.full_name, [ "pengwynn/octokit", "jwilger/github-v3-api", "acoulton/github_v3_api" ] ) + + def testSearchUsers( self ): + self.assertListKeyBegin( self.g.search_users( "vincent" ), lambda u: u.login, [ "nvie", "obra", "lusis" ] ) + + def testSearchUserByEmail( self ): + user = self.g.search_user_by_email( "vincent@vincent-jacques.net" ) + self.assertEqual( user.login, "jacquev6" ) diff --git a/test/ReplayData/Github.testSearchRepos.txt b/test/ReplayData/Github.testSearchRepos.txt new file mode 100644 index 00000000..86b964b2 --- /dev/null +++ b/test/ReplayData/Github.testSearchRepos.txt @@ -0,0 +1,5 @@ +GET /legacy/repos/search/github api v3 {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4984'), ('content-length', '41937'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"ca6d7101af2acb5a04f11645bc01f4b2"'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Thu, 28 Jun 2012 20:53:53 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"repositories":[{"type":"repo","has_issues":true,"created_at":"2009-12-10T13:41:49-08:00","score":16.919834,"owner":"pengwynn","has_downloads":true,"followers":295,"created":"2009-12-10T13:41:49-08:00","pushed":"2012-06-28T05:54:54-07:00","homepage":"http://pengwynn.github.com/octokit","watchers":295,"has_wiki":true,"language":"Ruby","pushed_at":"2012-06-28T05:54:54-07:00","forks":73,"fork":false,"size":248,"name":"octokit","url":"https://github.com/pengwynn/octokit","description":"Simple Ruby wrapper for the GitHub v3 API","open_issues":2,"private":false,"integrate_branch":"master","username":"pengwynn"},{"type":"repo","has_issues":true,"created_at":"2011-06-23T15:52:33-07:00","score":8.835576,"owner":"jwilger","has_downloads":true,"followers":35,"created":"2011-06-23T15:52:33-07:00","pushed":"2012-01-20T12:46:30-08:00","watchers":35,"has_wiki":false,"language":"Ruby","pushed_at":"2012-01-20T12:46:30-08:00","forks":13,"fork":false,"size":212,"name":"github-v3-api","url":"https://github.com/jwilger/github-v3-api","description":"Ruby Client for the GitHub v3 API","open_issues":2,"private":false,"username":"jwilger"},{"type":"repo","has_issues":true,"created_at":"2011-10-11T13:02:03-07:00","master_branch":"develop","score":7.502039,"owner":"acoulton","has_downloads":true,"followers":11,"created":"2011-10-11T13:02:03-07:00","pushed":"2011-12-29T20:40:32-08:00","homepage":"","watchers":11,"has_wiki":true,"language":"PHP","pushed_at":"2011-12-29T20:40:32-08:00","forks":4,"fork":false,"size":164,"name":"github_v3_api","url":"https://github.com/acoulton/github_v3_api","description":"KO3 module for interacting with the new Github v3 API","open_issues":1,"private":false,"username":"acoulton"},{"type":"repo","has_issues":true,"created_at":"2011-09-25T12:36:22-07:00","score":7.3562603,"owner":"peter-murach","has_downloads":true,"followers":77,"created":"2011-09-25T12:36:22-07:00","pushed":"2012-06-24T10:54:21-07:00","homepage":"http://peter-murach.github.com/github","watchers":77,"has_wiki":true,"language":"Ruby","pushed_at":"2012-06-24T10:54:21-07:00","forks":26,"fork":false,"size":300,"name":"github","url":"https://github.com/peter-murach/github","description":"Ruby interface to github API v3","open_issues":1,"private":false,"username":"peter-murach"},{"type":"repo","has_issues":true,"created_at":"2012-06-04T15:20:41-07:00","score":7.121046,"owner":"VisualAppeal","has_downloads":true,"followers":2,"organization":"VisualAppeal","created":"2012-06-04T15:20:41-07:00","pushed":"2012-06-04T15:29:07-07:00","watchers":2,"has_wiki":true,"language":"PHP","pushed_at":"2012-06-04T15:29:07-07:00","forks":1,"fork":false,"size":132,"name":"Github-API-v3","url":"https://github.com/VisualAppeal/Github-API-v3","description":"PHP Github API client for version 3.","open_issues":0,"private":false,"username":"VisualAppeal"},{"type":"repo","has_issues":true,"created_at":"2012-02-21T02:02:04-08:00","score":7.116807,"owner":"guillaumepotier","has_downloads":true,"followers":2,"created":"2012-02-21T02:02:04-08:00","pushed":"2012-02-23T01:05:23-08:00","homepage":"","watchers":2,"has_wiki":true,"language":"PHP","pushed_at":"2012-02-23T01:05:23-08:00","forks":1,"fork":false,"size":104,"name":"GithubApi_v3","url":"https://github.com/guillaumepotier/GithubApi_v3","description":"Very simple class I use for my pet projects","open_issues":0,"private":false,"username":"guillaumepotier"},{"type":"repo","has_issues":true,"created_at":"2012-01-14T17:32:10-08:00","score":6.182912,"owner":"phated","has_downloads":true,"followers":3,"created":"2012-01-14T17:32:10-08:00","pushed":"2012-01-15T23:58:31-08:00","homepage":"","watchers":3,"has_wiki":true,"language":"JavaScript","pushed_at":"2012-01-15T23:58:31-08:00","forks":1,"fork":false,"size":9196,"name":"github-v3-api-js","url":"https://github.com/phated/github-v3-api-js","description":"Experimentation with github api (v3) in javascript","open_issues":0,"private":false,"username":"phated"},{"type":"repo","has_issues":true,"created_at":"2012-02-05T20:34:12-08:00","score":6.127202,"owner":"rsanders","has_downloads":true,"followers":3,"created":"2012-02-05T20:34:12-08:00","pushed":"2012-02-07T22:50:13-08:00","homepage":"","watchers":3,"has_wiki":true,"language":"Emacs Lisp","pushed_at":"2012-02-07T22:50:13-08:00","forks":3,"fork":false,"size":120,"name":"github-api-v3.el","url":"https://github.com/rsanders/github-api-v3.el","description":"Emacs Lisp interface for the GitHub API v3","open_issues":0,"private":false,"username":"rsanders"},{"type":"repo","has_issues":true,"created_at":"2011-01-21T13:09:02-08:00","score":5.6330614,"owner":"farnoy","has_downloads":true,"followers":46,"created":"2011-01-21T13:09:02-08:00","pushed":"2012-01-31T04:33:03-08:00","homepage":"","watchers":46,"has_wiki":true,"language":"Ruby","pushed_at":"2012-01-31T04:33:03-08:00","forks":13,"fork":false,"size":164,"name":"github-api-client","url":"https://github.com/farnoy/github-api-client","description":"v2+v3 GitHub API Ruby client library","open_issues":5,"private":false,"username":"farnoy"},{"type":"repo","has_issues":true,"created_at":"2011-11-20T18:13:13-08:00","score":4.9115667,"owner":"pksunkara","has_downloads":true,"followers":61,"created":"2011-11-20T18:13:13-08:00","pushed":"2012-06-20T10:21:27-07:00","homepage":"","watchers":61,"has_wiki":true,"language":"CoffeeScript","pushed_at":"2012-06-20T10:21:27-07:00","forks":16,"fork":false,"size":160,"name":"octonode","url":"https://github.com/pksunkara/octonode","description":"github api v3 in nodejs","open_issues":2,"private":false,"username":"pksunkara"},{"type":"repo","has_issues":true,"created_at":"2011-10-23T01:34:00-07:00","score":4.2667623,"owner":"yiiext","has_downloads":true,"followers":11,"organization":"yiiext","created":"2011-10-23T01:34:00-07:00","pushed":"2011-11-16T01:07:50-08:00","homepage":"http://developer.github.com/v3/","watchers":11,"has_wiki":true,"language":"PHP","pushed_at":"2011-11-16T01:07:50-08:00","forks":2,"fork":false,"size":164,"name":"github-api","url":"https://github.com/yiiext/github-api","description":"implementation of github api v3","open_issues":1,"private":false,"username":"yiiext"},{"type":"repo","has_issues":true,"created_at":"2011-09-06T13:24:42-07:00","score":4.205773,"owner":"dsyph3r","has_downloads":true,"followers":22,"created":"2011-09-06T13:24:42-07:00","pushed":"2012-03-09T15:40:02-08:00","homepage":"","watchers":22,"has_wiki":true,"language":"PHP","pushed_at":"2012-03-09T15:40:02-08:00","forks":7,"fork":false,"size":168,"name":"github-api3-php","url":"https://github.com/dsyph3r/github-api3-php","description":"PHP library for the GitHub API v3","open_issues":1,"private":false,"username":"dsyph3r"},{"type":"repo","has_issues":true,"created_at":"2011-11-19T12:57:47-08:00","score":3.566463,"owner":"jcarver989","has_downloads":true,"followers":1,"created":"2011-11-19T12:57:47-08:00","pushed":"2011-11-19T13:21:11-08:00","homepage":"","watchers":1,"has_wiki":true,"language":"JavaScript","pushed_at":"2011-11-19T13:21:11-08:00","forks":1,"fork":false,"size":140,"name":"GithubApi.js","url":"https://github.com/jcarver989/GithubApi.js","description":"Micro library for Github's API (v3)","open_issues":0,"private":false,"username":"jcarver989"},{"type":"repo","has_issues":true,"created_at":"2012-02-25T04:53:47-08:00","score":3.565757,"owner":"jacquev6","has_downloads":true,"followers":29,"created":"2012-02-25T04:53:47-08:00","pushed":"2012-06-28T13:28:23-07:00","homepage":"http://vincent-jacques.net/PyGithub","watchers":29,"has_wiki":false,"language":"Python","pushed_at":"2012-06-28T13:28:23-07:00","forks":5,"fork":false,"size":188,"name":"PyGithub","url":"https://github.com/jacquev6/PyGithub","description":"Python library implementing the full Github API v3","open_issues":11,"private":false,"username":"jacquev6"},{"type":"repo","has_issues":true,"created_at":"2012-06-12T04:43:27-07:00","score":3.499493,"owner":"bcg","has_downloads":true,"followers":1,"created":"2012-06-12T04:43:27-07:00","pushed":"2012-06-12T04:46:45-07:00","watchers":1,"has_wiki":true,"language":"Go","pushed_at":"2012-06-12T04:46:45-07:00","forks":1,"fork":false,"size":92,"name":"github","url":"https://github.com/bcg/github","description":"Go api for github v3","open_issues":0,"private":false,"username":"bcg"},{"type":"repo","has_issues":true,"created_at":"2012-02-21T11:25:15-08:00","score":3.4658518,"owner":"csphere","has_downloads":true,"followers":5,"created":"2012-02-21T11:25:15-08:00","pushed":"2012-05-18T10:25:08-07:00","homepage":"","watchers":5,"has_wiki":true,"language":"PHP","pushed_at":"2012-05-18T10:25:08-07:00","forks":2,"fork":false,"size":136,"name":"GithubApiWrapper-PHP","url":"https://github.com/csphere/GithubApiWrapper-PHP","description":"An intuitive wrapper for the Github Api v3.","open_issues":0,"private":false,"username":"csphere"},{"type":"repo","has_issues":true,"created_at":"2012-02-22T03:20:10-08:00","score":3.4529202,"owner":"dkucinskas","has_downloads":true,"followers":2,"created":"2012-02-22T03:20:10-08:00","pushed":"2012-06-24T22:10:11-07:00","homepage":"","watchers":2,"has_wiki":true,"language":"C#","pushed_at":"2012-06-24T22:10:11-07:00","forks":2,"fork":false,"size":116,"name":"net-github-api","url":"https://github.com/dkucinskas/net-github-api","description":"Simple Github API v3 client library for .Net","open_issues":0,"private":false,"username":"dkucinskas"},{"type":"repo","has_issues":true,"created_at":"2012-02-22T18:29:18-08:00","score":3.4125106,"owner":"csphere","has_downloads":true,"followers":4,"created":"2012-02-22T18:29:18-08:00","pushed":"2012-05-18T10:26:45-07:00","homepage":"","watchers":4,"has_wiki":true,"language":"Python","pushed_at":"2012-05-18T10:26:45-07:00","forks":4,"fork":false,"size":132,"name":"GithubApiWrapper-Python","url":"https://github.com/csphere/GithubApiWrapper-Python","description":"An intuitive wrapper for the Github Api v3.","open_issues":0,"private":false,"username":"csphere"},{"type":"repo","has_issues":true,"created_at":"2011-11-30T14:56:52-08:00","score":3.3439152,"owner":"edwardhotchkiss","has_downloads":true,"followers":20,"created":"2011-11-30T14:56:52-08:00","pushed":"2012-06-26T04:04:33-07:00","homepage":"http://edwardhotchkiss.com/github3/","watchers":20,"has_wiki":true,"language":"JavaScript","pushed_at":"2012-06-26T04:04:33-07:00","forks":10,"fork":false,"size":140,"name":"github3","url":"https://github.com/edwardhotchkiss/github3","description":"Node.JS GitHub API (v3) Wrapper","open_issues":0,"private":false,"username":"edwardhotchkiss"},{"type":"repo","has_issues":true,"created_at":"2011-04-28T10:07:29-07:00","score":3.282869,"owner":"ChristopherMacGown","has_downloads":true,"followers":20,"created":"2011-04-28T10:07:29-07:00","pushed":"2012-06-14T19:06:26-07:00","homepage":"","watchers":20,"has_wiki":true,"language":"Python","pushed_at":"2012-06-14T19:06:26-07:00","forks":12,"fork":false,"size":136,"name":"python-github3","url":"https://github.com/ChristopherMacGown/python-github3","description":"Github API v3 library for Python.","open_issues":0,"private":false,"username":"ChristopherMacGown"},{"type":"repo","has_issues":true,"created_at":"2012-04-15T10:14:22-07:00","score":3.2326941,"owner":"RobertFischer","has_downloads":true,"followers":1,"created":"2012-04-15T10:14:22-07:00","pushed":"2012-05-15T05:40:26-07:00","homepage":"","watchers":1,"has_wiki":true,"language":"Java","pushed_at":"2012-05-15T05:40:26-07:00","forks":1,"fork":false,"size":194,"name":"github-api-3","url":"https://github.com/RobertFischer/github-api-3","description":"An under-implemented version of the GitHub API v3 using the Groovy RESTClient.","open_issues":0,"private":false,"username":"RobertFischer"},{"type":"repo","has_issues":true,"created_at":"2010-09-10T23:51:56-07:00","score":3.026753,"owner":"lynnwallenstein","has_downloads":true,"followers":25,"created":"2010-09-10T23:51:56-07:00","pushed":"2012-06-24T15:22:01-07:00","homepage":"","watchers":25,"has_wiki":true,"language":"JavaScript","pushed_at":"2012-06-24T15:22:01-07:00","forks":5,"fork":false,"size":173,"name":"jQuery-Github-Badge","url":"https://github.com/lynnwallenstein/jQuery-Github-Badge","description":"User and Project GitHub badge using jQuery and GitHub API v3","open_issues":4,"private":false,"username":"lynnwallenstein"},{"type":"repo","has_issues":true,"created_at":"2012-03-11T13:35:23-07:00","score":2.9790008,"owner":"peter-murach","has_downloads":true,"followers":18,"created":"2012-03-11T13:35:23-07:00","pushed":"2012-06-27T14:37:16-07:00","homepage":"","watchers":18,"has_wiki":true,"language":"Ruby","pushed_at":"2012-06-27T14:37:16-07:00","forks":3,"fork":false,"size":276,"name":"github_cli","url":"https://github.com/peter-murach/github_cli","description":"CLI-based access to GitHub API v3","open_issues":3,"private":false,"username":"peter-murach"},{"type":"repo","has_issues":true,"created_at":"2011-11-13T22:02:02-08:00","score":2.877118,"owner":"eed3si9n","has_downloads":true,"followers":5,"created":"2011-11-13T22:02:02-08:00","pushed":"2011-11-29T06:28:35-08:00","homepage":"","watchers":5,"has_wiki":true,"language":"Scala","pushed_at":"2011-11-29T06:28:35-08:00","forks":2,"fork":false,"size":200,"name":"dispatch-github","url":"https://github.com/eed3si9n/dispatch-github","description":"github API v3","open_issues":0,"private":false,"username":"eed3si9n"},{"type":"repo","has_issues":true,"created_at":"2011-06-25T03:40:24-07:00","score":2.6712246,"owner":"plu","has_downloads":true,"followers":19,"created":"2011-06-25T03:40:24-07:00","pushed":"2011-12-29T04:26:13-08:00","homepage":"http://metacpan.org/module/Pithub","watchers":19,"has_wiki":true,"language":"Perl","pushed_at":"2011-12-29T04:26:13-08:00","forks":1,"fork":false,"size":1382,"name":"Pithub","url":"https://github.com/plu/Pithub","description":"Perl Github v3 API","open_issues":18,"private":false,"username":"plu"},{"type":"repo","has_issues":true,"created_at":"2011-10-27T08:47:40-07:00","score":2.593327,"owner":"dominis","has_downloads":true,"followers":5,"created":"2011-10-27T08:47:40-07:00","pushed":"2012-01-07T14:01:34-08:00","homepage":"","watchers":5,"has_wiki":false,"language":"PHP","pushed_at":"2012-01-07T14:01:34-08:00","forks":1,"fork":false,"size":172,"name":"GitHub-API-PHP","url":"https://github.com/dominis/GitHub-API-PHP","description":"PHP library for GitHub's v3 api","open_issues":0,"private":false,"username":"dominis"},{"type":"repo","has_issues":false,"created_at":"2012-05-28T19:34:50-07:00","score":2.565456,"owner":"danielribeiro","has_downloads":true,"followers":1,"created":"2012-05-28T19:34:50-07:00","pushed":"2012-04-17T02:30:54-07:00","homepage":"","watchers":1,"has_wiki":true,"language":"JavaScript","pushed_at":"2012-04-17T02:30:54-07:00","forks":0,"fork":false,"size":464,"name":"api-amazing","url":"https://github.com/danielribeiro/api-amazing","description":"Amazing API client, currently for Github's API v3, in the browser","open_issues":0,"private":false,"username":"danielribeiro"},{"type":"repo","has_issues":true,"created_at":"2011-05-12T12:18:23-07:00","score":2.4090881,"owner":"trustmaster","has_downloads":true,"followers":11,"created":"2011-05-12T12:18:23-07:00","pushed":"2011-10-04T04:47:18-07:00","homepage":"","watchers":11,"has_wiki":true,"language":"PHP","pushed_at":"2011-10-04T04:47:18-07:00","forks":4,"fork":false,"size":184,"name":"trac2github","url":"https://github.com/trustmaster/trac2github","description":"Converts Trac milestones, tickets and comments into Github issues 2.0 using github api v3","open_issues":0,"private":false,"username":"trustmaster"},{"type":"repo","has_issues":true,"created_at":"2011-12-26T14:00:46-08:00","score":2.3760638,"owner":"ozipi","has_downloads":true,"followers":3,"created":"2011-12-26T14:00:46-08:00","pushed":"2012-01-08T14:10:07-08:00","homepage":"","watchers":3,"has_wiki":true,"language":"JavaScript","pushed_at":"2012-01-08T14:10:07-08:00","forks":2,"fork":false,"size":141,"name":"github.js","url":"https://github.com/ozipi/github.js","description":"Github v3 Api Javascript library","open_issues":0,"private":false,"username":"ozipi"},{"type":"repo","has_issues":true,"created_at":"2010-08-25T17:50:01-07:00","score":2.3341565,"owner":"diogenes","has_downloads":true,"followers":26,"created":"2010-08-25T17:50:01-07:00","pushed":"2011-10-17T08:15:23-07:00","homepage":"","watchers":26,"has_wiki":true,"language":"Ruby","pushed_at":"2011-10-17T08:15:23-07:00","forks":8,"fork":false,"size":112,"name":"hubruby","url":"https://github.com/diogenes/hubruby","description":"A simple Ruby library to access the current GitHub API (v3)","open_issues":0,"private":false,"username":"diogenes"},{"type":"repo","has_issues":true,"created_at":"2011-06-15T00:51:00-07:00","score":2.3227224,"owner":"rubik","has_downloads":true,"followers":2,"created":"2011-06-15T00:51:00-07:00","pushed":"2011-06-15T00:58:19-07:00","homepage":"","watchers":2,"has_wiki":true,"language":"Python","pushed_at":"2011-06-15T00:58:19-07:00","forks":1,"fork":false,"size":96,"name":"github.py","url":"https://github.com/rubik/github.py","description":"Python wrapper for Github API v3","open_issues":0,"private":false,"username":"rubik"},{"type":"repo","has_issues":true,"created_at":"2012-02-14T06:15:34-08:00","score":2.2703757,"owner":"ji","has_downloads":true,"followers":1,"created":"2012-02-14T06:15:34-08:00","pushed":"2012-03-07T10:29:38-08:00","homepage":"","watchers":1,"has_wiki":true,"language":"Ruby","pushed_at":"2012-03-07T10:29:38-08:00","forks":1,"fork":false,"size":224,"name":"github_widgets","url":"https://github.com/ji/github_widgets","description":"Github widgets for the github v3 API.","open_issues":0,"private":false,"username":"ji"},{"type":"repo","has_issues":true,"created_at":"2011-08-16T09:17:47-07:00","score":2.2693808,"owner":"mixu","has_downloads":true,"followers":1,"created":"2011-08-16T09:17:47-07:00","pushed":"2011-08-16T09:44:41-07:00","homepage":"","watchers":1,"has_wiki":true,"language":"JavaScript","pushed_at":"2011-08-16T09:44:41-07:00","forks":1,"fork":false,"size":96,"name":"github.js","url":"https://github.com/mixu/github.js","description":"Github API v3 JS client","open_issues":0,"private":false,"username":"mixu"},{"type":"repo","has_issues":true,"created_at":"2011-12-23T03:57:39-08:00","score":2.2693808,"owner":"zendflex","has_downloads":true,"followers":1,"organization":"zendflex","created":"2011-12-23T03:57:39-08:00","pushed":"2011-12-23T10:00:20-08:00","watchers":1,"has_wiki":true,"language":"PHP","pushed_at":"2011-12-23T10:00:20-08:00","forks":1,"fork":false,"size":112,"name":"zendflex-github-lib","url":"https://github.com/zendflex/zendflex-github-lib","description":"Php lib for github api v3","open_issues":0,"private":false,"username":"zendflex"},{"type":"repo","has_issues":true,"created_at":"2012-02-02T15:15:01-08:00","score":2.2693808,"owner":"devjones","has_downloads":true,"followers":1,"created":"2012-02-02T15:15:01-08:00","pushed":"2012-02-02T15:15:52-08:00","homepage":"","watchers":1,"has_wiki":true,"language":"Python","pushed_at":"2012-02-02T15:15:52-08:00","forks":1,"fork":false,"size":88,"name":"py_github3","url":"https://github.com/devjones/py_github3","description":"draft python wrapper for Github API v3","open_issues":0,"private":false,"username":"devjones"},{"type":"repo","has_issues":true,"created_at":"2012-01-01T21:15:53-08:00","score":2.125537,"owner":"mtutty","has_downloads":true,"followers":2,"created":"2012-01-01T21:15:53-08:00","pushed":"2012-01-18T13:24:44-08:00","homepage":"","watchers":2,"has_wiki":true,"language":"C#","pushed_at":"2012-01-18T13:24:44-08:00","forks":1,"fork":false,"size":4472,"name":"GithubIssueSync","url":"https://github.com/mtutty/GithubIssueSync","description":"Allows bulk import and export of issues via Github API V3","open_issues":1,"private":false,"username":"mtutty"},{"type":"repo","has_issues":true,"created_at":"2012-01-15T04:51:05-08:00","score":2.0350344,"owner":"Wolfy87","has_downloads":true,"followers":4,"created":"2012-01-15T04:51:05-08:00","pushed":"2012-01-23T06:38:19-08:00","homepage":"","watchers":4,"has_wiki":true,"language":"JavaScript","pushed_at":"2012-01-23T06:38:19-08:00","forks":2,"fork":false,"size":228,"name":"github.js","url":"https://github.com/Wolfy87/github.js","description":"Frontend JavaScript library for interacting with the GitHub API v3","open_issues":0,"private":false,"username":"Wolfy87"},{"type":"repo","has_issues":true,"created_at":"2011-07-16T15:32:34-07:00","score":1.9842197,"owner":"jhelwig","has_downloads":true,"followers":15,"created":"2011-07-16T15:32:34-07:00","pushed":"2012-05-23T13:17:32-07:00","homepage":"http://rdoc.info/github/jhelwig/octocat_herder/master/frames","watchers":15,"has_wiki":false,"language":"Ruby","pushed_at":"2012-05-23T13:17:32-07:00","forks":4,"fork":false,"size":132,"name":"octocat_herder","url":"https://github.com/jhelwig/octocat_herder","description":"Ruby interface to the v3 GitHub API","open_issues":1,"private":false,"username":"jhelwig"},{"type":"repo","has_issues":true,"created_at":"2011-07-12T23:06:31-07:00","score":1.9816928,"owner":"bitprophet","has_downloads":true,"followers":3,"created":"2011-07-12T23:06:31-07:00","pushed":"2011-08-18T17:19:18-07:00","homepage":"","watchers":3,"has_wiki":true,"language":"Ruby","pushed_at":"2011-08-18T17:19:18-07:00","forks":2,"fork":false,"size":128,"name":"redmine2github","url":"https://github.com/bitprophet/redmine2github","description":"Port (Fabric's) Redmine tickets to (Fabric's) Github Issues v2 / API v3","open_issues":0,"private":false,"username":"bitprophet"},{"type":"repo","has_issues":true,"created_at":"2011-08-08T23:02:37-07:00","score":1.9816928,"owner":"joeworkman","has_downloads":true,"followers":3,"created":"2011-08-08T23:02:37-07:00","pushed":"2012-02-09T10:20:36-08:00","watchers":3,"has_wiki":true,"language":"PHP","pushed_at":"2012-02-09T10:20:36-08:00","forks":2,"fork":false,"size":132,"name":"github_oauth","url":"https://github.com/joeworkman/github_oauth","description":"PHP Library that makes using OAuth with the GitHUB v3API a piece of cake","open_issues":0,"private":false,"username":"joeworkman"},{"type":"repo","has_issues":true,"created_at":"2011-09-27T07:41:01-07:00","score":1.9283514,"owner":"thiagolocatelli","has_downloads":true,"followers":2,"created":"2011-09-27T07:41:01-07:00","pushed":"2011-09-27T07:53:33-07:00","homepage":"","watchers":2,"has_wiki":true,"language":"Java","pushed_at":"2011-09-27T07:53:33-07:00","forks":1,"fork":false,"size":108,"name":"android-github-oauth","url":"https://github.com/thiagolocatelli/android-github-oauth","description":"Library and example project on how to connect to GitHub OAuth (v3) API","open_issues":0,"private":false,"username":"thiagolocatelli"},{"type":"repo","has_issues":true,"created_at":"2012-05-17T19:22:24-07:00","score":1.9283514,"owner":"erikcharlebois","has_downloads":false,"followers":2,"created":"2012-05-17T19:22:24-07:00","pushed":"2012-05-17T21:05:25-07:00","homepage":"https://github.com/erikcharlebois/git-hub","watchers":2,"has_wiki":false,"language":"Ruby","pushed_at":"2012-05-17T21:05:25-07:00","forks":1,"fork":false,"size":96,"name":"git-hub","url":"https://github.com/erikcharlebois/git-hub","description":"Command line extension to git for working with GitHub v3 API.","open_issues":1,"private":false,"username":"erikcharlebois"},{"type":"repo","has_issues":true,"created_at":"2011-05-12T19:11:45-07:00","score":1.8750099,"owner":"baz","has_downloads":true,"followers":1,"created":"2011-05-12T19:11:45-07:00","pushed":"2011-05-12T19:13:02-07:00","homepage":"","watchers":1,"has_wiki":true,"language":"JavaScript","pushed_at":"2011-05-12T19:13:02-07:00","forks":1,"fork":false,"size":124,"name":"node-github-issues","url":"https://github.com/baz/node-github-issues","description":"GitHub Issues API v3 Node.js module","open_issues":0,"private":false,"username":"baz"},{"type":"repo","has_issues":true,"created_at":"2010-10-28T19:31:52-07:00","score":1.6202691,"owner":"Factual","has_downloads":true,"followers":15,"organization":"Factual","created":"2010-10-28T19:31:52-07:00","pushed":"2012-02-23T20:03:15-08:00","homepage":"http://wiki.developer.factual.com/","watchers":15,"has_wiki":true,"language":"Ruby","pushed_at":"2012-02-23T20:03:15-08:00","forks":5,"fork":false,"size":112,"name":"ruby-factual","url":"https://github.com/Factual/ruby-factual","description":"Ruby gem to access Factual API v2. Since the Factual API v2 will be deprecated in Q2 2012, and we are moving forward to API v3, there is new ruby gem for V3 accessing, which is at https://github.com/Factual/factual-ruby-driver.","open_issues":0,"private":false,"username":"Factual"},{"type":"repo","has_issues":true,"created_at":"2011-10-03T17:46:03-07:00","score":1.5275998,"owner":"testpilot","has_downloads":true,"followers":2,"organization":"testpilot","created":"2011-10-03T17:46:03-07:00","pushed":"2011-11-29T00:14:53-08:00","homepage":"testpilot.me","watchers":2,"has_wiki":true,"language":"Ruby","pushed_at":"2011-11-29T00:14:53-08:00","forks":1,"fork":false,"size":264,"name":"octoplex","url":"https://github.com/testpilot/octoplex","description":"Github v3 API wrapper gem","open_issues":0,"private":false,"username":"testpilot"},{"type":"repo","has_issues":true,"created_at":"2012-02-29T15:46:40-08:00","score":1.5275998,"owner":"woloski","has_downloads":true,"followers":2,"created":"2012-02-29T15:46:40-08:00","pushed":"2012-03-01T18:36:35-08:00","homepage":"","watchers":2,"has_wiki":true,"language":"","pushed_at":"2012-03-01T18:36:35-08:00","forks":2,"fork":false,"size":132,"name":"githubapi-testrepo","url":"https://github.com/woloski/githubapi-testrepo","description":"testing repo for github api v3","open_issues":0,"private":false,"username":"woloski"},{"type":"repo","has_issues":true,"created_at":"2011-07-18T11:55:00-07:00","score":1.5041462,"owner":"gitpilot","has_downloads":true,"followers":7,"organization":"gitpilot","created":"2011-07-18T11:55:00-07:00","pushed":"2011-07-21T12:18:26-07:00","homepage":"http://www.gitpilot.com","watchers":7,"has_wiki":true,"language":"Ruby","pushed_at":"2011-07-21T12:18:26-07:00","forks":2,"fork":false,"size":112,"name":"fuselage","url":"https://github.com/gitpilot/fuselage","description":"Light weight Ruby wrapper for Github v3 api","open_issues":0,"private":false,"username":"gitpilot"},{"type":"repo","has_issues":true,"created_at":"2011-07-14T19:46:55-07:00","score":1.4742583,"owner":"wanthony","has_downloads":true,"followers":1,"created":"2011-07-14T19:46:55-07:00","pushed":"2011-07-14T19:57:37-07:00","homepage":"","watchers":1,"has_wiki":true,"language":"Ruby","pushed_at":"2011-07-14T19:57:37-07:00","forks":1,"fork":false,"size":96,"name":"octo_rest","url":"https://github.com/wanthony/octo_rest","description":"A ruby client for the github v3 api","open_issues":0,"private":false,"username":"wanthony"},{"type":"repo","has_issues":true,"created_at":"2011-10-06T03:41:32-07:00","score":1.4742583,"owner":"markharmon","has_downloads":true,"followers":1,"created":"2011-10-06T03:41:32-07:00","pushed":null,"homepage":"","watchers":1,"has_wiki":true,"language":"","forks":1,"fork":false,"size":0,"name":"GitHub.Net","url":"https://github.com/markharmon/GitHub.Net","description":"GitHub Api V3 for .Net","open_issues":0,"private":false,"username":"markharmon"},{"type":"repo","has_issues":true,"created_at":"2011-06-25T16:25:57-07:00","score":1.4508047,"owner":"sbellity","has_downloads":true,"followers":5,"created":"2011-06-25T16:25:57-07:00","pushed":"2011-07-21T03:21:10-07:00","homepage":"","watchers":5,"has_wiki":true,"language":"Ruby","pushed_at":"2011-07-21T03:21:10-07:00","forks":2,"fork":false,"size":112,"name":"githu3","url":"https://github.com/sbellity/githu3","description":"Ruby wrapper for GitHub's v3 API","open_issues":4,"private":false,"username":"sbellity"},{"type":"repo","has_issues":true,"created_at":"2011-09-13T03:01:53-07:00","score":1.3974632,"owner":"francescomari","has_downloads":true,"followers":4,"created":"2011-09-13T03:01:53-07:00","pushed":"2012-04-10T14:08:39-07:00","homepage":"","watchers":4,"has_wiki":false,"language":"Python","pushed_at":"2012-04-10T14:08:39-07:00","forks":2,"fork":false,"size":148,"name":"pythub","url":"https://github.com/francescomari/pythub","description":"A simple Python wrapper around the Github API v3","open_issues":0,"private":false,"username":"francescomari"},{"type":"repo","has_issues":true,"created_at":"2011-12-22T00:01:31-08:00","score":1.2907803,"owner":"smoak","has_downloads":true,"followers":2,"created":"2011-12-22T00:01:31-08:00","pushed":"2011-12-22T00:20:57-08:00","homepage":"","watchers":2,"has_wiki":true,"language":"Python","pushed_at":"2011-12-22T00:20:57-08:00","forks":1,"fork":false,"size":92,"name":"pyhub","url":"https://github.com/smoak/pyhub","description":"Python Client for the GitHub v3 API ","open_issues":0,"private":false,"username":"smoak"},{"type":"repo","has_issues":true,"created_at":"2012-03-08T12:07:25-08:00","score":1.2907803,"owner":"csphere","has_downloads":true,"followers":2,"created":"2012-03-08T12:07:25-08:00","pushed":"2012-04-02T15:08:54-07:00","homepage":"","watchers":2,"has_wiki":true,"language":"Ruby","pushed_at":"2012-04-02T15:08:54-07:00","forks":2,"fork":false,"size":264,"name":"rubhub","url":"https://github.com/csphere/rubhub","description":"Ruby Gem - An intuitive wrapper for the Github Api v3.","open_issues":0,"private":false,"username":"csphere"},{"type":"repo","has_issues":true,"created_at":"2012-06-03T12:59:40-07:00","score":1.2374389,"owner":"badsharkco","has_downloads":true,"followers":1,"created":"2012-06-03T12:59:40-07:00","pushed":"2012-06-03T13:58:55-07:00","watchers":1,"has_wiki":true,"language":"PHP","pushed_at":"2012-06-03T13:58:55-07:00","forks":1,"fork":false,"size":124,"name":"simplev3-php","url":"https://github.com/badsharkco/simplev3-php","description":"The simplest way to interact with the GitHub API v3, in PHP.","open_issues":0,"private":false,"username":"badsharkco"},{"type":"repo","has_issues":true,"created_at":"2012-06-07T08:51:53-07:00","score":1.2374389,"owner":"cheeyeo","has_downloads":true,"followers":1,"created":"2012-06-07T08:51:53-07:00","pushed":"2012-06-07T10:39:31-07:00","watchers":1,"has_wiki":true,"language":"","pushed_at":"2012-06-07T10:39:31-07:00","forks":1,"fork":false,"size":0,"name":"snipplets-test","url":"https://github.com/cheeyeo/snipplets-test","description":"Testing snipplets app link to github through api v3","open_issues":0,"private":false,"username":"cheeyeo"},{"type":"repo","has_issues":true,"created_at":"2012-06-05T00:39:13-07:00","score":1.2374389,"owner":"hahuang65","has_downloads":true,"followers":1,"created":"2012-06-05T00:39:13-07:00","pushed":"2012-06-14T17:11:06-07:00","watchers":1,"has_wiki":true,"language":"Ruby","pushed_at":"2012-06-14T17:11:06-07:00","forks":1,"fork":false,"size":436,"name":"Octobot","url":"https://github.com/hahuang65/Octobot","description":"GitHub V3 API Wrapper for Ruby","open_issues":0,"private":false,"username":"hahuang65"},{"type":"repo","has_issues":true,"created_at":"2012-06-14T14:31:40-07:00","score":1.2374389,"owner":"smencer","has_downloads":true,"followers":1,"created":"2012-06-14T14:31:40-07:00","pushed":"2012-06-25T19:51:13-07:00","watchers":1,"has_wiki":true,"language":"C#","pushed_at":"2012-06-25T19:51:13-07:00","forks":1,"fork":false,"size":396,"name":"CSharpGitHubAPIWrapper","url":"https://github.com/smencer/CSharpGitHubAPIWrapper","description":"A C# wrapper for the GitHub API (v3)","open_issues":0,"private":false,"username":"smencer"},{"type":"repo","has_issues":true,"created_at":"2011-04-29T15:16:32-07:00","score":1.2374388,"owner":"jeffremer","has_downloads":true,"followers":1,"created":"2011-04-29T15:16:32-07:00","pushed":"2011-04-30T19:43:37-07:00","homepage":"http://jeffremer.com","watchers":1,"has_wiki":true,"language":"Ruby","pushed_at":"2011-04-30T19:43:37-07:00","forks":1,"fork":false,"size":848,"name":"gist-client","url":"https://github.com/jeffremer/gist-client","description":"A REST client for CRUDing Github Gists via the v3 API.","open_issues":0,"private":false,"username":"jeffremer"},{"type":"repo","has_issues":true,"created_at":"2011-05-23T19:31:04-07:00","score":1.2374388,"owner":"kaiwu","has_downloads":true,"followers":1,"created":"2011-05-23T19:31:04-07:00","pushed":"2011-05-23T19:51:51-07:00","homepage":"","watchers":1,"has_wiki":true,"language":"","pushed_at":"2011-05-23T19:51:51-07:00","forks":1,"fork":false,"size":108,"name":"githubv3objc","url":"https://github.com/kaiwu/githubv3objc","description":"github v3 api wrapper in objective-c","open_issues":0,"private":false,"username":"kaiwu"},{"type":"repo","has_issues":true,"created_at":"2011-07-28T15:57:34-07:00","master_branch":"develop","score":1.2374388,"owner":"mrtazz","has_downloads":true,"followers":1,"created":"2011-07-28T15:57:34-07:00","pushed":"2011-07-28T15:58:01-07:00","homepage":"","watchers":1,"has_wiki":true,"language":"","pushed_at":"2011-07-28T15:58:01-07:00","forks":1,"fork":false,"size":100,"name":"octonode","url":"https://github.com/mrtazz/octonode","description":"[WIP] node.js wrapper for the github v3 API","open_issues":0,"private":false,"username":"mrtazz"},{"type":"repo","has_issues":true,"created_at":"2011-11-13T12:27:30-08:00","score":1.2374388,"owner":"mdellanoce","has_downloads":true,"followers":1,"created":"2011-11-13T12:27:30-08:00","pushed":"2012-01-17T18:24:42-08:00","homepage":"","watchers":1,"has_wiki":true,"language":"Ruby","pushed_at":"2012-01-17T18:24:42-08:00","forks":1,"fork":false,"size":268,"name":"gittycat","url":"https://github.com/mdellanoce/gittycat","description":"Yet another ruby binding for GitHub's V3 API","open_issues":0,"private":false,"username":"mdellanoce"},{"type":"repo","has_issues":true,"created_at":"2012-04-30T07:59:23-07:00","score":1.2374388,"owner":"Strech","has_downloads":true,"followers":1,"created":"2012-04-30T07:59:23-07:00","pushed":"2012-04-30T09:48:02-07:00","watchers":1,"has_wiki":true,"language":"Ruby","pushed_at":"2012-04-30T09:48:02-07:00","forks":1,"fork":false,"size":236,"name":"abak_oauth","url":"https://github.com/Strech/abak_oauth","description":"This is a simple rails app for github api v3 oauth2","open_issues":0,"private":false,"username":"Strech"},{"type":"repo","has_issues":true,"created_at":"2011-08-12T15:20:29-07:00","score":1.1073024,"owner":"meritt","has_downloads":true,"followers":3,"created":"2011-08-12T15:20:29-07:00","pushed":"2012-04-22T13:04:49-07:00","homepage":"http://github.com/meritt/node-gisty","watchers":3,"has_wiki":false,"language":"CoffeeScript","pushed_at":"2012-04-22T13:04:49-07:00","forks":1,"fork":false,"size":112,"name":"node-gisty","url":"https://github.com/meritt/node-gisty","description":"A Node.JS wrapper for GitHub gist API v3. ","open_issues":0,"private":false,"username":"meritt"},{"type":"repo","has_issues":true,"created_at":"2012-06-13T13:26:46-07:00","score":1.0669504,"owner":"ritratt","has_downloads":true,"followers":1,"created":"2012-06-13T13:26:46-07:00","pushed":"2012-06-13T13:37:31-07:00","watchers":1,"has_wiki":true,"language":"Python","pushed_at":"2012-06-13T13:37:31-07:00","forks":1,"fork":false,"size":92,"name":"gituserinfo","url":"https://github.com/ritratt/gituserinfo","description":"A simple python script that uses PyGithub for accessing user information through Github API v3","open_issues":0,"private":false,"username":"ritratt"},{"type":"repo","has_issues":true,"created_at":"2011-09-08T18:44:48-07:00","score":1.0006194,"owner":"wanthony","has_downloads":true,"followers":1,"created":"2011-09-08T18:44:48-07:00","pushed":null,"homepage":"","watchers":1,"has_wiki":true,"language":"","forks":1,"fork":false,"size":0,"name":"coffeehub","url":"https://github.com/wanthony/coffeehub","description":"A Node.js / CoffeeScript GitHub API v3 Implementation","open_issues":0,"private":false,"username":"wanthony"},{"type":"repo","has_issues":true,"created_at":"2011-11-17T23:39:13-08:00","score":1.0006194,"owner":"plu","has_downloads":true,"followers":1,"created":"2011-11-17T23:39:13-08:00","pushed":"2011-11-17T23:41:46-08:00","homepage":"","watchers":1,"has_wiki":true,"language":"Objective-C","pushed_at":"2011-11-17T23:41:46-08:00","forks":1,"fork":false,"size":348,"name":"Octotco","url":"https://github.com/plu/Octotco","description":"iOS App to access the Github v3 API via RestKit","open_issues":0,"private":false,"username":"plu"},{"type":"repo","has_issues":true,"created_at":"2012-02-11T22:46:07-08:00","score":1.0006194,"owner":"roopeshvaddepally","has_downloads":true,"followers":1,"created":"2012-02-11T22:46:07-08:00","pushed":"2012-02-12T15:14:35-08:00","homepage":"","watchers":1,"has_wiki":true,"language":"Python","pushed_at":"2012-02-12T15:14:35-08:00","forks":1,"fork":false,"size":108,"name":"pygh3","url":"https://github.com/roopeshvaddepally/pygh3","description":"python github wrapper for api v3. make it more like iorayne/tentacles","open_issues":0,"private":false,"username":"roopeshvaddepally"},{"type":"repo","has_issues":true,"created_at":"2011-11-02T09:35:46-07:00","score":1.0006194,"owner":"exallium","has_downloads":true,"followers":1,"created":"2011-11-02T09:35:46-07:00","pushed":"2012-03-02T15:30:29-08:00","homepage":"","watchers":1,"has_wiki":true,"language":"Java","pushed_at":"2012-03-02T15:30:29-08:00","forks":1,"fork":false,"size":1896,"name":"gitIssues2","url":"https://github.com/exallium/gitIssues2","description":"Complete Rewrite of GitIssues, including new UI and utilizing Github's V3 API Java Library","open_issues":2,"private":false,"username":"exallium"},{"type":"repo","has_issues":true,"created_at":"2012-03-09T05:24:54-08:00","score":1.0006194,"owner":"inkel","has_downloads":true,"followers":1,"created":"2012-03-09T05:24:54-08:00","pushed":"2012-03-12T05:38:07-07:00","homepage":"","watchers":1,"has_wiki":true,"language":"JavaScript","pushed_at":"2012-03-12T05:38:07-07:00","forks":1,"fork":false,"size":380,"name":"cuba-omniauth-octokit","url":"https://github.com/inkel/cuba-omniauth-octokit","description":"Proof of concept of a Cuba application with OmniAuth and Octokit to access the GitHub v3 API","open_issues":3,"private":false,"username":"inkel"},{"type":"repo","has_issues":true,"created_at":"2012-02-17T09:18:01-08:00","score":1.0006194,"owner":"LukasKnuth","has_downloads":true,"followers":1,"created":"2012-02-17T09:18:01-08:00","pushed":"2012-02-17T15:31:14-08:00","homepage":"","watchers":1,"has_wiki":true,"language":"JavaScript","pushed_at":"2012-02-17T15:31:14-08:00","forks":1,"fork":false,"size":124,"name":"jsg-hub","url":"https://github.com/LukasKnuth/jsg-hub","description":"This project aims to create a JavaScript library for the GitHub API v3","open_issues":0,"private":false,"username":"LukasKnuth"},{"type":"repo","has_issues":true,"created_at":"2012-01-01T17:23:26-08:00","score":0.9402493,"owner":"lrvick","has_downloads":true,"followers":1,"created":"2012-01-01T17:23:26-08:00","pushed":"2012-01-01T17:24:43-08:00","homepage":"","watchers":1,"has_wiki":true,"language":"","pushed_at":"2012-01-01T17:24:43-08:00","forks":1,"fork":false,"size":96,"name":"jquery-githubnav","url":"https://github.com/lrvick/jquery-githubnav","description":"jQuery driven stack to render a tree-driven explorer of all your Github code via the Github v3 API","open_issues":0,"private":false,"username":"lrvick"},{"type":"repo","has_issues":true,"created_at":"2011-07-31T03:41:16-07:00","score":0.9355511,"owner":"mklabs","has_downloads":true,"followers":2,"created":"2011-07-31T03:41:16-07:00","pushed":"2011-07-31T08:34:55-07:00","homepage":"","watchers":2,"has_wiki":true,"language":"JavaScript","pushed_at":"2011-07-31T08:34:55-07:00","forks":1,"fork":false,"size":176,"name":"ghv3","url":"https://github.com/mklabs/ghv3","description":"GitHub Api v3 library. Ideally, it should work in node via http request, and in browsers using jsonp.","open_issues":0,"private":false,"username":"mklabs"},{"type":"repo","has_issues":true,"created_at":"2012-03-17T11:12:39-07:00","score":0.8517214,"owner":"mklabs","has_downloads":true,"followers":1,"created":"2012-03-17T11:12:39-07:00","pushed":"2012-03-17T11:13:30-07:00","homepage":"http://mklabs.github.com/gh-issues-widget/","watchers":1,"has_wiki":true,"language":"JavaScript","pushed_at":"2012-03-17T11:13:30-07:00","forks":1,"fork":false,"size":224,"name":"gh-issues-widget","url":"https://github.com/mklabs/gh-issues-widget","description":"A bit of GitHub API v3, GitHub Flavored Markdown, a soupcon of data-* attributes and you get github issue comment system. Something like that.","open_issues":2,"private":false,"username":"mklabs"},{"type":"repo","has_issues":true,"created_at":"2012-01-12T04:28:02-08:00","score":0.80183375,"owner":"jaikoo","has_downloads":true,"followers":1,"created":"2012-01-12T04:28:02-08:00","pushed":"2012-01-20T05:24:12-08:00","homepage":"","watchers":1,"has_wiki":true,"language":"Ruby","pushed_at":"2012-01-20T05:24:12-08:00","forks":1,"fork":false,"size":148,"name":"OctoCow","url":"https://github.com/jaikoo/OctoCow","description":"Work in progress Github v3 API wrapper with association chaining and semi-concrete classes (class are concrete but contents are flexible) to allow for flexible changes in the API.","open_issues":0,"private":false,"username":"jaikoo"},{"type":"repo","has_issues":true,"created_at":"2012-04-23T19:23:24-07:00","score":0.7637999,"owner":"misutowolf","has_downloads":true,"followers":1,"created":"2012-04-23T19:23:24-07:00","pushed":"2012-04-24T07:30:51-07:00","homepage":"","watchers":1,"has_wiki":true,"language":"","pushed_at":"2012-04-24T07:30:51-07:00","forks":1,"fork":false,"size":184,"name":"js-githubv3","url":"https://github.com/misutowolf/js-githubv3","description":"js-githubv3 -- A JavaScript (jQuery) library for the JSON-driven GitHub API v3","open_issues":0,"private":false,"username":"misutowolf"}]} + diff --git a/test/ReplayData/Github.testSearchUserByEmail.txt b/test/ReplayData/Github.testSearchUserByEmail.txt new file mode 100644 index 00000000..134f2422 --- /dev/null +++ b/test/ReplayData/Github.testSearchUserByEmail.txt @@ -0,0 +1,5 @@ +GET /legacy/user/email/vincent@vincent-jacques.net {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4981'), ('content-length', '395'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"baf55235e157428f731c446efe6d6cba"'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Thu, 28 Jun 2012 20:58:11 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","type":"User","location":"Paris, France","blog":"http://vincent-jacques.net","name":"Vincent Jacques","permission":null,"public_repo_count":11,"login":"jacquev6","email":"vincent@vincent-jacques.net","public_gist_count":3,"created_at":"2010-07-08T23:10:06-07:00","id":327146,"followers_count":13,"following_count":24,"company":"Criteo"}} + diff --git a/test/ReplayData/Github.testSearchUsers.txt b/test/ReplayData/Github.testSearchUsers.txt new file mode 100644 index 00000000..30244535 --- /dev/null +++ b/test/ReplayData/Github.testSearchUsers.txt @@ -0,0 +1,5 @@ +GET /legacy/user/search/vincent {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4982'), ('content-length', '41235'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"77b0277b5efb0ebf5f9e3de8a493fd0c"'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Thu, 28 Jun 2012 20:57:52 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"users":[{"gravatar_id":"c5a7f21b46df698f3db31c37ed0cf55a","score":73.982216,"type":"user","name":"Vincent Driessen","location":"Netherlands","fullname":"Vincent Driessen","repos":63,"login":"nvie","public_repo_count":63,"username":"nvie","created_at":"2009-05-12T21:19:38Z","record":null,"id":"user-83844","followers":310,"followers_count":310,"created":"2009-05-12T21:19:38Z","language":"Python","pushed":"2012-06-26T14:15:26.172Z"},{"gravatar_id":"a145dbf5d67ba1eb717fbe3a1f51509c","score":35.851326,"type":"user","fullname":"Jesse Vincent","repos":57,"name":"Jesse Vincent","location":"Somerville, MA, USA","login":"obra","public_repo_count":57,"username":"obra","created_at":"2009-01-09T20:24:15Z","record":null,"id":"user-45416","followers":127,"followers_count":127,"created":"2009-01-09T20:24:15Z","language":"Perl","pushed":"2012-06-27T02:15:19.036Z"},{"gravatar_id":"03a966709300efb4a86ce5ee8f88f696","score":33.5964,"type":"user","repos":86,"name":"John E. Vincent","fullname":"John E. Vincent","location":"Roswell, GA.","login":"lusis","public_repo_count":86,"username":"lusis","created_at":"2010-03-23T20:28:44Z","record":null,"id":"user-228958","followers":112,"followers_count":112,"created":"2010-03-23T20:28:44Z","language":"Ruby","pushed":"2012-06-28T15:15:44.987Z"},{"gravatar_id":"c676f9efc8e54985e84c044899481267","score":29.771633,"type":"user","name":"Vincent Jousse","repos":43,"fullname":"Vincent Jousse","location":"Le Mans","login":"vjousse","public_repo_count":43,"username":"vjousse","created_at":"2009-11-18T15:43:09Z","record":null,"id":"user-154904","followers":102,"followers_count":102,"created":"2009-11-18T15:43:09Z","language":"PHP","pushed":"2012-06-19T10:15:25.469Z"},{"gravatar_id":"1d0a2ab73604a28d767acc0e547c8985","score":14.943241,"type":"user","name":"Vincent Hanquez","fullname":"Vincent Hanquez","repos":43,"location":"","login":"vincenthz","public_repo_count":43,"username":"vincenthz","created_at":"2009-12-31T10:52:40Z","record":null,"id":"user-174631","followers":30,"followers_count":30,"created":"2009-12-31T10:52:40Z","language":"Haskell","pushed":"2011-12-02T11:15:26.599Z"},{"gravatar_id":"dd02e2c7ecf7c377b6b9c2c1a23633d0","score":13.608737,"type":"user","location":"http://git.io/vt","name":"Vincent Tsai","fullname":"Vincent Tsai","repos":18,"login":"Vayn","public_repo_count":18,"username":"Vayn","created_at":"2010-03-17T07:53:26Z","record":null,"id":"user-224407","followers":32,"followers_count":32,"created":"2010-03-17T07:53:26Z","language":"Python","pushed":"2012-05-05T02:15:14.813Z"},{"gravatar_id":"a3895a2d6f26155968be47fc03dddc40","score":13.566472,"type":"user","fullname":"Vincent Battaglia","repos":11,"name":"Vincent Battaglia","location":"San Francisco, CA","login":"vinch","public_repo_count":11,"username":"vinch","created_at":"2009-11-19T11:56:56Z","record":null,"id":"user-155370","followers":34,"followers_count":34,"created":"2009-11-19T11:56:56Z","language":"JavaScript","pushed":"2012-06-27T19:15:37.908Z"},{"gravatar_id":"2c0bde3f5628f35390c42fe505b79da4","score":12.853587,"type":"user","fullname":"Vincent Bernat","name":"Vincent Bernat","repos":25,"location":"Paris","login":"vincentbernat","public_repo_count":25,"username":"vincentbernat","created_at":"2011-02-22T07:20:26Z","record":null,"id":"user-631446","followers":26,"followers_count":26,"created":"2011-02-22T07:20:26Z","language":"C","pushed":"2012-04-24T14:15:18.536Z"},{"gravatar_id":"bbd55fb25025ef973c45e587103a1007","score":12.540491,"type":"user","location":"Nantes, France","name":"Vincent Giersch","fullname":"Vincent Giersch","repos":20,"login":"gierschv","public_repo_count":20,"username":"gierschv","created_at":"2010-09-12T16:41:49Z","record":null,"id":"user-396537","followers":26,"followers_count":26,"created":"2010-09-12T16:41:49Z","language":"JavaScript","pushed":"2012-06-07T01:15:19.516Z"},{"gravatar_id":"c8ff80488014da414b65346806178fa5","score":12.304387,"type":"user","name":"Vincent Batts","repos":20,"fullname":"Vincent Batts","location":"Vienna, VA","login":"vbatts","public_repo_count":20,"username":"vbatts","created_at":"2009-03-25T14:57:43Z","record":null,"id":"user-67049","followers":25,"followers_count":25,"created":"2009-03-25T14:57:43Z","language":"Ruby","pushed":"2012-06-18T14:15:37.054Z"},{"gravatar_id":"5ad827a4eff2f5c23d26e1b4eb746143","score":12.204174,"type":"user","repos":16,"name":"Vincent","fullname":"Vincent","location":"","login":"Valodim","public_repo_count":16,"username":"Valodim","created_at":"2008-10-06T20:33:02Z","record":null,"id":"user-27813","followers":9,"followers_count":9,"created":"2008-10-06T20:33:02Z","language":"Python","pushed":"2011-11-27T18:15:31.138Z"},{"gravatar_id":"a267b99df7d74999affbda5c314083d7","score":12.204174,"type":"user","fullname":"Vincent","repos":25,"name":"Vincent","location":"","login":"Twinside","public_repo_count":25,"username":"Twinside","created_at":"2009-12-17T09:22:27Z","record":null,"id":"user-168874","followers":6,"followers_count":6,"created":"2009-12-17T09:22:27Z","language":"VimL","pushed":"2012-06-28T07:15:16.26Z"},{"gravatar_id":"722218c7702627097bd72901d7b39e6a","score":12.197243,"type":"user","name":"Mike Vincent","location":"FTW, TX","fullname":"Mike Vincent","repos":9,"login":"agile","public_repo_count":9,"username":"agile","created_at":"2008-02-13T19:58:02Z","record":null,"id":"user-249","followers":28,"followers_count":28,"created":"2008-02-13T19:58:02Z","language":"Ruby","pushed":"2012-06-23T19:16:35.651Z"},{"gravatar_id":"a56a9079e6af8a892337a671c3b1a230","score":12.029787,"type":"user","name":"Vincent Pit","repos":13,"location":"Paris, France","fullname":"Vincent Pit","login":"vpit","public_repo_count":13,"username":"vpit","created_at":"2009-04-05T16:43:32Z","record":null,"id":"user-70731","followers":26,"followers_count":26,"created":"2009-04-05T16:43:32Z","language":"Perl","pushed":"2012-04-25T22:15:28.818Z"},{"gravatar_id":"317cf21cbde7d18d79c27e123cbf7b73","score":11.095074,"type":"user","fullname":"Vincent Velociter","name":"Vincent Velociter","repos":14,"location":"Nantes","login":"veloce","public_repo_count":14,"username":"veloce","created_at":"2010-10-01T12:58:39Z","record":null,"id":"user-423393","followers":21,"followers_count":21,"created":"2010-10-01T12:58:39Z","language":"VimL","pushed":"2012-06-20T16:15:20.04Z"},{"gravatar_id":"d4ad14bf23231763ea3c1754a65de041","score":11.040714,"type":"user","repos":45,"name":"Vincent van Haaff","fullname":"Vincent van Haaff","location":"Vancouver, BC","login":"flyingoctopus","public_repo_count":45,"username":"flyingoctopus","created_at":"2009-02-03T08:21:05Z","record":null,"id":"user-51352","followers":16,"followers_count":16,"created":"2009-02-03T08:21:05Z","language":"JavaScript","pushed":"2012-06-28T19:15:23.553Z"},{"gravatar_id":"652e02cbd134e0e92f3f81fe14bda3d1","score":11.000038,"type":"user","name":"Seth Vincent","repos":52,"fullname":"Seth Vincent","location":"olympia, wa","login":"sethvincent","public_repo_count":52,"username":"sethvincent","created_at":"2009-12-08T05:13:00Z","record":null,"id":"user-164214","followers":8,"followers_count":8,"created":"2009-12-08T05:13:00Z","language":"JavaScript","pushed":"2012-06-13T05:15:13.738Z"},{"gravatar_id":"7d3e511e6531fa9fde610015867d5c82","score":10.762525,"type":"user","fullname":"Vincent","repos":13,"name":"Vincent","location":"Zurich","login":"minikermit","public_repo_count":13,"username":"minikermit","created_at":"2009-01-18T10:56:54Z","record":null,"id":"user-47452","followers":3,"followers_count":3,"created":"2009-01-18T10:56:54Z","language":"JavaScript","pushed":"2012-06-27T19:16:29.254Z"},{"gravatar_id":"d3f0155cbb376d40f0c2e6f2d70552a4","score":10.7480545,"type":"user","fullname":"Vincent Agnano","repos":15,"name":"Vincent Agnano","location":"Montpellier","login":"vinyll","public_repo_count":15,"username":"vinyll","created_at":"2009-10-27T09:00:05Z","record":null,"id":"user-145172","followers":19,"followers_count":19,"created":"2009-10-27T09:00:05Z","language":"PHP","pushed":"2012-06-27T13:15:35.164Z"},{"gravatar_id":"dca7a9de73436b37325226984917bec0","score":10.725438,"type":"user","fullname":"Vincent Mazenod","name":"Vincent Mazenod","repos":18,"location":"Clermont Ferrand (636)","login":"mazenovi","public_repo_count":18,"username":"mazenovi","created_at":"2010-08-17T08:26:28Z","record":null,"id":"user-366957","followers":18,"followers_count":18,"created":"2010-08-17T08:26:28Z","language":"PHP","pushed":"2012-06-12T10:15:21.258Z"},{"gravatar_id":"9cfe5fa2f21186a7bec97f0e25fdf68e","score":10.578381,"type":"user","fullname":"Vincent Lark","name":"Vincent Lark","location":"France / Luxembourg","repos":11,"login":"vincent","public_repo_count":11,"username":"vincent","created_at":"2008-04-07T17:52:22Z","record":null,"id":"user-5623","followers":9,"followers_count":9,"created":"2008-04-07T17:52:22Z","language":"Python","pushed":"2011-10-17T15:15:11.027Z"},{"gravatar_id":"2bb264ba6bb334e5bfa5e266788a94c7","score":10.556574,"type":"user","repos":13,"name":"Vincent","fullname":"Vincent","location":"","login":"vjcharles","public_repo_count":13,"username":"vjcharles","created_at":"2008-06-23T08:36:59Z","record":null,"id":"user-14668","followers":2,"followers_count":2,"created":"2008-06-23T08:36:59Z","language":"Ruby","pushed":"2012-06-28T18:15:31.165Z"},{"gravatar_id":"7105cb5590c1d689191fabaff3cfc23b","score":10.545874,"type":"user","name":"Sam Vincent","repos":6,"fullname":"Sam Vincent","location":"Vancouver, BC","login":"samvincent","public_repo_count":6,"username":"samvincent","created_at":"2009-02-25T08:54:33Z","record":null,"id":"user-57775","followers":21,"followers_count":21,"created":"2009-02-25T08:54:33Z","language":"Ruby","pushed":"2012-06-15T21:15:20.297Z"},{"gravatar_id":"96f903d97afc840d7c317ce094fef408","score":10.537209,"type":"user","name":"vincent","repos":18,"fullname":"vincent","location":"北京市海淀区海淀北街8号中关村SOHO ","login":"vincent1900","public_repo_count":18,"username":"vincent1900","created_at":"2011-04-21T04:53:45Z","record":null,"id":"user-743038","followers":0,"followers_count":0,"created":"2011-04-21T04:53:45Z","language":"JavaScript","pushed":"2012-01-10T03:15:21.421Z"},{"gravatar_id":"2ecfff7b4be5cc2a6f42a0e6258f1bdd","score":10.464482,"type":"user","name":"Aziz Hardaya","location":"Jakarta Timur","repos":5,"fullname":"Aziz Hardaya","login":"AzizVincent","public_repo_count":5,"username":"AzizVincent","created_at":"2011-08-12T03:56:24Z","record":null,"id":"user-975298","followers":30,"followers_count":30,"created":"2011-08-12T03:56:24Z","language":"","pushed":"2012-02-13T03:15:25.527Z"},{"gravatar_id":"e5e032ef6bc616aab797ce8562fa60fa","score":10.312129,"type":"user","repos":3,"name":"Vincent","fullname":"Vincent","location":"Rotterdam","login":"VvanGemert","public_repo_count":3,"username":"VvanGemert","created_at":"2010-03-22T15:14:38Z","record":null,"id":"user-227966","followers":4,"followers_count":4,"created":"2010-03-22T15:14:38Z","language":"Ruby","pushed":"2012-03-29T14:15:14.844Z"},{"gravatar_id":"31a9803728a756c2b6ec090cb77852b3","score":10.310701,"type":"user","name":"Vincent Toups","location":"North Carolina","fullname":"Vincent Toups","repos":17,"login":"VincentToups","public_repo_count":17,"username":"VincentToups","created_at":"2008-10-31T13:41:24Z","record":null,"id":"user-31994","followers":16,"followers_count":16,"created":"2008-10-31T13:41:24Z","language":"Common Lisp","pushed":"2012-05-20T16:15:19.958Z"},{"gravatar_id":"2843b1e49827c8a63ef3695778646263","score":10.281975,"type":"user","fullname":"vincent","name":"vincent","location":"","repos":6,"login":"vincentwv","public_repo_count":6,"username":"vincentwv","created_at":"2011-08-17T09:40:13Z","record":null,"id":"user-985725","followers":3,"followers_count":3,"created":"2011-08-17T09:40:13Z","language":"JavaScript","pushed":"2012-04-04T16:15:11.99Z"},{"gravatar_id":"2c7e6e3e5b099d9d9d3ceba6819ca864","score":10.244888,"type":"user","fullname":"Vincent Waller","repos":44,"name":"Vincent Waller","location":"Bend, OR","login":"vwall","public_repo_count":44,"username":"vwall","created_at":"2009-08-21T18:38:05Z","record":null,"id":"user-118020","followers":7,"followers_count":7,"created":"2009-08-21T18:38:05Z","language":"Ruby","pushed":"2012-06-26T19:16:08.156Z"},{"gravatar_id":"3a66abaecbdf3edc16b509b9f46a5128","score":10.102409,"type":"user","fullname":"Vincent","repos":3,"name":"Vincent","location":"Irvine, CA","login":"vmarquez","public_repo_count":3,"username":"vmarquez","created_at":"2010-10-05T06:35:10Z","record":null,"id":"user-427578","followers":3,"followers_count":3,"created":"2010-10-05T06:35:10Z","language":"VimL","pushed":"2012-06-26T23:15:29.811Z"},{"gravatar_id":"0fa1e7a2807be2aaf0bd66d688506199","score":10.076025,"type":"user","location":"Taipei/Taiwan ","name":"Vincent","repos":12,"fullname":"Vincent","login":"changyihsin","public_repo_count":12,"username":"changyihsin","created_at":"2012-01-10T07:09:41Z","record":null,"id":"user-1317650","followers":0,"followers_count":0,"created":"2012-01-10T07:09:41Z","language":"C","pushed":"2012-06-05T07:15:20.895Z"},{"gravatar_id":"a8d7a6a8449afeeeaf9583c80c9ce8fc","score":10.073187,"type":"user","fullname":"Vincent","name":"Vincent","location":"Rotterdam/NL","repos":11,"login":"vincent-psarga","public_repo_count":11,"username":"vincent-psarga","created_at":"2010-01-20T15:27:54Z","record":null,"id":"user-186248","followers":0,"followers_count":0,"created":"2010-01-20T15:27:54Z","language":"Python","pushed":"2011-10-19T10:15:15.782Z"},{"gravatar_id":"15f0181accb819d21fd149a30303d68c","score":10.065324,"type":"user","fullname":"Vincent Demeester","repos":38,"name":"Vincent Demeester","location":"Bordeaux, Aquitaine, France","login":"vdemeester","public_repo_count":38,"username":"vdemeester","created_at":"2008-04-11T06:56:22Z","record":null,"id":"user-6508","followers":8,"followers_count":8,"created":"2008-04-11T06:56:22Z","language":"Shell","pushed":"2012-06-26T21:15:36.396Z"},{"gravatar_id":"ea99573d979fd0a4e9503a1e9331e68a","score":10.0389385,"type":"user","name":"Vincent Cogne","location":"France, Paris","fullname":"Vincent Cogne","repos":20,"login":"xpac27","public_repo_count":20,"username":"xpac27","created_at":"2009-04-22T13:24:07Z","record":null,"id":"user-76585","followers":14,"followers_count":14,"created":"2009-04-22T13:24:07Z","language":"JavaScript","pushed":"2012-06-23T19:15:31.367Z"},{"gravatar_id":"cce588dc4e7a73ae4c284915ca4de863","score":10.007375,"type":"user","repos":11,"name":"VIncent","fullname":"VIncent","location":"Guangzhou,China","login":"ywdong","public_repo_count":11,"username":"ywdong","created_at":"2012-02-21T15:58:13Z","record":null,"id":"user-1457889","followers":0,"followers_count":0,"created":"2012-02-21T15:58:13Z","language":"Java","pushed":"2012-06-03T05:15:15.227Z"},{"gravatar_id":"06366cecc21b382cef72494f25bcbf3e","score":9.9387245,"type":"user","fullname":"Vincent","repos":10,"name":"Vincent","location":"","login":"zakora","public_repo_count":10,"username":"zakora","created_at":"2009-07-19T20:21:15Z","record":null,"id":"user-106620","followers":0,"followers_count":0,"created":"2009-07-19T20:21:15Z","language":"Python","pushed":"2012-06-27T20:15:10.991Z"},{"gravatar_id":"1255ca023ce9ca08c7354b619d562625","score":9.870074,"type":"user","location":"","name":"Vincent","repos":9,"fullname":"Vincent","login":"xuevin","public_repo_count":9,"username":"xuevin","created_at":"2010-06-04T01:46:36Z","record":null,"id":"user-296101","followers":0,"followers_count":0,"created":"2010-06-04T01:46:36Z","language":"Java","pushed":"2012-06-08T20:15:31.323Z"},{"gravatar_id":"94f3a1b384d13d1413422b6b64935d48","score":9.794494,"type":"user","fullname":"Vincent Anonymouse","repos":1,"name":"Vincent Anonymouse","location":"","login":"milomouse","public_repo_count":1,"username":"milomouse","created_at":"2009-04-23T05:11:40Z","record":null,"id":"user-76868","followers":19,"followers_count":19,"created":"2009-04-23T05:11:40Z","language":"Common Lisp","pushed":"2012-03-07T19:19:44.686Z"},{"gravatar_id":"0d131f51bf9526483afcac2dd0d3dad5","score":9.7643385,"type":"user","fullname":"Vincent Cabansag","repos":1,"name":"Vincent Cabansag","location":"Chicago, IL","login":"vcabansag","public_repo_count":1,"username":"vcabansag","created_at":"2011-09-19T15:10:07Z","record":null,"id":"user-1062352","followers":19,"followers_count":19,"created":"2011-09-19T15:10:07Z","language":"Ruby","pushed":"2012-06-27T15:15:38.916Z"},{"gravatar_id":"8c6856b195974b4e03bf9ce24f36ec16","score":9.6641245,"type":"user","repos":0,"name":"Vincent","fullname":"Vincent","location":"Santa Barbara, CA","login":"vincentalindogan","public_repo_count":0,"username":"vincentalindogan","created_at":"2011-03-27T18:47:05Z","record":null,"id":"user-693707","followers":2,"followers_count":2,"created":"2011-03-27T18:47:05Z","language":"","pushed":"2012-03-26T00:15:09.735Z"},{"gravatar_id":"fb56e63daee1464b77209410873f0070","score":9.6641245,"type":"user","name":"Will Vincent","location":"Twin Cities, MN","repos":0,"fullname":"Will Vincent","login":"willvincent","public_repo_count":0,"username":"willvincent","created_at":"2011-03-25T08:19:27Z","record":null,"id":"user-689891","followers":2,"followers_count":2,"created":"2011-03-25T08:19:27Z","language":"","pushed":"2012-05-14T19:16:38.835Z"},{"gravatar_id":"ed4127e0b58e6d0f753a987f895abebd","score":9.6641245,"type":"user","name":"vincent","fullname":"vincent","location":"Beijing China","repos":3,"login":"vincenttone","public_repo_count":3,"username":"vincenttone","created_at":"2011-11-08T01:48:51Z","record":null,"id":"user-1179536","followers":1,"followers_count":1,"created":"2011-11-08T01:48:51Z","language":"Python","pushed":"2012-05-28T11:15:18.397Z"},{"gravatar_id":"aa7c3566126ee339d33fee2c801662d9","score":9.6641245,"type":"user","fullname":"Vincent","name":"Vincent","repos":6,"location":"Valence/France","login":"vinzcoco","public_repo_count":6,"username":"vinzcoco","created_at":"2012-01-23T21:13:58Z","record":null,"id":"user-1372480","followers":0,"followers_count":0,"created":"2012-01-23T21:13:58Z","language":"PHP","pushed":"2012-06-20T10:15:18.217Z"},{"gravatar_id":"8493dbf44e9a5995b24165464f10df92","score":9.595475,"type":"user","location":"","name":"Vincent ","repos":5,"fullname":"Vincent ","login":"livewire195","public_repo_count":5,"username":"livewire195","created_at":"2012-03-27T16:10:49Z","record":null,"id":"user-1580359","followers":0,"followers_count":0,"created":"2012-03-27T16:10:49Z","language":"Python","pushed":"2012-06-09T07:15:13.208Z"},{"gravatar_id":"4667846b9c1e5e426ca958ac96882eb9","score":9.576109,"type":"user","name":"vincent","repos":4,"fullname":"vincent","location":"","login":"vincent5295","public_repo_count":4,"username":"vincent5295","created_at":"2012-02-29T03:00:42Z","record":null,"id":"user-1483932","followers":0,"followers_count":0,"created":"2012-02-29T03:00:42Z","language":"C","pushed":"2012-06-17T14:15:11.01Z"},{"gravatar_id":"032f1a85263f21ff1f013421967ef99e","score":9.558389,"type":"user","name":"Vincent Franco","repos":13,"fullname":"Vincent Franco","location":"Sacramento","login":"vinniefranco","public_repo_count":13,"username":"vinniefranco","created_at":"2010-07-10T20:05:55Z","record":null,"id":"user-328428","followers":14,"followers_count":14,"created":"2010-07-10T20:05:55Z","language":"Ruby","pushed":"2012-06-17T19:15:32.752Z"},{"gravatar_id":"5ed6fc41ebf7d88590a4c07eae074e97","score":9.558389,"type":"user","fullname":"Vincent Deloso","repos":25,"name":"Vincent Deloso","location":"","login":"Mitsugaru","public_repo_count":25,"username":"Mitsugaru","created_at":"2011-11-09T21:32:35Z","record":null,"id":"user-1184640","followers":10,"followers_count":10,"created":"2011-11-09T21:32:35Z","language":"Java","pushed":"2012-06-27T15:15:40.449Z"},{"gravatar_id":"051a209f0b3759e8e51680562955d555","score":9.556979,"type":"user","name":"Vincent","fullname":"Vincent","repos":1,"location":"","login":"vgametoo","public_repo_count":1,"username":"vgametoo","created_at":"2012-03-19T12:39:35Z","record":null,"id":"user-1552699","followers":1,"followers_count":1,"created":"2012-03-19T12:39:35Z","language":"","pushed":"2012-06-21T19:15:26.276Z"},{"gravatar_id":"a270083a603e945d156b9fa5ba7f1270","score":9.55321,"type":"user","fullname":"Vincent","name":"Vincent","location":"","repos":1,"login":"dominiquevincent","public_repo_count":1,"username":"dominiquevincent","created_at":"2010-05-05T13:45:32Z","record":null,"id":"user-265581","followers":1,"followers_count":1,"created":"2010-05-05T13:45:32Z","language":"JavaScript","pushed":"2010-11-12T07:15:10.614Z"},{"gravatar_id":"4136d955e297f2759ac728b6d1701f36","score":9.55321,"type":"user","name":"Vincent","repos":1,"fullname":"Vincent","location":"","login":"vincentamari","public_repo_count":1,"username":"vincentamari","created_at":"2011-03-14T11:02:58Z","record":null,"id":"user-668429","followers":1,"followers_count":1,"created":"2011-03-14T11:02:58Z","language":"JavaScript","pushed":"2012-06-18T07:15:51.072Z"},{"gravatar_id":"4b44c097908d14610ba01790b5fc975c","score":9.526825,"type":"user","fullname":"Vincent","name":"Vincent","location":"","repos":4,"login":"ciex","public_repo_count":4,"username":"ciex","created_at":"2010-05-16T15:08:50Z","record":null,"id":"user-278463","followers":0,"followers_count":0,"created":"2010-05-16T15:08:50Z","language":"Python","pushed":"2012-04-16T15:15:29.943Z"},{"gravatar_id":"010564c5d5894e8e22ba40de45917566","score":9.526825,"type":"user","fullname":"Vincent","name":"Vincent","repos":1,"location":"The Netherlands","login":"Vinnl","public_repo_count":1,"username":"Vinnl","created_at":"2008-04-02T18:24:21Z","record":null,"id":"user-4251","followers":1,"followers_count":1,"created":"2008-04-02T18:24:21Z","language":"","pushed":"2012-05-04T14:15:33.377Z"},{"gravatar_id":"4b86e791cadf9cc2c0a4a7bfc32d9e9e","score":9.526825,"type":"user","fullname":"Vincent","name":"Vincent","repos":1,"location":"","login":"monkeymajiks","public_repo_count":1,"username":"monkeymajiks","created_at":"2012-01-25T22:10:51Z","record":null,"id":"user-1380497","followers":1,"followers_count":1,"created":"2012-01-25T22:10:51Z","language":"","pushed":"2012-06-12T11:15:31.686Z"},{"gravatar_id":"916769ca776c1e7576bcb7cd34be7391","score":9.526825,"type":"user","name":"Vincent","location":"","fullname":"Vincent","repos":4,"login":"vgauthier","public_repo_count":4,"username":"vgauthier","created_at":"2012-02-25T20:07:22Z","record":null,"id":"user-1473920","followers":0,"followers_count":0,"created":"2012-02-25T20:07:22Z","language":"Python","pushed":"2012-06-23T16:15:14.419Z"},{"gravatar_id":"b2f52d3a1a83d0fa6be6705d322bc1de","score":9.523987,"type":"user","name":"Vincent","location":"France","repos":0,"fullname":"Vincent","login":"Vincent-P","public_repo_count":0,"username":"Vincent-P","created_at":"2011-07-28T13:51:46Z","record":null,"id":"user-944506","followers":1,"followers_count":1,"created":"2011-07-28T13:51:46Z","language":"","pushed":"2012-05-12T09:15:15.844Z"},{"gravatar_id":"fc24888b3f4d2a85348e7bbded2f4100","score":9.488329,"type":"user","fullname":"Vincent","repos":0,"name":"Vincent","location":"Amsterdam","login":"viancen","public_repo_count":0,"username":"viancen","created_at":"2012-02-15T08:22:55Z","record":null,"id":"user-1439145","followers":1,"followers_count":1,"created":"2012-02-15T08:22:55Z","language":"","pushed":"2012-06-26T21:15:34.446Z"},{"gravatar_id":"8682561c2989398cda139818390a25c4","score":9.48456,"type":"user","name":"Vincent","repos":0,"fullname":"Vincent","location":"Singapore","login":"vsputra","public_repo_count":0,"username":"vsputra","created_at":"2010-07-19T17:38:53Z","record":null,"id":"user-337548","followers":1,"followers_count":1,"created":"2010-07-19T17:38:53Z","language":"","pushed":"2012-06-19T03:15:15.214Z"},{"gravatar_id":"d3d7715ddc9d2c98dc0acca41026e3ec","score":9.48079,"type":"user","name":"Vincent","location":"Melbourne/Australia","fullname":"Vincent","repos":3,"login":"vincentwongso","public_repo_count":3,"username":"vincentwongso","created_at":"2012-01-03T00:57:50Z","record":null,"id":"user-1300030","followers":0,"followers_count":0,"created":"2012-01-03T00:57:50Z","language":"JavaScript","pushed":"2012-05-10T23:15:22.719Z"},{"gravatar_id":"207cf37afe1b8de78411201832496eb3","score":9.48079,"type":"user","name":"vincent","location":"bordeaux","fullname":"vincent","repos":3,"login":"guillaumevincent","public_repo_count":3,"username":"guillaumevincent","created_at":"2011-07-28T06:59:30Z","record":null,"id":"user-943762","followers":0,"followers_count":0,"created":"2011-07-28T06:59:30Z","language":"Python","pushed":"2012-06-22T12:15:17.467Z"},{"gravatar_id":"fc35e4705d430b49a2e1f962e73d567f","score":9.458175,"type":"user","fullname":"Vincent","repos":0,"name":"Vincent","location":"","login":"vn","public_repo_count":0,"username":"vn","created_at":"2012-01-20T23:48:32Z","record":null,"id":"user-1361165","followers":1,"followers_count":1,"created":"2012-01-20T23:48:32Z","language":"","pushed":"2012-06-28T11:15:11.679Z"},{"gravatar_id":"c34027ae138bf86507c5a36a6b3bf3a5","score":9.421089,"type":"user","name":"Vincent Lannurien","fullname":"Vincent Lannurien","location":"France","repos":8,"login":"addikt1ve","public_repo_count":8,"username":"addikt1ve","created_at":"2008-09-01T13:41:54Z","record":null,"id":"user-22757","followers":15,"followers_count":15,"created":"2008-09-01T13:41:54Z","language":"Shell","pushed":"2011-04-29T22:15:09.273Z"},{"gravatar_id":"226e40fdc55d4597a46279296a616384","score":9.419679,"type":"user","location":"Denver","name":"Vincent","repos":2,"fullname":"Vincent","login":"vincentdavis","public_repo_count":2,"username":"vincentdavis","created_at":"2010-03-29T12:06:25Z","record":null,"id":"user-232564","followers":0,"followers_count":0,"created":"2010-03-29T12:06:25Z","language":"VimL","pushed":"2012-06-05T19:15:38.974Z"},{"gravatar_id":"f6e9045bb7bf8b000eaf62caffbd17ab","score":9.41591,"type":"user","fullname":"Vincent","repos":2,"name":"Vincent","location":"Mont sainte anne","login":"vincentvent","public_repo_count":2,"username":"vincentvent","created_at":"2011-08-10T01:40:18Z","record":null,"id":"user-970338","followers":0,"followers_count":0,"created":"2011-08-10T01:40:18Z","language":"","pushed":"2012-03-08T14:15:38.332Z"},{"gravatar_id":"dfac99df6d6b570feb68f0b88f720a80","score":9.41214,"type":"user","name":"vincent","repos":2,"fullname":"vincent","location":"China, Shenzhen, Nanshan","login":"chenws","public_repo_count":2,"username":"chenws","created_at":"2012-01-03T16:35:05Z","record":null,"id":"user-1301573","followers":0,"followers_count":0,"created":"2012-01-03T16:35:05Z","language":"C","pushed":"2012-05-02T09:15:37.412Z"},{"gravatar_id":"1cc07aa5b421181a130efdd61112ec3e","score":9.403019,"type":"user","fullname":"Vincent S","name":"Vincent S","repos":1,"location":"","login":"VincentS","public_repo_count":1,"username":"VincentS","created_at":"2011-08-23T12:33:31Z","record":null,"id":"user-998872","followers":0,"followers_count":0,"created":"2011-08-23T12:33:31Z","language":"Ruby","pushed":"2011-08-23T13:15:25.062Z"},{"gravatar_id":"304da7fc1421e25a18b95b784baf9539","score":9.389524,"type":"user","name":"Vincent","fullname":"Vincent","location":"","repos":2,"login":"copyshaft","public_repo_count":2,"username":"copyshaft","created_at":"2009-12-04T03:29:28Z","record":null,"id":"user-161704","followers":0,"followers_count":0,"created":"2009-12-04T03:29:28Z","language":"","pushed":"2010-05-24T00:25:15.443Z"},{"gravatar_id":"838409afe0def35c03da9757148df790","score":9.389524,"type":"user","name":"Vincent","repos":2,"fullname":"Vincent","location":"Paris","login":"vinceofdrink","public_repo_count":2,"username":"vinceofdrink","created_at":"2011-07-04T11:24:46Z","record":null,"id":"user-893359","followers":0,"followers_count":0,"created":"2011-07-04T11:24:46Z","language":"C","pushed":"2012-01-12T15:15:29.207Z"},{"gravatar_id":"1adf0d0b91278d02e88627ffbdd1c65a","score":9.389524,"type":"user","repos":2,"name":"Vincent","fullname":"Vincent","location":"China","login":"wenzheng","public_repo_count":2,"username":"wenzheng","created_at":"2011-08-11T12:35:23Z","record":null,"id":"user-973811","followers":0,"followers_count":0,"created":"2011-08-11T12:35:23Z","language":"","pushed":"2012-02-23T15:15:48.56Z"},{"score":9.389524,"type":"user","fullname":"Vincent","name":"Vincent","location":"France","repos":2,"login":"ziefno","public_repo_count":2,"username":"ziefno","created_at":"2012-03-10T14:44:03Z","record":null,"id":"user-1523263","followers":0,"followers_count":0,"created":"2012-03-10T14:44:03Z","language":"","pushed":"2012-03-10T22:15:17.63Z"},{"gravatar_id":"95bcdb7789b7c0481aea3cf55b5bb987","score":9.389524,"type":"user","name":"Vincent","location":"","fullname":"Vincent","repos":2,"login":"vincentm8","public_repo_count":2,"username":"vincentm8","created_at":"2010-09-12T19:26:07Z","record":null,"id":"user-396662","followers":0,"followers_count":0,"created":"2010-09-12T19:26:07Z","language":"PHP","pushed":"2012-04-16T08:15:17.843Z"},{"gravatar_id":"811d7edddfcb7e652f38c7e56d51ea51","score":9.389524,"type":"user","fullname":"Vincent","repos":2,"name":"Vincent","location":"HCM","login":"vnoob","public_repo_count":2,"username":"vnoob","created_at":"2011-04-15T15:26:21Z","record":null,"id":"user-731797","followers":0,"followers_count":0,"created":"2011-04-15T15:26:21Z","language":"","pushed":"2012-06-02T04:15:19.714Z"},{"gravatar_id":"bf4442de23d120becefaa556f41562f2","score":9.389524,"type":"user","name":"Vincente","repos":2,"fullname":"Vincente","location":"California","login":"vciancio","public_repo_count":2,"username":"vciancio","created_at":"2011-12-01T03:03:38Z","record":null,"id":"user-1232406","followers":0,"followers_count":0,"created":"2011-12-01T03:03:38Z","language":"Java","pushed":"2012-06-19T00:15:59.771Z"},{"gravatar_id":"d6288a0b3a370e4db4ea27adbeb74a30","score":9.378824,"type":"user","repos":10,"name":"Blanchon Vincent","fullname":"Blanchon Vincent","location":"Sophia Antipolis, France","login":"blanchonvincent","public_repo_count":10,"username":"blanchonvincent","created_at":"2012-03-27T17:07:35Z","record":null,"id":"user-1580512","followers":14,"followers_count":14,"created":"2012-03-27T17:07:35Z","language":"PHP","pushed":"2012-06-04T10:15:20.206Z"},{"gravatar_id":"667176b96540d167eb74f473c9aea5f7","score":9.378824,"type":"user","name":"Vincent Voyer","location":"Paris, france","fullname":"Vincent Voyer","repos":13,"login":"vvo","public_repo_count":13,"username":"vvo","created_at":"2009-09-06T14:28:06Z","record":null,"id":"user-123822","followers":13,"followers_count":13,"created":"2009-09-06T14:28:06Z","language":"JavaScript","pushed":"2012-06-26T17:15:45.365Z"},{"gravatar_id":"71e56904f65a1ad1f3a178062fad6897","score":9.370159,"type":"user","fullname":"Vincent","name":"Vincent","repos":1,"location":"France, Tarn","login":"Vincent81","public_repo_count":1,"username":"Vincent81","created_at":"2011-08-05T21:22:58Z","record":null,"id":"user-962113","followers":0,"followers_count":0,"created":"2011-08-05T21:22:58Z","language":"","pushed":"2011-09-06T14:15:24.224Z"},{"gravatar_id":"014023e8bd4f74bdd5dd949f9afcf9c9","score":9.34726,"type":"user","name":"Vincent","fullname":"Vincent","location":"","repos":1,"login":"Vincentbosch","public_repo_count":1,"username":"Vincentbosch","created_at":"2011-05-12T14:48:43Z","record":null,"id":"user-784014","followers":0,"followers_count":0,"created":"2011-05-12T14:48:43Z","language":"","pushed":"2011-05-17T14:15:16.145Z"},{"gravatar_id":"86f44ee7aef87c7df23227ed99af157c","score":9.34726,"type":"user","name":"vincent","location":"","repos":1,"fullname":"vincent","login":"legarconjoure","public_repo_count":1,"username":"legarconjoure","created_at":"2011-04-04T12:20:19Z","record":null,"id":"user-708274","followers":0,"followers_count":0,"created":"2011-04-04T12:20:19Z","language":"","pushed":"2012-05-14T08:15:24.999Z"},{"gravatar_id":"fceb28e90061e831277e161d5e85757a","score":9.327894,"type":"user","repos":0,"name":"Vincent","fullname":"Vincent","location":"","login":"vincent7894","public_repo_count":0,"username":"vincent7894","created_at":"2011-12-10T20:26:26Z","record":null,"id":"user-1254570","followers":0,"followers_count":0,"created":"2011-12-10T20:26:26Z","language":"","pushed":"2012-03-29T18:15:22.448Z"},{"gravatar_id":"8a817ae82ab5e742c6aca7548e39ab65","score":9.327894,"type":"user","repos":0,"name":"Vincent","fullname":"Vincent","location":"","login":"vincent73000","public_repo_count":0,"username":"vincent73000","created_at":"2011-07-30T13:45:47Z","record":null,"id":"user-948600","followers":0,"followers_count":0,"created":"2011-07-30T13:45:47Z","language":"","pushed":"2012-06-04T11:15:21.524Z"},{"gravatar_id":"d98356664e29463bdc8d8e77095a80bd","score":9.320875,"type":"user","name":"Vincent","fullname":"Vincent","location":"Shanghai, China","repos":1,"login":"ttyio","public_repo_count":1,"username":"ttyio","created_at":"2010-08-16T06:35:46Z","record":null,"id":"user-365590","followers":0,"followers_count":0,"created":"2010-08-16T06:35:46Z","language":"VimL","pushed":"2010-11-08T03:15:12.032Z"},{"gravatar_id":"74ccd2db6dd9211393d4bd62408c6c13","score":9.320875,"type":"user","fullname":"vincent","repos":1,"name":"vincent","location":"","login":"tean60","public_repo_count":1,"username":"tean60","created_at":"2011-01-20T06:55:22Z","record":null,"id":"user-574055","followers":0,"followers_count":0,"created":"2011-01-20T06:55:22Z","language":"","pushed":"2011-06-10T06:15:11.093Z"},{"gravatar_id":"3526439448f2288e0aa5f9456b6aad4b","score":9.320875,"type":"user","name":"Will Vincent","fullname":"Will Vincent","repos":1,"location":"","login":"tcindie","public_repo_count":1,"username":"tcindie","created_at":"2010-07-02T18:50:26Z","record":null,"id":"user-321392","followers":0,"followers_count":0,"created":"2010-07-02T18:50:26Z","language":"PHP","pushed":"2011-07-01T17:15:14.856Z"},{"gravatar_id":"3aeafe584ef75baac1976c910f069752","score":9.320875,"type":"user","name":"vincent","fullname":"vincent","location":"","repos":1,"login":"vincentye38","public_repo_count":1,"username":"vincentye38","created_at":"2011-01-27T07:37:41Z","record":null,"id":"user-586072","followers":0,"followers_count":0,"created":"2011-01-27T07:37:41Z","language":"","pushed":"2012-04-05T05:15:16.89Z"},{"gravatar_id":"49a3fcbf452d1e9d85259d8e1f510934","score":9.320875,"type":"user","repos":1,"name":"Vincent","location":"Rouen","fullname":"Vincent","login":"pasificking","public_repo_count":1,"username":"pasificking","created_at":"2012-03-30T09:07:51Z","record":null,"id":"user-1589894","followers":0,"followers_count":0,"created":"2012-03-30T09:07:51Z","language":"","pushed":"2012-04-10T09:15:35.441Z"},{"gravatar_id":"c3ca1e10cdb67296511fdb480b4acdf0","score":9.320875,"type":"user","name":"Vincent","repos":1,"fullname":"Vincent","location":"","login":"Bpbannerproject","public_repo_count":1,"username":"Bpbannerproject","created_at":"2012-05-07T19:08:32Z","record":null,"id":"user-1714420","followers":0,"followers_count":0,"created":"2012-05-07T19:08:32Z","language":"","pushed":"2012-05-16T06:15:09.874Z"},{"gravatar_id":"259619f6b128ff8886bffa31ea52ab35","score":9.320875,"type":"user","fullname":"Vincent","repos":1,"name":"Vincent","location":"Nanjing, China","login":"farawayboat","public_repo_count":1,"username":"farawayboat","created_at":"2011-09-23T16:35:39Z","record":null,"id":"user-1074475","followers":0,"followers_count":0,"created":"2011-09-23T16:35:39Z","language":"","pushed":"2012-06-28T07:15:16.399Z"},{"gravatar_id":"6b3cc4c0504401ebb74ecac20cec5fbb","score":9.301509,"type":"user","fullname":"Vincent","name":"Vincent","location":"","repos":0,"login":"vincent7842","public_repo_count":0,"username":"vincent7842","created_at":"2012-03-17T14:30:39Z","record":null,"id":"user-1547379","followers":0,"followers_count":0,"created":"2012-03-17T14:30:39Z","language":"","pushed":"2012-03-17T15:15:16.619Z"},{"gravatar_id":"886a562bd3cc225ec3250650d8cdf4bd","score":9.297433,"type":"user","name":"Zhiqiang Zhao","location":"Hangzhou, China","fullname":"Zhiqiang Zhao","repos":9,"login":"vincent-zhao","public_repo_count":9,"username":"vincent-zhao","created_at":"2012-01-31T03:18:49Z","record":null,"id":"user-1393423","followers":23,"followers_count":23,"created":"2012-01-31T03:18:49Z","language":"JavaScript","pushed":"2012-06-23T07:15:16.545Z"},{"gravatar_id":"4c7ff78c68f09a6294059d17df823fbf","score":9.291653,"type":"user","name":"Vincent","repos":0,"fullname":"Vincent","location":"Belgium","login":"VincentU","public_repo_count":0,"username":"VincentU","created_at":"2012-03-21T06:39:02Z","record":null,"id":"user-1559921","followers":0,"followers_count":0,"created":"2012-03-21T06:39:02Z","language":"","pushed":"2012-05-16T18:15:22.652Z"},{"gravatar_id":"9ec9ad37e9ab75436de0b3a0ce971dbe","score":9.283789,"type":"user","name":"Vincent Tencé","location":"Laval, Qc Canada","fullname":"Vincent Tencé","repos":12,"login":"testinfected","public_repo_count":12,"username":"testinfected","created_at":"2009-09-18T23:30:38Z","record":null,"id":"user-128804","followers":13,"followers_count":13,"created":"2009-09-18T23:30:38Z","language":"Java","pushed":"2012-06-23T19:16:06.24Z"},{"gravatar_id":"30d318bdf8e6a1d013c1bd8c5e9749a0","score":9.282379,"type":"user","name":"Vincent","fullname":"Vincent","location":"Coeur d'Alene ID","repos":0,"login":"thinkeryvin","public_repo_count":0,"username":"thinkeryvin","created_at":"2009-09-22T06:48:36Z","record":null,"id":"user-129806","followers":0,"followers_count":0,"created":"2009-09-22T06:48:36Z","language":"","pushed":"2011-03-30T07:15:09.25Z"},{"gravatar_id":"160934525d484d9269d3f5be05ff26da","score":9.282379,"type":"user","fullname":"Vincent","name":"Vincent","repos":0,"location":"Zoetermeer","login":"vinnyb","public_repo_count":0,"username":"vinnyb","created_at":"2010-08-16T13:04:14Z","record":null,"id":"user-365924","followers":0,"followers_count":0,"created":"2010-08-16T13:04:14Z","language":"","pushed":"2012-05-07T09:15:11.135Z"},{"gravatar_id":"e36b0ea5f740b3545bb9c39dcf4e5110","score":9.282379,"type":"user","fullname":"vincent","name":"vincent","location":"","repos":0,"login":"vinc3nt","public_repo_count":0,"username":"vinc3nt","created_at":"2011-07-01T11:34:07Z","record":null,"id":"user-888545","followers":0,"followers_count":0,"created":"2011-07-01T11:34:07Z","language":"","pushed":"2012-05-22T21:15:13.084Z"},{"gravatar_id":"953b83ade35b99fb82c2a6e134b2329a","score":9.27861,"type":"user","name":"vincent","location":"Montpellier, France","fullname":"vincent","repos":0,"login":"narf","public_repo_count":0,"username":"narf","created_at":"2010-10-28T16:11:35Z","record":null,"id":"user-458263","followers":0,"followers_count":0,"created":"2010-10-28T16:11:35Z","language":"","pushed":"2012-05-21T08:15:26.631Z"},{"gravatar_id":"a6c32849daa0d165f480bfa612116767","score":9.27861,"type":"user","name":"Vincent","location":"","repos":0,"fullname":"Vincent","login":"vincentveri","public_repo_count":0,"username":"vincentveri","created_at":"2011-05-03T08:59:39Z","record":null,"id":"user-765248","followers":0,"followers_count":0,"created":"2011-05-03T08:59:39Z","language":"","pushed":"2012-05-25T18:15:20.565Z"},{"gravatar_id":"23284aaf57ee593baa81a3d953386021","score":9.27861,"type":"user","repos":0,"name":"Vincent","fullname":"Vincent","location":"","login":"vrafols","public_repo_count":0,"username":"vrafols","created_at":"2012-05-28T03:31:24Z","record":null,"id":"user-1784314","followers":0,"followers_count":0,"created":"2012-05-28T03:31:24Z","language":"","pushed":"2012-06-04T07:15:19.793Z"},{"gravatar_id":"24eb2af05f128cbf59314bddf59f3ed9","score":9.27861,"type":"user","name":"Vincent","fullname":"Vincent","repos":0,"location":"","login":"vinc38","public_repo_count":0,"username":"vinc38","created_at":"2012-01-18T08:14:07Z","record":null,"id":"user-1343597","followers":0,"followers_count":0,"created":"2012-01-18T08:14:07Z","language":"","pushed":"2012-06-14T14:15:37.571Z"},{"gravatar_id":"5a60bf71026c317ff9cacf9cce842924","score":9.27484,"type":"user","repos":0,"name":"Vincent","fullname":"Vincent","location":"","login":"Squee","public_repo_count":0,"username":"Squee","created_at":"2009-11-18T13:16:18Z","record":null,"id":"user-154841","followers":0,"followers_count":0,"created":"2009-11-18T13:16:18Z","language":"","pushed":"2011-11-15T17:15:15.363Z"},{"gravatar_id":"747d136a83a1e1fd26b5f001eb632d2c","score":9.252225,"type":"user","name":"Vincent","fullname":"Vincent","location":"","repos":0,"login":"msr911","public_repo_count":0,"username":"msr911","created_at":"2010-02-11T10:01:05Z","record":null,"id":"user-201682","followers":0,"followers_count":0,"created":"2010-02-11T10:01:05Z","language":"","pushed":"2010-05-23T23:30:14.272Z"},{"gravatar_id":"f09b6aab5c78a879998248e76e9e80b8","score":9.252225,"type":"user","name":"vincent","fullname":"vincent","location":"","repos":0,"login":"vincwu","public_repo_count":0,"username":"vincwu","created_at":"2009-05-02T14:51:55Z","record":null,"id":"user-80223","followers":0,"followers_count":0,"created":"2009-05-02T14:51:55Z","language":"","pushed":"2011-03-22T06:15:08.705Z"}]} + diff --git a/test/ReplayData/Repository.testSearchIssues.txt b/test/ReplayData/Repository.testSearchIssues.txt new file mode 100644 index 00000000..f2a6d6a8 --- /dev/null +++ b/test/ReplayData/Repository.testSearchIssues.txt @@ -0,0 +1,5 @@ +GET /legacy/issues/search/jacquev6/PyGithub/open/search {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('content-length', '875'), ('x-ratelimit-limit', '5000'), ('x-ratelimit-remaining', '4985'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('etag', '"2e397de657b33283e77ef12a21326d0d"'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Thu, 28 Jun 2012 20:39:57 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"issues":[{"title":"Support new Search API","number":49,"user":"kukuts","html_url":"https://github.com/jacquev6/PyGithub/issues/49","labels":["Functionalities","RequestedByUser"],"body":"New API ported from v2 but i have trouble with adopting ask's library for v2 API to support v3 style for searching. \nhttp://developer.github.com/v3/search/\n\nIts not described in the page about parameters that search for repos API supports.\nThey are same as in v2 API, you can look them in ask's library.\nIn v2 was like that https://github.com/api/v2/json/repos/search/testing?start_page=2&language=Python\nIn v3 is https://api.github.com/legacy/repos/search/testing?start_page=2&language=Python","votes":0,"comments":2,"updated_at":"2012-06-25T12:31:14-07:00","gravatar_id":"9be6ba907be1740213b69422fdf52b57","position":1.0,"state":"open","created_at":"2012-06-21T05:27:38-07:00"}]} + diff --git a/test/Repository.py b/test/Repository.py index ff0d44a6..70220281 100644 --- a/test/Repository.py +++ b/test/Repository.py @@ -332,3 +332,6 @@ class Repository( Framework.TestCase ): def testGetPullsWithArguments( self ): self.assertListKeyEqual( self.repo.get_pulls( "closed" ), lambda p: p.id, [ 1448168, 1436310, 1436215 ] ) + + def testSearchIssues( self ): + self.assertListKeyEqual( self.repo.search_issues( "open", "search" ), lambda i: i.title, [ "Support new Search API" ] ) From 37c06ea4fcc2be4f5a9526df2d317e8ed5a3177f Mon Sep 17 00:00:00 2001 From: Vincent Jacques Date: Fri, 29 Jun 2012 07:44:10 +0200 Subject: [PATCH 06/10] Convert legacy objects to v3 ones Still needed: - test completion of objects returned by legacy API - implement legacy pagination --- github/Github.py | 9 ++++++--- github/Legacy.py | 41 +++++++++++++++++++++++++++++++++++++++++ github/Repository.py | 4 +++- test/Github.py | 3 ++- 4 files changed, 52 insertions(+), 5 deletions(-) create mode 100644 github/Legacy.py diff --git a/github/Github.py b/github/Github.py index 0f64a0c5..b91856b1 100644 --- a/github/Github.py +++ b/github/Github.py @@ -18,6 +18,7 @@ import Organization import Gist import PaginatedList import Repository +import Legacy class Github( object ): def __init__( self, login_or_token = None, password = None ): @@ -74,7 +75,8 @@ class Github( object ): None, None ) - return PaginatedList.PaginatedList( + return Legacy.PaginatedList( + Legacy.convertRepo, Repository.Repository, self.__requester, headers, @@ -89,7 +91,8 @@ class Github( object ): None, None ) - return PaginatedList.PaginatedList( + return Legacy.PaginatedList( + Legacy.convertUser, NamedUser.NamedUser, self.__requester, headers, @@ -104,4 +107,4 @@ class Github( object ): None, None ) - return NamedUser.NamedUser( self.__requester, data[ "user" ], completed = False ) + return NamedUser.NamedUser( self.__requester, Legacy.convertUser( data[ "user" ] ), completed = False ) diff --git a/github/Legacy.py b/github/Legacy.py new file mode 100644 index 00000000..8460d150 --- /dev/null +++ b/github/Legacy.py @@ -0,0 +1,41 @@ +# Copyright 2012 Vincent Jacques +# vincent@vincent-jacques.net + +# This file is part of PyGithub. http://vincent-jacques.net/PyGithub + +# PyGithub is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License +# as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. + +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. + +# You should have received a copy of the GNU Lesser General Public License along with PyGithub. If not, see . + +def PaginatedList( convert, contentClass, requester, headers, data ): + return [ + contentClass( requester, convert( element ), completed = False ) + for element in data + ] + +def convertUser( attributes ): + attributes[ "created_at" ] = attributes[ "created_at" ][ : 19 ] + "Z" + if not isinstance( attributes[ "id" ], int ): + attributes[ "id" ] = int( attributes[ "id" ][ 5 : ] ) + return attributes + +def convertRepo( attributes ): + attributes[ "created_at" ] = attributes[ "created_at" ][ : 19 ] + "Z" + if "pushed_at" in attributes: + attributes[ "pushed_at" ] = attributes[ "pushed_at" ][ : 19 ] + "Z" + attributes[ "owner" ] = { "login": attributes[ "owner" ] } + if "organization" in attributes: + attributes[ "organization" ] = { "login": attributes[ "organization" ] } + attributes[ "url" ] = "https://api.github.com/repos/" + "/".join( attributes[ "url" ].split( "/" )[ -2 : ] ) + return attributes + +def convertIssue( attributes ): + attributes[ "created_at" ] = attributes[ "created_at" ][ : 19 ] + "Z" + attributes[ "updated_at" ] = attributes[ "updated_at" ][ : 19 ] + "Z" + attributes[ "labels" ] = [ { "name": label } for label in attributes[ "labels" ] ] + attributes[ "user" ] = { "login": attributes[ "user" ] } + return attributes diff --git a/github/Repository.py b/github/Repository.py index 499eab09..abf8cd76 100644 --- a/github/Repository.py +++ b/github/Repository.py @@ -46,6 +46,7 @@ import GitTag import Download import Permissions import Event +import Legacy class Repository( GithubObject.GithubObject ): @property @@ -1011,7 +1012,8 @@ class Repository( GithubObject.GithubObject ): None, None ) - return PaginatedList.PaginatedList( + return Legacy.PaginatedList( + Legacy.convertIssue, Issue.Issue, self._requester, headers, diff --git a/test/Github.py b/test/Github.py index 6a9abe24..8aa4df1e 100644 --- a/test/Github.py +++ b/test/Github.py @@ -18,7 +18,8 @@ class Github( Framework.TestCase ): self.assertListKeyBegin( self.g.get_gists(), lambda g: g.id, [ "2729695", "2729656", "2729597", "2729584", "2729569", "2729554", "2729543", "2729537", "2729536", "2729533", "2729525", "2729522", "2729519", "2729515", "2729506", "2729487", "2729484", "2729482", "2729441", "2729432", "2729420", "2729398", "2729372", "2729371", "2729351", "2729346", "2729316", "2729304", "2729296", "2729276", "2729272", "2729265", "2729195", "2729160", "2729143", "2729127", "2729119", "2729113", "2729103", "2729069", "2729059", "2729051", "2729029", "2729027", "2729026", "2729022", "2729002", "2728985", "2728979", "2728964", "2728937", "2728933", "2728884", "2728869", "2728866", "2728855", "2728854", "2728853", "2728846", "2728825", "2728814", "2728813", "2728812", "2728805", "2728802", "2728800", "2728798", "2728797", "2728796", "2728793", "2728758", "2728754", "2728751", "2728748", "2728721", "2728716", "2728715", "2728705", "2728701", "2728699", "2728697", "2728688", "2728683", "2728677", "2728649", "2728640", "2728625", "2728620", "2728615", "2728614", "2728565", "2728564", "2728554", "2728523", "2728519", "2728511", "2728497", "2728496", "2728495", "2728487" ] ) def testSearchRepos( self ): - self.assertListKeyBegin( self.g.search_repos( "github api v3" ), lambda r: r.full_name, [ "pengwynn/octokit", "jwilger/github-v3-api", "acoulton/github_v3_api" ] ) + # self.assertListKeyBegin( self.g.search_repos( "github api v3" ), lambda r: r.full_name, [ "pengwynn/octokit", "jwilger/github-v3-api", "acoulton/github_v3_api" ] ) + self.assertListKeyBegin( self.g.search_repos( "github api v3" ), lambda r: r.name, [ "octokit", "github-v3-api", "github_v3_api" ] ) def testSearchUsers( self ): self.assertListKeyBegin( self.g.search_users( "vincent" ), lambda u: u.login, [ "nvie", "obra", "lusis" ] ) From d8882e53edee18ed6004ad904b4957d59a005ac9 Mon Sep 17 00:00:00 2001 From: Vincent Jacques Date: Fri, 29 Jun 2012 18:09:43 +0100 Subject: [PATCH 07/10] Improve legacy APIs: - add a legacy_ prefix (avoir future name clashes) - add the language parameter to Github.legacy_search_repos - prepare legacy pagination --- doc/ReferenceOfClasses.md | 8 +-- github/Github.py | 35 ++++++------- github/Legacy.py | 49 ++++++++++++------- github/Repository.py | 15 ++---- test/Github.py | 22 ++++++--- .../Github.testLegacySearchRepos.txt | 10 ++++ ...thub.testLegacySearchReposWithLanguage.txt | 10 ++++ .../Github.testLegacySearchUserByEmail.txt | 10 ++++ .../Github.testLegacySearchUsers.txt | 5 ++ .../Repository.testLegacySearchIssues.txt | 5 ++ test/Repository.py | 4 +- 11 files changed, 111 insertions(+), 62 deletions(-) create mode 100644 test/ReplayData/Github.testLegacySearchRepos.txt create mode 100644 test/ReplayData/Github.testLegacySearchReposWithLanguage.txt create mode 100644 test/ReplayData/Github.testLegacySearchUserByEmail.txt create mode 100644 test/ReplayData/Github.testLegacySearchUsers.txt create mode 100644 test/ReplayData/Repository.testLegacySearchIssues.txt diff --git a/doc/ReferenceOfClasses.md b/doc/ReferenceOfClasses.md index 8e2b8aa8..2186b3e2 100644 --- a/doc/ReferenceOfClasses.md +++ b/doc/ReferenceOfClasses.md @@ -23,10 +23,12 @@ Methods * `id`: integer * `get_gists()`: list of `Gist` * `search_repos( keyword )`: list of `Repository` +* `legacy_search_repos( keyword, [language] )`: list of `Repository` * `keyword`: string -* `search_users( keyword )`: list of `NamedUser` + * `language`: string +* `legacy_search_users( keyword )`: list of `NamedUser` * `keyword`: string -* `search_user_by_email( email )`: `NamedUser` +* `legacy_search_user_by_email( email )`: `NamedUser` * `email`: string Class `GithubException` @@ -1198,7 +1200,7 @@ Issues * `sort`: string * `direction`: string * `since`: datetime -* `search_issues( state, keyword )`: list of `Issue` +* `legacy_search_issues( state, keyword )`: list of `Issue` * `state`: "open" or "closed" * `keyword`: string diff --git a/github/Github.py b/github/Github.py index b91856b1..b75d3181 100644 --- a/github/Github.py +++ b/github/Github.py @@ -19,6 +19,7 @@ import Gist import PaginatedList import Repository import Legacy +import GithubObject class Github( object ): def __init__( self, login_or_token = None, password = None ): @@ -67,39 +68,31 @@ class Github( object ): data ) - def search_repos( self, keyword ): + def legacy_search_repos( self, keyword, language = GithubObject.NotSet ): assert isinstance( keyword, ( str, unicode ) ), keyword - headers, data = self.__requester.requestAndCheck( - "GET", - "https://api.github.com/legacy/repos/search/" + keyword, - None, - None - ) + assert language is GithubObject.NotSet or isinstance( language, ( str, unicode ) ), language + args = {} if language is GithubObject.NotSet else { "language": language } return Legacy.PaginatedList( + "https://api.github.com/legacy/repos/search/" + keyword, + args, + self.__requester, + "repositories", Legacy.convertRepo, Repository.Repository, - self.__requester, - headers, - data[ "repositories" ] ) - def search_users( self, keyword ): + def legacy_search_users( self, keyword ): assert isinstance( keyword, ( str, unicode ) ), keyword - headers, data = self.__requester.requestAndCheck( - "GET", - "https://api.github.com/legacy/user/search/" + keyword, - None, - None - ) return Legacy.PaginatedList( + "https://api.github.com/legacy/user/search/" + keyword, + {}, + self.__requester, + "users", Legacy.convertUser, NamedUser.NamedUser, - self.__requester, - headers, - data[ "users" ] ) - def search_user_by_email( self, email ): + def legacy_search_user_by_email( self, email ): assert isinstance( email, ( str, unicode ) ), email headers, data = self.__requester.requestAndCheck( "GET", diff --git a/github/Legacy.py b/github/Legacy.py index 8460d150..efe5a38a 100644 --- a/github/Legacy.py +++ b/github/Legacy.py @@ -11,31 +11,42 @@ # You should have received a copy of the GNU Lesser General Public License along with PyGithub. If not, see . -def PaginatedList( convert, contentClass, requester, headers, data ): +def PaginatedList( url, args, requester, key, convert, contentClass ): + headers, data = requester.requestAndCheck( + "GET", + url, + args, + None + ) return [ contentClass( requester, convert( element ), completed = False ) - for element in data + for element in data[ key ] ] def convertUser( attributes ): - attributes[ "created_at" ] = attributes[ "created_at" ][ : 19 ] + "Z" - if not isinstance( attributes[ "id" ], int ): - attributes[ "id" ] = int( attributes[ "id" ][ 5 : ] ) - return attributes + login = attributes[ "login" ] + return { + "login": login, + "url": "https://api.github.com/users/" + login, + } def convertRepo( attributes ): - attributes[ "created_at" ] = attributes[ "created_at" ][ : 19 ] + "Z" - if "pushed_at" in attributes: - attributes[ "pushed_at" ] = attributes[ "pushed_at" ][ : 19 ] + "Z" - attributes[ "owner" ] = { "login": attributes[ "owner" ] } - if "organization" in attributes: - attributes[ "organization" ] = { "login": attributes[ "organization" ] } - attributes[ "url" ] = "https://api.github.com/repos/" + "/".join( attributes[ "url" ].split( "/" )[ -2 : ] ) - return attributes + owner = attributes[ "owner" ] + name = attributes[ "name" ] + return { + "owner": { "login": owner }, + "name": name, + "url": "https://api.github.com/repos/" + owner + "/" + name, + } def convertIssue( attributes ): - attributes[ "created_at" ] = attributes[ "created_at" ][ : 19 ] + "Z" - attributes[ "updated_at" ] = attributes[ "updated_at" ][ : 19 ] + "Z" - attributes[ "labels" ] = [ { "name": label } for label in attributes[ "labels" ] ] - attributes[ "user" ] = { "login": attributes[ "user" ] } - return attributes + number = attributes[ "number" ] + title = attributes[ "title" ] + html_url = attributes[ "html_url" ] + assert html_url.startswith( "https://github.com/" ) + url = html_url.replace( "https://github.com/", "https://api.github.com/repos/" ) + return { + "title": title, + "number": number, + "url": url, + } diff --git a/github/Repository.py b/github/Repository.py index abf8cd76..db459279 100644 --- a/github/Repository.py +++ b/github/Repository.py @@ -1003,21 +1003,16 @@ class Repository( GithubObject.GithubObject ): None ) - def search_issues( self, state, keyword ): + def legacy_search_issues( self, state, keyword ): assert state in [ "open", "closed" ], state assert isinstance( keyword, ( str, unicode ) ), keyword - headers, data = self._requester.requestAndCheck( - "GET", - "https://api.github.com/legacy/issues/search/" + self.owner.login + "/" + self.name + "/" + state + "/" + keyword, - None, - None - ) return Legacy.PaginatedList( + "https://api.github.com/legacy/issues/search/" + self.owner.login + "/" + self.name + "/" + state + "/" + keyword, + {}, + self._requester, + "issues", Legacy.convertIssue, Issue.Issue, - self._requester, - headers, - data[ "issues" ] ) @property diff --git a/test/Github.py b/test/Github.py index 8aa4df1e..172f1059 100644 --- a/test/Github.py +++ b/test/Github.py @@ -17,13 +17,21 @@ class Github( Framework.TestCase ): def testGetGists( self ): self.assertListKeyBegin( self.g.get_gists(), lambda g: g.id, [ "2729695", "2729656", "2729597", "2729584", "2729569", "2729554", "2729543", "2729537", "2729536", "2729533", "2729525", "2729522", "2729519", "2729515", "2729506", "2729487", "2729484", "2729482", "2729441", "2729432", "2729420", "2729398", "2729372", "2729371", "2729351", "2729346", "2729316", "2729304", "2729296", "2729276", "2729272", "2729265", "2729195", "2729160", "2729143", "2729127", "2729119", "2729113", "2729103", "2729069", "2729059", "2729051", "2729029", "2729027", "2729026", "2729022", "2729002", "2728985", "2728979", "2728964", "2728937", "2728933", "2728884", "2728869", "2728866", "2728855", "2728854", "2728853", "2728846", "2728825", "2728814", "2728813", "2728812", "2728805", "2728802", "2728800", "2728798", "2728797", "2728796", "2728793", "2728758", "2728754", "2728751", "2728748", "2728721", "2728716", "2728715", "2728705", "2728701", "2728699", "2728697", "2728688", "2728683", "2728677", "2728649", "2728640", "2728625", "2728620", "2728615", "2728614", "2728565", "2728564", "2728554", "2728523", "2728519", "2728511", "2728497", "2728496", "2728495", "2728487" ] ) - def testSearchRepos( self ): - # self.assertListKeyBegin( self.g.search_repos( "github api v3" ), lambda r: r.full_name, [ "pengwynn/octokit", "jwilger/github-v3-api", "acoulton/github_v3_api" ] ) - self.assertListKeyBegin( self.g.search_repos( "github api v3" ), lambda r: r.name, [ "octokit", "github-v3-api", "github_v3_api" ] ) + def testLegacySearchRepos( self ): + repos = self.g.legacy_search_repos( "github api v3" ) + self.assertListKeyBegin( repos, lambda r: r.name, [ "octokit", "github-v3-api", "github_v3_api" ] ) + self.assertEqual( repos[ 0 ].full_name, "pengwynn/octokit" ) - def testSearchUsers( self ): - self.assertListKeyBegin( self.g.search_users( "vincent" ), lambda u: u.login, [ "nvie", "obra", "lusis" ] ) - def testSearchUserByEmail( self ): - user = self.g.search_user_by_email( "vincent@vincent-jacques.net" ) + def testLegacySearchReposWithLanguage( self ): + repos = self.g.legacy_search_repos( "document", language = "Python" ) + self.assertListKeyBegin( repos, lambda r: r.name, [ "ipython", "mongoengine", "tagger" ] ) + self.assertEqual( repos[ 0 ].full_name, "ipython/ipython" ) + + def testLegacySearchUsers( self ): + self.assertListKeyBegin( self.g.legacy_search_users( "vincent" ), lambda u: u.login, [ "nvie", "obra", "lusis" ] ) + + def testLegacySearchUserByEmail( self ): + user = self.g.legacy_search_user_by_email( "vincent@vincent-jacques.net" ) self.assertEqual( user.login, "jacquev6" ) + self.assertEqual( user.followers, 13 ) diff --git a/test/ReplayData/Github.testLegacySearchRepos.txt b/test/ReplayData/Github.testLegacySearchRepos.txt new file mode 100644 index 00000000..fbcf0c07 --- /dev/null +++ b/test/ReplayData/Github.testLegacySearchRepos.txt @@ -0,0 +1,10 @@ +GET /legacy/repos/search/github api v3 {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4995'), ('content-length', '41936'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d9e0f3e0cd616678a4bda3b3cbcaa855"'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Fri, 29 Jun 2012 11:37:34 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"repositories":[{"type":"repo","has_downloads":true,"homepage":"http://pengwynn.github.com/octokit","owner":"pengwynn","score":16.86284,"pushed":"2012-06-28T18:38:40-07:00","description":"Simple Ruby wrapper for the GitHub v3 API","watchers":294,"has_wiki":true,"followers":294,"username":"pengwynn","fork":false,"size":264,"open_issues":2,"created_at":"2009-12-10T13:41:49-08:00","name":"octokit","url":"https://github.com/pengwynn/octokit","integrate_branch":"master","private":false,"language":"Ruby","pushed_at":"2012-06-28T18:38:40-07:00","created":"2009-12-10T13:41:49-08:00","forks":73,"has_issues":true},{"type":"repo","has_downloads":true,"owner":"jwilger","score":8.836904,"pushed":"2012-01-20T12:46:30-08:00","description":"Ruby Client for the GitHub v3 API","watchers":35,"has_wiki":false,"followers":35,"username":"jwilger","fork":false,"size":212,"open_issues":2,"created_at":"2011-06-23T15:52:33-07:00","name":"github-v3-api","url":"https://github.com/jwilger/github-v3-api","private":false,"language":"Ruby","pushed_at":"2012-01-20T12:46:30-08:00","created":"2011-06-23T15:52:33-07:00","forks":13,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"acoulton","score":7.503703,"pushed":"2011-12-29T20:40:32-08:00","description":"KO3 module for interacting with the new Github v3 API","watchers":11,"has_wiki":true,"followers":11,"username":"acoulton","fork":false,"size":164,"open_issues":1,"created_at":"2011-10-11T13:02:03-07:00","name":"github_v3_api","url":"https://github.com/acoulton/github_v3_api","private":false,"language":"PHP","pushed_at":"2011-12-29T20:40:32-08:00","created":"2011-10-11T13:02:03-07:00","forks":4,"has_issues":true,"master_branch":"develop"},{"type":"repo","has_downloads":true,"homepage":"http://peter-murach.github.com/github","owner":"peter-murach","score":7.3548846,"pushed":"2012-06-28T14:26:31-07:00","description":"Ruby interface to github API v3","watchers":77,"has_wiki":true,"followers":77,"username":"peter-murach","fork":false,"size":264,"open_issues":1,"created_at":"2011-09-25T12:36:22-07:00","name":"github","url":"https://github.com/peter-murach/github","private":false,"language":"Ruby","pushed_at":"2012-06-28T14:26:31-07:00","created":"2011-09-25T12:36:22-07:00","forks":26,"has_issues":true},{"type":"repo","has_downloads":true,"owner":"VisualAppeal","score":7.1228023,"pushed":"2012-06-04T15:29:07-07:00","description":"PHP Github API client for version 3.","watchers":2,"has_wiki":true,"followers":2,"organization":"VisualAppeal","username":"VisualAppeal","fork":false,"size":132,"open_issues":0,"created_at":"2012-06-04T15:20:41-07:00","name":"Github-API-v3","url":"https://github.com/VisualAppeal/Github-API-v3","private":false,"language":"PHP","pushed_at":"2012-06-04T15:29:07-07:00","created":"2012-06-04T15:20:41-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"guillaumepotier","score":7.118563,"pushed":"2012-02-23T01:05:23-08:00","description":"Very simple class I use for my pet projects","watchers":2,"has_wiki":true,"followers":2,"username":"guillaumepotier","fork":false,"size":104,"open_issues":0,"created_at":"2012-02-21T02:02:04-08:00","name":"GithubApi_v3","url":"https://github.com/guillaumepotier/GithubApi_v3","private":false,"language":"PHP","pushed_at":"2012-02-23T01:05:23-08:00","created":"2012-02-21T02:02:04-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"phated","score":6.1844034,"pushed":"2012-01-15T23:58:31-08:00","description":"Experimentation with github api (v3) in javascript","watchers":3,"has_wiki":true,"followers":3,"username":"phated","fork":false,"size":9196,"open_issues":0,"created_at":"2012-01-14T17:32:10-08:00","name":"github-v3-api-js","url":"https://github.com/phated/github-v3-api-js","private":false,"language":"JavaScript","pushed_at":"2012-01-15T23:58:31-08:00","created":"2012-01-14T17:32:10-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"rsanders","score":6.1287065,"pushed":"2012-02-07T22:50:13-08:00","description":"Emacs Lisp interface for the GitHub API v3","watchers":3,"has_wiki":true,"followers":3,"username":"rsanders","fork":false,"size":120,"open_issues":0,"created_at":"2012-02-05T20:34:12-08:00","name":"github-api-v3.el","url":"https://github.com/rsanders/github-api-v3.el","private":false,"language":"Emacs Lisp","pushed_at":"2012-02-07T22:50:13-08:00","created":"2012-02-05T20:34:12-08:00","forks":3,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"farnoy","score":5.6324615,"pushed":"2012-01-31T04:33:03-08:00","description":"v2+v3 GitHub API Ruby client library","watchers":46,"has_wiki":true,"followers":46,"username":"farnoy","fork":false,"size":164,"open_issues":5,"created_at":"2011-01-21T13:09:02-08:00","name":"github-api-client","url":"https://github.com/farnoy/github-api-client","private":false,"language":"Ruby","pushed_at":"2012-01-31T04:33:03-08:00","created":"2011-01-21T13:09:02-08:00","forks":13,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"pksunkara","score":4.9111776,"pushed":"2012-06-20T10:21:27-07:00","description":"github api v3 in nodejs","watchers":61,"has_wiki":true,"followers":61,"username":"pksunkara","fork":false,"size":160,"open_issues":2,"created_at":"2011-11-20T18:13:13-08:00","name":"octonode","url":"https://github.com/pksunkara/octonode","private":false,"language":"CoffeeScript","pushed_at":"2012-06-20T10:21:27-07:00","created":"2011-11-20T18:13:13-08:00","forks":16,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"http://developer.github.com/v3/","owner":"yiiext","score":4.2667956,"pushed":"2011-11-16T01:07:50-08:00","description":"implementation of github api v3","watchers":11,"has_wiki":true,"followers":11,"organization":"yiiext","username":"yiiext","fork":false,"size":164,"open_issues":1,"created_at":"2011-10-23T01:34:00-07:00","name":"github-api","url":"https://github.com/yiiext/github-api","private":false,"language":"PHP","pushed_at":"2011-11-16T01:07:50-08:00","created":"2011-10-23T01:34:00-07:00","forks":2,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"dsyph3r","score":4.205575,"pushed":"2012-03-09T15:40:02-08:00","description":"PHP library for the GitHub API v3","watchers":22,"has_wiki":true,"followers":22,"username":"dsyph3r","fork":false,"size":168,"open_issues":1,"created_at":"2011-09-06T13:24:42-07:00","name":"github-api3-php","url":"https://github.com/dsyph3r/github-api3-php","private":false,"language":"PHP","pushed_at":"2012-03-09T15:40:02-08:00","created":"2011-09-06T13:24:42-07:00","forks":7,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"jcarver989","score":3.566578,"pushed":"2011-11-19T13:21:11-08:00","description":"Micro library for Github's API (v3)","watchers":1,"has_wiki":true,"followers":1,"username":"jcarver989","fork":false,"size":140,"open_issues":0,"created_at":"2011-11-19T12:57:47-08:00","name":"GithubApi.js","url":"https://github.com/jcarver989/GithubApi.js","private":false,"language":"JavaScript","pushed_at":"2011-11-19T13:21:11-08:00","created":"2011-11-19T12:57:47-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"http://vincent-jacques.net/PyGithub","owner":"jacquev6","score":3.5653143,"pushed":"2012-06-28T23:38:24-07:00","description":"Python library implementing the full Github API v3","watchers":29,"has_wiki":false,"followers":29,"username":"jacquev6","fork":false,"size":176,"open_issues":11,"created_at":"2012-02-25T04:53:47-08:00","name":"PyGithub","url":"https://github.com/jacquev6/PyGithub","private":false,"language":"Python","pushed_at":"2012-06-28T23:38:24-07:00","created":"2012-02-25T04:53:47-08:00","forks":5,"has_issues":true},{"type":"repo","has_downloads":true,"owner":"bcg","score":3.4992,"pushed":"2012-06-12T04:46:45-07:00","description":"Go api for github v3","watchers":1,"has_wiki":true,"followers":1,"username":"bcg","fork":false,"size":92,"open_issues":0,"created_at":"2012-06-12T04:43:27-07:00","name":"github","url":"https://github.com/bcg/github","private":false,"language":"Go","pushed_at":"2012-06-12T04:46:45-07:00","created":"2012-06-12T04:43:27-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"csphere","score":3.465937,"pushed":"2012-05-18T10:25:08-07:00","description":"An intuitive wrapper for the Github Api v3.","watchers":5,"has_wiki":true,"followers":5,"username":"csphere","fork":false,"size":136,"open_issues":0,"created_at":"2012-02-21T11:25:15-08:00","name":"GithubApiWrapper-PHP","url":"https://github.com/csphere/GithubApiWrapper-PHP","private":false,"language":"PHP","pushed_at":"2012-05-18T10:25:08-07:00","created":"2012-02-21T11:25:15-08:00","forks":2,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"dkucinskas","score":3.4529676,"pushed":"2012-06-24T22:10:11-07:00","description":"Simple Github API v3 client library for .Net","watchers":2,"has_wiki":true,"followers":2,"username":"dkucinskas","fork":false,"size":116,"open_issues":0,"created_at":"2012-02-22T03:20:10-08:00","name":"net-github-api","url":"https://github.com/dkucinskas/net-github-api","private":false,"language":"C#","pushed_at":"2012-06-24T22:10:11-07:00","created":"2012-02-22T03:20:10-08:00","forks":2,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"csphere","score":3.412609,"pushed":"2012-05-18T10:26:45-07:00","description":"An intuitive wrapper for the Github Api v3.","watchers":4,"has_wiki":true,"followers":4,"username":"csphere","fork":false,"size":132,"open_issues":0,"created_at":"2012-02-22T18:29:18-08:00","name":"GithubApiWrapper-Python","url":"https://github.com/csphere/GithubApiWrapper-Python","private":false,"language":"Python","pushed_at":"2012-05-18T10:26:45-07:00","created":"2012-02-22T18:29:18-08:00","forks":4,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"http://edwardhotchkiss.com/github3/","owner":"edwardhotchkiss","score":3.3435078,"pushed":"2012-06-26T04:04:33-07:00","description":"Node.JS GitHub API (v3) Wrapper","watchers":20,"has_wiki":true,"followers":20,"username":"edwardhotchkiss","fork":false,"size":140,"open_issues":0,"created_at":"2011-11-30T14:56:52-08:00","name":"github3","url":"https://github.com/edwardhotchkiss/github3","private":false,"language":"JavaScript","pushed_at":"2012-06-26T04:04:33-07:00","created":"2011-11-30T14:56:52-08:00","forks":10,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"ChristopherMacGown","score":3.2826061,"pushed":"2012-06-14T19:06:26-07:00","description":"Github API v3 library for Python.","watchers":20,"has_wiki":true,"followers":20,"username":"ChristopherMacGown","fork":false,"size":136,"open_issues":0,"created_at":"2011-04-28T10:07:29-07:00","name":"python-github3","url":"https://github.com/ChristopherMacGown/python-github3","private":false,"language":"Python","pushed_at":"2012-06-14T19:06:26-07:00","created":"2011-04-28T10:07:29-07:00","forks":12,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"RobertFischer","score":3.2327013,"pushed":"2012-05-15T05:40:26-07:00","description":"An under-implemented version of the GitHub API v3 using the Groovy RESTClient.","watchers":1,"has_wiki":true,"followers":1,"username":"RobertFischer","fork":false,"size":194,"open_issues":0,"created_at":"2012-04-15T10:14:22-07:00","name":"github-api-3","url":"https://github.com/RobertFischer/github-api-3","private":false,"language":"Java","pushed_at":"2012-05-15T05:40:26-07:00","created":"2012-04-15T10:14:22-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"lynnwallenstein","score":3.0263488,"pushed":"2012-06-24T15:22:01-07:00","description":"User and Project GitHub badge using jQuery and GitHub API v3","watchers":25,"has_wiki":true,"followers":25,"username":"lynnwallenstein","fork":false,"size":173,"open_issues":4,"created_at":"2010-09-10T23:51:56-07:00","name":"jQuery-Github-Badge","url":"https://github.com/lynnwallenstein/jQuery-Github-Badge","private":false,"language":"JavaScript","pushed_at":"2012-06-24T15:22:01-07:00","created":"2010-09-10T23:51:56-07:00","forks":5,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"peter-murach","score":2.9787061,"pushed":"2012-06-28T14:36:02-07:00","description":"CLI-based access to GitHub API v3","watchers":18,"has_wiki":true,"followers":18,"username":"peter-murach","fork":false,"size":284,"open_issues":3,"created_at":"2012-03-11T13:35:23-07:00","name":"github_cli","url":"https://github.com/peter-murach/github_cli","private":false,"language":"Ruby","pushed_at":"2012-06-28T14:36:02-07:00","created":"2012-03-11T13:35:23-07:00","forks":3,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"eed3si9n","score":2.8771741,"pushed":"2011-11-29T06:28:35-08:00","description":"github API v3","watchers":5,"has_wiki":true,"followers":5,"username":"eed3si9n","fork":false,"size":200,"open_issues":0,"created_at":"2011-11-13T22:02:02-08:00","name":"dispatch-github","url":"https://github.com/eed3si9n/dispatch-github","private":false,"language":"Scala","pushed_at":"2011-11-29T06:28:35-08:00","created":"2011-11-13T22:02:02-08:00","forks":2,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"http://metacpan.org/module/Pithub","owner":"plu","score":2.6714013,"pushed":"2011-12-29T04:26:13-08:00","description":"Perl Github v3 API","watchers":19,"has_wiki":true,"followers":19,"username":"plu","fork":false,"size":1382,"open_issues":18,"created_at":"2011-06-25T03:40:24-07:00","name":"Pithub","url":"https://github.com/plu/Pithub","private":false,"language":"Perl","pushed_at":"2011-12-29T04:26:13-08:00","created":"2011-06-25T03:40:24-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"dominis","score":2.593676,"pushed":"2012-01-07T14:01:34-08:00","description":"PHP library for GitHub's v3 api","watchers":5,"has_wiki":false,"followers":5,"username":"dominis","fork":false,"size":172,"open_issues":0,"created_at":"2011-10-27T08:47:40-07:00","name":"GitHub-API-PHP","url":"https://github.com/dominis/GitHub-API-PHP","private":false,"language":"PHP","pushed_at":"2012-01-07T14:01:34-08:00","created":"2011-10-27T08:47:40-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"danielribeiro","score":2.565878,"pushed":"2012-04-17T02:30:54-07:00","description":"Amazing API client, currently for Github's API v3, in the browser","watchers":1,"has_wiki":true,"followers":1,"username":"danielribeiro","fork":false,"size":464,"open_issues":0,"created_at":"2012-05-28T19:34:50-07:00","name":"api-amazing","url":"https://github.com/danielribeiro/api-amazing","private":false,"language":"JavaScript","pushed_at":"2012-04-17T02:30:54-07:00","created":"2012-05-28T19:34:50-07:00","forks":0,"has_issues":false},{"type":"repo","has_downloads":true,"homepage":"","owner":"trustmaster","score":2.4088292,"pushed":"2011-10-04T04:47:18-07:00","description":"Converts Trac milestones, tickets and comments into Github issues 2.0 using github api v3","watchers":11,"has_wiki":true,"followers":11,"username":"trustmaster","fork":false,"size":184,"open_issues":0,"created_at":"2011-05-12T12:18:23-07:00","name":"trac2github","url":"https://github.com/trustmaster/trac2github","private":false,"language":"PHP","pushed_at":"2011-10-04T04:47:18-07:00","created":"2011-05-12T12:18:23-07:00","forks":4,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"ozipi","score":2.3760302,"pushed":"2012-01-08T14:10:07-08:00","description":"Github v3 Api Javascript library","watchers":3,"has_wiki":true,"followers":3,"username":"ozipi","fork":false,"size":141,"open_issues":0,"created_at":"2011-12-26T14:00:46-08:00","name":"github.js","url":"https://github.com/ozipi/github.js","private":false,"language":"JavaScript","pushed_at":"2012-01-08T14:10:07-08:00","created":"2011-12-26T14:00:46-08:00","forks":2,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"diogenes","score":2.3340535,"pushed":"2011-10-17T08:15:23-07:00","description":"A simple Ruby library to access the current GitHub API (v3)","watchers":26,"has_wiki":true,"followers":26,"username":"diogenes","fork":false,"size":112,"open_issues":0,"created_at":"2010-08-25T17:50:01-07:00","name":"hubruby","url":"https://github.com/diogenes/hubruby","private":false,"language":"Ruby","pushed_at":"2011-10-17T08:15:23-07:00","created":"2010-08-25T17:50:01-07:00","forks":8,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"rubik","score":2.3227022,"pushed":"2011-06-15T00:58:19-07:00","description":"Python wrapper for Github API v3","watchers":2,"has_wiki":true,"followers":2,"username":"rubik","fork":false,"size":96,"open_issues":0,"created_at":"2011-06-15T00:51:00-07:00","name":"github.py","url":"https://github.com/rubik/github.py","private":false,"language":"Python","pushed_at":"2011-06-15T00:58:19-07:00","created":"2011-06-15T00:51:00-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"ji","score":2.270369,"pushed":"2012-03-07T10:29:38-08:00","description":"Github widgets for the github v3 API.","watchers":1,"has_wiki":true,"followers":1,"username":"ji","fork":false,"size":224,"open_issues":0,"created_at":"2012-02-14T06:15:34-08:00","name":"github_widgets","url":"https://github.com/ji/github_widgets","private":false,"language":"Ruby","pushed_at":"2012-03-07T10:29:38-08:00","created":"2012-02-14T06:15:34-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"mixu","score":2.2693741,"pushed":"2011-08-16T09:44:41-07:00","description":"Github API v3 JS client","watchers":1,"has_wiki":true,"followers":1,"username":"mixu","fork":false,"size":96,"open_issues":0,"created_at":"2011-08-16T09:17:47-07:00","name":"github.js","url":"https://github.com/mixu/github.js","private":false,"language":"JavaScript","pushed_at":"2011-08-16T09:44:41-07:00","created":"2011-08-16T09:17:47-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"owner":"zendflex","score":2.2693741,"pushed":"2011-12-23T10:00:20-08:00","description":"Php lib for github api v3","watchers":1,"has_wiki":true,"followers":1,"organization":"zendflex","username":"zendflex","fork":false,"size":112,"open_issues":0,"created_at":"2011-12-23T03:57:39-08:00","name":"zendflex-github-lib","url":"https://github.com/zendflex/zendflex-github-lib","private":false,"language":"PHP","pushed_at":"2011-12-23T10:00:20-08:00","created":"2011-12-23T03:57:39-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"devjones","score":2.2693741,"pushed":"2012-02-02T15:15:52-08:00","description":"draft python wrapper for Github API v3","watchers":1,"has_wiki":true,"followers":1,"username":"devjones","fork":false,"size":88,"open_issues":0,"created_at":"2012-02-02T15:15:01-08:00","name":"py_github3","url":"https://github.com/devjones/py_github3","private":false,"language":"Python","pushed_at":"2012-02-02T15:15:52-08:00","created":"2012-02-02T15:15:01-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"mtutty","score":2.1254582,"pushed":"2012-01-18T13:24:44-08:00","description":"Allows bulk import and export of issues via Github API V3","watchers":2,"has_wiki":true,"followers":2,"username":"mtutty","fork":false,"size":4472,"open_issues":1,"created_at":"2012-01-01T21:15:53-08:00","name":"GithubIssueSync","url":"https://github.com/mtutty/GithubIssueSync","private":false,"language":"C#","pushed_at":"2012-01-18T13:24:44-08:00","created":"2012-01-01T21:15:53-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"Wolfy87","score":2.0348701,"pushed":"2012-01-23T06:38:19-08:00","description":"Frontend JavaScript library for interacting with the GitHub API v3","watchers":4,"has_wiki":true,"followers":4,"username":"Wolfy87","fork":false,"size":228,"open_issues":0,"created_at":"2012-01-15T04:51:05-08:00","name":"github.js","url":"https://github.com/Wolfy87/github.js","private":false,"language":"JavaScript","pushed_at":"2012-01-23T06:38:19-08:00","created":"2012-01-15T04:51:05-08:00","forks":2,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"http://rdoc.info/github/jhelwig/octocat_herder/master/frames","owner":"jhelwig","score":1.9843266,"pushed":"2012-05-23T13:17:32-07:00","description":"Ruby interface to the v3 GitHub API","watchers":15,"has_wiki":false,"followers":15,"username":"jhelwig","fork":false,"size":132,"open_issues":1,"created_at":"2011-07-16T15:32:34-07:00","name":"octocat_herder","url":"https://github.com/jhelwig/octocat_herder","private":false,"language":"Ruby","pushed_at":"2012-05-23T13:17:32-07:00","created":"2011-07-16T15:32:34-07:00","forks":4,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"bitprophet","score":1.981542,"pushed":"2011-08-18T17:19:18-07:00","description":"Port (Fabric's) Redmine tickets to (Fabric's) Github Issues v2 / API v3","watchers":3,"has_wiki":true,"followers":3,"username":"bitprophet","fork":false,"size":128,"open_issues":0,"created_at":"2011-07-12T23:06:31-07:00","name":"redmine2github","url":"https://github.com/bitprophet/redmine2github","private":false,"language":"Ruby","pushed_at":"2011-08-18T17:19:18-07:00","created":"2011-07-12T23:06:31-07:00","forks":2,"has_issues":true},{"type":"repo","has_downloads":true,"owner":"joeworkman","score":1.981542,"pushed":"2012-02-09T10:20:36-08:00","description":"PHP Library that makes using OAuth with the GitHUB v3API a piece of cake","watchers":3,"has_wiki":true,"followers":3,"username":"joeworkman","fork":false,"size":132,"open_issues":0,"created_at":"2011-08-08T23:02:37-07:00","name":"github_oauth","url":"https://github.com/joeworkman/github_oauth","private":false,"language":"PHP","pushed_at":"2012-02-09T10:20:36-08:00","created":"2011-08-08T23:02:37-07:00","forks":2,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"thiagolocatelli","score":1.9282141,"pushed":"2011-09-27T07:53:33-07:00","description":"Library and example project on how to connect to GitHub OAuth (v3) API","watchers":2,"has_wiki":true,"followers":2,"username":"thiagolocatelli","fork":false,"size":108,"open_issues":0,"created_at":"2011-09-27T07:41:01-07:00","name":"android-github-oauth","url":"https://github.com/thiagolocatelli/android-github-oauth","private":false,"language":"Java","pushed_at":"2011-09-27T07:53:33-07:00","created":"2011-09-27T07:41:01-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":false,"homepage":"https://github.com/erikcharlebois/git-hub","owner":"erikcharlebois","score":1.9282141,"pushed":"2012-05-17T21:05:25-07:00","description":"Command line extension to git for working with GitHub v3 API.","watchers":2,"has_wiki":false,"followers":2,"username":"erikcharlebois","fork":false,"size":96,"open_issues":1,"created_at":"2012-05-17T19:22:24-07:00","name":"git-hub","url":"https://github.com/erikcharlebois/git-hub","private":false,"language":"Ruby","pushed_at":"2012-05-17T21:05:25-07:00","created":"2012-05-17T19:22:24-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"baz","score":1.874886,"pushed":"2011-05-12T19:13:02-07:00","description":"GitHub Issues API v3 Node.js module","watchers":1,"has_wiki":true,"followers":1,"username":"baz","fork":false,"size":124,"open_issues":0,"created_at":"2011-05-12T19:11:45-07:00","name":"node-github-issues","url":"https://github.com/baz/node-github-issues","private":false,"language":"JavaScript","pushed_at":"2011-05-12T19:13:02-07:00","created":"2011-05-12T19:11:45-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"http://wiki.developer.factual.com/","owner":"Factual","score":1.6202857,"pushed":"2012-02-23T20:03:15-08:00","description":"Ruby gem to access Factual API v2. Since the Factual API v2 will be deprecated in Q2 2012, and we are moving forward to API v3, there is new ruby gem for V3 accessing, which is at https://github.com/Factual/factual-ruby-driver.","watchers":15,"has_wiki":true,"followers":15,"organization":"Factual","username":"Factual","fork":false,"size":112,"open_issues":0,"created_at":"2010-10-28T19:31:52-07:00","name":"ruby-factual","url":"https://github.com/Factual/ruby-factual","private":false,"language":"Ruby","pushed_at":"2012-02-23T20:03:15-08:00","created":"2010-10-28T19:31:52-07:00","forks":5,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"testpilot.me","owner":"testpilot","score":1.5279438,"pushed":"2011-11-29T00:14:53-08:00","description":"Github v3 API wrapper gem","watchers":2,"has_wiki":true,"followers":2,"organization":"testpilot","username":"testpilot","fork":false,"size":264,"open_issues":0,"created_at":"2011-10-03T17:46:03-07:00","name":"octoplex","url":"https://github.com/testpilot/octoplex","private":false,"language":"Ruby","pushed_at":"2011-11-29T00:14:53-08:00","created":"2011-10-03T17:46:03-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"woloski","score":1.5279438,"pushed":"2012-03-01T18:36:35-08:00","description":"testing repo for github api v3","watchers":2,"has_wiki":true,"followers":2,"username":"woloski","fork":false,"size":132,"open_issues":0,"created_at":"2012-02-29T15:46:40-08:00","name":"githubapi-testrepo","url":"https://github.com/woloski/githubapi-testrepo","language":"","private":false,"pushed_at":"2012-03-01T18:36:35-08:00","created":"2012-02-29T15:46:40-08:00","forks":2,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"http://www.gitpilot.com","owner":"gitpilot","score":1.5043745,"pushed":"2011-07-21T12:18:26-07:00","description":"Light weight Ruby wrapper for Github v3 api","watchers":7,"has_wiki":true,"followers":7,"organization":"gitpilot","username":"gitpilot","fork":false,"size":112,"open_issues":0,"created_at":"2011-07-18T11:55:00-07:00","name":"fuselage","url":"https://github.com/gitpilot/fuselage","private":false,"language":"Ruby","pushed_at":"2011-07-21T12:18:26-07:00","created":"2011-07-18T11:55:00-07:00","forks":2,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"wanthony","score":1.4746159,"pushed":"2011-07-14T19:57:37-07:00","description":"A ruby client for the github v3 api","watchers":1,"has_wiki":true,"followers":1,"username":"wanthony","fork":false,"size":96,"open_issues":0,"created_at":"2011-07-14T19:46:55-07:00","name":"octo_rest","url":"https://github.com/wanthony/octo_rest","private":false,"language":"Ruby","pushed_at":"2011-07-14T19:57:37-07:00","created":"2011-07-14T19:46:55-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"markharmon","score":1.4746159,"pushed":null,"description":"GitHub Api V3 for .Net","watchers":1,"has_wiki":true,"followers":1,"username":"markharmon","fork":false,"size":0,"open_issues":0,"created_at":"2011-10-06T03:41:32-07:00","name":"GitHub.Net","url":"https://github.com/markharmon/GitHub.Net","language":"","private":false,"created":"2011-10-06T03:41:32-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"sbellity","score":1.4510466,"pushed":"2011-07-21T03:21:10-07:00","description":"Ruby wrapper for GitHub's v3 API","watchers":5,"has_wiki":true,"followers":5,"username":"sbellity","fork":false,"size":112,"open_issues":4,"created_at":"2011-06-25T16:25:57-07:00","name":"githu3","url":"https://github.com/sbellity/githu3","private":false,"language":"Ruby","pushed_at":"2011-07-21T03:21:10-07:00","created":"2011-06-25T16:25:57-07:00","forks":2,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"francescomari","score":1.3977185,"pushed":"2012-04-10T14:08:39-07:00","description":"A simple Python wrapper around the Github API v3","watchers":4,"has_wiki":false,"followers":4,"username":"francescomari","fork":false,"size":148,"open_issues":0,"created_at":"2011-09-13T03:01:53-07:00","name":"pythub","url":"https://github.com/francescomari/pythub","private":false,"language":"Python","pushed_at":"2012-04-10T14:08:39-07:00","created":"2011-09-13T03:01:53-07:00","forks":2,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"smoak","score":1.2910626,"pushed":"2011-12-22T00:20:57-08:00","description":"Python Client for the GitHub v3 API ","watchers":2,"has_wiki":true,"followers":2,"username":"smoak","fork":false,"size":92,"open_issues":0,"created_at":"2011-12-22T00:01:31-08:00","name":"pyhub","url":"https://github.com/smoak/pyhub","private":false,"language":"Python","pushed_at":"2011-12-22T00:20:57-08:00","created":"2011-12-22T00:01:31-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"csphere","score":1.2910626,"pushed":"2012-04-02T15:08:54-07:00","description":"Ruby Gem - An intuitive wrapper for the Github Api v3.","watchers":2,"has_wiki":true,"followers":2,"username":"csphere","fork":false,"size":264,"open_issues":0,"created_at":"2012-03-08T12:07:25-08:00","name":"rubhub","url":"https://github.com/csphere/rubhub","private":false,"language":"Ruby","pushed_at":"2012-04-02T15:08:54-07:00","created":"2012-03-08T12:07:25-08:00","forks":2,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"http://jeffremer.com","owner":"jeffremer","score":1.2377346,"pushed":"2011-04-30T19:43:37-07:00","description":"A REST client for CRUDing Github Gists via the v3 API.","watchers":1,"has_wiki":true,"followers":1,"username":"jeffremer","fork":false,"size":848,"open_issues":0,"created_at":"2011-04-29T15:16:32-07:00","name":"gist-client","url":"https://github.com/jeffremer/gist-client","private":false,"language":"Ruby","pushed_at":"2011-04-30T19:43:37-07:00","created":"2011-04-29T15:16:32-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"kaiwu","score":1.2377346,"pushed":"2011-05-23T19:51:51-07:00","description":"github v3 api wrapper in objective-c","watchers":1,"has_wiki":true,"followers":1,"username":"kaiwu","fork":false,"size":108,"open_issues":0,"created_at":"2011-05-23T19:31:04-07:00","name":"githubv3objc","url":"https://github.com/kaiwu/githubv3objc","language":"","private":false,"pushed_at":"2011-05-23T19:51:51-07:00","created":"2011-05-23T19:31:04-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"mrtazz","score":1.2377346,"pushed":"2011-07-28T15:58:01-07:00","description":"[WIP] node.js wrapper for the github v3 API","watchers":1,"has_wiki":true,"followers":1,"username":"mrtazz","fork":false,"size":100,"open_issues":0,"created_at":"2011-07-28T15:57:34-07:00","name":"octonode","url":"https://github.com/mrtazz/octonode","language":"","private":false,"pushed_at":"2011-07-28T15:58:01-07:00","created":"2011-07-28T15:57:34-07:00","forks":1,"has_issues":true,"master_branch":"develop"},{"type":"repo","has_downloads":true,"homepage":"","owner":"mdellanoce","score":1.2377346,"pushed":"2012-01-17T18:24:42-08:00","description":"Yet another ruby binding for GitHub's V3 API","watchers":1,"has_wiki":true,"followers":1,"username":"mdellanoce","fork":false,"size":268,"open_issues":0,"created_at":"2011-11-13T12:27:30-08:00","name":"gittycat","url":"https://github.com/mdellanoce/gittycat","private":false,"language":"Ruby","pushed_at":"2012-01-17T18:24:42-08:00","created":"2011-11-13T12:27:30-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"owner":"Strech","score":1.2377346,"pushed":"2012-04-30T09:48:02-07:00","description":"This is a simple rails app for github api v3 oauth2","watchers":1,"has_wiki":true,"followers":1,"username":"Strech","fork":false,"size":236,"open_issues":0,"created_at":"2012-04-30T07:59:23-07:00","name":"abak_oauth","url":"https://github.com/Strech/abak_oauth","private":false,"language":"Ruby","pushed_at":"2012-04-30T09:48:02-07:00","created":"2012-04-30T07:59:23-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"owner":"badsharkco","score":1.2377346,"pushed":"2012-06-03T13:58:55-07:00","description":"The simplest way to interact with the GitHub API v3, in PHP.","watchers":1,"has_wiki":true,"followers":1,"username":"badsharkco","fork":false,"size":124,"open_issues":0,"created_at":"2012-06-03T12:59:40-07:00","name":"simplev3-php","url":"https://github.com/badsharkco/simplev3-php","private":false,"language":"PHP","pushed_at":"2012-06-03T13:58:55-07:00","created":"2012-06-03T12:59:40-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"owner":"cheeyeo","score":1.2377346,"pushed":"2012-06-07T10:39:31-07:00","description":"Testing snipplets app link to github through api v3","watchers":1,"has_wiki":true,"followers":1,"username":"cheeyeo","fork":false,"size":0,"open_issues":0,"created_at":"2012-06-07T08:51:53-07:00","name":"snipplets-test","url":"https://github.com/cheeyeo/snipplets-test","language":"","private":false,"pushed_at":"2012-06-07T10:39:31-07:00","created":"2012-06-07T08:51:53-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"owner":"hahuang65","score":1.2377346,"pushed":"2012-06-14T17:11:06-07:00","description":"GitHub V3 API Wrapper for Ruby","watchers":1,"has_wiki":true,"followers":1,"username":"hahuang65","fork":false,"size":436,"open_issues":0,"created_at":"2012-06-05T00:39:13-07:00","name":"Octobot","url":"https://github.com/hahuang65/Octobot","private":false,"language":"Ruby","pushed_at":"2012-06-14T17:11:06-07:00","created":"2012-06-05T00:39:13-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"owner":"smencer","score":1.2377346,"pushed":"2012-06-25T19:51:13-07:00","description":"A C# wrapper for the GitHub API (v3)","watchers":1,"has_wiki":true,"followers":1,"username":"smencer","fork":false,"size":396,"open_issues":0,"created_at":"2012-06-14T14:31:40-07:00","name":"CSharpGitHubAPIWrapper","url":"https://github.com/smencer/CSharpGitHubAPIWrapper","private":false,"language":"C#","pushed_at":"2012-06-25T19:51:13-07:00","created":"2012-06-14T14:31:40-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"http://github.com/meritt/node-gisty","owner":"meritt","score":1.1075093,"pushed":"2012-04-22T13:04:49-07:00","description":"A Node.JS wrapper for GitHub gist API v3. ","watchers":3,"has_wiki":false,"followers":3,"username":"meritt","fork":false,"size":112,"open_issues":0,"created_at":"2011-08-12T15:20:29-07:00","name":"node-gisty","url":"https://github.com/meritt/node-gisty","private":false,"language":"CoffeeScript","pushed_at":"2012-04-22T13:04:49-07:00","created":"2011-08-12T15:20:29-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"owner":"ritratt","score":1.0671898,"pushed":"2012-06-13T13:37:31-07:00","description":"A simple python script that uses PyGithub for accessing user information through Github API v3","watchers":1,"has_wiki":true,"followers":1,"username":"ritratt","fork":false,"size":92,"open_issues":0,"created_at":"2012-06-13T13:26:46-07:00","name":"gituserinfo","url":"https://github.com/ritratt/gituserinfo","language":"Python","private":false,"pushed_at":"2012-06-13T13:37:31-07:00","created":"2012-06-13T13:26:46-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"wanthony","score":1.0008532,"pushed":null,"description":"A Node.js / CoffeeScript GitHub API v3 Implementation","watchers":1,"has_wiki":true,"followers":1,"username":"wanthony","fork":false,"size":0,"open_issues":0,"created_at":"2011-09-08T18:44:48-07:00","name":"coffeehub","url":"https://github.com/wanthony/coffeehub","language":"","private":false,"created":"2011-09-08T18:44:48-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"plu","score":1.0008532,"pushed":"2011-11-17T23:41:46-08:00","description":"iOS App to access the Github v3 API via RestKit","watchers":1,"has_wiki":true,"followers":1,"username":"plu","fork":false,"size":348,"open_issues":0,"created_at":"2011-11-17T23:39:13-08:00","name":"Octotco","url":"https://github.com/plu/Octotco","private":false,"language":"Objective-C","pushed_at":"2011-11-17T23:41:46-08:00","created":"2011-11-17T23:39:13-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"roopeshvaddepally","score":1.0008532,"pushed":"2012-02-12T15:14:35-08:00","description":"python github wrapper for api v3. make it more like iorayne/tentacles","watchers":1,"has_wiki":true,"followers":1,"username":"roopeshvaddepally","fork":false,"size":108,"open_issues":0,"created_at":"2012-02-11T22:46:07-08:00","name":"pygh3","url":"https://github.com/roopeshvaddepally/pygh3","private":false,"language":"Python","pushed_at":"2012-02-12T15:14:35-08:00","created":"2012-02-11T22:46:07-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"exallium","score":1.0008532,"pushed":"2012-03-02T15:30:29-08:00","description":"Complete Rewrite of GitIssues, including new UI and utilizing Github's V3 API Java Library","watchers":1,"has_wiki":true,"followers":1,"username":"exallium","fork":false,"size":1896,"open_issues":2,"created_at":"2011-11-02T09:35:46-07:00","name":"gitIssues2","url":"https://github.com/exallium/gitIssues2","private":false,"language":"Java","pushed_at":"2012-03-02T15:30:29-08:00","created":"2011-11-02T09:35:46-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"inkel","score":1.0008532,"pushed":"2012-03-12T05:38:07-07:00","description":"Proof of concept of a Cuba application with OmniAuth and Octokit to access the GitHub v3 API","watchers":1,"has_wiki":true,"followers":1,"username":"inkel","fork":false,"size":380,"open_issues":3,"created_at":"2012-03-09T05:24:54-08:00","name":"cuba-omniauth-octokit","url":"https://github.com/inkel/cuba-omniauth-octokit","private":false,"language":"JavaScript","pushed_at":"2012-03-12T05:38:07-07:00","created":"2012-03-09T05:24:54-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"LukasKnuth","score":1.0008532,"pushed":"2012-02-17T15:31:14-08:00","description":"This project aims to create a JavaScript library for the GitHub API v3","watchers":1,"has_wiki":true,"followers":1,"username":"LukasKnuth","fork":false,"size":124,"open_issues":0,"created_at":"2012-02-17T09:18:01-08:00","name":"jsg-hub","url":"https://github.com/LukasKnuth/jsg-hub","private":false,"language":"JavaScript","pushed_at":"2012-02-17T15:31:14-08:00","created":"2012-02-17T09:18:01-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"lrvick","score":0.9404571,"pushed":"2012-01-01T17:24:43-08:00","description":"jQuery driven stack to render a tree-driven explorer of all your Github code via the Github v3 API","watchers":1,"has_wiki":true,"followers":1,"username":"lrvick","fork":false,"size":96,"open_issues":0,"created_at":"2012-01-01T17:23:26-08:00","name":"jquery-githubnav","url":"https://github.com/lrvick/jquery-githubnav","language":"","private":false,"pushed_at":"2012-01-01T17:24:43-08:00","created":"2012-01-01T17:23:26-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"mklabs","score":0.9357406,"pushed":"2011-07-31T08:34:55-07:00","description":"GitHub Api v3 library. Ideally, it should work in node via http request, and in browsers using jsonp.","watchers":2,"has_wiki":true,"followers":2,"username":"mklabs","fork":false,"size":176,"open_issues":0,"created_at":"2011-07-31T03:41:16-07:00","name":"ghv3","url":"https://github.com/mklabs/ghv3","private":false,"language":"JavaScript","pushed_at":"2011-07-31T08:34:55-07:00","created":"2011-07-31T03:41:16-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"http://mklabs.github.com/gh-issues-widget/","owner":"mklabs","score":0.8519007,"pushed":"2012-03-17T11:13:30-07:00","description":"A bit of GitHub API v3, GitHub Flavored Markdown, a soupcon of data-* attributes and you get github issue comment system. Something like that.","watchers":1,"has_wiki":true,"followers":1,"username":"mklabs","fork":false,"size":224,"open_issues":2,"created_at":"2012-03-17T11:12:39-07:00","name":"gh-issues-widget","url":"https://github.com/mklabs/gh-issues-widget","private":false,"language":"JavaScript","pushed_at":"2012-03-17T11:13:30-07:00","created":"2012-03-17T11:12:39-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"jaikoo","score":0.80201185,"pushed":"2012-01-20T05:24:12-08:00","description":"Work in progress Github v3 API wrapper with association chaining and semi-concrete classes (class are concrete but contents are flexible) to allow for flexible changes in the API.","watchers":1,"has_wiki":true,"followers":1,"username":"jaikoo","fork":false,"size":148,"open_issues":0,"created_at":"2012-01-12T04:28:02-08:00","name":"OctoCow","url":"https://github.com/jaikoo/OctoCow","private":false,"language":"Ruby","pushed_at":"2012-01-20T05:24:12-08:00","created":"2012-01-12T04:28:02-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"misutowolf","score":0.7639719,"pushed":"2012-04-24T07:30:51-07:00","description":"js-githubv3 -- A JavaScript (jQuery) library for the JSON-driven GitHub API v3","watchers":1,"has_wiki":true,"followers":1,"username":"misutowolf","fork":false,"size":184,"open_issues":0,"created_at":"2012-04-23T19:23:24-07:00","name":"js-githubv3","url":"https://github.com/misutowolf/js-githubv3","language":"","private":false,"pushed_at":"2012-04-24T07:30:51-07:00","created":"2012-04-23T19:23:24-07:00","forks":1,"has_issues":true}]} + +GET /repos/pengwynn/octokit {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('content-length', '1132'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4994'), ('server', 'nginx/1.0.13'), ('last-modified', 'Fri, 29 Jun 2012 01:38:40 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"0653f22c8d089d4154162437b3ce4eaa"'), ('cache-control', 'private, max-age=60'), ('date', 'Fri, 29 Jun 2012 11:37:35 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"has_downloads":true,"mirror_url":null,"homepage":"http://pengwynn.github.com/octokit","owner":{"login":"pengwynn","avatar_url":"https://secure.gravatar.com/avatar/7e19cd5486b5d6dc1ef90e671ba52ae0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/pengwynn","gravatar_id":"7e19cd5486b5d6dc1ef90e671ba52ae0","id":865},"html_url":"https://github.com/pengwynn/octokit","clone_url":"https://github.com/pengwynn/octokit.git","has_wiki":true,"watchers":294,"description":"Simple Ruby wrapper for the GitHub v3 API","ssh_url":"git@github.com:pengwynn/octokit.git","git_url":"git://github.com/pengwynn/octokit.git","full_name":"pengwynn/octokit","open_issues":2,"size":264,"fork":false,"created_at":"2009-12-10T21:41:49Z","name":"octokit","url":"https://api.github.com/repos/pengwynn/octokit","permissions":{"push":false,"pull":true,"admin":false},"language":"Ruby","private":false,"pushed_at":"2012-06-29T01:38:40Z","id":417862,"master_branch":"master","forks":73,"has_issues":true,"svn_url":"https://github.com/pengwynn/octokit","updated_at":"2012-06-29T01:38:40Z"} + diff --git a/test/ReplayData/Github.testLegacySearchReposWithLanguage.txt b/test/ReplayData/Github.testLegacySearchReposWithLanguage.txt new file mode 100644 index 00000000..1a8e19f3 --- /dev/null +++ b/test/ReplayData/Github.testLegacySearchReposWithLanguage.txt @@ -0,0 +1,10 @@ +GET /legacy/repos/search/document?language=Python {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('content-length', '58730'), ('x-ratelimit-remaining', '4997'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"e5b8b7c4009c469b7d50d0ebe243fbcd"'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Fri, 29 Jun 2012 11:37:24 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"repositories":[{"type":"repo","created_at":"2010-05-09T21:46:06-07:00","score":81.79961,"owner":"ipython","followers":834,"open_issues":289,"organization":"ipython","username":"ipython","created":"2010-05-09T21:46:06-07:00","integrate_branch":"master","homepage":"http://ipython.org","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-28T16:29:38-07:00","forks":282,"fork":false,"size":1204,"name":"ipython","url":"https://github.com/ipython/ipython","description":"Official repository for IPython itself. Other repos in the IPython organization contain things like the website, documentation builds, etc.","private":false,"pushed":"2012-06-28T16:29:38-07:00","watchers":834,"has_wiki":false},{"type":"repo","created_at":"2009-11-22T15:28:24-08:00","score":81.39696,"owner":"hmarr","followers":829,"open_issues":72,"username":"hmarr","created":"2009-11-22T15:28:24-08:00","integrate_branch":"dev","homepage":"http://mongoengine.org","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-23T14:24:37-07:00","forks":212,"fork":false,"size":376,"name":"mongoengine","url":"https://github.com/hmarr/mongoengine","description":"A Python Object-Document-Mapper for working with MongoDB","private":false,"pushed":"2012-06-23T14:24:37-07:00","watchers":829,"has_wiki":false},{"type":"repo","created_at":"2011-05-05T11:59:49-07:00","score":38.422153,"owner":"apresta","followers":389,"open_issues":2,"username":"apresta","created":"2011-05-05T11:59:49-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-08-11T05:43:52-07:00","forks":19,"fork":false,"size":140,"name":"tagger","url":"https://github.com/apresta/tagger","description":"A Python module for extracting relevant tags from text documents.","private":false,"pushed":"2011-08-11T05:43:52-07:00","watchers":389,"has_wiki":true},{"type":"repo","created_at":"2010-06-29T00:02:31-07:00","score":25.798784,"owner":"fitzgen","followers":259,"open_issues":13,"username":"fitzgen","created":"2010-06-29T00:02:31-07:00","homepage":"http://fitzgen.github.com/pycco/","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-23T16:07:26-07:00","forks":61,"fork":false,"size":156,"name":"pycco","url":"https://github.com/fitzgen/pycco","description":"Literate-style documentation generator.","private":false,"pushed":"2012-06-23T16:07:26-07:00","watchers":259,"has_wiki":true},{"type":"repo","created_at":"2011-02-03T08:37:15-08:00","score":15.89314,"owner":"rosarior","followers":159,"open_issues":8,"username":"rosarior","created":"2011-02-03T08:37:15-08:00","homepage":"http://www.mayan-edms.com","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-28T14:11:59-07:00","forks":31,"fork":false,"size":204,"name":"mayan","url":"https://github.com/rosarior/mayan","description":"Open source, Django based DMS (document management system) with custom metadata indexing, file serving integration, OCR capabilities, document versioning and electronic signature verification.","private":false,"pushed":"2012-06-28T14:11:59-07:00","watchers":159,"has_wiki":true},{"type":"repo","created_at":"2010-04-05T15:03:29-07:00","score":15.098347,"owner":"doctrine","followers":110,"open_issues":13,"organization":"doctrine","username":"doctrine","created":"2010-04-05T15:03:29-07:00","homepage":"http://www.doctrine-project.org","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-28T06:52:05-07:00","forks":79,"fork":false,"size":224,"name":"orm-documentation","url":"https://github.com/doctrine/orm-documentation","description":"Doctrine documentation","private":false,"pushed":"2012-06-28T06:52:05-07:00","watchers":110,"has_wiki":true},{"type":"repo","created_at":"2010-09-23T02:34:18-07:00","score":15.06705,"owner":"jsfiddle","followers":149,"open_issues":81,"organization":"jsfiddle","username":"jsfiddle","created":"2010-09-23T02:34:18-07:00","homepage":"doc.jsfiddle.net","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-05-31T04:44:25-07:00","forks":36,"fork":false,"size":132,"name":"jsfiddle-docs-alpha","url":"https://github.com/jsfiddle/jsfiddle-docs-alpha","description":"End user documentation for jsFiddle","private":false,"pushed":"2012-05-31T04:44:25-07:00","watchers":149,"has_wiki":true},{"type":"repo","created_at":"2009-01-29T00:22:07-08:00","score":13.821274,"owner":"astraw","followers":138,"open_issues":19,"username":"astraw","created":"2009-01-29T00:22:07-08:00","homepage":"http://pypi.python.org/pypi/stdeb","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2010-07-30T02:08:17-07:00","forks":24,"fork":false,"size":1176,"name":"stdeb","url":"https://github.com/astraw/stdeb","description":"produces Debian source packages from Python packages (see README.rst for full documentation)","private":false,"pushed":"2010-07-30T02:08:17-07:00","watchers":138,"has_wiki":false},{"type":"repo","created_at":"2009-04-01T04:33:13-07:00","score":12.745697,"owner":"jessegrosjean","followers":86,"open_issues":1,"username":"jessegrosjean","created":"2009-04-01T04:33:13-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-11-03T10:06:54-07:00","forks":12,"fork":false,"size":120,"name":"documents.com","url":"https://github.com/jessegrosjean/documents.com","description":"","private":false,"pushed":"2011-11-03T10:06:54-07:00","watchers":86,"has_wiki":true},{"type":"repo","created_at":"2009-02-02T00:34:22-08:00","score":11.184184,"owner":"mattball","followers":111,"open_issues":6,"username":"mattball","created":"2009-02-02T00:34:22-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-10-19T12:45:49-07:00","forks":8,"fork":false,"size":1372,"name":"doxyclean","url":"https://github.com/mattball/doxyclean","description":"A script to convert Doxygen output to resemble Apple's AppKit documentation","private":false,"pushed":"2011-10-19T12:45:49-07:00","watchers":111,"has_wiki":true},{"type":"repo","created_at":"2010-02-26T05:48:00-08:00","score":9.816803,"owner":"peterbe","followers":97,"open_issues":2,"username":"peterbe","created":"2010-02-26T05:48:00-08:00","integrate_branch":"master","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-09-01T07:58:42-07:00","forks":10,"fork":false,"size":488,"name":"django-mongokit","url":"https://github.com/peterbe/django-mongokit","description":"Bridging Django to MongoDB with the MongoKit ODM (Object Document Mapper)","private":false,"pushed":"2011-09-01T07:58:42-07:00","watchers":97,"has_wiki":true},{"type":"repo","created_at":"2011-09-23T13:57:35-07:00","score":9.304519,"owner":"mongodb","followers":90,"open_issues":0,"organization":"mongodb","username":"mongodb","created":"2011-09-23T13:57:35-07:00","homepage":"http://docs.mongodb.org","has_issues":false,"has_downloads":true,"language":"Python","pushed_at":"2012-06-28T13:04:39-07:00","forks":58,"fork":false,"size":676,"name":"docs","url":"https://github.com/mongodb/docs","description":"The MongoDB Documentation Project Source.","private":false,"pushed":"2012-06-28T13:04:39-07:00","watchers":90,"has_wiki":false},{"type":"repo","created_at":"2012-04-18T12:35:38-07:00","score":9.285026,"owner":"enStratus","followers":6,"open_issues":1,"organization":"enStratus","username":"enStratus","created":"2012-04-18T12:35:38-07:00","homepage":"http://docs.enstratus.com","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-12T20:17:53-07:00","forks":2,"fork":false,"size":376,"name":"documentation","url":"https://github.com/enStratus/documentation","description":"enStratus Documentation","private":false,"pushed":"2012-06-12T20:17:53-07:00","watchers":6,"has_wiki":true},{"type":"repo","created_at":"2011-12-01T09:58:56-08:00","score":9.283312,"owner":"Sylius","followers":6,"open_issues":0,"organization":"Sylius","username":"Sylius","created":"2011-12-01T09:58:56-08:00","homepage":"Sylius.org","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-05-13T02:36:33-07:00","forks":2,"fork":false,"size":136,"name":"Documentation","url":"https://github.com/Sylius/Documentation","description":"Official documentation repository, hosted on readthedocs.org.","private":false,"pushed":"2012-05-13T02:36:33-07:00","watchers":6,"has_wiki":false},{"type":"repo","created_at":"2011-05-05T09:22:01-07:00","score":8.992015,"owner":"deskmetrics","followers":3,"open_issues":0,"organization":"deskmetrics","username":"deskmetrics","created":"2011-05-05T09:22:01-07:00","homepage":"http://docs.deskmetrics.com/","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-08-08T08:16:56-07:00","forks":3,"fork":false,"size":254,"name":"Documentation","url":"https://github.com/deskmetrics/Documentation","description":"DeskMetrics Documentation","private":false,"pushed":"2011-08-08T08:16:56-07:00","watchers":3,"has_wiki":true},{"type":"repo","created_at":"2011-03-24T08:18:23-07:00","score":8.992015,"owner":"pika","followers":3,"open_issues":0,"organization":"pika","username":"pika","created":"2011-03-24T08:18:23-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-03-28T22:15:05-07:00","forks":1,"fork":false,"size":344,"name":"documentation","url":"https://github.com/pika/documentation","description":"Pika Sphinx documentation","private":false,"pushed":"2011-03-28T22:15:05-07:00","watchers":3,"has_wiki":true},{"type":"repo","created_at":"2008-12-16T02:58:36-08:00","score":8.893489,"owner":"wodzupl20","followers":2,"open_issues":0,"username":"wodzupl20","created":"2008-12-16T02:58:36-08:00","homepage":"http://www.xmpp.org/","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2008-12-02T09:11:15-08:00","forks":4,"fork":false,"size":26624,"name":"documentation","url":"https://github.com/wodzupl20/documentation","description":"Mirror of the main Documentation Subversion repository","private":false,"pushed":"2008-12-02T09:11:15-08:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2011-07-03T13:30:47-07:00","score":8.887489,"owner":"amotl","followers":2,"open_issues":0,"username":"amotl","created":"2011-07-03T13:30:47-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-03-19T03:09:46-07:00","forks":1,"fork":false,"size":176,"name":"documents","url":"https://github.com/amotl/documents","description":"This and that. Non-blocking, asynchronous I/O; Gevent; Python","private":false,"pushed":"2012-03-19T03:09:46-07:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2011-11-20T11:56:52-08:00","score":8.798389,"owner":"zipcodeman","followers":1,"open_issues":0,"username":"zipcodeman","created":"2011-11-20T11:56:52-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-05-01T19:54:17-07:00","forks":1,"fork":false,"size":188,"name":"Documents","url":"https://github.com/zipcodeman/Documents","description":"My Documents","private":false,"pushed":"2012-05-01T19:54:17-07:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2011-05-26T00:58:15-07:00","score":8.798389,"owner":"sposs","followers":1,"open_issues":0,"username":"sposs","created":"2011-05-26T00:58:15-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-07T06:38:33-07:00","forks":1,"fork":false,"size":74696,"name":"Documents","url":"https://github.com/sposs/Documents","description":"My documents","private":false,"pushed":"2012-06-07T06:38:33-07:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2011-11-07T07:12:05-08:00","score":8.796675,"owner":"TouchLay","followers":1,"open_issues":0,"organization":"TouchLay","username":"TouchLay","created":"2011-11-07T07:12:05-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-11-19T06:08:01-08:00","forks":1,"fork":false,"size":460,"name":"Documentation","url":"https://github.com/TouchLay/Documentation","description":"TouchLay's Documentations","private":false,"pushed":"2011-11-19T06:08:01-08:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2012-02-13T15:08:30-08:00","score":8.796675,"owner":"a-sk","followers":1,"open_issues":0,"username":"a-sk","created":"2012-02-13T15:08:30-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-02-18T06:27:45-08:00","forks":1,"fork":false,"size":276,"name":"Documenter","url":"https://github.com/a-sk/Documenter","description":"Sublimetext documentation writing plugin","private":false,"pushed":"2012-02-18T06:27:45-08:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2012-01-31T03:06:00-08:00","score":8.795818,"owner":"geomatico","followers":1,"open_issues":0,"organization":"geomatico","username":"geomatico","created":"2012-01-31T03:06:00-08:00","homepage":"http://geomati.co","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-04-11T08:26:33-07:00","forks":1,"fork":false,"size":1992,"name":"documentation","url":"https://github.com/geomatico/documentation","description":"Geomati.co developer documentation","private":false,"pushed":"2012-04-11T08:26:33-07:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2009-09-19T23:56:24-07:00","score":8.794961,"owner":"aliter","followers":1,"open_issues":0,"organization":"aliter","username":"aliter","created":"2009-09-19T23:56:24-07:00","homepage":"http://projectaliter.com/documentation/","has_issues":false,"has_downloads":false,"language":"Python","pushed_at":"2011-06-05T01:30:17-07:00","forks":1,"fork":false,"size":352,"name":"documentation","url":"https://github.com/aliter/documentation","description":"Aliter's documentation on GitHub Pages.","private":false,"pushed":"2011-06-05T01:30:17-07:00","watchers":1,"has_wiki":false},{"type":"repo","created_at":"2012-01-02T06:11:35-08:00","score":8.789819,"owner":"plaguemorin","followers":1,"open_issues":0,"username":"plaguemorin","created":"2012-01-02T06:11:35-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-01-03T05:23:05-08:00","forks":1,"fork":false,"size":188,"name":"Documents","url":"https://github.com/plaguemorin/Documents","description":"","private":false,"pushed":"2012-01-03T05:23:05-08:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2011-03-10T04:52:36-08:00","score":8.789819,"owner":"masasuzu","followers":1,"open_issues":0,"username":"masasuzu","created":"2011-03-10T04:52:36-08:00","homepage":"http://masasuzu.github.com/document/","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-03T04:17:47-07:00","forks":1,"fork":false,"size":3056,"name":"document","url":"https://github.com/masasuzu/document","description":"いろいろな資料","private":false,"pushed":"2012-06-03T04:17:47-07:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2011-05-10T09:09:22-07:00","score":8.789819,"owner":"pborky","followers":1,"open_issues":0,"username":"pborky","created":"2011-05-10T09:09:22-07:00","homepage":"http://www.pborky.sk/","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-06T12:59:26-07:00","forks":1,"fork":false,"size":4868,"name":"documents","url":"https://github.com/pborky/documents","description":"","private":false,"pushed":"2012-06-06T12:59:26-07:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2010-12-25T21:21:21-08:00","score":8.694565,"owner":"Pylons","followers":82,"open_issues":0,"organization":"Pylons","username":"Pylons","created":"2010-12-25T21:21:21-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-17T00:14:17-07:00","forks":36,"fork":false,"size":216,"name":"pyramid_cookbook","url":"https://github.com/Pylons/pyramid_cookbook","description":"Pyramid cookbook recipes (documentation)","private":false,"pushed":"2012-06-17T00:14:17-07:00","watchers":82,"has_wiki":true},{"type":"repo","created_at":"2011-04-11T10:22:04-07:00","score":8.449423,"owner":"dagwieers","followers":83,"open_issues":18,"username":"dagwieers","created":"2011-04-11T10:22:04-07:00","homepage":"http://dag.wieers.com/home-made/unoconv/","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-05-22T06:45:00-07:00","forks":21,"fork":false,"size":474,"name":"unoconv","url":"https://github.com/dagwieers/unoconv","description":"Universal Office Converter - Convert between any document format supported by LibreOffice/OpenOffice.","private":false,"pushed":"2012-05-22T06:45:00-07:00","watchers":83,"has_wiki":true},{"type":"repo","created_at":"2010-05-20T13:20:33-07:00","score":7.965925,"owner":"doctrine","followers":37,"open_issues":2,"organization":"doctrine","username":"doctrine","created":"2010-05-20T13:20:33-07:00","homepage":"http://www.doctrine-project.org/projects/mongodb_odm","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-27T11:18:06-07:00","forks":27,"fork":false,"size":188,"name":"mongodb-odm-documentation","url":"https://github.com/doctrine/mongodb-odm-documentation","description":"Doctrine MongoDB Object Document Mapper (ODM) Documentation","private":false,"pushed":"2012-06-27T11:18:06-07:00","watchers":37,"has_wiki":true},{"type":"repo","created_at":"2011-07-18T13:29:40-07:00","score":7.961073,"owner":"wallix","followers":78,"open_issues":0,"organization":"wallix","username":"wallix","created":"2011-07-18T13:29:40-07:00","homepage":"http://www.wallix.org/pylogsparser-project/","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-13T09:15:09-07:00","forks":7,"fork":false,"size":160,"name":"pylogsparser","url":"https://github.com/wallix/pylogsparser","description":"Library for Log parsing in Python - get the documentation at http://wallix.github.com/pylogsparser/","private":false,"pushed":"2012-06-13T09:15:09-07:00","watchers":78,"has_wiki":true},{"type":"repo","created_at":"2010-07-06T11:28:10-07:00","score":7.4766574,"owner":"cguardia","followers":32,"open_issues":0,"username":"cguardia","created":"2010-07-06T11:28:10-07:00","homepage":"http://zodbdocs.blogspot.com","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-09-26T17:05:09-07:00","forks":7,"fork":false,"size":252,"name":"ZODB-Documentation","url":"https://github.com/cguardia/ZODB-Documentation","description":"Community supported documentation for the Z Object Data Base","private":false,"pushed":"2011-09-26T17:05:09-07:00","watchers":32,"has_wiki":true},{"type":"repo","created_at":"2011-05-19T22:57:28-07:00","score":7.4487886,"owner":"bigjason","followers":72,"open_issues":3,"username":"bigjason","created":"2011-05-19T22:57:28-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-02-25T00:39:21-08:00","forks":2,"fork":false,"size":116,"name":"datatree","url":"https://github.com/bigjason/datatree","description":"Pythonic, low noise structured document authoring","private":false,"pushed":"2012-02-25T00:39:21-08:00","watchers":72,"has_wiki":true},{"type":"repo","created_at":"2012-04-17T12:39:42-07:00","score":7.4487886,"owner":"jokull","followers":71,"open_issues":0,"username":"jokull","created":"2012-04-17T12:39:42-07:00","homepage":"http://calepin.co/","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-26T07:12:28-07:00","forks":10,"fork":false,"size":124,"name":"calepin","url":"https://github.com/jokull/calepin","description":"Publish your markdown documents with the Dropbox API","private":false,"pushed":"2012-06-26T07:12:28-07:00","watchers":71,"has_wiki":true},{"type":"repo","created_at":"2009-09-05T08:58:24-07:00","score":6.732916,"owner":"jessegrosjean","followers":30,"open_issues":0,"username":"jessegrosjean","created":"2009-09-05T08:58:24-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2010-03-10T12:52:23-08:00","forks":5,"fork":false,"size":504,"name":"Documents.com.client.python","url":"https://github.com/jessegrosjean/Documents.com.client.python","description":"","private":false,"pushed":"2010-03-10T12:52:23-08:00","watchers":30,"has_wiki":true},{"type":"repo","created_at":"2008-07-19T08:52:59-07:00","score":6.6793957,"owner":"FooBarWidget","followers":64,"open_issues":0,"username":"FooBarWidget","created":"2008-07-19T08:52:59-07:00","homepage":"https://github.com/FooBarWidget/mizuho","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-05-28T03:21:35-07:00","forks":2,"fork":false,"size":164,"name":"mizuho","url":"https://github.com/FooBarWidget/mizuho","description":"Documentation formatting tool. Converts Asciidoc input into nicely formatted HTML.","private":false,"pushed":"2012-05-28T03:21:35-07:00","watchers":64,"has_wiki":true},{"type":"repo","created_at":"2010-04-06T11:12:45-07:00","score":6.5993414,"owner":"doctrine","followers":23,"open_issues":3,"organization":"doctrine","username":"doctrine","created":"2010-04-06T11:12:45-07:00","homepage":"http://www.doctrine-project.org","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-16T01:00:00-07:00","forks":11,"fork":false,"size":180,"name":"doctrine1-documentation","url":"https://github.com/doctrine/doctrine1-documentation","description":"Documentation for Doctrine 1","private":false,"pushed":"2012-06-16T01:00:00-07:00","watchers":23,"has_wiki":true},{"type":"repo","created_at":"2011-09-29T00:21:08-07:00","score":6.585479,"owner":"kemayo","followers":34,"open_issues":5,"username":"kemayo","created":"2011-09-29T00:21:08-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-06T01:38:50-07:00","forks":9,"fork":false,"size":132,"name":"sublime-text-2-goto-documentation","url":"https://github.com/kemayo/sublime-text-2-goto-documentation","description":"Sublime Text 2 plugin to go to documentation","private":false,"pushed":"2012-06-06T01:38:50-07:00","watchers":34,"has_wiki":true},{"type":"repo","created_at":"2010-04-07T11:57:56-07:00","score":6.2078037,"owner":"doctrine","followers":19,"open_issues":0,"organization":"doctrine","username":"doctrine","created":"2010-04-07T11:57:56-07:00","homepage":"http://www.doctrine-project.org","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-25T01:33:38-07:00","forks":10,"fork":false,"size":156,"name":"dbal-documentation","url":"https://github.com/doctrine/dbal-documentation","description":"Documentation files for the Doctrine 2 DBAL","private":false,"pushed":"2012-06-25T01:33:38-07:00","watchers":19,"has_wiki":true},{"type":"repo","created_at":"2009-12-15T11:18:56-08:00","score":5.9837384,"owner":"bradfitz","followers":56,"open_issues":0,"username":"bradfitz","created":"2009-12-15T11:18:56-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-08-11T10:56:35-07:00","forks":6,"fork":false,"size":276,"name":"scanningcabinet","url":"https://github.com/bradfitz/scanningcabinet","description":"Document Management System (scanner -> appengine blobs)","private":false,"pushed":"2011-08-11T10:56:35-07:00","watchers":56,"has_wiki":true},{"type":"repo","created_at":"2009-07-08T16:22:59-07:00","score":5.9156513,"owner":"rapidsms","followers":16,"open_issues":6,"organization":"rapidsms","username":"rapidsms","created":"2009-07-08T16:22:59-07:00","homepage":"http://docs.rapidsms.org","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-08-05T02:03:11-07:00","forks":9,"fork":false,"size":160,"name":"rapidsms-documentation","url":"https://github.com/rapidsms/rapidsms-documentation","description":"Documentation for RapidSMS","private":false,"pushed":"2011-08-05T02:03:11-07:00","watchers":16,"has_wiki":true},{"type":"repo","created_at":"2010-05-23T12:45:20-07:00","score":5.9100027,"owner":"paltman","followers":57,"open_issues":2,"username":"paltman","created":"2010-05-23T12:45:20-07:00","homepage":"http://packages.python.org/django-pdf/","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2010-06-30T20:24:33-07:00","forks":11,"fork":false,"size":592,"name":"django-pdf","url":"https://github.com/paltman/django-pdf","description":"Manage uploaded documents (pdfs) with backend cloud processing of the pdfs into individual pngs per page","private":false,"pushed":"2010-06-30T20:24:33-07:00","watchers":57,"has_wiki":true},{"type":"repo","created_at":"2010-08-02T13:28:23-07:00","score":5.620927,"owner":"doctrine","followers":13,"open_issues":0,"organization":"doctrine","username":"doctrine","created":"2010-08-02T13:28:23-07:00","homepage":"http://www.doctrine-project.org/projects/common","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-27T06:53:53-07:00","forks":7,"fork":false,"size":400,"name":"common-documentation","url":"https://github.com/doctrine/common-documentation","description":"Documentation for the common Doctrine PHP extensions library.","private":false,"pushed":"2012-06-27T06:53:53-07:00","watchers":13,"has_wiki":true},{"type":"repo","created_at":"2011-02-19T14:56:14-08:00","score":5.5232573,"owner":"datadesk","followers":12,"open_issues":10,"organization":"datadesk","username":"datadesk","created":"2011-02-19T14:56:14-08:00","homepage":"http://document-stacker.appspot.com/","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-08-16T11:35:06-07:00","forks":2,"fork":false,"size":116,"name":"latimes-document-stacker","url":"https://github.com/datadesk/latimes-document-stacker","description":"Use DocumentCloud to publish PDFs for humans.","private":false,"pushed":"2011-08-16T11:35:06-07:00","watchers":12,"has_wiki":true},{"type":"repo","created_at":"2010-04-22T08:51:01-07:00","score":5.4273014,"owner":"doctrine","followers":11,"open_issues":1,"organization":"doctrine","username":"doctrine","created":"2010-04-22T08:51:01-07:00","homepage":"http://www.doctrine-project.org","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-29T04:37:15-07:00","forks":3,"fork":false,"size":228,"name":"migrations-documentation","url":"https://github.com/doctrine/migrations-documentation","description":"Documentation for the Doctrine Migrations","private":false,"pushed":"2012-06-29T04:37:15-07:00","watchers":11,"has_wiki":true},{"type":"repo","created_at":"2012-01-23T16:40:31-08:00","score":5.3857517,"owner":"sjl","followers":49,"open_issues":1,"username":"sjl","created":"2012-01-23T16:40:31-08:00","homepage":"http://sjl.bitbucket.org/d/","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-03-14T14:25:05-07:00","forks":6,"fork":false,"size":280,"name":"d","url":"https://github.com/sjl/d","description":"Markdown files to documentation. Nothing else.","private":false,"pushed":"2012-03-14T14:25:05-07:00","watchers":49,"has_wiki":true},{"type":"repo","created_at":"2011-02-13T07:27:47-08:00","score":5.034907,"owner":"doctrine","followers":7,"open_issues":0,"organization":"doctrine","username":"doctrine","created":"2011-02-13T07:27:47-08:00","homepage":"http://www.doctrine-project.org","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-04-04T04:29:03-07:00","forks":6,"fork":false,"size":144,"name":"couchdb-documentation","url":"https://github.com/doctrine/couchdb-documentation","description":"Documentation for Doctrine CouchDB ODM","private":false,"pushed":"2012-04-04T04:29:03-07:00","watchers":7,"has_wiki":true},{"type":"repo","created_at":"2012-01-17T02:20:53-08:00","score":4.937237,"owner":"openmicroscopy","followers":6,"open_issues":1,"organization":"openmicroscopy","username":"openmicroscopy","created":"2012-01-17T02:20:53-08:00","homepage":"http://openmicroscopy.org","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-04-11T01:40:42-07:00","forks":5,"fork":false,"size":288,"name":"ome-documentation","url":"https://github.com/openmicroscopy/ome-documentation","description":"Sphinx-based documentation for the Open Microscopy Environment ","private":false,"pushed":"2012-04-11T01:40:42-07:00","watchers":6,"has_wiki":true},{"type":"repo","created_at":"2011-11-23T02:58:02-08:00","score":4.9320946,"owner":"trigger-corp","followers":6,"open_issues":1,"organization":"trigger-corp","username":"trigger-corp","created":"2011-11-23T02:58:02-08:00","homepage":"https://webmynd.com/","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-28T21:55:54-07:00","forks":2,"fork":false,"size":284,"name":"Forge-Documentation","url":"https://github.com/trigger-corp/Forge-Documentation","description":"","private":false,"pushed":"2012-06-28T21:55:54-07:00","watchers":6,"has_wiki":true},{"type":"repo","created_at":"2011-12-14T01:01:14-08:00","score":4.8395667,"owner":"simod","followers":5,"open_issues":5,"username":"simod","created":"2011-12-14T01:01:14-08:00","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-02-09T13:18:00-08:00","forks":4,"fork":false,"size":124,"name":"geonode-documents","url":"https://github.com/simod/geonode-documents","description":"Document handling extension for GeoNode","private":false,"pushed":"2012-02-09T13:18:00-08:00","watchers":5,"has_wiki":true},{"type":"repo","created_at":"2008-12-28T22:46:04-08:00","score":4.823665,"owner":"brosner","followers":45,"open_issues":0,"username":"brosner","created":"2008-12-28T22:46:04-08:00","homepage":"http://appdocs.oebfare.com/","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2008-12-29T11:24:17-08:00","forks":24,"fork":false,"size":264,"name":"django-reusable-app-docs","url":"https://github.com/brosner/django-reusable-app-docs","description":"Documentation about how to write and maintain a Django reusable app.","private":false,"pushed":"2008-12-29T11:24:17-08:00","watchers":45,"has_wiki":true},{"type":"repo","created_at":"2011-02-17T08:10:23-08:00","score":4.7877645,"owner":"Behat","followers":42,"open_issues":1,"organization":"Behat","username":"Behat","created":"2011-02-17T08:10:23-08:00","homepage":"http://docs.behat.org","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-27T16:41:49-07:00","forks":22,"fork":false,"size":228,"name":"en-docs.behat.org","url":"https://github.com/Behat/en-docs.behat.org","description":"Behat Documentation Repository","private":false,"pushed":"2012-06-27T16:41:49-07:00","watchers":42,"has_wiki":false},{"type":"repo","created_at":"2011-11-27T06:37:09-08:00","score":4.7436113,"owner":"ninja-ide","followers":4,"open_issues":1,"organization":"ninja-ide","username":"ninja-ide","created":"2011-11-27T06:37:09-08:00","homepage":"http://ninja-ide.org","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-03-29T10:06:34-07:00","forks":3,"fork":false,"size":128,"name":"ninja-ide-documentation","url":"https://github.com/ninja-ide/ninja-ide-documentation","description":"Documentation for NINJA-IDE","private":false,"pushed":"2012-03-29T10:06:34-07:00","watchers":4,"has_wiki":true},{"type":"repo","created_at":"2011-10-12T00:55:30-07:00","score":4.7367544,"owner":"pdebuyl","followers":4,"open_issues":0,"username":"pdebuyl","created":"2011-10-12T00:55:30-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-03-02T02:24:49-08:00","forks":4,"fork":false,"size":116,"name":"euroscipy2012_document","url":"https://github.com/pdebuyl/euroscipy2012_document","description":"","private":false,"pushed":"2012-03-02T02:24:49-08:00","watchers":4,"has_wiki":true},{"type":"repo","created_at":"2010-01-06T14:16:16-08:00","score":4.690094,"owner":"tbaugis","followers":41,"open_issues":6,"username":"tbaugis","created":"2010-01-06T14:16:16-08:00","homepage":"http://wiki.github.com/tbaugis/hamster_experiments/","has_issues":true,"has_downloads":false,"language":"Python","pushed_at":"2012-06-12T09:37:16-07:00","forks":3,"fork":false,"size":444,"name":"hamster_experiments","url":"https://github.com/tbaugis/hamster_experiments","description":"Follow the link for documentation:","private":false,"pushed":"2012-06-12T09:37:16-07:00","watchers":41,"has_wiki":true},{"type":"repo","created_at":"2011-03-29T02:29:34-07:00","score":4.6459413,"owner":"Tryton-EvKliD","followers":3,"open_issues":0,"organization":"Tryton-EvKliD","username":"Tryton-EvKliD","created":"2011-03-29T02:29:34-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-03-30T22:27:50-07:00","forks":1,"fork":false,"size":6957,"name":"ekd_documents","url":"https://github.com/Tryton-EvKliD/ekd_documents","description":"module for Tryton (Documents)","private":false,"pushed":"2011-03-30T22:27:50-07:00","watchers":3,"has_wiki":false},{"type":"repo","created_at":"2011-02-07T22:59:53-08:00","score":4.6459413,"owner":"yosuke","followers":3,"open_issues":0,"username":"yosuke","created":"2011-02-07T22:59:53-08:00","homepage":"http://openhri.net/","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-12-05T22:41:17-08:00","forks":3,"fork":false,"size":1108,"name":"OpenHRI-document","url":"https://github.com/yosuke/OpenHRI-document","description":"Documentation for OpenHRI","private":false,"pushed":"2011-12-05T22:41:17-08:00","watchers":3,"has_wiki":true},{"type":"repo","created_at":"2010-09-30T08:54:44-07:00","score":4.64337,"owner":"powellc","followers":3,"open_issues":0,"username":"powellc","created":"2010-09-30T08:54:44-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-03-29T08:25:44-07:00","forks":2,"fork":false,"size":416,"name":"django-documents","url":"https://github.com/powellc/django-documents","description":"Manages documents, allows them to be handled a bit like tags","private":false,"pushed":"2011-03-29T08:25:44-07:00","watchers":3,"has_wiki":true},{"type":"repo","created_at":"2012-05-25T08:04:47-07:00","score":4.64337,"owner":"alchemy-fr","followers":3,"open_issues":0,"organization":"alchemy-fr","username":"alchemy-fr","created":"2012-05-25T08:04:47-07:00","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-18T06:54:37-07:00","forks":2,"fork":false,"size":144,"name":"Documentation-Boilerplate","url":"https://github.com/alchemy-fr/Documentation-Boilerplate","description":"A sphinx documentation boilerplate for Alchemy open source projects","private":false,"pushed":"2012-06-18T06:54:37-07:00","watchers":3,"has_wiki":true},{"type":"repo","created_at":"2010-06-13T18:38:37-07:00","score":4.639085,"owner":"hflw","followers":3,"open_issues":0,"username":"hflw","created":"2010-06-13T18:38:37-07:00","homepage":"http://www.persvr.org/","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2010-07-28T00:43:27-07:00","forks":1,"fork":false,"size":172,"name":"Persevere-Documentation","url":"https://github.com/hflw/Persevere-Documentation","description":"Better docs for persevere 2.0","private":false,"pushed":"2010-07-28T00:43:27-07:00","watchers":3,"has_wiki":true},{"type":"repo","created_at":"2011-07-26T06:11:40-07:00","score":4.639085,"owner":"cgsoftware","followers":3,"open_issues":0,"organization":"cgsoftware","username":"cgsoftware","created":"2011-07-26T06:11:40-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-12T07:40:26-07:00","forks":1,"fork":false,"size":1352,"name":"ItalianFiscalDocument","url":"https://github.com/cgsoftware/ItalianFiscalDocument","description":"Gestione documenti di Vendita e di Acquisto Openerp","private":false,"pushed":"2012-06-12T07:40:26-07:00","watchers":3,"has_wiki":true},{"type":"repo","created_at":"2011-04-27T03:18:50-07:00","score":4.639085,"owner":"noum","followers":3,"open_issues":0,"username":"noum","created":"2011-04-27T03:18:50-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-14T03:39:16-07:00","forks":2,"fork":false,"size":132,"name":"documentation-achrolab","url":"https://github.com/noum/documentation-achrolab","description":"","private":false,"pushed":"2012-06-14T03:39:16-07:00","watchers":3,"has_wiki":true},{"type":"repo","created_at":"2012-02-16T07:19:34-08:00","score":4.639085,"owner":"Alerion","followers":3,"open_issues":2,"username":"Alerion","created":"2012-02-16T07:19:34-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-18T08:31:55-07:00","forks":2,"fork":false,"size":232,"name":"django_documentation","url":"https://github.com/Alerion/django_documentation","description":"","private":false,"pushed":"2012-06-18T08:31:55-07:00","watchers":3,"has_wiki":true},{"type":"repo","created_at":"2011-04-30T21:40:32-07:00","score":4.548271,"owner":"richardfullmer","followers":2,"open_issues":0,"username":"richardfullmer","created":"2011-04-30T21:40:32-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-04-30T22:18:08-07:00","forks":1,"fork":false,"size":684,"name":"oxm-documentation","url":"https://github.com/richardfullmer/oxm-documentation","description":"Doctrine OXM Documentation","private":false,"pushed":"2011-04-30T22:18:08-07:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2012-02-08T04:29:40-08:00","score":4.547414,"owner":"aptivate","followers":2,"open_issues":0,"organization":"aptivate","username":"aptivate","created":"2012-02-08T04:29:40-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-27T02:18:31-07:00","forks":1,"fork":false,"size":824,"name":"intranet-documents","url":"https://github.com/aptivate/intranet-documents","description":"Generic Intranet, Document Store application","private":false,"pushed":"2012-06-27T02:18:31-07:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2011-09-19T17:46:57-07:00","score":4.546557,"owner":"NBitWonder","followers":2,"open_issues":0,"username":"NBitWonder","created":"2011-09-19T17:46:57-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-09-23T11:20:36-07:00","forks":1,"fork":false,"size":280,"name":"OpenDocumentationSystem","url":"https://github.com/NBitWonder/OpenDocumentationSystem","description":"OpenOffice-based project documentation templates","private":false,"pushed":"2011-09-23T11:20:36-07:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2010-12-16T00:44:55-08:00","score":4.5457,"owner":"bluedynamics","followers":2,"open_issues":0,"organization":"bluedynamics","username":"bluedynamics","created":"2010-12-16T00:44:55-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-22T08:02:15-07:00","forks":2,"fork":false,"size":252,"name":"yafowil.documentation","url":"https://github.com/bluedynamics/yafowil.documentation","description":"Documentation of YAFOWIL - Yet Another Form Widget Library (Python, Web)","private":false,"pushed":"2012-06-22T08:02:15-07:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2011-12-17T04:44:26-08:00","score":4.5457,"owner":"zyga","followers":2,"open_issues":0,"username":"zyga","created":"2011-12-17T04:44:26-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-05-13T14:17:48-07:00","forks":1,"fork":false,"size":424,"name":"json-document","url":"https://github.com/zyga/json-document","description":"Intuitive and powerful python bindings to JSON documents (with schema!)","private":false,"pushed":"2012-05-13T14:17:48-07:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2011-11-22T07:02:00-08:00","score":4.5444446,"owner":"raprasad","followers":2,"open_issues":0,"username":"raprasad","created":"2011-11-22T07:02:00-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-05-16T11:15:06-07:00","forks":1,"fork":false,"size":204,"name":"Simple-Project-Documentation","url":"https://github.com/raprasad/Simple-Project-Documentation","description":"Django admin interface/database to store basic information on existing projects/services. e.g., server location, codebase, who to contact for help, etc. Allow exporting of the documentation to static HTML--in case the documentation site itself is unavailable.","private":false,"pushed":"2012-05-16T11:15:06-07:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2012-06-06T04:53:24-07:00","score":4.5414147,"owner":"shinriyo","followers":2,"open_issues":0,"username":"shinriyo","created":"2012-06-06T04:53:24-07:00","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-08T02:37:54-07:00","forks":1,"fork":false,"size":1452,"name":"NGUI-japanese-document","url":"https://github.com/shinriyo/NGUI-japanese-document","description":"The translated from http://www.tasharen.com/?page_id=197 to Japanese","private":false,"pushed":"2012-06-08T02:37:54-07:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2012-06-20T02:49:07-07:00","score":4.5414147,"owner":"nfms4redd","followers":2,"open_issues":0,"organization":"nfms4redd","username":"nfms4redd","created":"2012-06-20T02:49:07-07:00","has_issues":true,"language":"Python","has_downloads":true,"pushed_at":"2012-06-25T13:25:17-07:00","forks":1,"fork":false,"size":2512,"name":"nfms-documentation","url":"https://github.com/nfms4redd/nfms-documentation","description":"","private":false,"pushed":"2012-06-25T13:25:17-07:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2010-08-18T11:35:30-07:00","score":4.451017,"owner":"nyxtom","followers":1,"open_issues":0,"username":"nyxtom","created":"2010-08-18T11:35:30-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2010-08-18T12:27:29-07:00","forks":1,"fork":false,"size":120,"name":"django-documents","url":"https://github.com/nyxtom/django-documents","description":"A simple manager of documents, document versions and attributes.","private":false,"pushed":"2010-08-18T12:27:29-07:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2011-06-02T04:34:28-07:00","score":4.450601,"owner":"gracefullife","followers":1,"open_issues":0,"username":"gracefullife","created":"2011-06-02T04:34:28-07:00","homepage":"http://d.hatena.ne.jp/graceful_life/","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-07-28T08:24:49-07:00","forks":1,"fork":false,"size":100,"name":"GerritDocument_Ja","url":"https://github.com/gracefullife/GerritDocument_Ja","description":"Translated Gerrit Document to Japanese","private":false,"pushed":"2011-07-28T08:24:49-07:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2011-03-20T20:33:30-07:00","score":4.450601,"owner":"servee","followers":1,"open_issues":0,"organization":"servee","username":"servee","created":"2011-03-20T20:33:30-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-11-21T09:46:08-08:00","forks":1,"fork":false,"size":860,"name":"django-servee-document","url":"https://github.com/servee/django-servee-document","description":"Document Plugin for Servee","private":false,"pushed":"2011-11-21T09:46:08-08:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2011-05-26T00:19:25-07:00","score":4.450601,"owner":"alexgarel","followers":1,"open_issues":0,"username":"alexgarel","created":"2011-05-26T00:19:25-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-19T11:05:25-07:00","forks":1,"fork":false,"size":1304,"name":"document-chain","url":"https://github.com/alexgarel/document-chain","description":"A document transformation chain","private":false,"pushed":"2012-06-19T11:05:25-07:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2012-06-25T14:23:40-07:00","score":4.450601,"owner":"iunruh","followers":1,"open_issues":0,"username":"iunruh","created":"2012-06-25T14:23:40-07:00","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-25T19:34:08-07:00","forks":1,"fork":false,"size":128,"name":"frost-api-documentation","url":"https://github.com/iunruh/frost-api-documentation","description":"Frost MSP API Documentation","private":false,"pushed":"2012-06-25T19:34:08-07:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2011-05-12T02:51:25-07:00","score":4.4497437,"owner":"cuteflow","followers":1,"open_issues":0,"organization":"cuteflow","username":"cuteflow","created":"2011-05-12T02:51:25-07:00","homepage":"www.cuteflow.org","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-08-09T05:25:30-07:00","forks":2,"fork":false,"size":172,"name":"cuteflow-documentation","url":"https://github.com/cuteflow/cuteflow-documentation","description":"Documentation for the CuteFlow project","private":false,"pushed":"2011-08-09T05:25:30-07:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2012-04-21T09:17:09-07:00","score":4.4497437,"owner":"timvieira","followers":1,"open_issues":0,"username":"timvieira","created":"2012-04-21T09:17:09-07:00","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-04-21T16:58:11-07:00","forks":1,"fork":false,"size":144,"name":"document-explorer","url":"https://github.com/timvieira/document-explorer","description":"Too many documents on the hard drive...","private":false,"pushed":"2012-04-21T16:58:11-07:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2012-03-29T09:17:08-07:00","score":4.448887,"owner":"hugosantosred","followers":1,"open_issues":0,"username":"hugosantosred","created":"2012-03-29T09:17:08-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-05-27T09:19:28-07:00","forks":1,"fork":false,"size":176,"name":"dropbox_document_manager","url":"https://github.com/hugosantosred/dropbox_document_manager","description":"Document Manager With Dropbox for OpenERP","private":false,"pushed":"2012-05-27T09:19:28-07:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2012-05-02T07:36:05-07:00","score":4.448887,"owner":"benoitbryon","followers":1,"open_issues":9,"username":"benoitbryon","created":"2012-05-02T07:36:05-07:00","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-05-31T11:28:01-07:00","forks":1,"fork":false,"size":220,"name":"documentation-best-practices","url":"https://github.com/benoitbryon/documentation-best-practices","description":"Tips, tricks and conventions about documentation content.","private":false,"pushed":"2012-05-31T11:28:01-07:00","watchers":1,"has_wiki":false},{"type":"repo","created_at":"2011-02-10T08:20:54-08:00","score":4.4485927,"owner":"conwetlab","followers":1,"open_issues":0,"organization":"conwetlab","username":"conwetlab","created":"2011-02-10T08:20:54-08:00","homepage":"http://exlabos.blogspot.com","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-02-11T07:45:23-08:00","forks":1,"fork":false,"size":280,"name":"Markdown-Documentation","url":"https://github.com/conwetlab/Markdown-Documentation","description":"Markdown extensions to produce HTML code documentation. It is an environment prepared to offer fancy HTML outputs for extended markdown documents","private":false,"pushed":"2011-02-11T07:45:23-08:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2011-07-06T13:49:36-07:00","score":4.44803,"owner":"rhoslug","followers":1,"open_issues":0,"username":"rhoslug","created":"2011-07-06T13:49:36-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-08-10T13:59:51-07:00","forks":1,"fork":false,"size":188,"name":"Document_Tokenizer","url":"https://github.com/rhoslug/Document_Tokenizer","description":"A set of tools to tokenize and extract information from documents.","private":false,"pushed":"2011-08-10T13:59:51-07:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2011-06-22T19:26:15-07:00","score":4.44803,"owner":"srichand","followers":1,"open_issues":0,"username":"srichand","created":"2011-06-22T19:26:15-07:00","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-02-17T19:57:01-08:00","forks":1,"fork":false,"size":108,"name":"DocumentGenerator","url":"https://github.com/srichand/DocumentGenerator","description":"Generates nice LaTeX documents from web pages","private":false,"pushed":"2012-02-17T19:57:01-08:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2012-05-02T07:38:13-07:00","score":4.44803,"owner":"benoitbryon","followers":1,"open_issues":1,"username":"benoitbryon","created":"2012-05-02T07:38:13-07:00","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-05-31T13:57:03-07:00","forks":1,"fork":false,"size":124,"name":"documentation-templates-sphinx","url":"https://github.com/benoitbryon/documentation-templates-sphinx","description":"Template(s) to generate Sphinx-based documentations.","private":false,"pushed":"2012-05-31T13:57:03-07:00","watchers":1,"has_wiki":false},{"type":"repo","created_at":"2012-04-06T09:09:50-07:00","score":4.446316,"owner":"dae-eklen","followers":1,"open_issues":0,"username":"dae-eklen","created":"2012-04-06T09:09:50-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-04-06T09:13:19-07:00","forks":1,"fork":false,"size":96,"name":"Remote-documents-viewer","url":"https://github.com/dae-eklen/Remote-documents-viewer","description":"a remote documents viewer with CLI: concurrent server administrates a set of files in a directory; the client asks for files and information about them according to preestablished protocol","private":false,"pushed":"2012-04-06T09:13:19-07:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2010-10-05T13:29:59-07:00","score":4.4437447,"owner":"jbillsx","followers":1,"open_issues":0,"username":"jbillsx","created":"2010-10-05T13:29:59-07:00","homepage":"http://www.facebook.com/home.php?sk=group_108466959215982","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2010-10-07T17:59:39-07:00","forks":1,"fork":false,"size":216,"name":"Iggy-Document-Editor","url":"https://github.com/jbillsx/Iggy-Document-Editor","description":"A real time collaborative editor written in python, php, and AJAX","private":false,"pushed":"2010-10-07T17:59:39-07:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2011-05-24T06:54:31-07:00","score":4.4437447,"owner":"imait","followers":1,"open_issues":0,"username":"imait","created":"2011-05-24T06:54:31-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-05-24T06:57:35-07:00","forks":1,"fork":false,"size":124,"name":"HtmlDocument","url":"https://github.com/imait/HtmlDocument","description":"HTML -- Assist to make HTML.","private":false,"pushed":"2011-05-24T06:57:35-07:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2011-05-07T13:23:51-07:00","score":4.4437447,"owner":"dnephin","followers":1,"open_issues":0,"username":"dnephin","created":"2011-05-07T13:23:51-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-05-10T22:04:43-07:00","forks":1,"fork":false,"size":800,"name":"Find-Similar-Documents","url":"https://github.com/dnephin/Find-Similar-Documents","description":"","private":false,"pushed":"2011-05-10T22:04:43-07:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2011-07-24T00:33:46-07:00","score":4.4437447,"owner":"cametan001","followers":1,"open_issues":0,"username":"cametan001","created":"2011-07-24T00:33:46-07:00","homepage":"http://www.oreilly.co.jp/books/9784873113647/","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-07-29T06:51:09-07:00","forks":1,"fork":false,"size":124,"name":"document_filtering","url":"https://github.com/cametan001/document_filtering","description":"集合知プログラミングでのベイジアンフィルタ","private":false,"pushed":"2011-07-29T06:51:09-07:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2011-07-12T01:47:29-07:00","score":4.4437447,"owner":"Zojax","followers":1,"open_issues":0,"organization":"Zojax","username":"Zojax","created":"2011-07-12T01:47:29-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-12-15T23:14:00-08:00","forks":1,"fork":false,"size":168,"name":"zojax.contenttype.document","url":"https://github.com/Zojax/zojax.contenttype.document","description":"","private":false,"pushed":"2011-12-15T23:14:00-08:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2011-07-12T02:58:28-07:00","score":4.4437447,"owner":"Zojax","followers":1,"open_issues":0,"organization":"Zojax","username":"Zojax","created":"2011-07-12T02:58:28-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-12-15T23:12:05-08:00","forks":1,"fork":false,"size":184,"name":"zojax.content.documents","url":"https://github.com/Zojax/zojax.content.documents","description":"","private":false,"pushed":"2011-12-15T23:12:05-08:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2012-04-28T03:21:43-07:00","score":4.4437447,"owner":"chedabob","followers":1,"open_issues":0,"username":"chedabob","created":"2012-04-28T03:21:43-07:00","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-04-28T13:50:13-07:00","forks":1,"fork":false,"size":156,"name":"DocumentStore","url":"https://github.com/chedabob/DocumentStore","description":"","private":false,"pushed":"2012-04-28T13:50:13-07:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2011-08-04T10:31:54-07:00","score":4.4437447,"owner":"slyzer05","followers":1,"open_issues":0,"username":"slyzer05","created":"2011-08-04T10:31:54-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-05-08T10:51:20-07:00","forks":1,"fork":false,"size":220,"name":"Document-Backup","url":"https://github.com/slyzer05/Document-Backup","description":"Python program to backup user data to another location.","private":false,"pushed":"2012-05-08T10:51:20-07:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2012-05-19T11:42:21-07:00","score":4.4437447,"owner":"berserck","followers":1,"open_issues":0,"username":"berserck","created":"2012-05-19T11:42:21-07:00","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-05-19T11:54:52-07:00","forks":1,"fork":false,"size":332,"name":"latexDocuments","url":"https://github.com/berserck/latexDocuments","description":"A place to put my latex templates and snippets","private":false,"pushed":"2012-05-19T11:54:52-07:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2012-03-02T13:30:32-08:00","score":4.4437447,"owner":"vkolev","followers":1,"open_issues":0,"username":"vkolev","created":"2012-03-02T13:30:32-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-27T04:47:41-07:00","forks":1,"fork":false,"size":552,"name":"go-documentation-bg","url":"https://github.com/vkolev/go-documentation-bg","description":"Документация за Go на български език","private":false,"pushed":"2012-06-27T04:47:41-07:00","watchers":1,"has_wiki":false},{"type":"repo","created_at":"2012-04-27T04:06:39-07:00","score":4.3939776,"owner":"benoitbryon","followers":6,"open_issues":10,"username":"benoitbryon","created":"2012-04-27T04:06:39-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-05-31T13:46:43-07:00","forks":1,"fork":false,"size":508,"name":"documentation-style-guide-sphinx","url":"https://github.com/benoitbryon/documentation-style-guide-sphinx","description":"Coding standards for Sphinx-based documentations","private":false,"pushed":"2012-05-31T13:46:43-07:00","watchers":6,"has_wiki":false},{"type":"repo","created_at":"2009-03-07T12:25:43-08:00","score":4.2735467,"owner":"engla","followers":42,"open_issues":4,"username":"engla","created":"2009-03-07T12:25:43-08:00","homepage":"http://kaizer.se/wiki/kupfer/","has_issues":false,"has_downloads":true,"language":"Python","pushed_at":"2012-06-28T11:36:40-07:00","forks":21,"fork":false,"size":344,"name":"kupfer","url":"https://github.com/engla/kupfer","description":"kupfer, smart, quick launcher. `master' is kupfer's release branch and tracks the main repository at http://git.gnome.org/browse/kupfer/ — All topic branches are Works in Progress and might be rebased. Kupfer Technical Documentation: http://kaizer.se/wiki/kupfer/Manual.html [[Send email, not pull requests. Email (or me)]]","private":false,"pushed":"2012-06-28T11:36:40-07:00","watchers":42,"has_wiki":false},{"type":"repo","created_at":"2011-01-13T17:04:59-08:00","score":4.1519423,"owner":"pycollada","followers":39,"open_issues":2,"organization":"pycollada","username":"pycollada","created":"2011-01-13T17:04:59-08:00","homepage":"http://pycollada.github.com/","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-04-25T12:32:34-07:00","forks":8,"fork":false,"size":156,"name":"pycollada","url":"https://github.com/pycollada/pycollada","description":"A python COLLADA library. Can be used to create, edit and load COLLADA documents.","private":false,"pushed":"2012-04-25T12:32:34-07:00","watchers":39,"has_wiki":true},{"type":"repo","created_at":"2011-01-16T20:08:57-08:00","score":4.1519423,"owner":"NetAngels","followers":39,"open_issues":3,"username":"NetAngels","created":"2011-01-16T20:08:57-08:00","homepage":"http://packages.python.org/django-webodt/","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-01T10:11:29-07:00","forks":8,"fork":false,"size":128,"name":"django-webodt","url":"https://github.com/NetAngels/django-webodt","description":"django module to create MS Word, PDF and other types of documents from ODF and HTML templates","private":false,"pushed":"2012-06-01T10:11:29-07:00","watchers":39,"has_wiki":true},{"type":"repo","created_at":"2011-02-12T15:30:34-08:00","score":4.139975,"owner":"chrisglass","followers":38,"open_issues":4,"username":"chrisglass","created":"2011-02-12T15:30:34-08:00","homepage":"http://bserve.webhop.org/django_polymorphic","has_issues":true,"has_downloads":false,"language":"Python","pushed_at":"2012-01-09T07:48:59-08:00","forks":19,"fork":false,"size":300,"name":"django_polymorphic","url":"https://github.com/chrisglass/django_polymorphic","description":"Seamless Polymorphic Inheritance for Django Models. For documentation and news click link below.","private":false,"pushed":"2012-01-09T07:48:59-08:00","watchers":38,"has_wiki":false}]} + +GET /repos/ipython/ipython {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4996'), ('vary', 'Accept, Authorization, Cookie'), ('content-length', '1527'), ('server', 'nginx/1.0.13'), ('last-modified', 'Thu, 28 Jun 2012 23:29:38 GMT'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"724e676270069b5ab1aacdade3f0847f"'), ('cache-control', 'private, max-age=60'), ('date', 'Fri, 29 Jun 2012 11:37:26 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"mirror_url":null,"has_downloads":true,"homepage":"http://ipython.org","owner":{"avatar_url":"https://secure.gravatar.com/avatar/f72497397dd9a0a79c654c8182460bb1?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"ipython","url":"https://api.github.com/users/ipython","gravatar_id":"f72497397dd9a0a79c654c8182460bb1","id":230453},"html_url":"https://github.com/ipython/ipython","clone_url":"https://github.com/ipython/ipython.git","has_wiki":false,"watchers":834,"description":"Official repository for IPython itself. Other repos in the IPython organization contain things like the website, documentation builds, etc.","ssh_url":"git@github.com:ipython/ipython.git","organization":{"avatar_url":"https://secure.gravatar.com/avatar/f72497397dd9a0a79c654c8182460bb1?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"ipython","url":"https://api.github.com/users/ipython","gravatar_id":"f72497397dd9a0a79c654c8182460bb1","id":230453},"git_url":"git://github.com/ipython/ipython.git","full_name":"ipython/ipython","open_issues":289,"size":1204,"fork":false,"created_at":"2010-05-10T04:46:06Z","name":"ipython","url":"https://api.github.com/repos/ipython/ipython","permissions":{"push":false,"pull":true,"admin":false},"language":"Python","private":false,"pushed_at":"2012-06-28T23:29:38Z","id":658518,"master_branch":"master","forks":282,"has_issues":true,"svn_url":"https://github.com/ipython/ipython","updated_at":"2012-06-28T23:29:38Z"} + diff --git a/test/ReplayData/Github.testLegacySearchUserByEmail.txt b/test/ReplayData/Github.testLegacySearchUserByEmail.txt new file mode 100644 index 00000000..1150cb81 --- /dev/null +++ b/test/ReplayData/Github.testLegacySearchUserByEmail.txt @@ -0,0 +1,10 @@ +GET /legacy/user/email/vincent@vincent-jacques.net {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4999'), ('content-length', '395'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"f225d9662153996a309db055598b3c8b"'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Fri, 29 Jun 2012 11:37:11 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"user":{"email":"vincent@vincent-jacques.net","blog":"http://vincent-jacques.net","name":"Vincent Jacques","location":"Paris, France","created_at":"2010-07-08T23:10:06-07:00","followers_count":13,"company":"Criteo","type":"User","permission":null,"public_repo_count":11,"public_gist_count":3,"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"following_count":24}} + +GET /users/jacquev6 {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('content-length', '801'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4998'), ('server', 'nginx/1.0.13'), ('last-modified', 'Fri, 15 Jun 2012 15:37:06 GMT'), ('connection', 'keep-alive'), ('etag', '"41ade9c2e4794dd5214bb5f497af92cb"'), ('cache-control', 'private, max-age=60'), ('date', 'Fri, 29 Jun 2012 11:37:11 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"following":24,"created_at":"2010-07-09T06:10:06Z","type":"User","hireable":false,"private_gists":5,"collaborators":0,"public_repos":11,"followers":13,"company":"Criteo","bio":"","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","plan":{"collaborators":1,"private_repos":5,"space":614400,"name":"micro"},"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","total_private_repos":5,"disk_usage":16812,"location":"Paris, France","owned_private_repos":5,"login":"jacquev6","html_url":"https://github.com/jacquev6","name":"Vincent Jacques","url":"https://api.github.com/users/jacquev6","id":327146,"public_gists":3,"blog":"http://vincent-jacques.net","email":"vincent@vincent-jacques.net"} + diff --git a/test/ReplayData/Github.testLegacySearchUsers.txt b/test/ReplayData/Github.testLegacySearchUsers.txt new file mode 100644 index 00000000..30244535 --- /dev/null +++ b/test/ReplayData/Github.testLegacySearchUsers.txt @@ -0,0 +1,5 @@ +GET /legacy/user/search/vincent {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4982'), ('content-length', '41235'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"77b0277b5efb0ebf5f9e3de8a493fd0c"'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Thu, 28 Jun 2012 20:57:52 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"users":[{"gravatar_id":"c5a7f21b46df698f3db31c37ed0cf55a","score":73.982216,"type":"user","name":"Vincent Driessen","location":"Netherlands","fullname":"Vincent Driessen","repos":63,"login":"nvie","public_repo_count":63,"username":"nvie","created_at":"2009-05-12T21:19:38Z","record":null,"id":"user-83844","followers":310,"followers_count":310,"created":"2009-05-12T21:19:38Z","language":"Python","pushed":"2012-06-26T14:15:26.172Z"},{"gravatar_id":"a145dbf5d67ba1eb717fbe3a1f51509c","score":35.851326,"type":"user","fullname":"Jesse Vincent","repos":57,"name":"Jesse Vincent","location":"Somerville, MA, USA","login":"obra","public_repo_count":57,"username":"obra","created_at":"2009-01-09T20:24:15Z","record":null,"id":"user-45416","followers":127,"followers_count":127,"created":"2009-01-09T20:24:15Z","language":"Perl","pushed":"2012-06-27T02:15:19.036Z"},{"gravatar_id":"03a966709300efb4a86ce5ee8f88f696","score":33.5964,"type":"user","repos":86,"name":"John E. Vincent","fullname":"John E. Vincent","location":"Roswell, GA.","login":"lusis","public_repo_count":86,"username":"lusis","created_at":"2010-03-23T20:28:44Z","record":null,"id":"user-228958","followers":112,"followers_count":112,"created":"2010-03-23T20:28:44Z","language":"Ruby","pushed":"2012-06-28T15:15:44.987Z"},{"gravatar_id":"c676f9efc8e54985e84c044899481267","score":29.771633,"type":"user","name":"Vincent Jousse","repos":43,"fullname":"Vincent Jousse","location":"Le Mans","login":"vjousse","public_repo_count":43,"username":"vjousse","created_at":"2009-11-18T15:43:09Z","record":null,"id":"user-154904","followers":102,"followers_count":102,"created":"2009-11-18T15:43:09Z","language":"PHP","pushed":"2012-06-19T10:15:25.469Z"},{"gravatar_id":"1d0a2ab73604a28d767acc0e547c8985","score":14.943241,"type":"user","name":"Vincent Hanquez","fullname":"Vincent Hanquez","repos":43,"location":"","login":"vincenthz","public_repo_count":43,"username":"vincenthz","created_at":"2009-12-31T10:52:40Z","record":null,"id":"user-174631","followers":30,"followers_count":30,"created":"2009-12-31T10:52:40Z","language":"Haskell","pushed":"2011-12-02T11:15:26.599Z"},{"gravatar_id":"dd02e2c7ecf7c377b6b9c2c1a23633d0","score":13.608737,"type":"user","location":"http://git.io/vt","name":"Vincent Tsai","fullname":"Vincent Tsai","repos":18,"login":"Vayn","public_repo_count":18,"username":"Vayn","created_at":"2010-03-17T07:53:26Z","record":null,"id":"user-224407","followers":32,"followers_count":32,"created":"2010-03-17T07:53:26Z","language":"Python","pushed":"2012-05-05T02:15:14.813Z"},{"gravatar_id":"a3895a2d6f26155968be47fc03dddc40","score":13.566472,"type":"user","fullname":"Vincent Battaglia","repos":11,"name":"Vincent Battaglia","location":"San Francisco, CA","login":"vinch","public_repo_count":11,"username":"vinch","created_at":"2009-11-19T11:56:56Z","record":null,"id":"user-155370","followers":34,"followers_count":34,"created":"2009-11-19T11:56:56Z","language":"JavaScript","pushed":"2012-06-27T19:15:37.908Z"},{"gravatar_id":"2c0bde3f5628f35390c42fe505b79da4","score":12.853587,"type":"user","fullname":"Vincent Bernat","name":"Vincent Bernat","repos":25,"location":"Paris","login":"vincentbernat","public_repo_count":25,"username":"vincentbernat","created_at":"2011-02-22T07:20:26Z","record":null,"id":"user-631446","followers":26,"followers_count":26,"created":"2011-02-22T07:20:26Z","language":"C","pushed":"2012-04-24T14:15:18.536Z"},{"gravatar_id":"bbd55fb25025ef973c45e587103a1007","score":12.540491,"type":"user","location":"Nantes, France","name":"Vincent Giersch","fullname":"Vincent Giersch","repos":20,"login":"gierschv","public_repo_count":20,"username":"gierschv","created_at":"2010-09-12T16:41:49Z","record":null,"id":"user-396537","followers":26,"followers_count":26,"created":"2010-09-12T16:41:49Z","language":"JavaScript","pushed":"2012-06-07T01:15:19.516Z"},{"gravatar_id":"c8ff80488014da414b65346806178fa5","score":12.304387,"type":"user","name":"Vincent Batts","repos":20,"fullname":"Vincent Batts","location":"Vienna, VA","login":"vbatts","public_repo_count":20,"username":"vbatts","created_at":"2009-03-25T14:57:43Z","record":null,"id":"user-67049","followers":25,"followers_count":25,"created":"2009-03-25T14:57:43Z","language":"Ruby","pushed":"2012-06-18T14:15:37.054Z"},{"gravatar_id":"5ad827a4eff2f5c23d26e1b4eb746143","score":12.204174,"type":"user","repos":16,"name":"Vincent","fullname":"Vincent","location":"","login":"Valodim","public_repo_count":16,"username":"Valodim","created_at":"2008-10-06T20:33:02Z","record":null,"id":"user-27813","followers":9,"followers_count":9,"created":"2008-10-06T20:33:02Z","language":"Python","pushed":"2011-11-27T18:15:31.138Z"},{"gravatar_id":"a267b99df7d74999affbda5c314083d7","score":12.204174,"type":"user","fullname":"Vincent","repos":25,"name":"Vincent","location":"","login":"Twinside","public_repo_count":25,"username":"Twinside","created_at":"2009-12-17T09:22:27Z","record":null,"id":"user-168874","followers":6,"followers_count":6,"created":"2009-12-17T09:22:27Z","language":"VimL","pushed":"2012-06-28T07:15:16.26Z"},{"gravatar_id":"722218c7702627097bd72901d7b39e6a","score":12.197243,"type":"user","name":"Mike Vincent","location":"FTW, TX","fullname":"Mike Vincent","repos":9,"login":"agile","public_repo_count":9,"username":"agile","created_at":"2008-02-13T19:58:02Z","record":null,"id":"user-249","followers":28,"followers_count":28,"created":"2008-02-13T19:58:02Z","language":"Ruby","pushed":"2012-06-23T19:16:35.651Z"},{"gravatar_id":"a56a9079e6af8a892337a671c3b1a230","score":12.029787,"type":"user","name":"Vincent Pit","repos":13,"location":"Paris, France","fullname":"Vincent Pit","login":"vpit","public_repo_count":13,"username":"vpit","created_at":"2009-04-05T16:43:32Z","record":null,"id":"user-70731","followers":26,"followers_count":26,"created":"2009-04-05T16:43:32Z","language":"Perl","pushed":"2012-04-25T22:15:28.818Z"},{"gravatar_id":"317cf21cbde7d18d79c27e123cbf7b73","score":11.095074,"type":"user","fullname":"Vincent Velociter","name":"Vincent Velociter","repos":14,"location":"Nantes","login":"veloce","public_repo_count":14,"username":"veloce","created_at":"2010-10-01T12:58:39Z","record":null,"id":"user-423393","followers":21,"followers_count":21,"created":"2010-10-01T12:58:39Z","language":"VimL","pushed":"2012-06-20T16:15:20.04Z"},{"gravatar_id":"d4ad14bf23231763ea3c1754a65de041","score":11.040714,"type":"user","repos":45,"name":"Vincent van Haaff","fullname":"Vincent van Haaff","location":"Vancouver, BC","login":"flyingoctopus","public_repo_count":45,"username":"flyingoctopus","created_at":"2009-02-03T08:21:05Z","record":null,"id":"user-51352","followers":16,"followers_count":16,"created":"2009-02-03T08:21:05Z","language":"JavaScript","pushed":"2012-06-28T19:15:23.553Z"},{"gravatar_id":"652e02cbd134e0e92f3f81fe14bda3d1","score":11.000038,"type":"user","name":"Seth Vincent","repos":52,"fullname":"Seth Vincent","location":"olympia, wa","login":"sethvincent","public_repo_count":52,"username":"sethvincent","created_at":"2009-12-08T05:13:00Z","record":null,"id":"user-164214","followers":8,"followers_count":8,"created":"2009-12-08T05:13:00Z","language":"JavaScript","pushed":"2012-06-13T05:15:13.738Z"},{"gravatar_id":"7d3e511e6531fa9fde610015867d5c82","score":10.762525,"type":"user","fullname":"Vincent","repos":13,"name":"Vincent","location":"Zurich","login":"minikermit","public_repo_count":13,"username":"minikermit","created_at":"2009-01-18T10:56:54Z","record":null,"id":"user-47452","followers":3,"followers_count":3,"created":"2009-01-18T10:56:54Z","language":"JavaScript","pushed":"2012-06-27T19:16:29.254Z"},{"gravatar_id":"d3f0155cbb376d40f0c2e6f2d70552a4","score":10.7480545,"type":"user","fullname":"Vincent Agnano","repos":15,"name":"Vincent Agnano","location":"Montpellier","login":"vinyll","public_repo_count":15,"username":"vinyll","created_at":"2009-10-27T09:00:05Z","record":null,"id":"user-145172","followers":19,"followers_count":19,"created":"2009-10-27T09:00:05Z","language":"PHP","pushed":"2012-06-27T13:15:35.164Z"},{"gravatar_id":"dca7a9de73436b37325226984917bec0","score":10.725438,"type":"user","fullname":"Vincent Mazenod","name":"Vincent Mazenod","repos":18,"location":"Clermont Ferrand (636)","login":"mazenovi","public_repo_count":18,"username":"mazenovi","created_at":"2010-08-17T08:26:28Z","record":null,"id":"user-366957","followers":18,"followers_count":18,"created":"2010-08-17T08:26:28Z","language":"PHP","pushed":"2012-06-12T10:15:21.258Z"},{"gravatar_id":"9cfe5fa2f21186a7bec97f0e25fdf68e","score":10.578381,"type":"user","fullname":"Vincent Lark","name":"Vincent Lark","location":"France / Luxembourg","repos":11,"login":"vincent","public_repo_count":11,"username":"vincent","created_at":"2008-04-07T17:52:22Z","record":null,"id":"user-5623","followers":9,"followers_count":9,"created":"2008-04-07T17:52:22Z","language":"Python","pushed":"2011-10-17T15:15:11.027Z"},{"gravatar_id":"2bb264ba6bb334e5bfa5e266788a94c7","score":10.556574,"type":"user","repos":13,"name":"Vincent","fullname":"Vincent","location":"","login":"vjcharles","public_repo_count":13,"username":"vjcharles","created_at":"2008-06-23T08:36:59Z","record":null,"id":"user-14668","followers":2,"followers_count":2,"created":"2008-06-23T08:36:59Z","language":"Ruby","pushed":"2012-06-28T18:15:31.165Z"},{"gravatar_id":"7105cb5590c1d689191fabaff3cfc23b","score":10.545874,"type":"user","name":"Sam Vincent","repos":6,"fullname":"Sam Vincent","location":"Vancouver, BC","login":"samvincent","public_repo_count":6,"username":"samvincent","created_at":"2009-02-25T08:54:33Z","record":null,"id":"user-57775","followers":21,"followers_count":21,"created":"2009-02-25T08:54:33Z","language":"Ruby","pushed":"2012-06-15T21:15:20.297Z"},{"gravatar_id":"96f903d97afc840d7c317ce094fef408","score":10.537209,"type":"user","name":"vincent","repos":18,"fullname":"vincent","location":"北京市海淀区海淀北街8号中关村SOHO ","login":"vincent1900","public_repo_count":18,"username":"vincent1900","created_at":"2011-04-21T04:53:45Z","record":null,"id":"user-743038","followers":0,"followers_count":0,"created":"2011-04-21T04:53:45Z","language":"JavaScript","pushed":"2012-01-10T03:15:21.421Z"},{"gravatar_id":"2ecfff7b4be5cc2a6f42a0e6258f1bdd","score":10.464482,"type":"user","name":"Aziz Hardaya","location":"Jakarta Timur","repos":5,"fullname":"Aziz Hardaya","login":"AzizVincent","public_repo_count":5,"username":"AzizVincent","created_at":"2011-08-12T03:56:24Z","record":null,"id":"user-975298","followers":30,"followers_count":30,"created":"2011-08-12T03:56:24Z","language":"","pushed":"2012-02-13T03:15:25.527Z"},{"gravatar_id":"e5e032ef6bc616aab797ce8562fa60fa","score":10.312129,"type":"user","repos":3,"name":"Vincent","fullname":"Vincent","location":"Rotterdam","login":"VvanGemert","public_repo_count":3,"username":"VvanGemert","created_at":"2010-03-22T15:14:38Z","record":null,"id":"user-227966","followers":4,"followers_count":4,"created":"2010-03-22T15:14:38Z","language":"Ruby","pushed":"2012-03-29T14:15:14.844Z"},{"gravatar_id":"31a9803728a756c2b6ec090cb77852b3","score":10.310701,"type":"user","name":"Vincent Toups","location":"North Carolina","fullname":"Vincent Toups","repos":17,"login":"VincentToups","public_repo_count":17,"username":"VincentToups","created_at":"2008-10-31T13:41:24Z","record":null,"id":"user-31994","followers":16,"followers_count":16,"created":"2008-10-31T13:41:24Z","language":"Common Lisp","pushed":"2012-05-20T16:15:19.958Z"},{"gravatar_id":"2843b1e49827c8a63ef3695778646263","score":10.281975,"type":"user","fullname":"vincent","name":"vincent","location":"","repos":6,"login":"vincentwv","public_repo_count":6,"username":"vincentwv","created_at":"2011-08-17T09:40:13Z","record":null,"id":"user-985725","followers":3,"followers_count":3,"created":"2011-08-17T09:40:13Z","language":"JavaScript","pushed":"2012-04-04T16:15:11.99Z"},{"gravatar_id":"2c7e6e3e5b099d9d9d3ceba6819ca864","score":10.244888,"type":"user","fullname":"Vincent Waller","repos":44,"name":"Vincent Waller","location":"Bend, OR","login":"vwall","public_repo_count":44,"username":"vwall","created_at":"2009-08-21T18:38:05Z","record":null,"id":"user-118020","followers":7,"followers_count":7,"created":"2009-08-21T18:38:05Z","language":"Ruby","pushed":"2012-06-26T19:16:08.156Z"},{"gravatar_id":"3a66abaecbdf3edc16b509b9f46a5128","score":10.102409,"type":"user","fullname":"Vincent","repos":3,"name":"Vincent","location":"Irvine, CA","login":"vmarquez","public_repo_count":3,"username":"vmarquez","created_at":"2010-10-05T06:35:10Z","record":null,"id":"user-427578","followers":3,"followers_count":3,"created":"2010-10-05T06:35:10Z","language":"VimL","pushed":"2012-06-26T23:15:29.811Z"},{"gravatar_id":"0fa1e7a2807be2aaf0bd66d688506199","score":10.076025,"type":"user","location":"Taipei/Taiwan ","name":"Vincent","repos":12,"fullname":"Vincent","login":"changyihsin","public_repo_count":12,"username":"changyihsin","created_at":"2012-01-10T07:09:41Z","record":null,"id":"user-1317650","followers":0,"followers_count":0,"created":"2012-01-10T07:09:41Z","language":"C","pushed":"2012-06-05T07:15:20.895Z"},{"gravatar_id":"a8d7a6a8449afeeeaf9583c80c9ce8fc","score":10.073187,"type":"user","fullname":"Vincent","name":"Vincent","location":"Rotterdam/NL","repos":11,"login":"vincent-psarga","public_repo_count":11,"username":"vincent-psarga","created_at":"2010-01-20T15:27:54Z","record":null,"id":"user-186248","followers":0,"followers_count":0,"created":"2010-01-20T15:27:54Z","language":"Python","pushed":"2011-10-19T10:15:15.782Z"},{"gravatar_id":"15f0181accb819d21fd149a30303d68c","score":10.065324,"type":"user","fullname":"Vincent Demeester","repos":38,"name":"Vincent Demeester","location":"Bordeaux, Aquitaine, France","login":"vdemeester","public_repo_count":38,"username":"vdemeester","created_at":"2008-04-11T06:56:22Z","record":null,"id":"user-6508","followers":8,"followers_count":8,"created":"2008-04-11T06:56:22Z","language":"Shell","pushed":"2012-06-26T21:15:36.396Z"},{"gravatar_id":"ea99573d979fd0a4e9503a1e9331e68a","score":10.0389385,"type":"user","name":"Vincent Cogne","location":"France, Paris","fullname":"Vincent Cogne","repos":20,"login":"xpac27","public_repo_count":20,"username":"xpac27","created_at":"2009-04-22T13:24:07Z","record":null,"id":"user-76585","followers":14,"followers_count":14,"created":"2009-04-22T13:24:07Z","language":"JavaScript","pushed":"2012-06-23T19:15:31.367Z"},{"gravatar_id":"cce588dc4e7a73ae4c284915ca4de863","score":10.007375,"type":"user","repos":11,"name":"VIncent","fullname":"VIncent","location":"Guangzhou,China","login":"ywdong","public_repo_count":11,"username":"ywdong","created_at":"2012-02-21T15:58:13Z","record":null,"id":"user-1457889","followers":0,"followers_count":0,"created":"2012-02-21T15:58:13Z","language":"Java","pushed":"2012-06-03T05:15:15.227Z"},{"gravatar_id":"06366cecc21b382cef72494f25bcbf3e","score":9.9387245,"type":"user","fullname":"Vincent","repos":10,"name":"Vincent","location":"","login":"zakora","public_repo_count":10,"username":"zakora","created_at":"2009-07-19T20:21:15Z","record":null,"id":"user-106620","followers":0,"followers_count":0,"created":"2009-07-19T20:21:15Z","language":"Python","pushed":"2012-06-27T20:15:10.991Z"},{"gravatar_id":"1255ca023ce9ca08c7354b619d562625","score":9.870074,"type":"user","location":"","name":"Vincent","repos":9,"fullname":"Vincent","login":"xuevin","public_repo_count":9,"username":"xuevin","created_at":"2010-06-04T01:46:36Z","record":null,"id":"user-296101","followers":0,"followers_count":0,"created":"2010-06-04T01:46:36Z","language":"Java","pushed":"2012-06-08T20:15:31.323Z"},{"gravatar_id":"94f3a1b384d13d1413422b6b64935d48","score":9.794494,"type":"user","fullname":"Vincent Anonymouse","repos":1,"name":"Vincent Anonymouse","location":"","login":"milomouse","public_repo_count":1,"username":"milomouse","created_at":"2009-04-23T05:11:40Z","record":null,"id":"user-76868","followers":19,"followers_count":19,"created":"2009-04-23T05:11:40Z","language":"Common Lisp","pushed":"2012-03-07T19:19:44.686Z"},{"gravatar_id":"0d131f51bf9526483afcac2dd0d3dad5","score":9.7643385,"type":"user","fullname":"Vincent Cabansag","repos":1,"name":"Vincent Cabansag","location":"Chicago, IL","login":"vcabansag","public_repo_count":1,"username":"vcabansag","created_at":"2011-09-19T15:10:07Z","record":null,"id":"user-1062352","followers":19,"followers_count":19,"created":"2011-09-19T15:10:07Z","language":"Ruby","pushed":"2012-06-27T15:15:38.916Z"},{"gravatar_id":"8c6856b195974b4e03bf9ce24f36ec16","score":9.6641245,"type":"user","repos":0,"name":"Vincent","fullname":"Vincent","location":"Santa Barbara, CA","login":"vincentalindogan","public_repo_count":0,"username":"vincentalindogan","created_at":"2011-03-27T18:47:05Z","record":null,"id":"user-693707","followers":2,"followers_count":2,"created":"2011-03-27T18:47:05Z","language":"","pushed":"2012-03-26T00:15:09.735Z"},{"gravatar_id":"fb56e63daee1464b77209410873f0070","score":9.6641245,"type":"user","name":"Will Vincent","location":"Twin Cities, MN","repos":0,"fullname":"Will Vincent","login":"willvincent","public_repo_count":0,"username":"willvincent","created_at":"2011-03-25T08:19:27Z","record":null,"id":"user-689891","followers":2,"followers_count":2,"created":"2011-03-25T08:19:27Z","language":"","pushed":"2012-05-14T19:16:38.835Z"},{"gravatar_id":"ed4127e0b58e6d0f753a987f895abebd","score":9.6641245,"type":"user","name":"vincent","fullname":"vincent","location":"Beijing China","repos":3,"login":"vincenttone","public_repo_count":3,"username":"vincenttone","created_at":"2011-11-08T01:48:51Z","record":null,"id":"user-1179536","followers":1,"followers_count":1,"created":"2011-11-08T01:48:51Z","language":"Python","pushed":"2012-05-28T11:15:18.397Z"},{"gravatar_id":"aa7c3566126ee339d33fee2c801662d9","score":9.6641245,"type":"user","fullname":"Vincent","name":"Vincent","repos":6,"location":"Valence/France","login":"vinzcoco","public_repo_count":6,"username":"vinzcoco","created_at":"2012-01-23T21:13:58Z","record":null,"id":"user-1372480","followers":0,"followers_count":0,"created":"2012-01-23T21:13:58Z","language":"PHP","pushed":"2012-06-20T10:15:18.217Z"},{"gravatar_id":"8493dbf44e9a5995b24165464f10df92","score":9.595475,"type":"user","location":"","name":"Vincent ","repos":5,"fullname":"Vincent ","login":"livewire195","public_repo_count":5,"username":"livewire195","created_at":"2012-03-27T16:10:49Z","record":null,"id":"user-1580359","followers":0,"followers_count":0,"created":"2012-03-27T16:10:49Z","language":"Python","pushed":"2012-06-09T07:15:13.208Z"},{"gravatar_id":"4667846b9c1e5e426ca958ac96882eb9","score":9.576109,"type":"user","name":"vincent","repos":4,"fullname":"vincent","location":"","login":"vincent5295","public_repo_count":4,"username":"vincent5295","created_at":"2012-02-29T03:00:42Z","record":null,"id":"user-1483932","followers":0,"followers_count":0,"created":"2012-02-29T03:00:42Z","language":"C","pushed":"2012-06-17T14:15:11.01Z"},{"gravatar_id":"032f1a85263f21ff1f013421967ef99e","score":9.558389,"type":"user","name":"Vincent Franco","repos":13,"fullname":"Vincent Franco","location":"Sacramento","login":"vinniefranco","public_repo_count":13,"username":"vinniefranco","created_at":"2010-07-10T20:05:55Z","record":null,"id":"user-328428","followers":14,"followers_count":14,"created":"2010-07-10T20:05:55Z","language":"Ruby","pushed":"2012-06-17T19:15:32.752Z"},{"gravatar_id":"5ed6fc41ebf7d88590a4c07eae074e97","score":9.558389,"type":"user","fullname":"Vincent Deloso","repos":25,"name":"Vincent Deloso","location":"","login":"Mitsugaru","public_repo_count":25,"username":"Mitsugaru","created_at":"2011-11-09T21:32:35Z","record":null,"id":"user-1184640","followers":10,"followers_count":10,"created":"2011-11-09T21:32:35Z","language":"Java","pushed":"2012-06-27T15:15:40.449Z"},{"gravatar_id":"051a209f0b3759e8e51680562955d555","score":9.556979,"type":"user","name":"Vincent","fullname":"Vincent","repos":1,"location":"","login":"vgametoo","public_repo_count":1,"username":"vgametoo","created_at":"2012-03-19T12:39:35Z","record":null,"id":"user-1552699","followers":1,"followers_count":1,"created":"2012-03-19T12:39:35Z","language":"","pushed":"2012-06-21T19:15:26.276Z"},{"gravatar_id":"a270083a603e945d156b9fa5ba7f1270","score":9.55321,"type":"user","fullname":"Vincent","name":"Vincent","location":"","repos":1,"login":"dominiquevincent","public_repo_count":1,"username":"dominiquevincent","created_at":"2010-05-05T13:45:32Z","record":null,"id":"user-265581","followers":1,"followers_count":1,"created":"2010-05-05T13:45:32Z","language":"JavaScript","pushed":"2010-11-12T07:15:10.614Z"},{"gravatar_id":"4136d955e297f2759ac728b6d1701f36","score":9.55321,"type":"user","name":"Vincent","repos":1,"fullname":"Vincent","location":"","login":"vincentamari","public_repo_count":1,"username":"vincentamari","created_at":"2011-03-14T11:02:58Z","record":null,"id":"user-668429","followers":1,"followers_count":1,"created":"2011-03-14T11:02:58Z","language":"JavaScript","pushed":"2012-06-18T07:15:51.072Z"},{"gravatar_id":"4b44c097908d14610ba01790b5fc975c","score":9.526825,"type":"user","fullname":"Vincent","name":"Vincent","location":"","repos":4,"login":"ciex","public_repo_count":4,"username":"ciex","created_at":"2010-05-16T15:08:50Z","record":null,"id":"user-278463","followers":0,"followers_count":0,"created":"2010-05-16T15:08:50Z","language":"Python","pushed":"2012-04-16T15:15:29.943Z"},{"gravatar_id":"010564c5d5894e8e22ba40de45917566","score":9.526825,"type":"user","fullname":"Vincent","name":"Vincent","repos":1,"location":"The Netherlands","login":"Vinnl","public_repo_count":1,"username":"Vinnl","created_at":"2008-04-02T18:24:21Z","record":null,"id":"user-4251","followers":1,"followers_count":1,"created":"2008-04-02T18:24:21Z","language":"","pushed":"2012-05-04T14:15:33.377Z"},{"gravatar_id":"4b86e791cadf9cc2c0a4a7bfc32d9e9e","score":9.526825,"type":"user","fullname":"Vincent","name":"Vincent","repos":1,"location":"","login":"monkeymajiks","public_repo_count":1,"username":"monkeymajiks","created_at":"2012-01-25T22:10:51Z","record":null,"id":"user-1380497","followers":1,"followers_count":1,"created":"2012-01-25T22:10:51Z","language":"","pushed":"2012-06-12T11:15:31.686Z"},{"gravatar_id":"916769ca776c1e7576bcb7cd34be7391","score":9.526825,"type":"user","name":"Vincent","location":"","fullname":"Vincent","repos":4,"login":"vgauthier","public_repo_count":4,"username":"vgauthier","created_at":"2012-02-25T20:07:22Z","record":null,"id":"user-1473920","followers":0,"followers_count":0,"created":"2012-02-25T20:07:22Z","language":"Python","pushed":"2012-06-23T16:15:14.419Z"},{"gravatar_id":"b2f52d3a1a83d0fa6be6705d322bc1de","score":9.523987,"type":"user","name":"Vincent","location":"France","repos":0,"fullname":"Vincent","login":"Vincent-P","public_repo_count":0,"username":"Vincent-P","created_at":"2011-07-28T13:51:46Z","record":null,"id":"user-944506","followers":1,"followers_count":1,"created":"2011-07-28T13:51:46Z","language":"","pushed":"2012-05-12T09:15:15.844Z"},{"gravatar_id":"fc24888b3f4d2a85348e7bbded2f4100","score":9.488329,"type":"user","fullname":"Vincent","repos":0,"name":"Vincent","location":"Amsterdam","login":"viancen","public_repo_count":0,"username":"viancen","created_at":"2012-02-15T08:22:55Z","record":null,"id":"user-1439145","followers":1,"followers_count":1,"created":"2012-02-15T08:22:55Z","language":"","pushed":"2012-06-26T21:15:34.446Z"},{"gravatar_id":"8682561c2989398cda139818390a25c4","score":9.48456,"type":"user","name":"Vincent","repos":0,"fullname":"Vincent","location":"Singapore","login":"vsputra","public_repo_count":0,"username":"vsputra","created_at":"2010-07-19T17:38:53Z","record":null,"id":"user-337548","followers":1,"followers_count":1,"created":"2010-07-19T17:38:53Z","language":"","pushed":"2012-06-19T03:15:15.214Z"},{"gravatar_id":"d3d7715ddc9d2c98dc0acca41026e3ec","score":9.48079,"type":"user","name":"Vincent","location":"Melbourne/Australia","fullname":"Vincent","repos":3,"login":"vincentwongso","public_repo_count":3,"username":"vincentwongso","created_at":"2012-01-03T00:57:50Z","record":null,"id":"user-1300030","followers":0,"followers_count":0,"created":"2012-01-03T00:57:50Z","language":"JavaScript","pushed":"2012-05-10T23:15:22.719Z"},{"gravatar_id":"207cf37afe1b8de78411201832496eb3","score":9.48079,"type":"user","name":"vincent","location":"bordeaux","fullname":"vincent","repos":3,"login":"guillaumevincent","public_repo_count":3,"username":"guillaumevincent","created_at":"2011-07-28T06:59:30Z","record":null,"id":"user-943762","followers":0,"followers_count":0,"created":"2011-07-28T06:59:30Z","language":"Python","pushed":"2012-06-22T12:15:17.467Z"},{"gravatar_id":"fc35e4705d430b49a2e1f962e73d567f","score":9.458175,"type":"user","fullname":"Vincent","repos":0,"name":"Vincent","location":"","login":"vn","public_repo_count":0,"username":"vn","created_at":"2012-01-20T23:48:32Z","record":null,"id":"user-1361165","followers":1,"followers_count":1,"created":"2012-01-20T23:48:32Z","language":"","pushed":"2012-06-28T11:15:11.679Z"},{"gravatar_id":"c34027ae138bf86507c5a36a6b3bf3a5","score":9.421089,"type":"user","name":"Vincent Lannurien","fullname":"Vincent Lannurien","location":"France","repos":8,"login":"addikt1ve","public_repo_count":8,"username":"addikt1ve","created_at":"2008-09-01T13:41:54Z","record":null,"id":"user-22757","followers":15,"followers_count":15,"created":"2008-09-01T13:41:54Z","language":"Shell","pushed":"2011-04-29T22:15:09.273Z"},{"gravatar_id":"226e40fdc55d4597a46279296a616384","score":9.419679,"type":"user","location":"Denver","name":"Vincent","repos":2,"fullname":"Vincent","login":"vincentdavis","public_repo_count":2,"username":"vincentdavis","created_at":"2010-03-29T12:06:25Z","record":null,"id":"user-232564","followers":0,"followers_count":0,"created":"2010-03-29T12:06:25Z","language":"VimL","pushed":"2012-06-05T19:15:38.974Z"},{"gravatar_id":"f6e9045bb7bf8b000eaf62caffbd17ab","score":9.41591,"type":"user","fullname":"Vincent","repos":2,"name":"Vincent","location":"Mont sainte anne","login":"vincentvent","public_repo_count":2,"username":"vincentvent","created_at":"2011-08-10T01:40:18Z","record":null,"id":"user-970338","followers":0,"followers_count":0,"created":"2011-08-10T01:40:18Z","language":"","pushed":"2012-03-08T14:15:38.332Z"},{"gravatar_id":"dfac99df6d6b570feb68f0b88f720a80","score":9.41214,"type":"user","name":"vincent","repos":2,"fullname":"vincent","location":"China, Shenzhen, Nanshan","login":"chenws","public_repo_count":2,"username":"chenws","created_at":"2012-01-03T16:35:05Z","record":null,"id":"user-1301573","followers":0,"followers_count":0,"created":"2012-01-03T16:35:05Z","language":"C","pushed":"2012-05-02T09:15:37.412Z"},{"gravatar_id":"1cc07aa5b421181a130efdd61112ec3e","score":9.403019,"type":"user","fullname":"Vincent S","name":"Vincent S","repos":1,"location":"","login":"VincentS","public_repo_count":1,"username":"VincentS","created_at":"2011-08-23T12:33:31Z","record":null,"id":"user-998872","followers":0,"followers_count":0,"created":"2011-08-23T12:33:31Z","language":"Ruby","pushed":"2011-08-23T13:15:25.062Z"},{"gravatar_id":"304da7fc1421e25a18b95b784baf9539","score":9.389524,"type":"user","name":"Vincent","fullname":"Vincent","location":"","repos":2,"login":"copyshaft","public_repo_count":2,"username":"copyshaft","created_at":"2009-12-04T03:29:28Z","record":null,"id":"user-161704","followers":0,"followers_count":0,"created":"2009-12-04T03:29:28Z","language":"","pushed":"2010-05-24T00:25:15.443Z"},{"gravatar_id":"838409afe0def35c03da9757148df790","score":9.389524,"type":"user","name":"Vincent","repos":2,"fullname":"Vincent","location":"Paris","login":"vinceofdrink","public_repo_count":2,"username":"vinceofdrink","created_at":"2011-07-04T11:24:46Z","record":null,"id":"user-893359","followers":0,"followers_count":0,"created":"2011-07-04T11:24:46Z","language":"C","pushed":"2012-01-12T15:15:29.207Z"},{"gravatar_id":"1adf0d0b91278d02e88627ffbdd1c65a","score":9.389524,"type":"user","repos":2,"name":"Vincent","fullname":"Vincent","location":"China","login":"wenzheng","public_repo_count":2,"username":"wenzheng","created_at":"2011-08-11T12:35:23Z","record":null,"id":"user-973811","followers":0,"followers_count":0,"created":"2011-08-11T12:35:23Z","language":"","pushed":"2012-02-23T15:15:48.56Z"},{"score":9.389524,"type":"user","fullname":"Vincent","name":"Vincent","location":"France","repos":2,"login":"ziefno","public_repo_count":2,"username":"ziefno","created_at":"2012-03-10T14:44:03Z","record":null,"id":"user-1523263","followers":0,"followers_count":0,"created":"2012-03-10T14:44:03Z","language":"","pushed":"2012-03-10T22:15:17.63Z"},{"gravatar_id":"95bcdb7789b7c0481aea3cf55b5bb987","score":9.389524,"type":"user","name":"Vincent","location":"","fullname":"Vincent","repos":2,"login":"vincentm8","public_repo_count":2,"username":"vincentm8","created_at":"2010-09-12T19:26:07Z","record":null,"id":"user-396662","followers":0,"followers_count":0,"created":"2010-09-12T19:26:07Z","language":"PHP","pushed":"2012-04-16T08:15:17.843Z"},{"gravatar_id":"811d7edddfcb7e652f38c7e56d51ea51","score":9.389524,"type":"user","fullname":"Vincent","repos":2,"name":"Vincent","location":"HCM","login":"vnoob","public_repo_count":2,"username":"vnoob","created_at":"2011-04-15T15:26:21Z","record":null,"id":"user-731797","followers":0,"followers_count":0,"created":"2011-04-15T15:26:21Z","language":"","pushed":"2012-06-02T04:15:19.714Z"},{"gravatar_id":"bf4442de23d120becefaa556f41562f2","score":9.389524,"type":"user","name":"Vincente","repos":2,"fullname":"Vincente","location":"California","login":"vciancio","public_repo_count":2,"username":"vciancio","created_at":"2011-12-01T03:03:38Z","record":null,"id":"user-1232406","followers":0,"followers_count":0,"created":"2011-12-01T03:03:38Z","language":"Java","pushed":"2012-06-19T00:15:59.771Z"},{"gravatar_id":"d6288a0b3a370e4db4ea27adbeb74a30","score":9.378824,"type":"user","repos":10,"name":"Blanchon Vincent","fullname":"Blanchon Vincent","location":"Sophia Antipolis, France","login":"blanchonvincent","public_repo_count":10,"username":"blanchonvincent","created_at":"2012-03-27T17:07:35Z","record":null,"id":"user-1580512","followers":14,"followers_count":14,"created":"2012-03-27T17:07:35Z","language":"PHP","pushed":"2012-06-04T10:15:20.206Z"},{"gravatar_id":"667176b96540d167eb74f473c9aea5f7","score":9.378824,"type":"user","name":"Vincent Voyer","location":"Paris, france","fullname":"Vincent Voyer","repos":13,"login":"vvo","public_repo_count":13,"username":"vvo","created_at":"2009-09-06T14:28:06Z","record":null,"id":"user-123822","followers":13,"followers_count":13,"created":"2009-09-06T14:28:06Z","language":"JavaScript","pushed":"2012-06-26T17:15:45.365Z"},{"gravatar_id":"71e56904f65a1ad1f3a178062fad6897","score":9.370159,"type":"user","fullname":"Vincent","name":"Vincent","repos":1,"location":"France, Tarn","login":"Vincent81","public_repo_count":1,"username":"Vincent81","created_at":"2011-08-05T21:22:58Z","record":null,"id":"user-962113","followers":0,"followers_count":0,"created":"2011-08-05T21:22:58Z","language":"","pushed":"2011-09-06T14:15:24.224Z"},{"gravatar_id":"014023e8bd4f74bdd5dd949f9afcf9c9","score":9.34726,"type":"user","name":"Vincent","fullname":"Vincent","location":"","repos":1,"login":"Vincentbosch","public_repo_count":1,"username":"Vincentbosch","created_at":"2011-05-12T14:48:43Z","record":null,"id":"user-784014","followers":0,"followers_count":0,"created":"2011-05-12T14:48:43Z","language":"","pushed":"2011-05-17T14:15:16.145Z"},{"gravatar_id":"86f44ee7aef87c7df23227ed99af157c","score":9.34726,"type":"user","name":"vincent","location":"","repos":1,"fullname":"vincent","login":"legarconjoure","public_repo_count":1,"username":"legarconjoure","created_at":"2011-04-04T12:20:19Z","record":null,"id":"user-708274","followers":0,"followers_count":0,"created":"2011-04-04T12:20:19Z","language":"","pushed":"2012-05-14T08:15:24.999Z"},{"gravatar_id":"fceb28e90061e831277e161d5e85757a","score":9.327894,"type":"user","repos":0,"name":"Vincent","fullname":"Vincent","location":"","login":"vincent7894","public_repo_count":0,"username":"vincent7894","created_at":"2011-12-10T20:26:26Z","record":null,"id":"user-1254570","followers":0,"followers_count":0,"created":"2011-12-10T20:26:26Z","language":"","pushed":"2012-03-29T18:15:22.448Z"},{"gravatar_id":"8a817ae82ab5e742c6aca7548e39ab65","score":9.327894,"type":"user","repos":0,"name":"Vincent","fullname":"Vincent","location":"","login":"vincent73000","public_repo_count":0,"username":"vincent73000","created_at":"2011-07-30T13:45:47Z","record":null,"id":"user-948600","followers":0,"followers_count":0,"created":"2011-07-30T13:45:47Z","language":"","pushed":"2012-06-04T11:15:21.524Z"},{"gravatar_id":"d98356664e29463bdc8d8e77095a80bd","score":9.320875,"type":"user","name":"Vincent","fullname":"Vincent","location":"Shanghai, China","repos":1,"login":"ttyio","public_repo_count":1,"username":"ttyio","created_at":"2010-08-16T06:35:46Z","record":null,"id":"user-365590","followers":0,"followers_count":0,"created":"2010-08-16T06:35:46Z","language":"VimL","pushed":"2010-11-08T03:15:12.032Z"},{"gravatar_id":"74ccd2db6dd9211393d4bd62408c6c13","score":9.320875,"type":"user","fullname":"vincent","repos":1,"name":"vincent","location":"","login":"tean60","public_repo_count":1,"username":"tean60","created_at":"2011-01-20T06:55:22Z","record":null,"id":"user-574055","followers":0,"followers_count":0,"created":"2011-01-20T06:55:22Z","language":"","pushed":"2011-06-10T06:15:11.093Z"},{"gravatar_id":"3526439448f2288e0aa5f9456b6aad4b","score":9.320875,"type":"user","name":"Will Vincent","fullname":"Will Vincent","repos":1,"location":"","login":"tcindie","public_repo_count":1,"username":"tcindie","created_at":"2010-07-02T18:50:26Z","record":null,"id":"user-321392","followers":0,"followers_count":0,"created":"2010-07-02T18:50:26Z","language":"PHP","pushed":"2011-07-01T17:15:14.856Z"},{"gravatar_id":"3aeafe584ef75baac1976c910f069752","score":9.320875,"type":"user","name":"vincent","fullname":"vincent","location":"","repos":1,"login":"vincentye38","public_repo_count":1,"username":"vincentye38","created_at":"2011-01-27T07:37:41Z","record":null,"id":"user-586072","followers":0,"followers_count":0,"created":"2011-01-27T07:37:41Z","language":"","pushed":"2012-04-05T05:15:16.89Z"},{"gravatar_id":"49a3fcbf452d1e9d85259d8e1f510934","score":9.320875,"type":"user","repos":1,"name":"Vincent","location":"Rouen","fullname":"Vincent","login":"pasificking","public_repo_count":1,"username":"pasificking","created_at":"2012-03-30T09:07:51Z","record":null,"id":"user-1589894","followers":0,"followers_count":0,"created":"2012-03-30T09:07:51Z","language":"","pushed":"2012-04-10T09:15:35.441Z"},{"gravatar_id":"c3ca1e10cdb67296511fdb480b4acdf0","score":9.320875,"type":"user","name":"Vincent","repos":1,"fullname":"Vincent","location":"","login":"Bpbannerproject","public_repo_count":1,"username":"Bpbannerproject","created_at":"2012-05-07T19:08:32Z","record":null,"id":"user-1714420","followers":0,"followers_count":0,"created":"2012-05-07T19:08:32Z","language":"","pushed":"2012-05-16T06:15:09.874Z"},{"gravatar_id":"259619f6b128ff8886bffa31ea52ab35","score":9.320875,"type":"user","fullname":"Vincent","repos":1,"name":"Vincent","location":"Nanjing, China","login":"farawayboat","public_repo_count":1,"username":"farawayboat","created_at":"2011-09-23T16:35:39Z","record":null,"id":"user-1074475","followers":0,"followers_count":0,"created":"2011-09-23T16:35:39Z","language":"","pushed":"2012-06-28T07:15:16.399Z"},{"gravatar_id":"6b3cc4c0504401ebb74ecac20cec5fbb","score":9.301509,"type":"user","fullname":"Vincent","name":"Vincent","location":"","repos":0,"login":"vincent7842","public_repo_count":0,"username":"vincent7842","created_at":"2012-03-17T14:30:39Z","record":null,"id":"user-1547379","followers":0,"followers_count":0,"created":"2012-03-17T14:30:39Z","language":"","pushed":"2012-03-17T15:15:16.619Z"},{"gravatar_id":"886a562bd3cc225ec3250650d8cdf4bd","score":9.297433,"type":"user","name":"Zhiqiang Zhao","location":"Hangzhou, China","fullname":"Zhiqiang Zhao","repos":9,"login":"vincent-zhao","public_repo_count":9,"username":"vincent-zhao","created_at":"2012-01-31T03:18:49Z","record":null,"id":"user-1393423","followers":23,"followers_count":23,"created":"2012-01-31T03:18:49Z","language":"JavaScript","pushed":"2012-06-23T07:15:16.545Z"},{"gravatar_id":"4c7ff78c68f09a6294059d17df823fbf","score":9.291653,"type":"user","name":"Vincent","repos":0,"fullname":"Vincent","location":"Belgium","login":"VincentU","public_repo_count":0,"username":"VincentU","created_at":"2012-03-21T06:39:02Z","record":null,"id":"user-1559921","followers":0,"followers_count":0,"created":"2012-03-21T06:39:02Z","language":"","pushed":"2012-05-16T18:15:22.652Z"},{"gravatar_id":"9ec9ad37e9ab75436de0b3a0ce971dbe","score":9.283789,"type":"user","name":"Vincent Tencé","location":"Laval, Qc Canada","fullname":"Vincent Tencé","repos":12,"login":"testinfected","public_repo_count":12,"username":"testinfected","created_at":"2009-09-18T23:30:38Z","record":null,"id":"user-128804","followers":13,"followers_count":13,"created":"2009-09-18T23:30:38Z","language":"Java","pushed":"2012-06-23T19:16:06.24Z"},{"gravatar_id":"30d318bdf8e6a1d013c1bd8c5e9749a0","score":9.282379,"type":"user","name":"Vincent","fullname":"Vincent","location":"Coeur d'Alene ID","repos":0,"login":"thinkeryvin","public_repo_count":0,"username":"thinkeryvin","created_at":"2009-09-22T06:48:36Z","record":null,"id":"user-129806","followers":0,"followers_count":0,"created":"2009-09-22T06:48:36Z","language":"","pushed":"2011-03-30T07:15:09.25Z"},{"gravatar_id":"160934525d484d9269d3f5be05ff26da","score":9.282379,"type":"user","fullname":"Vincent","name":"Vincent","repos":0,"location":"Zoetermeer","login":"vinnyb","public_repo_count":0,"username":"vinnyb","created_at":"2010-08-16T13:04:14Z","record":null,"id":"user-365924","followers":0,"followers_count":0,"created":"2010-08-16T13:04:14Z","language":"","pushed":"2012-05-07T09:15:11.135Z"},{"gravatar_id":"e36b0ea5f740b3545bb9c39dcf4e5110","score":9.282379,"type":"user","fullname":"vincent","name":"vincent","location":"","repos":0,"login":"vinc3nt","public_repo_count":0,"username":"vinc3nt","created_at":"2011-07-01T11:34:07Z","record":null,"id":"user-888545","followers":0,"followers_count":0,"created":"2011-07-01T11:34:07Z","language":"","pushed":"2012-05-22T21:15:13.084Z"},{"gravatar_id":"953b83ade35b99fb82c2a6e134b2329a","score":9.27861,"type":"user","name":"vincent","location":"Montpellier, France","fullname":"vincent","repos":0,"login":"narf","public_repo_count":0,"username":"narf","created_at":"2010-10-28T16:11:35Z","record":null,"id":"user-458263","followers":0,"followers_count":0,"created":"2010-10-28T16:11:35Z","language":"","pushed":"2012-05-21T08:15:26.631Z"},{"gravatar_id":"a6c32849daa0d165f480bfa612116767","score":9.27861,"type":"user","name":"Vincent","location":"","repos":0,"fullname":"Vincent","login":"vincentveri","public_repo_count":0,"username":"vincentveri","created_at":"2011-05-03T08:59:39Z","record":null,"id":"user-765248","followers":0,"followers_count":0,"created":"2011-05-03T08:59:39Z","language":"","pushed":"2012-05-25T18:15:20.565Z"},{"gravatar_id":"23284aaf57ee593baa81a3d953386021","score":9.27861,"type":"user","repos":0,"name":"Vincent","fullname":"Vincent","location":"","login":"vrafols","public_repo_count":0,"username":"vrafols","created_at":"2012-05-28T03:31:24Z","record":null,"id":"user-1784314","followers":0,"followers_count":0,"created":"2012-05-28T03:31:24Z","language":"","pushed":"2012-06-04T07:15:19.793Z"},{"gravatar_id":"24eb2af05f128cbf59314bddf59f3ed9","score":9.27861,"type":"user","name":"Vincent","fullname":"Vincent","repos":0,"location":"","login":"vinc38","public_repo_count":0,"username":"vinc38","created_at":"2012-01-18T08:14:07Z","record":null,"id":"user-1343597","followers":0,"followers_count":0,"created":"2012-01-18T08:14:07Z","language":"","pushed":"2012-06-14T14:15:37.571Z"},{"gravatar_id":"5a60bf71026c317ff9cacf9cce842924","score":9.27484,"type":"user","repos":0,"name":"Vincent","fullname":"Vincent","location":"","login":"Squee","public_repo_count":0,"username":"Squee","created_at":"2009-11-18T13:16:18Z","record":null,"id":"user-154841","followers":0,"followers_count":0,"created":"2009-11-18T13:16:18Z","language":"","pushed":"2011-11-15T17:15:15.363Z"},{"gravatar_id":"747d136a83a1e1fd26b5f001eb632d2c","score":9.252225,"type":"user","name":"Vincent","fullname":"Vincent","location":"","repos":0,"login":"msr911","public_repo_count":0,"username":"msr911","created_at":"2010-02-11T10:01:05Z","record":null,"id":"user-201682","followers":0,"followers_count":0,"created":"2010-02-11T10:01:05Z","language":"","pushed":"2010-05-23T23:30:14.272Z"},{"gravatar_id":"f09b6aab5c78a879998248e76e9e80b8","score":9.252225,"type":"user","name":"vincent","fullname":"vincent","location":"","repos":0,"login":"vincwu","public_repo_count":0,"username":"vincwu","created_at":"2009-05-02T14:51:55Z","record":null,"id":"user-80223","followers":0,"followers_count":0,"created":"2009-05-02T14:51:55Z","language":"","pushed":"2011-03-22T06:15:08.705Z"}]} + diff --git a/test/ReplayData/Repository.testLegacySearchIssues.txt b/test/ReplayData/Repository.testLegacySearchIssues.txt new file mode 100644 index 00000000..e5f356e0 --- /dev/null +++ b/test/ReplayData/Repository.testLegacySearchIssues.txt @@ -0,0 +1,5 @@ +GET /legacy/issues/search/jacquev6/PyGithub/open/search {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('content-length', '875'), ('x-ratelimit-remaining', '4990'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"1178425a2730e43d21323c7e130c863c"'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Fri, 29 Jun 2012 11:38:23 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"issues":[{"number":49,"gravatar_id":"9be6ba907be1740213b69422fdf52b57","updated_at":"2012-06-28T14:13:25-07:00","user":"kukuts","votes":0,"html_url":"https://github.com/jacquev6/PyGithub/issues/49","position":1.0,"comments":4,"title":"Support new Search API","labels":["Functionalities","RequestedByUser"],"created_at":"2012-06-21T05:27:38-07:00","state":"open","body":"New API ported from v2 but i have trouble with adopting ask's library for v2 API to support v3 style for searching. \nhttp://developer.github.com/v3/search/\n\nIts not described in the page about parameters that search for repos API supports.\nThey are same as in v2 API, you can look them in ask's library.\nIn v2 was like that https://github.com/api/v2/json/repos/search/testing?start_page=2&language=Python\nIn v3 is https://api.github.com/legacy/repos/search/testing?start_page=2&language=Python"}]} + diff --git a/test/Repository.py b/test/Repository.py index 70220281..ea261673 100644 --- a/test/Repository.py +++ b/test/Repository.py @@ -333,5 +333,5 @@ class Repository( Framework.TestCase ): def testGetPullsWithArguments( self ): self.assertListKeyEqual( self.repo.get_pulls( "closed" ), lambda p: p.id, [ 1448168, 1436310, 1436215 ] ) - def testSearchIssues( self ): - self.assertListKeyEqual( self.repo.search_issues( "open", "search" ), lambda i: i.title, [ "Support new Search API" ] ) + def testLegacySearchIssues( self ): + self.assertListKeyEqual( self.repo.legacy_search_issues( "open", "search" ), lambda i: i.title, [ "Support new Search API" ] ) From 7e695132fc153f25976df82678e3cfece4c57df9 Mon Sep 17 00:00:00 2001 From: Vincent Jacques Date: Fri, 29 Jun 2012 18:10:12 +0100 Subject: [PATCH 08/10] Add a (failing) test for legacy pagination --- test/Github.py | 3 +++ .../Github.testLegacySearchReposPagination.txt | 15 +++++++++++++++ 2 files changed, 18 insertions(+) create mode 100644 test/ReplayData/Github.testLegacySearchReposPagination.txt diff --git a/test/Github.py b/test/Github.py index 172f1059..5d530b3d 100644 --- a/test/Github.py +++ b/test/Github.py @@ -22,6 +22,9 @@ class Github( Framework.TestCase ): self.assertListKeyBegin( repos, lambda r: r.name, [ "octokit", "github-v3-api", "github_v3_api" ] ) self.assertEqual( repos[ 0 ].full_name, "pengwynn/octokit" ) + def testLegacySearchReposPagination( self ): + repos = self.g.legacy_search_repos( "document" ) + self.assertListKeyBegin( repos, lambda r: r.name, [ "git", "nimbus", "kss", "sstoolkit", "lawnchair", "appledoc", "jQ.Mobi", "ipython", "mongoengine", "ravendb", "substance", "symfony-docs", "JavaScript-Garden", "DocSets-for-iOS", "yard", "phpDocumentor2", "phpsh", "Tangle", "Ingredients", "documentjs", "xhp", "couchdb-lucene", "dox", "magento2", "javascriptmvc", "FastPdfKit", "roar", "DocumentUp", "NoRM", "jsdoc", "tagger", "mongodb-csharp", "php-github-api", "beautiful-docs", "mongodb-odm", "iodocs", "seesaw", "bcx-api", "developer.github.com", "amqp", "docsplit", "pycco", "standards-and-practices", "tidy-html5", "redis-doc", "tomdoc", "docs", "flourish", "userguide", "swagger-ui", "rfc", "Weasel-Diesel", "yuidoc", "apigen", "document-viewer", "develop.github.com", "Shanty-Mongo", "PTShowcaseViewController", "gravatar_image_tag", "api-wow-docs", "mongoid-tree", "safari-json-formatter", "mayan", "orm-documentation", "jsfiddle-docs-alpha", "core", "documentcloud", "flexible-nav", "writeCapture", "readium", "xmldocument", "Documentation-Examples", "grails-doc", "stdeb", "aws-autoscaling", "voteable_mongo", "review", "spreadsheet_on_rails", "UKSyntaxColoredTextDocument", "mandango", "bdoc", "Documentation", "documents.com", "rghost", "ticket_mule", "vendo", "khan-api", "spring-data-document-examples", "rspec_api_documentation", "axlsx", "phpdox", "documentation", "Sami", "innershiv", "doxyclean", "documents", "rvm-site", "jqapi", "documentation", "hadoopy", "VichUploaderBundle", "pdoc", "documentation", "wii-js", "oss-docs", "scala-maven-plugin", "Documents", "documenter", "behemoth", "documentation", "documentation", "propelorm.github.com", "Kobold2D", "AutoObjectDocumentation", "php-mongodb-admin", "django-mongokit", "puppet-docs", "docs", "Document", "vendorer", "symfony1-docs", "shocco", "documentation", "jog", "docs", "documentation", "documentation", "documentation", "documentation", "Documentation", "documentation", "documentation", "phpunit-documentation", "ADCtheme", "NelmioApiDocBundle", "iCloud-Singleton-CloudMe", "Documentation", "document", "document_mapper", "heroku-docs", "couchdb-odm", "documentation", "documentation", "document", "documentation", "NanoStore", "documentation", "Documentation", "documentation", "Documentation", "documentation", "document", "documentation", "documentation", "Documentation", "Documentation", "grendel", "ceylon-compiler", "mbtiles-spec", "documentation", "documents", "documents", "Documents", "Documentation", "documentation", "Documentation", "documentation", "documents", "Documentation", "documentation", "documentation", "documents", "Documentation", "documentation", "documenter", "documentation", "documents", "Documents", "documents", "documents", "documentation", "Document", "document", "rdoc", "mongoid_token", "travis-ci.github.com", "Documents", "Documents", "documents", "Document", "Documentation", "documents", "Documents", "Documentation", "documents", "documents", "documents", "documentation", "Documents", "Document", "documents", "documents", "Documentation", "Documentation", "Document", "documents", "Documents", "Documents", "Documentation", "Documents", "documents", "Documents", "document", "documents", "Documentation", "Documents", "documents", "documents", "Documents", "documents", "Documentation", "documentation", "Document", "Documents", "documents", "documents", "documents", "Documentation", "Documentation", "Documents", "Documents", "Documents", "Documenter", "document", "Documentation", "Documents", "Documents", "documentation", "documentation", "Document", "Documents", "Documentation", "Documentation", "Documents", "documents", "Documents", "document", "documentation", "Documents", "documentation", "documentation", "documentation", "Documentation", "Documents", "Documents", "documentation", "Documents", "Documents", "documentation", "documentation", "documents", "Documentation", "documents", "documentation", "Documentation", "Documents", "documentation", "documentation", "documents", "documentation", "Umbraco5Docs", "documents", "Documents", "Documentation", "documents", "document", "documents", "document", "documents", "documentation", "Documents", "documents", "document", "Documents", "Documentation", "Documentation", "documentation", "Documentation", "document", "documentation", "documents", "documents", "Documentations", "document", "documentation", "Documentation", "Document", "Documents", "Documents", "Document" ] ) def testLegacySearchReposWithLanguage( self ): repos = self.g.legacy_search_repos( "document", language = "Python" ) diff --git a/test/ReplayData/Github.testLegacySearchReposPagination.txt b/test/ReplayData/Github.testLegacySearchReposPagination.txt new file mode 100644 index 00000000..ae0801d3 --- /dev/null +++ b/test/ReplayData/Github.testLegacySearchReposPagination.txt @@ -0,0 +1,15 @@ +GET /legacy/repos/search/document {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4983'), ('content-length', '62686'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"119efa369d825b108cebd210eb1381cb"'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Fri, 29 Jun 2012 11:52:38 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"repositories":[{"type":"repo","created_at":"2008-07-23T07:21:26-07:00","score":240.037,"owner":"git","followers":2455,"open_issues":4,"organization":"git","created":"2008-07-23T07:21:26-07:00","homepage":"This is a publish-only repository and all pull requests are ignored. Please follow Documentation/SubmittingPatches procedure for any of your improvements.","has_issues":false,"has_downloads":true,"language":"C","pushed_at":"2012-06-28T16:36:34-07:00","forks":619,"fork":false,"size":33656,"name":"git","url":"https://github.com/git/git","description":"Git Source Code Mirror - This is a publish-only repository and all pull requests are ignored. Please follow Documentation/SubmittingPatches procedure for any of your improvements.","private":false,"username":"git","pushed":"2012-06-28T16:36:34-07:00","watchers":2455,"has_wiki":false},{"type":"repo","created_at":"2011-06-09T08:01:53-07:00","score":160.90036,"owner":"jverkoey","followers":1643,"open_issues":17,"created":"2011-06-09T08:01:53-07:00","homepage":"nimbuskit.info","has_issues":true,"has_downloads":true,"language":"Objective-C","pushed_at":"2012-06-28T10:14:09-07:00","forks":190,"fork":false,"size":19296,"name":"nimbus","url":"https://github.com/jverkoey/nimbus","description":"The iOS framework whose growth is bounded by its documentation.","private":false,"username":"jverkoey","pushed":"2012-06-28T10:14:09-07:00","watchers":1643,"has_wiki":true},{"type":"repo","created_at":"2011-11-25T10:03:29-08:00","score":132.56409,"owner":"kneath","followers":1352,"open_issues":17,"created":"2011-11-25T10:03:29-08:00","homepage":"warpspire.com/kss","has_issues":true,"has_downloads":true,"language":"Ruby","pushed_at":"2012-05-16T00:19:42-07:00","forks":68,"fork":false,"size":132,"name":"kss","url":"https://github.com/kneath/kss","description":"A methodology for documenting CSS and generating styleguides","private":false,"username":"kneath","pushed":"2012-05-16T00:19:42-07:00","watchers":1352,"has_wiki":false},{"type":"repo","created_at":"2010-08-19T12:17:22-07:00","score":121.16062,"owner":"samsoffes","followers":1237,"open_issues":36,"created":"2010-08-19T12:17:22-07:00","homepage":"http://sstoolk.it","has_issues":true,"master_branch":"master","has_downloads":true,"language":"Objective-C","pushed_at":"2012-06-14T22:25:20-07:00","forks":124,"fork":false,"size":460,"name":"sstoolkit","url":"https://github.com/samsoffes/sstoolkit","description":"A collection of well-documented iOS classes for making life easier","private":false,"username":"samsoffes","pushed":"2012-06-14T22:25:20-07:00","watchers":1237,"has_wiki":false},{"type":"repo","created_at":"2009-07-08T19:09:35-07:00","score":105.90017,"owner":"brianleroux","followers":1079,"open_issues":38,"created":"2009-07-08T19:09:35-07:00","homepage":"http://brianleroux.github.com/lawnchair","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2012-05-29T16:27:29-07:00","forks":132,"fork":false,"size":300,"name":"lawnchair","url":"https://github.com/brianleroux/lawnchair","description":"A lightweight clientside JSON document store,","private":false,"username":"brianleroux","pushed":"2012-05-29T16:27:29-07:00","watchers":1079,"has_wiki":true},{"type":"repo","created_at":"2009-04-24T00:19:31-07:00","score":91.45697,"owner":"tomaz","followers":932,"open_issues":50,"created":"2009-04-24T00:19:31-07:00","homepage":"http://gentlebytes.com","has_issues":true,"has_downloads":false,"language":"Objective-C","pushed_at":"2012-06-26T07:51:09-07:00","forks":79,"fork":false,"size":604,"name":"appledoc","url":"https://github.com/tomaz/appledoc","description":"Objective-c code Apple style documentation set generator.","private":false,"username":"tomaz","pushed":"2012-06-26T07:51:09-07:00","watchers":932,"has_wiki":false},{"type":"repo","created_at":"2011-12-21T08:16:30-08:00","score":85.80408,"owner":"appMobi","followers":876,"open_issues":4,"organization":"appMobi","created":"2011-12-21T08:16:30-08:00","homepage":"http://www.jqmobi.com","has_issues":false,"has_downloads":true,"language":"JavaScript","pushed_at":"2012-06-22T06:25:09-07:00","forks":143,"fork":false,"size":5722,"name":"jQ.Mobi","url":"https://github.com/appMobi/jQ.Mobi","description":"HTML5 javascript libary for mobile application development. Find documentation and report bugs at http://www.jqmobi.com","private":false,"username":"appMobi","pushed":"2012-06-22T06:25:09-07:00","watchers":876,"has_wiki":true},{"type":"repo","created_at":"2010-05-09T21:46:06-07:00","score":81.79961,"owner":"ipython","followers":834,"open_issues":289,"organization":"ipython","created":"2010-05-09T21:46:06-07:00","integrate_branch":"master","homepage":"http://ipython.org","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-28T16:29:38-07:00","forks":282,"fork":false,"size":1204,"name":"ipython","url":"https://github.com/ipython/ipython","description":"Official repository for IPython itself. Other repos in the IPython organization contain things like the website, documentation builds, etc.","private":false,"username":"ipython","pushed":"2012-06-28T16:29:38-07:00","watchers":834,"has_wiki":false},{"type":"repo","created_at":"2009-11-22T15:28:24-08:00","score":81.39696,"owner":"hmarr","followers":829,"open_issues":72,"created":"2009-11-22T15:28:24-08:00","integrate_branch":"dev","homepage":"http://mongoengine.org","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-23T14:24:37-07:00","forks":212,"fork":false,"size":376,"name":"mongoengine","url":"https://github.com/hmarr/mongoengine","description":"A Python Object-Document-Mapper for working with MongoDB","private":false,"username":"hmarr","pushed":"2012-06-23T14:24:37-07:00","watchers":829,"has_wiki":false},{"type":"repo","created_at":"2010-03-02T03:05:30-08:00","score":78.25956,"owner":"ravendb","followers":796,"open_issues":4,"created":"2010-03-02T03:05:30-08:00","homepage":"http://ayende.com/Blog/","has_issues":false,"has_downloads":true,"language":"C#","pushed_at":"2012-06-02T06:28:41-07:00","forks":225,"fork":false,"size":39524,"name":"ravendb","url":"https://github.com/ravendb/ravendb","description":"A linq enabled document database for .NET","private":false,"username":"ravendb","pushed":"2012-06-02T06:28:41-07:00","watchers":796,"has_wiki":true},{"type":"repo","created_at":"2010-10-27T12:03:38-07:00","score":75.14608,"owner":"substance","followers":765,"open_issues":73,"organization":"substance","created":"2010-10-27T12:03:38-07:00","homepage":"http://substance.io","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2012-06-17T22:44:44-07:00","forks":73,"fork":false,"size":156,"name":"substance","url":"https://github.com/substance/substance","description":"A data-driven and cloud-aware document authoring engine","private":false,"username":"substance","pushed":"2012-06-17T22:44:44-07:00","watchers":765,"has_wiki":true},{"type":"repo","created_at":"2010-02-17T00:43:51-08:00","score":74.91484,"owner":"symfony","followers":760,"open_issues":129,"organization":"symfony","created":"2010-02-17T00:43:51-08:00","homepage":"http://symfony.com/doc/2.0/","has_issues":true,"language":"","has_downloads":false,"pushed_at":"2012-06-25T20:52:42-07:00","forks":453,"fork":false,"size":972,"name":"symfony-docs","url":"https://github.com/symfony/symfony-docs","description":"The Symfony2 documentation","private":false,"username":"symfony","pushed":"2012-06-25T20:52:42-07:00","watchers":760,"has_wiki":false},{"type":"repo","created_at":"2011-01-04T06:41:31-08:00","score":67.442116,"owner":"BonsaiDen","followers":687,"open_issues":42,"created":"2011-01-04T06:41:31-08:00","integrate_branch":"master","homepage":"http://bonsaiden.github.com/JavaScript-Garden","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2012-05-06T08:43:43-07:00","forks":110,"fork":false,"size":220,"name":"JavaScript-Garden","url":"https://github.com/BonsaiDen/JavaScript-Garden","description":"A collection of documentation about the most quirky parts of the JavaScript language. ","private":false,"username":"BonsaiDen","pushed":"2012-05-06T08:43:43-07:00","watchers":687,"has_wiki":true},{"type":"repo","created_at":"2012-01-26T15:00:24-08:00","score":58.944824,"owner":"omz","followers":600,"open_issues":8,"created":"2012-01-26T15:00:24-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"C","pushed_at":"2012-06-01T16:09:06-07:00","forks":59,"fork":false,"size":1340,"name":"DocSets-for-iOS","url":"https://github.com/omz/DocSets-for-iOS","description":"Dedicated app for reading Apple's developer documentation on an iPad or iPhone","private":false,"username":"omz","pushed":"2012-06-01T16:09:06-07:00","watchers":600,"has_wiki":true},{"type":"repo","created_at":"2008-02-25T16:01:52-08:00","score":55.709747,"owner":"lsegal","followers":567,"open_issues":38,"created":"2008-02-25T16:01:52-08:00","homepage":"http://yardoc.org","has_issues":true,"has_downloads":true,"language":"Ruby","pushed_at":"2012-06-16T09:53:09-07:00","forks":84,"fork":false,"size":492,"name":"yard","url":"https://github.com/lsegal/yard","description":"YARD is a Ruby Documentation tool. The Y stands for \"Yay!\"","private":false,"username":"lsegal","pushed":"2012-06-16T09:53:09-07:00","watchers":567,"has_wiki":true},{"type":"repo","created_at":"2010-07-07T05:07:55-07:00","score":54.990154,"owner":"phpDocumentor","followers":556,"open_issues":90,"organization":"phpDocumentor","created":"2010-07-07T05:07:55-07:00","homepage":"http://www.phpdoc.org","has_issues":true,"master_branch":"develop","has_downloads":true,"language":"PHP","pushed_at":"2012-06-26T13:24:59-07:00","forks":105,"fork":false,"size":1876,"name":"phpDocumentor2","url":"https://github.com/phpDocumentor/phpDocumentor2","description":"Documentation Generator for PHP ","private":false,"username":"phpDocumentor","pushed":"2012-06-26T13:24:59-07:00","watchers":556,"has_wiki":false},{"type":"repo","created_at":"2009-05-05T01:40:42-07:00","score":50.904995,"owner":"facebook","followers":518,"open_issues":12,"organization":"facebook","created":"2009-05-05T01:40:42-07:00","homepage":"http://www.phpsh.org/","has_issues":true,"has_downloads":true,"language":"Emacs Lisp","pushed_at":"2011-09-22T09:30:17-07:00","forks":46,"fork":false,"size":136,"name":"phpsh","url":"https://github.com/facebook/phpsh","description":"phpsh is a read-eval-print-loop for php that features readline history, tab completion, and quick access to documentation. It was developed at Facebook and ironically, is written mostly in python. It is open source and released under a modified BSD license.","private":false,"username":"facebook","pushed":"2011-09-22T09:30:17-07:00","watchers":518,"has_wiki":true},{"type":"repo","created_at":"2011-06-11T11:23:07-07:00","score":50.032917,"owner":"worrydream","followers":508,"open_issues":8,"created":"2011-06-11T11:23:07-07:00","homepage":"http://worrydream.com/Tangle/","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2011-11-23T20:25:39-08:00","forks":51,"fork":false,"size":177,"name":"Tangle","url":"https://github.com/worrydream/Tangle","description":"a JavaScript library for reactive documents","private":false,"username":"worrydream","pushed":"2011-11-23T20:25:39-08:00","watchers":508,"has_wiki":true},{"type":"repo","created_at":"2010-01-23T13:54:00-08:00","score":49.520634,"owner":"fileability","followers":500,"open_issues":32,"created":"2010-01-23T13:54:00-08:00","homepage":"http://fileability.net/ingredients/","has_issues":true,"has_downloads":true,"language":"C","pushed_at":"2012-04-22T16:07:21-07:00","forks":41,"fork":false,"size":184,"name":"Ingredients","url":"https://github.com/fileability/Ingredients","description":"A Cocoa documentation viewer.","private":false,"username":"fileability","pushed":"2012-04-22T16:07:21-07:00","watchers":500,"has_wiki":true},{"type":"repo","created_at":"2010-02-23T08:16:13-08:00","score":48.653572,"owner":"jupiterjs","followers":492,"open_issues":6,"organization":"jupiterjs","created":"2010-02-23T08:16:13-08:00","homepage":"http://javascriptmvc.com","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2012-06-12T13:25:49-07:00","forks":385,"fork":false,"size":6631,"name":"documentjs","url":"https://github.com/jupiterjs/documentjs","description":"A powerful documentation engine for JS","private":false,"username":"jupiterjs","pushed":"2012-06-12T13:25:49-07:00","watchers":492,"has_wiki":true},{"type":"repo","created_at":"2010-01-07T12:20:02-08:00","score":48.5918,"owner":"facebook","followers":494,"open_issues":16,"organization":"facebook","created":"2010-01-07T12:20:02-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"PHP","pushed_at":"2012-02-15T10:53:21-08:00","forks":44,"fork":false,"size":224,"name":"xhp","url":"https://github.com/facebook/xhp","description":"XHP is a PHP extension which augments the syntax of the language such that XML document fragments become valid PHP expressions.","private":false,"username":"facebook","pushed":"2012-02-15T10:53:21-08:00","watchers":494,"has_wiki":true},{"type":"repo","created_at":"2009-01-25T07:37:12-08:00","score":47.90811,"owner":"rnewson","followers":487,"open_issues":38,"created":"2009-01-25T07:37:12-08:00","integrate_branch":"master","homepage":"http://rnewson.github.com/couchdb-lucene/","has_issues":true,"has_downloads":true,"language":"Java","pushed_at":"2012-06-20T05:20:03-07:00","forks":63,"fork":false,"size":167262,"name":"couchdb-lucene","url":"https://github.com/rnewson/couchdb-lucene","description":"Enables full-text searching of CouchDB documents using Lucene","private":false,"username":"rnewson","pushed":"2012-06-20T05:20:03-07:00","watchers":487,"has_wiki":false},{"type":"repo","created_at":"2010-06-23T15:54:55-07:00","score":45.259056,"owner":"visionmedia","followers":459,"open_issues":31,"created":"2010-06-23T15:54:55-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2012-05-18T07:55:53-07:00","forks":44,"fork":false,"size":176,"name":"dox","url":"https://github.com/visionmedia/dox","description":"JavaScript documentation generator for node using markdown and jsdoc","private":false,"username":"visionmedia","pushed":"2012-05-18T07:55:53-07:00","watchers":459,"has_wiki":true},{"type":"repo","created_at":"2011-11-30T07:30:13-08:00","score":44.361103,"owner":"magento","followers":452,"open_issues":1,"organization":"magento","created":"2011-11-30T07:30:13-08:00","homepage":"http://www.magento.com","has_issues":true,"has_downloads":true,"language":"PHP","pushed_at":"2012-06-21T11:48:36-07:00","forks":79,"fork":false,"size":1952,"name":"magento2","url":"https://github.com/magento/magento2","description":"Magento 2 is currently at development stage. The information contained herein is subject to change without notice and is not warranted to be error-free. The software and documentation provided WITHOUT ANY WARRANTY and it is NOT intended for commercial applications and may be used at your own risk. ","private":false,"username":"magento","pushed":"2012-06-21T11:48:36-07:00","watchers":452,"has_wiki":false},{"type":"repo","created_at":"2010-02-10T16:19:31-08:00","score":42.82927,"owner":"jupiterjs","followers":435,"open_issues":8,"organization":"jupiterjs","created":"2010-02-10T16:19:31-08:00","homepage":"http://javascriptmvc.com","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2012-04-20T12:12:28-07:00","forks":78,"fork":false,"size":540704,"name":"javascriptmvc","url":"https://github.com/jupiterjs/javascriptmvc","description":"The framework containing StealJS, FuncUnit, jQueryMX, and DocumentJS.","private":false,"username":"jupiterjs","pushed":"2012-04-20T12:12:28-07:00","watchers":435,"has_wiki":true},{"type":"repo","created_at":"2010-10-27T02:28:44-07:00","score":42.34092,"owner":"mobfarm","followers":430,"open_issues":9,"organization":"mobfarm","created":"2010-10-27T02:28:44-07:00","homepage":"http://fastpdfkit.com","has_issues":true,"has_downloads":true,"language":"Objective-C","pushed_at":"2012-06-28T03:12:58-07:00","forks":72,"fork":false,"size":163332,"name":"FastPdfKit","url":"https://github.com/mobfarm/FastPdfKit","description":"A Static Library to be embedded on iOS applications to display pdf documents derived from Fast PDF","private":false,"username":"mobfarm","pushed":"2012-06-28T03:12:58-07:00","watchers":430,"has_wiki":true},{"type":"repo","created_at":"2011-01-01T10:22:16-08:00","score":41.65723,"owner":"apotonick","followers":423,"open_issues":3,"created":"2011-01-01T10:22:16-08:00","homepage":"http://roar.apotomo.de","has_issues":true,"has_downloads":true,"language":"Ruby","pushed_at":"2012-06-22T01:23:58-07:00","forks":35,"fork":false,"size":152,"name":"roar","url":"https://github.com/apotonick/roar","description":"Resource-oriented architectures in Ruby. Roar focuses on object-oriented REST documents.","private":false,"username":"apotonick","pushed":"2012-06-22T01:23:58-07:00","watchers":423,"has_wiki":true},{"type":"repo","created_at":"2012-01-22T09:41:35-08:00","score":40.684464,"owner":"jeromegn","followers":372,"open_issues":11,"created":"2012-01-22T09:41:35-08:00","homepage":"http://documentup.com","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2012-05-13T14:06:55-07:00","forks":32,"fork":false,"size":196,"name":"DocumentUp","url":"https://github.com/jeromegn/DocumentUp","description":"Pretty documentation generator for Github projects with proper Readme.","private":false,"username":"jeromegn","pushed":"2012-05-13T14:06:55-07:00","watchers":372,"has_wiki":true},{"type":"repo","created_at":"2010-01-30T19:01:50-08:00","score":40.05166,"owner":"atheken","followers":407,"open_issues":47,"created":"2010-01-30T19:01:50-08:00","integrate_branch":"unstable","homepage":"","has_issues":true,"has_downloads":true,"language":"C#","pushed_at":"2012-03-08T07:36:16-08:00","forks":81,"fork":false,"size":1996,"name":"NoRM","url":"https://github.com/atheken/NoRM","description":"NoRM is a MongoDB driver for .Net designed to provide access to strongly/statically-typed documents and collections.","private":false,"username":"atheken","pushed":"2012-03-08T07:36:16-08:00","watchers":407,"has_wiki":true},{"type":"repo","created_at":"2010-03-13T01:18:03-08:00","score":39.191544,"owner":"jsdoc3","followers":396,"open_issues":6,"organization":"jsdoc3","created":"2010-03-13T01:18:03-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2012-06-27T14:10:20-07:00","forks":66,"fork":false,"size":368,"name":"jsdoc","url":"https://github.com/jsdoc3/jsdoc","description":"An automatic documentation generator for JavaScript.","private":false,"username":"jsdoc3","pushed":"2012-06-27T14:10:20-07:00","watchers":396,"has_wiki":false},{"type":"repo","created_at":"2011-05-05T11:59:49-07:00","score":38.422153,"owner":"apresta","followers":389,"open_issues":2,"created":"2011-05-05T11:59:49-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-08-11T05:43:52-07:00","forks":19,"fork":false,"size":140,"name":"tagger","url":"https://github.com/apresta/tagger","description":"A Python module for extracting relevant tags from text documents.","private":false,"username":"apresta","pushed":"2011-08-11T05:43:52-07:00","watchers":389,"has_wiki":true},{"type":"repo","created_at":"2009-08-02T14:55:59-07:00","score":35.40635,"owner":"samus","followers":359,"open_issues":6,"created":"2009-08-02T14:55:59-07:00","homepage":"","has_issues":false,"master_branch":"master","has_downloads":true,"language":"C#","pushed_at":"2010-09-20T20:00:13-07:00","forks":66,"fork":false,"size":4629,"name":"mongodb-csharp","url":"https://github.com/samus/mongodb-csharp","description":"A driver written in c# to connect to the MongoDB document oriented database.","private":false,"username":"samus","pushed":"2010-09-20T20:00:13-07:00","watchers":359,"has_wiki":true},{"type":"repo","created_at":"2010-02-13T03:26:52-08:00","score":35.16816,"owner":"ornicar","followers":357,"open_issues":5,"created":"2010-02-13T03:26:52-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"PHP","pushed_at":"2012-06-13T13:33:59-07:00","forks":68,"fork":false,"size":168,"name":"php-github-api","url":"https://github.com/ornicar/php-github-api","description":"A simple PHP GitHub API client, Object Oriented, tested and documented. For PHP 5.1 to 5.3.","private":false,"username":"ornicar","pushed":"2012-06-13T13:33:59-07:00","watchers":357,"has_wiki":false},{"type":"repo","created_at":"2012-01-04T14:23:26-08:00","score":34.80836,"owner":"PharkMillups","followers":353,"open_issues":3,"created":"2012-01-04T14:23:26-08:00","homepage":"","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2012-05-29T21:45:59-07:00","forks":40,"fork":false,"size":156,"name":"beautiful-docs","url":"https://github.com/PharkMillups/beautiful-docs","description":"Pointers to useful, well-written, and otherwise beautiful documentation.","private":false,"username":"PharkMillups","pushed":"2012-05-29T21:45:59-07:00","watchers":353,"has_wiki":true},{"type":"repo","created_at":"2010-05-20T13:20:00-07:00","score":33.147972,"owner":"doctrine","followers":335,"open_issues":41,"organization":"doctrine","created":"2010-05-20T13:20:00-07:00","homepage":"http://www.doctrine-project.org/projects/mongodb_odm","has_issues":true,"has_downloads":true,"language":"PHP","pushed_at":"2012-06-28T10:37:20-07:00","forks":125,"fork":false,"size":956,"name":"mongodb-odm","url":"https://github.com/doctrine/mongodb-odm","description":"Doctrine MongoDB Object Document Mapper (ODM)","private":false,"username":"doctrine","pushed":"2012-06-28T10:37:20-07:00","watchers":335,"has_wiki":true},{"type":"repo","created_at":"2011-07-29T09:02:42-07:00","score":32.23304,"owner":"mashery","followers":323,"open_issues":23,"organization":"mashery","created":"2011-07-29T09:02:42-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2012-05-03T10:42:05-07:00","forks":64,"fork":false,"size":132,"name":"iodocs","url":"https://github.com/mashery/iodocs","description":"Interactive API documentation system","private":false,"username":"mashery","pushed":"2012-05-03T10:42:05-07:00","watchers":323,"has_wiki":true},{"type":"repo","created_at":"2011-03-20T19:44:09-07:00","score":32.18324,"owner":"daveray","followers":326,"open_issues":17,"created":"2011-03-20T19:44:09-07:00","integrate_branch":"develop","homepage":"https://groups.google.com/group/seesaw-clj","has_issues":true,"master_branch":"develop","has_downloads":true,"language":"Clojure","pushed_at":"2012-05-23T18:09:13-07:00","forks":36,"fork":false,"size":310,"name":"seesaw","url":"https://github.com/daveray/seesaw","description":"Seesaw turns the Horror of Swing into a friendly, well-documented, Clojure library","private":false,"username":"daveray","pushed":"2012-05-23T18:09:13-07:00","watchers":326,"has_wiki":true},{"type":"repo","created_at":"2012-03-24T02:45:34-07:00","score":29.607916,"owner":"37signals","followers":297,"open_issues":16,"organization":"37signals","created":"2012-03-24T02:45:34-07:00","homepage":"http://basecamp.com","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2012-05-31T12:56:06-07:00","forks":34,"fork":false,"size":196,"name":"bcx-api","url":"https://github.com/37signals/bcx-api","description":"API documentation and wrappers for the new Basecamp","private":false,"username":"37signals","pushed":"2012-05-31T12:56:06-07:00","watchers":297,"has_wiki":true},{"type":"repo","created_at":"2011-04-26T12:20:56-07:00","score":29.314905,"owner":"github","followers":294,"open_issues":1,"organization":"github","created":"2011-04-26T12:20:56-07:00","homepage":"http://developer.github.com","has_issues":false,"has_downloads":true,"language":"Ruby","pushed_at":"2012-06-27T18:26:50-07:00","forks":139,"fork":false,"size":344,"name":"developer.github.com","url":"https://github.com/github/developer.github.com","description":"GitHub API documentation","private":false,"username":"github","pushed":"2012-06-27T18:26:50-07:00","watchers":294,"has_wiki":false},{"type":"repo","created_at":"2011-01-07T02:14:40-08:00","score":28.202702,"owner":"ruby-amqp","followers":287,"open_issues":6,"organization":"ruby-amqp","created":"2011-01-07T02:14:40-08:00","homepage":"http://rubyamqp.info","has_issues":true,"has_downloads":true,"language":"Ruby","pushed_at":"2012-06-22T21:00:13-07:00","forks":86,"fork":false,"size":184,"name":"amqp","url":"https://github.com/ruby-amqp/amqp","description":"Ruby amqp gem is a widely used, feature-rich, well-maintained, fast asynchronous AMQP 0.9.1 Ruby client with batteries included. Get started in an instant: http://bit.ly/jcuACj, all documentation guides are at http://bit.ly/amqp-gem-docs, API reference is at http://bit.ly/mDm1JE — we do care about the docs!","private":false,"username":"ruby-amqp","pushed":"2012-06-22T21:00:13-07:00","watchers":287,"has_wiki":false},{"type":"repo","created_at":"2009-12-03T12:01:23-08:00","score":26.103762,"owner":"documentcloud","followers":262,"open_issues":14,"organization":"documentcloud","created":"2009-12-03T12:01:23-08:00","homepage":"http://documentcloud.github.com/docsplit/","has_issues":true,"has_downloads":true,"language":"Ruby","pushed_at":"2012-06-14T08:55:07-07:00","forks":56,"fork":false,"size":144,"name":"docsplit","url":"https://github.com/documentcloud/docsplit","description":"Break Apart Documents into Images, Text, Pages and PDFs","private":false,"username":"documentcloud","pushed":"2012-06-14T08:55:07-07:00","watchers":262,"has_wiki":false},{"type":"repo","created_at":"2010-06-29T00:02:31-07:00","score":25.798784,"owner":"fitzgen","followers":259,"open_issues":13,"created":"2010-06-29T00:02:31-07:00","homepage":"http://fitzgen.github.com/pycco/","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-23T16:07:26-07:00","forks":61,"fork":false,"size":156,"name":"pycco","url":"https://github.com/fitzgen/pycco","description":"Literate-style documentation generator.","private":false,"username":"fitzgen","pushed":"2012-06-23T16:07:26-07:00","watchers":259,"has_wiki":true},{"type":"repo","created_at":"2012-05-13T00:47:34-07:00","score":25.2367,"owner":"LearnProgramming","followers":253,"open_issues":2,"organization":"LearnProgramming","created":"2012-05-13T00:47:34-07:00","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2012-06-27T14:12:15-07:00","forks":43,"fork":false,"size":168,"name":"standards-and-practices","url":"https://github.com/LearnProgramming/standards-and-practices","description":"A collection of documents outlining what it is that we intend to do.","private":false,"username":"LearnProgramming","pushed":"2012-06-27T14:12:15-07:00","watchers":253,"has_wiki":true},{"type":"repo","created_at":"2011-11-16T23:11:35-08:00","score":24.736382,"owner":"w3c","followers":248,"open_issues":0,"organization":"w3c","created":"2011-11-16T23:11:35-08:00","homepage":"http://w3c.github.com/tidy-html5/","has_issues":true,"has_downloads":true,"language":"C","pushed_at":"2012-06-26T20:01:02-07:00","forks":29,"fork":false,"size":152,"name":"tidy-html5","url":"https://github.com/w3c/tidy-html5","description":"Experimental fork of Tidy for HTML5 documents","private":false,"username":"w3c","pushed":"2012-06-26T20:01:02-07:00","watchers":248,"has_wiki":true},{"type":"repo","created_at":"2010-09-16T08:34:02-07:00","score":23.295265,"owner":"antirez","followers":235,"open_issues":33,"created":"2010-09-16T08:34:02-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Ruby","pushed_at":"2012-06-25T11:52:53-07:00","forks":96,"fork":false,"size":308,"name":"redis-doc","url":"https://github.com/antirez/redis-doc","description":"Redis documentation source code for markdown and metadata files, conversion scripts, and so forth","private":false,"username":"antirez","pushed":"2012-06-25T11:52:53-07:00","watchers":235,"has_wiki":true},{"type":"repo","created_at":"2010-04-06T17:07:00-07:00","score":22.306599,"owner":"mojombo","followers":224,"open_issues":7,"created":"2010-04-06T17:07:00-07:00","homepage":"","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2012-05-07T21:15:09-07:00","forks":22,"fork":false,"size":144,"name":"tomdoc","url":"https://github.com/mojombo/tomdoc","description":"A flexible code documentation specification with human readers in mind.","private":false,"username":"mojombo","pushed":"2012-05-07T21:15:09-07:00","watchers":224,"has_wiki":true},{"type":"repo","created_at":"2010-11-01T06:16:49-07:00","score":20.707977,"owner":"fuel","followers":205,"open_issues":10,"organization":"fuel","created":"2010-11-01T06:16:49-07:00","integrate_branch":"1.1/develop","homepage":"http://fuelphp.com/docs","has_issues":true,"master_branch":"1.3/develop","has_downloads":true,"language":"JavaScript","pushed_at":"2012-06-24T16:10:10-07:00","forks":130,"fork":false,"size":316,"name":"docs","url":"https://github.com/fuel/docs","description":"Documentation for FuelPHP","private":false,"username":"fuel","pushed":"2012-06-24T16:10:10-07:00","watchers":205,"has_wiki":false},{"type":"repo","created_at":"2008-12-20T07:46:07-08:00","score":20.572474,"owner":"wbond","followers":208,"open_issues":1,"created":"2008-12-20T07:46:07-08:00","homepage":"http://flourishlib.com","has_issues":false,"has_downloads":false,"language":"PHP","pushed_at":"2012-01-12T10:40:08-08:00","forks":26,"fork":false,"size":444,"name":"flourish","url":"https://github.com/wbond/flourish","description":"Flourish is a PHP unframework — a general-purpose, object-oriented library. It's architecture is modular and thus not strictly MVC. It focuses on being secure, broadly compatible, portable, well documented and easy to use.","private":false,"username":"wbond","pushed":"2012-01-12T10:40:08-08:00","watchers":208,"has_wiki":false},{"type":"repo","created_at":"2009-09-06T19:21:55-07:00","score":20.536572,"owner":"kohana","followers":205,"open_issues":9,"organization":"kohana","created":"2009-09-06T19:21:55-07:00","integrate_branch":"3.1/develop","homepage":"http://kohanaphp.com/","has_issues":false,"master_branch":"3.2/master","has_downloads":false,"language":"PHP","pushed_at":"2012-06-25T18:09:29-07:00","forks":108,"fork":false,"size":452,"name":"userguide","url":"https://github.com/kohana/userguide","description":"Kohana user guide and live API documentation module","private":false,"username":"kohana","pushed":"2012-06-25T18:09:29-07:00","watchers":205,"has_wiki":false},{"type":"repo","created_at":"2011-07-15T15:56:39-07:00","score":19.986452,"owner":"wordnik","followers":202,"open_issues":10,"organization":"wordnik","created":"2011-07-15T15:56:39-07:00","homepage":"http://swagger.wordnik.com","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2012-06-28T13:12:36-07:00","forks":47,"fork":false,"size":357,"name":"swagger-ui","url":"https://github.com/wordnik/swagger-ui","description":"Swagger UI is a dependency-free collection of HTML, Javascript, and CSS assets that dynamically generate beautiful documentation from a Swagger-compliant API.","private":false,"username":"wordnik","pushed":"2012-06-28T13:12:36-07:00","watchers":202,"has_wiki":true},{"type":"repo","created_at":"2011-08-29T02:14:46-07:00","score":19.474169,"owner":"mislav","followers":195,"open_issues":10,"created":"2011-08-29T02:14:46-07:00","homepage":"http://pretty-rfc.herokuapp.com/","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2012-05-24T03:27:53-07:00","forks":8,"fork":false,"size":302,"name":"rfc","url":"https://github.com/mislav/rfc","description":"Pretty RFC indexes and reformats RFC documents for easier discovery and viewing.","private":false,"username":"mislav","pushed":"2012-05-24T03:27:53-07:00","watchers":195,"has_wiki":true},{"type":"repo","created_at":"2012-04-03T14:50:25-07:00","score":19.4622,"owner":"mattetti","followers":194,"open_issues":4,"created":"2012-04-03T14:50:25-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Ruby","pushed_at":"2012-05-24T08:57:33-07:00","forks":9,"fork":false,"size":168,"name":"Weasel-Diesel","url":"https://github.com/mattetti/Weasel-Diesel","description":"DSL to describe, document and test web services","private":false,"username":"mattetti","pushed":"2012-05-24T08:57:33-07:00","watchers":194,"has_wiki":true},{"type":"repo","created_at":"2008-12-04T18:26:02-08:00","score":18.363897,"owner":"yui","followers":181,"open_issues":8,"organization":"yui","created":"2008-12-04T18:26:02-08:00","homepage":"http://yui.github.com/yuidoc","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2012-06-07T12:22:17-07:00","forks":36,"fork":false,"size":392,"name":"yuidoc","url":"https://github.com/yui/yuidoc","description":"YUI Javascript Documentation Tool","private":false,"username":"yui","pushed":"2012-06-07T12:22:17-07:00","watchers":181,"has_wiki":false},{"type":"repo","created_at":"2011-02-26T12:23:53-08:00","score":18.192492,"owner":"apigen","followers":181,"open_issues":31,"organization":"apigen","created":"2011-02-26T12:23:53-08:00","integrate_branch":"develop","homepage":"http://apigen.org","has_issues":true,"master_branch":"develop","has_downloads":true,"language":"PHP","pushed_at":"2012-06-03T14:34:45-07:00","forks":33,"fork":false,"size":21078,"name":"apigen","url":"https://github.com/apigen/apigen","description":"API documentation generator for PHP 5.3+","private":false,"username":"apigen","pushed":"2012-06-03T14:34:45-07:00","watchers":181,"has_wiki":false},{"type":"repo","created_at":"2010-06-01T18:58:32-07:00","score":18.026733,"owner":"NYTimes","followers":140,"open_issues":6,"organization":"NYTimes","created":"2010-06-01T18:58:32-07:00","homepage":"http://open.blogs.nytimes.com/2010/03/27/a-new-view-introducing-doc-viewer-2-0/","has_issues":true,"master_branch":"frontend","has_downloads":true,"language":"JavaScript","pushed_at":"2010-07-07T11:18:04-07:00","forks":45,"fork":false,"size":6352,"name":"document-viewer","url":"https://github.com/NYTimes/document-viewer","description":"The NYTimes Document Viewer","private":false,"username":"NYTimes","pushed":"2010-07-07T11:18:04-07:00","watchers":140,"has_wiki":true},{"type":"repo","created_at":"2009-02-17T15:51:23-08:00","score":17.985184,"owner":"github","followers":178,"open_issues":44,"organization":"github","created":"2009-02-17T15:51:23-08:00","homepage":"http://develop.github.com","has_issues":true,"master_branch":"gh-pages","has_downloads":false,"language":"JavaScript","pushed_at":"2012-03-27T00:08:29-07:00","forks":61,"fork":false,"size":424,"name":"develop.github.com","url":"https://github.com/github/develop.github.com","description":"API Documentation for GitHub","private":false,"username":"github","pushed":"2012-03-27T00:08:29-07:00","watchers":178,"has_wiki":false},{"type":"repo","created_at":"2010-02-04T12:07:16-08:00","score":17.928259,"owner":"coen-hyde","followers":179,"open_issues":24,"created":"2010-02-04T12:07:16-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"PHP","pushed_at":"2012-06-17T11:18:14-07:00","forks":47,"fork":false,"size":240,"name":"Shanty-Mongo","url":"https://github.com/coen-hyde/Shanty-Mongo","description":"Shanty Mongo is a mongodb library for the Zend Framework. Its intention is to make working with mongodb documents as natural and as simple as possible. In particular allowing embedded documents to also have custom document classes.","private":false,"username":"coen-hyde","pushed":"2012-06-17T11:18:14-07:00","watchers":179,"has_wiki":true},{"type":"repo","created_at":"2012-02-28T03:21:21-08:00","score":17.501852,"owner":"exalted","followers":177,"open_issues":4,"created":"2012-02-28T03:21:21-08:00","homepage":"http://www.pittle.org/","has_issues":true,"has_downloads":true,"language":"Objective-C","pushed_at":"2012-06-27T07:29:43-07:00","forks":18,"fork":false,"size":168,"name":"PTShowcaseViewController","url":"https://github.com/exalted/PTShowcaseViewController","description":"An initial implementation of a \"showcase\" view( controller) for iOS apps... Visualizes images, videos and PDF files beautifully! (by @pittleorg) [meta: image, photo, video, document, pdf, album, gallery, showcase, gallery, iOS, iPhone, iPad, component, library, viewer]","private":false,"username":"exalted","pushed":"2012-06-27T07:29:43-07:00","watchers":177,"has_wiki":true},{"type":"repo","created_at":"2009-09-01T12:10:29-07:00","score":17.142056,"owner":"mdeering","followers":172,"open_issues":1,"created":"2009-09-01T12:10:29-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Ruby","pushed_at":"2012-06-24T09:55:45-07:00","forks":10,"fork":false,"size":192,"name":"gravatar_image_tag","url":"https://github.com/mdeering/gravatar_image_tag","description":"A configurable and documented Rail view helper for adding gravatars into your Rails application","private":false,"username":"mdeering","pushed":"2012-06-24T09:55:45-07:00","watchers":172,"has_wiki":true},{"type":"repo","created_at":"2011-06-10T11:54:25-07:00","score":17.106153,"owner":"Blizzard","followers":169,"open_issues":2,"organization":"Blizzard","created":"2011-06-10T11:54:25-07:00","homepage":"http://blizzard.github.com/api-wow-docs/","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2012-05-29T10:05:31-07:00","forks":14,"fork":false,"size":220,"name":"api-wow-docs","url":"https://github.com/Blizzard/api-wow-docs","description":"Documentation for the World of Warcraft web APIs.","private":false,"username":"Blizzard","pushed":"2012-05-29T10:05:31-07:00","watchers":169,"has_wiki":false},{"type":"repo","created_at":"2010-07-25T09:03:41-07:00","score":16.544067,"owner":"benedikt","followers":165,"open_issues":0,"created":"2010-07-25T09:03:41-07:00","homepage":"http://benedikt.github.com/mongoid-tree","has_issues":true,"has_downloads":false,"language":"Ruby","pushed_at":"2012-06-03T15:17:03-07:00","forks":35,"fork":false,"size":132,"name":"mongoid-tree","url":"https://github.com/benedikt/mongoid-tree","description":"A tree structure for Mongoid documents using the materialized path pattern","private":false,"username":"benedikt","pushed":"2012-06-03T15:17:03-07:00","watchers":165,"has_wiki":true},{"type":"repo","created_at":"2010-06-13T19:11:39-07:00","score":16.067684,"owner":"rfletcher","followers":161,"open_issues":7,"created":"2010-06-13T19:11:39-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2012-02-26T12:28:11-08:00","forks":16,"fork":false,"size":118,"name":"safari-json-formatter","url":"https://github.com/rfletcher/safari-json-formatter","description":"A Safari extension which makes valid JSON documents human-readable.","private":false,"username":"rfletcher","pushed":"2012-02-26T12:28:11-08:00","watchers":161,"has_wiki":true},{"type":"repo","created_at":"2011-02-03T08:37:15-08:00","score":15.89314,"owner":"rosarior","followers":159,"open_issues":8,"created":"2011-02-03T08:37:15-08:00","homepage":"http://www.mayan-edms.com","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-28T14:11:59-07:00","forks":31,"fork":false,"size":204,"name":"mayan","url":"https://github.com/rosarior/mayan","description":"Open source, Django based DMS (document management system) with custom metadata indexing, file serving integration, OCR capabilities, document versioning and electronic signature verification.","private":false,"username":"rosarior","pushed":"2012-06-28T14:11:59-07:00","watchers":159,"has_wiki":true},{"type":"repo","created_at":"2010-04-05T15:03:29-07:00","score":15.098347,"owner":"doctrine","followers":110,"open_issues":13,"organization":"doctrine","created":"2010-04-05T15:03:29-07:00","homepage":"http://www.doctrine-project.org","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-28T06:52:05-07:00","forks":79,"fork":false,"size":224,"name":"orm-documentation","url":"https://github.com/doctrine/orm-documentation","description":"Doctrine documentation","private":false,"username":"doctrine","pushed":"2012-06-28T06:52:05-07:00","watchers":110,"has_wiki":true},{"type":"repo","created_at":"2010-09-23T02:34:18-07:00","score":15.06705,"owner":"jsfiddle","followers":149,"open_issues":81,"organization":"jsfiddle","created":"2010-09-23T02:34:18-07:00","homepage":"doc.jsfiddle.net","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-05-31T04:44:25-07:00","forks":36,"fork":false,"size":132,"name":"jsfiddle-docs-alpha","url":"https://github.com/jsfiddle/jsfiddle-docs-alpha","description":"End user documentation for jsFiddle","private":false,"username":"jsfiddle","pushed":"2012-05-31T04:44:25-07:00","watchers":149,"has_wiki":true},{"type":"repo","created_at":"2010-08-05T12:41:31-07:00","score":14.786007,"owner":"weld","followers":147,"open_issues":6,"organization":"weld","created":"2010-08-05T12:41:31-07:00","homepage":"http://www.seamframework.org/Weld","has_issues":false,"master_branch":"master","has_downloads":false,"language":"Java","pushed_at":"2012-06-29T04:18:42-07:00","forks":87,"fork":false,"size":832,"name":"core","url":"https://github.com/weld/core","description":"Weld, including integrations for Servlet containers and Java SE, examples and documentation","private":false,"username":"weld","pushed":"2012-06-29T04:18:42-07:00","watchers":147,"has_wiki":false},{"type":"repo","created_at":"2011-11-30T02:09:35-08:00","score":14.652436,"owner":"documentcloud","followers":143,"open_issues":16,"organization":"documentcloud","created":"2011-11-30T02:09:35-08:00","homepage":"http://www.documentcloud.org","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2012-06-28T15:17:54-07:00","forks":24,"fork":false,"size":204,"name":"documentcloud","url":"https://github.com/documentcloud/documentcloud","description":"The DocumentCloud platform","private":false,"username":"documentcloud","pushed":"2012-06-28T15:17:54-07:00","watchers":143,"has_wiki":true},{"type":"repo","created_at":"2011-07-27T11:37:58-07:00","score":14.614601,"owner":"gre","followers":147,"open_issues":3,"created":"2011-07-27T11:37:58-07:00","homepage":"http://demo.greweb.fr/flexible-nav/","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2011-11-10T13:05:11-08:00","forks":15,"fork":false,"size":141,"name":"flexible-nav","url":"https://github.com/gre/flexible-nav","description":"Improve your navigation experience - this jQuery lib improves a webpage navigation and helps to visualize different sections. of a document, an article,.. any web page.","private":false,"username":"gre","pushed":"2011-11-10T13:05:11-08:00","watchers":147,"has_wiki":true},{"type":"repo","created_at":"2009-11-24T17:50:29-08:00","score":14.614601,"owner":"iamnoah","followers":147,"open_issues":2,"created":"2009-11-24T17:50:29-08:00","homepage":"http://iamnoah.github.com/writeCapture","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2012-05-29T18:39:07-07:00","forks":21,"fork":false,"size":279,"name":"writeCapture","url":"https://github.com/iamnoah/writeCapture","description":"Utility to assist the Ajax loading of HTML containing script tags that use document.write. Mailing List: http://groups.google.com/group/writecapturejs-users","private":false,"username":"iamnoah","pushed":"2012-05-29T18:39:07-07:00","watchers":147,"has_wiki":true},{"type":"repo","created_at":"2012-02-02T07:48:33-08:00","score":14.18802,"owner":"readium","followers":140,"open_issues":46,"created":"2012-02-02T07:48:33-08:00","homepage":"http://readium.org","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2012-06-28T15:40:55-07:00","forks":31,"fork":false,"size":832,"name":"readium","url":"https://github.com/readium/readium","description":"Readium: open source library for handling EPUB documents","private":false,"username":"readium","pushed":"2012-06-28T15:40:55-07:00","watchers":140,"has_wiki":true},{"type":"repo","created_at":"2011-01-20T09:04:50-08:00","score":14.102317,"owner":"nfarina","followers":140,"open_issues":0,"created":"2011-01-20T09:04:50-08:00","homepage":"http://nfarina.com/post/2843708636/a-lightweight-xml-parser-for-ios","has_issues":true,"has_downloads":true,"language":"Objective-C","pushed_at":"2012-04-30T14:23:33-07:00","forks":9,"fork":false,"size":164,"name":"xmldocument","url":"https://github.com/nfarina/xmldocument","description":"A lightweight XML Document class for iOS.","private":false,"username":"nfarina","pushed":"2012-04-30T14:23:33-07:00","watchers":140,"has_wiki":true},{"type":"repo","created_at":"2010-12-06T10:42:17-08:00","score":14.015406,"owner":"appcelerator","followers":99,"open_issues":1,"organization":"appcelerator","created":"2010-12-06T10:42:17-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2011-10-13T15:45:24-07:00","forks":20,"fork":false,"size":3472,"name":"Documentation-Examples","url":"https://github.com/appcelerator/Documentation-Examples","description":"","private":false,"username":"appcelerator","pushed":"2011-10-13T15:45:24-07:00","watchers":99,"has_wiki":true},{"type":"repo","created_at":"2010-02-10T15:59:05-08:00","score":13.99268,"owner":"grails","followers":138,"open_issues":3,"organization":"grails","created":"2010-02-10T15:59:05-08:00","homepage":"http://grails.org/doc/latest/","has_issues":true,"has_downloads":true,"language":"Groovy","pushed_at":"2012-06-27T06:26:26-07:00","forks":95,"fork":false,"size":216,"name":"grails-doc","url":"https://github.com/grails/grails-doc","description":"Documentation Project For The Grails Web Application Framework","private":false,"username":"grails","pushed":"2012-06-27T06:26:26-07:00","watchers":138,"has_wiki":true},{"type":"repo","created_at":"2009-01-29T00:22:07-08:00","score":13.821274,"owner":"astraw","followers":138,"open_issues":19,"created":"2009-01-29T00:22:07-08:00","homepage":"http://pypi.python.org/pypi/stdeb","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2010-07-30T02:08:17-07:00","forks":24,"fork":false,"size":1176,"name":"stdeb","url":"https://github.com/astraw/stdeb","description":"produces Debian source packages from Python packages (see README.rst for full documentation)","private":false,"username":"astraw","pushed":"2010-07-30T02:08:17-07:00","watchers":138,"has_wiki":false},{"type":"repo","created_at":"2012-01-11T14:29:55-08:00","score":13.79734,"owner":"Netflix","followers":136,"open_issues":1,"organization":"Netflix","created":"2012-01-11T14:29:55-08:00","homepage":"https://github.com/Netflix/aws-autoscaling/wiki","has_issues":true,"has_downloads":true,"language":"Shell","pushed_at":"2012-01-12T15:03:28-08:00","forks":13,"fork":false,"size":124,"name":"aws-autoscaling","url":"https://github.com/Netflix/aws-autoscaling","description":"Tools and Documentation about using Auto Scaling","private":false,"username":"Netflix","pushed":"2012-01-12T15:03:28-08:00","watchers":136,"has_wiki":true},{"type":"repo","created_at":"2010-09-01T05:52:55-07:00","score":13.680753,"owner":"vinova","followers":137,"open_issues":15,"organization":"vinova","created":"2010-09-01T05:52:55-07:00","homepage":"github.com/vinova/voteable_benchmarks","has_issues":true,"has_downloads":false,"language":"Ruby","pushed_at":"2011-10-19T06:24:52-07:00","forks":29,"fork":false,"size":3084,"name":"voteable_mongo","url":"https://github.com/vinova/voteable_mongo","description":"Add up / down voteability to Mongoid and MongoMapper documents. Optimized for speed by using only ONE request to validate, update, and retrieve updated data.","private":false,"username":"vinova","pushed":"2011-10-19T06:24:52-07:00","watchers":137,"has_wiki":true},{"type":"repo","created_at":"2010-01-16T04:42:25-08:00","score":13.516297,"owner":"kmuto","followers":134,"open_issues":34,"created":"2010-01-16T04:42:25-08:00","homepage":"https://svn.github.com/kmuto/review or https://kmuto.jp/svn/review/trunk","has_issues":true,"has_downloads":true,"language":"Ruby","pushed_at":"2012-06-24T09:23:10-07:00","forks":21,"fork":false,"size":236,"name":"review","url":"https://github.com/kmuto/review","description":"ReVIEW is flexible document format/conversion system","private":false,"username":"kmuto","pushed":"2012-06-24T09:23:10-07:00","watchers":134,"has_wiki":true},{"type":"repo","created_at":"2009-04-06T13:18:23-07:00","score":13.418627,"owner":"10to1","followers":133,"open_issues":0,"organization":"10to1","created":"2009-04-06T13:18:23-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Ruby","pushed_at":"2012-04-04T09:19:56-07:00","forks":12,"fork":false,"size":168,"name":"spreadsheet_on_rails","url":"https://github.com/10to1/spreadsheet_on_rails","description":"A Rails plugin to generate xls documents by using rxls templates.","private":false,"username":"10to1","pushed":"2012-04-04T09:19:56-07:00","watchers":133,"has_wiki":true},{"type":"repo","created_at":"2010-02-18T12:27:48-08:00","score":13.182137,"owner":"uliwitness","followers":96,"open_issues":0,"created":"2010-02-18T12:27:48-08:00","homepage":"http://www.zathras.de/sourcecode.htm","has_issues":false,"has_downloads":true,"language":"Objective-C","pushed_at":"2012-02-05T04:20:24-08:00","forks":6,"fork":false,"size":168,"name":"UKSyntaxColoredTextDocument","url":"https://github.com/uliwitness/UKSyntaxColoredTextDocument","description":"An NSViewController (and optional document class) that implements syntax coloring and code editing-related features in an NSTextView.","private":false,"username":"uliwitness","pushed":"2012-02-05T04:20:24-08:00","watchers":96,"has_wiki":false},{"type":"repo","created_at":"2011-03-13T13:21:49-07:00","score":13.137584,"owner":"mandango","followers":131,"open_issues":7,"organization":"mandango","created":"2011-03-13T13:21:49-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"PHP","pushed_at":"2012-06-08T04:23:38-07:00","forks":17,"fork":false,"size":156,"name":"mandango","url":"https://github.com/mandango/mandango","description":"Mandango is a simple, poweful and ultrafast Object Document Mapper (ODM) for PHP and MongoDB.","private":false,"username":"mandango","pushed":"2012-06-08T04:23:38-07:00","watchers":131,"has_wiki":true},{"type":"repo","created_at":"2009-03-28T22:10:17-07:00","score":13.101683,"owner":"rmanalan","followers":128,"open_issues":5,"created":"2009-03-28T22:10:17-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Ruby","pushed_at":"2011-11-10T12:18:27-08:00","forks":12,"fork":false,"size":1044,"name":"bdoc","url":"https://github.com/rmanalan/bdoc","description":"Your local gem documentation browser","private":false,"username":"rmanalan","pushed":"2011-11-10T12:18:27-08:00","watchers":128,"has_wiki":false},{"type":"repo","created_at":"2010-11-04T22:26:15-07:00","score":13.0933,"owner":"movabletype","followers":45,"open_issues":0,"organization":"movabletype","created":"2010-11-04T22:26:15-07:00","homepage":"http://www.movabletype.org/","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2012-01-26T21:35:15-08:00","forks":5,"fork":false,"size":156,"name":"Documentation","url":"https://github.com/movabletype/Documentation","description":"Managing Movable Type documentation projects.","private":false,"username":"movabletype","pushed":"2012-01-26T21:35:15-08:00","watchers":45,"has_wiki":true},{"type":"repo","created_at":"2009-04-01T04:33:13-07:00","score":12.745697,"owner":"jessegrosjean","followers":86,"open_issues":1,"created":"2009-04-01T04:33:13-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-11-03T10:06:54-07:00","forks":12,"fork":false,"size":120,"name":"documents.com","url":"https://github.com/jessegrosjean/documents.com","description":"","private":false,"username":"jessegrosjean","pushed":"2011-11-03T10:06:54-07:00","watchers":86,"has_wiki":true},{"type":"repo","created_at":"2008-12-12T08:32:50-08:00","score":12.572359,"owner":"shairontoledo","followers":125,"open_issues":3,"created":"2008-12-12T08:32:50-08:00","integrate_branch":"master","homepage":"http://rghost.rubyforge.org","has_issues":true,"has_downloads":true,"language":"Ruby","pushed_at":"2012-04-23T08:21:04-07:00","forks":17,"fork":false,"size":148,"name":"rghost","url":"https://github.com/shairontoledo/rghost","description":"RGhost is a document creation and conversion API. It uses the Ghostscript framework for the format conversion, utilizes EPS templates and is optimized to work with larger documents. Support(PDF,PS,GIF,TIF,PNG,JPG,etc)","private":false,"username":"shairontoledo","pushed":"2012-04-23T08:21:04-07:00","watchers":125,"has_wiki":true},{"type":"repo","created_at":"2009-12-30T23:40:28-08:00","score":12.453894,"owner":"leesmith","followers":124,"open_issues":5,"created":"2009-12-30T23:40:28-08:00","homepage":"http://appogee.posterous.com/ticketmule","has_issues":true,"has_downloads":true,"language":"Ruby","pushed_at":"2012-05-16T19:51:01-07:00","forks":33,"fork":false,"size":144,"name":"ticket_mule","url":"https://github.com/leesmith/ticket_mule","description":"No frills, general use support ticket tracking. Easily document and communicate client relations within a support team.","private":false,"username":"leesmith","pushed":"2012-05-16T19:51:01-07:00","watchers":124,"has_wiki":true},{"type":"repo","created_at":"2010-11-02T18:42:33-07:00","score":12.441927,"owner":"vendo","followers":123,"open_issues":2,"organization":"vendo","created":"2010-11-02T18:42:33-07:00","homepage":"","has_issues":true,"master_branch":"develop","has_downloads":true,"language":"PHP","pushed_at":"2011-09-07T05:10:19-07:00","forks":17,"fork":false,"size":124,"name":"vendo","url":"https://github.com/vendo/vendo","description":"General documentation and sample files for Vendo e-commerce framework","private":false,"username":"vendo","pushed":"2011-09-07T05:10:19-07:00","watchers":123,"has_wiki":true},{"type":"repo","created_at":"2011-06-01T12:16:56-07:00","score":12.344256,"owner":"Khan","followers":122,"open_issues":8,"organization":"Khan","created":"2011-06-01T12:16:56-07:00","homepage":"http://www.khanacademy.org","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2012-02-27T11:44:11-08:00","forks":19,"fork":false,"size":124,"name":"khan-api","url":"https://github.com/Khan/khan-api","description":"Documentation for (and examples of) using the Khan Academy API ","private":false,"username":"Khan","pushed":"2012-02-27T11:44:11-08:00","watchers":122,"has_wiki":true},{"type":"repo","created_at":"2010-11-11T13:21:37-08:00","score":12.012239,"owner":"SpringSource","followers":84,"open_issues":2,"organization":"SpringSource","created":"2010-11-11T13:21:37-08:00","homepage":"http://www.springsource.org/spring-data","has_issues":true,"has_downloads":true,"language":"Java","pushed_at":"2011-09-07T04:45:54-07:00","forks":29,"fork":false,"size":148,"name":"spring-data-document-examples","url":"https://github.com/SpringSource/spring-data-document-examples","description":"Examples using Spring Data Document features","private":false,"username":"SpringSource","pushed":"2011-09-07T04:45:54-07:00","watchers":84,"has_wiki":true},{"type":"repo","created_at":"2011-11-15T08:12:21-08:00","score":11.871808,"owner":"zipmark","followers":77,"open_issues":6,"organization":"zipmark","created":"2011-11-15T08:12:21-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2012-06-05T06:53:03-07:00","forks":15,"fork":false,"size":204,"name":"rspec_api_documentation","url":"https://github.com/zipmark/rspec_api_documentation","description":"Automatically generate API documentation from RSpec","private":false,"username":"zipmark","pushed":"2012-06-05T06:53:03-07:00","watchers":77,"has_wiki":true},{"type":"repo","created_at":"2011-11-20T06:15:45-08:00","score":11.794138,"owner":"randym","followers":119,"open_issues":5,"created":"2011-11-20T06:15:45-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Ruby","pushed_at":"2012-06-27T20:57:36-07:00","forks":17,"fork":false,"size":41736,"name":"axlsx","url":"https://github.com/randym/axlsx","description":" xlsx generation with charts, images, automated column width, customizable styles and full schema validation. Axlsx excels at helping you generate beautiful Office Open XML Spreadsheet documents without having to understand the entire ECMA specification. Check out the README for some examples of how easy it is. Best of all, you can validate your xlsx file before serialization so you know for sure that anything generated is going to load on your client's machine.","private":false,"username":"randym","pushed":"2012-06-27T20:57:36-07:00","watchers":119,"has_wiki":true},{"type":"repo","created_at":"2010-09-26T14:42:53-07:00","score":11.574863,"owner":"theseer","followers":115,"open_issues":17,"created":"2010-09-26T14:42:53-07:00","homepage":"http://phpdox.de","has_issues":true,"has_downloads":false,"language":"PHP","pushed_at":"2012-02-25T10:57:19-08:00","forks":21,"fork":false,"size":136,"name":"phpdox","url":"https://github.com/theseer/phpdox","description":"Documentation generator for PHP Code using standard technology (SRC, DOCBLOCK, XML and XSLT)","private":false,"username":"theseer","pushed":"2012-02-25T10:57:19-08:00","watchers":115,"has_wiki":false},{"type":"repo","created_at":"2010-10-04T08:50:42-07:00","score":11.533151,"owner":"croogo","followers":29,"open_issues":0,"organization":"croogo","created":"2010-10-04T08:50:42-07:00","homepage":"http://wiki.croogo.org/","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2012-06-27T05:39:32-07:00","forks":21,"fork":false,"size":144,"name":"documentation","url":"https://github.com/croogo/documentation","description":"Documentation for Croogo","private":false,"username":"croogo","pushed":"2012-06-27T05:39:32-07:00","watchers":29,"has_wiki":true},{"type":"repo","created_at":"2012-05-15T04:20:10-07:00","score":11.526996,"owner":"fabpot","followers":111,"open_issues":9,"created":"2012-05-15T04:20:10-07:00","has_issues":true,"has_downloads":true,"language":"PHP","pushed_at":"2012-06-24T23:37:25-07:00","forks":13,"fork":false,"size":156,"name":"Sami","url":"https://github.com/fabpot/Sami","description":"An API documentation generator","private":false,"username":"fabpot","pushed":"2012-06-24T23:37:25-07:00","watchers":111,"has_wiki":false},{"type":"repo","created_at":"2010-04-04T14:36:21-07:00","score":11.379523,"owner":"jdbartlett","followers":113,"open_issues":0,"created":"2010-04-04T14:36:21-07:00","homepage":"http://jdbartlett.github.com/innershiv","has_issues":false,"has_downloads":true,"language":"JavaScript","pushed_at":"2011-12-22T06:54:27-08:00","forks":21,"fork":false,"size":160,"name":"innershiv","url":"https://github.com/jdbartlett/innershiv","description":"a workaround for HTML 5 via innerHTML outside the document in IE","private":false,"username":"jdbartlett","pushed":"2011-12-22T06:54:27-08:00","watchers":113,"has_wiki":false},{"type":"repo","created_at":"2009-02-02T00:34:22-08:00","score":11.184184,"owner":"mattball","followers":111,"open_issues":6,"created":"2009-02-02T00:34:22-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-10-19T12:45:49-07:00","forks":8,"fork":false,"size":1372,"name":"doxyclean","url":"https://github.com/mattball/doxyclean","description":"A script to convert Doxygen output to resemble Apple's AppKit documentation","private":false,"username":"mattball","pushed":"2011-10-19T12:45:49-07:00","watchers":111,"has_wiki":true},{"type":"repo","created_at":"2011-04-21T04:19:55-07:00","score":11.1339,"owner":"chenshuo","followers":25,"open_issues":0,"created":"2011-04-21T04:19:55-07:00","homepage":"","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2011-04-21T04:20:40-07:00","forks":3,"fork":false,"size":6794,"name":"documents","url":"https://github.com/chenshuo/documents","description":"","private":false,"username":"chenshuo","pushed":"2011-04-21T04:20:40-07:00","watchers":25,"has_wiki":true},{"type":"repo","created_at":"2010-02-27T10:51:22-08:00","score":11.038645,"owner":"wayneeseguin","followers":106,"open_issues":3,"created":"2010-02-27T10:51:22-08:00","homepage":"http://rvm.beginrescueend.com","has_issues":true,"has_downloads":false,"language":"JavaScript","pushed_at":"2012-06-28T23:00:06-07:00","forks":84,"fork":false,"size":260,"name":"rvm-site","url":"https://github.com/wayneeseguin/rvm-site","description":"RVM website and documentation","private":false,"username":"wayneeseguin","pushed":"2012-06-28T23:00:06-07:00","watchers":106,"has_wiki":false},{"type":"repo","created_at":"2010-01-30T05:23:40-08:00","score":10.976876,"owner":"mustardamus","followers":108,"open_issues":6,"created":"2010-01-30T05:23:40-08:00","homepage":"http://jqapi.com/","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2012-01-13T08:23:17-08:00","forks":73,"fork":false,"size":3349,"name":"jqapi","url":"https://github.com/mustardamus/jqapi","description":"jQAPI - Alternative jQuery Documentation","private":false,"username":"mustardamus","pushed":"2012-01-13T08:23:17-08:00","watchers":108,"has_wiki":true},{"type":"repo","created_at":"2010-01-25T05:15:01-08:00","score":10.845175,"owner":"onesocialweb","followers":22,"open_issues":0,"created":"2010-01-25T05:15:01-08:00","homepage":"http://onesocialweb.org","has_issues":false,"has_downloads":false,"language":"Shell","pushed_at":"2011-04-13T05:25:34-07:00","forks":5,"fork":false,"size":136,"name":"documentation","url":"https://github.com/onesocialweb/documentation","description":"All working documents, standards, data model, protocol extensions, etc.","private":false,"username":"onesocialweb","pushed":"2011-04-13T05:25:34-07:00","watchers":22,"has_wiki":false},{"type":"repo","created_at":"2009-10-17T18:25:29-07:00","score":10.598164,"owner":"bwhite","followers":105,"open_issues":37,"created":"2009-10-17T18:25:29-07:00","homepage":"www.hadoopy.com","has_issues":true,"has_downloads":true,"language":"C","pushed_at":"2012-06-27T13:01:38-07:00","forks":13,"fork":false,"size":156,"name":"hadoopy","url":"https://github.com/bwhite/hadoopy","description":"Python MapReduce library written in Cython. Visit us in #hadoopy on freenode. See the link below for documentation and tutorials.","private":false,"username":"bwhite","pushed":"2012-06-27T13:01:38-07:00","watchers":105,"has_wiki":false}]} + +GET /legacy/repos/search/document?start_page=2 {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4982'), ('content-length', '56821'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"7a429048f738479a3828adfd641228c6"'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Fri, 29 Jun 2012 11:52:40 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"repositories":[{"type":"repo","created_at":"2011-12-01T14:18:22-08:00","score":10.500494,"owner":"dustin10","followers":104,"open_issues":15,"created":"2011-12-01T14:18:22-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"PHP","pushed_at":"2012-03-22T07:27:47-07:00","forks":24,"fork":false,"size":128,"name":"VichUploaderBundle","url":"https://github.com/dustin10/VichUploaderBundle","description":"A simple Symfony2 bundle to ease file uploads with ORM entities and ODM documents.","private":false,"username":"dustin10","pushed":"2012-03-22T07:27:47-07:00","watchers":104,"has_wiki":false},{"type":"repo","created_at":"2008-04-07T17:29:47-07:00","score":10.47656,"owner":"tobie","followers":102,"open_issues":2,"created":"2008-04-07T17:29:47-07:00","homepage":"http://pdoc.org","has_issues":true,"has_downloads":true,"language":"Ruby","pushed_at":"2011-08-31T02:50:14-07:00","forks":17,"fork":false,"size":220,"name":"pdoc","url":"https://github.com/tobie/pdoc","description":"JavaScript inline documentation parser","private":false,"username":"tobie","pushed":"2011-08-31T02:50:14-07:00","watchers":102,"has_wiki":false},{"type":"repo","created_at":"2010-09-12T12:15:07-07:00","score":10.257012,"owner":"josegonzalez","followers":16,"open_issues":0,"created":"2010-09-12T12:15:07-07:00","homepage":"","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2012-02-22T16:46:05-08:00","forks":3,"fork":false,"size":164,"name":"documentation","url":"https://github.com/josegonzalez/documentation","description":"An INCOMPLETE re-implementation of the CakePHP documentation as a series of tutorials. CakePHP 1.3 ONLY. Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License","private":false,"username":"josegonzalez","pushed":"2012-02-22T16:46:05-08:00","watchers":16,"has_wiki":true},{"type":"repo","created_at":"2011-07-10T00:14:54-07:00","score":10.207483,"owner":"ryanmcgrath","followers":101,"open_issues":0,"created":"2011-07-10T00:14:54-07:00","homepage":"http://venodesigns.net/wii/","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2011-10-28T01:24:03-07:00","forks":5,"fork":false,"size":120,"name":"wii-js","url":"https://github.com/ryanmcgrath/wii-js","description":"A sane, documented, (hopefully) performant event-based library for Wiimote webpage interaction.","private":false,"username":"ryanmcgrath","pushed":"2011-10-28T01:24:03-07:00","watchers":101,"has_wiki":true},{"type":"repo","created_at":"2012-04-08T18:02:57-07:00","score":10.183549,"owner":"cloudfoundry","followers":99,"open_issues":1,"organization":"cloudfoundry","created":"2012-04-08T18:02:57-07:00","homepage":"http://cloudfoundry.org","has_issues":true,"has_downloads":true,"language":"Ruby","pushed_at":"2012-06-26T22:45:56-07:00","forks":18,"fork":false,"size":232,"name":"oss-docs","url":"https://github.com/cloudfoundry/oss-docs","description":"Documentation for the Cloud Foundry Platform as a Service","private":false,"username":"cloudfoundry","pushed":"2012-06-26T22:45:56-07:00","watchers":99,"has_wiki":true},{"type":"repo","created_at":"2008-05-31T14:02:12-07:00","score":10.164632,"owner":"davidB","followers":101,"open_issues":18,"created":"2008-05-31T14:02:12-07:00","homepage":"http://davidb.github.com/scala-maven-plugin/","has_issues":true,"has_downloads":false,"language":"Java","pushed_at":"2012-06-29T00:35:06-07:00","forks":28,"fork":false,"size":208,"name":"scala-maven-plugin","url":"https://github.com/davidB/scala-maven-plugin","description":"The scala-maven-plugin (previously maven-scala-plugin) is used for compiling/testing/running/documenting scala code in maven.","private":false,"username":"davidB","pushed":"2012-06-29T00:35:06-07:00","watchers":101,"has_wiki":true},{"type":"repo","created_at":"2010-11-29T17:07:24-08:00","score":10.1572,"owner":"tpetricek","followers":15,"open_issues":0,"created":"2010-11-29T17:07:24-08:00","homepage":"http://tomasp.net/blog","has_issues":true,"has_downloads":true,"language":"F#","pushed_at":"2012-06-26T15:17:29-07:00","forks":3,"fork":false,"size":6960,"name":"Documents","url":"https://github.com/tpetricek/Documents","description":"Includes samples for my blog posts, source code and slides for my talks and other resources.","private":false,"username":"tpetricek","pushed":"2012-06-26T15:17:29-07:00","watchers":15,"has_wiki":true},{"type":"repo","created_at":"2010-01-01T15:23:02-08:00","score":10.063814,"owner":"symphonists","followers":14,"open_issues":2,"organization":"symphonists","created":"2010-01-01T15:23:02-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"PHP","pushed_at":"2012-05-18T09:20:36-07:00","forks":7,"fork":false,"size":208,"name":"documenter","url":"https://github.com/symphonists/documenter","description":"Symphony extension that allows users to add documentation to back-end pages","private":false,"username":"symphonists","pushed":"2012-05-18T09:20:36-07:00","watchers":14,"has_wiki":true},{"type":"repo","created_at":"2010-06-15T09:39:09-07:00","score":10.012143,"owner":"DigitalPebble","followers":99,"open_issues":12,"organization":"DigitalPebble","created":"2010-06-15T09:39:09-07:00","homepage":"","has_issues":true,"has_downloads":false,"language":"Java","pushed_at":"2012-06-28T05:59:52-07:00","forks":14,"fork":false,"size":200,"name":"behemoth","url":"https://github.com/DigitalPebble/behemoth","description":"Behemoth is an open source platform for large scale document analysis based on Apache Hadoop.","private":false,"username":"DigitalPebble","pushed":"2012-06-28T05:59:52-07:00","watchers":99,"has_wiki":true},{"type":"repo","created_at":"2012-02-14T00:57:11-08:00","score":9.966145,"owner":"locomotivecms","followers":13,"open_issues":2,"organization":"locomotivecms","created":"2012-02-14T00:57:11-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Ruby","pushed_at":"2012-06-28T05:30:46-07:00","forks":11,"fork":false,"size":196,"name":"documentation","url":"https://github.com/locomotivecms/documentation","description":"The website sources about the new LocomotiveCMS documentation \"center\"","private":false,"username":"locomotivecms","pushed":"2012-06-28T05:30:46-07:00","watchers":13,"has_wiki":true},{"type":"repo","created_at":"2012-05-23T17:31:03-07:00","score":9.96186,"owner":"eucalyptus","followers":13,"open_issues":0,"organization":"eucalyptus","created":"2012-05-23T17:31:03-07:00","has_issues":true,"has_downloads":true,"language":"Prolog","pushed_at":"2012-06-27T10:41:21-07:00","forks":9,"fork":false,"size":372,"name":"documentation","url":"https://github.com/eucalyptus/documentation","description":"","private":false,"username":"eucalyptus","pushed":"2012-06-27T10:41:21-07:00","watchers":13,"has_wiki":true},{"type":"repo","created_at":"2011-08-22T16:39:11-07:00","score":9.940341,"owner":"propelorm","followers":93,"open_issues":6,"organization":"propelorm","created":"2011-08-22T16:39:11-07:00","homepage":"http://www.propelorm.org/","has_issues":true,"master_branch":"master","has_downloads":true,"language":"JavaScript","pushed_at":"2012-06-27T06:49:38-07:00","forks":67,"fork":false,"size":236,"name":"propelorm.github.com","url":"https://github.com/propelorm/propelorm.github.com","description":"The Propel documentation.","private":false,"username":"propelorm","pushed":"2012-06-27T06:49:38-07:00","watchers":93,"has_wiki":false},{"type":"repo","created_at":"2011-06-20T12:36:30-07:00","score":9.92644,"owner":"kobold2d","followers":99,"open_issues":0,"organization":"kobold2d","created":"2011-06-20T12:36:30-07:00","integrate_branch":"develop","homepage":"http://www.kobold2d.com","has_issues":true,"has_downloads":true,"language":"Objective-C","pushed_at":"2012-03-24T14:21:10-07:00","forks":6,"fork":false,"size":112,"name":"Kobold2D","url":"https://github.com/kobold2d/Kobold2D","description":"Bringing Order to Cocos2D Chaos and Complexity. Kobold2D is open source, all-inclusive, ARC enabled, documented. For iOS and Mac OS X.","private":false,"username":"kobold2d","pushed":"2012-03-24T14:21:10-07:00","watchers":99,"has_wiki":true},{"type":"repo","created_at":"2011-06-12T19:11:35-07:00","score":9.918407,"owner":"vladocar","followers":57,"open_issues":1,"created":"2011-06-12T19:11:35-07:00","homepage":"http://www.vcarrer.com","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2011-09-18T08:09:13-07:00","forks":2,"fork":false,"size":172,"name":"AutoObjectDocumentation","url":"https://github.com/vladocar/AutoObjectDocumentation","description":"Auto Object Documentation - JavaScript","private":false,"username":"vladocar","pushed":"2011-09-18T08:09:13-07:00","watchers":57,"has_wiki":true},{"type":"repo","created_at":"2010-04-29T20:23:55-07:00","score":9.871622,"owner":"jwage","followers":98,"open_issues":2,"created":"2010-04-29T20:23:55-07:00","homepage":"http://www.twitter.com/jwage","has_issues":true,"has_downloads":true,"language":"PHP","pushed_at":"2011-06-27T08:36:05-07:00","forks":27,"fork":false,"size":224,"name":"php-mongodb-admin","url":"https://github.com/jwage/php-mongodb-admin","description":"A PHP MongoDB Admin script for managing databases, collections and documents from a standalone easy to use script.","private":false,"username":"jwage","pushed":"2011-06-27T08:36:05-07:00","watchers":98,"has_wiki":true},{"type":"repo","created_at":"2010-02-26T05:48:00-08:00","score":9.816803,"owner":"peterbe","followers":97,"open_issues":2,"created":"2010-02-26T05:48:00-08:00","integrate_branch":"master","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-09-01T07:58:42-07:00","forks":10,"fork":false,"size":488,"name":"django-mongokit","url":"https://github.com/peterbe/django-mongokit","description":"Bridging Django to MongoDB with the MongoKit ODM (Object Document Mapper)","private":false,"username":"peterbe","pushed":"2011-09-01T07:58:42-07:00","watchers":97,"has_wiki":true},{"type":"repo","created_at":"2010-09-14T12:30:19-07:00","score":9.768935,"owner":"puppetlabs","followers":93,"open_issues":0,"organization":"puppetlabs","created":"2010-09-14T12:30:19-07:00","homepage":"","has_issues":false,"has_downloads":true,"language":"Ruby","pushed_at":"2012-06-27T14:16:41-07:00","forks":73,"fork":false,"size":404,"name":"puppet-docs","url":"https://github.com/puppetlabs/puppet-docs","description":"Curated Puppet Documentation","private":false,"username":"puppetlabs","pushed":"2012-06-27T14:16:41-07:00","watchers":93,"has_wiki":true},{"type":"repo","created_at":"2011-07-16T08:54:08-07:00","score":9.671265,"owner":"laravel","followers":92,"open_issues":25,"organization":"laravel","created":"2011-07-16T08:54:08-07:00","homepage":"http://laravel.com","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2012-06-19T05:19:16-07:00","forks":53,"fork":false,"size":256,"name":"docs","url":"https://github.com/laravel/docs","description":"The Laravel Framework Documentation.","private":false,"username":"laravel","pushed":"2012-06-19T05:19:16-07:00","watchers":92,"has_wiki":false},{"type":"repo","created_at":"2012-04-24T14:59:39-07:00","score":9.668849,"owner":"zetacomponents","followers":10,"open_issues":1,"organization":"zetacomponents","created":"2012-04-24T14:59:39-07:00","has_issues":true,"has_downloads":true,"language":"PHP","pushed_at":"2012-05-21T02:55:50-07:00","forks":2,"fork":false,"size":128,"name":"Document","url":"https://github.com/zetacomponents/Document","description":"","private":false,"username":"zetacomponents","pushed":"2012-05-21T02:55:50-07:00","watchers":10,"has_wiki":true},{"type":"repo","created_at":"2011-12-12T21:52:00-08:00","score":9.597529,"owner":"grosser","followers":93,"open_issues":4,"created":"2011-12-12T21:52:00-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Ruby","pushed_at":"2012-04-06T09:26:19-07:00","forks":10,"fork":false,"size":144,"name":"vendorer","url":"https://github.com/grosser/vendorer","description":"Vendorer keeps your dependencies documented and up to date","private":false,"username":"grosser","pushed":"2012-04-06T09:26:19-07:00","watchers":93,"has_wiki":true},{"type":"repo","created_at":"2010-04-02T00:25:34-07:00","score":9.597529,"owner":"symfony","followers":93,"open_issues":1,"organization":"symfony","created":"2010-04-02T00:25:34-07:00","homepage":"http://www.symfony-project.org/","has_issues":false,"has_downloads":false,"language":"PHP","pushed_at":"2012-06-26T06:41:18-07:00","forks":50,"fork":false,"size":420,"name":"symfony1-docs","url":"https://github.com/symfony/symfony1-docs","description":"Documentation for symfony 1.3/1.4","private":false,"username":"symfony","pushed":"2012-06-26T06:41:18-07:00","watchers":93,"has_wiki":false},{"type":"repo","created_at":"2010-03-10T12:11:20-08:00","score":9.523793,"owner":"rtomayko","followers":94,"open_issues":8,"created":"2010-03-10T12:11:20-08:00","homepage":"http://rtomayko.github.com/shocco/","has_issues":true,"has_downloads":true,"language":"Perl","pushed_at":"2011-12-10T07:09:17-08:00","forks":17,"fork":false,"size":256,"name":"shocco","url":"https://github.com/rtomayko/shocco","description":"shocco is a quick-and-dirty, literate-programming-style documentation generator for / in POSIX shell","private":false,"username":"rtomayko","pushed":"2011-12-10T07:09:17-08:00","watchers":94,"has_wiki":true},{"type":"repo","created_at":"2010-06-21T18:18:23-07:00","score":9.480366,"owner":"swganh","followers":8,"open_issues":0,"created":"2010-06-21T18:18:23-07:00","homepage":"http://www.swganh.com","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2010-12-10T11:48:02-08:00","forks":3,"fork":false,"size":296,"name":"documentation","url":"https://github.com/swganh/documentation","description":"SWG:ANH - Documentation","private":false,"username":"swganh","pushed":"2010-12-10T11:48:02-08:00","watchers":8,"has_wiki":true},{"type":"repo","created_at":"2012-03-27T20:50:52-07:00","score":9.414156,"owner":"visionmedia","followers":92,"open_issues":5,"created":"2012-03-27T20:50:52-07:00","homepage":"http://visionmedia.github.com/jog ","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2012-04-15T09:58:56-07:00","forks":9,"fork":false,"size":192,"name":"jog","url":"https://github.com/visionmedia/jog","description":"JSON document logging & reporting inspired by loggly for node.js","private":false,"username":"visionmedia","pushed":"2012-04-15T09:58:56-07:00","watchers":92,"has_wiki":true},{"type":"repo","created_at":"2011-09-23T13:57:35-07:00","score":9.304519,"owner":"mongodb","followers":90,"open_issues":0,"organization":"mongodb","created":"2011-09-23T13:57:35-07:00","homepage":"http://docs.mongodb.org","has_issues":false,"has_downloads":true,"language":"Python","pushed_at":"2012-06-28T13:04:39-07:00","forks":58,"fork":false,"size":676,"name":"docs","url":"https://github.com/mongodb/docs","description":"The MongoDB Documentation Project Source.","private":false,"username":"mongodb","pushed":"2012-06-28T13:04:39-07:00","watchers":90,"has_wiki":false},{"type":"repo","created_at":"2011-05-07T17:05:20-07:00","score":9.285026,"owner":"HumMod","followers":6,"open_issues":0,"organization":"HumMod","created":"2011-05-07T17:05:20-07:00","homepage":"","has_issues":true,"master_branch":"gh-pages","language":"","has_downloads":true,"pushed_at":"2011-08-10T06:23:09-07:00","forks":4,"fork":false,"size":900,"name":"documentation","url":"https://github.com/HumMod/documentation","description":"The HumMod documentation.","private":false,"username":"HumMod","pushed":"2011-08-10T06:23:09-07:00","watchers":6,"has_wiki":true},{"type":"repo","created_at":"2010-10-02T13:36:38-07:00","score":9.285026,"owner":"londonhackspace","followers":7,"open_issues":0,"organization":"londonhackspace","created":"2010-10-02T13:36:38-07:00","homepage":"","has_issues":false,"language":"","has_downloads":false,"pushed_at":"2012-01-10T17:54:22-08:00","forks":2,"fork":false,"size":108,"name":"documentation","url":"https://github.com/londonhackspace/documentation","description":"London Hackspace's legal documentation","private":false,"username":"londonhackspace","pushed":"2012-01-10T17:54:22-08:00","watchers":7,"has_wiki":false},{"type":"repo","created_at":"2012-04-18T12:35:38-07:00","score":9.285026,"owner":"enStratus","followers":6,"open_issues":1,"organization":"enStratus","created":"2012-04-18T12:35:38-07:00","homepage":"http://docs.enstratus.com","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-06-12T20:17:53-07:00","forks":2,"fork":false,"size":376,"name":"documentation","url":"https://github.com/enStratus/documentation","description":"enStratus Documentation","private":false,"username":"enStratus","pushed":"2012-06-12T20:17:53-07:00","watchers":6,"has_wiki":true},{"type":"repo","created_at":"2011-03-29T10:32:53-07:00","score":9.285026,"owner":"citation-style-language","followers":6,"open_issues":4,"organization":"citation-style-language","created":"2011-03-29T10:32:53-07:00","homepage":"http://citationstyles.org/","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2012-06-27T18:42:14-07:00","forks":4,"fork":false,"size":188,"name":"documentation","url":"https://github.com/citation-style-language/documentation","description":"Citation Style Language documentation","private":false,"username":"citation-style-language","pushed":"2012-06-27T18:42:14-07:00","watchers":6,"has_wiki":true},{"type":"repo","created_at":"2011-12-01T09:58:56-08:00","score":9.283312,"owner":"Sylius","followers":6,"open_issues":0,"organization":"Sylius","created":"2011-12-01T09:58:56-08:00","homepage":"Sylius.org","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-05-13T02:36:33-07:00","forks":2,"fork":false,"size":136,"name":"Documentation","url":"https://github.com/Sylius/Documentation","description":"Official documentation repository, hosted on readthedocs.org.","private":false,"username":"Sylius","pushed":"2012-05-13T02:36:33-07:00","watchers":6,"has_wiki":false},{"type":"repo","created_at":"2011-10-27T12:22:20-07:00","score":9.2824545,"owner":"phpbb","followers":6,"open_issues":4,"organization":"phpbb","created":"2011-10-27T12:22:20-07:00","homepage":"http://www.phpbb.com","has_issues":true,"has_downloads":true,"language":"Shell","pushed_at":"2011-10-27T12:24:35-07:00","forks":7,"fork":false,"size":6680,"name":"documentation","url":"https://github.com/phpbb/documentation","description":"Documentation for end-users: board visitors, moderators and administrators","private":false,"username":"phpbb","pushed":"2011-10-27T12:24:35-07:00","watchers":6,"has_wiki":false},{"type":"repo","created_at":"2011-11-26T19:17:09-08:00","score":9.27817,"owner":"panada","followers":6,"open_issues":0,"created":"2011-11-26T19:17:09-08:00","homepage":"","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2012-06-25T05:05:38-07:00","forks":6,"fork":false,"size":260,"name":"documentation","url":"https://github.com/panada/documentation","description":"","private":false,"username":"panada","pushed":"2012-06-25T05:05:38-07:00","watchers":6,"has_wiki":true},{"type":"repo","created_at":"2009-12-25T01:41:27-08:00","score":9.238146,"owner":"sebastianbergmann","followers":50,"open_issues":10,"created":"2009-12-25T01:41:27-08:00","homepage":"http://www.phpunit.de/","has_issues":true,"has_downloads":false,"language":"JavaScript","pushed_at":"2012-06-20T20:04:57-07:00","forks":36,"fork":false,"size":184,"name":"phpunit-documentation","url":"https://github.com/sebastianbergmann/phpunit-documentation","description":"Documentation for PHPUnit.","private":false,"username":"sebastianbergmann","pushed":"2012-06-20T20:04:57-07:00","watchers":50,"has_wiki":false},{"type":"repo","created_at":"2009-10-08T12:58:28-07:00","score":9.218816,"owner":"coordt","followers":90,"open_issues":4,"created":"2009-10-08T12:58:28-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2012-02-17T09:44:35-08:00","forks":12,"fork":false,"size":188,"name":"ADCtheme","url":"https://github.com/coordt/ADCtheme","description":"A Sphinx theme that formats documentation like the Apple Developer Connection","private":false,"username":"coordt","pushed":"2012-02-17T09:44:35-08:00","watchers":90,"has_wiki":true},{"type":"repo","created_at":"2012-04-12T09:28:15-07:00","score":9.206849,"owner":"nelmio","followers":89,"open_issues":8,"organization":"nelmio","created":"2012-04-12T09:28:15-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"PHP","pushed_at":"2012-06-28T01:39:29-07:00","forks":11,"fork":false,"size":228,"name":"NelmioApiDocBundle","url":"https://github.com/nelmio/NelmioApiDocBundle","description":"Generates documentation for your REST API from annotations","private":false,"username":"nelmio","pushed":"2012-06-28T01:39:29-07:00","watchers":89,"has_wiki":true},{"type":"repo","created_at":"2011-11-25T04:23:08-08:00","score":9.187932,"owner":"sergiomtzlosa","followers":91,"open_issues":0,"created":"2011-11-25T04:23:08-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Objective-C","pushed_at":"2011-11-25T04:41:56-08:00","forks":4,"fork":false,"size":100,"name":"iCloud-Singleton-CloudMe","url":"https://github.com/sergiomtzlosa/iCloud-Singleton-CloudMe","description":"Upload text documents and images easily, also you can save your defaults in your cloud, just with few lines. Follow me : @sergimtzlosa","private":false,"username":"sergiomtzlosa","pushed":"2011-11-25T04:41:56-08:00","watchers":91,"has_wiki":true},{"type":"repo","created_at":"2011-10-26T08:35:29-07:00","score":9.186499,"owner":"Innovators-Team10","followers":5,"open_issues":0,"organization":"Innovators-Team10","created":"2011-10-26T08:35:29-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2012-06-24T08:03:51-07:00","forks":3,"fork":false,"size":272,"name":"Documentation","url":"https://github.com/Innovators-Team10/Documentation","description":"Team documentation for TrollEdit ","private":false,"username":"Innovators-Team10","pushed":"2012-06-24T08:03:51-07:00","watchers":5,"has_wiki":true},{"type":"repo","created_at":"2011-03-05T18:53:23-08:00","score":9.180499,"owner":"DrupalVietNam","followers":5,"open_issues":2,"organization":"DrupalVietNam","created":"2011-03-05T18:53:23-08:00","homepage":"http://drupalvietnam.org","has_issues":true,"master_branch":"master","has_downloads":true,"language":"PHP","pushed_at":"2011-03-05T19:09:07-08:00","forks":1,"fork":false,"size":320,"name":"document","url":"https://github.com/DrupalVietNam/document","description":"","private":false,"username":"DrupalVietNam","pushed":"2011-03-05T19:09:07-08:00","watchers":5,"has_wiki":true},{"type":"repo","created_at":"2010-08-10T05:46:25-07:00","score":9.135334,"owner":"ralph","followers":49,"open_issues":2,"created":"2010-08-10T05:46:25-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Ruby","pushed_at":"2012-01-29T05:56:58-08:00","forks":8,"fork":false,"size":116,"name":"document_mapper","url":"https://github.com/ralph/document_mapper","description":"Simple model layer that let's you query text documents as if they were a database.","private":false,"username":"ralph","pushed":"2012-01-29T05:56:58-08:00","watchers":49,"has_wiki":true},{"type":"repo","created_at":"2009-04-01T01:13:53-07:00","score":9.121146,"owner":"heroku","followers":89,"open_issues":1,"organization":"heroku","created":"2009-04-01T01:13:53-07:00","homepage":"http://docs.heroku.com/","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2011-01-24T12:55:46-08:00","forks":22,"fork":false,"size":1080,"name":"heroku-docs","url":"https://github.com/heroku/heroku-docs","description":"Documentation for Heroku, in the form of a Sinatra app serving markdown text files.","private":false,"username":"heroku","pushed":"2011-01-24T12:55:46-08:00","watchers":89,"has_wiki":true},{"type":"repo","created_at":"2010-09-18T02:37:23-07:00","score":9.109179,"owner":"doctrine","followers":88,"open_issues":4,"organization":"doctrine","created":"2010-09-18T02:37:23-07:00","homepage":"http://www.doctrine-project.org","has_issues":true,"has_downloads":true,"language":"PHP","pushed_at":"2012-05-22T06:19:26-07:00","forks":16,"fork":false,"size":204,"name":"couchdb-odm","url":"https://github.com/doctrine/couchdb-odm","description":"A Document Mapper based on CouchDB","private":false,"username":"doctrine","pushed":"2012-05-22T06:19:26-07:00","watchers":88,"has_wiki":true},{"type":"repo","created_at":"2010-09-29T12:34:21-07:00","score":9.089685,"owner":"travelbot","followers":4,"open_issues":0,"created":"2010-09-29T12:34:21-07:00","homepage":"","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2010-11-25T06:03:55-08:00","forks":1,"fork":false,"size":616,"name":"documentation","url":"https://github.com/travelbot/documentation","description":"Travelbot documentation repo","private":false,"username":"travelbot","pushed":"2010-11-25T06:03:55-08:00","watchers":4,"has_wiki":true},{"type":"repo","created_at":"2012-01-17T03:10:07-08:00","score":9.087114,"owner":"nizsheanez","followers":4,"open_issues":0,"created":"2012-01-17T03:10:07-08:00","has_issues":true,"has_downloads":true,"language":"PHP","pushed_at":"2012-05-06T10:03:05-07:00","forks":1,"fork":false,"size":2620,"name":"documentation","url":"https://github.com/nizsheanez/documentation","description":"Documentation engine for https://github.com/ostapetc/Yii-CMS","private":false,"username":"nizsheanez","pushed":"2012-05-06T10:03:05-07:00","watchers":4,"has_wiki":true},{"type":"repo","created_at":"2010-11-24T08:52:10-08:00","score":9.082829,"owner":"developmentseed","followers":5,"open_issues":0,"organization":"developmentseed","created":"2010-11-24T08:52:10-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2012-03-28T19:00:43-07:00","forks":1,"fork":false,"size":980,"name":"document","url":"https://github.com/developmentseed/document","description":"Rudimentary content system for Express + CouchDB + HBS.","private":false,"username":"developmentseed","pushed":"2012-03-28T19:00:43-07:00","watchers":5,"has_wiki":true},{"type":"repo","created_at":"2012-03-29T04:04:47-07:00","score":9.082829,"owner":"jbosstm","followers":4,"open_issues":0,"created":"2012-03-29T04:04:47-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Java","pushed_at":"2012-06-12T06:38:29-07:00","forks":3,"fork":false,"size":128,"name":"documentation","url":"https://github.com/jbosstm/documentation","description":"","private":false,"username":"jbosstm","pushed":"2012-06-12T06:38:29-07:00","watchers":4,"has_wiki":true},{"type":"repo","created_at":"2010-09-23T05:54:13-07:00","score":9.04741,"owner":"tciuro","followers":90,"open_issues":1,"created":"2010-09-23T05:54:13-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Objective-C","pushed_at":"2012-06-15T17:30:23-07:00","forks":6,"fork":false,"size":236,"name":"NanoStore","url":"https://github.com/tciuro/NanoStore","description":"NanoStore is an open source, lightweight schema-less local key-value document store written in Objective-C for Mac OS X and iOS. ","private":false,"username":"tciuro","pushed":"2012-06-15T17:30:23-07:00","watchers":90,"has_wiki":true},{"type":"repo","created_at":"2011-05-18T04:38:40-07:00","score":8.99373,"owner":"massidea","followers":3,"open_issues":0,"organization":"massidea","created":"2011-05-18T04:38:40-07:00","homepage":"http://code.google.com/p/massidea/wiki/","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2011-05-25T05:59:08-07:00","forks":3,"fork":false,"size":332,"name":"documentation","url":"https://github.com/massidea/documentation","description":"Documentation images and such","private":false,"username":"massidea","pushed":"2011-05-25T05:59:08-07:00","watchers":3,"has_wiki":true},{"type":"repo","created_at":"2012-01-20T14:36:42-08:00","score":8.99373,"owner":"phonelab","followers":3,"open_issues":0,"organization":"phonelab","created":"2012-01-20T14:36:42-08:00","homepage":"","has_issues":true,"language":"","has_downloads":true,"forks":1,"fork":false,"size":0,"name":"Documentation","url":"https://github.com/phonelab/Documentation","description":"Repo for documentation","private":false,"username":"phonelab","pushed":null,"watchers":3,"has_wiki":true},{"type":"repo","created_at":"2012-01-23T15:37:44-08:00","score":8.99373,"owner":"agavi","followers":3,"open_issues":9,"created":"2012-01-23T15:37:44-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"PHP","pushed_at":"2012-02-08T19:42:39-08:00","forks":1,"fork":false,"size":812,"name":"documentation","url":"https://github.com/agavi/documentation","description":"The documentation for Agavi","private":false,"username":"agavi","pushed":"2012-02-08T19:42:39-08:00","watchers":3,"has_wiki":false},{"type":"repo","created_at":"2011-05-05T09:22:01-07:00","score":8.992015,"owner":"deskmetrics","followers":3,"open_issues":0,"organization":"deskmetrics","created":"2011-05-05T09:22:01-07:00","homepage":"http://docs.deskmetrics.com/","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-08-08T08:16:56-07:00","forks":3,"fork":false,"size":254,"name":"Documentation","url":"https://github.com/deskmetrics/Documentation","description":"DeskMetrics Documentation","private":false,"username":"deskmetrics","pushed":"2011-08-08T08:16:56-07:00","watchers":3,"has_wiki":true},{"type":"repo","created_at":"2011-03-24T08:18:23-07:00","score":8.992015,"owner":"pika","followers":3,"open_issues":0,"organization":"pika","created":"2011-03-24T08:18:23-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2011-03-28T22:15:05-07:00","forks":1,"fork":false,"size":344,"name":"documentation","url":"https://github.com/pika/documentation","description":"Pika Sphinx documentation","private":false,"username":"pika","pushed":"2011-03-28T22:15:05-07:00","watchers":3,"has_wiki":true},{"type":"repo","created_at":"2012-05-25T12:26:01-07:00","score":8.9911585,"owner":"substance","followers":3,"open_issues":1,"organization":"substance","created":"2012-05-25T12:26:01-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2012-06-24T15:41:45-07:00","forks":1,"fork":false,"size":448,"name":"document","url":"https://github.com/substance/document","description":"Substance Document Format - not yet functional -","private":false,"username":"substance","pushed":"2012-06-24T15:41:45-07:00","watchers":3,"has_wiki":true},{"type":"repo","created_at":"2010-07-26T12:46:25-07:00","score":8.9911585,"owner":"68kb","followers":3,"open_issues":0,"organization":"68kb","created":"2010-07-26T12:46:25-07:00","homepage":"http://68kb.com","has_issues":true,"language":"","has_downloads":true,"forks":1,"fork":false,"size":0,"name":"documentation","url":"https://github.com/68kb/documentation","description":"68KB v2 Documentation","private":false,"username":"68kb","pushed":null,"watchers":3,"has_wiki":true},{"type":"repo","created_at":"2012-02-28T12:53:11-08:00","score":8.990301,"owner":"openmhealth","followers":3,"open_issues":0,"organization":"openmhealth","created":"2012-02-28T12:53:11-08:00","homepage":"","has_issues":true,"language":"","has_downloads":true,"forks":1,"fork":false,"size":0,"name":"documentation","url":"https://github.com/openmhealth/documentation","description":"Open mHealth Technical Documentation","private":false,"username":"openmhealth","pushed":null,"watchers":3,"has_wiki":true},{"type":"repo","created_at":"2011-08-03T06:01:45-07:00","score":8.985159,"owner":"bonatoc","followers":3,"open_issues":0,"created":"2011-08-03T06:01:45-07:00","homepage":"","has_issues":true,"language":"","has_downloads":true,"forks":1,"fork":false,"size":0,"name":"Documentation","url":"https://github.com/bonatoc/Documentation","description":"","private":false,"username":"bonatoc","pushed":null,"watchers":3,"has_wiki":true},{"type":"repo","created_at":"2011-04-23T00:19:47-07:00","score":8.985159,"owner":"trapd00r","followers":3,"open_issues":0,"created":"2011-04-23T00:19:47-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"VimL","pushed_at":"2012-06-12T10:14:02-07:00","forks":1,"fork":false,"size":225816,"name":"Documentation","url":"https://github.com/trapd00r/Documentation","description":"Docs and notes for Vim, Zsh, Git, Terminal emulators, Perl ... that I've either written or collected over time","private":false,"username":"trapd00r","pushed":"2012-06-12T10:14:02-07:00","watchers":3,"has_wiki":true},{"type":"repo","created_at":"2009-11-11T16:10:04-08:00","score":8.937773,"owner":"wesabe","followers":88,"open_issues":3,"organization":"wesabe","created":"2009-11-11T16:10:04-08:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Java","pushed_at":"2010-12-21T11:58:36-08:00","forks":7,"fork":false,"size":204,"name":"grendel","url":"https://github.com/wesabe/grendel","description":"Grendel is a RESTful web service which allows for the secure storage of users' documents.","private":false,"username":"wesabe","pushed":"2010-12-21T11:58:36-08:00","watchers":88,"has_wiki":true},{"type":"repo","created_at":"2011-01-24T06:25:50-08:00","score":8.937773,"owner":"ceylon","followers":88,"open_issues":76,"organization":"ceylon","created":"2011-01-24T06:25:50-08:00","homepage":"http://ceylon-lang.org","has_issues":true,"has_downloads":true,"language":"Java","pushed_at":"2012-06-28T03:45:52-07:00","forks":28,"fork":false,"size":2657,"name":"ceylon-compiler","url":"https://github.com/ceylon/ceylon-compiler","description":"Ceylon compiler (ceylonc: Java backend), Ceylon documentation generator (ceylond) and Ceylon ant tasks.","private":false,"username":"ceylon","pushed":"2012-06-28T03:45:52-07:00","watchers":88,"has_wiki":true},{"type":"repo","created_at":"2011-02-07T14:15:37-08:00","score":8.901872,"owner":"mapbox","followers":85,"open_issues":10,"organization":"mapbox","created":"2011-02-07T14:15:37-08:00","homepage":"http://mbtiles.org/","has_issues":true,"has_downloads":true,"language":"JavaScript","pushed_at":"2012-06-10T21:31:16-07:00","forks":9,"fork":false,"size":804,"name":"mbtiles-spec","url":"https://github.com/mapbox/mbtiles-spec","description":"specification documents for the MBTiles tileset format","private":false,"username":"mapbox","pushed":"2012-06-10T21:31:16-07:00","watchers":85,"has_wiki":true},{"type":"repo","created_at":"2011-03-18T15:42:12-07:00","score":8.901202,"owner":"sciversedev","followers":2,"open_issues":0,"created":"2011-03-18T15:42:12-07:00","homepage":"http://developer.sciverse.com/learn","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2011-04-07T15:47:16-07:00","forks":2,"fork":false,"size":27244,"name":"documentation","url":"https://github.com/sciversedev/documentation","description":"documentation","private":false,"username":"sciversedev","pushed":"2011-04-07T15:47:16-07:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2011-07-05T23:14:09-07:00","score":8.89606,"owner":"andreassolberg","followers":2,"open_issues":0,"created":"2011-07-05T23:14:09-07:00","homepage":"http://rnd.feide.no","has_issues":false,"language":"","has_downloads":true,"pushed_at":"2012-02-13T00:02:53-08:00","forks":1,"fork":false,"size":392,"name":"documents","url":"https://github.com/andreassolberg/documents","description":"Andreas' documents","private":false,"username":"andreassolberg","pushed":"2012-02-13T00:02:53-08:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2011-12-22T14:44:38-08:00","score":8.89606,"owner":"coolfluid","followers":2,"open_issues":0,"organization":"coolfluid","created":"2011-12-22T14:44:38-08:00","homepage":"http://coolfluidsrv.vki.ac.be","has_issues":true,"has_downloads":true,"language":"Objective-C","pushed_at":"2012-04-28T03:18:18-07:00","forks":2,"fork":false,"size":116,"name":"documents","url":"https://github.com/coolfluid/documents","description":"coolfluid documentation","private":false,"username":"coolfluid","pushed":"2012-04-28T03:18:18-07:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2012-05-16T18:19:31-07:00","score":8.89606,"owner":"DragonflyStudios","followers":2,"open_issues":0,"organization":"DragonflyStudios","created":"2012-05-16T18:19:31-07:00","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2012-05-16T18:20:15-07:00","forks":1,"fork":false,"size":92,"name":"Documents","url":"https://github.com/DragonflyStudios/Documents","description":"Organization Documents","private":false,"username":"DragonflyStudios","pushed":"2012-05-16T18:20:15-07:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2009-11-09T16:33:29-08:00","score":8.894345,"owner":"RedTeamCOSC470","followers":2,"open_issues":2,"created":"2009-11-09T16:33:29-08:00","homepage":"","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2010-04-25T11:34:05-07:00","forks":1,"fork":false,"size":29964,"name":"Documentation","url":"https://github.com/RedTeamCOSC470/Documentation","description":"Documentation for the Stargazer project.","private":false,"username":"RedTeamCOSC470","pushed":"2010-04-25T11:34:05-07:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2010-11-15T07:11:42-08:00","score":8.894345,"owner":"sugestio","followers":2,"open_issues":0,"created":"2010-11-15T07:11:42-08:00","homepage":"https://www.sugestio.com","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2011-12-15T03:17:16-08:00","forks":1,"fork":false,"size":1260,"name":"documentation","url":"https://github.com/sugestio/documentation","description":"API documentation in markdown format.","private":false,"username":"sugestio","pushed":"2011-12-15T03:17:16-08:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2011-12-19T05:55:08-08:00","score":8.894345,"owner":"NServiceBus","followers":2,"open_issues":1,"created":"2011-12-19T05:55:08-08:00","homepage":"","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2011-12-19T05:58:58-08:00","forks":1,"fork":false,"size":96,"name":"Documentation","url":"https://github.com/NServiceBus/Documentation","description":"Documentation for NServiceBus","private":false,"username":"NServiceBus","pushed":"2011-12-19T05:58:58-08:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2008-12-16T02:58:36-08:00","score":8.893489,"owner":"wodzupl20","followers":2,"open_issues":0,"created":"2008-12-16T02:58:36-08:00","homepage":"http://www.xmpp.org/","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2008-12-02T09:11:15-08:00","forks":4,"fork":false,"size":26624,"name":"documentation","url":"https://github.com/wodzupl20/documentation","description":"Mirror of the main Documentation Subversion repository","private":false,"username":"wodzupl20","pushed":"2008-12-02T09:11:15-08:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2011-10-14T09:05:10-07:00","score":8.893489,"owner":"mantidproject","followers":2,"open_issues":0,"organization":"mantidproject","created":"2011-10-14T09:05:10-07:00","homepage":"www.mantidproject.org","has_issues":false,"has_downloads":true,"language":"Perl","pushed_at":"2012-06-27T08:21:29-07:00","forks":1,"fork":false,"size":264812,"name":"documents","url":"https://github.com/mantidproject/documents","description":"Holds documents relating to the Mantid project","private":false,"username":"mantidproject","pushed":"2012-06-27T08:21:29-07:00","watchers":2,"has_wiki":false},{"type":"repo","created_at":"2012-01-14T10:45:50-08:00","score":8.892632,"owner":"adventureloop","followers":2,"open_issues":16,"created":"2012-01-14T10:45:50-08:00","homepage":"","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2012-05-10T06:39:51-07:00","forks":1,"fork":false,"size":576,"name":"Documentation","url":"https://github.com/adventureloop/Documentation","description":"Documentation for all stages of final year project","private":false,"username":"adventureloop","pushed":"2012-05-10T06:39:51-07:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2012-05-13T23:49:04-07:00","score":8.892632,"owner":"enstratus-ja","followers":2,"open_issues":0,"organization":"enstratus-ja","created":"2012-05-13T23:49:04-07:00","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2012-06-13T01:26:36-07:00","forks":1,"fork":false,"size":12748,"name":"documentation","url":"https://github.com/enstratus-ja/documentation","description":"Japanese translation of enStratus Documentation","private":false,"username":"enstratus-ja","pushed":"2012-06-13T01:26:36-07:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2011-11-06T08:41:26-08:00","score":8.892632,"owner":"winlibs","followers":2,"open_issues":0,"organization":"winlibs","created":"2011-11-06T08:41:26-08:00","homepage":"","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2011-11-07T09:14:52-08:00","forks":1,"fork":false,"size":148,"name":"documentation","url":"https://github.com/winlibs/documentation","description":"General documentations about the winlib org and projects","private":false,"username":"winlibs","pushed":"2011-11-07T09:14:52-08:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2010-04-17T07:54:37-07:00","score":8.891774,"owner":"thousandparsec","followers":2,"open_issues":0,"organization":"thousandparsec","created":"2010-04-17T07:54:37-07:00","homepage":"","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2010-08-10T23:50:12-07:00","forks":1,"fork":false,"size":604,"name":"documents","url":"https://github.com/thousandparsec/documents","description":"A repository containing important documents such as the XML definition of the Thousand Parsec protocol. ","private":false,"username":"thousandparsec","pushed":"2010-08-10T23:50:12-07:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2011-08-29T09:22:13-07:00","score":8.891774,"owner":"wocommunity","followers":2,"open_issues":0,"organization":"wocommunity","created":"2011-08-29T09:22:13-07:00","homepage":"","has_issues":true,"language":"","has_downloads":true,"forks":1,"fork":false,"size":0,"name":"Documentation","url":"https://github.com/wocommunity/Documentation","description":"All things needed for collaborate on new documentation (books, tutorials, etc.)","private":false,"username":"wocommunity","pushed":null,"watchers":2,"has_wiki":true},{"type":"repo","created_at":"2011-08-25T06:43:49-07:00","score":8.891774,"owner":"mangos","followers":2,"open_issues":0,"organization":"mangos","created":"2011-08-25T06:43:49-07:00","homepage":"http://getmangos.com/","has_issues":true,"language":"","has_downloads":true,"forks":1,"fork":false,"size":0,"name":"documentation","url":"https://github.com/mangos/documentation","description":"Project documentation, including general guidelines and rules for our community.","private":false,"username":"mangos","pushed":null,"watchers":2,"has_wiki":true},{"type":"repo","created_at":"2009-11-30T05:10:30-08:00","score":8.887489,"owner":"goremika","followers":2,"open_issues":0,"created":"2009-11-30T05:10:30-08:00","has_issues":true,"has_downloads":true,"language":"Ruby","pushed_at":"2009-12-14T01:22:23-08:00","forks":1,"fork":false,"size":5836,"name":"documenter","url":"https://github.com/goremika/documenter","description":"TODO: one-line summary of your gem","private":false,"username":"goremika","pushed":"2009-12-14T01:22:23-08:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2011-02-01T09:49:03-08:00","score":8.887489,"owner":"fluid-project","followers":2,"open_issues":0,"organization":"fluid-project","created":"2011-02-01T09:49:03-08:00","homepage":"http://fluidproject.org/","has_issues":false,"master_branch":"tutorials","has_downloads":true,"language":"JavaScript","pushed_at":"2011-02-01T11:06:56-08:00","forks":2,"fork":false,"size":456,"name":"documentation","url":"https://github.com/fluid-project/documentation","description":"","private":false,"username":"fluid-project","pushed":"2011-02-01T11:06:56-08:00","watchers":2,"has_wiki":false},{"type":"repo","created_at":"2011-01-14T03:57:10-08:00","score":8.887489,"owner":"scieloorg","followers":3,"open_issues":0,"organization":"scieloorg","created":"2011-01-14T03:57:10-08:00","homepage":"","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2011-10-24T06:01:02-07:00","forks":2,"fork":false,"size":9364,"name":"documents","url":"https://github.com/scieloorg/documents","description":"This repository was created to be a repository of attatchements (Images, PDF, Video, etc)that will be used in the wiki pages on githug. ","private":false,"username":"scieloorg","pushed":"2011-10-24T06:01:02-07:00","watchers":3,"has_wiki":true},{"type":"repo","created_at":"2012-02-16T19:42:14-08:00","score":8.887489,"owner":"TulsaLUG","followers":2,"open_issues":0,"created":"2012-02-16T19:42:14-08:00","homepage":"http://orgs.utulsa.edu/linuxusers/","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2012-02-16T19:54:14-08:00","forks":1,"fork":false,"size":84,"name":"Documents","url":"https://github.com/TulsaLUG/Documents","description":"The meeting topics, minutes, and more","private":false,"username":"TulsaLUG","pushed":"2012-02-16T19:54:14-08:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2011-07-03T13:30:47-07:00","score":8.887489,"owner":"amotl","followers":2,"open_issues":0,"created":"2011-07-03T13:30:47-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Python","pushed_at":"2012-03-19T03:09:46-07:00","forks":1,"fork":false,"size":176,"name":"documents","url":"https://github.com/amotl/documents","description":"This and that. Non-blocking, asynchronous I/O; Gevent; Python","private":false,"username":"amotl","pushed":"2012-03-19T03:09:46-07:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2011-11-04T06:00:07-07:00","score":8.887489,"owner":"honza","followers":2,"open_issues":1,"created":"2011-11-04T06:00:07-07:00","homepage":"","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2012-01-09T08:20:30-08:00","forks":3,"fork":false,"size":116,"name":"documents","url":"https://github.com/honza/documents","description":"","private":false,"username":"honza","pushed":"2012-01-09T08:20:30-08:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2011-03-19T20:00:45-07:00","score":8.887489,"owner":"dylan-hackers","followers":2,"open_issues":0,"organization":"dylan-hackers","created":"2011-03-19T20:00:45-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Perl","pushed_at":"2011-03-19T20:18:59-07:00","forks":1,"fork":false,"size":66572,"name":"documentation","url":"https://github.com/dylan-hackers/documentation","description":"Open Dylan and Gwydion Dylan doc","private":false,"username":"dylan-hackers","pushed":"2011-03-19T20:18:59-07:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2012-01-30T16:10:57-08:00","score":8.887489,"owner":"kfly8","followers":2,"open_issues":0,"created":"2012-01-30T16:10:57-08:00","homepage":"","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2012-06-20T06:29:31-07:00","forks":1,"fork":false,"size":136,"name":"Document","url":"https://github.com/kfly8/Document","description":"勉強した内容を貯めておくよ。ブログにしろよ。","private":false,"username":"kfly8","pushed":"2012-06-20T06:29:31-07:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2012-04-11T23:23:37-07:00","score":8.887489,"owner":"dongyongzhou","followers":2,"open_issues":0,"created":"2012-04-11T23:23:37-07:00","homepage":"","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2012-06-26T00:58:04-07:00","forks":2,"fork":false,"size":228,"name":"document","url":"https://github.com/dongyongzhou/document","description":"recording what I learm","private":false,"username":"dongyongzhou","pushed":"2012-06-26T00:58:04-07:00","watchers":2,"has_wiki":true},{"type":"repo","created_at":"2010-12-23T11:32:54-08:00","score":8.884431,"owner":"rdoc","followers":86,"open_issues":28,"organization":"rdoc","created":"2010-12-23T11:32:54-08:00","homepage":"http://rdoc.rubyforge.org/","has_issues":true,"has_downloads":true,"language":"Ruby","pushed_at":"2012-06-28T17:22:47-07:00","forks":33,"fork":false,"size":264,"name":"rdoc","url":"https://github.com/rdoc/rdoc","description":"RDoc produces HTML and online documentation for Ruby projects. RDoc includes the rdoc and ri tools for generating and displaying online documentation.","private":false,"username":"rdoc","pushed":"2012-06-28T17:22:47-07:00","watchers":86,"has_wiki":true},{"type":"repo","created_at":"2011-06-03T21:05:16-07:00","score":8.828136,"owner":"thetron","followers":86,"open_issues":5,"created":"2011-06-03T21:05:16-07:00","homepage":"","has_issues":true,"has_downloads":true,"language":"Ruby","pushed_at":"2012-04-12T23:31:10-07:00","forks":10,"fork":false,"size":144,"name":"mongoid_token","url":"https://github.com/thetron/mongoid_token","description":"A little random, unique token generator for Mongoid documents.","private":false,"username":"thetron","pushed":"2012-04-12T23:31:10-07:00","watchers":86,"has_wiki":true},{"type":"repo","created_at":"2011-06-18T10:43:36-07:00","score":8.816169,"owner":"travis-ci","followers":85,"open_issues":4,"organization":"travis-ci","created":"2011-06-18T10:43:36-07:00","homepage":"http://about.travis-ci.org","has_issues":true,"master_branch":"master","has_downloads":true,"language":"Ruby","pushed_at":"2012-06-28T10:22:18-07:00","forks":62,"fork":false,"size":240,"name":"travis-ci.github.com","url":"https://github.com/travis-ci/travis-ci.github.com","description":"the official Travis CI blog & documentation website","private":false,"username":"travis-ci","pushed":"2012-06-28T10:22:18-07:00","watchers":85,"has_wiki":false},{"type":"repo","created_at":"2009-07-15T02:21:19-07:00","score":8.803532,"owner":"darrylcousins","followers":1,"open_issues":0,"created":"2009-07-15T02:21:19-07:00","homepage":"http://darrylcousins.net.nz/documents","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2009-11-10T11:41:32-08:00","forks":1,"fork":false,"size":1126,"name":"Documents","url":"https://github.com/darrylcousins/Documents","description":"Documents","private":false,"username":"darrylcousins","pushed":"2009-11-10T11:41:32-08:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2011-01-06T06:07:11-08:00","score":8.803532,"owner":"tinybyte","followers":1,"open_issues":0,"created":"2011-01-06T06:07:11-08:00","homepage":"","has_issues":true,"language":"","has_downloads":true,"forks":1,"fork":false,"size":0,"name":"Documents","url":"https://github.com/tinybyte/Documents","description":"Documents","private":false,"username":"tinybyte","pushed":null,"watchers":1,"has_wiki":true},{"type":"repo","created_at":"2011-06-08T18:46:23-07:00","score":8.803532,"owner":"op-wiki","followers":1,"open_issues":0,"created":"2011-06-08T18:46:23-07:00","homepage":"op.sdo.com","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2011-06-09T03:05:00-07:00","forks":1,"fork":false,"size":108,"name":"documents","url":"https://github.com/op-wiki/documents","description":"Documents","private":false,"username":"op-wiki","pushed":"2011-06-09T03:05:00-07:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2011-09-11T17:29:00-07:00","score":8.803532,"owner":"jackqin","followers":1,"open_issues":0,"created":"2011-09-11T17:29:00-07:00","homepage":"","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2011-11-18T17:01:12-08:00","forks":1,"fork":false,"size":384,"name":"Document","url":"https://github.com/jackqin/Document","description":"document","private":false,"username":"jackqin","pushed":"2011-11-18T17:01:12-08:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2011-12-13T07:59:28-08:00","score":8.803532,"owner":"patuww","followers":1,"open_issues":0,"created":"2011-12-13T07:59:28-08:00","homepage":"","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2011-12-14T07:52:42-08:00","forks":1,"fork":false,"size":50084,"name":"Documentation","url":"https://github.com/patuww/Documentation","description":"Documentation","private":false,"username":"patuww","pushed":"2011-12-14T07:52:42-08:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2011-12-23T21:27:31-08:00","score":8.803532,"owner":"srini4rails","followers":1,"open_issues":0,"created":"2011-12-23T21:27:31-08:00","homepage":"","has_issues":true,"language":"","has_downloads":true,"forks":1,"fork":false,"size":0,"name":"documents","url":"https://github.com/srini4rails/documents","description":"documents","private":false,"username":"srini4rails","pushed":null,"watchers":1,"has_wiki":true},{"type":"repo","created_at":"2011-03-11T00:38:36-08:00","score":8.803532,"owner":"keamas","followers":1,"open_issues":0,"created":"2011-03-11T00:38:36-08:00","homepage":"","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2012-02-05T12:09:18-08:00","forks":1,"fork":false,"size":5944,"name":"Documents","url":"https://github.com/keamas/Documents","description":"Document ","private":false,"username":"keamas","pushed":"2012-02-05T12:09:18-08:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2012-02-22T23:18:36-08:00","score":8.803532,"owner":"goaaronnyc","followers":1,"open_issues":0,"created":"2012-02-22T23:18:36-08:00","homepage":"","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2012-02-22T23:27:34-08:00","forks":1,"fork":false,"size":84,"name":"Documentation","url":"https://github.com/goaaronnyc/Documentation","description":"Documentation","private":false,"username":"goaaronnyc","pushed":"2012-02-22T23:27:34-08:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2012-04-24T22:40:25-07:00","score":8.803532,"owner":"dongyulong","followers":1,"open_issues":0,"created":"2012-04-24T22:40:25-07:00","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2012-04-24T22:44:24-07:00","forks":1,"fork":false,"size":96,"name":"documents","url":"https://github.com/dongyulong/documents","description":"documents","private":false,"username":"dongyulong","pushed":"2012-04-24T22:44:24-07:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2012-06-07T23:19:59-07:00","score":8.803532,"owner":"wydoorg","followers":1,"open_issues":0,"created":"2012-06-07T23:19:59-07:00","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2012-06-13T04:47:29-07:00","forks":1,"fork":false,"size":168,"name":"documents","url":"https://github.com/wydoorg/documents","description":"documents","private":false,"username":"wydoorg","pushed":"2012-06-13T04:47:29-07:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2012-06-09T04:42:08-07:00","score":8.803532,"owner":"nomad","followers":1,"open_issues":0,"organization":"nomad","created":"2012-06-09T04:42:08-07:00","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2012-06-09T04:42:41-07:00","forks":1,"fork":false,"size":764,"name":"documents","url":"https://github.com/nomad/documents","description":"Documents","private":false,"username":"nomad","pushed":"2012-06-09T04:42:41-07:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2012-03-27T10:15:22-07:00","score":8.803532,"owner":"heldopslippers","followers":1,"open_issues":0,"created":"2012-03-27T10:15:22-07:00","homepage":"website-development.nl","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2012-03-28T02:44:56-07:00","forks":1,"fork":false,"size":128,"name":"documentation","url":"https://github.com/heldopslippers/documentation","description":"documentation","private":false,"username":"heldopslippers","pushed":"2012-03-28T02:44:56-07:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2012-06-25T20:03:54-07:00","score":8.803532,"owner":"ninehills","followers":1,"open_issues":0,"created":"2012-06-25T20:03:54-07:00","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2012-06-25T20:05:54-07:00","forks":1,"fork":false,"size":0,"name":"Documents","url":"https://github.com/ninehills/Documents","description":"Documents","private":false,"username":"ninehills","pushed":"2012-06-25T20:05:54-07:00","watchers":1,"has_wiki":true},{"type":"repo","created_at":"2012-06-28T19:45:38-07:00","score":8.803532,"owner":"lsjeng","followers":1,"open_issues":0,"created":"2012-06-28T19:45:38-07:00","has_issues":true,"language":"","has_downloads":true,"pushed_at":"2012-06-29T04:49:51-07:00","forks":1,"fork":false,"size":124,"name":"Document","url":"https://github.com/lsjeng/Document","description":"Document","private":false,"username":"lsjeng","pushed":"2012-06-29T04:49:51-07:00","watchers":1,"has_wiki":true}]} + +GET /legacy/repos/search/document?start_page=3 {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('content-length', '52000'), ('x-ratelimit-remaining', '4981'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"05d6b83482e746254755a87b7d666cef"'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Fri, 29 Jun 2012 11:52:42 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"repositories":[{"type":"repo","has_downloads":true,"homepage":"","owner":"railstone","score":8.798389,"pushed":"2011-07-03T10:15:29-07:00","description":"My documents","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":96,"open_issues":0,"created_at":"2011-07-03T09:43:44-07:00","username":"railstone","name":"documents","url":"https://github.com/railstone/documents","language":"","private":false,"pushed_at":"2011-07-03T10:15:29-07:00","created":"2011-07-03T09:43:44-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"fooker","score":8.798389,"pushed":"2011-01-18T05:57:25-08:00","description":"my documents","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":173280,"open_issues":0,"created_at":"2010-11-22T04:45:44-08:00","username":"fooker","name":"documents","url":"https://github.com/fooker/documents","private":false,"language":"Shell","pushed_at":"2011-01-18T05:57:25-08:00","created":"2010-11-22T04:45:44-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"levpevzner","score":8.798389,"pushed":null,"description":"Flite documentation","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":0,"open_issues":0,"created_at":"2011-07-22T09:13:58-07:00","username":"levpevzner","name":"Documentation","url":"https://github.com/levpevzner/Documentation","language":"","private":false,"created":"2011-07-22T09:13:58-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"ariandikovic","score":8.798389,"pushed":"2011-11-11T02:23:07-08:00","description":"Project documentation","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":912,"open_issues":0,"created_at":"2011-11-11T02:22:24-08:00","username":"ariandikovic","name":"Documentation","url":"https://github.com/ariandikovic/Documentation","language":"","private":false,"pushed_at":"2011-11-11T02:23:07-08:00","created":"2011-11-11T02:22:24-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"QPhuong","score":8.798389,"pushed":null,"description":"some document","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":0,"open_issues":0,"created_at":"2011-11-20T19:13:45-08:00","username":"QPhuong","name":"Document","url":"https://github.com/QPhuong/Document","language":"","private":false,"created":"2011-11-20T19:13:45-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"ifdefese","score":8.798389,"pushed":"2011-12-09T08:13:25-08:00","description":"Contains documentation","watchers":1,"has_wiki":true,"followers":1,"organization":"ifdefese","fork":false,"size":192,"open_issues":0,"created_at":"2011-11-09T03:32:13-08:00","username":"ifdefese","name":"documents","url":"https://github.com/ifdefese/documents","language":"","private":false,"pushed_at":"2011-12-09T08:13:25-08:00","created":"2011-11-09T03:32:13-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"sebastienv","score":8.798389,"pushed":"2011-12-16T02:14:27-08:00","description":"My documents","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":384,"open_issues":0,"created_at":"2011-12-16T02:10:53-08:00","username":"sebastienv","name":"Documents","url":"https://github.com/sebastienv/Documents","language":"","private":false,"pushed_at":"2011-12-16T02:14:27-08:00","created":"2011-12-16T02:10:53-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"git-for-oer","score":8.798389,"pushed":"2012-04-13T12:14:06-07:00","description":"Documents and Notes","watchers":1,"has_wiki":true,"followers":1,"organization":"git-for-oer","fork":false,"size":92,"open_issues":0,"created_at":"2012-04-13T12:02:06-07:00","username":"git-for-oer","name":"Documents","url":"https://github.com/git-for-oer/Documents","language":"","private":false,"pushed_at":"2012-04-13T12:14:06-07:00","created":"2012-04-13T12:02:06-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"http://flite.com","owner":"flite","score":8.798389,"pushed":"2012-04-16T22:51:21-07:00","description":"Flite documentation.","watchers":1,"has_wiki":true,"followers":1,"organization":"flite","fork":false,"size":3688,"open_issues":0,"created_at":"2011-07-22T09:40:13-07:00","username":"flite","name":"Documentation","url":"https://github.com/flite/Documentation","language":"","private":false,"pushed_at":"2012-04-16T22:51:21-07:00","created":"2011-07-22T09:40:13-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"stoani89","score":8.798389,"pushed":null,"description":"Documents by me","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":501,"open_issues":0,"created_at":"2010-08-24T07:53:32-07:00","username":"stoani89","name":"Documents","url":"https://github.com/stoani89/Documents","language":"","private":false,"created":"2010-08-24T07:53:32-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"owner":"lcguerrerocovo","score":8.798389,"pushed":"2012-04-22T14:12:20-07:00","description":"luisca's documents","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":140,"open_issues":0,"created_at":"2012-04-22T13:17:54-07:00","username":"lcguerrerocovo","name":"documents","url":"https://github.com/lcguerrerocovo/documents","language":"","private":false,"pushed_at":"2012-04-22T14:12:20-07:00","created":"2012-04-22T13:17:54-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"zipcodeman","score":8.798389,"pushed":"2012-05-01T19:54:17-07:00","description":"My Documents","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":188,"open_issues":0,"created_at":"2011-11-20T11:56:52-08:00","username":"zipcodeman","name":"Documents","url":"https://github.com/zipcodeman/Documents","private":false,"language":"Python","pushed_at":"2012-05-01T19:54:17-07:00","created":"2011-11-20T11:56:52-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"buta9999","score":8.798389,"pushed":"2012-05-13T04:10:27-07:00","description":"sphinx document","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":7620,"open_issues":0,"created_at":"2012-03-31T04:11:37-07:00","username":"buta9999","name":"document","url":"https://github.com/buta9999/document","private":false,"language":"JavaScript","pushed_at":"2012-05-13T04:10:27-07:00","created":"2012-03-31T04:11:37-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"yafengli","score":8.798389,"pushed":"2012-05-21T20:18:53-07:00","description":"My documents.","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":14524,"open_issues":0,"created_at":"2010-09-27T22:53:42-07:00","username":"yafengli","name":"documents","url":"https://github.com/yafengli/documents","private":false,"language":"JavaScript","pushed_at":"2012-05-21T20:18:53-07:00","created":"2010-09-27T22:53:42-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"lalyre","score":8.798389,"pushed":"2012-06-12T14:33:47-07:00","description":"Technical documentation","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":7664,"open_issues":0,"created_at":"2012-02-16T12:48:04-08:00","username":"lalyre","name":"Documentation","url":"https://github.com/lalyre/Documentation","language":"","private":false,"pushed_at":"2012-06-12T14:33:47-07:00","created":"2012-02-16T12:48:04-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"sposs","score":8.798389,"pushed":"2012-06-07T06:38:33-07:00","description":"My documents","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":74696,"open_issues":0,"created_at":"2011-05-26T00:58:15-07:00","username":"sposs","name":"Documents","url":"https://github.com/sposs/Documents","private":false,"language":"Python","pushed_at":"2012-06-07T06:38:33-07:00","created":"2011-05-26T00:58:15-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"http://martijn.vermaat.name","owner":"martijnvermaat","score":8.798389,"pushed":"2012-06-21T02:50:00-07:00","description":"My Documents","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":8280,"open_issues":0,"created_at":"2011-05-04T00:30:40-07:00","username":"martijnvermaat","name":"documents","url":"https://github.com/martijnvermaat/documents","private":false,"language":"Coq","pushed_at":"2012-06-21T02:50:00-07:00","created":"2011-05-04T00:30:40-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"http://about.me/leaf","owner":"cardmaster","score":8.797091,"pushed":"2011-09-16T03:58:03-07:00","description":"My public documents, including cv, or some documents","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":1652,"open_issues":0,"created_at":"2011-03-22T07:41:07-07:00","username":"cardmaster","name":"documents","url":"https://github.com/cardmaster/documents","language":"","private":false,"pushed_at":"2011-09-16T03:58:03-07:00","created":"2011-03-22T07:41:07-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"sireeshapatibandla","score":8.796675,"pushed":"2011-06-27T22:16:42-07:00","description":"Documents for TalentTube","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":96,"open_issues":0,"created_at":"2011-06-27T21:42:41-07:00","username":"sireeshapatibandla","name":"Documents","url":"https://github.com/sireeshapatibandla/Documents","language":"","private":false,"pushed_at":"2011-06-27T22:16:42-07:00","created":"2011-06-27T21:42:41-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"scroll","score":8.796675,"pushed":"2011-09-23T14:54:43-07:00","description":"documents and text files","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":100,"open_issues":0,"created_at":"2011-09-23T14:51:12-07:00","username":"scroll","name":"documents","url":"https://github.com/scroll/documents","language":"","private":false,"pushed_at":"2011-09-23T14:54:43-07:00","created":"2011-09-23T14:51:12-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"documentation","owner":"santony","score":8.796675,"pushed":"2009-12-29T08:56:38-08:00","description":"Mes documents utiles","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":76,"open_issues":0,"created_at":"2009-12-29T06:20:30-08:00","username":"santony","name":"Documentation","url":"https://github.com/santony/Documentation","integrate_branch":"testbranch","language":"","private":false,"pushed_at":"2009-12-29T08:56:38-08:00","created":"2009-12-29T06:20:30-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"http://dedomenon.org","owner":"dedomenon","score":8.796675,"pushed":"2010-03-10T06:51:37-08:00","description":"Developer documentation for Dedomenon","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":1312,"open_issues":0,"created_at":"2009-11-25T02:01:46-08:00","username":"dedomenon","name":"documentation","url":"https://github.com/dedomenon/documentation","private":false,"language":"Shell","pushed_at":"2010-03-10T06:51:37-08:00","created":"2009-11-25T02:01:46-08:00","forks":1,"has_issues":true,"master_branch":"gh-pages"},{"type":"repo","has_downloads":true,"homepage":"http://search.cpan.org/dist/Document/","owner":"gitpan","score":8.796675,"pushed":"2009-12-09T23:45:41-08:00","description":"Release history of Document","watchers":1,"has_wiki":true,"followers":1,"organization":"gitpan","fork":false,"size":552,"open_issues":0,"created_at":"2009-12-09T23:45:28-08:00","username":"gitpan","name":"Document","url":"https://github.com/gitpan/Document","private":false,"language":"Perl","pushed_at":"2009-12-09T23:45:41-08:00","created":"2009-12-09T23:45:28-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"plomb","score":8.796675,"pushed":null,"description":"Miscellaneous Public Documents","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":0,"open_issues":0,"created_at":"2010-05-15T11:27:03-07:00","username":"plomb","name":"Documents","url":"https://github.com/plomb/Documents","language":"","private":false,"created":"2010-05-15T11:27:03-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"th0","score":8.796675,"pushed":null,"description":"documents task manager","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":0,"open_issues":0,"created_at":"2011-01-03T02:02:10-08:00","username":"th0","name":"documents","url":"https://github.com/th0/documents","language":"","private":false,"created":"2011-01-03T02:02:10-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"oan","score":8.796675,"pushed":"2011-06-07T04:37:51-07:00","description":"Open Archive Network Documents","watchers":1,"has_wiki":true,"followers":1,"organization":"oan","fork":false,"size":456,"open_issues":0,"created_at":"2011-02-10T12:27:49-08:00","username":"oan","name":"documents","url":"https://github.com/oan/documents","language":"","private":false,"pushed_at":"2011-06-07T04:37:51-07:00","created":"2011-02-10T12:27:49-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"onixie","score":8.796675,"pushed":null,"description":"Study Documents and Notes","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":0,"open_issues":0,"created_at":"2011-07-25T19:54:18-07:00","username":"onixie","name":"documents","url":"https://github.com/onixie/documents","language":"","private":false,"created":"2011-07-25T19:54:18-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"Andy2K11","score":8.796675,"pushed":"2011-10-13T04:29:04-07:00","description":"Working documents and drafts","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":108,"open_issues":0,"created_at":"2011-10-13T04:24:50-07:00","username":"Andy2K11","name":"Documentation","url":"https://github.com/Andy2K11/Documentation","language":"","private":false,"pushed_at":"2011-10-13T04:29:04-07:00","created":"2011-10-13T04:24:50-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"TouchLay","score":8.796675,"pushed":"2011-11-19T06:08:01-08:00","description":"TouchLay's Documentations","watchers":1,"has_wiki":true,"followers":1,"organization":"TouchLay","fork":false,"size":460,"open_issues":0,"created_at":"2011-11-07T07:12:05-08:00","username":"TouchLay","name":"Documentation","url":"https://github.com/TouchLay/Documentation","private":false,"language":"Python","pushed_at":"2011-11-19T06:08:01-08:00","created":"2011-11-07T07:12:05-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"chandershivdasani","score":8.796675,"pushed":"2011-12-07T13:41:59-08:00","description":"Some documents for helpful facts","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":96,"open_issues":0,"created_at":"2011-12-06T16:27:12-08:00","username":"chandershivdasani","name":"Documents","url":"https://github.com/chandershivdasani/Documents","language":"","private":false,"pushed_at":"2011-12-07T13:41:59-08:00","created":"2011-12-06T16:27:12-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"entouragesolutions","score":8.796675,"pushed":"2011-12-10T11:49:38-08:00","description":"For storing all documents","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":124,"open_issues":0,"created_at":"2011-12-08T00:59:16-08:00","username":"entouragesolutions","name":"Documents","url":"https://github.com/entouragesolutions/Documents","language":"","private":false,"pushed_at":"2011-12-10T11:49:38-08:00","created":"2011-12-08T00:59:16-08:00","forks":1,"has_issues":true,"master_branch":"gh-pages"},{"type":"repo","has_downloads":true,"homepage":"","owner":"mcgillcomp361","score":8.796675,"pushed":"2012-01-07T07:17:45-08:00","description":"Various documents for the report submissions","watchers":1,"has_wiki":true,"followers":1,"organization":"mcgillcomp361","fork":false,"size":168,"open_issues":0,"created_at":"2011-11-18T08:06:52-08:00","username":"mcgillcomp361","name":"Documents","url":"https://github.com/mcgillcomp361/Documents","language":"","private":false,"pushed_at":"2012-01-07T07:17:45-08:00","created":"2011-11-18T08:06:52-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"a-sk","score":8.796675,"pushed":"2012-02-18T06:27:45-08:00","description":"Sublimetext documentation writing plugin","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":276,"open_issues":0,"created_at":"2012-02-13T15:08:30-08:00","username":"a-sk","name":"Documenter","url":"https://github.com/a-sk/Documenter","private":false,"language":"Python","pushed_at":"2012-02-18T06:27:45-08:00","created":"2012-02-13T15:08:30-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"http://frankpzh.wordpress.com/","owner":"frankpzh","score":8.796675,"pushed":"2012-03-15T10:54:49-07:00","description":"Frank Pan's public document","watchers":1,"has_wiki":false,"followers":1,"fork":false,"size":3952,"open_issues":0,"created_at":"2010-08-15T02:20:35-07:00","username":"frankpzh","name":"document","url":"https://github.com/frankpzh/document","private":false,"language":"Emacs Lisp","pushed_at":"2012-03-15T10:54:49-07:00","created":"2010-08-15T02:20:35-07:00","forks":1,"has_issues":false},{"type":"repo","has_downloads":true,"homepage":"","owner":"TonyZhai","score":8.796675,"pushed":"2012-03-15T23:34:08-07:00","description":"Documentation for some useful","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":104,"open_issues":0,"created_at":"2012-03-14T06:54:06-07:00","username":"TonyZhai","name":"Documentation","url":"https://github.com/TonyZhai/Documentation","language":"","private":false,"pushed_at":"2012-03-15T23:34:08-07:00","created":"2012-03-14T06:54:06-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"railsfactory-shafi","score":8.796675,"pushed":null,"description":"RF reference Documents","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":0,"open_issues":0,"created_at":"2012-03-28T20:47:49-07:00","username":"railsfactory-shafi","name":"Documents","url":"https://github.com/railsfactory-shafi/Documents","language":"","private":false,"created":"2012-03-28T20:47:49-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"athap","score":8.796675,"pushed":"2012-05-12T19:20:07-07:00","description":"This folder contains useful documents","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":412,"open_issues":0,"created_at":"2012-03-10T22:05:04-08:00","username":"athap","name":"Documents","url":"https://github.com/athap/Documents","language":"","private":false,"pushed_at":"2012-05-12T19:20:07-07:00","created":"2012-03-10T22:05:04-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"owner":"EucalyptusSystems","score":8.796675,"pushed":"2012-05-23T17:26:17-07:00","description":"Eucalyptus Product Documentation","watchers":1,"has_wiki":true,"followers":1,"organization":"EucalyptusSystems","fork":false,"size":0,"open_issues":0,"created_at":"2012-05-23T17:26:17-07:00","username":"EucalyptusSystems","name":"documentation","url":"https://github.com/EucalyptusSystems/documentation","language":"","private":false,"pushed_at":"2012-05-23T17:26:17-07:00","created":"2012-05-23T17:26:17-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"aaltsys.info","owner":"aaltsys","score":8.796675,"pushed":"2012-05-30T14:31:09-07:00","description":"AAltSys Documentation","watchers":1,"has_wiki":true,"followers":1,"organization":"aaltsys","fork":false,"size":2812,"open_issues":0,"created_at":"2011-09-27T13:23:39-07:00","username":"aaltsys","name":"documentation","url":"https://github.com/aaltsys/documentation","private":false,"language":"JavaScript","pushed_at":"2012-05-30T14:31:09-07:00","created":"2011-09-27T13:23:39-07:00","forks":1,"has_issues":true,"master_branch":"gh-pages"},{"type":"repo","has_downloads":true,"homepage":"","owner":"cordoval","score":8.796675,"pushed":"2012-01-27T21:23:16-08:00","description":"document component of zetacomponents","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":3748,"open_issues":0,"created_at":"2012-01-27T21:21:45-08:00","username":"cordoval","name":"Document","url":"https://github.com/cordoval/Document","private":false,"language":"PHP","pushed_at":"2012-01-27T21:23:16-08:00","created":"2012-01-27T21:21:45-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"owner":"ykiveish","score":8.796675,"pushed":"2012-06-18T02:10:32-07:00","description":"All important documents.","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":0,"open_issues":0,"created_at":"2012-06-18T02:10:32-07:00","username":"ykiveish","name":"Documents","url":"https://github.com/ykiveish/Documents","language":"","private":false,"pushed_at":"2012-06-18T02:10:32-07:00","created":"2012-06-18T02:10:32-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"owner":"Ahmed-Elbagoury","score":8.796675,"pushed":"2012-06-20T09:34:33-07:00","description":"Graduation project documentation","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":0,"open_issues":0,"created_at":"2012-06-20T09:34:33-07:00","username":"Ahmed-Elbagoury","name":"Documentation","url":"https://github.com/Ahmed-Elbagoury/Documentation","language":"","private":false,"pushed_at":"2012-06-20T09:34:33-07:00","created":"2012-06-20T09:34:33-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"3mara","score":8.796675,"pushed":"2012-06-28T20:41:16-07:00","description":"Graduation Project Documentation","watchers":1,"has_wiki":false,"followers":1,"fork":false,"size":29780,"open_issues":0,"created_at":"2012-04-15T08:49:26-07:00","username":"3mara","name":"Documentation","url":"https://github.com/3mara/Documentation","language":"","private":false,"pushed_at":"2012-06-28T20:41:16-07:00","created":"2012-04-15T08:49:26-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"yussidivnall","score":8.795818,"pushed":"2011-02-05T16:21:10-08:00","description":"Some misc documents I wrote","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":3036,"open_issues":0,"created_at":"2009-09-19T01:35:58-07:00","username":"yussidivnall","name":"Documents","url":"https://github.com/yussidivnall/Documents","language":"","private":false,"pushed_at":"2011-02-05T16:21:10-08:00","created":"2009-09-19T01:35:58-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"aronasorman","score":8.795818,"pushed":"2010-02-13T02:36:12-08:00","description":"A backup of my documents folder","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":1124,"open_issues":0,"created_at":"2010-02-01T03:52:08-08:00","username":"aronasorman","name":"documents","url":"https://github.com/aronasorman/documents","language":"","private":false,"pushed_at":"2010-02-13T02:36:12-08:00","created":"2010-02-01T03:52:08-08:00","forks":1,"has_issues":true,"master_branch":"1styear"},{"type":"repo","has_downloads":true,"homepage":"http://nerdsrescue.me/documents","owner":"nerdsrescueme","score":8.795818,"pushed":"2012-01-30T18:32:39-08:00","description":"Nerds, Rescue Me! development documents","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":668,"open_issues":0,"created_at":"2012-01-30T07:21:46-08:00","username":"nerdsrescueme","name":"Documents","url":"https://github.com/nerdsrescueme/Documents","private":false,"language":"PHP","pushed_at":"2012-01-30T18:32:39-08:00","created":"2012-01-30T07:21:46-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"http://jsfiddle.net/carylandholt/uCraE/","owner":"CaryLandholt","score":8.795818,"pushed":"2012-02-25T19:45:45-08:00","description":"Provides the document object as a module.","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":192,"open_issues":0,"created_at":"2011-11-21T19:26:17-08:00","username":"CaryLandholt","name":"document","url":"https://github.com/CaryLandholt/document","private":false,"language":"JavaScript","pushed_at":"2012-02-25T19:45:45-08:00","created":"2011-11-21T19:26:17-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"http://geomati.co","owner":"geomatico","score":8.795818,"pushed":"2012-04-11T08:26:33-07:00","description":"Geomati.co developer documentation","watchers":1,"has_wiki":true,"followers":1,"organization":"geomatico","fork":false,"size":1992,"open_issues":0,"created_at":"2012-01-31T03:06:00-08:00","username":"geomatico","name":"documentation","url":"https://github.com/geomatico/documentation","private":false,"language":"Python","pushed_at":"2012-04-11T08:26:33-07:00","created":"2012-01-31T03:06:00-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"alsuren","score":8.795818,"pushed":"2012-05-30T05:27:14-07:00","description":"Versioned Copy of my Documents folder","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":340,"open_issues":0,"created_at":"2012-01-25T08:33:35-08:00","username":"alsuren","name":"Documents","url":"https://github.com/alsuren/Documents","language":"","private":false,"pushed_at":"2012-05-30T05:27:14-07:00","created":"2012-01-25T08:33:35-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"mren","score":8.795818,"pushed":"2012-06-26T12:18:03-07:00","description":"personal documentation of tools I used","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":184,"open_issues":0,"created_at":"2012-03-29T00:45:10-07:00","username":"mren","name":"documentation","url":"https://github.com/mren/documentation","language":"","private":false,"pushed_at":"2012-06-26T12:18:03-07:00","created":"2012-03-29T00:45:10-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"owner":"webtsys","score":8.795818,"pushed":"2012-06-26T15:18:21-07:00","description":"A module for write basic documentation","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":132,"open_issues":0,"created_at":"2012-06-19T17:31:20-07:00","username":"webtsys","name":"documentation","url":"https://github.com/webtsys/documentation","private":false,"language":"PHP","pushed_at":"2012-06-26T15:18:21-07:00","created":"2012-06-19T17:31:20-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"owner":"androportal","score":8.795818,"pushed":"2012-06-29T03:28:54-07:00","description":"document all Aakash related work","watchers":1,"has_wiki":true,"followers":1,"organization":"androportal","fork":false,"size":204,"open_issues":0,"created_at":"2012-06-27T06:36:06-07:00","username":"androportal","name":"documentation","url":"https://github.com/androportal/documentation","language":"","private":false,"pushed_at":"2012-06-29T03:28:54-07:00","created":"2012-06-27T06:36:06-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"MobileRaggingPreventerApp","score":8.794961,"pushed":null,"description":"This project will have documentation to help in coding of the Mobile Application","watchers":1,"has_wiki":true,"followers":1,"organization":"MobileRaggingPreventerApp","fork":false,"size":0,"open_issues":0,"created_at":"2010-11-13T22:47:39-08:00","username":"MobileRaggingPreventerApp","name":"Documentation","url":"https://github.com/MobileRaggingPreventerApp/Documentation","language":"","private":false,"created":"2010-11-13T22:47:39-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"wclarkso","score":8.794961,"pushed":null,"description":"Important Documents that I want backed up forever.....","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":0,"open_issues":0,"created_at":"2009-09-30T12:14:40-07:00","username":"wclarkso","name":"Documents","url":"https://github.com/wclarkso/Documents","language":"","private":false,"created":"2009-09-30T12:14:40-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"danmaclean","score":8.794961,"pushed":"2010-01-28T09:23:51-08:00","description":"HTML Documentation describing usage of Perl Modules","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":260,"open_issues":0,"created_at":"2009-10-29T12:15:28-07:00","username":"danmaclean","name":"Documents","url":"https://github.com/danmaclean/Documents","language":"","private":false,"pushed_at":"2010-01-28T09:23:51-08:00","created":"2009-10-29T12:15:28-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":false,"homepage":"http://projectaliter.com/documentation/","owner":"aliter","score":8.794961,"pushed":"2011-06-05T01:30:17-07:00","description":"Aliter's documentation on GitHub Pages.","watchers":1,"has_wiki":false,"followers":1,"organization":"aliter","fork":false,"size":352,"open_issues":0,"created_at":"2009-09-19T23:56:24-07:00","username":"aliter","name":"documentation","url":"https://github.com/aliter/documentation","private":false,"language":"Python","pushed_at":"2011-06-05T01:30:17-07:00","created":"2009-09-19T23:56:24-07:00","forks":1,"has_issues":false},{"type":"repo","has_downloads":true,"homepage":"","owner":"vexix","score":8.794961,"pushed":null,"description":"Documents that I work on with school, game development, etc.","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":0,"open_issues":0,"created_at":"2010-03-14T14:18:09-07:00","username":"vexix","name":"Documents","url":"https://github.com/vexix/Documents","language":"","private":false,"created":"2010-03-14T14:18:09-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"LaurensRietveld","score":8.794961,"pushed":"2011-10-10T06:54:29-07:00","description":"All relevant documents for the open notebook science project","watchers":1,"has_wiki":false,"followers":1,"fork":false,"size":860,"open_issues":0,"created_at":"2011-09-28T04:52:35-07:00","username":"LaurensRietveld","name":"Documents","url":"https://github.com/LaurensRietveld/Documents","language":"","private":false,"pushed_at":"2011-10-10T06:54:29-07:00","created":"2011-09-28T04:52:35-07:00","forks":1,"has_issues":false},{"type":"repo","has_downloads":true,"homepage":"http://papyri.github.com/documentation","owner":"papyri","score":8.794961,"pushed":"2012-01-12T07:05:02-08:00","description":"Project-wide Documentation for Integrating Digital Papyrology","watchers":1,"has_wiki":true,"followers":1,"organization":"papyri","fork":false,"size":3692,"open_issues":0,"created_at":"2011-07-07T08:05:44-07:00","username":"papyri","name":"documentation","url":"https://github.com/papyri/documentation","private":false,"language":"Ruby","pushed_at":"2012-01-12T07:05:02-08:00","created":"2011-07-07T08:05:44-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"http://visualdiffer.com","owner":"visualdiffer","score":8.794961,"pushed":null,"description":"All documentation related to VisualDiffer","watchers":1,"has_wiki":true,"followers":1,"organization":"visualdiffer","fork":false,"size":0,"open_issues":0,"created_at":"2012-03-06T04:37:47-08:00","username":"visualdiffer","name":"documentation","url":"https://github.com/visualdiffer/documentation","language":"","private":false,"created":"2012-03-06T04:37:47-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"http://froodee.at","owner":"smtm","score":8.794961,"pushed":"2009-11-05T08:02:37-08:00","description":"copies of the legal document templates froodee uses","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":0,"open_issues":0,"created_at":"2009-11-05T07:56:36-08:00","username":"smtm","name":"documents","url":"https://github.com/smtm/documents","language":"","private":false,"pushed_at":"2009-11-05T08:02:37-08:00","created":"2009-11-05T07:56:36-08:00","forks":1,"has_issues":false},{"type":"repo","has_downloads":true,"homepage":"","owner":"suthikshn","score":8.794104,"pushed":null,"description":"This will contain documentation for the project Open Source Virtual Campus Tour","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":0,"open_issues":0,"created_at":"2010-11-13T22:44:20-08:00","username":"suthikshn","name":"Documentation","url":"https://github.com/suthikshn/Documentation","language":"","private":false,"created":"2010-11-13T22:44:20-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"craigplummer","score":8.794104,"pushed":null,"description":"A Rails Application for managing and presenting user documentation (Name to be decided)","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":0,"open_issues":0,"created_at":"2011-08-30T12:44:05-07:00","username":"craigplummer","name":"documents","url":"https://github.com/craigplummer/documents","language":"","private":false,"created":"2011-08-30T12:44:05-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"http://pyrocms.com/documentation","owner":"ngonchan","score":8.794104,"pushed":"2010-12-06T02:13:21-08:00","description":"Documentation for the open-source project PyroCMS.","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":180,"open_issues":0,"created_at":"2010-12-08T17:39:06-08:00","username":"ngonchan","name":"documentation","url":"https://github.com/ngonchan/documentation","language":"","private":false,"pushed_at":"2010-12-06T02:13:21-08:00","created":"2010-12-08T17:39:06-08:00","forks":0,"has_issues":false},{"type":"repo","has_downloads":true,"homepage":"","owner":"AWooldrige","score":8.794104,"pushed":null,"description":"Testing using Hudson to build LaTeX documentation","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":0,"open_issues":0,"created_at":"2012-02-09T04:44:05-08:00","username":"AWooldrige","name":"Documentation","url":"https://github.com/AWooldrige/Documentation","language":"","private":false,"created":"2012-02-09T04:44:05-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"erebos42","score":8.794104,"pushed":"2012-05-30T04:19:54-07:00","description":"Just some documents i wanted to share with me and maybe others...","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":3936,"open_issues":0,"created_at":"2012-03-19T06:29:27-07:00","username":"erebos42","name":"Documents","url":"https://github.com/erebos42/Documents","language":"","private":false,"pushed_at":"2012-05-30T04:19:54-07:00","created":"2012-03-19T06:29:27-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"owner":"c-team-2","score":8.794104,"pushed":"2012-06-12T16:33:48-07:00","description":"All the documentation that goes with the project: presentations, javadocs, API doc, etc...","watchers":1,"has_wiki":true,"followers":1,"organization":"c-team-2","fork":false,"size":1400,"open_issues":0,"created_at":"2012-05-11T16:14:05-07:00","username":"c-team-2","name":"documentation","url":"https://github.com/c-team-2/documentation","language":"","private":false,"pushed_at":"2012-06-12T16:33:48-07:00","created":"2012-05-11T16:14:05-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"http://social-igniter.com/documentation","owner":"socialigniter","score":8.793247,"pushed":"2011-10-01T13:21:51-07:00","description":"Documentation for the core Social-Igniter project. For specific Apps look at those repos","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":112,"open_issues":0,"created_at":"2011-07-05T12:47:30-07:00","username":"socialigniter","name":"documentation","url":"https://github.com/socialigniter/documentation","private":false,"language":"PHP","pushed_at":"2011-10-01T13:21:51-07:00","created":"2011-07-05T12:47:30-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"owner":"jackey","score":8.793247,"pushed":"2012-06-11T06:45:18-07:00","description":"record my works with document. So I can review them instead of searching.","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":324,"open_issues":0,"created_at":"2012-04-19T20:12:21-07:00","username":"jackey","name":"documents","url":"https://github.com/jackey/documents","private":false,"language":"PHP","pushed_at":"2012-06-11T06:45:18-07:00","created":"2012-04-19T20:12:21-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"remomueller","score":8.79239,"pushed":"2012-06-06T07:26:21-07:00","description":"Documentation for setting up servers to host Rails Applications. Servers: CentOS, Mac OS X, Windows. Tools: Git, Apache, MySQL, Node.js and CoffeeScript","watchers":1,"has_wiki":false,"followers":1,"fork":false,"size":288,"open_issues":0,"created_at":"2012-02-15T10:53:20-08:00","username":"remomueller","name":"documentation","url":"https://github.com/remomueller/documentation","language":"","private":false,"pushed_at":"2012-06-06T07:26:21-07:00","created":"2012-02-15T10:53:20-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"our.umbraco.org/documentation","owner":"umbraco","score":8.792234,"pushed":"2012-06-28T01:42:18-07:00","description":"The Umbraco Documentation Project","watchers":83,"has_wiki":true,"followers":83,"organization":"umbraco","fork":false,"size":264,"open_issues":2,"created_at":"2012-03-09T01:27:46-08:00","username":"umbraco","name":"Umbraco5Docs","url":"https://github.com/umbraco/Umbraco5Docs","language":"","private":false,"pushed_at":"2012-06-28T01:42:18-07:00","created":"2012-03-09T01:27:46-08:00","forks":38,"has_issues":true,"master_branch":"5.0.1"},{"type":"repo","has_downloads":true,"homepage":"","owner":"onewheelskyward","score":8.789819,"pushed":"2010-09-27T00:23:19-07:00","description":"","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":92,"open_issues":0,"created_at":"2010-09-26T16:26:25-07:00","username":"onewheelskyward","name":"documents","url":"https://github.com/onewheelskyward/documents","private":false,"language":"PHP","pushed_at":"2010-09-27T00:23:19-07:00","created":"2010-09-26T16:26:25-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"abdulghaffarpk","score":8.789819,"pushed":null,"description":"My Docs","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":0,"open_issues":0,"created_at":"2010-10-23T02:41:47-07:00","username":"abdulghaffarpk","name":"Documents","url":"https://github.com/abdulghaffarpk/Documents","language":"","private":false,"created":"2010-10-23T02:41:47-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"williamgkeys.com","owner":"williamkeys","score":8.789819,"pushed":"2011-06-20T13:14:02-07:00","description":"","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":2876,"open_issues":0,"created_at":"2011-04-17T14:52:52-07:00","username":"williamkeys","name":"Documentation","url":"https://github.com/williamkeys/Documentation","private":false,"language":"VimL","pushed_at":"2011-06-20T13:14:02-07:00","created":"2011-04-17T14:52:52-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"wangdeshui","score":8.789819,"pushed":null,"description":"","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":0,"open_issues":0,"created_at":"2011-06-27T19:29:03-07:00","username":"wangdeshui","name":"documents","url":"https://github.com/wangdeshui/documents","language":"","private":false,"created":"2011-06-27T19:29:03-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"Elgg","score":8.789819,"pushed":"2011-06-13T17:28:16-07:00","description":"","watchers":1,"has_wiki":true,"followers":1,"organization":"Elgg","fork":false,"size":328,"open_issues":0,"created_at":"2011-06-13T17:25:44-07:00","username":"Elgg","name":"document","url":"https://github.com/Elgg/document","private":false,"language":"PHP","pushed_at":"2011-06-13T17:28:16-07:00","created":"2011-06-13T17:25:44-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"vincentp","score":8.789819,"pushed":"2011-07-07T02:53:23-07:00","description":"","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":100,"open_issues":0,"created_at":"2011-07-07T02:50:39-07:00","username":"vincentp","name":"documents","url":"https://github.com/vincentp/documents","language":"","private":false,"pushed_at":"2011-07-07T02:53:23-07:00","created":"2011-07-07T02:50:39-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"horntau","score":8.789819,"pushed":null,"description":"mydocument","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":0,"open_issues":0,"created_at":"2011-07-11T00:35:32-07:00","username":"horntau","name":"document","url":"https://github.com/horntau/document","language":"","private":false,"created":"2011-07-11T00:35:32-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"aodag","score":8.789819,"pushed":null,"description":"","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":0,"open_issues":0,"created_at":"2011-07-15T10:08:45-07:00","username":"aodag","name":"documents","url":"https://github.com/aodag/documents","language":"","private":false,"created":"2011-07-15T10:08:45-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"iineed","score":8.789819,"pushed":"2011-09-18T12:55:03-07:00","description":"","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":124,"open_issues":0,"created_at":"2011-09-08T10:11:39-07:00","username":"iineed","name":"documentation","url":"https://github.com/iineed/documentation","language":"","private":false,"pushed_at":"2011-09-18T12:55:03-07:00","created":"2011-09-08T10:11:39-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"Progressbar","score":8.789819,"pushed":null,"description":"Dokumenty a subory verejne dostupne a zverejnovane v Progressbar hackerspace","watchers":1,"has_wiki":true,"followers":1,"organization":"Progressbar","fork":false,"size":0,"open_issues":0,"created_at":"2011-09-28T13:14:45-07:00","username":"Progressbar","name":"Documents","url":"https://github.com/Progressbar/Documents","language":"","private":false,"created":"2011-09-28T13:14:45-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"http://d.hatena.ne.jp/yuroyoro/","owner":"yuroyoro","score":8.789819,"pushed":"2008-11-18T18:34:42-08:00","description":"","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":0,"open_issues":0,"created_at":"2008-11-18T18:32:04-08:00","username":"yuroyoro","name":"documents","url":"https://github.com/yuroyoro/documents","language":"","private":false,"pushed_at":"2008-11-18T18:34:42-08:00","created":"2008-11-18T18:32:04-08:00","forks":0,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"synn","score":8.789819,"pushed":"2009-01-30T01:07:14-08:00","description":"","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":516,"open_issues":0,"created_at":"2008-11-24T04:08:53-08:00","username":"synn","name":"document","url":"https://github.com/synn/document","language":"","private":false,"pushed_at":"2009-01-30T01:07:14-08:00","created":"2008-11-24T04:08:53-08:00","forks":0,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"RaviVaranasi","score":8.789819,"pushed":null,"description":"Container for resume, cover letter etc","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":0,"open_issues":0,"created_at":"2009-06-14T05:18:51-07:00","username":"RaviVaranasi","name":"Documents","url":"https://github.com/RaviVaranasi/Documents","language":"","private":false,"created":"2009-06-14T05:18:51-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"mrhaydel","score":8.789819,"pushed":null,"description":"My docs for stuff.","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":0,"open_issues":0,"created_at":"2009-10-27T06:13:38-07:00","username":"mrhaydel","name":"Documentation","url":"https://github.com/mrhaydel/Documentation","language":"","private":false,"created":"2009-10-27T06:13:38-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"fiedlert","score":8.789819,"pushed":"2009-08-20T06:38:17-07:00","description":"Bits of cruft and whitespace that I pick up","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":240,"open_issues":0,"created_at":"2009-08-14T05:41:20-07:00","username":"fiedlert","name":"Documentation","url":"https://github.com/fiedlert/Documentation","private":false,"language":"Shell","pushed_at":"2009-08-20T06:38:17-07:00","created":"2009-08-14T05:41:20-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"jardapoliak","score":8.789819,"pushed":"2010-08-22T12:05:55-07:00","description":"","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":92,"open_issues":0,"created_at":"2010-08-22T10:36:08-07:00","username":"jardapoliak","name":"documentation","url":"https://github.com/jardapoliak/documentation","language":"","private":false,"pushed_at":"2010-08-22T12:05:55-07:00","created":"2010-08-22T10:36:08-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"zjemcichleb.documentation","owner":"zjemcichleb","score":8.789819,"pushed":null,"description":"doc","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":0,"open_issues":0,"created_at":"2010-08-26T03:38:09-07:00","username":"zjemcichleb","name":"Documentation","url":"https://github.com/zjemcichleb/Documentation","language":"","private":false,"created":"2010-08-26T03:38:09-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"jackhouse","score":8.789819,"pushed":"2010-12-13T23:12:08-08:00","description":"雑多なドキュメントのリポジトリ","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":108,"open_issues":0,"created_at":"2010-12-13T19:01:47-08:00","username":"jackhouse","name":"document","url":"https://github.com/jackhouse/document","language":"","private":false,"pushed_at":"2010-12-13T23:12:08-08:00","created":"2010-12-13T19:01:47-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"scottjacobsen","score":8.789819,"pushed":null,"description":"","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":0,"open_issues":0,"created_at":"2010-12-28T09:31:41-08:00","username":"scottjacobsen","name":"documentation","url":"https://github.com/scottjacobsen/documentation","language":"","private":false,"created":"2010-12-28T09:31:41-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"Amivono","score":8.789819,"pushed":"2011-09-09T15:21:40-07:00","description":"","watchers":1,"has_wiki":true,"followers":1,"organization":"Amivono","fork":false,"size":228,"open_issues":0,"created_at":"2011-02-26T08:11:15-08:00","username":"Amivono","name":"documents","url":"https://github.com/Amivono/documents","language":"","private":false,"pushed_at":"2011-09-09T15:21:40-07:00","created":"2011-02-26T08:11:15-08:00","forks":0,"has_issues":false},{"type":"repo","has_downloads":true,"homepage":"","owner":"cessor","score":8.789819,"pushed":null,"description":"","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":0,"open_issues":0,"created_at":"2011-03-02T11:02:26-08:00","username":"cessor","name":"documents","url":"https://github.com/cessor/documents","language":"","private":false,"created":"2011-03-02T11:02:26-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"kshitij22","score":8.789819,"pushed":"2011-02-28T21:13:51-08:00","description":"","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":200,"open_issues":0,"created_at":"2011-02-28T11:32:33-08:00","username":"kshitij22","name":"Documentations","url":"https://github.com/kshitij22/Documentations","private":false,"language":"Java","pushed_at":"2011-02-28T21:13:51-08:00","created":"2011-02-28T11:32:33-08:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"solea","score":8.789819,"pushed":null,"description":"cument","watchers":1,"has_wiki":false,"followers":1,"fork":false,"size":0,"open_issues":0,"created_at":"2011-03-27T20:28:06-07:00","username":"solea","name":"document","url":"https://github.com/solea/document","language":"","private":false,"created":"2011-03-27T20:28:06-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"circlsocial","score":8.789819,"pushed":null,"description":"","watchers":1,"has_wiki":true,"followers":1,"organization":"circlsocial","fork":false,"size":0,"open_issues":0,"created_at":"2011-03-28T15:55:48-07:00","username":"circlsocial","name":"documentation","url":"https://github.com/circlsocial/documentation","language":"","private":false,"created":"2011-03-28T15:55:48-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"macmade","score":8.789819,"pushed":"2011-04-03T01:08:59-07:00","description":"","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":376,"open_issues":0,"created_at":"2011-04-03T01:06:51-07:00","username":"macmade","name":"Documentation","url":"https://github.com/macmade/Documentation","language":"","private":false,"pushed_at":"2011-04-03T01:08:59-07:00","created":"2011-04-03T01:06:51-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"IgoR0604","score":8.789819,"pushed":"2011-04-08T10:22:03-07:00","description":"Lab02","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":121,"open_issues":0,"created_at":"2011-04-06T14:02:09-07:00","username":"IgoR0604","name":"Document","url":"https://github.com/IgoR0604/Document","language":"","private":false,"pushed_at":"2011-04-08T10:22:03-07:00","created":"2011-04-06T14:02:09-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"mayurp","score":8.789819,"pushed":"2011-04-06T14:47:16-07:00","description":"","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":124,"open_issues":0,"created_at":"2011-04-06T14:46:32-07:00","username":"mayurp","name":"Documents","url":"https://github.com/mayurp/Documents","language":"","private":false,"pushed_at":"2011-04-06T14:47:16-07:00","created":"2011-04-06T14:46:32-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"Amonaum","score":8.789819,"pushed":"2011-04-13T05:52:07-07:00","description":"","watchers":1,"has_wiki":true,"followers":1,"organization":"Amonaum","fork":false,"size":108,"open_issues":0,"created_at":"2011-04-13T05:46:35-07:00","username":"Amonaum","name":"Documents","url":"https://github.com/Amonaum/Documents","language":"","private":false,"pushed_at":"2011-04-13T05:52:07-07:00","created":"2011-04-13T05:46:35-07:00","forks":1,"has_issues":true},{"type":"repo","has_downloads":true,"homepage":"","owner":"sunshinemyson","score":8.789819,"pushed":"2011-09-02T01:31:05-07:00","description":"words","watchers":1,"has_wiki":true,"followers":1,"fork":false,"size":148,"open_issues":0,"created_at":"2011-04-24T19:26:49-07:00","username":"sunshinemyson","name":"Document","url":"https://github.com/sunshinemyson/Document","language":"","private":false,"pushed_at":"2011-09-02T01:31:05-07:00","created":"2011-04-24T19:26:49-07:00","forks":1,"has_issues":true}]} + From df63f6be2c5150464233f00a0789a53661dfbf6e Mon Sep 17 00:00:00 2001 From: Vincent Jacques Date: Fri, 29 Jun 2012 18:10:24 +0100 Subject: [PATCH 09/10] Implement legacy pagination --- github/Legacy.py | 82 ++++++++++++++++--- github/Repository.py | 12 +-- test/Github.py | 3 + ...Github.testLegacySearchUsersPagination.txt | 15 ++++ 4 files changed, 96 insertions(+), 16 deletions(-) create mode 100644 test/ReplayData/Github.testLegacySearchUsersPagination.txt diff --git a/github/Legacy.py b/github/Legacy.py index efe5a38a..f9a915ff 100644 --- a/github/Legacy.py +++ b/github/Legacy.py @@ -11,17 +11,77 @@ # You should have received a copy of the GNU Lesser General Public License along with PyGithub. If not, see . -def PaginatedList( url, args, requester, key, convert, contentClass ): - headers, data = requester.requestAndCheck( - "GET", - url, - args, - None - ) - return [ - contentClass( requester, convert( element ), completed = False ) - for element in data[ key ] - ] +class PaginatedList: + def __init__( self, url, args, requester, key, convert, contentClass ): + self.__url = url + self.__args = args + self.__requester = requester + self.__key = key + self.__convert = convert + self.__contentClass = contentClass + self.__nextPage = 1 + self.__continue = True + self.__elements = list() + + class __Slice: + def __init__( self, theList, theSlice ): + self.__list = theList + self.__start = theSlice.start or 0 + self.__stop = theSlice.stop + self.__step = theSlice.step or 1 + + def __iter__( self ): + index = self.__start + while not self.__finished( index ) : + if self.__list._isBiggerThan( index ): + yield self.__list[ index ] + index += self.__step + else: + return + + def __finished( self, index ): + return self.__stop is not None and index >= self.__stop + + def __iter__( self ): + for element in self.__elements: + yield element + while self.__continue: + newElements = self.__fetchNextPage() + self.__continue = len( newElements ) > 0 + for element in newElements: + yield element + + def __fetchNextPage( self ): + if self.__nextPage != 1: + self.__args[ "start_page" ] = self.__nextPage + self.__nextPage += 1 + headers, data = self.__requester.requestAndCheck( + "GET", + self.__url, + self.__args, + None + ) + newElements = [ + self.__contentClass( self.__requester, self.__convert( element ), completed = False ) + for element in data[ self.__key ] + ] + self.__elements += newElements + return newElements + + def __getitem__( self, index ): + assert isinstance( index, ( int, slice ) ) + if isinstance( index, int ): + self.__fetchToIndex( index ) + return self.__elements[ index ] + else: + return self.__Slice( self, index ) + + def _isBiggerThan( self, index ): + return len( self.__elements ) > index or self.__continue + + def __fetchToIndex( self, index ): + while len( self.__elements ) <= index and self.__continue: + self.__fetchNextPage() def convertUser( attributes ): login = attributes[ "login" ] diff --git a/github/Repository.py b/github/Repository.py index db459279..d87e1720 100644 --- a/github/Repository.py +++ b/github/Repository.py @@ -1006,14 +1006,16 @@ class Repository( GithubObject.GithubObject ): def legacy_search_issues( self, state, keyword ): assert state in [ "open", "closed" ], state assert isinstance( keyword, ( str, unicode ) ), keyword - return Legacy.PaginatedList( + headers, data = self._requester.requestAndCheck( + "GET", "https://api.github.com/legacy/issues/search/" + self.owner.login + "/" + self.name + "/" + state + "/" + keyword, {}, - self._requester, - "issues", - Legacy.convertIssue, - Issue.Issue, + None ) + return [ + Issue.Issue( self._requester, Legacy.convertIssue( element ), completed = False ) + for element in data[ "issues" ] + ] @property def _identity( self ): diff --git a/test/Github.py b/test/Github.py index 5d530b3d..a68f0fbb 100644 --- a/test/Github.py +++ b/test/Github.py @@ -34,6 +34,9 @@ class Github( Framework.TestCase ): def testLegacySearchUsers( self ): self.assertListKeyBegin( self.g.legacy_search_users( "vincent" ), lambda u: u.login, [ "nvie", "obra", "lusis" ] ) + def testLegacySearchUsersPagination( self ): + self.assertEqual( len( list( self.g.legacy_search_users( "Lucy" ) ) ), 146 ) + def testLegacySearchUserByEmail( self ): user = self.g.legacy_search_user_by_email( "vincent@vincent-jacques.net" ) self.assertEqual( user.login, "jacquev6" ) diff --git a/test/ReplayData/Github.testLegacySearchUsersPagination.txt b/test/ReplayData/Github.testLegacySearchUsersPagination.txt new file mode 100644 index 00000000..8ae3a87a --- /dev/null +++ b/test/ReplayData/Github.testLegacySearchUsersPagination.txt @@ -0,0 +1,15 @@ +GET /legacy/user/search/Lucy {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4947'), ('x-ratelimit-limit', '5000'), ('content-length', '38993'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('etag', '"30586212918ceda0cf4664e806f50d3d"'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Fri, 29 Jun 2012 12:30:44 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"users":[{"fullname":"lucy","created_at":"2008-08-21T13:06:47Z","followers":21,"pushed":"2012-06-20T20:15:48.832Z","gravatar_id":"274036f0898dcde5d22abc02541cc6fe","followers_count":21,"name":"lucy","username":"diN0bot","login":"diN0bot","repos":22,"created":"2008-08-21T13:06:47Z","language":"Python","record":null,"id":"user-21395","location":"SF, USA, EARTH","score":17.231083,"type":"user","public_repo_count":22},{"fullname":"lucie","created_at":"2012-04-09T21:24:43Z","followers":0,"pushed":"2012-04-09T22:15:16.463Z","gravatar_id":"f0ef4bb33686c9e1bdae0ce7cab03684","followers_count":0,"name":"lucie","username":"lucie-tomoconcept","login":"lucie-tomoconcept","created":"2012-04-09T21:24:43Z","repos":1,"language":"JavaScript","record":null,"id":"user-1627153","location":"","score":13.04163,"type":"user","public_repo_count":1},{"fullname":"Lucy","created_at":"2011-11-18T12:56:11Z","followers":0,"pushed":"2011-11-18T15:15:33.245Z","gravatar_id":"3af8bd9cbe32376f65840384aaf4544c","followers_count":0,"name":"Lucy","username":"lucymtc","login":"lucymtc","repos":0,"created":"2011-11-18T12:56:11Z","language":"","record":null,"id":"user-1204359","location":"","score":12.95676,"type":"user","public_repo_count":0},{"fullname":"Lucie","created_at":"2011-07-02T03:05:41Z","followers":0,"pushed":"2011-07-02T03:15:13.358Z","gravatar_id":"adaecb10ec5abea463ea2069f039b98d","followers_count":0,"name":"Lucie","username":"luciebaru","login":"luciebaru","repos":0,"created":"2011-07-02T03:05:41Z","language":"","record":null,"id":"user-889863","location":"","score":12.92111,"type":"user","public_repo_count":0},{"fullname":"Lucie Votypkova","created_at":"2011-09-07T07:07:08Z","followers":0,"pushed":"2012-06-13T09:15:43.045Z","gravatar_id":"4c35b50485a17f3365fabf3ee7545ff8","followers_count":0,"name":"Lucie Votypkova","username":"lvotypko","login":"lvotypko","created":"2011-09-07T07:07:08Z","repos":15,"language":"Java","record":null,"id":"user-1032196","location":"","score":8.829987,"type":"user","public_repo_count":15},{"fullname":"Lucie Boutou","created_at":"2012-03-28T11:29:43Z","followers":1,"pushed":"2012-05-30T14:15:23.212Z","gravatar_id":"4a06c90b26e3ed65e528c1c44123e5bf","followers_count":1,"name":"Lucie Boutou","username":"Flikalb","login":"Flikalb","created":"2012-03-28T11:29:43Z","repos":2,"language":"Java","record":null,"id":"user-1583097","location":"Belfort, France","score":8.358318,"type":"user","public_repo_count":2},{"fullname":"Lucy Diamond","created_at":"2011-05-19T15:30:20Z","followers":1,"pushed":"2012-04-16T10:15:46.936Z","gravatar_id":"937c8c58bd85a781889b9d126e6f5c0e","followers_count":1,"name":"Lucy Diamond","username":"waltz4lucy","login":"waltz4lucy","created":"2011-05-19T15:30:20Z","repos":1,"language":"Ruby","record":null,"id":"user-798455","location":"","score":8.338159,"type":"user","public_repo_count":1},{"fullname":"Léger Lucie","created_at":"2010-12-13T15:19:34Z","followers":1,"pushed":"2011-03-12T11:15:13.049Z","gravatar_id":"f56baba14dc3b8ae579006216433f65a","followers_count":1,"name":"Léger Lucie","username":"lucie62155","login":"lucie62155","repos":0,"created":"2010-12-13T15:19:34Z","language":"","record":null,"id":"user-521287","location":"Calais","score":8.269781,"type":"user","public_repo_count":0},{"fullname":"Lucy Kobarashi","created_at":"2011-08-06T10:17:23Z","followers":0,"pushed":"2011-11-03T15:15:26.893Z","gravatar_id":"3bc0d0a604d75d369033939067e0762a","followers_count":0,"name":"Lucy Kobarashi","username":"NyuSan","login":"NyuSan","repos":3,"created":"2011-08-06T10:17:23Z","language":"OCaml","record":null,"id":"user-962824","location":"Earth, Orion-Signus arm","score":8.226553,"type":"user","public_repo_count":3},{"fullname":"Lucy Park","created_at":"2011-11-19T04:16:29Z","followers":0,"pushed":"2012-05-05T15:16:11.913Z","gravatar_id":"cbb5b8e2afb8eaca599cf70a75b08963","followers_count":0,"name":"Lucy Park","username":"echojuliett","login":"echojuliett","created":"2011-11-19T04:16:29Z","repos":3,"language":"JavaScript","record":null,"id":"user-1205890","location":"","score":8.226553,"type":"user","public_repo_count":3},{"fullname":"Marian Lucy","created_at":"2011-04-25T06:31:48Z","followers":1,"pushed":"2012-06-10T18:15:21.05Z","gravatar_id":"f85970122e41a371fa331d9c1c481d4f","followers_count":1,"name":"Marian Lucy","username":"fressschwein","login":"fressschwein","created":"2011-04-25T06:31:48Z","repos":0,"language":"","record":null,"id":"user-749803","location":"Near Berlin","score":8.226553,"type":"user","public_repo_count":0},{"fullname":"Lucy Zhang","created_at":"2010-05-08T21:11:12Z","followers":0,"pushed":"2012-06-15T19:15:54.498Z","gravatar_id":"a32f70d85265c1246b916ddae9b5e5f6","followers_count":0,"name":"Lucy Zhang","username":"beluga","login":"beluga","created":"2010-05-08T21:11:12Z","repos":2,"language":"Python","record":null,"id":"user-271324","location":"","score":8.20746,"type":"user","public_repo_count":2},{"fullname":"Lucie Meresse","created_at":"2010-02-09T18:02:53Z","followers":0,"pushed":"2011-12-21T16:15:19.904Z","gravatar_id":"5eae59e863fc24fb5bd6faf8b1eea8a0","followers_count":0,"name":"Lucie Meresse","username":"Dexedrine","login":"Dexedrine","created":"2010-02-09T18:02:53Z","repos":2,"language":"Python","record":null,"id":"user-200432","location":"Lille, France","score":8.176267,"type":"user","public_repo_count":2},{"fullname":"Lucy Iconomidis","created_at":"2011-03-17T06:36:50Z","followers":0,"pushed":"2012-03-07T23:16:25.061Z","gravatar_id":"08fe07204ad5960b84af62a0b5411780","followers_count":0,"name":"Lucy Iconomidis","username":"lucy-iconomidis","login":"lucy-iconomidis","repos":0,"created":"2011-03-17T06:36:50Z","language":"","record":null,"id":"user-674557","location":"","score":8.141471,"type":"user","public_repo_count":0},{"fullname":"Lucy Li","created_at":"2011-01-27T00:39:36Z","followers":0,"pushed":"2011-03-11T03:15:11.574Z","gravatar_id":"26e9ec53be78d82e166eaeba7d19d8a8","followers_count":0,"name":"Lucy Li","username":"donotgoogleme","login":"donotgoogleme","repos":1,"created":"2011-01-27T00:39:36Z","language":"Java","record":null,"id":"user-585649","location":"","score":8.12598,"type":"user","public_repo_count":1},{"fullname":"Luci Cor","created_at":"2011-04-09T11:00:28Z","followers":0,"pushed":"2011-04-10T22:15:13.902Z","gravatar_id":"413dfdd7e2dbc325c99f73b2b1df0d6c","followers_count":0,"name":"Luci Cor","username":"lucicor","login":"lucicor","repos":1,"created":"2011-04-09T11:00:28Z","language":"C","record":null,"id":"user-719065","location":"","score":8.12598,"type":"user","public_repo_count":1},{"fullname":"Lucy Beer","created_at":"2011-09-11T22:12:21Z","followers":0,"pushed":"2011-09-11T22:15:20.913Z","gravatar_id":"67a6505bfb36238498079f18d2287f82","followers_count":0,"name":"Lucy Beer","username":"webtrainingwheels","login":"webtrainingwheels","repos":0,"created":"2011-09-11T22:12:21Z","language":"","record":null,"id":"user-1043076","location":"","score":8.111344,"type":"user","public_repo_count":0},{"fullname":"Luci Bonini","created_at":"2010-09-23T19:26:59Z","followers":0,"pushed":"2010-09-24T02:15:10.822Z","gravatar_id":"277c572836da2095fb477be5abece1de","followers_count":0,"name":"Luci Bonini","username":"lucibonini","login":"lucibonini","repos":0,"created":"2010-09-23T19:26:59Z","language":"","record":null,"id":"user-413414","location":"Brazil","score":8.075694,"type":"user","public_repo_count":0},{"fullname":"Lucy Ding","created_at":"2011-01-15T21:58:13Z","followers":0,"pushed":"2011-01-16T08:15:09.069Z","gravatar_id":"3540446a2d8bbd5be1951583040af45e","followers_count":0,"name":"Lucy Ding","username":"haju","login":"haju","created":"2011-01-15T21:58:13Z","repos":0,"language":"","record":null,"id":"user-566780","location":"Sydney, Australia","score":8.075694,"type":"user","public_repo_count":0},{"fullname":"Lucie Tezourová","created_at":"2011-03-01T15:08:35Z","followers":0,"pushed":"2011-03-01T16:15:16.874Z","gravatar_id":"36efb686f5345cfbbebd68cdf35c656c","followers_count":0,"name":"Lucie Tezourová","username":"lucietezourova","login":"lucietezourova","repos":0,"created":"2011-03-01T15:08:35Z","language":"","record":null,"id":"user-644955","location":"Svět","score":8.075694,"type":"user","public_repo_count":0},{"fullname":"Michael Lucy","created_at":"2011-03-07T03:01:12Z","followers":0,"pushed":"2011-03-07T03:15:13.328Z","gravatar_id":"8cf2053621b7f768897577004f0d3c98","followers_count":0,"name":"Michael Lucy","username":"sonik","login":"sonik","repos":0,"created":"2011-03-07T03:01:12Z","language":"","record":null,"id":"user-654822","location":"","score":8.075694,"type":"user","public_repo_count":0},{"fullname":"Lucy Chang","created_at":"2011-08-09T18:25:00Z","followers":0,"pushed":"2012-03-09T18:15:38.421Z","gravatar_id":"83cf79e74eec1fe65c473d457bbea2c5","followers_count":0,"name":"Lucy Chang","username":"lucychang-paypal","login":"lucychang-paypal","repos":0,"created":"2011-08-09T18:25:00Z","language":"","record":null,"id":"user-969613","location":"","score":8.075694,"type":"user","public_repo_count":0},{"fullname":"Lucy Miller","created_at":"2012-04-21T02:39:38Z","followers":0,"pushed":"2012-04-21T03:15:14.862Z","gravatar_id":"80a0dd79cd5852780889ab995052ac00","followers_count":0,"name":"Lucy Miller","username":"bus1nessmgt2012","login":"bus1nessmgt2012","created":"2012-04-21T02:39:38Z","repos":0,"language":"","record":null,"id":"user-1664725","location":"","score":8.075694,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2008-11-07T17:33:29Z","followers":0,"pushed":"2010-05-23T23:18:55.339Z","gravatar_id":"188ce836970219449b8d4cf85f2b33ec","followers_count":0,"name":"","username":"Lucy","login":"Lucy","repos":0,"created":"2008-11-07T17:33:29Z","language":"","record":null,"id":"user-33230","location":"","score":6.9521737,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2008-11-28T09:44:41Z","followers":0,"pushed":"2010-05-24T00:15:20.66Z","gravatar_id":"d520d024d722d1e1411f9d872eff8b95","followers_count":0,"name":"","username":"lucie","login":"lucie","repos":0,"created":"2008-11-28T09:44:41Z","language":"","record":null,"id":"user-37063","location":"","score":6.9521737,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-06-22T16:38:16Z","followers":0,"pushed":"2011-06-22T17:16:02.298Z","gravatar_id":"9dfb004a3e7dc56fbbb1d9308ba999ac","followers_count":0,"name":"","username":"lucys","login":"lucys","repos":0,"created":"2011-06-22T16:38:16Z","language":"","record":null,"id":"user-867348","location":"","score":6.9477177,"type":"user","public_repo_count":0},{"fullname":"Lucy McLaughlin","created_at":"2011-09-04T12:27:29Z","followers":0,"pushed":"2012-05-11T13:15:23.244Z","gravatar_id":"431afe648add519710c1a7f64e55b894","followers_count":0,"name":"Lucy McLaughlin","username":"randomling","login":"randomling","created":"2011-09-04T12:27:29Z","repos":4,"language":"Perl","record":null,"id":"user-1025313","location":"London","score":6.6617,"type":"user","public_repo_count":4},{"fullname":"endu-lucy","created_at":"2009-03-08T14:29:27Z","followers":0,"pushed":"2011-06-26T10:15:09.042Z","gravatar_id":"4ae01d244c3753665764afbb2cf6b0b1","followers_count":0,"name":"endu-lucy","username":"endu","login":"endu","repos":1,"created":"2009-03-08T14:29:27Z","language":"C","record":null,"id":"user-61279","location":"","score":6.5108414,"type":"user","public_repo_count":1},{"fullname":"Lucie Fitch Bodie","created_at":"2011-06-04T14:55:02Z","followers":0,"pushed":"2012-01-03T22:15:36.517Z","gravatar_id":"40bc753e529190e7525b51c6728a0cb8","followers_count":0,"name":"Lucie Fitch Bodie","username":"luciefitchbodie","login":"luciefitchbodie","repos":1,"created":"2011-06-04T14:55:02Z","language":"","record":null,"id":"user-829452","location":"","score":6.5108414,"type":"user","public_repo_count":1},{"fullname":"Download Wendy and Lucy full movie watch","created_at":"2009-12-08T13:57:45Z","followers":0,"pushed":"2010-05-24T00:26:14.619Z","followers_count":0,"name":"Download Wendy and Lucy full movie watch","username":"e4489xixpd2948t","login":"e4489xixpd2948t","repos":7,"created":"2009-12-08T13:57:45Z","language":"","record":null,"id":"user-164415","location":"","score":5.197419,"type":"user","public_repo_count":7},{"fullname":"","created_at":"2009-12-31T15:41:40Z","followers":1,"pushed":"2010-05-23T23:26:49.963Z","gravatar_id":"8874818eea10331cf88c7c6ceb6a260b","followers_count":1,"name":"","username":"lcr","login":"lcr","repos":0,"created":"2009-12-31T15:41:40Z","language":"","record":null,"id":"user-174722","location":"","score":5.1925974,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-05-12T02:37:30Z","followers":0,"pushed":"2012-05-14T07:15:24.533Z","gravatar_id":"3995c8fed7d37bf57dfd463d77cdfbea","followers_count":0,"name":"","username":"lucy2012","login":"lucy2012","created":"2012-05-12T02:37:30Z","repos":1,"language":"","record":null,"id":"user-1731863","location":"","score":4.3731136,"type":"user","public_repo_count":1},{"fullname":"","created_at":"2009-02-10T17:56:46Z","followers":0,"pushed":"2010-05-24T01:18:31.291Z","gravatar_id":"d4768ad29e02d6fdb82e42ffc0b9e486","followers_count":0,"name":"","username":"Luci0","login":"Luci0","repos":0,"created":"2009-02-10T17:56:46Z","language":"","record":null,"id":"user-53398","location":"","score":4.3540215,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2009-10-24T04:18:18Z","followers":0,"pushed":"2010-05-24T02:17:22.769Z","gravatar_id":"10bb57f304b30df01cfdf2651bc35d6b","followers_count":0,"name":"","username":"Lucy127","login":"Lucy127","repos":0,"created":"2009-10-24T04:18:18Z","language":"","record":null,"id":"user-143941","location":"","score":4.3540215,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-02-06T19:30:39Z","followers":0,"pushed":"2011-02-06T20:15:11.729Z","gravatar_id":"8fef5b5be5c201f77a21de8855c9311b","followers_count":0,"name":"","username":"lucy5533","login":"lucy5533","repos":0,"created":"2011-02-06T19:30:39Z","language":"","record":null,"id":"user-603563","location":"","score":4.3540215,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-06-28T16:00:00Z","followers":0,"pushed":"2012-06-28T16:15:43.35Z","gravatar_id":"3d2f7a0343b47950597fb2196e6e91c5","followers_count":0,"name":"","username":"lucy541","login":"lucy541","repos":0,"created":"2012-06-28T16:00:00Z","language":"","record":null,"id":"user-1903046","location":"","score":4.3540215,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2010-05-06T08:20:31Z","followers":0,"pushed":"2010-05-23T22:35:45.685Z","gravatar_id":"ebf14b66e770e5be37b6e1824e1a8604","followers_count":0,"name":"","username":"lucy1015","login":"lucy1015","repos":0,"created":"2010-05-06T08:20:31Z","language":"","record":null,"id":"user-266292","location":"","score":4.349565,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2010-03-16T00:39:18Z","followers":0,"pushed":"2010-03-16T01:15:09.268Z","gravatar_id":"b0ad475bf34cd7ab1631c94e857f79ba","followers_count":0,"name":"","username":"lucy1936","login":"lucy1936","created":"2010-03-16T00:39:18Z","repos":0,"language":"","record":null,"id":"user-223446","location":"","score":4.3228273,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-02-24T17:31:36Z","followers":0,"pushed":"2011-02-24T18:15:14.79Z","gravatar_id":"a8a0a96bb47bed20c304eb2f4e5c11e2","followers_count":0,"name":"","username":"lucy15","login":"lucy15","repos":0,"created":"2011-02-24T17:31:36Z","language":"","record":null,"id":"user-636402","location":"","score":4.3228273,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-06-23T18:20:27Z","followers":0,"pushed":"2011-06-23T19:15:32.546Z","gravatar_id":"bd0f86427e0c978c2554f0c67228afc6","followers_count":0,"name":"","username":"Lucy1771","login":"Lucy1771","repos":0,"created":"2011-06-23T18:20:27Z","language":"","record":null,"id":"user-871492","location":"","score":4.3228273,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-09-26T07:47:52Z","followers":0,"pushed":"2011-12-06T06:15:22.958Z","gravatar_id":"353e806e04ebaba84fc996114f00117a","followers_count":0,"name":"","username":"lucy0178","login":"lucy0178","repos":0,"created":"2011-09-26T07:47:52Z","language":"","record":null,"id":"user-1079895","location":"","score":4.3228273,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-01-17T20:26:32Z","followers":0,"pushed":"2012-01-18T21:15:32.336Z","gravatar_id":"aeb0c3fc7bb83512327a58fe0bf5a36f","followers_count":0,"name":"","username":"luci1234","login":"luci1234","created":"2012-01-17T20:26:32Z","repos":0,"language":"","record":null,"location":"","id":"user-1340006","score":4.3228273,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-03-30T11:34:26Z","followers":0,"pushed":"2012-03-30T12:15:24.98Z","gravatar_id":"16dd0f4291c09ab48e1aef163c7afe08","followers_count":0,"name":"","username":"Luci4","login":"Luci4","repos":0,"created":"2012-03-30T11:34:26Z","language":"","record":null,"id":"user-1590212","location":"","score":4.3228273,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-05-25T22:08:22Z","followers":1,"pushed":"2012-04-11T21:16:15.164Z","gravatar_id":"adc11abccfec98a183ccb9c9bd443a4b","followers_count":1,"name":"","username":"LucyI","login":"LucyI","created":"2011-05-25T22:08:22Z","repos":0,"language":"","record":null,"id":"user-810839","location":"","score":3.635858,"type":"user","public_repo_count":0},{"fullname":"Aura Travel","created_at":"2012-05-02T02:06:38Z","followers":0,"pushed":"2012-05-02T02:15:28.33Z","gravatar_id":"f9a974e21859062182b63392235a2a8a","followers_count":0,"name":"Aura Travel","username":"auratravel","login":"auratravel","created":"2012-05-02T02:06:38Z","repos":1,"language":"","record":null,"id":"user-1697327","location":"Australia","score":3.6153338,"type":"user","public_repo_count":1},{"fullname":"","created_at":"2011-10-10T14:11:01Z","followers":0,"pushed":"2012-05-03T03:15:21.088Z","gravatar_id":"8f58e67d013167b1110fdb78ef23fe7f","followers_count":0,"name":"","username":"lucymhdavies","login":"lucymhdavies","created":"2011-10-10T14:11:01Z","repos":1,"language":"Java","record":null,"id":"user-1116529","location":"","score":3.6153338,"type":"user","public_repo_count":1},{"fullname":"","created_at":"2012-01-07T15:56:48Z","followers":2,"pushed":"2012-06-26T00:15:17.201Z","gravatar_id":"a02be745bfbc49fe22395f69d664039e","followers_count":2,"name":"","username":"iamhutch","login":"iamhutch","created":"2012-01-07T15:56:48Z","repos":3,"language":"JavaScript","record":null,"id":"user-1311645","location":"","score":3.571992,"type":"user","public_repo_count":3},{"fullname":"","created_at":"2010-10-12T23:35:28Z","followers":0,"pushed":"2010-10-17T10:15:10.605Z","gravatar_id":"c1fd276707bbc89873e50fed40c2015f","followers_count":0,"name":"","username":"lucindamary","login":"lucindamary","repos":0,"created":"2010-10-12T23:35:28Z","language":"","record":null,"id":"user-437303","location":"","score":3.5650477,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-06-14T21:34:53Z","followers":0,"pushed":"2011-06-14T22:15:18.424Z","gravatar_id":"2d0c01d2df7455cd5de1a44c3601cbc0","followers_count":0,"name":"","username":"Fortepiano","login":"Fortepiano","created":"2011-06-14T21:34:53Z","repos":0,"language":"","record":null,"id":"user-850439","location":"","score":3.5650477,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-01-10T14:19:46Z","followers":0,"pushed":"2012-01-10T15:15:39.844Z","gravatar_id":"b3b4d49d89b08c6797a0c10b20d9ad5e","followers_count":0,"name":"","username":"luciekasna","login":"luciekasna","repos":0,"created":"2012-01-10T14:19:46Z","language":"","record":null,"id":"user-1318596","location":"","score":3.5650477,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-10-04T02:56:21Z","followers":0,"pushed":"2012-03-08T01:15:19.527Z","gravatar_id":"5d3d27a1c6b0cb450e690dd54a302469","followers_count":0,"name":"","username":"lucylou","login":"lucylou","repos":0,"created":"2011-10-04T02:56:21Z","language":"","record":null,"id":"user-1100650","location":"","score":3.5650477,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-01-11T09:23:51Z","followers":0,"pushed":"2012-04-11T08:15:25.21Z","gravatar_id":"db3731506ada5dce192c90d2778d2b03","followers_count":0,"name":"","username":"luciebarthlen","login":"luciebarthlen","created":"2012-01-11T09:23:51Z","repos":0,"language":"","record":null,"id":"user-1321175","location":"","score":3.5650477,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-06-01T18:08:10Z","followers":0,"pushed":"2012-06-01T19:15:13.898Z","gravatar_id":"1bfeb3e30e7054b24b3cc8969350032f","followers_count":0,"name":"","username":"lucybruckner","login":"lucybruckner","repos":0,"created":"2012-06-01T18:08:10Z","language":"","record":null,"id":"user-1807177","location":"","score":3.5650477,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2009-04-30T14:28:42Z","followers":0,"pushed":"2012-06-06T21:15:26.357Z","gravatar_id":"6497df826186da9709d52bcc36f53623","followers_count":0,"name":"","username":"lucygrayson","login":"lucygrayson","created":"2009-04-30T14:28:42Z","repos":0,"language":"","record":null,"id":"user-79583","location":"","score":3.5650477,"type":"user","public_repo_count":0},{"fullname":"Maddate","created_at":"2012-03-07T20:29:25Z","followers":0,"pushed":"2012-06-28T18:15:28.106Z","gravatar_id":"997a28ce13c7115780992acaf701d49d","followers_count":0,"name":"Maddate","username":"maddi","login":"maddi","repos":0,"created":"2012-03-07T20:29:25Z","language":"","record":null,"id":"user-1513164","location":"","score":3.5650477,"type":"user","public_repo_count":0},{"fullname":"Ermal Luçi","created_at":"2010-01-19T08:33:14Z","followers":2,"pushed":"2012-03-23T09:15:25.49Z","gravatar_id":"ada44811ee680f8b24bd3b0936a076ee","followers_count":2,"name":"Ermal Luçi","username":"ermal","login":"ermal","repos":2,"created":"2010-01-19T08:33:14Z","language":"Shell","record":null,"id":"user-185253","location":"Albania","score":3.5217059,"type":"user","public_repo_count":2},{"fullname":"","created_at":"2012-05-22T19:56:57Z","followers":0,"pushed":"2012-05-22T20:15:32.078Z","gravatar_id":"1111d2fc2c816a54ab2679ecf0343aa2","followers_count":0,"name":"","username":"LucyTech","login":"LucyTech","created":"2012-05-22T19:56:57Z","repos":1,"language":"PHP","record":null,"id":"user-1766837","location":"","score":3.5085478,"type":"user","public_repo_count":1},{"fullname":"","created_at":"2009-10-24T04:19:48Z","followers":0,"pushed":"2010-05-24T02:17:22.789Z","gravatar_id":"217c8b33ebdadc4d1a145ed5b734efcb","followers_count":0,"name":"","username":"Lucy-cun","login":"Lucy-cun","repos":0,"created":"2009-10-24T04:19:48Z","language":"","record":null,"id":"user-143943","location":"","score":3.489456,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-03-13T09:04:33Z","followers":0,"pushed":"2011-03-13T09:15:11.286Z","gravatar_id":"bc0f3ed62c378b135e408cd669ad2fb1","followers_count":0,"name":"","username":"luci-serb","login":"luci-serb","repos":0,"created":"2011-03-13T09:04:33Z","language":"","record":null,"id":"user-666715","location":"","score":3.489456,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2010-11-09T15:13:16Z","followers":0,"pushed":"2011-06-17T10:26:39.586Z","gravatar_id":"5e4a99d34928682c35f9f3260bc232ee","followers_count":0,"name":"","username":"LuciRebecca","login":"LuciRebecca","repos":0,"created":"2010-11-09T15:13:16Z","language":"","record":null,"id":"user-474234","location":"","score":3.489456,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2009-07-06T18:44:13Z","followers":0,"pushed":"2010-05-25T04:15:49.667Z","gravatar_id":"f703b440ac3b5991886d313b5e5ca25a","followers_count":0,"name":"","username":"LucySofiano","login":"LucySofiano","repos":0,"created":"2009-07-06T18:44:13Z","language":"","record":null,"id":"user-102224","location":"","score":3.4849997,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-05-19T15:30:20Z","followers":0,"pushed":"2011-05-19T16:15:19.239Z","gravatar_id":"937c8c58bd85a781889b9d126e6f5c0e","followers_count":0,"name":"","username":"waltz4lucy","login":"waltz4lucy","repos":0,"created":"2011-05-19T15:30:20Z","language":"","record":null,"id":"user-798456","location":"","score":3.4849997,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-08-26T09:37:46Z","followers":0,"pushed":"2011-08-26T10:15:52.832Z","gravatar_id":"7ee2c8660de537ff3bd471d09039ca3c","followers_count":0,"name":"","username":"LucyEKH","login":"LucyEKH","repos":0,"created":"2011-08-26T09:37:46Z","language":"","record":null,"id":"user-1006216","location":"","score":3.4849997,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-06-05T20:53:03Z","followers":0,"pushed":"2012-06-13T00:15:11.098Z","gravatar_id":"9f87af3761d6bb8539c12a6e23bbcd2a","followers_count":0,"name":"","username":"bv-lucy-puppet","login":"bv-lucy-puppet","created":"2012-06-05T20:53:03Z","repos":0,"language":"","record":null,"id":"user-1820833","location":"","score":3.4849997,"type":"user","public_repo_count":0},{"fullname":"Lucian Pacurar","created_at":"2010-02-06T19:11:50Z","followers":1,"pushed":"2012-04-27T13:15:20.332Z","gravatar_id":"1ceab007bf93e084e65809a905574811","followers_count":1,"name":"Lucian Pacurar","username":"lucassp","login":"lucassp","repos":4,"created":"2010-02-06T19:11:50Z","language":"JavaScript","record":null,"id":"user-198549","location":"Timisoara, ROMANIA","score":3.4714198,"type":"user","public_repo_count":4},{"fullname":"","created_at":"2010-01-28T19:12:12Z","followers":0,"pushed":"2010-05-23T21:26:11.895Z","gravatar_id":"dfa0beeba1fcfddbb9fe6710335782a3","followers_count":0,"name":"","username":"LucyQiu","login":"LucyQiu","repos":0,"created":"2010-01-28T19:12:12Z","language":"","record":null,"id":"user-191765","location":"","score":3.4582617,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-03-12T00:43:49Z","followers":0,"pushed":"2011-03-12T01:15:13.113Z","gravatar_id":"6d8d26708f5b1cd2c368e46f9fc0b816","followers_count":0,"name":"","username":"VinoLuciStyle","login":"VinoLuciStyle","repos":0,"created":"2011-03-12T00:43:49Z","language":"","record":null,"id":"user-665089","location":"","score":3.4582617,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-08-07T07:44:47Z","followers":0,"pushed":"2011-08-07T08:15:15Z","gravatar_id":"180354ce2355376982e2936266f32ed9","followers_count":0,"name":"","username":"LucyJane","login":"LucyJane","repos":0,"created":"2011-08-07T07:44:47Z","language":"","record":null,"id":"user-964138","location":"","score":3.4582617,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-08-28T01:22:03Z","followers":0,"pushed":"2011-09-21T19:15:28.828Z","gravatar_id":"d189bedd274ab331008059715d8658e0","followers_count":0,"name":"","username":"LucyJp","login":"LucyJp","repos":0,"created":"2011-08-28T01:22:03Z","language":"","record":null,"id":"user-1009291","location":"","score":3.4582617,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-10-24T01:26:36Z","followers":0,"pushed":"2011-10-24T02:15:19.952Z","gravatar_id":"cd9936e97ccc4cd2d9ffe02d43c9c438","followers_count":0,"name":"","username":"LucyHsieh","login":"LucyHsieh","repos":0,"created":"2011-10-24T01:26:36Z","language":"","record":null,"id":"user-1147204","location":"","score":3.4582617,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-01-29T06:07:49Z","followers":0,"pushed":"2012-02-27T01:15:20.197Z","gravatar_id":"919b9cfae3ca14a0c2e369dfb0228305","followers_count":0,"name":"","username":"LUCI-em","login":"LUCI-em","repos":0,"created":"2012-01-29T06:07:49Z","language":"","record":null,"id":"user-1388616","location":"","score":3.4582617,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-02-27T07:56:18Z","followers":0,"pushed":"2012-02-27T08:15:23.24Z","gravatar_id":"151dc1fe9b2b8c23d1dc03a403f20d9f","followers_count":0,"name":"","username":"LucySqueo","login":"LucySqueo","repos":0,"created":"2012-02-27T07:56:18Z","language":"","record":null,"id":"user-1477649","location":"","score":3.4582617,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-11-11T00:05:10Z","followers":0,"pushed":"2012-03-08T00:15:56.722Z","gravatar_id":"96b4574f85b9b34076cee7acadd6bdd4","followers_count":0,"name":"","username":"LucyBuildMaster","login":"LucyBuildMaster","repos":0,"created":"2011-11-11T00:05:10Z","language":"","record":null,"id":"user-1187480","location":"","score":3.4582617,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-07-15T03:48:11Z","followers":0,"pushed":"2012-03-15T12:15:39.26Z","gravatar_id":"04767af58da26ed16c1f2993dabf3fa2","followers_count":0,"name":"","username":"LucyOnskul","login":"LucyOnskul","repos":0,"created":"2011-07-15T03:48:11Z","language":"","record":null,"id":"user-916770","location":"","score":3.4582617,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-03-26T14:29:10Z","followers":0,"pushed":"2012-03-26T15:15:23.422Z","gravatar_id":"f24eee99ab516234bb3ec672999cc693","followers_count":0,"name":"","username":"LuciQa","login":"LuciQa","repos":0,"created":"2012-03-26T14:29:10Z","language":"","record":null,"id":"user-1576460","location":"","score":3.4582617,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-04-05T14:16:50Z","followers":0,"pushed":"2012-04-05T15:15:12.858Z","gravatar_id":"be394564d0e294ba5cdc79b8b577aef4","followers_count":0,"name":"","username":"LucyMoreno","login":"LucyMoreno","created":"2012-04-05T14:16:50Z","repos":0,"language":"","record":null,"id":"user-1615660","location":"","score":3.4582617,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-04-09T22:51:29Z","followers":0,"pushed":"2012-04-09T23:15:23.609Z","gravatar_id":"027fc013687698b4cb0139c3c84d8147","followers_count":0,"name":"","username":"LucyU","login":"LucyU","created":"2012-04-09T22:51:29Z","repos":0,"language":"","record":null,"id":"user-1627370","location":"","score":3.4582617,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-04-13T12:08:14Z","followers":0,"pushed":"2012-04-13T12:15:29.8Z","gravatar_id":"65b31bede1642408b3a9f15b45737dd9","followers_count":0,"name":"","username":"LucyKraz","login":"LucyKraz","created":"2012-04-13T12:08:14Z","repos":0,"language":"","record":null,"id":"user-1640137","location":"","score":3.4582617,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-05-02T20:22:40Z","followers":0,"pushed":"2012-05-02T21:15:14.109Z","gravatar_id":"0b6121216fd38441df7ff95c3c99b0e8","followers_count":0,"name":"","username":"LucyMagic","login":"LucyMagic","created":"2012-05-02T20:22:40Z","repos":0,"language":"","record":null,"id":"user-1700189","location":"","score":3.4582617,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-05-09T15:54:49Z","followers":0,"pushed":"2012-05-09T16:15:34.267Z","followers_count":0,"name":"","username":"LuciGrosjean10","login":"LuciGrosjean10","created":"2012-05-09T15:54:49Z","repos":0,"language":"","record":null,"id":"user-1722532","location":"","score":3.4582617,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-05-29T18:14:47Z","followers":0,"pushed":"2012-05-29T19:15:11.271Z","gravatar_id":"452e39dcf9ce47cabd9054a17d471c0a","followers_count":0,"name":"","username":"lucy-udalykh","login":"lucy-udalykh","created":"2012-05-29T18:14:47Z","repos":0,"language":"","record":null,"id":"user-1790068","location":"","score":3.4582617,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-05-08T14:08:51Z","followers":0,"pushed":"2012-06-01T01:15:25.696Z","followers_count":0,"name":"","username":"LucyCauthorn41","login":"LucyCauthorn41","created":"2012-05-08T14:08:51Z","repos":0,"language":"","record":null,"location":"","id":"user-1717385","score":3.4582617,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-05-08T15:18:35Z","followers":0,"pushed":"2012-06-01T01:15:30.385Z","followers_count":0,"name":"","username":"LuciHipp44","login":"LuciHipp44","created":"2012-05-08T15:18:35Z","repos":0,"language":"","record":null,"location":"","id":"user-1717908","score":3.4582617,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-05-08T16:50:18Z","followers":0,"pushed":"2012-06-01T01:15:36.396Z","followers_count":0,"name":"","username":"LucieStanga90","login":"LucieStanga90","created":"2012-05-08T16:50:18Z","repos":0,"language":"","record":null,"location":"","id":"user-1718551","score":3.4582617,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-06-28T08:27:18Z","followers":0,"pushed":"2012-06-28T09:15:16.181Z","gravatar_id":"0ec5fa48eefa0355c6fa9df6e82531c0","followers_count":0,"name":"","username":"LucyG","login":"LucyG","repos":0,"created":"2012-06-28T08:27:18Z","language":"","record":null,"id":"user-1901648","location":"","score":3.4582617,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-06-23T12:16:56Z","followers":1,"pushed":"2012-06-28T08:15:15.178Z","gravatar_id":"b89777898e97e9e3997493e1645bbce8","followers_count":1,"name":"","username":"lccoppee","login":"lccoppee","repos":2,"created":"2011-06-23T12:16:56Z","language":"PHP","record":null,"id":"user-870463","location":"France","score":3.3708475,"type":"user","public_repo_count":2},{"fullname":"","created_at":"2009-01-04T17:14:04Z","followers":1,"pushed":"2010-05-24T00:17:56.193Z","gravatar_id":"6c6bc56666e688d978776965e7b5c4dd","followers_count":1,"name":"","username":"lucieradkovicova","login":"lucieradkovicova","repos":1,"created":"2009-01-04T17:14:04Z","language":"JavaScript","record":null,"id":"user-44110","location":"","score":3.3205614,"type":"user","public_repo_count":1},{"fullname":"","created_at":"2010-01-27T13:47:19Z","followers":0,"pushed":"2010-05-23T21:25:46.71Z","gravatar_id":"8e676b7452b16a35ffb0b7dfb8871b9e","followers_count":0,"name":"","username":"Hanuman","login":"Hanuman","repos":3,"created":"2010-01-27T13:47:19Z","language":"Java","record":null,"id":"user-190899","location":"","score":3.270275,"type":"user","public_repo_count":3},{"fullname":"","created_at":"2010-09-29T13:56:20Z","followers":1,"pushed":"2010-09-29T14:15:14.548Z","gravatar_id":"eda6068c552e308c1592db6cc59150fc","followers_count":1,"name":"","username":"lucihana","login":"lucihana","repos":0,"created":"2010-09-29T13:56:20Z","language":"","record":null,"id":"user-420832","location":"","score":3.270275,"type":"user","public_repo_count":0},{"fullname":"Preda Lucian","created_at":"2011-10-01T14:41:57Z","followers":0,"pushed":"2012-06-24T19:16:00.175Z","gravatar_id":"fd6d24eac001cd1dfb235d0e018f8608","followers_count":0,"name":"Preda Lucian","username":"NorrWing","login":"NorrWing","created":"2011-10-01T14:41:57Z","repos":3,"language":"Python","record":null,"id":"user-1094937","location":"Bucharest, Romania, European Union.","score":3.270275,"type":"user","public_repo_count":3},{"fullname":"Nathan H","created_at":"2011-10-05T20:02:08Z","followers":1,"pushed":"2011-11-02T21:15:28.442Z","gravatar_id":"f125f8d6d1e2553793d02fa3b87d2e0b","followers_count":1,"name":"Nathan H","username":"Ha1luciNate","login":"Ha1luciNate","repos":1,"created":"2011-10-05T20:02:08Z","language":"PHP","record":null,"id":"user-1105848","location":"","score":3.2271237,"type":"user","public_repo_count":1},{"fullname":"","created_at":"2010-09-29T15:13:48Z","followers":0,"pushed":"2011-11-15T12:15:21.984Z","gravatar_id":"ce40eb39dea0ab7dab555457739345c4","followers_count":0,"name":"","username":"lkurian","login":"lkurian","repos":2,"created":"2010-09-29T15:13:48Z","language":"ASP","record":null,"id":"user-420950","location":"","score":3.219989,"type":"user","public_repo_count":2},{"fullname":"","created_at":"2012-06-15T08:41:41Z","followers":0,"pushed":"2012-06-29T06:15:20.722Z","gravatar_id":"6ae7e5842bfeb9d5b8c036b65aacb3a9","followers_count":0,"name":"","username":"heyuefeng","login":"heyuefeng","repos":2,"created":"2012-06-15T08:41:41Z","language":"Java","record":null,"id":"user-1853241","location":"","score":3.219989,"type":"user","public_repo_count":2},{"fullname":"","created_at":"2009-02-22T23:35:39Z","followers":0,"pushed":"2009-09-26T18:51:50.015Z","gravatar_id":"12714dc009f04b19e7731e653b5fe4a8","followers_count":0,"name":"","username":"lu","login":"lu","repos":1,"created":"2009-02-22T23:35:39Z","language":"","record":null,"location":"","id":"user-56936","score":3.1697028,"type":"user","public_repo_count":1},{"fullname":"","created_at":"2010-02-07T22:27:57Z","followers":0,"pushed":"2010-05-23T21:30:17.191Z","gravatar_id":"de54de13e0439a78f9db94f8c274654e","followers_count":0,"name":"","username":"lucykee","login":"lucykee","repos":1,"created":"2010-02-07T22:27:57Z","language":"JavaScript","record":null,"id":"user-199146","location":"","score":3.1697028,"type":"user","public_repo_count":1},{"fullname":"","created_at":"2012-02-03T20:08:55Z","followers":0,"pushed":"2012-02-03T20:15:36.116Z","followers_count":0,"name":"","username":"lucieaveris","login":"lucieaveris","created":"2012-02-03T20:08:55Z","repos":1,"language":"","record":null,"id":"user-1406522","location":"","score":3.1697028,"type":"user","public_repo_count":1},{"fullname":"","created_at":"2012-03-26T06:39:50Z","followers":0,"pushed":"2012-03-26T07:15:23.734Z","gravatar_id":"a14f9dd0146a0ce46927794273451b42","followers_count":0,"name":"","username":"lucychen","login":"lucychen","repos":1,"created":"2012-03-26T06:39:50Z","language":"","record":null,"id":"user-1575168","location":"","score":3.1697028,"type":"user","public_repo_count":1},{"fullname":"","created_at":"2012-02-27T00:22:16Z","followers":0,"pushed":"2012-04-23T21:15:32.218Z","gravatar_id":"18b9f8411fcaf622398142c0b6e16530","followers_count":0,"name":"","username":"wtlghf","login":"wtlghf","created":"2012-02-27T00:22:16Z","repos":1,"language":"","record":null,"id":"user-1476912","location":"","score":3.1697028,"type":"user","public_repo_count":1},{"fullname":"","created_at":"2012-05-22T10:31:47Z","followers":0,"pushed":"2012-05-22T19:16:29.159Z","gravatar_id":"fb5d5714453a98b58ee3b999fc61adce","followers_count":0,"name":"","username":"p3rpl3j4","login":"p3rpl3j4","created":"2012-05-22T10:31:47Z","repos":1,"language":"","record":null,"id":"user-1764046","location":"","score":3.1697028,"type":"user","public_repo_count":1},{"fullname":"","created_at":"2012-03-31T11:54:35Z","followers":0,"pushed":"2012-06-26T18:15:39.939Z","gravatar_id":"952e21a3d77230e0d0e706868a11cdac","followers_count":0,"name":"","username":"lucian-v","login":"lucian-v","repos":1,"created":"2012-03-31T11:54:35Z","language":"","record":null,"id":"user-1593065","location":"","score":3.1697028,"type":"user","public_repo_count":1}]} + +GET /legacy/user/search/Lucy?start_page=2 {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4946'), ('x-ratelimit-limit', '5000'), ('content-length', '17711'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('etag', '"2276a70e7cb32c70ab3018105c9dcb22"'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Fri, 29 Jun 2012 12:30:45 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"users":[{"fullname":"","created_at":"2010-08-08T23:52:29Z","followers":0,"pushed":"2010-08-09T00:15:09.022Z","gravatar_id":"6d7d3334458d9b82a5c5e22409ed043b","followers_count":0,"name":"","username":"lucievh","login":"lucievh","repos":0,"created":"2010-08-08T23:52:29Z","language":"","record":null,"id":"user-358057","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2010-09-22T05:31:14Z","followers":0,"pushed":"2010-09-22T06:15:13.692Z","gravatar_id":"f753f69213bbfc3b80607ee48a488d6e","followers_count":0,"name":"","username":"lucyim","login":"lucyim","repos":0,"created":"2010-09-22T05:31:14Z","language":"","record":null,"id":"user-410994","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-04-24T20:45:24Z","followers":0,"pushed":"2011-04-24T21:15:12.163Z","gravatar_id":"f1e19ca48feb1e62ee3149d28c11e911","followers_count":0,"name":"","username":"Lucief","login":"Lucief","repos":0,"created":"2011-04-24T20:45:24Z","language":"","record":null,"id":"user-749248","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-05-30T09:55:59Z","followers":0,"pushed":"2011-05-30T11:15:20.068Z","gravatar_id":"2da8ca4713c1b1e42a4a17323e4e8dae","followers_count":0,"name":"","username":"RevolverUpstairs","login":"RevolverUpstairs","repos":0,"created":"2011-05-30T09:55:59Z","language":"","record":null,"id":"user-818408","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-07-22T13:27:38Z","followers":0,"pushed":"2011-07-22T15:15:23.693Z","gravatar_id":"3686834b80a859db93c76e78df9a5a64","followers_count":0,"name":"","username":"seriousprogramming","login":"seriousprogramming","repos":0,"created":"2011-07-22T13:27:38Z","language":"","record":null,"id":"user-932499","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-08-06T09:47:48Z","followers":0,"pushed":"2011-08-06T10:15:31.758Z","gravatar_id":"69eafce84a5e4a9b26bc337a58ca72bc","followers_count":0,"name":"","username":"reicul","login":"reicul","repos":0,"created":"2011-08-06T09:47:48Z","language":"","record":null,"id":"user-962793","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-08-07T11:56:47Z","followers":0,"pushed":"2011-08-07T12:15:14.482Z","gravatar_id":"8896a319762ed30fea086e8213003809","followers_count":0,"name":"","username":"davincidubai","login":"davincidubai","repos":0,"created":"2011-08-07T11:56:47Z","language":"","record":null,"id":"user-964372","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-08-14T23:19:20Z","followers":0,"pushed":"2011-08-15T00:15:17.005Z","gravatar_id":"c464112ee895455ebc7e4395455cc3b4","followers_count":0,"name":"","username":"LucianaNascimentodoPrado","login":"LucianaNascimentodoPrado","repos":0,"created":"2011-08-14T23:19:20Z","language":"","record":null,"id":"user-979924","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-08-20T03:41:59Z","followers":0,"pushed":"2011-08-20T04:15:15.688Z","gravatar_id":"89b16b399fef7f5cf0f09aa52eb1f982","followers_count":0,"name":"","username":"lucia-huenchunao","login":"lucia-huenchunao","repos":0,"created":"2011-08-20T03:41:59Z","language":"","record":null,"id":"user-992290","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-08-30T06:35:07Z","followers":0,"pushed":"2011-08-30T07:15:40.964Z","gravatar_id":"15e9c23dc4ff8309d32759ebbc12f136","followers_count":0,"name":"","username":"kraji20","login":"kraji20","repos":0,"created":"2011-08-30T06:35:07Z","language":"","record":null,"id":"user-1013732","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-09-16T16:00:13Z","followers":0,"pushed":"2011-09-16T16:15:31.791Z","gravatar_id":"29b7278765b2513f6b1770acffd6e76c","followers_count":0,"name":"","username":"Lucywolo","login":"Lucywolo","repos":0,"created":"2011-09-16T16:00:13Z","language":"","record":null,"id":"user-1056415","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-09-20T08:49:42Z","followers":0,"pushed":"2011-09-20T09:15:39.554Z","gravatar_id":"272574bc4ad24eb6ca99e0ff63181708","followers_count":0,"name":"","username":"Luciel","login":"Luciel","repos":0,"created":"2011-09-20T08:49:42Z","language":"","record":null,"id":"user-1064456","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-09-26T00:34:00Z","followers":0,"pushed":"2011-09-26T01:15:19.861Z","gravatar_id":"88afbca53168e171337cd236ebf861eb","followers_count":0,"name":"","username":"sunnysummer","login":"sunnysummer","repos":0,"created":"2011-09-26T00:34:00Z","language":"","record":null,"location":"","id":"user-1079184","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-10-12T18:56:57Z","followers":0,"pushed":"2011-10-12T19:15:46.788Z","gravatar_id":"2d2bbcf8fc6ba08acad9d0120f7e877f","followers_count":0,"name":"","username":"elush","login":"elush","repos":0,"created":"2011-10-12T18:56:57Z","language":"","record":null,"id":"user-1123389","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-11-08T13:10:02Z","followers":0,"pushed":"2011-11-08T13:15:29.919Z","gravatar_id":"e47379a7fb647bcfe9cb35b313c6681d","followers_count":0,"name":"","username":"oprealuci","login":"oprealuci","repos":0,"created":"2011-11-08T13:10:02Z","language":"","record":null,"id":"user-1180621","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-11-30T12:50:11Z","followers":0,"pushed":"2012-01-06T20:15:31.201Z","followers_count":0,"name":"","username":"Flika","login":"Flika","repos":0,"created":"2011-11-30T12:50:11Z","language":"","record":null,"id":"user-1230733","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-01-16T13:52:04Z","followers":0,"pushed":"2012-01-16T14:15:26.544Z","gravatar_id":"93a807008d0335f8cfa7630905a3731a","followers_count":0,"name":"","username":"lsher","login":"lsher","created":"2012-01-16T13:52:04Z","repos":0,"language":"","record":null,"id":"user-1333790","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-02-14T12:45:55Z","followers":0,"pushed":"2012-02-14T13:15:21.421Z","gravatar_id":"48c680a1435659586d2b5fa88978bf2f","followers_count":0,"name":"","username":"datadrivenjournalism","login":"datadrivenjournalism","created":"2012-02-14T12:45:55Z","repos":0,"language":"","record":null,"id":"user-1436639","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-09-05T19:25:13Z","followers":0,"pushed":"2012-03-07T21:16:16.829Z","gravatar_id":"f85bd730cad7f29b2a6ffcb877ca9049","followers_count":0,"name":"","username":"nill2020","login":"nill2020","repos":0,"created":"2011-09-05T19:25:13Z","language":"","record":null,"id":"user-1028199","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-03-12T09:34:25Z","followers":0,"pushed":"2012-03-12T10:15:30.499Z","followers_count":0,"name":"","username":"doobi","login":"doobi","created":"2012-03-12T09:34:25Z","repos":0,"language":"","record":null,"id":"user-1528155","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-03-15T05:39:16Z","followers":0,"pushed":"2012-03-15T06:15:26.409Z","gravatar_id":"6e1dffbbee01406ca6362a476406e311","followers_count":0,"name":"","username":"lucilu","login":"lucilu","repos":0,"created":"2012-03-15T05:39:16Z","language":"","record":null,"id":"user-1539233","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-03-21T15:37:52Z","followers":0,"pushed":"2012-03-21T16:15:24.866Z","gravatar_id":"de5a284da24ca18274e389e172269cfa","followers_count":0,"name":"","username":"deldeldel","login":"deldeldel","repos":0,"created":"2012-03-21T15:37:52Z","language":"","record":null,"id":"user-1561401","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-03-27T13:06:55Z","followers":0,"pushed":"2012-03-27T13:15:45.802Z","gravatar_id":"b004de54d6f13d701ae5050809bdd091","followers_count":0,"name":"","username":"lucianacocca","login":"lucianacocca","repos":0,"created":"2012-03-27T13:06:55Z","language":"","record":null,"id":"user-1579740","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-09-27T23:18:49Z","followers":0,"pushed":"2012-04-27T02:15:22.503Z","gravatar_id":"6692a18a892458d7c4ab139f2c442277","followers_count":0,"name":"","username":"lucyli-sfdc","login":"lucyli-sfdc","repos":0,"created":"2011-09-27T23:18:49Z","language":"","record":null,"id":"user-1085374","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-05-01T10:05:02Z","followers":0,"pushed":"2012-05-01T12:15:23.517Z","gravatar_id":"9786861913ce64448699dba1ee27a7a6","followers_count":0,"name":"","username":"lucysatchell","login":"lucysatchell","repos":0,"created":"2012-05-01T10:05:02Z","language":"","record":null,"id":"user-1695084","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-05-01T12:11:30Z","followers":0,"pushed":"2012-06-01T19:16:17.478Z","gravatar_id":"c0228bc603e6802f3ee5e8299474587b","followers_count":0,"name":"","username":"UBM","login":"UBM","repos":0,"created":"2012-05-01T12:11:30Z","language":"","record":null,"id":"user-1695284","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-05-30T16:12:12Z","followers":0,"pushed":"2012-06-06T19:16:09.64Z","gravatar_id":"1652e06df5d348d1a575a36e2f7e5f72","followers_count":0,"name":"","username":"kolousek","login":"kolousek","created":"2012-05-30T16:12:12Z","repos":0,"language":"","record":null,"id":"user-1794308","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2010-05-04T01:08:54Z","followers":0,"pushed":"2012-06-13T20:15:11.55Z","gravatar_id":"f8ec680ef4321558d220391d96dfb797","followers_count":0,"name":"","username":"lucyzhang","login":"lucyzhang","created":"2010-05-04T01:08:54Z","repos":0,"language":"","record":null,"id":"user-263828","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-07-20T17:01:35Z","followers":0,"pushed":"2012-06-28T00:15:22.237Z","gravatar_id":"772de244d454a467439f0cdb6f4a1e4e","followers_count":0,"name":"","username":"lmegia","login":"lmegia","repos":0,"created":"2011-07-20T17:01:35Z","language":"","record":null,"id":"user-928346","location":"","score":3.1194167,"type":"user","public_repo_count":0},{"fullname":"Luis Olivo","created_at":"2012-03-07T21:32:50Z","followers":1,"pushed":"2012-06-02T18:15:15.477Z","gravatar_id":"4141a3f99023b16642e8a33d155947b6","followers_count":1,"name":"Luis Olivo","username":"luisolivo","login":"luisolivo","repos":1,"created":"2012-03-07T21:32:50Z","language":"Ruby","record":null,"id":"user-1513356","location":"Port Saint Lucie, Florida","score":2.791304,"type":"user","public_repo_count":1},{"fullname":"","created_at":"2011-08-31T03:50:47Z","followers":0,"pushed":"2011-08-31T04:15:23.388Z","gravatar_id":"331ecd4d2e53187e0287d9a1af51a7cd","followers_count":0,"name":"","username":"Lucyzhen","login":"Lucyzhen","repos":1,"created":"2011-08-31T03:50:47Z","language":"C#","record":null,"id":"user-1016061","location":"","score":2.7240717,"type":"user","public_repo_count":1},{"fullname":"","created_at":"2012-04-28T11:04:47Z","followers":0,"pushed":"2012-04-28T11:15:41.657Z","gravatar_id":"10cdf0c816a67a79461e672dd47c46de","followers_count":0,"name":"","username":"Luhzinha","login":"Luhzinha","repos":1,"created":"2012-04-28T11:04:47Z","language":"","record":null,"id":"user-1687701","location":"","score":2.7240717,"type":"user","public_repo_count":1},{"fullname":"","created_at":"2009-09-18T00:12:07Z","followers":0,"pushed":"2010-05-25T02:17:49.827Z","gravatar_id":"7766d61aa4bee478cd29d01653f99a27","followers_count":0,"name":"","username":"beautifly","login":"beautifly","repos":0,"created":"2009-09-18T00:12:07Z","language":"","record":null,"id":"user-128333","location":"","score":2.6737857,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-09-30T20:31:27Z","followers":0,"pushed":"2011-09-30T21:15:27.445Z","gravatar_id":"2421514bb391ad0e4009b441f35a8cfd","followers_count":0,"name":"","username":"lucybm96","login":"lucybm96","repos":0,"created":"2011-09-30T20:31:27Z","language":"","record":null,"id":"user-1093675","location":"","score":2.6737857,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-08-08T21:10:18Z","followers":0,"pushed":"2011-10-19T16:15:28.01Z","gravatar_id":"bc63269a11f7ce4a1ba817d7b598a4ec","followers_count":0,"name":"","username":"BuonocoreL","login":"BuonocoreL","repos":0,"created":"2011-08-08T21:10:18Z","language":"","record":null,"id":"user-967470","location":"","score":2.6737857,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-10-25T13:59:15Z","followers":0,"pushed":"2011-10-25T14:15:35.825Z","gravatar_id":"336abbd9e4151ae169e30e7e6679c7b7","followers_count":0,"name":"","username":"lucywilliams","login":"lucywilliams","repos":0,"created":"2011-10-25T13:59:15Z","language":"","record":null,"id":"user-1150845","location":"","score":2.6737857,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-02-05T19:08:43Z","followers":0,"pushed":"2012-02-05T19:15:26.112Z","gravatar_id":"710af9c67bfc63c7911801c960153551","followers_count":0,"name":"","username":"ZxOxZ","login":"ZxOxZ","created":"2012-02-05T19:08:43Z","repos":0,"language":"","record":null,"id":"user-1410529","location":"","score":2.6737857,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-02-22T12:38:07Z","followers":0,"pushed":"2012-02-22T13:15:21.033Z","gravatar_id":"4e34174ab98cfb31d27783a15edd65ff","followers_count":0,"name":"","username":"Motwinb","login":"Motwinb","repos":0,"created":"2012-02-22T12:38:07Z","language":"","record":null,"id":"user-1461109","location":"","score":2.6737857,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-03-05T06:41:31Z","followers":0,"pushed":"2012-03-05T07:15:17.415Z","gravatar_id":"3fd43be5de5bc0394cbb2f02fd5f8e55","followers_count":0,"name":"","username":"johnlucy","login":"johnlucy","repos":0,"created":"2012-03-05T06:41:31Z","language":"","record":null,"id":"user-1501671","location":"","score":2.6737857,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-03-05T16:24:11Z","followers":0,"pushed":"2012-03-05T17:15:18.016Z","gravatar_id":"c4c7f39ce80796afe054742ecebebd68","followers_count":0,"name":"","username":"Aquanimation","login":"Aquanimation","repos":0,"created":"2012-03-05T16:24:11Z","language":"","record":null,"id":"user-1503528","location":"","score":2.6737857,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-03-25T22:54:59Z","followers":0,"pushed":"2012-03-25T23:15:19.92Z","gravatar_id":"941783cf5e9908c1c1539f52063bfa83","followers_count":0,"name":"","username":"alaltaieri","login":"alaltaieri","repos":0,"created":"2012-03-25T22:54:59Z","language":"","record":null,"id":"user-1574456","location":"","score":2.6737857,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2012-04-02T14:04:23Z","followers":0,"pushed":"2012-04-02T14:15:39.659Z","gravatar_id":"b6dd2523be99cb65f67549fb3397038f","followers_count":0,"name":"","username":"lucylin","login":"lucylin","created":"2012-04-02T14:04:23Z","repos":0,"language":"","record":null,"id":"user-1598365","location":"","score":2.6737857,"type":"user","public_repo_count":0},{"fullname":"","created_at":"2011-09-06T12:13:13Z","followers":0,"pushed":"2012-06-12T16:15:31.304Z","gravatar_id":"24b955ee4add1de5b71d892ba6bd52ac","followers_count":0,"name":"","username":"lucychambers","login":"lucychambers","created":"2011-09-06T12:13:13Z","repos":0,"language":"","record":null,"id":"user-1029861","location":"","score":2.6737857,"type":"user","public_repo_count":0},{"fullname":"Juan M Sesma","created_at":"2011-04-14T18:29:44Z","followers":0,"pushed":"2011-07-25T16:15:21.323Z","gravatar_id":"9aa303ceb9eece6fe6af228fe5d992f6","followers_count":0,"name":"Juan M Sesma","username":"JuanSesma","login":"JuanSesma","repos":1,"created":"2011-04-14T18:29:44Z","language":"Ruby","record":null,"id":"user-729951","location":"Port St Lucie","score":2.6404455,"type":"user","public_repo_count":1},{"fullname":"Carl","created_at":"2012-03-17T22:30:00Z","followers":0,"pushed":"2012-03-19T04:15:12.148Z","gravatar_id":"f9e3fc4d72e3199a38ea641ccafbb844","followers_count":0,"name":"Carl","username":"cdwwebware","login":"cdwwebware","repos":0,"created":"2012-03-17T22:30:00Z","language":"","record":null,"id":"user-1548384","location":"Port Saint Lucie, Florida","score":2.5901594,"type":"user","public_repo_count":0},{"fullname":"Zachary Wills","created_at":"2012-03-07T00:29:36Z","followers":0,"pushed":"2012-06-20T16:15:50.039Z","gravatar_id":"31decf5c3bc6f0006c8152eb778203c1","followers_count":0,"name":"Zachary Wills","username":"ZachWills","login":"ZachWills","repos":0,"created":"2012-03-07T00:29:36Z","language":"","record":null,"id":"user-1509438","location":"Port St. Lucie, FL","score":2.5901594,"type":"user","public_repo_count":0}]} + +GET /legacy/user/search/Lucy?start_page=3 {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4945'), ('x-ratelimit-limit', '5000'), ('content-length', '12'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('etag', '"415a14c1d2a0aadba6cb4caa4ab9d59c"'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Fri, 29 Jun 2012 12:30:46 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"users":[]} + From aa8fa5485c9a1b52314dffb09d12833cff460111 Mon Sep 17 00:00:00 2001 From: Vincent Jacques Date: Fri, 29 Jun 2012 18:10:37 +0100 Subject: [PATCH 10/10] Refactor PaginatedLists (legacy and modern) to restore test coverage --- github/Legacy.py | 56 ++++++---------------------------- github/PaginatedList.py | 66 +++++++++++++++++++++++------------------ 2 files changed, 46 insertions(+), 76 deletions(-) diff --git a/github/Legacy.py b/github/Legacy.py index f9a915ff..4c175d50 100644 --- a/github/Legacy.py +++ b/github/Legacy.py @@ -11,8 +11,11 @@ # You should have received a copy of the GNU Lesser General Public License along with PyGithub. If not, see . -class PaginatedList: +from PaginatedList import PaginatedListBase + +class PaginatedList( PaginatedListBase ): def __init__( self, url, args, requester, key, convert, contentClass ): + PaginatedListBase.__init__( self, list() ) self.__url = url self.__args = args self.__requester = requester @@ -23,35 +26,10 @@ class PaginatedList: self.__continue = True self.__elements = list() - class __Slice: - def __init__( self, theList, theSlice ): - self.__list = theList - self.__start = theSlice.start or 0 - self.__stop = theSlice.stop - self.__step = theSlice.step or 1 + def _couldGrow( self ): + return self.__continue - def __iter__( self ): - index = self.__start - while not self.__finished( index ) : - if self.__list._isBiggerThan( index ): - yield self.__list[ index ] - index += self.__step - else: - return - - def __finished( self, index ): - return self.__stop is not None and index >= self.__stop - - def __iter__( self ): - for element in self.__elements: - yield element - while self.__continue: - newElements = self.__fetchNextPage() - self.__continue = len( newElements ) > 0 - for element in newElements: - yield element - - def __fetchNextPage( self ): + def _fetchNextPage( self ): if self.__nextPage != 1: self.__args[ "start_page" ] = self.__nextPage self.__nextPage += 1 @@ -61,27 +39,11 @@ class PaginatedList: self.__args, None ) - newElements = [ + self.__continue = len( data[ self.__key ] ) > 0 + return [ self.__contentClass( self.__requester, self.__convert( element ), completed = False ) for element in data[ self.__key ] ] - self.__elements += newElements - return newElements - - def __getitem__( self, index ): - assert isinstance( index, ( int, slice ) ) - if isinstance( index, int ): - self.__fetchToIndex( index ) - return self.__elements[ index ] - else: - return self.__Slice( self, index ) - - def _isBiggerThan( self, index ): - return len( self.__elements ) > index or self.__continue - - def __fetchToIndex( self, index ): - while len( self.__elements ) <= index and self.__continue: - self.__fetchNextPage() def convertUser( attributes ): login = attributes[ "login" ] diff --git a/github/PaginatedList.py b/github/PaginatedList.py index a43396aa..1dd46ba5 100644 --- a/github/PaginatedList.py +++ b/github/PaginatedList.py @@ -13,22 +13,39 @@ import GithubObject -class PaginatedList: - def __init__( self, contentClass, requester, headers, data ): - self.__requester = requester - self.__contentClass = contentClass - self.__elements = [] - self.__appendData( headers, data ) +class PaginatedListBase: + def __init__( self, firstElements ): + self.__elements = firstElements + + def __getitem__( self, index ): + assert isinstance( index, ( int, slice ) ) + if isinstance( index, int ): + self.__fetchToIndex( index ) + return self.__elements[ index ] + else: + return self._Slice( self, index ) def __iter__( self ): for element in self.__elements: yield element - while self.__nextUrl is not None: - newElements = self.__fetchNextPage() + while self._couldGrow(): + newElements = self.__grow() for element in newElements: yield element - class __Slice: + def _isBiggerThan( self, index ): + return len( self.__elements ) > index or self._couldGrow() + + def __fetchToIndex( self, index ): + while len( self.__elements ) <= index and self._couldGrow(): + self.__grow() + + def __grow( self ): + newElements = self._fetchNextPage() + self.__elements += newElements + return newElements + + class _Slice: def __init__( self, theList, theSlice ): self.__list = theList self.__start = theSlice.start or 0 @@ -47,39 +64,30 @@ class PaginatedList: def __finished( self, index ): return self.__stop is not None and index >= self.__stop - def __getitem__( self, index ): - assert isinstance( index, ( int, slice ) ) - if isinstance( index, int ): - self.__fetchToIndex( index ) - return self.__elements[ index ] - else: - return self.__Slice( self, index ) +class PaginatedList( PaginatedListBase ): + def __init__( self, contentClass, requester, headers, data ): + self.__requester = requester + self.__contentClass = contentClass + PaginatedListBase.__init__( self, self.__extractNewElements( headers, data ) ) - def _isBiggerThan( self, index ): - return len( self.__elements ) > index or self.__nextUrl is not None + def _couldGrow( self ): + return self.__nextUrl is not None - def __fetchToIndex( self, index ): - while len( self.__elements ) <= index and self.__nextUrl is not None: - self.__fetchNextPage() - - def __fetchNextPage( self ): + def _fetchNextPage( self ): headers, data = self.__requester.requestAndCheck( "GET", self.__nextUrl, None, None ) - return self.__appendData( headers, data ) + return self.__extractNewElements( headers, data ) - def __appendData( self, headers, data ): + def __extractNewElements( self, headers, data ): links = self.__parseLinkHeader( headers ) if len( data ) > 0 and "next" in links: self.__nextUrl = links[ "next" ] else: self.__nextUrl = None - newElements = [ + return [ self.__contentClass( self.__requester, element, completed = False ) for element in data ] - self.__elements += newElements - - return newElements def __parseLinkHeader( self, headers ): links = {}