Commit Graph

36 Commits

Author SHA1 Message Date
Stephane Nicoll
fdc2430eb7 Update changelog 2016-02-01 15:05:48 +01:00
Stephane Nicoll
9139d10669 Re-apply GMavenPlus support
Closes gh-90
2016-01-14 13:47:43 +01:00
Stephane Nicoll
e720ac8e64 Update changelog 2016-01-12 14:42:49 +01:00
Stephane Nicoll
b8f8a43323 Revert GMavenPlus migration
GMavenPlus is not properly supported on Eclipse so a Groovy-based
project using Maven now breaks in that IDE. Let's revert the support
until we find a better solution.
2015-12-31 15:15:35 +01:00
Stephane Nicoll
dc137d8058 Clean package name if necessary
This commit validates that the user provided package name is valid.

Closes gh-114
2015-12-30 09:27:54 +01:00
Stephane Nicoll
b60ae74daf Update changelog 2015-12-29 15:59:58 +01:00
Stephane Nicoll
2b5afbcfa1 Update changelog 2015-10-06 15:07:38 +02:00
Stephane Nicoll
08a9c17a38 Update changelog 2015-10-06 11:13:50 +02:00
Stephane Nicoll
4401233771 Fix typo 2015-09-29 22:17:22 +02:00
Stephane Nicoll
be8ee1964f Maven wrapper support
Provide the maven wrapper with every Maven project so that the regular
`mvnw` command can be used with the version of maven that the service
currently supports.

Closes gh-137
2015-09-29 22:15:58 +02:00
Stephane Nicoll
1d8634fa17 Gradle wrapper support
Provide the gradle wrapper with every Gradle project so that the regular
`gradlew` command can be used with the version of gradle that the service
currently supports.

Closes gh-100
2015-09-29 21:56:05 +02:00
Stephane Nicoll
1f127088f2 Upgrade to Gradle 2.7
Closes gh-130
2015-09-29 16:36:48 +02:00
Stephane Nicoll
9507cfb3c2 Update changelog 2015-07-09 17:13:40 +02:00
Stephane Nicoll
95c5142056 Update changelog 2015-07-09 13:52:54 +02:00
Stephane Nicoll
1a4c668ba5 Remove start-class property from Maven build
If one rename the main application class everything works fine in the IDE
but fails on the command-line as the previous class name is hard-coded
in the POM. This is only strictly necessary when more than one main class
is present in the project.

Closes gh-120
2015-06-09 11:42:26 +02:00
Stephane Nicoll
f1f8786631 Polish
Polish metrics export feature added in 6f4d3f4

Closes gh-96
2015-06-04 14:19:17 +02:00
Stephane Nicoll
7fdde4b0e4 Update changelog 2015-06-04 11:36:50 +02:00
Stephane Nicoll
5143bd3af1 Add default options for a group of dependencies
BOM id and version range can now be shared at the group level. If no
specific attribute is set, the defaults from the group are inherited.

Closes gh-105
2015-04-20 14:47:36 +02:00
Stephane Nicoll
011dd7d67a Update changelog 2015-03-27 09:15:42 +01:00
Stephane Nicoll
cb86153b29 Support dependency version in Gradle
Previously, if a dependency defines an explicit version in the meta-data
it was not defined properly in the gradle build file.

Fixes gh-82
2015-03-04 13:57:55 +01:00
Stephane Nicoll
15c800a469 update changelog 2015-03-04 13:57:20 +01:00
Stephane Nicoll
bf8289b570 Add dependency scope support
Add an extra 'scope' attribute to any dependency (defaults to 'compile').

Update maven and gradle build templates to support compile, runtime,
provided and test dependencies. Also, dependencies are now sorted
according to their ids.

Closes gh-83
2015-02-25 10:45:47 +01:00
Stephane Nicoll
89536363f4 Allow baseDir parameter with sub-directory
Previously, specifying a baseDir with a value holding a sub-directory
would fail as only the first directory got created. This commit allows
baseDir to hold a sub-directory as well (e.g. something like 'foo/bar').

Fixes gh-81
2015-02-24 16:20:05 +01:00
Stephane Nicoll
8069c17946 Upgrade to Gradle 2.3
Closes gh-80
2015-02-24 16:08:44 +01:00
Stephane Nicoll
da2ced86f3 Add version range support for dependencies
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
2015-02-17 15:05:28 +01:00
Stephane Nicoll
5a4a2b9f81 Migrate smoke tests to Geb
Since Htmlunit does not provide a complete support for Javascript, smoke
tests are migrated to Gab (i.e. using Selenium and an actual browser).

This present a major challenge: it is not easy to assert the content of
a file that the browser downloads when it submits a form. First, the
browser should be configured to download the file directly instead of
opening a (native) pop-up asking the users where to download it. Then,
the tests should be aware of the location of the file in order to assert
it.

Hopefully, Firefox can be configured to achieve this goal.

Closes gh-75
2015-02-17 13:52:39 +01:00
Stephane Nicoll
1a213cdbc7 Remove support for deprecated meta-data V1
Closes gh-74
2015-02-12 11:33:21 +01:00
Stephane Nicoll
0e5e825181 Update project layout for Groovy-based projects
A groovy-based project on Maven provides a better developer experience
if the sources are located in src/main/java and src/test/java.

This commit updates the generator to use this new location while keeping
the existing src/main/groovy project for Gradle builds.

Fixes gh-71
2015-02-12 11:32:26 +01:00
Stephane Nicoll
bd6d493f75 Improve HAL urls
Remove `type` as a template variable since each action actually defines
the related type. This commit however does not address all the concerns
raised in gh-69; since the configuration is generic, there is no way to
know that a particular action handles one and only one type so removing
the type because it is redundant is not really possible.

Besides, the zip and tgz endpoints aren't exposed via configuration
either so offering such choice via the HAL-urls is not possible either.

Partially fixes gh-69
2015-02-12 11:30:48 +01:00
Stephane Nicoll
d2308a16b7 Fix typos in changelog 2015-01-21 08:31:05 +01:00
Stephane Nicoll
893966ad62 Add support for HTTPie
Closes gh-70
2015-01-20 18:59:45 +01:00
Stephane Nicoll
272db6ef7a Explicit support for curl
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
2015-01-20 18:52:32 +01:00
Ivan Sopov
e4a8e86047 Removing extra ) char from link 2015-01-16 16:49:23 +01:00
Stephane Nicoll
22e3567c42 Fix typo 2015-01-16 14:35:59 +01:00
Stephane Nicoll
3b0509a9bb Add baseDir option
Previously the generated archive wasn't self contained and the user had
to create a dedicated directory before extracting it in case the archive
utility does not handle that use case (MacOS supports that by default).

A baseDir request attribute has been added and generate a base directory
in the archive when set. It is enabled by default in the web UI and takes
the same value as the artifactId. Other clients are unaffected by this
change (and shouldn't probably).

Note that the legacy HTML form isn't impacted by this change either as
older STS versions expect the archive to have a very specific format.

curl-based tools can use that new baseDir request parameter to specify
that a base directory is required, something like

curl https://start.spring.io/starter.tgz -d baseDir=my-project

Closes gh-65
2015-01-16 14:29:57 +01:00
Stephane Nicoll
81df61931a Add changelog 2015-01-16 13:14:20 +01:00