{"action":"created","comment":{"url":"https://api.github.com/repos/tgstation/-tg-station/pulls/comments/61546720","id":61546720,"diff_hunk":"@@ -155,261 +167,141 @@ bool readFromFile()\n \t\t\t\tss >> tmp >> c >> failures;\r\n \t\t\t\t\r\n \t\t\t\ttotalHardDels += failures;\r\n-\t\t\t\t\r\n-\t\t\t\tfor(int i=0; i <= maxStorage; i++)\r\n-\t\t\t\t{\r\n+\t\t\t\tbool found = false;\r\n+\t\t\t\tfor (int i=0; i < storedHardDel.size(); i++) {\r\n \t\t\t\t\t\r\n \t\t\t\t\t//We've already encountered this\r\n-\t\t\t\t\tif(currentLine == storedHardDel[i])\r\n-\t\t\t\t\t{\r\n-\t\t\t\t\t\tnumHardDel[i] += failures;\r\n-\t\t\t\t\t\tbreak;\r\n-\t\t\t\t\t}\r\n-\r\n-\t\t\t\t\t//We've never encountered this\r\n-\t\t\t\t\tif(storedHardDel[i] == \"Blank\")\r\n-\t\t\t\t\t{\r\n-\t\t\t\t\t\tstoredHardDel[i] = currentLine;\r\n-\t\t\t\t\t\tnumHardDel[i] = failures;\r\n-\t\t\t\t\t\tcheckNextLines = true;\r\n-\t\t\t\t\t\ttotalUniqueHardDels++;\r\n+\t\t\t\t\tif (currentLine == storedHardDel[i]->type) {\r\n+\t\t\t\t\t\tstoredHardDel[i]->type += failures;\r\n+\t\t\t\t\t\tfound = true;\r\n \t\t\t\t\t\tbreak;\r\n \t\t\t\t\t}\r\n \t\t\t\t}\r\n+\t\t\t\r\n+\t\t\t\t//We've never encountered this\r\n+\t\t\t\tif (!found) {\r\n+\t\t\t\t\tharddel* D = new harddel;\r\n+\t\t\t\t\tstoredHardDel.push_back(D);\r\n+\t\t\t\t\tD->type = currentLine;\r\n+\t\t\t\t\tD->count = failures;\r\n+\t\t\t\t\ttotalUniqueHardDels++;\r\n+\t\t\t\t}\r\n \t\t\t}\r\n \t\t}\r\n-\t}\r\n-\telse\r\n-\t{\r\n+\t} else {\r\n \t\treturn false;\r\n \t}\r\n \treturn true;\r\n }\r\n \r\n-bool writeToFile()\r\n-{\r\n+bool writeToFile() {\r\n \t//Open and clear the file\r\n \tofstream outputFile(\"Output.txt\", ios::trunc);\r\n \r\n-\tif(outputFile.is_open())\r\n-\t{\r\n+\tif(outputFile.is_open()) {\r\n \t\toutputFile << \"Note: The proc name, source file, src and usr are all from the FIRST of the identical runtimes. Everything else is cropped.\\n\\n\";\r\n \t\tif(totalUniqueInfiniteLoops > 0)\r\n-\t\t{\r\n \t\t\toutputFile << \"Total unique infinite loops: \" << totalUniqueInfiniteLoops << endl;\r\n-\t\t}\r\n-\t\tif(totalInfiniteLoops > 0)\r\n-\t\t{\r\n+\r\n+\t\tif(totalInfiniteLoops > 0) \r\n \t\t\toutputFile << \"Total infinite loops: \" << totalInfiniteLoops << endl << endl;\r\n-\t\t}\r\n+\r\n \t\toutputFile << \"Total unique runtimes: \" << totalUniqueRuntimes << endl;\r\n \t\toutputFile << \"Total runtimes: \" << totalRuntimes << endl << endl;\r\n \t\tif(totalUniqueHardDels > 0)\r\n-\t\t{\r\n \t\t\toutputFile << \"Total unique hard deletions: \" << totalUniqueHardDels << endl;\r\n-\t\t}\r\n+\r\n \t\tif(totalHardDels > 0)\r\n-\t\t{\r\n \t\t\toutputFile << \"Total hard deletions: \" << totalHardDels << endl << endl;\r\n-\t\t}\r\n-\r\n-\t\t//Display a warning if we've hit the maximum space we've allocated for storage\r\n-\t\tif(totalUniqueRuntimes + totalUniqueInfiniteLoops >= maxStorage)\r\n-\t\t{\r\n-\t\t\toutputFile << \"Warning: The maximum number of unique runtimes has been hit. If there were more, they have been cropped out.\\n\\n\";\r\n-\t\t}\r\n-\t\tif(totalUniqueHardDels >= maxStorage)\r\n-\t\t{\r\n-\t\t\toutputFile << \"Warning: The maximum number of unique hard deletions has been hit. If there were more, they have been croped out.\\n\\n\";\r\n-\t\t}\r\n \r\n \r\n \t\t//If we have infinite loops, display them first.\r\n-\t\tif(totalInfiniteLoops > 0)\r\n-\t\t{\r\n+\t\tif(totalInfiniteLoops > 0) {\r\n \t\t\toutputFile << \"** Infinite loops **\";\r\n-\t\t\tfor(int i=0; i <= maxStorage; i++)\r\n-\t\t\t{\r\n-\t\t\t\tif(storedRuntime[i].find(\"Infinite loop suspected\") != std::string::npos || storedRuntime[i].find(\"Maximum recursion level reached\") != std::string::npos)\r\n-\t\t\t\t{\r\n-\t\t\t\t\tif(numRuntime[i] != 0) outputFile << endl << endl << \"The following infinite loop has occured \" << numRuntime[i] << \" time(s).\\n\";\r\n-\t\t\t\t\tif(storedRuntime[i] != \"Blank\") outputFile << storedRuntime[i] << endl;\r\n-\t\t\t\t\tif(storedProc[i] != \"Blank\") outputFile << storedProc[i] << endl;\r\n-\t\t\t\t\tif(storedSource[i] != \"Blank\") outputFile << storedSource[i] << endl;\r\n-\t\t\t\t\tif(storedUsr[i] != \"Blank\") outputFile << storedUsr[i] << endl;\r\n-\t\t\t\t\tif(storedSrc[i] != \"Blank\") outputFile << storedSrc[i] << endl;\r\n-\t\t\t\t}\r\n+\t\t\tfor (int i=0; i < storedInfiniteLoop.size(); i++) {\r\n+\t\t\t\truntime* R = storedInfiniteLoop[i];\r\n+\t\t\t\toutputFile << endl << endl << \"The following infinite loop has occurred \" << R->count << \" time(s).\\n\"; \r\n+\t\t\t\toutputFile << R->text << endl;\r\n+\t\t\t\tif(R->proc.length()) \r\n+\t\t\t\t\toutputFile << R->proc << endl;\r\n+\t\t\t\tif(R->source.length()) \r\n+\t\t\t\t\toutputFile << R->source << endl;\r\n+\t\t\t\tif(R->usr.length()) \r\n+\t\t\t\t\toutputFile << R->usr << endl;\r\n+\t\t\t\tif(R->src.length()) \r\n+\t\t\t\t\toutputFile << R->src << endl;\r\n+\t\t\t\tif(R->loc.length()) \r\n+\t\t\t\t\toutputFile << R->loc << endl;\r\n \t\t\t}\r\n \t\t\toutputFile << endl << endl; //For spacing\r\n \t\t}\r\n \r\n \r\n \t\t//Do runtimes next\r\n \t\toutputFile << \"** Runtimes **\";\r\n-\t\tfor(int i=0; i <= maxStorage; i++)\r\n-\t\t{\r\n-\t\t\tif(storedRuntime[i].find(\"Infinite loop suspected\") != std::string::npos || storedRuntime[i].find(\"Maximum recursion level reached\") != std::string::npos) continue;\r\n-\r\n-\t\t\tif(numRuntime[i] != 0) outputFile << endl << endl << \"The following runtime has occured \" << numRuntime[i] << \" time(s).\\n\";\r\n-\t\t\tif(storedRuntime[i] != \"Blank\") outputFile << storedRuntime[i] << endl;\r\n-\t\t\tif(storedProc[i] != \"Blank\") outputFile << storedProc[i] << endl;\r\n-\t\t\tif(storedSource[i] != \"Blank\") outputFile << storedSource[i] << endl;\r\n-\t\t\tif(storedUsr[i] != \"Blank\") outputFile << storedUsr[i] << endl;\r\n-\t\t\tif(storedSrc[i] != \"Blank\") outputFile << storedSrc[i] << endl;\r\n+\t\tfor (int i=0; i < storedRuntime.size(); i++) {\r\n+\t\t\truntime* R = storedRuntime[i];\r\n+\t\t\toutputFile << endl << endl << \"The following runtime has occurred \" << R->count << \" time(s).\\n\"; \r\n+\t\t\toutputFile << R->text << endl;\r\n+\t\t\tif(R->proc.length()) \r\n+\t\t\t\toutputFile << R->proc << endl;\r\n+\t\t\tif(R->source.length()) \r\n+\t\t\t\toutputFile << R->source << endl;\r\n+\t\t\tif(R->usr.length()) \r\n+\t\t\t\toutputFile << R->usr << endl;\r\n+\t\t\tif(R->src.length()) \r\n+\t\t\t\toutputFile << R->src << endl;\r\n+\t\t\tif(R->loc.length()) \r\n+\t\t\t\toutputFile << R->loc << endl;\r\n \t\t}\r\n+\t\toutputFile << endl << endl; //For spacing\r\n \t\t\r\n \t\t//and finally, hard deletes\r\n-\t\tif(totalHardDels > 0)\r\n-\t\t{\r\n+\t\tif(totalHardDels > 0) {\r\n \t\t\toutputFile << endl << \"** Hard deletions **\";\r\n-\t\t\tfor(int i=0; i <= maxStorage; i++)\r\n-\t\t\t{\r\n-\t\t\t\tif(numHardDel[i] != 0 && storedHardDel[i] != \"Blank\") outputFile << endl << storedHardDel[i] << \" - \" << numHardDel[i] << \" time(s).\\n\";\r\n+\t\t\tfor(int i=0; i < storedHardDel.size(); i++) {\r\n+\t\t\t\tharddel* D = storedHardDel[i];\r\n+\t\t\t\toutputFile << endl << D->type << \" - \" << D->count << \" time(s).\\n\";\r\n \t\t\t}\r\n \t\t}\r\n \t\toutputFile.close();\r\n-\t}\r\n-\telse\r\n-\t{\r\n+\t} else {\r\n \t\treturn false;\r\n \t}\r\n \treturn true;\r\n }\r\n \r\n-void sortRuntimes()\r\n-{\r\n-\tstring tempRuntime[maxStorage+1];\r\n-\tstring tempProc[maxStorage+1];\r\n-\tstring tempSource[maxStorage+1];\r\n-\tstring tempUsr[maxStorage+1];\r\n-\tstring tempSrc[maxStorage+1];\r\n-\tunsigned int tempNumRuntime[maxStorage+1];\r\n-\tunsigned int highestCount = 0; //Used for descending order\r\n-//\tint keepLooping = 0;\r\n-\r\n-\t//Move all of our data into temporary arrays. Also clear the stored data (not necessary but.. just incase)\r\n-\tfor(int i=0; i <= maxStorage; i++)\r\n-\t{\r\n-\t\t//Get the largest occurance of a single runtime\r\n-\t\tif(highestCount < numRuntime[i])\r\n-\t\t{\r\n-\t\t\thighestCount = numRuntime[i];\r\n-\t\t}\r\n \r\n-\t\ttempRuntime[i] = storedRuntime[i];\tstoredRuntime[i] = \"Blank\";\r\n-\t\ttempProc[i] = storedProc[i];\t\tstoredProc[i] = \"Blank\";\r\n-\t\ttempSource[i] = storedSource[i];\tstoredSource[i] = \"Blank\";\r\n-\t\ttempUsr[i] = storedUsr[i];\t\t\tstoredUsr[i] = \"Blank\";\r\n-\t\ttempSrc[i] = storedSrc[i];\t\t\tstoredSrc[i] = \"Blank\";\r\n-\t\ttempNumRuntime[i] = numRuntime[i];\tnumRuntime[i] = 0;\r\n-\t}\r\n-\r\n-\twhile(highestCount > 0)\r\n-\t{\r\n-\t\tfor(int i=0; i <= maxStorage; i++) //For every runtime\r\n-\t\t{\r\n-\t\t\tif(tempNumRuntime[i] == highestCount) //If the number of occurances of that runtime is equal to our current highest\r\n-\t\t\t{\r\n-\t\t\t\tfor(int j=0; j <= maxStorage; j++) //Find the next available slot and store the info\r","path":"tools/Runtime Condenser/Main.cpp","position":464,"original_position":464,"commit_id":"0ec8de7705c2b98a1e9dd4c10464f1d7288c3534","original_commit_id":"0ec8de7705c2b98a1e9dd4c10464f1d7288c3534","user":{"login":"optimumtact","id":2544323,"avatar_url":"https://avatars.githubusercontent.com/u/2544323?v=3","gravatar_id":"","url":"https://api.github.com/users/optimumtact","html_url":"https://github.com/optimumtact","followers_url":"https://api.github.com/users/optimumtact/followers","following_url":"https://api.github.com/users/optimumtact/following{/other_user}","gists_url":"https://api.github.com/users/optimumtact/gists{/gist_id}","starred_url":"https://api.github.com/users/optimumtact/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/optimumtact/subscriptions","organizations_url":"https://api.github.com/users/optimumtact/orgs","repos_url":"https://api.github.com/users/optimumtact/repos","events_url":"https://api.github.com/users/optimumtact/events{/privacy}","received_events_url":"https://api.github.com/users/optimumtact/received_events","type":"User","site_admin":false},"body":"wtf","created_at":"2016-04-29T08:23:47Z","updated_at":"2016-04-29T08:23:47Z","html_url":"https://github.com/tgstation/-tg-station/pull/17230#discussion_r61546720","pull_request_url":"https://api.github.com/repos/tgstation/-tg-station/pulls/17230","_links":{"self":{"href":"https://api.github.com/repos/tgstation/-tg-station/pulls/comments/61546720"},"html":{"href":"https://github.com/tgstation/-tg-station/pull/17230#discussion_r61546720"},"pull_request":{"href":"https://api.github.com/repos/tgstation/-tg-station/pulls/17230"}}},"pull_request":{"url":"https://api.github.com/repos/tgstation/-tg-station/pulls/17230","id":68330515,"html_url":"https://github.com/tgstation/-tg-station/pull/17230","diff_url":"https://github.com/tgstation/-tg-station/pull/17230.diff","patch_url":"https://github.com/tgstation/-tg-station/pull/17230.patch","issue_url":"https://api.github.com/repos/tgstation/-tg-station/issues/17230","number":17230,"state":"open","locked":false,"title":"Refactor the Runtime Condenser to be less shit.","user":{"login":"MrStonedOne","id":7069733,"avatar_url":"https://avatars.githubusercontent.com/u/7069733?v=3","gravatar_id":"","url":"https://api.github.com/users/MrStonedOne","html_url":"https://github.com/MrStonedOne","followers_url":"https://api.github.com/users/MrStonedOne/followers","following_url":"https://api.github.com/users/MrStonedOne/following{/other_user}","gists_url":"https://api.github.com/users/MrStonedOne/gists{/gist_id}","starred_url":"https://api.github.com/users/MrStonedOne/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MrStonedOne/subscriptions","organizations_url":"https://api.github.com/users/MrStonedOne/orgs","repos_url":"https://api.github.com/users/MrStonedOne/repos","events_url":"https://api.github.com/users/MrStonedOne/events{/privacy}","received_events_url":"https://api.github.com/users/MrStonedOne/received_events","type":"User","site_admin":false},"body":"Runtime Condenser now supports src.loc.\r\nRuntime Condenser now supports timestamped runtime logs (and supports older logs as well).\r\nRuntime Condenser now supports unlimited runtimes. (good bye 100 runtime limit)\r\nRuntime Condenser now uses expanding arrays (vectors) so that it doesn't have to allocate a fuck ton of memory.\r\nRuntime Condenser now uses a non o(n^n) sorting algo that also required double memory (seriously, who wrote this? who the fuck is \"Nodrak\"?).\r\nRuntime Condenser now uses a proper stuct rather than SEVEN parallel arrays..\r\nRuntime Condenser's compiled version should now work on machines without the C++ redistributable as well as \"older\" versions of windows like windows 7 =P.\r\nRuntime Condenser now works on linux (and most likely mac) (the casing of Input.txt was wrong) just compile with `g++ Main.cpp -o rc`\r\nRuntime Condenser should be much faster as it was compiled with optimizations and automatic function inlining.\r\n\r\nRemoved the python version because it doesn't process a lot of non-standard output and its not needed as this version compiles on linux and even mac just fine.\r\n\r\n","created_at":"2016-04-29T06:47:40Z","updated_at":"2016-04-29T08:23:47Z","closed_at":null,"merged_at":null,"merge_commit_sha":"d44adef04ab8712a74096e985b422c16bf7f27de","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/tgstation/-tg-station/pulls/17230/commits","review_comments_url":"https://api.github.com/repos/tgstation/-tg-station/pulls/17230/comments","review_comment_url":"https://api.github.com/repos/tgstation/-tg-station/pulls/comments{/number}","comments_url":"https://api.github.com/repos/tgstation/-tg-station/issues/17230/comments","statuses_url":"https://api.github.com/repos/tgstation/-tg-station/statuses/0ec8de7705c2b98a1e9dd4c10464f1d7288c3534","head":{"label":"MrStonedOne:runtimeCondenserFix","ref":"runtimeCondenserFix","sha":"0ec8de7705c2b98a1e9dd4c10464f1d7288c3534","user":{"login":"MrStonedOne","id":7069733,"avatar_url":"https://avatars.githubusercontent.com/u/7069733?v=3","gravatar_id":"","url":"https://api.github.com/users/MrStonedOne","html_url":"https://github.com/MrStonedOne","followers_url":"https://api.github.com/users/MrStonedOne/followers","following_url":"https://api.github.com/users/MrStonedOne/following{/other_user}","gists_url":"https://api.github.com/users/MrStonedOne/gists{/gist_id}","starred_url":"https://api.github.com/users/MrStonedOne/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MrStonedOne/subscriptions","organizations_url":"https://api.github.com/users/MrStonedOne/orgs","repos_url":"https://api.github.com/users/MrStonedOne/repos","events_url":"https://api.github.com/users/MrStonedOne/events{/privacy}","received_events_url":"https://api.github.com/users/MrStonedOne/received_events","type":"User","site_admin":false},"repo":{"id":18158463,"name":"-tg-station","full_name":"MrStonedOne/-tg-station","owner":{"login":"MrStonedOne","id":7069733,"avatar_url":"https://avatars.githubusercontent.com/u/7069733?v=3","gravatar_id":"","url":"https://api.github.com/users/MrStonedOne","html_url":"https://github.com/MrStonedOne","followers_url":"https://api.github.com/users/MrStonedOne/followers","following_url":"https://api.github.com/users/MrStonedOne/following{/other_user}","gists_url":"https://api.github.com/users/MrStonedOne/gists{/gist_id}","starred_url":"https://api.github.com/users/MrStonedOne/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MrStonedOne/subscriptions","organizations_url":"https://api.github.com/users/MrStonedOne/orgs","repos_url":"https://api.github.com/users/MrStonedOne/repos","events_url":"https://api.github.com/users/MrStonedOne/events{/privacy}","received_events_url":"https://api.github.com/users/MrStonedOne/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/MrStonedOne/-tg-station","description":"/tg/'s SS13 branch","fork":true,"url":"https://api.github.com/repos/MrStonedOne/-tg-station","forks_url":"https://api.github.com/repos/MrStonedOne/-tg-station/forks","keys_url":"https://api.github.com/repos/MrStonedOne/-tg-station/keys{/key_id}","collaborators_url":"https://api.github.com/repos/MrStonedOne/-tg-station/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/MrStonedOne/-tg-station/teams","hooks_url":"https://api.github.com/repos/MrStonedOne/-tg-station/hooks","issue_events_url":"https://api.github.com/repos/MrStonedOne/-tg-station/issues/events{/number}","events_url":"https://api.github.com/repos/MrStonedOne/-tg-station/events","assignees_url":"https://api.github.com/repos/MrStonedOne/-tg-station/assignees{/user}","branches_url":"https://api.github.com/repos/MrStonedOne/-tg-station/branches{/branch}","tags_url":"https://api.github.com/repos/MrStonedOne/-tg-station/tags","blobs_url":"https://api.github.com/repos/MrStonedOne/-tg-station/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/MrStonedOne/-tg-station/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/MrStonedOne/-tg-station/git/refs{/sha}","trees_url":"https://api.github.com/repos/MrStonedOne/-tg-station/git/trees{/sha}","statuses_url":"https://api.github.com/repos/MrStonedOne/-tg-station/statuses/{sha}","languages_url":"https://api.github.com/repos/MrStonedOne/-tg-station/languages","stargazers_url":"https://api.github.com/repos/MrStonedOne/-tg-station/stargazers","contributors_url":"https://api.github.com/repos/MrStonedOne/-tg-station/contributors","subscribers_url":"https://api.github.com/repos/MrStonedOne/-tg-station/subscribers","subscription_url":"https://api.github.com/repos/MrStonedOne/-tg-station/subscription","commits_url":"https://api.github.com/repos/MrStonedOne/-tg-station/commits{/sha}","git_commits_url":"https://api.github.com/repos/MrStonedOne/-tg-station/git/commits{/sha}","comments_url":"https://api.github.com/repos/MrStonedOne/-tg-station/comments{/number}","issue_comment_url":"https://api.github.com/repos/MrStonedOne/-tg-station/issues/comments{/number}","contents_url":"https://api.github.com/repos/MrStonedOne/-tg-station/contents/{+path}","compare_url":"https://api.github.com/repos/MrStonedOne/-tg-station/compare/{base}...{head}","merges_url":"https://api.github.com/repos/MrStonedOne/-tg-station/merges","archive_url":"https://api.github.com/repos/MrStonedOne/-tg-station/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/MrStonedOne/-tg-station/downloads","issues_url":"https://api.github.com/repos/MrStonedOne/-tg-station/issues{/number}","pulls_url":"https://api.github.com/repos/MrStonedOne/-tg-station/pulls{/number}","milestones_url":"https://api.github.com/repos/MrStonedOne/-tg-station/milestones{/number}","notifications_url":"https://api.github.com/repos/MrStonedOne/-tg-station/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/MrStonedOne/-tg-station/labels{/name}","releases_url":"https://api.github.com/repos/MrStonedOne/-tg-station/releases{/id}","deployments_url":"https://api.github.com/repos/MrStonedOne/-tg-station/deployments","created_at":"2014-03-26T23:58:37Z","updated_at":"2016-01-22T07:51:41Z","pushed_at":"2016-04-29T06:33:30Z","git_url":"git://github.com/MrStonedOne/-tg-station.git","ssh_url":"git@github.com:MrStonedOne/-tg-station.git","clone_url":"https://github.com/MrStonedOne/-tg-station.git","svn_url":"https://github.com/MrStonedOne/-tg-station","homepage":"","size":579282,"stargazers_count":1,"watchers_count":1,"language":"DM","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":0,"forks":1,"open_issues":0,"watchers":1,"default_branch":"master"}},"base":{"label":"tgstation:master","ref":"master","sha":"ed53cec0eddebc821abc00c1ec075760a88e8e85","user":{"login":"tgstation","id":1363778,"avatar_url":"https://avatars.githubusercontent.com/u/1363778?v=3","gravatar_id":"","url":"https://api.github.com/users/tgstation","html_url":"https://github.com/tgstation","followers_url":"https://api.github.com/users/tgstation/followers","following_url":"https://api.github.com/users/tgstation/following{/other_user}","gists_url":"https://api.github.com/users/tgstation/gists{/gist_id}","starred_url":"https://api.github.com/users/tgstation/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tgstation/subscriptions","organizations_url":"https://api.github.com/users/tgstation/orgs","repos_url":"https://api.github.com/users/tgstation/repos","events_url":"https://api.github.com/users/tgstation/events{/privacy}","received_events_url":"https://api.github.com/users/tgstation/received_events","type":"Organization","site_admin":false},"repo":{"id":3234987,"name":"-tg-station","full_name":"tgstation/-tg-station","owner":{"login":"tgstation","id":1363778,"avatar_url":"https://avatars.githubusercontent.com/u/1363778?v=3","gravatar_id":"","url":"https://api.github.com/users/tgstation","html_url":"https://github.com/tgstation","followers_url":"https://api.github.com/users/tgstation/followers","following_url":"https://api.github.com/users/tgstation/following{/other_user}","gists_url":"https://api.github.com/users/tgstation/gists{/gist_id}","starred_url":"https://api.github.com/users/tgstation/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tgstation/subscriptions","organizations_url":"https://api.github.com/users/tgstation/orgs","repos_url":"https://api.github.com/users/tgstation/repos","events_url":"https://api.github.com/users/tgstation/events{/privacy}","received_events_url":"https://api.github.com/users/tgstation/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/tgstation/-tg-station","description":"the /tg/station branch of SS13","fork":false,"url":"https://api.github.com/repos/tgstation/-tg-station","forks_url":"https://api.github.com/repos/tgstation/-tg-station/forks","keys_url":"https://api.github.com/repos/tgstation/-tg-station/keys{/key_id}","collaborators_url":"https://api.github.com/repos/tgstation/-tg-station/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/tgstation/-tg-station/teams","hooks_url":"https://api.github.com/repos/tgstation/-tg-station/hooks","issue_events_url":"https://api.github.com/repos/tgstation/-tg-station/issues/events{/number}","events_url":"https://api.github.com/repos/tgstation/-tg-station/events","assignees_url":"https://api.github.com/repos/tgstation/-tg-station/assignees{/user}","branches_url":"https://api.github.com/repos/tgstation/-tg-station/branches{/branch}","tags_url":"https://api.github.com/repos/tgstation/-tg-station/tags","blobs_url":"https://api.github.com/repos/tgstation/-tg-station/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/tgstation/-tg-station/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/tgstation/-tg-station/git/refs{/sha}","trees_url":"https://api.github.com/repos/tgstation/-tg-station/git/trees{/sha}","statuses_url":"https://api.github.com/repos/tgstation/-tg-station/statuses/{sha}","languages_url":"https://api.github.com/repos/tgstation/-tg-station/languages","stargazers_url":"https://api.github.com/repos/tgstation/-tg-station/stargazers","contributors_url":"https://api.github.com/repos/tgstation/-tg-station/contributors","subscribers_url":"https://api.github.com/repos/tgstation/-tg-station/subscribers","subscription_url":"https://api.github.com/repos/tgstation/-tg-station/subscription","commits_url":"https://api.github.com/repos/tgstation/-tg-station/commits{/sha}","git_commits_url":"https://api.github.com/repos/tgstation/-tg-station/git/commits{/sha}","comments_url":"https://api.github.com/repos/tgstation/-tg-station/comments{/number}","issue_comment_url":"https://api.github.com/repos/tgstation/-tg-station/issues/comments{/number}","contents_url":"https://api.github.com/repos/tgstation/-tg-station/contents/{+path}","compare_url":"https://api.github.com/repos/tgstation/-tg-station/compare/{base}...{head}","merges_url":"https://api.github.com/repos/tgstation/-tg-station/merges","archive_url":"https://api.github.com/repos/tgstation/-tg-station/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/tgstation/-tg-station/downloads","issues_url":"https://api.github.com/repos/tgstation/-tg-station/issues{/number}","pulls_url":"https://api.github.com/repos/tgstation/-tg-station/pulls{/number}","milestones_url":"https://api.github.com/repos/tgstation/-tg-station/milestones{/number}","notifications_url":"https://api.github.com/repos/tgstation/-tg-station/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/tgstation/-tg-station/labels{/name}","releases_url":"https://api.github.com/repos/tgstation/-tg-station/releases{/id}","deployments_url":"https://api.github.com/repos/tgstation/-tg-station/deployments","created_at":"2012-01-21T17:32:47Z","updated_at":"2016-04-28T06:07:47Z","pushed_at":"2016-04-29T08:07:15Z","git_url":"git://github.com/tgstation/-tg-station.git","ssh_url":"git@github.com:tgstation/-tg-station.git","clone_url":"https://github.com/tgstation/-tg-station.git","svn_url":"https://github.com/tgstation/-tg-station","homepage":"http://www.tgstation13.org/","size":793033,"stargazers_count":291,"watchers_count":291,"language":"DM","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":1031,"mirror_url":null,"open_issues_count":938,"forks":1031,"open_issues":938,"watchers":291,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/tgstation/-tg-station/pulls/17230"},"html":{"href":"https://github.com/tgstation/-tg-station/pull/17230"},"issue":{"href":"https://api.github.com/repos/tgstation/-tg-station/issues/17230"},"comments":{"href":"https://api.github.com/repos/tgstation/-tg-station/issues/17230/comments"},"review_comments":{"href":"https://api.github.com/repos/tgstation/-tg-station/pulls/17230/comments"},"review_comment":{"href":"https://api.github.com/repos/tgstation/-tg-station/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/tgstation/-tg-station/pulls/17230/commits"},"statuses":{"href":"https://api.github.com/repos/tgstation/-tg-station/statuses/0ec8de7705c2b98a1e9dd4c10464f1d7288c3534"}}}}