{"action":"created","issue":{"url":"https://api.github.com/repos/redux-saga/redux-saga/issues/1331","repository_url":"https://api.github.com/repos/redux-saga/redux-saga","labels_url":"https://api.github.com/repos/redux-saga/redux-saga/issues/1331/labels{/name}","comments_url":"https://api.github.com/repos/redux-saga/redux-saga/issues/1331/comments","events_url":"https://api.github.com/repos/redux-saga/redux-saga/issues/1331/events","html_url":"https://github.com/redux-saga/redux-saga/pull/1331","id":297254357,"number":1331,"title":"Move redux to peer dependency","user":{"login":"JonathanMontane","id":5136989,"avatar_url":"https://avatars2.githubusercontent.com/u/5136989?v=4","gravatar_id":"","url":"https://api.github.com/users/JonathanMontane","html_url":"https://github.com/JonathanMontane","followers_url":"https://api.github.com/users/JonathanMontane/followers","following_url":"https://api.github.com/users/JonathanMontane/following{/other_user}","gists_url":"https://api.github.com/users/JonathanMontane/gists{/gist_id}","starred_url":"https://api.github.com/users/JonathanMontane/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/JonathanMontane/subscriptions","organizations_url":"https://api.github.com/users/JonathanMontane/orgs","repos_url":"https://api.github.com/users/JonathanMontane/repos","events_url":"https://api.github.com/users/JonathanMontane/events{/privacy}","received_events_url":"https://api.github.com/users/JonathanMontane/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2018-02-14T21:38:34Z","updated_at":"2018-02-15T10:32:42Z","closed_at":null,"author_association":"NONE","pull_request":{"url":"https://api.github.com/repos/redux-saga/redux-saga/pulls/1331","html_url":"https://github.com/redux-saga/redux-saga/pull/1331","diff_url":"https://github.com/redux-saga/redux-saga/pull/1331.diff","patch_url":"https://github.com/redux-saga/redux-saga/pull/1331.patch"},"body":"This PR removes the somewhat unnecessary dependency on `redux` of this library.\r\n\r\n`redux-saga` only uses the `compose` method from `redux`, which can be reimplemented in 10 lines of code.\r\n\r\nI moved the dependency on `redux` to peerDependencies, because this library was designed as a plugin to redux, and this is the [recommended place](https://nodejs.org/en/blog/npm/peer-dependencies/) to declare such relationships."},"comment":{"url":"https://api.github.com/repos/redux-saga/redux-saga/issues/comments/365886982","html_url":"https://github.com/redux-saga/redux-saga/pull/1331#issuecomment-365886982","issue_url":"https://api.github.com/repos/redux-saga/redux-saga/issues/1331","id":365886982,"user":{"login":"Andarist","id":9800850,"avatar_url":"https://avatars2.githubusercontent.com/u/9800850?v=4","gravatar_id":"","url":"https://api.github.com/users/Andarist","html_url":"https://github.com/Andarist","followers_url":"https://api.github.com/users/Andarist/followers","following_url":"https://api.github.com/users/Andarist/following{/other_user}","gists_url":"https://api.github.com/users/Andarist/gists{/gist_id}","starred_url":"https://api.github.com/users/Andarist/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Andarist/subscriptions","organizations_url":"https://api.github.com/users/Andarist/orgs","repos_url":"https://api.github.com/users/Andarist/repos","events_url":"https://api.github.com/users/Andarist/events{/privacy}","received_events_url":"https://api.github.com/users/Andarist/received_events","type":"User","site_admin":false},"created_at":"2018-02-15T10:32:42Z","updated_at":"2018-02-15T10:32:42Z","author_association":"OWNER","body":"`redux` is not a peerDep of this library, while it's primary target audience are in fact redux apps it can successfully be used in other setups too (i know numerous people using it outside of redux) thanks to `runSaga` API. Therefore making it a peer is not really true and might discourage people from experimenting with other setups. It might be optionalDependency, but I was never sure how to use them properly.\r\n\r\nAlso what this duplication of `compose` gives us? If used without `redux` tree-shakers just should remove unused parts of `redux` and leave us just with `compose`, if used with `redux` (which is the most common setup) it won't get duplicated."}}
{"actor":{"display_login":"Andarist"}}