{"action":"created","issue":{"url":"https://api.github.com/repos/spring-io/initializr/issues/62","labels_url":"https://api.github.com/repos/spring-io/initializr/issues/62/labels{/name}","comments_url":"https://api.github.com/repos/spring-io/initializr/issues/62/comments","events_url":"https://api.github.com/repos/spring-io/initializr/issues/62/events","html_url":"https://github.com/spring-io/initializr/issues/62","id":52593013,"number":62,"title":"Define version ranges for dependencies","user":{"login":"snicoll","id":490484,"avatar_url":"https://avatars.githubusercontent.com/u/490484?v=3","gravatar_id":"","url":"https://api.github.com/users/snicoll","html_url":"https://github.com/snicoll","followers_url":"https://api.github.com/users/snicoll/followers","following_url":"https://api.github.com/users/snicoll/following{/other_user}","gists_url":"https://api.github.com/users/snicoll/gists{/gist_id}","starred_url":"https://api.github.com/users/snicoll/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/snicoll/subscriptions","organizations_url":"https://api.github.com/users/snicoll/orgs","repos_url":"https://api.github.com/users/snicoll/repos","events_url":"https://api.github.com/users/snicoll/events{/privacy}","received_events_url":"https://api.github.com/users/snicoll/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/spring-io/initializr/labels/enhancement","name":"enhancement","color":"84b6eb"}],"state":"open","locked":false,"assignee":{"login":"bclozel","id":103264,"avatar_url":"https://avatars.githubusercontent.com/u/103264?v=3","gravatar_id":"","url":"https://api.github.com/users/bclozel","html_url":"https://github.com/bclozel","followers_url":"https://api.github.com/users/bclozel/followers","following_url":"https://api.github.com/users/bclozel/following{/other_user}","gists_url":"https://api.github.com/users/bclozel/gists{/gist_id}","starred_url":"https://api.github.com/users/bclozel/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bclozel/subscriptions","organizations_url":"https://api.github.com/users/bclozel/orgs","repos_url":"https://api.github.com/users/bclozel/repos","events_url":"https://api.github.com/users/bclozel/events{/privacy}","received_events_url":"https://api.github.com/users/bclozel/received_events","type":"User","site_admin":false},"milestone":null,"comments":2,"created_at":"2014-12-21T11:35:26Z","updated_at":"2015-01-27T16:56:50Z","closed_at":null,"body":"With the release of Spring Boot 1.2.0, there are a set of new starters that are being made available but they are not defined yet. The main reason behind that is that if the user selects such starter and then choose Spring Boot 1.1.x the build will fail since that stater does not exist in that version.\r\n\r\nThis is a general issue (Spring Boot being the primary consumer in the case of `start.spring.io`). \r\n\r\nThe purpose of this issue is to add an optional `versionRange` attribute to each dependency that would expose which versions apply for that dependency, something like:\r\n\r\n```\r\n\r\ninitializr:\r\n  dependencies:\r\n    - name: Group\r\n      content:\r\n        - name: Foo\r\n          id: foo\r\n          versionRanges:\r\n            - springBoot:\r\n                from: 1.2.0.RELEASE\r\n       - name: Bar\r\n          id: bar\r\n          versionRanges:\r\n            - springBoot:\r\n                from: 1.0.2.RELEASE\r\n                to: 1.2.0.M1\r\n```\r\n\r\nThat information would be exposed in the meta-data (v2.1 coming?) so that the client can use that information to react accordingly. In the case of the web UI, some javascript hook should enable/disable the visibility of the starter according to the Spring boot version chosen by the user."},"comment":{"url":"https://api.github.com/repos/spring-io/initializr/issues/comments/71683431","html_url":"https://github.com/spring-io/initializr/issues/62#issuecomment-71683431","issue_url":"https://api.github.com/repos/spring-io/initializr/issues/62","id":71683431,"user":{"login":"snicoll","id":490484,"avatar_url":"https://avatars.githubusercontent.com/u/490484?v=3","gravatar_id":"","url":"https://api.github.com/users/snicoll","html_url":"https://github.com/snicoll","followers_url":"https://api.github.com/users/snicoll/followers","following_url":"https://api.github.com/users/snicoll/following{/other_user}","gists_url":"https://api.github.com/users/snicoll/gists{/gist_id}","starred_url":"https://api.github.com/users/snicoll/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/snicoll/subscriptions","organizations_url":"https://api.github.com/users/snicoll/orgs","repos_url":"https://api.github.com/users/snicoll/repos","events_url":"https://api.github.com/users/snicoll/events{/privacy}","received_events_url":"https://api.github.com/users/snicoll/received_events","type":"User","site_admin":false},"created_at":"2015-01-27T16:56:50Z","updated_at":"2015-01-27T16:56:50Z","body":"@bclozel my branch has a basic setup that should work for you. The \"standard\" configuration has been upgraded with a few additional starters (cloud-connectors, jersey namely). \r\n\r\nComing up next:\r\n\r\n1. Filter out any dependency that has a `since` attribute with V2 since the client won't understand it\r\n2. Validate that each required dependency is valid  for the chosen Spring Boot version and generate a proper HTTP status code otherwise.\r\n\r\nI think that none of this is blocking you. Let me know if that's not the case."}}