GitHub PullRequestReviewCommentEvent at 2014-08-01 10:16:37
Repository: gollum_rails
Actor: houndci
Payload: {"action":"created","comment":{"url":"https://api.github.com/repos/nirnanaaa/gollum_rails/pulls/comments/15689660","id":15689660,"diff_hunk":"@@ -0,0 +1,213 @@\n+# ~*~ encoding: utf-8 ~*~\n+module Gollum\n+  # Responsible for handling the commit process for a Wiki.  It sets up the\n+  # Git index, provides methods for modifying the tree, and stores callbacks\n+  # to be fired after the commit has been made.  This is specifically\n+  # designed to handle multiple updated pages in a single commit.\n+  class Committer\n+    # Gets the instance of the Gollum::Wiki that is being updated.\n+    attr_reader :wiki\n+\n+    # Gets a Hash of commit options.\n+    attr_reader :options\n+\n+    # Initializes the Committer.\n+    #\n+    # wiki    - The Gollum::Wiki instance that is being updated.\n+    # options - The commit Hash details:\n+    #           :message   - The String commit message.\n+    #           :name      - The String author full name.\n+    #           :email     - The String email address.\n+    #           :parent    - Optional Grit::Commit parent to this update.\n+    #           :tree      - Optional String SHA of the tree to create the\n+    #                        index from.\n+    #           :committer - Optional Gollum::Committer instance.  If provided,\n+    #                        assume that this operation is part of batch of\n+    #                        updates and the commit happens later.\n+    #\n+    # Returns the Committer instance.\n+    def initialize(wiki, options = {})\n+      @wiki      = wiki\n+      @options   = options\n+      @callbacks = []\n+      after_commit { |*args| Hook.execute(:post_commit, *args) }\n+    end\n+\n+    # Public: References the Git index for this commit.\n+    #\n+    # Returns a Rugged::Index.\n+    def index\n+      @index ||= begin\n+                   rep = @wiki.repo.index\n+                   if !@wiki.repo.head_unborn?\n+                     rep.read_tree(@wiki.repo.head.target.tree)\n+                   end\n+                   rep\n+                 end\n+    end\n+\n+    # Public: The committer for this commit.\n+    #\n+    # Returns a Grit::Actor.\n+    def actor\n+      @actor ||= begin\n+        @options[:name]  = @wiki.default_committer_name if @options[:name].to_s.empty?\n+        @options[:email] = @wiki.default_committer_email if @options[:email].to_s.empty?\n+        {name: @options[:name], email: @options[:email] ,time:Time.now}\n+      end\n+    end\n+\n+    # Public: The parent commits to this pending commit.\n+    #\n+    # Returns an array of Grit::Commit instances.\n+    def parents\n+      if GitAccess.sha?(@wiki.ref)\n+        ref_oid = @wiki.ref\n+      else\n+        ref_oid = @wiki.repo.ref(\"refs/heads/#{@wiki.ref}\").target.oid\n+      end\n+\n+      @parents ||= begin\n+        arr = [@options[:parent] || @wiki.repo.lookup(ref_oid)]\n+        arr.flatten!\n+        arr.compact!\n+        arr\n+      end\n+    end\n+\n+    # Adds a page to the given Index.\n+    #\n+    # dir    - The String subdirectory of the Gollum::Page without any\n+    #          prefix or suffix slashes (e.g. \"foo/bar\").\n+    # name   - The String Gollum::Page filename_stripped.\n+    # format - The Symbol Gollum::Page format.\n+    # data   - The String wiki data to store in the tree map.\n+    # allow_same_ext - A Boolean determining if the tree map allows the same\n+    #                  filename with the same extension.\n+    #\n+    # Raises Gollum::DuplicatePageError if a matching filename already exists.\n+    # This way, pages are not inadvertently overwritten.\n+    #\n+    # TODO Add check for Gollum::DuplicatePageError\n+    #\n+    # Returns nothing (modifies the Index in place).\n+    def add_to_index(dir, name, format, data, allow_same_ext = false)\n+      @options ||= {}\n+      dir.gsub!(' ', '-')\n+      name.gsub!(' ', '-')\n+      path = @wiki.page_file_name(name, format)\n+      dir  = '/' if dir.strip.empty?\n+      fullpath = ::File.join(*[@wiki.page_file_dir, dir, path].compact)\n+      fullpath = fullpath[1..-1] if fullpath =~ /^\\//\n+      oid = @wiki.repo.write(data, :blob)\n+      index.add(path: fullpath, oid: oid, mode: 0100644)\n+      @options[:tree] = index.write_tree(@wiki.repo)\n+    end\n+\n+    # Removes a page from the given Index\n+    #\n+    # fullpath - The String representation of the location of the file\n+    #\n+    # Returns nothing\n+    def remove_from_index(fullpath)\n+      index.remove(fullpath)\n+      @options ||= {}\n+      @options[:tree] = index.write_tree(@wiki.repo)\n+    end\n+\n+    # Update the given file in the repository's working directory if there\n+    # is a working directory present.\n+    #\n+    # dir    - The String directory in which the file lives.\n+    # name   - The String name of the page or the stripped filename\n+    #          (should be pre-canonicalized if required).\n+    # format - The Symbol format of the page.\n+    #\n+    # Returns nothing.\n+    def update_working_dir(dir, name, format)\n+    end\n+\n+    # Writes the commit to Git and runs the after_commit callbacks.\n+    #\n+    # Returns the String SHA1 of the new commit.\n+    def commit\n+      @options ||= {}\n+      @options[:author] = actor\n+      @options[:committer] = @options[:author]\n+      @options[:parents] = @wiki.repo.empty? ? [] : [ @wiki.repo.head.target ].compact\n+      @options[:update_ref] = 'HEAD'\n+      sha1 = Rugged::Commit.create(@wiki.repo, options)\n+      @callbacks.each do |cb|\n+        cb.call(self, sha1)\n+      end\n+      sha1\n+    end\n+\n+    # Adds a callback to be fired after a commit.\n+    #\n+    # block - A block that expects this Committer instance and the created\n+    #         commit's SHA1 as the arguments.\n+    #\n+    # Returns nothing.\n+    def after_commit(&block)\n+      @callbacks << block\n+    end\n+\n+    # Determine if a given page (regardless of format) is scheduled to be\n+    # deleted in the next commit for the given Index.\n+    #\n+    # map   - The Hash map:\n+    #         key - The String directory or filename.\n+    #         val - The Hash submap or the String contents of the file.\n+    # path - The String path of the page file. This may include the format\n+    #         extension in which case it will be ignored.\n+    #\n+    # Returns the Boolean response.\n+    def page_path_scheduled_for_deletion?(map, path)\n+      parts = path.split('/')\n+      if parts.size == 1\n+        deletions = map.keys.select { |k| !map[k] }\n+        downfile  = parts.first.downcase.sub(/\\.\\w+$/, '')\n+        deletions.any? { |d| d.downcase.sub(/\\.\\w+$/, '') == downfile }\n+      else\n+        part = parts.shift\n+        if rest = map[part]\n+          page_path_scheduled_for_deletion?(rest, parts.join('/'))\n+        else\n+          false\n+        end\n+      end\n+    end\n+\n+    # Determine if a given file is scheduled to be deleted in the next commit\n+    # for the given Index.\n+    #\n+    # map   - The Hash map:\n+    #         key - The String directory or filename.\n+    #         val - The Hash submap or the String contents of the file.\n+    # path - The String path of the file including extension.\n+    #\n+    # Returns the Boolean response.\n+    def file_path_scheduled_for_deletion?(map, path)\n+      parts = path.split('/')\n+      if parts.size == 1\n+        deletions = map.keys.select { |k| !map[k] }\n+        deletions.any? { |d| d == parts.first }\n+      else\n+        part = parts.shift\n+        if rest = map[part]\n+          file_path_scheduled_for_deletion?(rest, parts.join('/'))\n+        else\n+          false\n+        end\n+      end\n+    end\n+\n+    # Proxies methods t\n+    def method_missing(name, *args)\n+      args.map! { |item| item.respond_to?(:force_encoding) ? item.force_encoding('ascii-8bit') : item }\n+      puts name","path":"lib/gollum-lib/committer.rb","position":209,"original_position":209,"commit_id":"eaca53a29e8c1e55e8e082da3bd49b09042e71bc","original_commit_id":"eaca53a29e8c1e55e8e082da3bd49b09042e71bc","user":{"login":"houndci","id":6697940,"avatar_url":"https://avatars.githubusercontent.com/u/6697940?v=1","gravatar_id":"38d9cefd9971a05bf447f07c6cd332cc","url":"https://api.github.com/users/houndci","html_url":"https://github.com/houndci","followers_url":"https://api.github.com/users/houndci/followers","following_url":"https://api.github.com/users/houndci/following{/other_user}","gists_url":"https://api.github.com/users/houndci/gists{/gist_id}","starred_url":"https://api.github.com/users/houndci/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/houndci/subscriptions","organizations_url":"https://api.github.com/users/houndci/orgs","repos_url":"https://api.github.com/users/houndci/repos","events_url":"https://api.github.com/users/houndci/events{/privacy}","received_events_url":"https://api.github.com/users/houndci/received_events","type":"User","site_admin":false},"body":"Do not write to stdout. Use Rails' logger if you want to log.","created_at":"2014-08-01T10:16:37Z","updated_at":"2014-08-01T10:16:37Z","html_url":"https://github.com/nirnanaaa/gollum_rails/pull/25#discussion_r15689660","pull_request_url":"https://api.github.com/repos/nirnanaaa/gollum_rails/pulls/25","_links":{"self":{"href":"https://api.github.com/repos/nirnanaaa/gollum_rails/pulls/comments/15689660"},"html":{"href":"https://github.com/nirnanaaa/gollum_rails/pull/25#discussion_r15689660"},"pull_request":{"href":"https://api.github.com/repos/nirnanaaa/gollum_rails/pulls/25"}}},"pull_request":{"url":"https://api.github.com/repos/nirnanaaa/gollum_rails/pulls/25","id":19202736,"html_url":"https://github.com/nirnanaaa/gollum_rails/pull/25","diff_url":"https://github.com/nirnanaaa/gollum_rails/pull/25.diff","patch_url":"https://github.com/nirnanaaa/gollum_rails/pull/25.patch","issue_url":"https://api.github.com/repos/nirnanaaa/gollum_rails/issues/25","number":25,"state":"open","title":"Rugged for GollumRails","user":{"login":"nirnanaaa","id":1064750,"avatar_url":"https://avatars.githubusercontent.com/u/1064750?v=1","gravatar_id":"cb4b5b5e6be9ed9efefbbc10d96e862d","url":"https://api.github.com/users/nirnanaaa","html_url":"https://github.com/nirnanaaa","followers_url":"https://api.github.com/users/nirnanaaa/followers","following_url":"https://api.github.com/users/nirnanaaa/following{/other_user}","gists_url":"https://api.github.com/users/nirnanaaa/gists{/gist_id}","starred_url":"https://api.github.com/users/nirnanaaa/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nirnanaaa/subscriptions","organizations_url":"https://api.github.com/users/nirnanaaa/orgs","repos_url":"https://api.github.com/users/nirnanaaa/repos","events_url":"https://api.github.com/users/nirnanaaa/events{/privacy}","received_events_url":"https://api.github.com/users/nirnanaaa/received_events","type":"User","site_admin":false},"body":"Adding my rugged implementation. \r\n\r\nworks:\r\n\r\n- [ ] page\r\n  - [x] page creation\r\n  - [x] page update\r\n  - [x] page delete\r\n  - [x] page links\r\n- [x] file\r\n  - [x] file create\r\n  - [x] file delete\r\n- [x] gollum-lib\r\n  - [ ] all internal methods","created_at":"2014-08-01T10:16:22Z","updated_at":"2014-08-01T10:16:37Z","closed_at":null,"merged_at":null,"merge_commit_sha":"9033cac3cf47bac7bcac8b1f5248334b3c459549","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/nirnanaaa/gollum_rails/pulls/25/commits","review_comments_url":"https://api.github.com/repos/nirnanaaa/gollum_rails/pulls/25/comments","review_comment_url":"https://api.github.com/repos/nirnanaaa/gollum_rails/pulls/comments/{number}","comments_url":"https://api.github.com/repos/nirnanaaa/gollum_rails/issues/25/comments","statuses_url":"https://api.github.com/repos/nirnanaaa/gollum_rails/statuses/eaca53a29e8c1e55e8e082da3bd49b09042e71bc","head":{"label":"Corscience:master","ref":"master","sha":"eaca53a29e8c1e55e8e082da3bd49b09042e71bc","user":{"login":"Corscience","id":3007864,"avatar_url":"https://avatars.githubusercontent.com/u/3007864?v=1","gravatar_id":"7418d2eef67e74215973af4922eb2959","url":"https://api.github.com/users/Corscience","html_url":"https://github.com/Corscience","followers_url":"https://api.github.com/users/Corscience/followers","following_url":"https://api.github.com/users/Corscience/following{/other_user}","gists_url":"https://api.github.com/users/Corscience/gists{/gist_id}","starred_url":"https://api.github.com/users/Corscience/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Corscience/subscriptions","organizations_url":"https://api.github.com/users/Corscience/orgs","repos_url":"https://api.github.com/users/Corscience/repos","events_url":"https://api.github.com/users/Corscience/events{/privacy}","received_events_url":"https://api.github.com/users/Corscience/received_events","type":"Organization","site_admin":false},"repo":{"id":22379511,"name":"gollum_rails","full_name":"Corscience/gollum_rails","owner":{"login":"Corscience","id":3007864,"avatar_url":"https://avatars.githubusercontent.com/u/3007864?v=1","gravatar_id":"7418d2eef67e74215973af4922eb2959","url":"https://api.github.com/users/Corscience","html_url":"https://github.com/Corscience","followers_url":"https://api.github.com/users/Corscience/followers","following_url":"https://api.github.com/users/Corscience/following{/other_user}","gists_url":"https://api.github.com/users/Corscience/gists{/gist_id}","starred_url":"https://api.github.com/users/Corscience/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Corscience/subscriptions","organizations_url":"https://api.github.com/users/Corscience/orgs","repos_url":"https://api.github.com/users/Corscience/repos","events_url":"https://api.github.com/users/Corscience/events{/privacy}","received_events_url":"https://api.github.com/users/Corscience/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/Corscience/gollum_rails","description":"Integrate Gollum wiki into your Rails app","fork":true,"url":"https://api.github.com/repos/Corscience/gollum_rails","forks_url":"https://api.github.com/repos/Corscience/gollum_rails/forks","keys_url":"https://api.github.com/repos/Corscience/gollum_rails/keys{/key_id}","collaborators_url":"https://api.github.com/repos/Corscience/gollum_rails/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/Corscience/gollum_rails/teams","hooks_url":"https://api.github.com/repos/Corscience/gollum_rails/hooks","issue_events_url":"https://api.github.com/repos/Corscience/gollum_rails/issues/events{/number}","events_url":"https://api.github.com/repos/Corscience/gollum_rails/events","assignees_url":"https://api.github.com/repos/Corscience/gollum_rails/assignees{/user}","branches_url":"https://api.github.com/repos/Corscience/gollum_rails/branches{/branch}","tags_url":"https://api.github.com/repos/Corscience/gollum_rails/tags","blobs_url":"https://api.github.com/repos/Corscience/gollum_rails/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/Corscience/gollum_rails/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/Corscience/gollum_rails/git/refs{/sha}","trees_url":"https://api.github.com/repos/Corscience/gollum_rails/git/trees{/sha}","statuses_url":"https://api.github.com/repos/Corscience/gollum_rails/statuses/{sha}","languages_url":"https://api.github.com/repos/Corscience/gollum_rails/languages","stargazers_url":"https://api.github.com/repos/Corscience/gollum_rails/stargazers","contributors_url":"https://api.github.com/repos/Corscience/gollum_rails/contributors","subscribers_url":"https://api.github.com/repos/Corscience/gollum_rails/subscribers","subscription_url":"https://api.github.com/repos/Corscience/gollum_rails/subscription","commits_url":"https://api.github.com/repos/Corscience/gollum_rails/commits{/sha}","git_commits_url":"https://api.github.com/repos/Corscience/gollum_rails/git/commits{/sha}","comments_url":"https://api.github.com/repos/Corscience/gollum_rails/comments{/number}","issue_comment_url":"https://api.github.com/repos/Corscience/gollum_rails/issues/comments/{number}","contents_url":"https://api.github.com/repos/Corscience/gollum_rails/contents/{+path}","compare_url":"https://api.github.com/repos/Corscience/gollum_rails/compare/{base}...{head}","merges_url":"https://api.github.com/repos/Corscience/gollum_rails/merges","archive_url":"https://api.github.com/repos/Corscience/gollum_rails/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/Corscience/gollum_rails/downloads","issues_url":"https://api.github.com/repos/Corscience/gollum_rails/issues{/number}","pulls_url":"https://api.github.com/repos/Corscience/gollum_rails/pulls{/number}","milestones_url":"https://api.github.com/repos/Corscience/gollum_rails/milestones{/number}","notifications_url":"https://api.github.com/repos/Corscience/gollum_rails/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/Corscience/gollum_rails/labels{/name}","releases_url":"https://api.github.com/repos/Corscience/gollum_rails/releases{/id}","created_at":"2014-07-29T12:46:26Z","updated_at":"2014-07-30T09:00:13Z","pushed_at":"2014-07-31T18:16:10Z","git_url":"git://github.com/Corscience/gollum_rails.git","ssh_url":"git@github.com:Corscience/gollum_rails.git","clone_url":"https://github.com/Corscience/gollum_rails.git","svn_url":"https://github.com/Corscience/gollum_rails","homepage":"","size":3673,"stargazers_count":0,"watchers_count":0,"language":"Ruby","has_issues":false,"has_downloads":true,"has_wiki":true,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"nirnanaaa:master","ref":"master","sha":"3abf0a3f97d526dc4abd38ac60f8a4b2764bd614","user":{"login":"nirnanaaa","id":1064750,"avatar_url":"https://avatars.githubusercontent.com/u/1064750?v=1","gravatar_id":"cb4b5b5e6be9ed9efefbbc10d96e862d","url":"https://api.github.com/users/nirnanaaa","html_url":"https://github.com/nirnanaaa","followers_url":"https://api.github.com/users/nirnanaaa/followers","following_url":"https://api.github.com/users/nirnanaaa/following{/other_user}","gists_url":"https://api.github.com/users/nirnanaaa/gists{/gist_id}","starred_url":"https://api.github.com/users/nirnanaaa/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nirnanaaa/subscriptions","organizations_url":"https://api.github.com/users/nirnanaaa/orgs","repos_url":"https://api.github.com/users/nirnanaaa/repos","events_url":"https://api.github.com/users/nirnanaaa/events{/privacy}","received_events_url":"https://api.github.com/users/nirnanaaa/received_events","type":"User","site_admin":false},"repo":{"id":7823144,"name":"gollum_rails","full_name":"nirnanaaa/gollum_rails","owner":{"login":"nirnanaaa","id":1064750,"avatar_url":"https://avatars.githubusercontent.com/u/1064750?v=1","gravatar_id":"cb4b5b5e6be9ed9efefbbc10d96e862d","url":"https://api.github.com/users/nirnanaaa","html_url":"https://github.com/nirnanaaa","followers_url":"https://api.github.com/users/nirnanaaa/followers","following_url":"https://api.github.com/users/nirnanaaa/following{/other_user}","gists_url":"https://api.github.com/users/nirnanaaa/gists{/gist_id}","starred_url":"https://api.github.com/users/nirnanaaa/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nirnanaaa/subscriptions","organizations_url":"https://api.github.com/users/nirnanaaa/orgs","repos_url":"https://api.github.com/users/nirnanaaa/repos","events_url":"https://api.github.com/users/nirnanaaa/events{/privacy}","received_events_url":"https://api.github.com/users/nirnanaaa/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/nirnanaaa/gollum_rails","description":"Integrate Gollum wiki into your Rails app","fork":false,"url":"https://api.github.com/repos/nirnanaaa/gollum_rails","forks_url":"https://api.github.com/repos/nirnanaaa/gollum_rails/forks","keys_url":"https://api.github.com/repos/nirnanaaa/gollum_rails/keys{/key_id}","collaborators_url":"https://api.github.com/repos/nirnanaaa/gollum_rails/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/nirnanaaa/gollum_rails/teams","hooks_url":"https://api.github.com/repos/nirnanaaa/gollum_rails/hooks","issue_events_url":"https://api.github.com/repos/nirnanaaa/gollum_rails/issues/events{/number}","events_url":"https://api.github.com/repos/nirnanaaa/gollum_rails/events","assignees_url":"https://api.github.com/repos/nirnanaaa/gollum_rails/assignees{/user}","branches_url":"https://api.github.com/repos/nirnanaaa/gollum_rails/branches{/branch}","tags_url":"https://api.github.com/repos/nirnanaaa/gollum_rails/tags","blobs_url":"https://api.github.com/repos/nirnanaaa/gollum_rails/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/nirnanaaa/gollum_rails/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/nirnanaaa/gollum_rails/git/refs{/sha}","trees_url":"https://api.github.com/repos/nirnanaaa/gollum_rails/git/trees{/sha}","statuses_url":"https://api.github.com/repos/nirnanaaa/gollum_rails/statuses/{sha}","languages_url":"https://api.github.com/repos/nirnanaaa/gollum_rails/languages","stargazers_url":"https://api.github.com/repos/nirnanaaa/gollum_rails/stargazers","contributors_url":"https://api.github.com/repos/nirnanaaa/gollum_rails/contributors","subscribers_url":"https://api.github.com/repos/nirnanaaa/gollum_rails/subscribers","subscription_url":"https://api.github.com/repos/nirnanaaa/gollum_rails/subscription","commits_url":"https://api.github.com/repos/nirnanaaa/gollum_rails/commits{/sha}","git_commits_url":"https://api.github.com/repos/nirnanaaa/gollum_rails/git/commits{/sha}","comments_url":"https://api.github.com/repos/nirnanaaa/gollum_rails/comments{/number}","issue_comment_url":"https://api.github.com/repos/nirnanaaa/gollum_rails/issues/comments/{number}","contents_url":"https://api.github.com/repos/nirnanaaa/gollum_rails/contents/{+path}","compare_url":"https://api.github.com/repos/nirnanaaa/gollum_rails/compare/{base}...{head}","merges_url":"https://api.github.com/repos/nirnanaaa/gollum_rails/merges","archive_url":"https://api.github.com/repos/nirnanaaa/gollum_rails/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/nirnanaaa/gollum_rails/downloads","issues_url":"https://api.github.com/repos/nirnanaaa/gollum_rails/issues{/number}","pulls_url":"https://api.github.com/repos/nirnanaaa/gollum_rails/pulls{/number}","milestones_url":"https://api.github.com/repos/nirnanaaa/gollum_rails/milestones{/number}","notifications_url":"https://api.github.com/repos/nirnanaaa/gollum_rails/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/nirnanaaa/gollum_rails/labels{/name}","releases_url":"https://api.github.com/repos/nirnanaaa/gollum_rails/releases{/id}","created_at":"2013-01-25T15:52:39Z","updated_at":"2014-08-01T10:07:14Z","pushed_at":"2014-07-19T12:16:06Z","git_url":"git://github.com/nirnanaaa/gollum_rails.git","ssh_url":"git@github.com:nirnanaaa/gollum_rails.git","clone_url":"https://github.com/nirnanaaa/gollum_rails.git","svn_url":"https://github.com/nirnanaaa/gollum_rails","homepage":"","size":3673,"stargazers_count":22,"watchers_count":22,"language":"Ruby","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":13,"mirror_url":null,"open_issues_count":1,"forks":13,"open_issues":1,"watchers":22,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/nirnanaaa/gollum_rails/pulls/25"},"html":{"href":"https://github.com/nirnanaaa/gollum_rails/pull/25"},"issue":{"href":"https://api.github.com/repos/nirnanaaa/gollum_rails/issues/25"},"comments":{"href":"https://api.github.com/repos/nirnanaaa/gollum_rails/issues/25/comments"},"review_comments":{"href":"https://api.github.com/repos/nirnanaaa/gollum_rails/pulls/25/comments"},"review_comment":{"href":"https://api.github.com/repos/nirnanaaa/gollum_rails/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/nirnanaaa/gollum_rails/pulls/25/commits"},"statuses":{"href":"https://api.github.com/repos/nirnanaaa/gollum_rails/statuses/eaca53a29e8c1e55e8e082da3bd49b09042e71bc"}}}}