Commit Graph

106 Commits

Author SHA1 Message Date
Stephane Nicoll
72184131a3 Manage Kotlin version consistently
Closes gh-564
2017-12-28 13:42:04 +01:00
Stephane Nicoll
faa7de99c2 Add version range support for Kotlin version
Closes gh-556
2017-12-11 16:18:43 +01:00
Stephane Nicoll
6fbb1262d3 Polish 2017-12-11 14:15:27 +01:00
Stephane Nicoll
baf1022e6f Polish "Allow generation of custom files"
Closes gh-552
2017-12-03 02:00:42 +00:00
Torsten Walter
f224c6a38a Allow generation of custom files
To generate additional files, `doGenerateProjectStructure` should be
overridden but doing so doesn't work as `ProjectGeneratedEvent` is
publised as part as the base implementation.

See gh-552
2017-12-03 01:28:12 +00:00
Stephane Nicoll
e96968d2af Remove explicit references to Java versions in the generator
Closes gh-543
2017-11-16 14:42:27 +01:00
Stephane Nicoll
c33b1df90c Add support for Kotlin's runApplication
Spring Boot 2.0.0.M6 offers a better integration with Kotlin. A
top-level `runApplication` function can be used to start the app and
additional dependency and plugin management are provided.

This commit simplifies the way a Kotlin-based project is generated when
running with a compatible version

Closes gh-534
2017-10-27 14:18:05 +02:00
Stephane Nicoll
9d7b2e95d6 Improve imports and annotations model 2017-10-27 11:43:27 +02:00
Stephane Nicoll
75b9c14378 Upgrade to Maven wrapper 3.5.2
Closes gh-529
2017-10-25 11:01:20 +02:00
Stephane Nicoll
f103e397f4 Upgrade to Gradle 4.2 for Spring Boot 2+
Closes gh-513
2017-09-29 14:53:41 +02:00
Spring Buildmaster
7f4db38cee Next Development Version 2017-09-18 16:00:41 +00:00
Stephane Nicoll
8efe5f34be Ensure configuration can be serialized
Closes gh-506
2017-09-18 15:02:01 +02:00
Stephane Nicoll
cf93d5ddef Rework caching configuration
Closes gh-401
2017-09-15 13:29:45 +02:00
Stephane Nicoll
dc69a352e9 Add group to generated gradle projects
Closes gh-478
2017-09-15 13:12:11 +02:00
Stephane Nicoll
444a9f461b Fix package name cleanup algorithm with version
This commit improves the cleanup algorithm to accept artifactId with
versions in them as it's used as part of the package name by
default. `foo-1.4.5` now generates `foo145`.

Closes gh-436
2017-09-09 14:49:08 +02:00
Stephane Nicoll
9976d8e20d Fix generation of war project with Spring Boot 2+
As of Spring Boot 2.0.0.M1, the SpringBootServletInitializer class has
been relocated to the support package. This commit fixes the generation
of war project as of that version.

Closes gh-502
2017-09-07 09:01:19 +02:00
Andy Wilkinson
c6ebf51a53 Use Gradle 4 for Gradle projects post Spring Boot 2.0 M3
Closes gh-472
2017-07-28 14:14:15 +01:00
Stephane Nicoll
905b5257a5 Revert "Ignore out/ directory with Gradle"
This commit reverts 495f8fa
2017-07-26 09:19:08 +02:00
Stephane Nicoll
495f8fab1c Ignore out/ directory with Gradle
Closes gh-469
2017-07-26 08:59:03 +02:00
Stephane Nicoll
fefde60a2e Use default methods for ProjectRequestPostProcessor 2017-07-03 08:14:38 +02:00
Stephane Nicoll
8832201c43 Add dependency range info
This commit improves the `info` endpoint to contain a
`dependency-ranges` entry that is similar than the `bom-ranges` entry
for BOMs.

Each dependency that has a version mapping is listed with the range and
the related version. Some dependencies weren't managed and are now. For
those a `managed` version is used to indicate which Spring Boot versions
do not require to specify a version for the dependency.

Closes gh-453
2017-06-25 10:34:23 +02:00
Stephane Nicoll
370d9a4b31 Upgrade to Gradle 3.5.1
Closes gh-409
2017-06-16 18:08:18 +02:00
Stephane Nicoll
ddbadf7700 Fix version range for Spring Boot 2 gradle plugin
Closes gh-431
2017-05-17 10:00:09 +02:00
Stephane Nicoll
767203b7d5 Polish "Derive package name from groupId and artifactId"
Closes gh-423
2017-05-11 16:29:16 +02:00
Brian Clozel
bb578d6fdf Derive package name from groupId and artifactId
This commit derives the package name of the application from the
artifact's `groupId` and `artifactId`. Previously sources were put in a
package that mirrors the groupId value.

This goes against the "unique package per application" policy that we
try to enforce. Even if the package name value can be customized
manually, deriving it automatically from the values provided in those
fields will help structure codebases.

With this change, the package name is derived like this:
* groupId `com.example`, artifactId `bookmarks` -> package
`com.example.bookmarks`
* groupId `com.example`, artifactId `user-management` -> package
`com.example.usermanagement`

This commit fixes the package name generation on the server, but also
in the web interfaces when the user updates the form fields.

Fixes gh-421
2017-05-11 14:36:47 +02:00
Stephane Nicoll
363eb25138 Polish 2017-04-30 19:21:01 +02:00
Sebastien Deleuze
0e3216e3ac Enable Kotlin incremental compilation with Maven
Closes gh-415
2017-04-26 17:22:17 +02:00
Stephane Nicoll
7a676095a0 Polish 2017-04-23 12:08:24 +02:00
Stephane Nicoll
fae8769748 Improve support for version token
This commit fixes the use of version token with Gradle. The standard
format with maven is "foo-bar.version" while Gradle uses
"fooBarVersion". The former format does not work with Gradle as it
attempts to interpret "-" as an operation.

A `VersionProperty` now defines a standard structure for the property
and allow to derive a camel cased version. That way, Maven still uses
the standard format while Gradle generates a consistent "fooBarVersion"
property.

Closes gh-396
2017-04-23 12:01:03 +02:00
Stephane Nicoll
aff85819a9 Upgrade to Maven Wrapper 0.2.1
Closes gh-413
2017-04-23 12:00:51 +02:00
Stephane Nicoll
af98413b43 Upgrade wrapper to Maven 3.5.0
Closes gh-404
2017-04-09 10:06:25 +02:00
Andy Wilkinson
c6f502cb9c Apply the dependency management plugin in Boot 2.0 Gradle projects
Closes gh-398
2017-03-31 14:04:08 +02:00
Stephane Nicoll
8ac7369138 Upgrade to Gradle 3.4.1
Closes gh-386
2017-03-29 12:37:04 +02:00
Stephane Nicoll
3c59c29855 Polish contribution
Closes gh-388
2017-03-15 16:49:46 +01:00
Sebastien Deleuze
6e7ff7fb58 Upgrade to Kotlin 1.1.1
This commit also enables Java 8 bytecode and uses kotlin-stdlib-jre7 or
kotlin-stdlib-jre8 dependencies when possible.

Closes gh-377
2017-03-15 16:02:30 +01:00
Stephane Nicoll
c6194d2357 Avoid overriding baseName for jar/war task
Closes gh-381
2017-03-15 14:19:11 +01:00
Stephane Nicoll
9e35b8acd6 Revert to Gradle 3.3
Gradle 3.4 is known to be broken in IntelliJ IDEA and breaks the getting
started experience of generated projects. This commit uses Gradle 3.3
until a bug fix release of IJ is available.

Closes gh-380
2017-03-13 14:36:24 +01:00
Stephane Nicoll
f07c8d594a Clarify spring-cloud-task entry
This commit provides a complete entry for Spring Cloud task and clarify
that no more customization is required as of 1.4. Previously, the entry
did not have any groupId/artifactId pair, leading to a default (wrong)
groupId/artifactId to be generated.

Closes gh-341
2017-03-10 08:49:56 +01:00
Stephane Nicoll
2b0e967e32 Upgrade to Gradle 3.4.1
This commit upgrades the wrapper version for Gradle 3 to the latest
version and enables it as of Spring Boot 1.5 (previously, Gradle 3 was
only applied as of Spring Boot 2).

Closes gh-380
2017-03-09 11:33:45 +01:00
Dave Syer
06f314dc8c Switch to Ant lib for tar/zip tasks
The commons wrapper we were using didn't support executable files
so Ant seems like the best choice ultimately, even if it has a
lot of features we don't use or need.
2017-02-25 09:31:04 +01:00
Stephane Nicoll
09fc98ef96 Polish contribution
Closes gh-349
2017-02-25 09:31:04 +01:00
Stephane Nicoll
5296d6a05f Code formatting 2017-02-25 09:31:03 +01:00
Dave Syer
fffcd8a774 Move generator templates to Mustache 2017-02-25 09:31:03 +01:00
Dave Syer
ac20d04985 Migrate initializr-generator to Java 2017-02-25 09:31:03 +01:00
Stephane Nicoll
0ff278a3d0 Migrate initializr-service to Java 2017-02-25 09:31:03 +01:00
Stephane Nicoll
2c0269c96b Fix initial Java migration
This commit fixes several issues with the initial java migration.

On MacOS, the name of the temp directory can be `T` and the new tgz API
requires a parent folder whose name has at least 3 characters.

The Selenium tests require a more precise element to show the advanced
section.

The integration tests were generation the docs snippet on the wrong
accept header.
2017-02-25 09:31:03 +01:00
Dave Syer
ec5a7da507 Migrate initializr-web to Java 2017-02-25 09:31:03 +01:00
Dave Syer
1385e82eb5 Additional visibility changes needed in new Java code 2017-02-25 09:31:03 +01:00
Dave Syer
ad6430b92a Migrate initializr-actuator to Java 2017-02-25 09:31:03 +01:00
Spring Buildmaster
e8bf50e662 Next development version 2017-02-03 13:55:17 +00:00