{"action":"created","issue":{"url":"https://api.github.com/repos/broadinstitute/gatk-protected/issues/473","repository_url":"https://api.github.com/repos/broadinstitute/gatk-protected","labels_url":"https://api.github.com/repos/broadinstitute/gatk-protected/issues/473/labels{/name}","comments_url":"https://api.github.com/repos/broadinstitute/gatk-protected/issues/473/comments","events_url":"https://api.github.com/repos/broadinstitute/gatk-protected/issues/473/events","html_url":"https://github.com/broadinstitute/gatk-protected/issues/473","id":151691444,"number":473,"title":"Devise a dev/release workflow so that release of latest CNV tools will not be blocked by an unstable HaplotypeCaller, and vice versa","user":{"login":"droazen","id":798637,"avatar_url":"https://avatars.githubusercontent.com/u/798637?v=3","gravatar_id":"","url":"https://api.github.com/users/droazen","html_url":"https://github.com/droazen","followers_url":"https://api.github.com/users/droazen/followers","following_url":"https://api.github.com/users/droazen/following{/other_user}","gists_url":"https://api.github.com/users/droazen/gists{/gist_id}","starred_url":"https://api.github.com/users/droazen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/droazen/subscriptions","organizations_url":"https://api.github.com/users/droazen/orgs","repos_url":"https://api.github.com/users/droazen/repos","events_url":"https://api.github.com/users/droazen/events{/privacy}","received_events_url":"https://api.github.com/users/droazen/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/broadinstitute/gatk-protected/labels/question","name":"question","color":"cc317c"},{"url":"https://api.github.com/repos/broadinstitute/gatk-protected/labels/release_engineering","name":"release_engineering","color":"fbca04"}],"state":"open","locked":false,"assignee":{"login":"droazen","id":798637,"avatar_url":"https://avatars.githubusercontent.com/u/798637?v=3","gravatar_id":"","url":"https://api.github.com/users/droazen","html_url":"https://github.com/droazen","followers_url":"https://api.github.com/users/droazen/followers","following_url":"https://api.github.com/users/droazen/following{/other_user}","gists_url":"https://api.github.com/users/droazen/gists{/gist_id}","starred_url":"https://api.github.com/users/droazen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/droazen/subscriptions","organizations_url":"https://api.github.com/users/droazen/orgs","repos_url":"https://api.github.com/users/droazen/repos","events_url":"https://api.github.com/users/droazen/events{/privacy}","received_events_url":"https://api.github.com/users/droazen/received_events","type":"User","site_admin":false},"milestone":null,"comments":8,"created_at":"2016-04-28T16:50:13Z","updated_at":"2016-04-29T16:02:24Z","closed_at":null,"body":"This capability would be useful if it turns out that the CNV tools (for example) need to be released much more frequently than the GATK as a whole. We don't want a release of the CNV tools to be blocked for a long time because something else in the toolkit (like the `HaplotypeCaller`) is not ready for release. \r\n\r\nThere could be a `properties` file in the jar that controls which tools are exposed via the command-line -- this way we could publish a jar that exposes only the CNV tools, for example.\r\n\r\nAn alternative approach would be to use branching and cherry-picking to do this kind of selective release,  or split the GATK into even more repositories, but I'm not sure those approaches would be preferable."},"comment":{"url":"https://api.github.com/repos/broadinstitute/gatk-protected/issues/comments/215779225","html_url":"https://github.com/broadinstitute/gatk-protected/issues/473#issuecomment-215779225","issue_url":"https://api.github.com/repos/broadinstitute/gatk-protected/issues/473","id":215779225,"user":{"login":"vdauwera","id":2748435,"avatar_url":"https://avatars.githubusercontent.com/u/2748435?v=3","gravatar_id":"","url":"https://api.github.com/users/vdauwera","html_url":"https://github.com/vdauwera","followers_url":"https://api.github.com/users/vdauwera/followers","following_url":"https://api.github.com/users/vdauwera/following{/other_user}","gists_url":"https://api.github.com/users/vdauwera/gists{/gist_id}","starred_url":"https://api.github.com/users/vdauwera/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vdauwera/subscriptions","organizations_url":"https://api.github.com/users/vdauwera/orgs","repos_url":"https://api.github.com/users/vdauwera/repos","events_url":"https://api.github.com/users/vdauwera/events{/privacy}","received_events_url":"https://api.github.com/users/vdauwera/received_events","type":"User","site_admin":false},"created_at":"2016-04-29T16:02:24Z","updated_at":"2016-04-29T16:02:24Z","body":"3 and 4 both produce an acceptable result for me but I could see 3 being too hard on the dev team. So I'll go with 4. I think the inconvenience of cutting a special cherry picked release is enough to dissuade casual/unnecessary releases, but low enough to not be a blocker if we really do need to release a hot fix."}}