{"action":"created","issue":{"url":"https://api.github.com/repos/jspm/jspm-cli/issues/398","labels_url":"https://api.github.com/repos/jspm/jspm-cli/issues/398/labels{/name}","comments_url":"https://api.github.com/repos/jspm/jspm-cli/issues/398/comments","events_url":"https://api.github.com/repos/jspm/jspm-cli/issues/398/events","html_url":"https://github.com/jspm/jspm-cli/issues/398","id":54179500,"number":398,"title":"Package.json override workflow","user":{"login":"guybedford","id":598730,"avatar_url":"https://avatars.githubusercontent.com/u/598730?v=3","gravatar_id":"","url":"https://api.github.com/users/guybedford","html_url":"https://github.com/guybedford","followers_url":"https://api.github.com/users/guybedford/followers","following_url":"https://api.github.com/users/guybedford/following{/other_user}","gists_url":"https://api.github.com/users/guybedford/gists{/gist_id}","starred_url":"https://api.github.com/users/guybedford/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/guybedford/subscriptions","organizations_url":"https://api.github.com/users/guybedford/orgs","repos_url":"https://api.github.com/users/guybedford/repos","events_url":"https://api.github.com/users/guybedford/events{/privacy}","received_events_url":"https://api.github.com/users/guybedford/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":42,"created_at":"2015-01-13T11:11:47Z","updated_at":"2015-05-31T20:15:58Z","closed_at":"2015-03-24T23:34:15Z","body":"Despite my previous resistance this is probably very necessary.\r\n\r\nThe form would be:\r\n\r\n```json\r\n{\r\n  \"overrides\": {\r\n    \"github:components/jquery@2.0.0\": { ... }\r\n  }\r\n}\r\n```\r\n\r\nHere's a suggested workflow:\r\n\r\n1. When running `jspm -o`, add the override into the package.json. Also check for overrides from the package.json during install for all dependencies, this will work with the package hashing well.\r\n2. While there are overrides in the package.json, show a warning message after every install that overrides are present and that shared dependencies may not work as expected until the overrides are merged into the registry.\r\n3. `jspm register-overrides` can generate a PR into the registry for all current overrides in the package.json, returning a link to the PR. If the registry is not on GitHub, this would need to be done manually, and instead they would just be given the branch name. It could behave similarly to the jsDelivr bot - https://github.com/jsdelivr/jsdelivr/pull/3038.\r\n4. On the next install, when overrides in the package.json match the override looked up in the registry, these can be automatically cleared out (perhaps with a prompt asking the user about this first, or at least with a message).\r\n\r\nIf I've missed scenarios in the above please let me know.\r\n\r\nThe nice thing is this workflow can be implemented gradually as well from 1 - 4."},"comment":{"url":"https://api.github.com/repos/jspm/jspm-cli/issues/comments/107241112","html_url":"https://github.com/jspm/jspm-cli/issues/398#issuecomment-107241112","issue_url":"https://api.github.com/repos/jspm/jspm-cli/issues/398","id":107241112,"user":{"login":"brianfeister","id":806536,"avatar_url":"https://avatars.githubusercontent.com/u/806536?v=3","gravatar_id":"","url":"https://api.github.com/users/brianfeister","html_url":"https://github.com/brianfeister","followers_url":"https://api.github.com/users/brianfeister/followers","following_url":"https://api.github.com/users/brianfeister/following{/other_user}","gists_url":"https://api.github.com/users/brianfeister/gists{/gist_id}","starred_url":"https://api.github.com/users/brianfeister/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/brianfeister/subscriptions","organizations_url":"https://api.github.com/users/brianfeister/orgs","repos_url":"https://api.github.com/users/brianfeister/repos","events_url":"https://api.github.com/users/brianfeister/events{/privacy}","received_events_url":"https://api.github.com/users/brianfeister/received_events","type":"User","site_admin":false},"created_at":"2015-05-31T20:15:58Z","updated_at":"2015-05-31T20:15:58Z","body":"I'm using this in my project. It works. "}}