{"action":"created","issue":{"url":"https://api.github.com/repos/Roave/SecurityAdvisories/issues/9","labels_url":"https://api.github.com/repos/Roave/SecurityAdvisories/issues/9/labels{/name}","comments_url":"https://api.github.com/repos/Roave/SecurityAdvisories/issues/9/comments","events_url":"https://api.github.com/repos/Roave/SecurityAdvisories/issues/9/events","html_url":"https://github.com/Roave/SecurityAdvisories/issues/9","id":55660783,"number":9,"title":"Optimize duplicate conflicting versions","user":{"login":"stof","id":439401,"avatar_url":"https://avatars.githubusercontent.com/u/439401?v=3","gravatar_id":"","url":"https://api.github.com/users/stof","html_url":"https://github.com/stof","followers_url":"https://api.github.com/users/stof/followers","following_url":"https://api.github.com/users/stof/following{/other_user}","gists_url":"https://api.github.com/users/stof/gists{/gist_id}","starred_url":"https://api.github.com/users/stof/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/stof/subscriptions","organizations_url":"https://api.github.com/users/stof/orgs","repos_url":"https://api.github.com/users/stof/repos","events_url":"https://api.github.com/users/stof/events{/privacy}","received_events_url":"https://api.github.com/users/stof/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/Roave/SecurityAdvisories/labels/enhancement","name":"enhancement","color":"84b6eb"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":6,"created_at":"2015-01-27T19:11:20Z","updated_at":"2015-09-01T16:41:58Z","closed_at":null,"body":"When a package has several vulnerabilities, the generated conflict constraint may be much more complex than necessary. See for instance the rule for FOSUserBundle (much simpler than the symfony one):\r\n\r\n```\r\n>=1.2.0,<1.2.1|>=1.2.0,<1.2.4|>=1.2.0,<1.3.0|>=1.3.0,<1.3.5|>=1.2.0,<1.2.5|>=1.3.0,<1.3.3\r\n```\r\n\r\nThe third constraint is a superset of the first 2 ones (and of the 5th one). Deduplicating constraints would make the dependency resolution much easier for Composer later."},"comment":{"url":"https://api.github.com/repos/Roave/SecurityAdvisories/issues/comments/136787131","html_url":"https://github.com/Roave/SecurityAdvisories/issues/9#issuecomment-136787131","issue_url":"https://api.github.com/repos/Roave/SecurityAdvisories/issues/9","id":136787131,"user":{"login":"Ocramius","id":154256,"avatar_url":"https://avatars.githubusercontent.com/u/154256?v=3","gravatar_id":"","url":"https://api.github.com/users/Ocramius","html_url":"https://github.com/Ocramius","followers_url":"https://api.github.com/users/Ocramius/followers","following_url":"https://api.github.com/users/Ocramius/following{/other_user}","gists_url":"https://api.github.com/users/Ocramius/gists{/gist_id}","starred_url":"https://api.github.com/users/Ocramius/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Ocramius/subscriptions","organizations_url":"https://api.github.com/users/Ocramius/orgs","repos_url":"https://api.github.com/users/Ocramius/repos","events_url":"https://api.github.com/users/Ocramius/events{/privacy}","received_events_url":"https://api.github.com/users/Ocramius/received_events","type":"User","site_admin":false},"created_at":"2015-09-01T16:41:58Z","updated_at":"2015-09-01T16:41:58Z","body":"@beberlei that's a good first optimization step, yes"}}