{"action":"opened","issue":{"url":"https://api.github.com/repos/ReactiveX/rxjs/issues/2889","repository_url":"https://api.github.com/repos/ReactiveX/rxjs","labels_url":"https://api.github.com/repos/ReactiveX/rxjs/issues/2889/labels{/name}","comments_url":"https://api.github.com/repos/ReactiveX/rxjs/issues/2889/comments","events_url":"https://api.github.com/repos/ReactiveX/rxjs/issues/2889/events","html_url":"https://github.com/ReactiveX/rxjs/issues/2889","id":262221341,"number":2889,"title":"`publish`'s `selector` doesn't have return type captured in generics in TypeScript","user":{"login":"benlesh","id":1540597,"avatar_url":"https://avatars0.githubusercontent.com/u/1540597?v=4","gravatar_id":"","url":"https://api.github.com/users/benlesh","html_url":"https://github.com/benlesh","followers_url":"https://api.github.com/users/benlesh/followers","following_url":"https://api.github.com/users/benlesh/following{/other_user}","gists_url":"https://api.github.com/users/benlesh/gists{/gist_id}","starred_url":"https://api.github.com/users/benlesh/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/benlesh/subscriptions","organizations_url":"https://api.github.com/users/benlesh/orgs","repos_url":"https://api.github.com/users/benlesh/repos","events_url":"https://api.github.com/users/benlesh/events{/privacy}","received_events_url":"https://api.github.com/users/benlesh/received_events","type":"User","site_admin":false},"labels":[{"id":187400551,"url":"https://api.github.com/repos/ReactiveX/rxjs/labels/type:%20bug","name":"type: bug","color":"fc2929","default":false},{"id":311982664,"url":"https://api.github.com/repos/ReactiveX/rxjs/labels/type:%20TS%20type%20definition","name":"type: TS type definition","color":"ffffff","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2017-10-02T20:40:46Z","updated_at":"2017-10-02T20:40:46Z","closed_at":null,"author_association":"OWNER","body":"<!--\r\nThank you for raising your concerns, we appreciate your feedback and contributions to this repository.\r\n\r\nBefore you continue, consider the following:\r\n\r\nIf you have a \"How do I do ...?\" question, it is better for you and for us that this question is placed in [StackOverflow](http://stackoverflow.com/questions/tagged/rxjs5) or some chat channel. This way, you are making it easier for others to learn from your experiences too.\r\n\r\nThese \"Issues\" are meant only for technical problems, bugs, and proposals related to the library.\r\n\r\nIf your issue is a bug, please follow the format below:\r\n-->\r\n\r\n**RxJS version:** 5.4.x\r\n\r\n**Code to reproduce:**\r\n\r\n```ts\r\nconst result: Observable<string> = of<number>(1, 2, 3).publish(source => source.map(x => x + '!'))\r\n                                                                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\r\n\r\n```\r\n**Expected behavior:**\r\n\r\nNo errors, proper type inferrence\r\n\r\n**Actual behavior:**\r\n```\r\nerror TS2345: Argument of type '(source: Observable<number>) => Observable<string>' is not assignable to parameter of type 'selector<number>'.\r\n  Type 'Observable<string>' is not assignable to type 'Observable<number>'\r\n```\r\n\r\n**Additional information:**\r\nTS 2.4"}}
{"actor":{"display_login":"benlesh"}}