{"action":"created","issue":{"url":"https://api.github.com/repos/ReactiveCocoa/ReactiveCocoa/issues/2001","labels_url":"https://api.github.com/repos/ReactiveCocoa/ReactiveCocoa/issues/2001/labels{/name}","comments_url":"https://api.github.com/repos/ReactiveCocoa/ReactiveCocoa/issues/2001/comments","events_url":"https://api.github.com/repos/ReactiveCocoa/ReactiveCocoa/issues/2001/events","html_url":"https://github.com/ReactiveCocoa/ReactiveCocoa/issues/2001","id":75825092,"number":2001,"title":"Pipe operator for composite disposables","user":{"login":"neilpa","id":42419,"avatar_url":"https://avatars.githubusercontent.com/u/42419?v=3","gravatar_id":"","url":"https://api.github.com/users/neilpa","html_url":"https://github.com/neilpa","followers_url":"https://api.github.com/users/neilpa/followers","following_url":"https://api.github.com/users/neilpa/following{/other_user}","gists_url":"https://api.github.com/users/neilpa/gists{/gist_id}","starred_url":"https://api.github.com/users/neilpa/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/neilpa/subscriptions","organizations_url":"https://api.github.com/users/neilpa/orgs","repos_url":"https://api.github.com/users/neilpa/repos","events_url":"https://api.github.com/users/neilpa/events{/privacy}","received_events_url":"https://api.github.com/users/neilpa/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":4,"created_at":"2015-05-13T03:16:04Z","updated_at":"2015-05-13T04:27:34Z","closed_at":null,"body":"This may be crazy talk but I've toyed with `|>`ing disposables from `start` or `observe` into a `CompositeDisposable` and have been liking it. Especially for multiline signal chains where wrapping with `addDisposable` or storing the return value feels like it adds \"noise\".\r\n\r\n```swift\r\n// piped\r\nproducer\r\n    |> map { ... }\r\n    |> filter { ... }\r\n    |> start { ... }\r\n    |> disposable\r\n\r\n// wrapped\r\ndisposable.addDisposable(producer\r\n    |> map { ... }\r\n    |> filter { ... }\r\n    |> start { ... })\r\n\r\n// stored\r\nlet producerDisposable = producer\r\n    |> map { ... }\r\n    |> filter { ... }\r\n    |> start { ... }\r\ndisposable.addDisposable(producerDisposable)\r\n```\r\n\r\nThoughts?"},"comment":{"url":"https://api.github.com/repos/ReactiveCocoa/ReactiveCocoa/issues/comments/101509697","html_url":"https://github.com/ReactiveCocoa/ReactiveCocoa/issues/2001#issuecomment-101509697","issue_url":"https://api.github.com/repos/ReactiveCocoa/ReactiveCocoa/issues/2001","id":101509697,"user":{"login":"neilpa","id":42419,"avatar_url":"https://avatars.githubusercontent.com/u/42419?v=3","gravatar_id":"","url":"https://api.github.com/users/neilpa","html_url":"https://github.com/neilpa","followers_url":"https://api.github.com/users/neilpa/followers","following_url":"https://api.github.com/users/neilpa/following{/other_user}","gists_url":"https://api.github.com/users/neilpa/gists{/gist_id}","starred_url":"https://api.github.com/users/neilpa/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/neilpa/subscriptions","organizations_url":"https://api.github.com/users/neilpa/orgs","repos_url":"https://api.github.com/users/neilpa/repos","events_url":"https://api.github.com/users/neilpa/events{/privacy}","received_events_url":"https://api.github.com/users/neilpa/received_events","type":"User","site_admin":false},"created_at":"2015-05-13T04:27:34Z","updated_at":"2015-05-13T04:27:34Z","body":"> It puts the disposable front and center\r\n\r\nThis may not be a bad thing. I've screwed up the lifetime management of disposables more than a few times."}}