{"action":"created","comment":{"url":"https://api.github.com/repos/Ultimaker/Meta/pulls/comments/214363052","pull_request_review_id":151359127,"id":214363052,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDIxNDM2MzA1Mg==","diff_hunk":"@@ -172,156 +125,46 @@ for (int i = 0; i < len; i++)\n     vector.resize(len);\n     vector[i] = j;\n }\n-~~~~~~~~~~~~~~~\n- * Binary operators (e.g. `+` `-` `*` `/` `=` `+=` `-=` `/=` `*=`) should be enclosed by a space at both sides, except for the operators `->`, `.`, `->*`, `.*`, `,` and `::`.\n- * After a comma (`,`) there should be a space - not before.\n- * For keywords with parentheses `(` and `)` (e.g. `if`, `for`, `while`, `switch`) there should be a space in between the keyword and the opening parenthesis.\n- * In the `for` statement: place a space after the `;`, but not before.\n- * When calling a function, place the opening parenthesis `(` of the parameters right after the function name, without inserting a space.\n- * When calling the index `[]` operator, don't insert a space before the `[`.\n-\n-\n-Static Typing (Python)\n---------\n-Normally, Python is using dynamic typing. For example:\n-~~~~~~~~~~~~~~~{.py}\n-def fib(n):\n-    a, b = 0, 1\n-    while a < n:\n-        yield a\n-        a, b = b, a + b\n-\n-x = fib(5)\n-y = fib(2.5)\n-~~~~~~~~~~~~~~~\n-which defines the a dynamically typed function to return the Fibonacci number.\n-This will be fine for x, but what will the result be for y?\n-\n-Adding more strict (static) typing can prevent these kinds of errors using tools like mypy (http://mypy-lang.org/):\n-~~~~~~~~~~~~~~~{.py}\n-from typing import Iterator\n-\n-def fib(n: int) -> Iterator[int]:\n-    a, b = 0, 1\n-    while a < n:\n-        yield a\n-        a, b = b, a + b\n-\n-x = fib(5)\n-y = fib(2.5)\n-~~~~~~~~~~~~~~~\n-In this case, mypy will inform that the call using the floating point value is not valid:\n-__mypytest.py:10: error: Argument 1 to \"fib\" has incompatible type \"float\"; expected \"int\"__\n-\n-This will help catch errors and unexpected bugs. This is not mandatory but strongly preferred and encouraged.\n-\n-Header files (C/C++)\n---------\n-Example for a file CuraEngine/src/folder/SomeClass.h (UpperCamelCase):\n-~~~~~~~~~~~~~~~{.cpp}\n-#ifndef (FOLDER_SOME_CLASS_H)\n-#define FOLDER_SOME_CLASS_H\n-\n-...\n-\n-#endif //FOLDER_SOME_CLASS_H\n-~~~~~~~~~~~~~~~\n-Each header file must include a header guard as shown above. The defined macro is adopted from the path and name of the class and must follow the rules for macros (UPPER_CASE).\n-Here the folder `src` is skipped, because all header and implementation files of CuraEngine are in `src`.\n-\n-Pointers and References C(++)\n-----\n-When declaring a variable the asterisk (*) and the ampersand (&) should be connected to the type, and there should be a space between it and the variable name.\n-~~~~~~~~~~~~~~~{.cpp}\n-Object& instance; // allowed\n-Object &instance; // not allowed\n-~~~~~~~~~~~~~~~\n-Multiple declarations are allowed, as long as the objects have the same type\n-~~~~~~~~~~~~~~~{.cpp}\n-Object instance, other; // allowed\n-Object* instance, other; // not allowed, the other variable is of type Object, rather than Object*\n-~~~~~~~~~~~~~~~\n-\n-\n-Null pointer (C++)\n-----\n-For C++, never use `NULL`, but use `nullptr` instead. NULL is an integer, not a pointer.\n+```\n \n-Ordering\n-----\n-* Members: Implement functions Top-Down, starting with constructors/deconstructors in case of classes. That way, a class implementation can be read as a page from a book: from top to bottom providing clarity. This can be an issue for declarative language constructs like C/C++ , but then it's good practice to use forward declarations.\n-* Go from public, protected to private. Reasoning behind this is similar. When using a class, one is more interested in the public items. For inheriting the protected ones can be interesting, while the private parts should only be meaningfull to the maintainer of the class. This helps with the OOP paradigm of implementation hiding.\n+## Ordering\n+Functions SHOULD be implemented Top-Down, starting with constructors/deconstructors (in case of classes). That way, a class implementation can be read as a page from a book: from top to bottom. This can be an issue for declarative language constructs like C/C++ , but it's good practice to use forward declarations in the first place.\n \n-Strings\n-----\n-Strings are double quotes. While python and php allow single and double quoted strings, and PEP8 only says \"pick a rule and stick to it\". We decided to do double quotes to match C++.\n+Go from public, protected to private. When using a class, one is usually more interested in the public items. For inheriting the protected ones can be interesting, while the private parts should only be meaningful to the maintainer of the class itself.\n \n-Lines and Linelength\n-----\n-* \"Maximum line length\" - There is no hard limit on the line length, but as a thumb of rule, try to keep it to at most 120 characters. This helps doing the code reviews!\n-* A single line contains only one statement\n+## Strings\n+Strings MUST be defined by using double quotes. While Python and PHP allow single and double quoted strings, we decided to do double quotes in order to match with C++.","path":"code_conventions.md","position":341,"original_position":341,"commit_id":"3a9d0e333c05f9180b830556b0bbeee4c3d1eddb","original_commit_id":"3a9d0e333c05f9180b830556b0bbeee4c3d1eddb","user":{"login":"daid","id":964186,"node_id":"MDQ6VXNlcjk2NDE4Ng==","avatar_url":"https://avatars0.githubusercontent.com/u/964186?v=4","gravatar_id":"","url":"https://api.github.com/users/daid","html_url":"https://github.com/daid","followers_url":"https://api.github.com/users/daid/followers","following_url":"https://api.github.com/users/daid/following{/other_user}","gists_url":"https://api.github.com/users/daid/gists{/gist_id}","starred_url":"https://api.github.com/users/daid/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/daid/subscriptions","organizations_url":"https://api.github.com/users/daid/orgs","repos_url":"https://api.github.com/users/daid/repos","events_url":"https://api.github.com/users/daid/events{/privacy}","received_events_url":"https://api.github.com/users/daid/received_events","type":"User","site_admin":false},"body":"This is double, the part about qoutes on strings.","created_at":"2018-08-31T14:00:57Z","updated_at":"2018-08-31T14:03:42Z","html_url":"https://github.com/Ultimaker/Meta/pull/7#discussion_r214363052","pull_request_url":"https://api.github.com/repos/Ultimaker/Meta/pulls/7","author_association":"MEMBER","_links":{"self":{"href":"https://api.github.com/repos/Ultimaker/Meta/pulls/comments/214363052"},"html":{"href":"https://github.com/Ultimaker/Meta/pull/7#discussion_r214363052"},"pull_request":{"href":"https://api.github.com/repos/Ultimaker/Meta/pulls/7"}}},"pull_request":{"url":"https://api.github.com/repos/Ultimaker/Meta/pulls/7","id":212353463,"node_id":"MDExOlB1bGxSZXF1ZXN0MjEyMzUzNDYz","html_url":"https://github.com/Ultimaker/Meta/pull/7","diff_url":"https://github.com/Ultimaker/Meta/pull/7.diff","patch_url":"https://github.com/Ultimaker/Meta/pull/7.patch","issue_url":"https://api.github.com/repos/Ultimaker/Meta/issues/7","number":7,"state":"open","locked":false,"title":"Codestyle updates","user":{"login":"nallath","id":3922611,"node_id":"MDQ6VXNlcjM5MjI2MTE=","avatar_url":"https://avatars0.githubusercontent.com/u/3922611?v=4","gravatar_id":"","url":"https://api.github.com/users/nallath","html_url":"https://github.com/nallath","followers_url":"https://api.github.com/users/nallath/followers","following_url":"https://api.github.com/users/nallath/following{/other_user}","gists_url":"https://api.github.com/users/nallath/gists{/gist_id}","starred_url":"https://api.github.com/users/nallath/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nallath/subscriptions","organizations_url":"https://api.github.com/users/nallath/orgs","repos_url":"https://api.github.com/users/nallath/repos","events_url":"https://api.github.com/users/nallath/events{/privacy}","received_events_url":"https://api.github.com/users/nallath/received_events","type":"User","site_admin":false},"body":"As discussed in the Architecture Guild; A nice bit of cleaning up for the coding & commit styles. ","created_at":"2018-08-31T11:24:09Z","updated_at":"2018-08-31T14:03:42Z","closed_at":null,"merged_at":null,"merge_commit_sha":"548f3300c1f6321a552a8ce056b1cb799e9ff4f2","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/Ultimaker/Meta/pulls/7/commits","review_comments_url":"https://api.github.com/repos/Ultimaker/Meta/pulls/7/comments","review_comment_url":"https://api.github.com/repos/Ultimaker/Meta/pulls/comments{/number}","comments_url":"https://api.github.com/repos/Ultimaker/Meta/issues/7/comments","statuses_url":"https://api.github.com/repos/Ultimaker/Meta/statuses/3a9d0e333c05f9180b830556b0bbeee4c3d1eddb","head":{"label":"Ultimaker:codestyle_updates","ref":"codestyle_updates","sha":"3a9d0e333c05f9180b830556b0bbeee4c3d1eddb","user":{"login":"Ultimaker","id":499557,"node_id":"MDEyOk9yZ2FuaXphdGlvbjQ5OTU1Nw==","avatar_url":"https://avatars1.githubusercontent.com/u/499557?v=4","gravatar_id":"","url":"https://api.github.com/users/Ultimaker","html_url":"https://github.com/Ultimaker","followers_url":"https://api.github.com/users/Ultimaker/followers","following_url":"https://api.github.com/users/Ultimaker/following{/other_user}","gists_url":"https://api.github.com/users/Ultimaker/gists{/gist_id}","starred_url":"https://api.github.com/users/Ultimaker/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Ultimaker/subscriptions","organizations_url":"https://api.github.com/users/Ultimaker/orgs","repos_url":"https://api.github.com/users/Ultimaker/repos","events_url":"https://api.github.com/users/Ultimaker/events{/privacy}","received_events_url":"https://api.github.com/users/Ultimaker/received_events","type":"Organization","site_admin":false},"repo":{"id":37859133,"node_id":"MDEwOlJlcG9zaXRvcnkzNzg1OTEzMw==","name":"Meta","full_name":"Ultimaker/Meta","owner":{"login":"Ultimaker","id":499557,"node_id":"MDEyOk9yZ2FuaXphdGlvbjQ5OTU1Nw==","avatar_url":"https://avatars1.githubusercontent.com/u/499557?v=4","gravatar_id":"","url":"https://api.github.com/users/Ultimaker","html_url":"https://github.com/Ultimaker","followers_url":"https://api.github.com/users/Ultimaker/followers","following_url":"https://api.github.com/users/Ultimaker/following{/other_user}","gists_url":"https://api.github.com/users/Ultimaker/gists{/gist_id}","starred_url":"https://api.github.com/users/Ultimaker/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Ultimaker/subscriptions","organizations_url":"https://api.github.com/users/Ultimaker/orgs","repos_url":"https://api.github.com/users/Ultimaker/repos","events_url":"https://api.github.com/users/Ultimaker/events{/privacy}","received_events_url":"https://api.github.com/users/Ultimaker/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/Ultimaker/Meta","description":"Ultimaker common stuff, utils, codestyles and everything else that needs a home.","fork":false,"url":"https://api.github.com/repos/Ultimaker/Meta","forks_url":"https://api.github.com/repos/Ultimaker/Meta/forks","keys_url":"https://api.github.com/repos/Ultimaker/Meta/keys{/key_id}","collaborators_url":"https://api.github.com/repos/Ultimaker/Meta/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/Ultimaker/Meta/teams","hooks_url":"https://api.github.com/repos/Ultimaker/Meta/hooks","issue_events_url":"https://api.github.com/repos/Ultimaker/Meta/issues/events{/number}","events_url":"https://api.github.com/repos/Ultimaker/Meta/events","assignees_url":"https://api.github.com/repos/Ultimaker/Meta/assignees{/user}","branches_url":"https://api.github.com/repos/Ultimaker/Meta/branches{/branch}","tags_url":"https://api.github.com/repos/Ultimaker/Meta/tags","blobs_url":"https://api.github.com/repos/Ultimaker/Meta/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/Ultimaker/Meta/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/Ultimaker/Meta/git/refs{/sha}","trees_url":"https://api.github.com/repos/Ultimaker/Meta/git/trees{/sha}","statuses_url":"https://api.github.com/repos/Ultimaker/Meta/statuses/{sha}","languages_url":"https://api.github.com/repos/Ultimaker/Meta/languages","stargazers_url":"https://api.github.com/repos/Ultimaker/Meta/stargazers","contributors_url":"https://api.github.com/repos/Ultimaker/Meta/contributors","subscribers_url":"https://api.github.com/repos/Ultimaker/Meta/subscribers","subscription_url":"https://api.github.com/repos/Ultimaker/Meta/subscription","commits_url":"https://api.github.com/repos/Ultimaker/Meta/commits{/sha}","git_commits_url":"https://api.github.com/repos/Ultimaker/Meta/git/commits{/sha}","comments_url":"https://api.github.com/repos/Ultimaker/Meta/comments{/number}","issue_comment_url":"https://api.github.com/repos/Ultimaker/Meta/issues/comments{/number}","contents_url":"https://api.github.com/repos/Ultimaker/Meta/contents/{+path}","compare_url":"https://api.github.com/repos/Ultimaker/Meta/compare/{base}...{head}","merges_url":"https://api.github.com/repos/Ultimaker/Meta/merges","archive_url":"https://api.github.com/repos/Ultimaker/Meta/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/Ultimaker/Meta/downloads","issues_url":"https://api.github.com/repos/Ultimaker/Meta/issues{/number}","pulls_url":"https://api.github.com/repos/Ultimaker/Meta/pulls{/number}","milestones_url":"https://api.github.com/repos/Ultimaker/Meta/milestones{/number}","notifications_url":"https://api.github.com/repos/Ultimaker/Meta/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/Ultimaker/Meta/labels{/name}","releases_url":"https://api.github.com/repos/Ultimaker/Meta/releases{/id}","deployments_url":"https://api.github.com/repos/Ultimaker/Meta/deployments","created_at":"2015-06-22T14:12:49Z","updated_at":"2018-08-31T14:02:54Z","pushed_at":"2018-08-31T14:02:53Z","git_url":"git://github.com/Ultimaker/Meta.git","ssh_url":"git@github.com:Ultimaker/Meta.git","clone_url":"https://github.com/Ultimaker/Meta.git","svn_url":"https://github.com/Ultimaker/Meta","homepage":null,"size":88,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":4,"mirror_url":null,"archived":false,"open_issues_count":1,"license":null,"forks":4,"open_issues":1,"watchers":0,"default_branch":"master"}},"base":{"label":"Ultimaker:master","ref":"master","sha":"cd522664099291a446be9c9f78de88177a75450a","user":{"login":"Ultimaker","id":499557,"node_id":"MDEyOk9yZ2FuaXphdGlvbjQ5OTU1Nw==","avatar_url":"https://avatars1.githubusercontent.com/u/499557?v=4","gravatar_id":"","url":"https://api.github.com/users/Ultimaker","html_url":"https://github.com/Ultimaker","followers_url":"https://api.github.com/users/Ultimaker/followers","following_url":"https://api.github.com/users/Ultimaker/following{/other_user}","gists_url":"https://api.github.com/users/Ultimaker/gists{/gist_id}","starred_url":"https://api.github.com/users/Ultimaker/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Ultimaker/subscriptions","organizations_url":"https://api.github.com/users/Ultimaker/orgs","repos_url":"https://api.github.com/users/Ultimaker/repos","events_url":"https://api.github.com/users/Ultimaker/events{/privacy}","received_events_url":"https://api.github.com/users/Ultimaker/received_events","type":"Organization","site_admin":false},"repo":{"id":37859133,"node_id":"MDEwOlJlcG9zaXRvcnkzNzg1OTEzMw==","name":"Meta","full_name":"Ultimaker/Meta","owner":{"login":"Ultimaker","id":499557,"node_id":"MDEyOk9yZ2FuaXphdGlvbjQ5OTU1Nw==","avatar_url":"https://avatars1.githubusercontent.com/u/499557?v=4","gravatar_id":"","url":"https://api.github.com/users/Ultimaker","html_url":"https://github.com/Ultimaker","followers_url":"https://api.github.com/users/Ultimaker/followers","following_url":"https://api.github.com/users/Ultimaker/following{/other_user}","gists_url":"https://api.github.com/users/Ultimaker/gists{/gist_id}","starred_url":"https://api.github.com/users/Ultimaker/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Ultimaker/subscriptions","organizations_url":"https://api.github.com/users/Ultimaker/orgs","repos_url":"https://api.github.com/users/Ultimaker/repos","events_url":"https://api.github.com/users/Ultimaker/events{/privacy}","received_events_url":"https://api.github.com/users/Ultimaker/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/Ultimaker/Meta","description":"Ultimaker common stuff, utils, codestyles and everything else that needs a home.","fork":false,"url":"https://api.github.com/repos/Ultimaker/Meta","forks_url":"https://api.github.com/repos/Ultimaker/Meta/forks","keys_url":"https://api.github.com/repos/Ultimaker/Meta/keys{/key_id}","collaborators_url":"https://api.github.com/repos/Ultimaker/Meta/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/Ultimaker/Meta/teams","hooks_url":"https://api.github.com/repos/Ultimaker/Meta/hooks","issue_events_url":"https://api.github.com/repos/Ultimaker/Meta/issues/events{/number}","events_url":"https://api.github.com/repos/Ultimaker/Meta/events","assignees_url":"https://api.github.com/repos/Ultimaker/Meta/assignees{/user}","branches_url":"https://api.github.com/repos/Ultimaker/Meta/branches{/branch}","tags_url":"https://api.github.com/repos/Ultimaker/Meta/tags","blobs_url":"https://api.github.com/repos/Ultimaker/Meta/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/Ultimaker/Meta/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/Ultimaker/Meta/git/refs{/sha}","trees_url":"https://api.github.com/repos/Ultimaker/Meta/git/trees{/sha}","statuses_url":"https://api.github.com/repos/Ultimaker/Meta/statuses/{sha}","languages_url":"https://api.github.com/repos/Ultimaker/Meta/languages","stargazers_url":"https://api.github.com/repos/Ultimaker/Meta/stargazers","contributors_url":"https://api.github.com/repos/Ultimaker/Meta/contributors","subscribers_url":"https://api.github.com/repos/Ultimaker/Meta/subscribers","subscription_url":"https://api.github.com/repos/Ultimaker/Meta/subscription","commits_url":"https://api.github.com/repos/Ultimaker/Meta/commits{/sha}","git_commits_url":"https://api.github.com/repos/Ultimaker/Meta/git/commits{/sha}","comments_url":"https://api.github.com/repos/Ultimaker/Meta/comments{/number}","issue_comment_url":"https://api.github.com/repos/Ultimaker/Meta/issues/comments{/number}","contents_url":"https://api.github.com/repos/Ultimaker/Meta/contents/{+path}","compare_url":"https://api.github.com/repos/Ultimaker/Meta/compare/{base}...{head}","merges_url":"https://api.github.com/repos/Ultimaker/Meta/merges","archive_url":"https://api.github.com/repos/Ultimaker/Meta/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/Ultimaker/Meta/downloads","issues_url":"https://api.github.com/repos/Ultimaker/Meta/issues{/number}","pulls_url":"https://api.github.com/repos/Ultimaker/Meta/pulls{/number}","milestones_url":"https://api.github.com/repos/Ultimaker/Meta/milestones{/number}","notifications_url":"https://api.github.com/repos/Ultimaker/Meta/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/Ultimaker/Meta/labels{/name}","releases_url":"https://api.github.com/repos/Ultimaker/Meta/releases{/id}","deployments_url":"https://api.github.com/repos/Ultimaker/Meta/deployments","created_at":"2015-06-22T14:12:49Z","updated_at":"2018-08-31T14:02:54Z","pushed_at":"2018-08-31T14:02:53Z","git_url":"git://github.com/Ultimaker/Meta.git","ssh_url":"git@github.com:Ultimaker/Meta.git","clone_url":"https://github.com/Ultimaker/Meta.git","svn_url":"https://github.com/Ultimaker/Meta","homepage":null,"size":88,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":4,"mirror_url":null,"archived":false,"open_issues_count":1,"license":null,"forks":4,"open_issues":1,"watchers":0,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/Ultimaker/Meta/pulls/7"},"html":{"href":"https://github.com/Ultimaker/Meta/pull/7"},"issue":{"href":"https://api.github.com/repos/Ultimaker/Meta/issues/7"},"comments":{"href":"https://api.github.com/repos/Ultimaker/Meta/issues/7/comments"},"review_comments":{"href":"https://api.github.com/repos/Ultimaker/Meta/pulls/7/comments"},"review_comment":{"href":"https://api.github.com/repos/Ultimaker/Meta/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/Ultimaker/Meta/pulls/7/commits"},"statuses":{"href":"https://api.github.com/repos/Ultimaker/Meta/statuses/3a9d0e333c05f9180b830556b0bbeee4c3d1eddb"}},"author_association":"CONTRIBUTOR"}}
{"actor":{"display_login":"daid"}}