{"action":"closed","number":679,"pull_request":{"url":"https://api.github.com/repos/functional-streams-for-scala/fs2/pulls/679","id":76828246,"html_url":"https://github.com/functional-streams-for-scala/fs2/pull/679","diff_url":"https://github.com/functional-streams-for-scala/fs2/pull/679.diff","patch_url":"https://github.com/functional-streams-for-scala/fs2/pull/679.patch","issue_url":"https://api.github.com/repos/functional-streams-for-scala/fs2/issues/679","number":679,"state":"closed","locked":false,"title":"Async type class cleanup","user":{"login":"mpilquist","id":118078,"avatar_url":"https://avatars.githubusercontent.com/u/118078?v=3","gravatar_id":"","url":"https://api.github.com/users/mpilquist","html_url":"https://github.com/mpilquist","followers_url":"https://api.github.com/users/mpilquist/followers","following_url":"https://api.github.com/users/mpilquist/following{/other_user}","gists_url":"https://api.github.com/users/mpilquist/gists{/gist_id}","starred_url":"https://api.github.com/users/mpilquist/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mpilquist/subscriptions","organizations_url":"https://api.github.com/users/mpilquist/orgs","repos_url":"https://api.github.com/users/mpilquist/repos","events_url":"https://api.github.com/users/mpilquist/events{/privacy}","received_events_url":"https://api.github.com/users/mpilquist/received_events","type":"User","site_admin":false},"body":"This PR includes a number of changes related to the `Async` and `Effect` type classes.\r\n\r\n1. The `Effect` type class has a new member, `unsafeRunAsync`, allowing (potentially asynchronous) evaluation of the effect.\r\n2. The `Async.Run` type class has been deleted in favor of using `Effect#unsafeRunAsync`.\r\n3. The `setRun` method has been removed from `Async`, replaced by calling `unsafeRunAsync(F.set(e.fold(F.fail,F.pure)))(_ => ())`.\r\n4. The `setFree` method has been removed from `Async`, replaced with nothing (it was not used).\r\n5. The `Async` type class has been moved to `fs2.util` package and syntax has been added to `fs2.util.syntax`.\r\n6. The `Async.Future` type has been moved to `fs2.ScopedFuture`, making its dependence on `Stream` and `Pull` clearer, and leaving the `Async` type class free of any dependency on stream primitives. Note this includes moving the `read` method from the `Ref` trait to the `ScopedFuture` companion.\r\n7. The `ScopedFuture#force` method was renamed to `pull` to align with the existing `stream` method. I could see calling these `forceAsPull`/`forceAsStream` instead.\r\n\r\nFor some background discussion of these changes, see #677.","created_at":"2016-07-08T23:29:35Z","updated_at":"2016-07-09T01:53:23Z","closed_at":"2016-07-09T01:53:22Z","merged_at":"2016-07-09T01:53:22Z","merge_commit_sha":"8be9b7b0b7e3e533bcab3b7fa42a3adebdebcbee","assignee":null,"assignees":[],"milestone":null,"commits_url":"https://api.github.com/repos/functional-streams-for-scala/fs2/pulls/679/commits","review_comments_url":"https://api.github.com/repos/functional-streams-for-scala/fs2/pulls/679/comments","review_comment_url":"https://api.github.com/repos/functional-streams-for-scala/fs2/pulls/comments{/number}","comments_url":"https://api.github.com/repos/functional-streams-for-scala/fs2/issues/679/comments","statuses_url":"https://api.github.com/repos/functional-streams-for-scala/fs2/statuses/ed8ea11012addb1c61c6f85d6eb44eb8ece51b0e","head":{"label":"mpilquist:topic/remove-async-run","ref":"topic/remove-async-run","sha":"ed8ea11012addb1c61c6f85d6eb44eb8ece51b0e","user":{"login":"mpilquist","id":118078,"avatar_url":"https://avatars.githubusercontent.com/u/118078?v=3","gravatar_id":"","url":"https://api.github.com/users/mpilquist","html_url":"https://github.com/mpilquist","followers_url":"https://api.github.com/users/mpilquist/followers","following_url":"https://api.github.com/users/mpilquist/following{/other_user}","gists_url":"https://api.github.com/users/mpilquist/gists{/gist_id}","starred_url":"https://api.github.com/users/mpilquist/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mpilquist/subscriptions","organizations_url":"https://api.github.com/users/mpilquist/orgs","repos_url":"https://api.github.com/users/mpilquist/repos","events_url":"https://api.github.com/users/mpilquist/events{/privacy}","received_events_url":"https://api.github.com/users/mpilquist/received_events","type":"User","site_admin":false},"repo":{"id":15008409,"name":"fs2","full_name":"mpilquist/fs2","owner":{"login":"mpilquist","id":118078,"avatar_url":"https://avatars.githubusercontent.com/u/118078?v=3","gravatar_id":"","url":"https://api.github.com/users/mpilquist","html_url":"https://github.com/mpilquist","followers_url":"https://api.github.com/users/mpilquist/followers","following_url":"https://api.github.com/users/mpilquist/following{/other_user}","gists_url":"https://api.github.com/users/mpilquist/gists{/gist_id}","starred_url":"https://api.github.com/users/mpilquist/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mpilquist/subscriptions","organizations_url":"https://api.github.com/users/mpilquist/orgs","repos_url":"https://api.github.com/users/mpilquist/repos","events_url":"https://api.github.com/users/mpilquist/events{/privacy}","received_events_url":"https://api.github.com/users/mpilquist/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/mpilquist/fs2","description":"Compositional, streaming I/O library for Scala","fork":true,"url":"https://api.github.com/repos/mpilquist/fs2","forks_url":"https://api.github.com/repos/mpilquist/fs2/forks","keys_url":"https://api.github.com/repos/mpilquist/fs2/keys{/key_id}","collaborators_url":"https://api.github.com/repos/mpilquist/fs2/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/mpilquist/fs2/teams","hooks_url":"https://api.github.com/repos/mpilquist/fs2/hooks","issue_events_url":"https://api.github.com/repos/mpilquist/fs2/issues/events{/number}","events_url":"https://api.github.com/repos/mpilquist/fs2/events","assignees_url":"https://api.github.com/repos/mpilquist/fs2/assignees{/user}","branches_url":"https://api.github.com/repos/mpilquist/fs2/branches{/branch}","tags_url":"https://api.github.com/repos/mpilquist/fs2/tags","blobs_url":"https://api.github.com/repos/mpilquist/fs2/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/mpilquist/fs2/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/mpilquist/fs2/git/refs{/sha}","trees_url":"https://api.github.com/repos/mpilquist/fs2/git/trees{/sha}","statuses_url":"https://api.github.com/repos/mpilquist/fs2/statuses/{sha}","languages_url":"https://api.github.com/repos/mpilquist/fs2/languages","stargazers_url":"https://api.github.com/repos/mpilquist/fs2/stargazers","contributors_url":"https://api.github.com/repos/mpilquist/fs2/contributors","subscribers_url":"https://api.github.com/repos/mpilquist/fs2/subscribers","subscription_url":"https://api.github.com/repos/mpilquist/fs2/subscription","commits_url":"https://api.github.com/repos/mpilquist/fs2/commits{/sha}","git_commits_url":"https://api.github.com/repos/mpilquist/fs2/git/commits{/sha}","comments_url":"https://api.github.com/repos/mpilquist/fs2/comments{/number}","issue_comment_url":"https://api.github.com/repos/mpilquist/fs2/issues/comments{/number}","contents_url":"https://api.github.com/repos/mpilquist/fs2/contents/{+path}","compare_url":"https://api.github.com/repos/mpilquist/fs2/compare/{base}...{head}","merges_url":"https://api.github.com/repos/mpilquist/fs2/merges","archive_url":"https://api.github.com/repos/mpilquist/fs2/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/mpilquist/fs2/downloads","issues_url":"https://api.github.com/repos/mpilquist/fs2/issues{/number}","pulls_url":"https://api.github.com/repos/mpilquist/fs2/pulls{/number}","milestones_url":"https://api.github.com/repos/mpilquist/fs2/milestones{/number}","notifications_url":"https://api.github.com/repos/mpilquist/fs2/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/mpilquist/fs2/labels{/name}","releases_url":"https://api.github.com/repos/mpilquist/fs2/releases{/id}","deployments_url":"https://api.github.com/repos/mpilquist/fs2/deployments","created_at":"2013-12-07T16:04:18Z","updated_at":"2016-06-04T18:53:52Z","pushed_at":"2016-07-08T23:22:41Z","git_url":"git://github.com/mpilquist/fs2.git","ssh_url":"git@github.com:mpilquist/fs2.git","clone_url":"https://github.com/mpilquist/fs2.git","svn_url":"https://github.com/mpilquist/fs2","homepage":"","size":3901,"stargazers_count":1,"watchers_count":1,"language":"Scala","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":1,"default_branch":"master"}},"base":{"label":"functional-streams-for-scala:series/0.9","ref":"series/0.9","sha":"e9926d3e10cc5234d0e3014659f7706a2ab14807","user":{"login":"functional-streams-for-scala","id":14128107,"avatar_url":"https://avatars.githubusercontent.com/u/14128107?v=3","gravatar_id":"","url":"https://api.github.com/users/functional-streams-for-scala","html_url":"https://github.com/functional-streams-for-scala","followers_url":"https://api.github.com/users/functional-streams-for-scala/followers","following_url":"https://api.github.com/users/functional-streams-for-scala/following{/other_user}","gists_url":"https://api.github.com/users/functional-streams-for-scala/gists{/gist_id}","starred_url":"https://api.github.com/users/functional-streams-for-scala/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/functional-streams-for-scala/subscriptions","organizations_url":"https://api.github.com/users/functional-streams-for-scala/orgs","repos_url":"https://api.github.com/users/functional-streams-for-scala/repos","events_url":"https://api.github.com/users/functional-streams-for-scala/events{/privacy}","received_events_url":"https://api.github.com/users/functional-streams-for-scala/received_events","type":"Organization","site_admin":false},"repo":{"id":8609125,"name":"fs2","full_name":"functional-streams-for-scala/fs2","owner":{"login":"functional-streams-for-scala","id":14128107,"avatar_url":"https://avatars.githubusercontent.com/u/14128107?v=3","gravatar_id":"","url":"https://api.github.com/users/functional-streams-for-scala","html_url":"https://github.com/functional-streams-for-scala","followers_url":"https://api.github.com/users/functional-streams-for-scala/followers","following_url":"https://api.github.com/users/functional-streams-for-scala/following{/other_user}","gists_url":"https://api.github.com/users/functional-streams-for-scala/gists{/gist_id}","starred_url":"https://api.github.com/users/functional-streams-for-scala/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/functional-streams-for-scala/subscriptions","organizations_url":"https://api.github.com/users/functional-streams-for-scala/orgs","repos_url":"https://api.github.com/users/functional-streams-for-scala/repos","events_url":"https://api.github.com/users/functional-streams-for-scala/events{/privacy}","received_events_url":"https://api.github.com/users/functional-streams-for-scala/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/functional-streams-for-scala/fs2","description":"Compositional, streaming I/O library for Scala","fork":false,"url":"https://api.github.com/repos/functional-streams-for-scala/fs2","forks_url":"https://api.github.com/repos/functional-streams-for-scala/fs2/forks","keys_url":"https://api.github.com/repos/functional-streams-for-scala/fs2/keys{/key_id}","collaborators_url":"https://api.github.com/repos/functional-streams-for-scala/fs2/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/functional-streams-for-scala/fs2/teams","hooks_url":"https://api.github.com/repos/functional-streams-for-scala/fs2/hooks","issue_events_url":"https://api.github.com/repos/functional-streams-for-scala/fs2/issues/events{/number}","events_url":"https://api.github.com/repos/functional-streams-for-scala/fs2/events","assignees_url":"https://api.github.com/repos/functional-streams-for-scala/fs2/assignees{/user}","branches_url":"https://api.github.com/repos/functional-streams-for-scala/fs2/branches{/branch}","tags_url":"https://api.github.com/repos/functional-streams-for-scala/fs2/tags","blobs_url":"https://api.github.com/repos/functional-streams-for-scala/fs2/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/functional-streams-for-scala/fs2/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/functional-streams-for-scala/fs2/git/refs{/sha}","trees_url":"https://api.github.com/repos/functional-streams-for-scala/fs2/git/trees{/sha}","statuses_url":"https://api.github.com/repos/functional-streams-for-scala/fs2/statuses/{sha}","languages_url":"https://api.github.com/repos/functional-streams-for-scala/fs2/languages","stargazers_url":"https://api.github.com/repos/functional-streams-for-scala/fs2/stargazers","contributors_url":"https://api.github.com/repos/functional-streams-for-scala/fs2/contributors","subscribers_url":"https://api.github.com/repos/functional-streams-for-scala/fs2/subscribers","subscription_url":"https://api.github.com/repos/functional-streams-for-scala/fs2/subscription","commits_url":"https://api.github.com/repos/functional-streams-for-scala/fs2/commits{/sha}","git_commits_url":"https://api.github.com/repos/functional-streams-for-scala/fs2/git/commits{/sha}","comments_url":"https://api.github.com/repos/functional-streams-for-scala/fs2/comments{/number}","issue_comment_url":"https://api.github.com/repos/functional-streams-for-scala/fs2/issues/comments{/number}","contents_url":"https://api.github.com/repos/functional-streams-for-scala/fs2/contents/{+path}","compare_url":"https://api.github.com/repos/functional-streams-for-scala/fs2/compare/{base}...{head}","merges_url":"https://api.github.com/repos/functional-streams-for-scala/fs2/merges","archive_url":"https://api.github.com/repos/functional-streams-for-scala/fs2/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/functional-streams-for-scala/fs2/downloads","issues_url":"https://api.github.com/repos/functional-streams-for-scala/fs2/issues{/number}","pulls_url":"https://api.github.com/repos/functional-streams-for-scala/fs2/pulls{/number}","milestones_url":"https://api.github.com/repos/functional-streams-for-scala/fs2/milestones{/number}","notifications_url":"https://api.github.com/repos/functional-streams-for-scala/fs2/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/functional-streams-for-scala/fs2/labels{/name}","releases_url":"https://api.github.com/repos/functional-streams-for-scala/fs2/releases{/id}","deployments_url":"https://api.github.com/repos/functional-streams-for-scala/fs2/deployments","created_at":"2013-03-06T17:34:15Z","updated_at":"2016-07-08T09:36:04Z","pushed_at":"2016-07-09T01:53:22Z","git_url":"git://github.com/functional-streams-for-scala/fs2.git","ssh_url":"git@github.com:functional-streams-for-scala/fs2.git","clone_url":"https://github.com/functional-streams-for-scala/fs2.git","svn_url":"https://github.com/functional-streams-for-scala/fs2","homepage":"","size":5497,"stargazers_count":583,"watchers_count":583,"language":"Scala","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":164,"mirror_url":null,"open_issues_count":15,"forks":164,"open_issues":15,"watchers":583,"default_branch":"series/0.9"}},"_links":{"self":{"href":"https://api.github.com/repos/functional-streams-for-scala/fs2/pulls/679"},"html":{"href":"https://github.com/functional-streams-for-scala/fs2/pull/679"},"issue":{"href":"https://api.github.com/repos/functional-streams-for-scala/fs2/issues/679"},"comments":{"href":"https://api.github.com/repos/functional-streams-for-scala/fs2/issues/679/comments"},"review_comments":{"href":"https://api.github.com/repos/functional-streams-for-scala/fs2/pulls/679/comments"},"review_comment":{"href":"https://api.github.com/repos/functional-streams-for-scala/fs2/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/functional-streams-for-scala/fs2/pulls/679/commits"},"statuses":{"href":"https://api.github.com/repos/functional-streams-for-scala/fs2/statuses/ed8ea11012addb1c61c6f85d6eb44eb8ece51b0e"}},"merged":true,"mergeable":null,"mergeable_state":"unknown","merged_by":{"login":"mpilquist","id":118078,"avatar_url":"https://avatars.githubusercontent.com/u/118078?v=3","gravatar_id":"","url":"https://api.github.com/users/mpilquist","html_url":"https://github.com/mpilquist","followers_url":"https://api.github.com/users/mpilquist/followers","following_url":"https://api.github.com/users/mpilquist/following{/other_user}","gists_url":"https://api.github.com/users/mpilquist/gists{/gist_id}","starred_url":"https://api.github.com/users/mpilquist/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mpilquist/subscriptions","organizations_url":"https://api.github.com/users/mpilquist/orgs","repos_url":"https://api.github.com/users/mpilquist/repos","events_url":"https://api.github.com/users/mpilquist/events{/privacy}","received_events_url":"https://api.github.com/users/mpilquist/received_events","type":"User","site_admin":false},"comments":0,"review_comments":0,"commits":3,"additions":373,"deletions":372,"changed_files":38}}
{"actor":{"display_login":"mpilquist"}}