{"action":"created","comment":{"url":"https://api.github.com/repos/exercism/rust/pulls/comments/226445910","pull_request_review_id":166271355,"id":226445910,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDIyNjQ0NTkxMA==","diff_hunk":"@@ -0,0 +1,26 @@\n+#!/bin/bash\n+# Compile the 'exercise' crate and put it in the 'bin/' folder\n+\n+TRACK_ROOT=\"$(git rev-parse --show-toplevel)\"\n+\n+EXERCISE_CRATE_PATH=\"$TRACK_ROOT/exercise\"\n+\n+BIN_DIR_PATH=\"$TRACK_ROOT/bin\"\n+\n+(\n+\tcd \"$EXERCISE_CRATE_PATH\"\n+\n+\techo \"Building exercise crate\"\n+\n+\tcargo build --release\n+\n+\tRELEASE_PATH=\"$EXERCISE_CRATE_PATH/target/release/exercise\"\n+\n+\tif [ -f \"$RELEASE_PATH/exercise.exe\" ]; then","path":"bin/build_exercise_crate.sh","position":19,"original_position":19,"commit_id":"668ce12bb4b9662b985fc53bfae8b3d23ecc8289","original_commit_id":"668ce12bb4b9662b985fc53bfae8b3d23ecc8289","user":{"login":"coriolinus","id":7822926,"node_id":"MDQ6VXNlcjc4MjI5MjY=","avatar_url":"https://avatars3.githubusercontent.com/u/7822926?v=4","gravatar_id":"","url":"https://api.github.com/users/coriolinus","html_url":"https://github.com/coriolinus","followers_url":"https://api.github.com/users/coriolinus/followers","following_url":"https://api.github.com/users/coriolinus/following{/other_user}","gists_url":"https://api.github.com/users/coriolinus/gists{/gist_id}","starred_url":"https://api.github.com/users/coriolinus/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/coriolinus/subscriptions","organizations_url":"https://api.github.com/users/coriolinus/orgs","repos_url":"https://api.github.com/users/coriolinus/repos","events_url":"https://api.github.com/users/coriolinus/events{/privacy}","received_events_url":"https://api.github.com/users/coriolinus/received_events","type":"User","site_admin":false},"body":"This will never be true. It needs to be written like\r\n```suggestion\r\n\tif [ -f \"$RELEASE_PATH.exe\" ]; then\r\n```","created_at":"2018-10-18T20:02:57Z","updated_at":"2018-10-18T20:02:57Z","html_url":"https://github.com/exercism/rust/pull/660#discussion_r226445910","pull_request_url":"https://api.github.com/repos/exercism/rust/pulls/660","author_association":"CONTRIBUTOR","_links":{"self":{"href":"https://api.github.com/repos/exercism/rust/pulls/comments/226445910"},"html":{"href":"https://github.com/exercism/rust/pull/660#discussion_r226445910"},"pull_request":{"href":"https://api.github.com/repos/exercism/rust/pulls/660"}}},"pull_request":{"url":"https://api.github.com/repos/exercism/rust/pulls/660","id":216243662,"node_id":"MDExOlB1bGxSZXF1ZXN0MjE2MjQzNjYy","html_url":"https://github.com/exercism/rust/pull/660","diff_url":"https://github.com/exercism/rust/pull/660.diff","patch_url":"https://github.com/exercism/rust/pull/660.patch","issue_url":"https://api.github.com/repos/exercism/rust/issues/660","number":660,"state":"open","locked":false,"title":"Rewrite bin/init_exercise.py in Rust","user":{"login":"ZapAnton","id":8658767,"node_id":"MDQ6VXNlcjg2NTg3Njc=","avatar_url":"https://avatars0.githubusercontent.com/u/8658767?v=4","gravatar_id":"","url":"https://api.github.com/users/ZapAnton","html_url":"https://github.com/ZapAnton","followers_url":"https://api.github.com/users/ZapAnton/followers","following_url":"https://api.github.com/users/ZapAnton/following{/other_user}","gists_url":"https://api.github.com/users/ZapAnton/gists{/gist_id}","starred_url":"https://api.github.com/users/ZapAnton/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ZapAnton/subscriptions","organizations_url":"https://api.github.com/users/ZapAnton/orgs","repos_url":"https://api.github.com/users/ZapAnton/repos","events_url":"https://api.github.com/users/ZapAnton/events{/privacy}","received_events_url":"https://api.github.com/users/ZapAnton/received_events","type":"User","site_admin":false},"body":"The purpose of this PR is to replace the functionality of the existing `bin/init_exersice.py` script with the Rust crate `exercise` and to add additional functionality as per #641.\r\n\r\nIt is opened as `In Progress` in order for maintainers to track any undesirable decisions/functionality in the new crate, since it is a medium-complexity project, so disagreements may arise.\r\n\r\nIn addition to the future suggestions the current work plan looks like this:\r\n\r\n### Major Tasks\r\n- Reach an agreement on the new crate's API/commands\r\n- Implement `configure` subcommand\r\n- Implement `update` subcommand\r\n- Update the docs to mention the usage of the new crate\r\n\r\n### Minor Tasks\r\n- Add any missing comments/fields from the `canonical-data.json` to the generated test suite\r\n- Improve the crate's functions documentation\r\n- Prettify the generated test suite when the `maplit` crate is used. Currently it is an unreadable mess and `rustfmt` does not help\r\n- General refactoring. I am not the most prominent rustcean out there, so my solutions for the problem may not be the most optimal\r\n\r\nNote that as per https://github.com/exercism/rust/issues/641#issuecomment-418722003 the crate name is changed from `init_exercise` to `exercise`, so the prefix in the commit messages is changed from `init_exercise:` to `exercise:` accordingly\r\n\r\nIf this PR is merged, closes #641","created_at":"2018-09-18T09:38:56Z","updated_at":"2018-10-18T20:02:57Z","closed_at":null,"merged_at":null,"merge_commit_sha":"136479dbbffdd8c84ee46cf12f59ba5a2b307908","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/exercism/rust/pulls/660/commits","review_comments_url":"https://api.github.com/repos/exercism/rust/pulls/660/comments","review_comment_url":"https://api.github.com/repos/exercism/rust/pulls/comments{/number}","comments_url":"https://api.github.com/repos/exercism/rust/issues/660/comments","statuses_url":"https://api.github.com/repos/exercism/rust/statuses/668ce12bb4b9662b985fc53bfae8b3d23ecc8289","head":{"label":"ZapAnton:riir_init_exercise","ref":"riir_init_exercise","sha":"668ce12bb4b9662b985fc53bfae8b3d23ecc8289","user":{"login":"ZapAnton","id":8658767,"node_id":"MDQ6VXNlcjg2NTg3Njc=","avatar_url":"https://avatars0.githubusercontent.com/u/8658767?v=4","gravatar_id":"","url":"https://api.github.com/users/ZapAnton","html_url":"https://github.com/ZapAnton","followers_url":"https://api.github.com/users/ZapAnton/followers","following_url":"https://api.github.com/users/ZapAnton/following{/other_user}","gists_url":"https://api.github.com/users/ZapAnton/gists{/gist_id}","starred_url":"https://api.github.com/users/ZapAnton/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ZapAnton/subscriptions","organizations_url":"https://api.github.com/users/ZapAnton/orgs","repos_url":"https://api.github.com/users/ZapAnton/repos","events_url":"https://api.github.com/users/ZapAnton/events{/privacy}","received_events_url":"https://api.github.com/users/ZapAnton/received_events","type":"User","site_admin":false},"repo":{"id":137213774,"node_id":"MDEwOlJlcG9zaXRvcnkxMzcyMTM3NzQ=","name":"rust","full_name":"ZapAnton/rust","private":false,"owner":{"login":"ZapAnton","id":8658767,"node_id":"MDQ6VXNlcjg2NTg3Njc=","avatar_url":"https://avatars0.githubusercontent.com/u/8658767?v=4","gravatar_id":"","url":"https://api.github.com/users/ZapAnton","html_url":"https://github.com/ZapAnton","followers_url":"https://api.github.com/users/ZapAnton/followers","following_url":"https://api.github.com/users/ZapAnton/following{/other_user}","gists_url":"https://api.github.com/users/ZapAnton/gists{/gist_id}","starred_url":"https://api.github.com/users/ZapAnton/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ZapAnton/subscriptions","organizations_url":"https://api.github.com/users/ZapAnton/orgs","repos_url":"https://api.github.com/users/ZapAnton/repos","events_url":"https://api.github.com/users/ZapAnton/events{/privacy}","received_events_url":"https://api.github.com/users/ZapAnton/received_events","type":"User","site_admin":false},"html_url":"https://github.com/ZapAnton/rust","description":"Exercism exercises in Rust.","fork":true,"url":"https://api.github.com/repos/ZapAnton/rust","forks_url":"https://api.github.com/repos/ZapAnton/rust/forks","keys_url":"https://api.github.com/repos/ZapAnton/rust/keys{/key_id}","collaborators_url":"https://api.github.com/repos/ZapAnton/rust/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/ZapAnton/rust/teams","hooks_url":"https://api.github.com/repos/ZapAnton/rust/hooks","issue_events_url":"https://api.github.com/repos/ZapAnton/rust/issues/events{/number}","events_url":"https://api.github.com/repos/ZapAnton/rust/events","assignees_url":"https://api.github.com/repos/ZapAnton/rust/assignees{/user}","branches_url":"https://api.github.com/repos/ZapAnton/rust/branches{/branch}","tags_url":"https://api.github.com/repos/ZapAnton/rust/tags","blobs_url":"https://api.github.com/repos/ZapAnton/rust/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/ZapAnton/rust/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/ZapAnton/rust/git/refs{/sha}","trees_url":"https://api.github.com/repos/ZapAnton/rust/git/trees{/sha}","statuses_url":"https://api.github.com/repos/ZapAnton/rust/statuses/{sha}","languages_url":"https://api.github.com/repos/ZapAnton/rust/languages","stargazers_url":"https://api.github.com/repos/ZapAnton/rust/stargazers","contributors_url":"https://api.github.com/repos/ZapAnton/rust/contributors","subscribers_url":"https://api.github.com/repos/ZapAnton/rust/subscribers","subscription_url":"https://api.github.com/repos/ZapAnton/rust/subscription","commits_url":"https://api.github.com/repos/ZapAnton/rust/commits{/sha}","git_commits_url":"https://api.github.com/repos/ZapAnton/rust/git/commits{/sha}","comments_url":"https://api.github.com/repos/ZapAnton/rust/comments{/number}","issue_comment_url":"https://api.github.com/repos/ZapAnton/rust/issues/comments{/number}","contents_url":"https://api.github.com/repos/ZapAnton/rust/contents/{+path}","compare_url":"https://api.github.com/repos/ZapAnton/rust/compare/{base}...{head}","merges_url":"https://api.github.com/repos/ZapAnton/rust/merges","archive_url":"https://api.github.com/repos/ZapAnton/rust/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/ZapAnton/rust/downloads","issues_url":"https://api.github.com/repos/ZapAnton/rust/issues{/number}","pulls_url":"https://api.github.com/repos/ZapAnton/rust/pulls{/number}","milestones_url":"https://api.github.com/repos/ZapAnton/rust/milestones{/number}","notifications_url":"https://api.github.com/repos/ZapAnton/rust/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/ZapAnton/rust/labels{/name}","releases_url":"https://api.github.com/repos/ZapAnton/rust/releases{/id}","deployments_url":"https://api.github.com/repos/ZapAnton/rust/deployments","created_at":"2018-06-13T12:40:22Z","updated_at":"2018-10-03T07:48:04Z","pushed_at":"2018-10-18T16:13:17Z","git_url":"git://github.com/ZapAnton/rust.git","ssh_url":"git@github.com:ZapAnton/rust.git","clone_url":"https://github.com/ZapAnton/rust.git","svn_url":"https://github.com/ZapAnton/rust","homepage":"http://exercism.io/languages/rust","size":1357,"stargazers_count":0,"watchers_count":0,"language":"Rust","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":0,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"exercism:master","ref":"master","sha":"c2362c37e5e702a88f6c1a7b80d37f0fd7643a27","user":{"login":"exercism","id":5624255,"node_id":"MDEyOk9yZ2FuaXphdGlvbjU2MjQyNTU=","avatar_url":"https://avatars0.githubusercontent.com/u/5624255?v=4","gravatar_id":"","url":"https://api.github.com/users/exercism","html_url":"https://github.com/exercism","followers_url":"https://api.github.com/users/exercism/followers","following_url":"https://api.github.com/users/exercism/following{/other_user}","gists_url":"https://api.github.com/users/exercism/gists{/gist_id}","starred_url":"https://api.github.com/users/exercism/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/exercism/subscriptions","organizations_url":"https://api.github.com/users/exercism/orgs","repos_url":"https://api.github.com/users/exercism/repos","events_url":"https://api.github.com/users/exercism/events{/privacy}","received_events_url":"https://api.github.com/users/exercism/received_events","type":"Organization","site_admin":false},"repo":{"id":17276332,"node_id":"MDEwOlJlcG9zaXRvcnkxNzI3NjMzMg==","name":"rust","full_name":"exercism/rust","private":false,"owner":{"login":"exercism","id":5624255,"node_id":"MDEyOk9yZ2FuaXphdGlvbjU2MjQyNTU=","avatar_url":"https://avatars0.githubusercontent.com/u/5624255?v=4","gravatar_id":"","url":"https://api.github.com/users/exercism","html_url":"https://github.com/exercism","followers_url":"https://api.github.com/users/exercism/followers","following_url":"https://api.github.com/users/exercism/following{/other_user}","gists_url":"https://api.github.com/users/exercism/gists{/gist_id}","starred_url":"https://api.github.com/users/exercism/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/exercism/subscriptions","organizations_url":"https://api.github.com/users/exercism/orgs","repos_url":"https://api.github.com/users/exercism/repos","events_url":"https://api.github.com/users/exercism/events{/privacy}","received_events_url":"https://api.github.com/users/exercism/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/exercism/rust","description":"Exercism exercises in Rust.","fork":false,"url":"https://api.github.com/repos/exercism/rust","forks_url":"https://api.github.com/repos/exercism/rust/forks","keys_url":"https://api.github.com/repos/exercism/rust/keys{/key_id}","collaborators_url":"https://api.github.com/repos/exercism/rust/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/exercism/rust/teams","hooks_url":"https://api.github.com/repos/exercism/rust/hooks","issue_events_url":"https://api.github.com/repos/exercism/rust/issues/events{/number}","events_url":"https://api.github.com/repos/exercism/rust/events","assignees_url":"https://api.github.com/repos/exercism/rust/assignees{/user}","branches_url":"https://api.github.com/repos/exercism/rust/branches{/branch}","tags_url":"https://api.github.com/repos/exercism/rust/tags","blobs_url":"https://api.github.com/repos/exercism/rust/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/exercism/rust/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/exercism/rust/git/refs{/sha}","trees_url":"https://api.github.com/repos/exercism/rust/git/trees{/sha}","statuses_url":"https://api.github.com/repos/exercism/rust/statuses/{sha}","languages_url":"https://api.github.com/repos/exercism/rust/languages","stargazers_url":"https://api.github.com/repos/exercism/rust/stargazers","contributors_url":"https://api.github.com/repos/exercism/rust/contributors","subscribers_url":"https://api.github.com/repos/exercism/rust/subscribers","subscription_url":"https://api.github.com/repos/exercism/rust/subscription","commits_url":"https://api.github.com/repos/exercism/rust/commits{/sha}","git_commits_url":"https://api.github.com/repos/exercism/rust/git/commits{/sha}","comments_url":"https://api.github.com/repos/exercism/rust/comments{/number}","issue_comment_url":"https://api.github.com/repos/exercism/rust/issues/comments{/number}","contents_url":"https://api.github.com/repos/exercism/rust/contents/{+path}","compare_url":"https://api.github.com/repos/exercism/rust/compare/{base}...{head}","merges_url":"https://api.github.com/repos/exercism/rust/merges","archive_url":"https://api.github.com/repos/exercism/rust/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/exercism/rust/downloads","issues_url":"https://api.github.com/repos/exercism/rust/issues{/number}","pulls_url":"https://api.github.com/repos/exercism/rust/pulls{/number}","milestones_url":"https://api.github.com/repos/exercism/rust/milestones{/number}","notifications_url":"https://api.github.com/repos/exercism/rust/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/exercism/rust/labels{/name}","releases_url":"https://api.github.com/repos/exercism/rust/releases{/id}","deployments_url":"https://api.github.com/repos/exercism/rust/deployments","created_at":"2014-02-28T05:33:52Z","updated_at":"2018-10-17T20:47:30Z","pushed_at":"2018-10-18T16:13:19Z","git_url":"git://github.com/exercism/rust.git","ssh_url":"git@github.com:exercism/rust.git","clone_url":"https://github.com/exercism/rust.git","svn_url":"https://github.com/exercism/rust","homepage":"http://exercism.io/languages/rust","size":1305,"stargazers_count":261,"watchers_count":261,"language":"Rust","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":145,"mirror_url":null,"archived":false,"open_issues_count":11,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"forks":145,"open_issues":11,"watchers":261,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/exercism/rust/pulls/660"},"html":{"href":"https://github.com/exercism/rust/pull/660"},"issue":{"href":"https://api.github.com/repos/exercism/rust/issues/660"},"comments":{"href":"https://api.github.com/repos/exercism/rust/issues/660/comments"},"review_comments":{"href":"https://api.github.com/repos/exercism/rust/pulls/660/comments"},"review_comment":{"href":"https://api.github.com/repos/exercism/rust/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/exercism/rust/pulls/660/commits"},"statuses":{"href":"https://api.github.com/repos/exercism/rust/statuses/668ce12bb4b9662b985fc53bfae8b3d23ecc8289"}},"author_association":"CONTRIBUTOR"}}
{"actor":{"display_login":"coriolinus"}}