{"action":"created","issue":{"url":"https://api.github.com/repos/scalaz/scalaz-stream/issues/481","labels_url":"https://api.github.com/repos/scalaz/scalaz-stream/issues/481/labels{/name}","comments_url":"https://api.github.com/repos/scalaz/scalaz-stream/issues/481/comments","events_url":"https://api.github.com/repos/scalaz/scalaz-stream/issues/481/events","html_url":"https://github.com/scalaz/scalaz-stream/pull/481","id":116929121,"number":481,"title":"Refactor mapAccumulate, zipWithNext.","user":{"login":"fiadliel","id":1469613,"avatar_url":"https://avatars.githubusercontent.com/u/1469613?v=3","gravatar_id":"","url":"https://api.github.com/users/fiadliel","html_url":"https://github.com/fiadliel","followers_url":"https://api.github.com/users/fiadliel/followers","following_url":"https://api.github.com/users/fiadliel/following{/other_user}","gists_url":"https://api.github.com/users/fiadliel/gists{/gist_id}","starred_url":"https://api.github.com/users/fiadliel/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/fiadliel/subscriptions","organizations_url":"https://api.github.com/users/fiadliel/orgs","repos_url":"https://api.github.com/users/fiadliel/repos","events_url":"https://api.github.com/users/fiadliel/events{/privacy}","received_events_url":"https://api.github.com/users/fiadliel/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":1,"created_at":"2015-11-14T14:34:33Z","updated_at":"2015-11-14T17:05:56Z","closed_at":"2015-11-14T17:05:56Z","pull_request":{"url":"https://api.github.com/repos/scalaz/scalaz-stream/pulls/481","html_url":"https://github.com/scalaz/scalaz-stream/pull/481","diff_url":"https://github.com/scalaz/scalaz-stream/pull/481.diff","patch_url":"https://github.com/scalaz/scalaz-stream/pull/481.patch"},"body":"This puts `mapAccumulate` into `pull1`. Adds an extra parameter for optionally emitting a value when the pull finishes.\r\n\r\nDefines `process1.mapAccumulate` and `process1.zipWithNext` in terms of this.\r\n\r\nNote: we could use `or` instead of `receiveOption` to avoid extra Option object creation, but will use the combinator until there's any evidence that this is in any way a perf problem."},"comment":{"url":"https://api.github.com/repos/scalaz/scalaz-stream/issues/comments/156719970","html_url":"https://github.com/scalaz/scalaz-stream/pull/481#issuecomment-156719970","issue_url":"https://api.github.com/repos/scalaz/scalaz-stream/issues/481","id":156719970,"user":{"login":"pchiusano","id":11074,"avatar_url":"https://avatars.githubusercontent.com/u/11074?v=3","gravatar_id":"","url":"https://api.github.com/users/pchiusano","html_url":"https://github.com/pchiusano","followers_url":"https://api.github.com/users/pchiusano/followers","following_url":"https://api.github.com/users/pchiusano/following{/other_user}","gists_url":"https://api.github.com/users/pchiusano/gists{/gist_id}","starred_url":"https://api.github.com/users/pchiusano/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pchiusano/subscriptions","organizations_url":"https://api.github.com/users/pchiusano/orgs","repos_url":"https://api.github.com/users/pchiusano/repos","events_url":"https://api.github.com/users/pchiusano/events{/privacy}","received_events_url":"https://api.github.com/users/pchiusano/received_events","type":"User","site_admin":false},"created_at":"2015-11-14T17:05:56Z","updated_at":"2015-11-14T17:05:56Z","body":"Nah.\r\n\r\nToo special purpose IMO. If you ever want to do something different at the end of a stream, that is what terminated is for. No need to bake this into a combinator like mapAccumulate."}}