{"action":"created","comment":{"url":"https://api.github.com/repos/Team846/potassium/pulls/comments/168265952","pull_request_review_id":96605568,"id":168265952,"diff_hunk":"@@ -385,4 +385,39 @@ trait UnicycleCoreTasks {\n     }\n   }\n \n+  class DriveToTargetWithConstantSpeed(drivetrainComponent: Drivetrain,\n+                                       distanceToTarget: Stream[Option[Length]],\n+                                       angleToTarget: Stream[Angle],\n+                                       forwardVelocity: Dimensionless,\n+                                       maxTurnVelocity: Dimensionless,\n+                                       minDistance: Length)\n+                                      (implicit drivetrainHardware: DrivetrainHardware,\n+                                       props: Signal[DrivetrainProperties]) extends FiniteTask {\n+\n+    override def onStart(): Unit = {\n+      val absoluteTargetAngle = drivetrainHardware.turnPosition.zipAsync(angleToTarget).map {t =>\n+        t._1 + t._2\n+      }\n+\n+      val turnController = turnPositionControl(absoluteTargetAngle)._1\n+\n+      val out = childVelocityControl(\n+        turnController.map { p =>\n+          UnicycleSignal(forwardVelocity, p.turn min maxTurnVelocity max -maxTurnVelocity)\n+        }\n+      )\n+\n+      drivetrainComponent.setController(out.withCheckZipped(distanceToTarget){\n+        distanceToTarget => {\n+          if (!distanceToTarget.exists(_ > minDistance)) {","path":"commons/src/main/scala/com/lynbrookrobotics/potassium/commons/drivetrain/unicycle/control/UnicycleCoreTasks.scala","position":28,"original_position":28,"commit_id":"25afc20cb5ac3a37902ed4b515f2742014a1a429","original_commit_id":"25afc20cb5ac3a37902ed4b515f2742014a1a429","user":{"login":"shadaj","id":543055,"avatar_url":"https://avatars3.githubusercontent.com/u/543055?v=4","gravatar_id":"","url":"https://api.github.com/users/shadaj","html_url":"https://github.com/shadaj","followers_url":"https://api.github.com/users/shadaj/followers","following_url":"https://api.github.com/users/shadaj/following{/other_user}","gists_url":"https://api.github.com/users/shadaj/gists{/gist_id}","starred_url":"https://api.github.com/users/shadaj/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/shadaj/subscriptions","organizations_url":"https://api.github.com/users/shadaj/orgs","repos_url":"https://api.github.com/users/shadaj/repos","events_url":"https://api.github.com/users/shadaj/events{/privacy}","received_events_url":"https://api.github.com/users/shadaj/received_events","type":"User","site_admin":false},"body":"Shouldn't this be a exists < minDistance? Right now this task will finish is no cube is detected.","created_at":"2018-02-14T18:23:51Z","updated_at":"2018-02-14T18:23:59Z","html_url":"https://github.com/Team846/potassium/pull/168#discussion_r168265952","pull_request_url":"https://api.github.com/repos/Team846/potassium/pulls/168","author_association":"OWNER","_links":{"self":{"href":"https://api.github.com/repos/Team846/potassium/pulls/comments/168265952"},"html":{"href":"https://github.com/Team846/potassium/pull/168#discussion_r168265952"},"pull_request":{"href":"https://api.github.com/repos/Team846/potassium/pulls/168"}}},"pull_request":{"url":"https://api.github.com/repos/Team846/potassium/pulls/168","id":167315223,"html_url":"https://github.com/Team846/potassium/pull/168","diff_url":"https://github.com/Team846/potassium/pull/168.diff","patch_url":"https://github.com/Team846/potassium/pull/168.patch","issue_url":"https://api.github.com/repos/Team846/potassium/issues/168","number":168,"state":"open","locked":false,"title":"Use Limelight camera to calculate location to travel to","user":{"login":"nikwalia","id":15057279,"avatar_url":"https://avatars3.githubusercontent.com/u/15057279?v=4","gravatar_id":"","url":"https://api.github.com/users/nikwalia","html_url":"https://github.com/nikwalia","followers_url":"https://api.github.com/users/nikwalia/followers","following_url":"https://api.github.com/users/nikwalia/following{/other_user}","gists_url":"https://api.github.com/users/nikwalia/gists{/gist_id}","starred_url":"https://api.github.com/users/nikwalia/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nikwalia/subscriptions","organizations_url":"https://api.github.com/users/nikwalia/orgs","repos_url":"https://api.github.com/users/nikwalia/repos","events_url":"https://api.github.com/users/nikwalia/events{/privacy}","received_events_url":"https://api.github.com/users/nikwalia/received_events","type":"User","site_admin":false},"body":"","created_at":"2018-02-06T04:00:12Z","updated_at":"2018-02-14T18:23:59Z","closed_at":null,"merged_at":null,"merge_commit_sha":"18c677f71f4f3e08450ecf92e0d204c3cd939bf4","assignee":null,"assignees":[],"requested_reviewers":[{"login":"Paxelord","id":11010625,"avatar_url":"https://avatars1.githubusercontent.com/u/11010625?v=4","gravatar_id":"","url":"https://api.github.com/users/Paxelord","html_url":"https://github.com/Paxelord","followers_url":"https://api.github.com/users/Paxelord/followers","following_url":"https://api.github.com/users/Paxelord/following{/other_user}","gists_url":"https://api.github.com/users/Paxelord/gists{/gist_id}","starred_url":"https://api.github.com/users/Paxelord/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Paxelord/subscriptions","organizations_url":"https://api.github.com/users/Paxelord/orgs","repos_url":"https://api.github.com/users/Paxelord/repos","events_url":"https://api.github.com/users/Paxelord/events{/privacy}","received_events_url":"https://api.github.com/users/Paxelord/received_events","type":"User","site_admin":false}],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/Team846/potassium/pulls/168/commits","review_comments_url":"https://api.github.com/repos/Team846/potassium/pulls/168/comments","review_comment_url":"https://api.github.com/repos/Team846/potassium/pulls/comments{/number}","comments_url":"https://api.github.com/repos/Team846/potassium/issues/168/comments","statuses_url":"https://api.github.com/repos/Team846/potassium/statuses/25afc20cb5ac3a37902ed4b515f2742014a1a429","head":{"label":"Team846:limelight-networktables","ref":"limelight-networktables","sha":"25afc20cb5ac3a37902ed4b515f2742014a1a429","user":{"login":"Team846","id":12131787,"avatar_url":"https://avatars0.githubusercontent.com/u/12131787?v=4","gravatar_id":"","url":"https://api.github.com/users/Team846","html_url":"https://github.com/Team846","followers_url":"https://api.github.com/users/Team846/followers","following_url":"https://api.github.com/users/Team846/following{/other_user}","gists_url":"https://api.github.com/users/Team846/gists{/gist_id}","starred_url":"https://api.github.com/users/Team846/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Team846/subscriptions","organizations_url":"https://api.github.com/users/Team846/orgs","repos_url":"https://api.github.com/users/Team846/repos","events_url":"https://api.github.com/users/Team846/events{/privacy}","received_events_url":"https://api.github.com/users/Team846/received_events","type":"Organization","site_admin":false},"repo":{"id":69409393,"name":"potassium","full_name":"Team846/potassium","owner":{"login":"Team846","id":12131787,"avatar_url":"https://avatars0.githubusercontent.com/u/12131787?v=4","gravatar_id":"","url":"https://api.github.com/users/Team846","html_url":"https://github.com/Team846","followers_url":"https://api.github.com/users/Team846/followers","following_url":"https://api.github.com/users/Team846/following{/other_user}","gists_url":"https://api.github.com/users/Team846/gists{/gist_id}","starred_url":"https://api.github.com/users/Team846/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Team846/subscriptions","organizations_url":"https://api.github.com/users/Team846/orgs","repos_url":"https://api.github.com/users/Team846/repos","events_url":"https://api.github.com/users/Team846/events{/privacy}","received_events_url":"https://api.github.com/users/Team846/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/Team846/potassium","description":"A framework for writing robot software with functional programming in Scala","fork":false,"url":"https://api.github.com/repos/Team846/potassium","forks_url":"https://api.github.com/repos/Team846/potassium/forks","keys_url":"https://api.github.com/repos/Team846/potassium/keys{/key_id}","collaborators_url":"https://api.github.com/repos/Team846/potassium/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/Team846/potassium/teams","hooks_url":"https://api.github.com/repos/Team846/potassium/hooks","issue_events_url":"https://api.github.com/repos/Team846/potassium/issues/events{/number}","events_url":"https://api.github.com/repos/Team846/potassium/events","assignees_url":"https://api.github.com/repos/Team846/potassium/assignees{/user}","branches_url":"https://api.github.com/repos/Team846/potassium/branches{/branch}","tags_url":"https://api.github.com/repos/Team846/potassium/tags","blobs_url":"https://api.github.com/repos/Team846/potassium/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/Team846/potassium/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/Team846/potassium/git/refs{/sha}","trees_url":"https://api.github.com/repos/Team846/potassium/git/trees{/sha}","statuses_url":"https://api.github.com/repos/Team846/potassium/statuses/{sha}","languages_url":"https://api.github.com/repos/Team846/potassium/languages","stargazers_url":"https://api.github.com/repos/Team846/potassium/stargazers","contributors_url":"https://api.github.com/repos/Team846/potassium/contributors","subscribers_url":"https://api.github.com/repos/Team846/potassium/subscribers","subscription_url":"https://api.github.com/repos/Team846/potassium/subscription","commits_url":"https://api.github.com/repos/Team846/potassium/commits{/sha}","git_commits_url":"https://api.github.com/repos/Team846/potassium/git/commits{/sha}","comments_url":"https://api.github.com/repos/Team846/potassium/comments{/number}","issue_comment_url":"https://api.github.com/repos/Team846/potassium/issues/comments{/number}","contents_url":"https://api.github.com/repos/Team846/potassium/contents/{+path}","compare_url":"https://api.github.com/repos/Team846/potassium/compare/{base}...{head}","merges_url":"https://api.github.com/repos/Team846/potassium/merges","archive_url":"https://api.github.com/repos/Team846/potassium/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/Team846/potassium/downloads","issues_url":"https://api.github.com/repos/Team846/potassium/issues{/number}","pulls_url":"https://api.github.com/repos/Team846/potassium/pulls{/number}","milestones_url":"https://api.github.com/repos/Team846/potassium/milestones{/number}","notifications_url":"https://api.github.com/repos/Team846/potassium/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/Team846/potassium/labels{/name}","releases_url":"https://api.github.com/repos/Team846/potassium/releases{/id}","deployments_url":"https://api.github.com/repos/Team846/potassium/deployments","created_at":"2016-09-28T00:18:31Z","updated_at":"2018-02-14T05:08:26Z","pushed_at":"2018-02-14T18:21:52Z","git_url":"git://github.com/Team846/potassium.git","ssh_url":"git@github.com:Team846/potassium.git","clone_url":"https://github.com/Team846/potassium.git","svn_url":"https://github.com/Team846/potassium","homepage":"http://team846.github.io/potassium","size":3198,"stargazers_count":8,"watchers_count":8,"language":"Scala","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":1,"mirror_url":null,"archived":false,"open_issues_count":10,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit"},"forks":1,"open_issues":10,"watchers":8,"default_branch":"master"}},"base":{"label":"Team846:master","ref":"master","sha":"ef229bea42f20e08187b9a8705e4ddd9db14df67","user":{"login":"Team846","id":12131787,"avatar_url":"https://avatars0.githubusercontent.com/u/12131787?v=4","gravatar_id":"","url":"https://api.github.com/users/Team846","html_url":"https://github.com/Team846","followers_url":"https://api.github.com/users/Team846/followers","following_url":"https://api.github.com/users/Team846/following{/other_user}","gists_url":"https://api.github.com/users/Team846/gists{/gist_id}","starred_url":"https://api.github.com/users/Team846/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Team846/subscriptions","organizations_url":"https://api.github.com/users/Team846/orgs","repos_url":"https://api.github.com/users/Team846/repos","events_url":"https://api.github.com/users/Team846/events{/privacy}","received_events_url":"https://api.github.com/users/Team846/received_events","type":"Organization","site_admin":false},"repo":{"id":69409393,"name":"potassium","full_name":"Team846/potassium","owner":{"login":"Team846","id":12131787,"avatar_url":"https://avatars0.githubusercontent.com/u/12131787?v=4","gravatar_id":"","url":"https://api.github.com/users/Team846","html_url":"https://github.com/Team846","followers_url":"https://api.github.com/users/Team846/followers","following_url":"https://api.github.com/users/Team846/following{/other_user}","gists_url":"https://api.github.com/users/Team846/gists{/gist_id}","starred_url":"https://api.github.com/users/Team846/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Team846/subscriptions","organizations_url":"https://api.github.com/users/Team846/orgs","repos_url":"https://api.github.com/users/Team846/repos","events_url":"https://api.github.com/users/Team846/events{/privacy}","received_events_url":"https://api.github.com/users/Team846/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/Team846/potassium","description":"A framework for writing robot software with functional programming in Scala","fork":false,"url":"https://api.github.com/repos/Team846/potassium","forks_url":"https://api.github.com/repos/Team846/potassium/forks","keys_url":"https://api.github.com/repos/Team846/potassium/keys{/key_id}","collaborators_url":"https://api.github.com/repos/Team846/potassium/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/Team846/potassium/teams","hooks_url":"https://api.github.com/repos/Team846/potassium/hooks","issue_events_url":"https://api.github.com/repos/Team846/potassium/issues/events{/number}","events_url":"https://api.github.com/repos/Team846/potassium/events","assignees_url":"https://api.github.com/repos/Team846/potassium/assignees{/user}","branches_url":"https://api.github.com/repos/Team846/potassium/branches{/branch}","tags_url":"https://api.github.com/repos/Team846/potassium/tags","blobs_url":"https://api.github.com/repos/Team846/potassium/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/Team846/potassium/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/Team846/potassium/git/refs{/sha}","trees_url":"https://api.github.com/repos/Team846/potassium/git/trees{/sha}","statuses_url":"https://api.github.com/repos/Team846/potassium/statuses/{sha}","languages_url":"https://api.github.com/repos/Team846/potassium/languages","stargazers_url":"https://api.github.com/repos/Team846/potassium/stargazers","contributors_url":"https://api.github.com/repos/Team846/potassium/contributors","subscribers_url":"https://api.github.com/repos/Team846/potassium/subscribers","subscription_url":"https://api.github.com/repos/Team846/potassium/subscription","commits_url":"https://api.github.com/repos/Team846/potassium/commits{/sha}","git_commits_url":"https://api.github.com/repos/Team846/potassium/git/commits{/sha}","comments_url":"https://api.github.com/repos/Team846/potassium/comments{/number}","issue_comment_url":"https://api.github.com/repos/Team846/potassium/issues/comments{/number}","contents_url":"https://api.github.com/repos/Team846/potassium/contents/{+path}","compare_url":"https://api.github.com/repos/Team846/potassium/compare/{base}...{head}","merges_url":"https://api.github.com/repos/Team846/potassium/merges","archive_url":"https://api.github.com/repos/Team846/potassium/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/Team846/potassium/downloads","issues_url":"https://api.github.com/repos/Team846/potassium/issues{/number}","pulls_url":"https://api.github.com/repos/Team846/potassium/pulls{/number}","milestones_url":"https://api.github.com/repos/Team846/potassium/milestones{/number}","notifications_url":"https://api.github.com/repos/Team846/potassium/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/Team846/potassium/labels{/name}","releases_url":"https://api.github.com/repos/Team846/potassium/releases{/id}","deployments_url":"https://api.github.com/repos/Team846/potassium/deployments","created_at":"2016-09-28T00:18:31Z","updated_at":"2018-02-14T05:08:26Z","pushed_at":"2018-02-14T18:21:52Z","git_url":"git://github.com/Team846/potassium.git","ssh_url":"git@github.com:Team846/potassium.git","clone_url":"https://github.com/Team846/potassium.git","svn_url":"https://github.com/Team846/potassium","homepage":"http://team846.github.io/potassium","size":3198,"stargazers_count":8,"watchers_count":8,"language":"Scala","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":1,"mirror_url":null,"archived":false,"open_issues_count":10,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit"},"forks":1,"open_issues":10,"watchers":8,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/Team846/potassium/pulls/168"},"html":{"href":"https://github.com/Team846/potassium/pull/168"},"issue":{"href":"https://api.github.com/repos/Team846/potassium/issues/168"},"comments":{"href":"https://api.github.com/repos/Team846/potassium/issues/168/comments"},"review_comments":{"href":"https://api.github.com/repos/Team846/potassium/pulls/168/comments"},"review_comment":{"href":"https://api.github.com/repos/Team846/potassium/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/Team846/potassium/pulls/168/commits"},"statuses":{"href":"https://api.github.com/repos/Team846/potassium/statuses/25afc20cb5ac3a37902ed4b515f2742014a1a429"}},"author_association":"CONTRIBUTOR"}}
{"actor":{"display_login":"shadaj"}}