This commit add two additional attributes to a dependency: weight
and keywords.
Weight is a numeric value (default to 0) that allows to order
dependencies search result in a sensible manner. This is a UI feature
only and is not exposed in the meta-data.
Keywords provides a list of words that are added to the source of terms
that the UI use to discover dependencies. It's not exposed either.
Both are exposed by the UI specific controller (`/ui/dependencies`).
See gh-145
* update keyboard shortcuts
* update dependencies descriptions
* add a second button down the page, after the dependencies
* when autocompleting a dependency that's already selected, unselect it
* synchronize packageName with groupId
* synchronize artifact name with artifactId
* fix tabindex order for form fields
See gh-145
There are various reports that things are broken with the first Spring
Boot 1.3 milestone and the currently released Spring Cloud version.
We're now hiding it until the underlying issue is fixed.
If a RedisConnectionFactory is detected the system will now export
metrics to redis every 5s (initializr.metrics.rateMillis). Metric
names are prefixed with <id>.<hex>. where <id> defaults to the
application name (initializr.metrics.id) and <hex> is unique. An
aggregator app can then pick up the values and (for instance)
continue counters across restarts.
The code is meant to be easier to upgrade Spring Boot 1.3
There are 2 beans that we can simply remove when we upgrade to 1.3.
Meanwhile, the app will run with 1.3 (or 1.2) for testing if you
uncomment the @ExportMetricWriter.
Add an extra group with the databases that Boot supports out-of-the-box.
This is a first step of a better user experience when someone selects
the `data-jpa` or `jdbc` starter as it requires a Database to operate and
none is provided by default.
Closes gh-84
Previously, it was not possible to define the Spring Boot version that
a dependency requires. As a result, many new starters implemented as part
of Spring Boot 1.2 are not available.
Each dependency can now define a `versionRange` attribute that defines
the Spring Boot version range that it supports. The range is defined
either as a single version, in which case it defines that version and
any later versions or using brackets. A square bracket (`[` or `]`)
denotes an inclusive range while a round bracket (`(` or `)`) denotes an
exclusive range.
Bumped the current-metadata format to 2.1 to include this additional
`versionRange` attribute, that is
application/vnd.initializr.v2.1+json
Existing clients requesting v2 will not get any dependency that defines
a `versionRange` attribute.
Closes gh-62
Add an explicit support for curl by returning a text description of the
service instead of the raw meta-data. curl users can still discover the
json metadata by setting the appropriate Accept header.
Also support for explicit "text/plain" if the user requires it. In this
case a generic text description is returned.
Closes gh-67