{"action":"created","comment":{"url":"https://api.github.com/repos/shoes/shoes4/pulls/comments/93365254","pull_request_review_id":13890526,"id":93365254,"diff_hunk":"@@ -308,15 +308,37 @@ def sound(soundfile, opts = {}, &blk)\n       Shoes::Sound.new @__app__, soundfile, opts, &blk\n     end\n \n-    # Creates an arrow centered at (left, top)\n+    # Creates an arrow\n     #\n-    # @param [Integer] left the x-coordinate of the element center\n-    # @param [Integer] top the y-coordinate of the element center\n-    # @param [Integer] width width of the arrow\n-    # @param [Hash] opts Arrow style options\n-    # @option opts [Integer] rotate (false)\n-    def arrow(left, top, width, styles = {}, &blk)\n-      create Shoes::Arrow, left, top, width, styles, blk\n+    # @overload arrow(left, top, width, opts)\n+    #   Creates an arrow centered at (left, top)\n+    #   @param [Integer] left the x-coordinate of the element center\n+    #   @param [Integer] top the y-coordinate of the element center\n+    #   @param [Integer] width width of the arrow","path":"shoes-core/lib/shoes/dsl.rb","position":18,"original_position":18,"commit_id":"ed4d00fd8e4407480df788befb644368b864c497","original_commit_id":"ed4d00fd8e4407480df788befb644368b864c497","user":{"login":"jasonrclark","id":130504,"avatar_url":"https://avatars.githubusercontent.com/u/130504?v=3","gravatar_id":"","url":"https://api.github.com/users/jasonrclark","html_url":"https://github.com/jasonrclark","followers_url":"https://api.github.com/users/jasonrclark/followers","following_url":"https://api.github.com/users/jasonrclark/following{/other_user}","gists_url":"https://api.github.com/users/jasonrclark/gists{/gist_id}","starred_url":"https://api.github.com/users/jasonrclark/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jasonrclark/subscriptions","organizations_url":"https://api.github.com/users/jasonrclark/orgs","repos_url":"https://api.github.com/users/jasonrclark/repos","events_url":"https://api.github.com/users/jasonrclark/events{/privacy}","received_events_url":"https://api.github.com/users/jasonrclark/received_events","type":"User","site_admin":false},"body":"Actually not a typo--first word is parameter, everything remaining is description. Could maybe add intervening \"the\" like other descriptions so it doesn't look mangled though.","created_at":"2016-12-21T02:33:56Z","updated_at":"2016-12-21T02:33:56Z","html_url":"https://github.com/shoes/shoes4/pull/1336#discussion_r93365254","pull_request_url":"https://api.github.com/repos/shoes/shoes4/pulls/1336","_links":{"self":{"href":"https://api.github.com/repos/shoes/shoes4/pulls/comments/93365254"},"html":{"href":"https://github.com/shoes/shoes4/pull/1336#discussion_r93365254"},"pull_request":{"href":"https://api.github.com/repos/shoes/shoes4/pulls/1336"}}},"pull_request":{"url":"https://api.github.com/repos/shoes/shoes4/pulls/1336","id":98689284,"html_url":"https://github.com/shoes/shoes4/pull/1336","diff_url":"https://github.com/shoes/shoes4/pull/1336.diff","patch_url":"https://github.com/shoes/shoes4/pull/1336.patch","issue_url":"https://api.github.com/repos/shoes/shoes4/issues/1336","number":1336,"state":"open","locked":false,"title":"Make arrow API compatible with Shoes 3","user":{"login":"jasonrclark","id":130504,"avatar_url":"https://avatars.githubusercontent.com/u/130504?v=3","gravatar_id":"","url":"https://api.github.com/users/jasonrclark","html_url":"https://github.com/jasonrclark","followers_url":"https://api.github.com/users/jasonrclark/followers","following_url":"https://api.github.com/users/jasonrclark/following{/other_user}","gists_url":"https://api.github.com/users/jasonrclark/gists{/gist_id}","starred_url":"https://api.github.com/users/jasonrclark/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jasonrclark/subscriptions","organizations_url":"https://api.github.com/users/jasonrclark/orgs","repos_url":"https://api.github.com/users/jasonrclark/repos","events_url":"https://api.github.com/users/jasonrclark/events{/privacy}","received_events_url":"https://api.github.com/users/jasonrclark/received_events","type":"User","site_admin":false},"body":"Fixes #1332 \r\n\r\nAs reported in that issue, we had some incompatibilities with the Shoes 3 API on `arrow`. In particular, tutorials called it with just an options hash which Shoes 4 wasn't allowing. ⬇️ \r\n\r\nTurns out on further testing Shoes 3 allows any number of arguments you want! Values that aren't provided explicitly are defaulted to what's in the options hash (and treated as 0/false if missing from there). :zero: \r\n\r\nI've allowed some of that flexibility, but deviated in one spot from precisely matching Shoes 3. If you provide *too many* explicit arguments, I'll give you an `ArgumentError`. It seems kinder than allowing blatantly bad data. 🔪 \r\n\r\nI also chose in the method docs not to individually call out every variation that's actually supported, but just the full and options-only flavors. 📚 \r\n\r\nNote that the behavior I saw when not giving enough args (where the arrow was \"invisible\") is just a consequence of the `width` being 0. I didn't even need to code anything explicitly to get Shoes 4 behaving the same--it just fell out of the implementation. 🎉 \r\n\r\nThis was partially missed because I neglected to add DSL specs for `arrow` (d'oh!) which I've added in all their spec-ish glory. 👼 \r\n\r\nBased on @snood1205's fine footwork on the tutorial, I suspect that even the DSL methods we've got covered by specs have gaps though. Before `pre8` I'm going to do a comprehensive survey of all of them and get our 🏠 in order once and for all.","created_at":"2016-12-20T05:34:30Z","updated_at":"2016-12-21T02:33:56Z","closed_at":null,"merged_at":null,"merge_commit_sha":"ffae22e2a6de2fa235e482fc4c896c44aabf8965","assignee":null,"assignees":[],"milestone":null,"commits_url":"https://api.github.com/repos/shoes/shoes4/pulls/1336/commits","review_comments_url":"https://api.github.com/repos/shoes/shoes4/pulls/1336/comments","review_comment_url":"https://api.github.com/repos/shoes/shoes4/pulls/comments{/number}","comments_url":"https://api.github.com/repos/shoes/shoes4/issues/1336/comments","statuses_url":"https://api.github.com/repos/shoes/shoes4/statuses/ed4d00fd8e4407480df788befb644368b864c497","head":{"label":"shoes:arrow-compatibility","ref":"arrow-compatibility","sha":"ed4d00fd8e4407480df788befb644368b864c497","user":{"login":"shoes","id":119935,"avatar_url":"https://avatars.githubusercontent.com/u/119935?v=3","gravatar_id":"","url":"https://api.github.com/users/shoes","html_url":"https://github.com/shoes","followers_url":"https://api.github.com/users/shoes/followers","following_url":"https://api.github.com/users/shoes/following{/other_user}","gists_url":"https://api.github.com/users/shoes/gists{/gist_id}","starred_url":"https://api.github.com/users/shoes/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/shoes/subscriptions","organizations_url":"https://api.github.com/users/shoes/orgs","repos_url":"https://api.github.com/users/shoes/repos","events_url":"https://api.github.com/users/shoes/events{/privacy}","received_events_url":"https://api.github.com/users/shoes/received_events","type":"Organization","site_admin":false},"repo":{"id":4434126,"name":"shoes4","full_name":"shoes/shoes4","owner":{"login":"shoes","id":119935,"avatar_url":"https://avatars.githubusercontent.com/u/119935?v=3","gravatar_id":"","url":"https://api.github.com/users/shoes","html_url":"https://github.com/shoes","followers_url":"https://api.github.com/users/shoes/followers","following_url":"https://api.github.com/users/shoes/following{/other_user}","gists_url":"https://api.github.com/users/shoes/gists{/gist_id}","starred_url":"https://api.github.com/users/shoes/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/shoes/subscriptions","organizations_url":"https://api.github.com/users/shoes/orgs","repos_url":"https://api.github.com/users/shoes/repos","events_url":"https://api.github.com/users/shoes/events{/privacy}","received_events_url":"https://api.github.com/users/shoes/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/shoes/shoes4","description":"Shoes 4 : the next version of Shoes","fork":false,"url":"https://api.github.com/repos/shoes/shoes4","forks_url":"https://api.github.com/repos/shoes/shoes4/forks","keys_url":"https://api.github.com/repos/shoes/shoes4/keys{/key_id}","collaborators_url":"https://api.github.com/repos/shoes/shoes4/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/shoes/shoes4/teams","hooks_url":"https://api.github.com/repos/shoes/shoes4/hooks","issue_events_url":"https://api.github.com/repos/shoes/shoes4/issues/events{/number}","events_url":"https://api.github.com/repos/shoes/shoes4/events","assignees_url":"https://api.github.com/repos/shoes/shoes4/assignees{/user}","branches_url":"https://api.github.com/repos/shoes/shoes4/branches{/branch}","tags_url":"https://api.github.com/repos/shoes/shoes4/tags","blobs_url":"https://api.github.com/repos/shoes/shoes4/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/shoes/shoes4/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/shoes/shoes4/git/refs{/sha}","trees_url":"https://api.github.com/repos/shoes/shoes4/git/trees{/sha}","statuses_url":"https://api.github.com/repos/shoes/shoes4/statuses/{sha}","languages_url":"https://api.github.com/repos/shoes/shoes4/languages","stargazers_url":"https://api.github.com/repos/shoes/shoes4/stargazers","contributors_url":"https://api.github.com/repos/shoes/shoes4/contributors","subscribers_url":"https://api.github.com/repos/shoes/shoes4/subscribers","subscription_url":"https://api.github.com/repos/shoes/shoes4/subscription","commits_url":"https://api.github.com/repos/shoes/shoes4/commits{/sha}","git_commits_url":"https://api.github.com/repos/shoes/shoes4/git/commits{/sha}","comments_url":"https://api.github.com/repos/shoes/shoes4/comments{/number}","issue_comment_url":"https://api.github.com/repos/shoes/shoes4/issues/comments{/number}","contents_url":"https://api.github.com/repos/shoes/shoes4/contents/{+path}","compare_url":"https://api.github.com/repos/shoes/shoes4/compare/{base}...{head}","merges_url":"https://api.github.com/repos/shoes/shoes4/merges","archive_url":"https://api.github.com/repos/shoes/shoes4/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/shoes/shoes4/downloads","issues_url":"https://api.github.com/repos/shoes/shoes4/issues{/number}","pulls_url":"https://api.github.com/repos/shoes/shoes4/pulls{/number}","milestones_url":"https://api.github.com/repos/shoes/shoes4/milestones{/number}","notifications_url":"https://api.github.com/repos/shoes/shoes4/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/shoes/shoes4/labels{/name}","releases_url":"https://api.github.com/repos/shoes/shoes4/releases{/id}","deployments_url":"https://api.github.com/repos/shoes/shoes4/deployments","created_at":"2012-05-24T14:57:59Z","updated_at":"2016-12-18T19:57:13Z","pushed_at":"2016-12-20T08:28:37Z","git_url":"git://github.com/shoes/shoes4.git","ssh_url":"git@github.com:shoes/shoes4.git","clone_url":"https://github.com/shoes/shoes4.git","svn_url":"https://github.com/shoes/shoes4","homepage":"","size":55552,"stargazers_count":1045,"watchers_count":1045,"language":"Ruby","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":172,"mirror_url":null,"open_issues_count":137,"forks":172,"open_issues":137,"watchers":1045,"default_branch":"master"}},"base":{"label":"shoes:master","ref":"master","sha":"d12616a0014ba8f5655ee81517818d793d566663","user":{"login":"shoes","id":119935,"avatar_url":"https://avatars.githubusercontent.com/u/119935?v=3","gravatar_id":"","url":"https://api.github.com/users/shoes","html_url":"https://github.com/shoes","followers_url":"https://api.github.com/users/shoes/followers","following_url":"https://api.github.com/users/shoes/following{/other_user}","gists_url":"https://api.github.com/users/shoes/gists{/gist_id}","starred_url":"https://api.github.com/users/shoes/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/shoes/subscriptions","organizations_url":"https://api.github.com/users/shoes/orgs","repos_url":"https://api.github.com/users/shoes/repos","events_url":"https://api.github.com/users/shoes/events{/privacy}","received_events_url":"https://api.github.com/users/shoes/received_events","type":"Organization","site_admin":false},"repo":{"id":4434126,"name":"shoes4","full_name":"shoes/shoes4","owner":{"login":"shoes","id":119935,"avatar_url":"https://avatars.githubusercontent.com/u/119935?v=3","gravatar_id":"","url":"https://api.github.com/users/shoes","html_url":"https://github.com/shoes","followers_url":"https://api.github.com/users/shoes/followers","following_url":"https://api.github.com/users/shoes/following{/other_user}","gists_url":"https://api.github.com/users/shoes/gists{/gist_id}","starred_url":"https://api.github.com/users/shoes/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/shoes/subscriptions","organizations_url":"https://api.github.com/users/shoes/orgs","repos_url":"https://api.github.com/users/shoes/repos","events_url":"https://api.github.com/users/shoes/events{/privacy}","received_events_url":"https://api.github.com/users/shoes/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/shoes/shoes4","description":"Shoes 4 : the next version of Shoes","fork":false,"url":"https://api.github.com/repos/shoes/shoes4","forks_url":"https://api.github.com/repos/shoes/shoes4/forks","keys_url":"https://api.github.com/repos/shoes/shoes4/keys{/key_id}","collaborators_url":"https://api.github.com/repos/shoes/shoes4/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/shoes/shoes4/teams","hooks_url":"https://api.github.com/repos/shoes/shoes4/hooks","issue_events_url":"https://api.github.com/repos/shoes/shoes4/issues/events{/number}","events_url":"https://api.github.com/repos/shoes/shoes4/events","assignees_url":"https://api.github.com/repos/shoes/shoes4/assignees{/user}","branches_url":"https://api.github.com/repos/shoes/shoes4/branches{/branch}","tags_url":"https://api.github.com/repos/shoes/shoes4/tags","blobs_url":"https://api.github.com/repos/shoes/shoes4/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/shoes/shoes4/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/shoes/shoes4/git/refs{/sha}","trees_url":"https://api.github.com/repos/shoes/shoes4/git/trees{/sha}","statuses_url":"https://api.github.com/repos/shoes/shoes4/statuses/{sha}","languages_url":"https://api.github.com/repos/shoes/shoes4/languages","stargazers_url":"https://api.github.com/repos/shoes/shoes4/stargazers","contributors_url":"https://api.github.com/repos/shoes/shoes4/contributors","subscribers_url":"https://api.github.com/repos/shoes/shoes4/subscribers","subscription_url":"https://api.github.com/repos/shoes/shoes4/subscription","commits_url":"https://api.github.com/repos/shoes/shoes4/commits{/sha}","git_commits_url":"https://api.github.com/repos/shoes/shoes4/git/commits{/sha}","comments_url":"https://api.github.com/repos/shoes/shoes4/comments{/number}","issue_comment_url":"https://api.github.com/repos/shoes/shoes4/issues/comments{/number}","contents_url":"https://api.github.com/repos/shoes/shoes4/contents/{+path}","compare_url":"https://api.github.com/repos/shoes/shoes4/compare/{base}...{head}","merges_url":"https://api.github.com/repos/shoes/shoes4/merges","archive_url":"https://api.github.com/repos/shoes/shoes4/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/shoes/shoes4/downloads","issues_url":"https://api.github.com/repos/shoes/shoes4/issues{/number}","pulls_url":"https://api.github.com/repos/shoes/shoes4/pulls{/number}","milestones_url":"https://api.github.com/repos/shoes/shoes4/milestones{/number}","notifications_url":"https://api.github.com/repos/shoes/shoes4/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/shoes/shoes4/labels{/name}","releases_url":"https://api.github.com/repos/shoes/shoes4/releases{/id}","deployments_url":"https://api.github.com/repos/shoes/shoes4/deployments","created_at":"2012-05-24T14:57:59Z","updated_at":"2016-12-18T19:57:13Z","pushed_at":"2016-12-20T08:28:37Z","git_url":"git://github.com/shoes/shoes4.git","ssh_url":"git@github.com:shoes/shoes4.git","clone_url":"https://github.com/shoes/shoes4.git","svn_url":"https://github.com/shoes/shoes4","homepage":"","size":55552,"stargazers_count":1045,"watchers_count":1045,"language":"Ruby","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":172,"mirror_url":null,"open_issues_count":137,"forks":172,"open_issues":137,"watchers":1045,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/shoes/shoes4/pulls/1336"},"html":{"href":"https://github.com/shoes/shoes4/pull/1336"},"issue":{"href":"https://api.github.com/repos/shoes/shoes4/issues/1336"},"comments":{"href":"https://api.github.com/repos/shoes/shoes4/issues/1336/comments"},"review_comments":{"href":"https://api.github.com/repos/shoes/shoes4/pulls/1336/comments"},"review_comment":{"href":"https://api.github.com/repos/shoes/shoes4/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/shoes/shoes4/pulls/1336/commits"},"statuses":{"href":"https://api.github.com/repos/shoes/shoes4/statuses/ed4d00fd8e4407480df788befb644368b864c497"}}}}
{"actor":{"display_login":"jasonrclark"}}