{"action":"created","comment":{"url":"https://api.github.com/repos/Baystation12/Baystation12/pulls/comments/46143679","id":46143679,"diff_hunk":"@@ -1,5 +1,58 @@\n+# Licening\n Baystation12 is licensed under the GNU Affero General Public License version 3, which can be found in full in LICENSE-AGPL3.txt.\n \n Commits with a git authorship date prior to `1420675200 +0000` (2015/01/08 00:00) are licensed under the GNU General Public License version 3, which can be found in full in LICENSE-GPL3.txt.\n \n All commits whose authorship dates are not prior to `1420675200 +0000` are assumed to be licensed under AGPL v3, if you wish to license under GPL v3 please make this clear in the commit message and any added files.\n+\n+# Coding Standards\n+\n+### Absolute Pathing\n+Absolute pathing shall always be used. This simplifies grepping and reduces indentation.\n+````\n+// This is an example of an absolute path.\n+/obj/example/path/proc/method()\n+\treturn 1\n+\n+// This is an example of a relative path. Do NOT use.\n+/obj/example/path\n+\t/proc/method()\n+\t\treturn 0\n+````\n+\n+### Destroy/qdel()\n+```del()``` is no longer used. When you wish to delete an object instead use ```qdel()```. Keep in mind that unlike ```del(src)```, ```qdel(src)``` does not automatically terminate the current execution context and you must manually ```return``` or otherwise handle the rest of the proc flow.\n+\n+When an instance is deleted the ```Destroy()``` proc is automatically called.  In the ```Destroy()``` proc any referenced instances the deleted instance is responsible for shall also be deleted, and all references shall always be cleared. When you implement ```Destroy()``` also remember to return the result of the the base proc, i.e:\n+```` \n+/obj/example\n+\tvar/created_instance\n+\tvar/outside_instance\n+\tvar/list/list_of_references\n+\t\n+/obj/example/New(var/outside_instance)\n+\tsrc.created_instance = new()\n+\tsrc.outside_instance = outside_instance\n+\tlist_of_references = list(created_instance, outside_instance)\n+\n+/obj/example/Destroy()\n+\tqdel(created_instance)\t\t// Because we created this instance we are also responsible for deleting it in this particular case. This may not always be the case.\n+\tcreated_instance = null\n+\toutside_instance = null\t\t// Because we were given this instance from the outside, we can simply null it in this particular case. This may not always be the case.\n+\tlist_of_references.Cut()\t// Lists shall always be Cut(), never nulled or len set to 0 as this may cause reference leaks. \n+\treturn ..()\t\t\t\t\t// Always call the base proc and return the result, unless you have a clear reason not to.\n+```` \n+\n+### Icon State Updates\n+The icon_state variable shall, with the exception of  type definitions and ```New()```, only be updated in ```update_icon()``` or relevant proc for the type. By conducting icon updates at a centralized location, it is simpler to ensure correct functionality.","path":"CONTRIBUTING.md","position":47,"original_position":47,"commit_id":"f594b9f26c3ca3f5455bb501bd830672a24fe663","original_commit_id":"f594b9f26c3ca3f5455bb501bd830672a24fe663","user":{"login":"Zuhayr","id":2468979,"avatar_url":"https://avatars.githubusercontent.com/u/2468979?v=3","gravatar_id":"","url":"https://api.github.com/users/Zuhayr","html_url":"https://github.com/Zuhayr","followers_url":"https://api.github.com/users/Zuhayr/followers","following_url":"https://api.github.com/users/Zuhayr/following{/other_user}","gists_url":"https://api.github.com/users/Zuhayr/gists{/gist_id}","starred_url":"https://api.github.com/users/Zuhayr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Zuhayr/subscriptions","organizations_url":"https://api.github.com/users/Zuhayr/orgs","repos_url":"https://api.github.com/users/Zuhayr/repos","events_url":"https://api.github.com/users/Zuhayr/events{/privacy}","received_events_url":"https://api.github.com/users/Zuhayr/received_events","type":"User","site_admin":false},"body":"Maybe add a note about overlays.Cut() and such too. It's vastly neater to have that done once in a central location.","created_at":"2015-11-30T13:45:22Z","updated_at":"2015-11-30T13:45:22Z","html_url":"https://github.com/Baystation12/Baystation12/pull/11542#discussion_r46143679","pull_request_url":"https://api.github.com/repos/Baystation12/Baystation12/pulls/11542","_links":{"self":{"href":"https://api.github.com/repos/Baystation12/Baystation12/pulls/comments/46143679"},"html":{"href":"https://github.com/Baystation12/Baystation12/pull/11542#discussion_r46143679"},"pull_request":{"href":"https://api.github.com/repos/Baystation12/Baystation12/pulls/11542"}}},"pull_request":{"url":"https://api.github.com/repos/Baystation12/Baystation12/pulls/11542","id":52123502,"html_url":"https://github.com/Baystation12/Baystation12/pull/11542","diff_url":"https://github.com/Baystation12/Baystation12/pull/11542.diff","patch_url":"https://github.com/Baystation12/Baystation12/pull/11542.patch","issue_url":"https://api.github.com/repos/Baystation12/Baystation12/issues/11542","number":11542,"state":"open","locked":false,"title":"Formalizes Bay coding standard.","user":{"login":"PsiOmegaDelta","id":496895,"avatar_url":"https://avatars.githubusercontent.com/u/496895?v=3","gravatar_id":"","url":"https://api.github.com/users/PsiOmegaDelta","html_url":"https://github.com/PsiOmegaDelta","followers_url":"https://api.github.com/users/PsiOmegaDelta/followers","following_url":"https://api.github.com/users/PsiOmegaDelta/following{/other_user}","gists_url":"https://api.github.com/users/PsiOmegaDelta/gists{/gist_id}","starred_url":"https://api.github.com/users/PsiOmegaDelta/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PsiOmegaDelta/subscriptions","organizations_url":"https://api.github.com/users/PsiOmegaDelta/orgs","repos_url":"https://api.github.com/users/PsiOmegaDelta/repos","events_url":"https://api.github.com/users/PsiOmegaDelta/events{/privacy}","received_events_url":"https://api.github.com/users/PsiOmegaDelta/received_events","type":"User","site_admin":false},"body":"Attempts to formalize some Bay coding standards. The last two paragraphs are by no means finished.\r\nI would have written more before the PR but I thought I might as well put it up for review anyway seeing how I've pushed it and all (not long before the laptop runs out of power).\r\n\r\nRFC.","created_at":"2015-11-30T13:28:36Z","updated_at":"2015-11-30T13:45:22Z","closed_at":null,"merged_at":null,"merge_commit_sha":"ab25a194aa7654962e086ebcf8797c63cc186ac8","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/Baystation12/Baystation12/pulls/11542/commits","review_comments_url":"https://api.github.com/repos/Baystation12/Baystation12/pulls/11542/comments","review_comment_url":"https://api.github.com/repos/Baystation12/Baystation12/pulls/comments{/number}","comments_url":"https://api.github.com/repos/Baystation12/Baystation12/issues/11542/comments","statuses_url":"https://api.github.com/repos/Baystation12/Baystation12/statuses/f594b9f26c3ca3f5455bb501bd830672a24fe663","head":{"label":"PsiOmegaDelta:151130-CodingStandards","ref":"151130-CodingStandards","sha":"f594b9f26c3ca3f5455bb501bd830672a24fe663","user":{"login":"PsiOmegaDelta","id":496895,"avatar_url":"https://avatars.githubusercontent.com/u/496895?v=3","gravatar_id":"","url":"https://api.github.com/users/PsiOmegaDelta","html_url":"https://github.com/PsiOmegaDelta","followers_url":"https://api.github.com/users/PsiOmegaDelta/followers","following_url":"https://api.github.com/users/PsiOmegaDelta/following{/other_user}","gists_url":"https://api.github.com/users/PsiOmegaDelta/gists{/gist_id}","starred_url":"https://api.github.com/users/PsiOmegaDelta/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PsiOmegaDelta/subscriptions","organizations_url":"https://api.github.com/users/PsiOmegaDelta/orgs","repos_url":"https://api.github.com/users/PsiOmegaDelta/repos","events_url":"https://api.github.com/users/PsiOmegaDelta/events{/privacy}","received_events_url":"https://api.github.com/users/PsiOmegaDelta/received_events","type":"User","site_admin":false},"repo":{"id":18328813,"name":"Baystation12","full_name":"PsiOmegaDelta/Baystation12","owner":{"login":"PsiOmegaDelta","id":496895,"avatar_url":"https://avatars.githubusercontent.com/u/496895?v=3","gravatar_id":"","url":"https://api.github.com/users/PsiOmegaDelta","html_url":"https://github.com/PsiOmegaDelta","followers_url":"https://api.github.com/users/PsiOmegaDelta/followers","following_url":"https://api.github.com/users/PsiOmegaDelta/following{/other_user}","gists_url":"https://api.github.com/users/PsiOmegaDelta/gists{/gist_id}","starred_url":"https://api.github.com/users/PsiOmegaDelta/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PsiOmegaDelta/subscriptions","organizations_url":"https://api.github.com/users/PsiOmegaDelta/orgs","repos_url":"https://api.github.com/users/PsiOmegaDelta/repos","events_url":"https://api.github.com/users/PsiOmegaDelta/events{/privacy}","received_events_url":"https://api.github.com/users/PsiOmegaDelta/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/PsiOmegaDelta/Baystation12","description":"The code for Baystation12's branch of SS13. Developers: please don't forget to update the changelog. Thanks!","fork":true,"url":"https://api.github.com/repos/PsiOmegaDelta/Baystation12","forks_url":"https://api.github.com/repos/PsiOmegaDelta/Baystation12/forks","keys_url":"https://api.github.com/repos/PsiOmegaDelta/Baystation12/keys{/key_id}","collaborators_url":"https://api.github.com/repos/PsiOmegaDelta/Baystation12/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/PsiOmegaDelta/Baystation12/teams","hooks_url":"https://api.github.com/repos/PsiOmegaDelta/Baystation12/hooks","issue_events_url":"https://api.github.com/repos/PsiOmegaDelta/Baystation12/issues/events{/number}","events_url":"https://api.github.com/repos/PsiOmegaDelta/Baystation12/events","assignees_url":"https://api.github.com/repos/PsiOmegaDelta/Baystation12/assignees{/user}","branches_url":"https://api.github.com/repos/PsiOmegaDelta/Baystation12/branches{/branch}","tags_url":"https://api.github.com/repos/PsiOmegaDelta/Baystation12/tags","blobs_url":"https://api.github.com/repos/PsiOmegaDelta/Baystation12/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/PsiOmegaDelta/Baystation12/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/PsiOmegaDelta/Baystation12/git/refs{/sha}","trees_url":"https://api.github.com/repos/PsiOmegaDelta/Baystation12/git/trees{/sha}","statuses_url":"https://api.github.com/repos/PsiOmegaDelta/Baystation12/statuses/{sha}","languages_url":"https://api.github.com/repos/PsiOmegaDelta/Baystation12/languages","stargazers_url":"https://api.github.com/repos/PsiOmegaDelta/Baystation12/stargazers","contributors_url":"https://api.github.com/repos/PsiOmegaDelta/Baystation12/contributors","subscribers_url":"https://api.github.com/repos/PsiOmegaDelta/Baystation12/subscribers","subscription_url":"https://api.github.com/repos/PsiOmegaDelta/Baystation12/subscription","commits_url":"https://api.github.com/repos/PsiOmegaDelta/Baystation12/commits{/sha}","git_commits_url":"https://api.github.com/repos/PsiOmegaDelta/Baystation12/git/commits{/sha}","comments_url":"https://api.github.com/repos/PsiOmegaDelta/Baystation12/comments{/number}","issue_comment_url":"https://api.github.com/repos/PsiOmegaDelta/Baystation12/issues/comments{/number}","contents_url":"https://api.github.com/repos/PsiOmegaDelta/Baystation12/contents/{+path}","compare_url":"https://api.github.com/repos/PsiOmegaDelta/Baystation12/compare/{base}...{head}","merges_url":"https://api.github.com/repos/PsiOmegaDelta/Baystation12/merges","archive_url":"https://api.github.com/repos/PsiOmegaDelta/Baystation12/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/PsiOmegaDelta/Baystation12/downloads","issues_url":"https://api.github.com/repos/PsiOmegaDelta/Baystation12/issues{/number}","pulls_url":"https://api.github.com/repos/PsiOmegaDelta/Baystation12/pulls{/number}","milestones_url":"https://api.github.com/repos/PsiOmegaDelta/Baystation12/milestones{/number}","notifications_url":"https://api.github.com/repos/PsiOmegaDelta/Baystation12/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/PsiOmegaDelta/Baystation12/labels{/name}","releases_url":"https://api.github.com/repos/PsiOmegaDelta/Baystation12/releases{/id}","created_at":"2014-04-01T12:34:43Z","updated_at":"2014-06-25T15:21:36Z","pushed_at":"2015-11-30T13:25:14Z","git_url":"git://github.com/PsiOmegaDelta/Baystation12.git","ssh_url":"git@github.com:PsiOmegaDelta/Baystation12.git","clone_url":"https://github.com/PsiOmegaDelta/Baystation12.git","svn_url":"https://github.com/PsiOmegaDelta/Baystation12","homepage":"http://baystation12.net/","size":630887,"stargazers_count":0,"watchers_count":0,"language":"DM","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":"Baystation12:master","ref":"master","sha":"18036e7da9f3e5528cb2b52bce0a9d74ae80c910","user":{"login":"Baystation12","id":1174322,"avatar_url":"https://avatars.githubusercontent.com/u/1174322?v=3","gravatar_id":"","url":"https://api.github.com/users/Baystation12","html_url":"https://github.com/Baystation12","followers_url":"https://api.github.com/users/Baystation12/followers","following_url":"https://api.github.com/users/Baystation12/following{/other_user}","gists_url":"https://api.github.com/users/Baystation12/gists{/gist_id}","starred_url":"https://api.github.com/users/Baystation12/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Baystation12/subscriptions","organizations_url":"https://api.github.com/users/Baystation12/orgs","repos_url":"https://api.github.com/users/Baystation12/repos","events_url":"https://api.github.com/users/Baystation12/events{/privacy}","received_events_url":"https://api.github.com/users/Baystation12/received_events","type":"Organization","site_admin":false},"repo":{"id":2715933,"name":"Baystation12","full_name":"Baystation12/Baystation12","owner":{"login":"Baystation12","id":1174322,"avatar_url":"https://avatars.githubusercontent.com/u/1174322?v=3","gravatar_id":"","url":"https://api.github.com/users/Baystation12","html_url":"https://github.com/Baystation12","followers_url":"https://api.github.com/users/Baystation12/followers","following_url":"https://api.github.com/users/Baystation12/following{/other_user}","gists_url":"https://api.github.com/users/Baystation12/gists{/gist_id}","starred_url":"https://api.github.com/users/Baystation12/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Baystation12/subscriptions","organizations_url":"https://api.github.com/users/Baystation12/orgs","repos_url":"https://api.github.com/users/Baystation12/repos","events_url":"https://api.github.com/users/Baystation12/events{/privacy}","received_events_url":"https://api.github.com/users/Baystation12/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/Baystation12/Baystation12","description":"The code for Baystation12's branch of SS13","fork":false,"url":"https://api.github.com/repos/Baystation12/Baystation12","forks_url":"https://api.github.com/repos/Baystation12/Baystation12/forks","keys_url":"https://api.github.com/repos/Baystation12/Baystation12/keys{/key_id}","collaborators_url":"https://api.github.com/repos/Baystation12/Baystation12/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/Baystation12/Baystation12/teams","hooks_url":"https://api.github.com/repos/Baystation12/Baystation12/hooks","issue_events_url":"https://api.github.com/repos/Baystation12/Baystation12/issues/events{/number}","events_url":"https://api.github.com/repos/Baystation12/Baystation12/events","assignees_url":"https://api.github.com/repos/Baystation12/Baystation12/assignees{/user}","branches_url":"https://api.github.com/repos/Baystation12/Baystation12/branches{/branch}","tags_url":"https://api.github.com/repos/Baystation12/Baystation12/tags","blobs_url":"https://api.github.com/repos/Baystation12/Baystation12/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/Baystation12/Baystation12/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/Baystation12/Baystation12/git/refs{/sha}","trees_url":"https://api.github.com/repos/Baystation12/Baystation12/git/trees{/sha}","statuses_url":"https://api.github.com/repos/Baystation12/Baystation12/statuses/{sha}","languages_url":"https://api.github.com/repos/Baystation12/Baystation12/languages","stargazers_url":"https://api.github.com/repos/Baystation12/Baystation12/stargazers","contributors_url":"https://api.github.com/repos/Baystation12/Baystation12/contributors","subscribers_url":"https://api.github.com/repos/Baystation12/Baystation12/subscribers","subscription_url":"https://api.github.com/repos/Baystation12/Baystation12/subscription","commits_url":"https://api.github.com/repos/Baystation12/Baystation12/commits{/sha}","git_commits_url":"https://api.github.com/repos/Baystation12/Baystation12/git/commits{/sha}","comments_url":"https://api.github.com/repos/Baystation12/Baystation12/comments{/number}","issue_comment_url":"https://api.github.com/repos/Baystation12/Baystation12/issues/comments{/number}","contents_url":"https://api.github.com/repos/Baystation12/Baystation12/contents/{+path}","compare_url":"https://api.github.com/repos/Baystation12/Baystation12/compare/{base}...{head}","merges_url":"https://api.github.com/repos/Baystation12/Baystation12/merges","archive_url":"https://api.github.com/repos/Baystation12/Baystation12/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/Baystation12/Baystation12/downloads","issues_url":"https://api.github.com/repos/Baystation12/Baystation12/issues{/number}","pulls_url":"https://api.github.com/repos/Baystation12/Baystation12/pulls{/number}","milestones_url":"https://api.github.com/repos/Baystation12/Baystation12/milestones{/number}","notifications_url":"https://api.github.com/repos/Baystation12/Baystation12/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/Baystation12/Baystation12/labels{/name}","releases_url":"https://api.github.com/repos/Baystation12/Baystation12/releases{/id}","created_at":"2011-11-05T16:12:41Z","updated_at":"2015-11-16T20:41:20Z","pushed_at":"2015-11-30T13:28:36Z","git_url":"git://github.com/Baystation12/Baystation12.git","ssh_url":"git@github.com:Baystation12/Baystation12.git","clone_url":"https://github.com/Baystation12/Baystation12.git","svn_url":"https://github.com/Baystation12/Baystation12","homepage":"http://baystation12.net/","size":1511340,"stargazers_count":204,"watchers_count":204,"language":"DM","has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":890,"mirror_url":null,"open_issues_count":363,"forks":890,"open_issues":363,"watchers":204,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/Baystation12/Baystation12/pulls/11542"},"html":{"href":"https://github.com/Baystation12/Baystation12/pull/11542"},"issue":{"href":"https://api.github.com/repos/Baystation12/Baystation12/issues/11542"},"comments":{"href":"https://api.github.com/repos/Baystation12/Baystation12/issues/11542/comments"},"review_comments":{"href":"https://api.github.com/repos/Baystation12/Baystation12/pulls/11542/comments"},"review_comment":{"href":"https://api.github.com/repos/Baystation12/Baystation12/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/Baystation12/Baystation12/pulls/11542/commits"},"statuses":{"href":"https://api.github.com/repos/Baystation12/Baystation12/statuses/f594b9f26c3ca3f5455bb501bd830672a24fe663"}}}}