{"action":"created","issue":{"url":"https://api.github.com/repos/ds300/patch-package/issues/43","repository_url":"https://api.github.com/repos/ds300/patch-package","labels_url":"https://api.github.com/repos/ds300/patch-package/issues/43/labels{/name}","comments_url":"https://api.github.com/repos/ds300/patch-package/issues/43/comments","events_url":"https://api.github.com/repos/ds300/patch-package/issues/43/events","html_url":"https://github.com/ds300/patch-package/issues/43","id":301135271,"number":43,"title":"Support multiple patches per package","user":{"login":"jamesreggio","id":822205,"avatar_url":"https://avatars1.githubusercontent.com/u/822205?v=4","gravatar_id":"","url":"https://api.github.com/users/jamesreggio","html_url":"https://github.com/jamesreggio","followers_url":"https://api.github.com/users/jamesreggio/followers","following_url":"https://api.github.com/users/jamesreggio/following{/other_user}","gists_url":"https://api.github.com/users/jamesreggio/gists{/gist_id}","starred_url":"https://api.github.com/users/jamesreggio/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jamesreggio/subscriptions","organizations_url":"https://api.github.com/users/jamesreggio/orgs","repos_url":"https://api.github.com/users/jamesreggio/repos","events_url":"https://api.github.com/users/jamesreggio/events{/privacy}","received_events_url":"https://api.github.com/users/jamesreggio/received_events","type":"User","site_admin":false},"labels":[{"id":678405613,"url":"https://api.github.com/repos/ds300/patch-package/labels/feature%20request","name":"feature request","color":"fbca04","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":2,"created_at":"2018-02-28T18:36:18Z","updated_at":"2018-02-28T21:13:58Z","closed_at":null,"author_association":"NONE","body":"I've been manually patching React Native for quite some time and I love the idea of this tool. It makes extracting a patch so much easier than the manual process I'm used to using.\r\n\r\nThe one thing that stands in the way of my complete adoption of `patch-package` is its lack of support for multiple patches upon the same package. I like to [separate my patches by concern](https://twitter.com/jamesreggio/status/968171438397108224), and it'd be nice if `patch-package` allowed a third segment in the patch name that can be customized by the user.\r\n\r\nFor example, it'd be great if I could split my one mega-patch into the following three patch files:\r\n\r\n```\r\npatches/react-native+0.52.0+babel.patch\r\npatches/react-native+0.52.0+cookies.patch\r\npatches/react-native+0.52.0+scrollview.patch\r\n```\r\n\r\n`patch-package` could apply the patches in lexically-sorted order. If the order of patch application matters, the user could include a sorting ordinal in the custom third segment, like such:\r\n\r\n```\r\npatches/react-native+0.52.0+00-scrollview.patch\r\npatches/react-native+0.52.0+01-cookies.patch\r\n```\r\n\r\nThe trickiest part of this will be excluding existing patches at the time that a new patch is extracted from a package. I'm not entirely sure how to handle that, but I'm also unconvinced that support for multiple patches needs to hinge on first-class support for extracting and isolating multiple patches. For now, if you want to use this power-user feature, you would just need to ensure that each patch is authored on a clean base package."},"comment":{"url":"https://api.github.com/repos/ds300/patch-package/issues/comments/369384881","html_url":"https://github.com/ds300/patch-package/issues/43#issuecomment-369384881","issue_url":"https://api.github.com/repos/ds300/patch-package/issues/43","id":369384881,"user":{"login":"ds300","id":1242537,"avatar_url":"https://avatars2.githubusercontent.com/u/1242537?v=4","gravatar_id":"","url":"https://api.github.com/users/ds300","html_url":"https://github.com/ds300","followers_url":"https://api.github.com/users/ds300/followers","following_url":"https://api.github.com/users/ds300/following{/other_user}","gists_url":"https://api.github.com/users/ds300/gists{/gist_id}","starred_url":"https://api.github.com/users/ds300/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ds300/subscriptions","organizations_url":"https://api.github.com/users/ds300/orgs","repos_url":"https://api.github.com/users/ds300/repos","events_url":"https://api.github.com/users/ds300/events{/privacy}","received_events_url":"https://api.github.com/users/ds300/received_events","type":"User","site_admin":false},"created_at":"2018-02-28T21:13:58Z","updated_at":"2018-02-28T21:13:58Z","author_association":"OWNER","body":"I think that's the trivial part and it makes sense to prototype the patch generation/updating first, since design decisions there might affect how the patch application works.\r\n"}}
{"actor":{"display_login":"ds300"}}