{"action":"created","comment":{"url":"https://api.github.com/repos/JuliaGraphs/LightGraphs.jl/pulls/comments/76045228","id":76045228,"diff_hunk":"@@ -0,0 +1,231 @@\n+\"\"\"\n+Computes the maximum multiroute flow (for any real number of routes)\n+between the source and target vertexes in a flow graph using the\n+[Extended Multiroute Flow algorithm](http://dx.doi.org/10.1016/j.disopt.2016.05.002).\n+If a number of routes is given, returns the value of the multiroute flow as\n+well as the final flow matrix, along with a multiroute cut if\n+Boykov-Kolmogorov max-flow algorithm is used as a subroutine.\n+Otherwise, it returns the vector of breaking points of the parametric\n+multiroute flow function.\n+Use a default capacity of 1 when the capacity matrix isn\\'t specified.\n+Requires arguments:\n+- flow_graph::DiGraph                    # the input graph\n+- source::Int                            # the source vertex\n+- target::Int                            # the target vertex\n+- capacity_matrix::AbstractArray{T,2}    # edge flow capacities\n+- flow_algorithm::AbstractFlowAlgorithm  # keyword argument for algorithm\n+- routes::Int                            # keyword argument for routes\n+\"\"\"\n+\n+# EMRF (Extended Multiroute Flow) algorithms\n+function emrf{T<:AbstractFloat,R<:Real}(\n+  flow_graph::DiGraph,                   # the input graph\n+  source::Int,                           # the source vertex\n+  target::Int,                           # the target vertex\n+  capacity_matrix::AbstractArray{T,2},   # edge flow capacities\n+  flow_algorithm::AbstractFlowAlgorithm, # keyword argument for algorithm\n+  routes::R = 0\n+  )\n+  breakingpoints = breakingPoints(flow_graph, source, target, capacity_matrix)\n+  if routes > zero(R)\n+    x,f = intersection(breakingpoints, routes)\n+    return maximum_flow(flow_graph, source, target, capacity_matrix,\n+                            algorithm=flow_algorithm, restriction=x)\n+  end\n+  return breakingpoints\n+end\n+\n+\"\"\"\n+Output a set of (point,slope) that compose the restricted max-flow function.\n+One point by possible slope is enough (hence O(λ*max_flow) complexity).\n+Requires arguments:\n+- flow_graph::DiGraph                    # the input graph\n+- source::Int                            # the source vertex\n+- target::Int                            # the target vertex\n+- capacity_matrix::AbstractArray{T,2}    # edge flow capacities\n+\"\"\"\n+\n+function auxiliaryPoints{T<:AbstractFloat}(\n+  flow_graph::DiGraph,                   # the input graph\n+  source::Int,                           # the source vertex\n+  target::Int,                           # the target vertex\n+  capacity_matrix::AbstractArray{T,2}    # edge flow capacities\n+  )\n+  # Problem descriptors\n+  λ = maximum_flow(flow_graph, source, target)[1] # Connectivity\n+  n = nv(flow_graph) # number of nodes\n+  r1, r2 = minmaxCapacity(capacity_matrix) # restriction left (1) and right (2)\n+  auxpoints = fill((0., 0.), λ + 1)\n+\n+  # Initialisation of left side (1)\n+  f1, F1, cut1 = maximum_flow(flow_graph, source, target, capacity_matrix,\n+                 algorithm = BoykovKolmogorovAlgorithm(), restriction = r1)\n+  s1 = slope(flow_graph, capacity_matrix, cut1, r1) # left slope\n+  auxpoints[λ + 1 - s1] = (r1, f1) # Add left initial auxiliary point\n+\n+  # Initialisation of right side (2)\n+  f2, F2, cut2 = maximum_flow(flow_graph, source, target, capacity_matrix,\n+                 algorithm = BoykovKolmogorovAlgorithm(), restriction = r2)\n+  s2 = slope(flow_graph, capacity_matrix, cut2, r2) # right slope\n+  auxpoints[λ + 1 - s2] = (r2, f2) # Add right initial auxiliary point\n+\n+  # Loop if the slopes are distinct by at least 2\n+  if s1 > s2 + 1\n+    queue = [((f1, s1, r1), (f2, s2, r2))]\n+\n+    while !isempty(queue)\n+      # Computes an intersection (middle) with a new associated slope\n+      (f1, s1, r1), (f2, s2, r2) = pop!(queue)\n+      r, expectedflow = intersection(r1, f1, s1, r2, f2, s2)\n+      f, F, cut = maximum_flow(flow_graph, source, target, capacity_matrix,\n+                  algorithm = BoykovKolmogorovAlgorithm(), restriction = r)\n+      s = slope(flow_graph, capacity_matrix, max(cut, 1), r) # current slope\n+      auxpoints[λ + 1 - s] = (r, f)\n+      # If the flow at the intersection (middle) is as expected\n+      if false # expectedflow ≈ f # approximatively equal (enforced by floating precision)\n+        for k in (s1 - 1):(s2 + 1)\n+          auxpoints[λ + 1 - k] = (r, f) # add all points between left and right\n+        end\n+      else\n+        # if the slope difference between (middle) and left is at least 2\n+        # push (left),(middle)\n+        if s1 > s + 1 && (r2, f2) ≉ (r, f)\n+          q = (f1, s1, r1), (f, s, r)\n+          push!(queue, q)\n+        end\n+        # if the slope difference between (middle) and right is at least 2\n+        # push (middle),(right)\n+        if s > s2 + 1 && (r1, f1) ≉ (r, f)\n+          q = (f, s, r), (f2, s2, r2)\n+          push!(queue, q)\n+        end\n+      end\n+    end\n+  end\n+  return auxpoints\n+end\n+\n+\"\"\"\n+Calculates the breaking of the restricted max-flow from a set of auxiliary points.\n+Requires arguments:\n+- flow_graph::DiGraph                    # the input graph\n+- source::Int                            # the source vertex\n+- target::Int                            # the target vertex\n+- capacity_matrix::AbstractArray{T,2}    # edge flow capacities\n+\"\"\"\n+\n+function breakingPoints{T<:AbstractFloat}(\n+  flow_graph::DiGraph,                   # the input graph\n+  source::Int,                           # the source vertex\n+  target::Int,                           # the target vertex\n+  capacity_matrix::AbstractArray{T,2}    # edge flow capacities\n+  )\n+  auxpoints = auxiliaryPoints(flow_graph, source, target, capacity_matrix)\n+  λ = length(auxpoints) - 1\n+  left_index = 1\n+  breakingpoints = Vector{Tuple{T,T,Int}}()\n+\n+  for (id,point) in enumerate(auxpoints)\n+    if id == 1\n+      push!(breakingpoints, (0., 0., λ))\n+    else\n+      pleft = breakingpoints[left_index]\n+      if point[1] != 0\n+        x, y = intersection(pleft[1], pleft[2], pleft[3], point[1], point[2], λ + 1 - id)\n+        push!(breakingpoints,(x, y, λ + 1 - id))\n+        left_index += 1\n+      end\n+    end\n+  end\n+  return breakingpoints\n+end\n+\n+\"\"\"\n+Function to get the nonzero min and max function of a Matrix\n+Requires argument:\n+- capacity_matrix::AbstractArray{T,2}    # edge flow capacities\n+\"\"\"\n+\n+# Function to get the nonzero min and max function of a Matrix","path":"src/flow/ext_multiroute_flow.jl","position":149,"original_position":149,"commit_id":"c2c380f055d77555c76a728638e109d527b9ef5b","original_commit_id":"c2c380f055d77555c76a728638e109d527b9ef5b","user":{"login":"sbromberger","id":941359,"avatar_url":"https://avatars.githubusercontent.com/u/941359?v=3","gravatar_id":"","url":"https://api.github.com/users/sbromberger","html_url":"https://github.com/sbromberger","followers_url":"https://api.github.com/users/sbromberger/followers","following_url":"https://api.github.com/users/sbromberger/following{/other_user}","gists_url":"https://api.github.com/users/sbromberger/gists{/gist_id}","starred_url":"https://api.github.com/users/sbromberger/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sbromberger/subscriptions","organizations_url":"https://api.github.com/users/sbromberger/orgs","repos_url":"https://api.github.com/users/sbromberger/repos","events_url":"https://api.github.com/users/sbromberger/events{/privacy}","received_events_url":"https://api.github.com/users/sbromberger/received_events","type":"User","site_admin":false},"body":"Add a comment here along these lines:\r\n\r\n```\r\n# note: this is more efficient than maximum() / minimum() / extrema() since we have to ignore zero values.\r\n```\r\n","created_at":"2016-08-24T12:18:24Z","updated_at":"2016-08-24T12:18:24Z","html_url":"https://github.com/JuliaGraphs/LightGraphs.jl/pull/416#discussion_r76045228","pull_request_url":"https://api.github.com/repos/JuliaGraphs/LightGraphs.jl/pulls/416","_links":{"self":{"href":"https://api.github.com/repos/JuliaGraphs/LightGraphs.jl/pulls/comments/76045228"},"html":{"href":"https://github.com/JuliaGraphs/LightGraphs.jl/pull/416#discussion_r76045228"},"pull_request":{"href":"https://api.github.com/repos/JuliaGraphs/LightGraphs.jl/pulls/416"}}},"pull_request":{"url":"https://api.github.com/repos/JuliaGraphs/LightGraphs.jl/pulls/416","id":82320181,"html_url":"https://github.com/JuliaGraphs/LightGraphs.jl/pull/416","diff_url":"https://github.com/JuliaGraphs/LightGraphs.jl/pull/416.diff","patch_url":"https://github.com/JuliaGraphs/LightGraphs.jl/pull/416.patch","issue_url":"https://api.github.com/repos/JuliaGraphs/LightGraphs.jl/issues/416","number":416,"state":"open","locked":false,"title":"Multiroute flow (Kishimoto and Extended Multiroute Flow (EMRF) versions)","user":{"login":"Azzaare","id":4535131,"avatar_url":"https://avatars.githubusercontent.com/u/4535131?v=3","gravatar_id":"","url":"https://api.github.com/users/Azzaare","html_url":"https://github.com/Azzaare","followers_url":"https://api.github.com/users/Azzaare/followers","following_url":"https://api.github.com/users/Azzaare/following{/other_user}","gists_url":"https://api.github.com/users/Azzaare/gists{/gist_id}","starred_url":"https://api.github.com/users/Azzaare/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Azzaare/subscriptions","organizations_url":"https://api.github.com/users/Azzaare/orgs","repos_url":"https://api.github.com/users/Azzaare/repos","events_url":"https://api.github.com/users/Azzaare/events{/privacy}","received_events_url":"https://api.github.com/users/Azzaare/received_events","type":"User","site_admin":false},"body":"This PR implements the two methods for the multiroute flow algorithms discussed in #400 :\r\n* Kishimoto algorithm\r\n* Extended Multiroute Flow algorithm (can be used to solve/approximate Network Interdiction)\r\n\r\nIt also includes tests and doc updates. However some unrelated files in the doc are updated (probably from other PR where `julia doc/build.jl` was not called) :\r\n  1. Doc for max-flow (from my previous PR #402 ) \r\n  2. basicmeasures.md\r\n  3. linalg.md","created_at":"2016-08-23T08:07:09Z","updated_at":"2016-08-24T12:18:24Z","closed_at":null,"merged_at":null,"merge_commit_sha":"acf2059643ce995459ef1bb481401720475c0e16","assignee":null,"assignees":[],"milestone":null,"commits_url":"https://api.github.com/repos/JuliaGraphs/LightGraphs.jl/pulls/416/commits","review_comments_url":"https://api.github.com/repos/JuliaGraphs/LightGraphs.jl/pulls/416/comments","review_comment_url":"https://api.github.com/repos/JuliaGraphs/LightGraphs.jl/pulls/comments{/number}","comments_url":"https://api.github.com/repos/JuliaGraphs/LightGraphs.jl/issues/416/comments","statuses_url":"https://api.github.com/repos/JuliaGraphs/LightGraphs.jl/statuses/c2c380f055d77555c76a728638e109d527b9ef5b","head":{"label":"Azzaare:pull-request/8a1865c9","ref":"pull-request/8a1865c9","sha":"c2c380f055d77555c76a728638e109d527b9ef5b","user":{"login":"Azzaare","id":4535131,"avatar_url":"https://avatars.githubusercontent.com/u/4535131?v=3","gravatar_id":"","url":"https://api.github.com/users/Azzaare","html_url":"https://github.com/Azzaare","followers_url":"https://api.github.com/users/Azzaare/followers","following_url":"https://api.github.com/users/Azzaare/following{/other_user}","gists_url":"https://api.github.com/users/Azzaare/gists{/gist_id}","starred_url":"https://api.github.com/users/Azzaare/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Azzaare/subscriptions","organizations_url":"https://api.github.com/users/Azzaare/orgs","repos_url":"https://api.github.com/users/Azzaare/repos","events_url":"https://api.github.com/users/Azzaare/events{/privacy}","received_events_url":"https://api.github.com/users/Azzaare/received_events","type":"User","site_admin":false},"repo":{"id":64922775,"name":"LightGraphs.jl","full_name":"Azzaare/LightGraphs.jl","owner":{"login":"Azzaare","id":4535131,"avatar_url":"https://avatars.githubusercontent.com/u/4535131?v=3","gravatar_id":"","url":"https://api.github.com/users/Azzaare","html_url":"https://github.com/Azzaare","followers_url":"https://api.github.com/users/Azzaare/followers","following_url":"https://api.github.com/users/Azzaare/following{/other_user}","gists_url":"https://api.github.com/users/Azzaare/gists{/gist_id}","starred_url":"https://api.github.com/users/Azzaare/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Azzaare/subscriptions","organizations_url":"https://api.github.com/users/Azzaare/orgs","repos_url":"https://api.github.com/users/Azzaare/repos","events_url":"https://api.github.com/users/Azzaare/events{/privacy}","received_events_url":"https://api.github.com/users/Azzaare/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/Azzaare/LightGraphs.jl","description":"An optimized graphs package for Julia","fork":true,"url":"https://api.github.com/repos/Azzaare/LightGraphs.jl","forks_url":"https://api.github.com/repos/Azzaare/LightGraphs.jl/forks","keys_url":"https://api.github.com/repos/Azzaare/LightGraphs.jl/keys{/key_id}","collaborators_url":"https://api.github.com/repos/Azzaare/LightGraphs.jl/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/Azzaare/LightGraphs.jl/teams","hooks_url":"https://api.github.com/repos/Azzaare/LightGraphs.jl/hooks","issue_events_url":"https://api.github.com/repos/Azzaare/LightGraphs.jl/issues/events{/number}","events_url":"https://api.github.com/repos/Azzaare/LightGraphs.jl/events","assignees_url":"https://api.github.com/repos/Azzaare/LightGraphs.jl/assignees{/user}","branches_url":"https://api.github.com/repos/Azzaare/LightGraphs.jl/branches{/branch}","tags_url":"https://api.github.com/repos/Azzaare/LightGraphs.jl/tags","blobs_url":"https://api.github.com/repos/Azzaare/LightGraphs.jl/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/Azzaare/LightGraphs.jl/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/Azzaare/LightGraphs.jl/git/refs{/sha}","trees_url":"https://api.github.com/repos/Azzaare/LightGraphs.jl/git/trees{/sha}","statuses_url":"https://api.github.com/repos/Azzaare/LightGraphs.jl/statuses/{sha}","languages_url":"https://api.github.com/repos/Azzaare/LightGraphs.jl/languages","stargazers_url":"https://api.github.com/repos/Azzaare/LightGraphs.jl/stargazers","contributors_url":"https://api.github.com/repos/Azzaare/LightGraphs.jl/contributors","subscribers_url":"https://api.github.com/repos/Azzaare/LightGraphs.jl/subscribers","subscription_url":"https://api.github.com/repos/Azzaare/LightGraphs.jl/subscription","commits_url":"https://api.github.com/repos/Azzaare/LightGraphs.jl/commits{/sha}","git_commits_url":"https://api.github.com/repos/Azzaare/LightGraphs.jl/git/commits{/sha}","comments_url":"https://api.github.com/repos/Azzaare/LightGraphs.jl/comments{/number}","issue_comment_url":"https://api.github.com/repos/Azzaare/LightGraphs.jl/issues/comments{/number}","contents_url":"https://api.github.com/repos/Azzaare/LightGraphs.jl/contents/{+path}","compare_url":"https://api.github.com/repos/Azzaare/LightGraphs.jl/compare/{base}...{head}","merges_url":"https://api.github.com/repos/Azzaare/LightGraphs.jl/merges","archive_url":"https://api.github.com/repos/Azzaare/LightGraphs.jl/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/Azzaare/LightGraphs.jl/downloads","issues_url":"https://api.github.com/repos/Azzaare/LightGraphs.jl/issues{/number}","pulls_url":"https://api.github.com/repos/Azzaare/LightGraphs.jl/pulls{/number}","milestones_url":"https://api.github.com/repos/Azzaare/LightGraphs.jl/milestones{/number}","notifications_url":"https://api.github.com/repos/Azzaare/LightGraphs.jl/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/Azzaare/LightGraphs.jl/labels{/name}","releases_url":"https://api.github.com/repos/Azzaare/LightGraphs.jl/releases{/id}","deployments_url":"https://api.github.com/repos/Azzaare/LightGraphs.jl/deployments","created_at":"2016-08-04T09:42:28Z","updated_at":"2016-08-04T09:42:29Z","pushed_at":"2016-08-24T05:46:02Z","git_url":"git://github.com/Azzaare/LightGraphs.jl.git","ssh_url":"git@github.com:Azzaare/LightGraphs.jl.git","clone_url":"https://github.com/Azzaare/LightGraphs.jl.git","svn_url":"https://github.com/Azzaare/LightGraphs.jl","homepage":"","size":4492,"stargazers_count":0,"watchers_count":0,"language":"Julia","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"JuliaGraphs:master","ref":"master","sha":"706412a9d7cde47d1a6535300a3928da60859ada","user":{"login":"JuliaGraphs","id":10791402,"avatar_url":"https://avatars.githubusercontent.com/u/10791402?v=3","gravatar_id":"","url":"https://api.github.com/users/JuliaGraphs","html_url":"https://github.com/JuliaGraphs","followers_url":"https://api.github.com/users/JuliaGraphs/followers","following_url":"https://api.github.com/users/JuliaGraphs/following{/other_user}","gists_url":"https://api.github.com/users/JuliaGraphs/gists{/gist_id}","starred_url":"https://api.github.com/users/JuliaGraphs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/JuliaGraphs/subscriptions","organizations_url":"https://api.github.com/users/JuliaGraphs/orgs","repos_url":"https://api.github.com/users/JuliaGraphs/repos","events_url":"https://api.github.com/users/JuliaGraphs/events{/privacy}","received_events_url":"https://api.github.com/users/JuliaGraphs/received_events","type":"Organization","site_admin":false},"repo":{"id":29314835,"name":"LightGraphs.jl","full_name":"JuliaGraphs/LightGraphs.jl","owner":{"login":"JuliaGraphs","id":10791402,"avatar_url":"https://avatars.githubusercontent.com/u/10791402?v=3","gravatar_id":"","url":"https://api.github.com/users/JuliaGraphs","html_url":"https://github.com/JuliaGraphs","followers_url":"https://api.github.com/users/JuliaGraphs/followers","following_url":"https://api.github.com/users/JuliaGraphs/following{/other_user}","gists_url":"https://api.github.com/users/JuliaGraphs/gists{/gist_id}","starred_url":"https://api.github.com/users/JuliaGraphs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/JuliaGraphs/subscriptions","organizations_url":"https://api.github.com/users/JuliaGraphs/orgs","repos_url":"https://api.github.com/users/JuliaGraphs/repos","events_url":"https://api.github.com/users/JuliaGraphs/events{/privacy}","received_events_url":"https://api.github.com/users/JuliaGraphs/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/JuliaGraphs/LightGraphs.jl","description":"An optimized graphs package for Julia","fork":false,"url":"https://api.github.com/repos/JuliaGraphs/LightGraphs.jl","forks_url":"https://api.github.com/repos/JuliaGraphs/LightGraphs.jl/forks","keys_url":"https://api.github.com/repos/JuliaGraphs/LightGraphs.jl/keys{/key_id}","collaborators_url":"https://api.github.com/repos/JuliaGraphs/LightGraphs.jl/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/JuliaGraphs/LightGraphs.jl/teams","hooks_url":"https://api.github.com/repos/JuliaGraphs/LightGraphs.jl/hooks","issue_events_url":"https://api.github.com/repos/JuliaGraphs/LightGraphs.jl/issues/events{/number}","events_url":"https://api.github.com/repos/JuliaGraphs/LightGraphs.jl/events","assignees_url":"https://api.github.com/repos/JuliaGraphs/LightGraphs.jl/assignees{/user}","branches_url":"https://api.github.com/repos/JuliaGraphs/LightGraphs.jl/branches{/branch}","tags_url":"https://api.github.com/repos/JuliaGraphs/LightGraphs.jl/tags","blobs_url":"https://api.github.com/repos/JuliaGraphs/LightGraphs.jl/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/JuliaGraphs/LightGraphs.jl/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/JuliaGraphs/LightGraphs.jl/git/refs{/sha}","trees_url":"https://api.github.com/repos/JuliaGraphs/LightGraphs.jl/git/trees{/sha}","statuses_url":"https://api.github.com/repos/JuliaGraphs/LightGraphs.jl/statuses/{sha}","languages_url":"https://api.github.com/repos/JuliaGraphs/LightGraphs.jl/languages","stargazers_url":"https://api.github.com/repos/JuliaGraphs/LightGraphs.jl/stargazers","contributors_url":"https://api.github.com/repos/JuliaGraphs/LightGraphs.jl/contributors","subscribers_url":"https://api.github.com/repos/JuliaGraphs/LightGraphs.jl/subscribers","subscription_url":"https://api.github.com/repos/JuliaGraphs/LightGraphs.jl/subscription","commits_url":"https://api.github.com/repos/JuliaGraphs/LightGraphs.jl/commits{/sha}","git_commits_url":"https://api.github.com/repos/JuliaGraphs/LightGraphs.jl/git/commits{/sha}","comments_url":"https://api.github.com/repos/JuliaGraphs/LightGraphs.jl/comments{/number}","issue_comment_url":"https://api.github.com/repos/JuliaGraphs/LightGraphs.jl/issues/comments{/number}","contents_url":"https://api.github.com/repos/JuliaGraphs/LightGraphs.jl/contents/{+path}","compare_url":"https://api.github.com/repos/JuliaGraphs/LightGraphs.jl/compare/{base}...{head}","merges_url":"https://api.github.com/repos/JuliaGraphs/LightGraphs.jl/merges","archive_url":"https://api.github.com/repos/JuliaGraphs/LightGraphs.jl/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/JuliaGraphs/LightGraphs.jl/downloads","issues_url":"https://api.github.com/repos/JuliaGraphs/LightGraphs.jl/issues{/number}","pulls_url":"https://api.github.com/repos/JuliaGraphs/LightGraphs.jl/pulls{/number}","milestones_url":"https://api.github.com/repos/JuliaGraphs/LightGraphs.jl/milestones{/number}","notifications_url":"https://api.github.com/repos/JuliaGraphs/LightGraphs.jl/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/JuliaGraphs/LightGraphs.jl/labels{/name}","releases_url":"https://api.github.com/repos/JuliaGraphs/LightGraphs.jl/releases{/id}","deployments_url":"https://api.github.com/repos/JuliaGraphs/LightGraphs.jl/deployments","created_at":"2015-01-15T19:44:43Z","updated_at":"2016-08-17T20:46:54Z","pushed_at":"2016-08-24T05:46:03Z","git_url":"git://github.com/JuliaGraphs/LightGraphs.jl.git","ssh_url":"git@github.com:JuliaGraphs/LightGraphs.jl.git","clone_url":"https://github.com/JuliaGraphs/LightGraphs.jl.git","svn_url":"https://github.com/JuliaGraphs/LightGraphs.jl","homepage":"","size":4728,"stargazers_count":64,"watchers_count":64,"language":"Julia","has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":26,"mirror_url":null,"open_issues_count":25,"forks":26,"open_issues":25,"watchers":64,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/JuliaGraphs/LightGraphs.jl/pulls/416"},"html":{"href":"https://github.com/JuliaGraphs/LightGraphs.jl/pull/416"},"issue":{"href":"https://api.github.com/repos/JuliaGraphs/LightGraphs.jl/issues/416"},"comments":{"href":"https://api.github.com/repos/JuliaGraphs/LightGraphs.jl/issues/416/comments"},"review_comments":{"href":"https://api.github.com/repos/JuliaGraphs/LightGraphs.jl/pulls/416/comments"},"review_comment":{"href":"https://api.github.com/repos/JuliaGraphs/LightGraphs.jl/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/JuliaGraphs/LightGraphs.jl/pulls/416/commits"},"statuses":{"href":"https://api.github.com/repos/JuliaGraphs/LightGraphs.jl/statuses/c2c380f055d77555c76a728638e109d527b9ef5b"}}}}
{"actor":{"display_login":"sbromberger"}}