Commit Graph

24 Commits

Author SHA1 Message Date
Stephane Nicoll
42c62a7fd3 Make report encoding explicit
Closes gh-255
2016-07-13 09:12:38 +02:00
Stephane Nicoll
c3dfbc828e Polish custom maven parent pom support 2016-07-12 16:07:46 +02:00
Stephane Nicoll
6089f49c1a Add build-specific tests 2016-07-12 14:42:41 +02:00
Stephane Nicoll
6099a1c6bc Externalize dependency management plugin version
Closes gh-253
2016-07-12 14:29:58 +02:00
Stephane Nicoll
f45228376f Polish contribution
Closes gh-223
2016-07-08 17:09:21 +02:00
Ryan Gardner
625d5bee15 Customize the parent pom to use
See gh-223
2016-07-08 14:54:33 +02:00
Stephane Nicoll
bd323680ea Fix test assertion
Make sure to normalize the content that's read from disk to ensure
to adapt any platform-specific characters.

Closes gh-247
2016-07-08 14:45:57 +02:00
Stephane Nicoll
0ac320e5ae Enable strict validation of dependencies
Previously, if one invokes the service asking for dependency `foo` and
`foo` does not exist we created a starter for it, that is
`spring-boot-starter-foo`. This mechanism was put in place because we
don't know all starters and to offer a nice fallback for users who know
what they're doing.

That statement proved to be wrong since users actually discover new
starters via the service and don't seem to attempt to create such starter
that are located in the `org.springframework.boot` groupId anyway. Most
if not all of those are pilot errors.

This commit enables strict validation of dependencies and generate an
appropriate exception if it isn't defined in the meta-data.

Closes gh-234
2016-07-08 14:37:41 +02:00
Stephane Nicoll
a3e902b8f0 Prevent ArrayIndexOutOfBoundsException
This commit switches SingleSelectCapability content to
CopyOnWriteArrayList to prevent ArrayIndexOutOfBoundsException in case
of concurrent updates of boot versions.

Note that there is way to mitigate that in 1.4 with the use of the `sync`
attribute, see gh-251

Closes gh-229
2016-07-08 11:45:14 +02:00
Stephane Nicoll
4192e601fe Fix typo
See gh-243
2016-07-06 11:02:20 +02:00
Stephane Nicoll
f1322750b8 Fix SpringBootServletInitializr import
As of Spring Boot 1.4.0.M3, `SpringBootServletInitializer` has been
relocated to the `org.springframework.boot.web.support` package. This
commit makes sure to use the new location if a project is generated for
Spring Boot `1.4.0.M3` or higher.

Closes gh-243
2016-07-06 10:44:08 +02:00
Stephane Nicoll
1ac5e1c14b Polish contribution
Closes gh-226
2016-07-06 10:10:27 +02:00
Brian Devins
70c05ba246 Add dependency type attribute
See gh-226
2016-07-06 10:03:14 +02:00
Stephane Nicoll
6d8e57aaf0 Upgrade to dependency-management-plugin 0.6.0.RELEASE
Closes gh-242
2016-07-01 09:49:24 +02:00
Spencer Gibb
3824a8547e Upgrade maven-wrapper to use Maven 3.3.9
Closes gh-240
2016-06-25 11:47:52 +02:00
Stephane Nicoll
5f44f54e3a Upgrade to Gradle 2.13
Closes gh-233
2016-05-19 23:42:49 +02:00
Vedran Pavic
1dd264dd66 Remove explicit Gradle wrapper task
Closes gh-222
2016-05-01 08:28:53 +02:00
Stephane Nicoll
2d9ac9bd5a Improve dependency mapping to include coordinates
This commit improves the dependency mapping infrastructure to include the
groupId and artifactId attributes alongside the existing version. For
consistency, the attribute has been renamed from `versions` to
`mappings`.

This allows to better support the `redis` use case: the starter was
renamed from `spring-boot-starter-redis` to
`spring-boot-starter-data-redis` and previously we had two entries
excluding each other using version ranges.

Closes gh-219
2016-04-24 05:20:59 +02:00
Stephane Nicoll
abf16f8b1a Fix typo 2016-04-14 16:09:18 +02:00
Stephane Nicoll
658475ad4f Add support for new test infrastructure
Spring Boot `1.4.0.M2` brings a new test infrastructure with nice
defaults and deprecates `SpringBootConfiguration` in the process.

This commits automatically upgrades generated project to this new
infrastructure if Spring Boot `1.4.0.M2` or later is available.

Closes gh-215
2016-04-08 18:24:50 +02:00
Stephane Nicoll
046e39f232 Improve test coverage
This commit improves the test coverage to add strict template assertion
for well known use cases. This allows to catch obvious template issues.
2016-04-08 16:57:44 +02:00
Stephane Nicoll
544f7482d3 Fix war kotlin project
This commit fixes the generation of a web-based project using Kotlin by
propertly detecting the `ServletInitializer` template.

Closes gh-217
2016-04-08 16:33:46 +02:00
Stephane Nicoll
faba863db3 Fix template glitch
The project structure change has introduced some glitch that broke most
of the template.
2016-04-08 14:28:14 +02:00
Stephane Nicoll
542ee7d91b Modularize project structure
This commit splits the feature of Spring Initializr in several modules:

* `initializr-generator` is a standalone library that is responsible for
generating projects based on a `File` directory. It has a minimal set of
dependencies and is not web-related
* `initializr-web` provides the web integration (project generation,
meta-data, etc)
* `initializr-actuator` is an optional module that can be added to
support project-generation-specific statistics

Closes gh-214
2016-04-08 12:01:38 +02:00