{"action":"created","issue":{"url":"https://api.github.com/repos/Codewars/codewars-runner-cli/issues/405","repository_url":"https://api.github.com/repos/Codewars/codewars-runner-cli","labels_url":"https://api.github.com/repos/Codewars/codewars-runner-cli/issues/405/labels{/name}","comments_url":"https://api.github.com/repos/Codewars/codewars-runner-cli/issues/405/comments","events_url":"https://api.github.com/repos/Codewars/codewars-runner-cli/issues/405/events","html_url":"https://github.com/Codewars/codewars-runner-cli/pull/405","id":225233693,"number":405,"title":"Add Complete BF Support","user":{"login":"DonaldKellett","id":7777884,"avatar_url":"https://avatars0.githubusercontent.com/u/7777884?v=3","gravatar_id":"","url":"https://api.github.com/users/DonaldKellett","html_url":"https://github.com/DonaldKellett","followers_url":"https://api.github.com/users/DonaldKellett/followers","following_url":"https://api.github.com/users/DonaldKellett/following{/other_user}","gists_url":"https://api.github.com/users/DonaldKellett/gists{/gist_id}","starred_url":"https://api.github.com/users/DonaldKellett/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/DonaldKellett/subscriptions","organizations_url":"https://api.github.com/users/DonaldKellett/orgs","repos_url":"https://api.github.com/users/DonaldKellett/repos","events_url":"https://api.github.com/users/DonaldKellett/events{/privacy}","received_events_url":"https://api.github.com/users/DonaldKellett/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":47,"created_at":"2017-04-29T04:58:03Z","updated_at":"2017-05-06T04:48:12Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/Codewars/codewars-runner-cli/pulls/405","html_url":"https://github.com/Codewars/codewars-runner-cli/pull/405","diff_url":"https://github.com/Codewars/codewars-runner-cli/pull/405.diff","patch_url":"https://github.com/Codewars/codewars-runner-cli/pull/405.patch"},"body":"@jhoffner ,\r\n\r\nThis pull request aims to add the following features:\r\n\r\n- [x] Basic Execution Support of BF on Codewars\r\n- [x] Test Integration (using existing JavaScript CW-2 testing framework) to allow for BF Kata\r\n  - [x] Update `test/runners/bf_spec.js` to include suitable tests for `testIntegration`\r\n  - [x] Edit the `testIntegration` section of `lib/runners/bf.js` to include JavaScript CW-2 framework as testing option such that the newly added tests in the BF Spec pass without any issues\r\n  - [x] Update `.travis.yml` to ensure that Travis tests the `esolangs` image\r\n- [ ] Bug Fixing\r\n  - [ ] Allow extended ASCII characters to be read into the input stream without causing weird errors\r\n- [ ] Further Improvements\r\n  - [ ] Add tests for `<FAILED::>` cases\r\n  - [ ] Add tests for `<ERROR::>` cases\r\n  - [ ] Add `examples/bf.yml` and test them\r\n  - [ ] Add documentation\r\n    - [ ] Make special note of EOF handling - interpreter currently inputs `-1` to cell under pointer when this happens\r\n    - [ ] Give credit to http://www.hevanet.com/cristofd/brainfuck/epistle.html and refer to it whenever necessary\r\n  - [ ] Decide number of cells allowed (`-c`, defaults to `9999`) and document that - **IMPORTANT** - must configure to use `30000` cells as per the standard implementation\r\n  - [ ] Decide what to do with wraparound (`-w`, defaults to allow) and document that - use defaults\r\n\r\nAll related aspects of basic BF execution have been successfully tested in `test/runners/bf_spec.js` to confirm that it works.  As of 02/05/17, I have yet to add test integration to BF.\r\n\r\nIn terms of the large number of commits, I apologize for making this pull request look rather messy.  Since this is the first time I’ve actually tried to seriously use the Command Line, Git and Docker to add support to an entire language, I’ve hit quite a few roadblocks in the process which lead me to commit certain changes, only to make another commit to undo it.  I hope you don’t mind and will be able to merge this PR.\r\n\r\nCheers,\r\nDonaldKellett (donaldsebleung on Codewars)\r\n\r\nSpecial credits to @kazk for providing me all the help and support required throughout making this pull request; all this would not be possible without him/her :smile:"},"comment":{"url":"https://api.github.com/repos/Codewars/codewars-runner-cli/issues/comments/299615631","html_url":"https://github.com/Codewars/codewars-runner-cli/pull/405#issuecomment-299615631","issue_url":"https://api.github.com/repos/Codewars/codewars-runner-cli/issues/405","id":299615631,"user":{"login":"DonaldKellett","id":7777884,"avatar_url":"https://avatars0.githubusercontent.com/u/7777884?v=3","gravatar_id":"","url":"https://api.github.com/users/DonaldKellett","html_url":"https://github.com/DonaldKellett","followers_url":"https://api.github.com/users/DonaldKellett/followers","following_url":"https://api.github.com/users/DonaldKellett/following{/other_user}","gists_url":"https://api.github.com/users/DonaldKellett/gists{/gist_id}","starred_url":"https://api.github.com/users/DonaldKellett/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/DonaldKellett/subscriptions","organizations_url":"https://api.github.com/users/DonaldKellett/orgs","repos_url":"https://api.github.com/users/DonaldKellett/repos","events_url":"https://api.github.com/users/DonaldKellett/events{/privacy}","received_events_url":"https://api.github.com/users/DonaldKellett/received_events","type":"User","site_admin":false},"created_at":"2017-05-06T04:48:12Z","updated_at":"2017-05-06T04:48:12Z","body":"> Add `examples/bf.yml` and test them\r\n\r\nJust to clarify, but these two examples don't have to be \"Two Oldest Ages\" and pushing `\"codewars\"` to an empty array (however that's understood in the context of BF 😛), right?  I'm not an expert in writing BF programs and will seriously struggle with \"Two Oldest Ages\"."}}
{"actor":{"display_login":"DonaldKellett"}}