1157 Commits

Author SHA1 Message Date
Andy Wilkinson
a685d9ec92 Run Gradle integration tests against multiple versions of Gradle
Closes gh-9365
2017-05-31 12:17:12 +01:00
Andy Wilkinson
5f3462f358 Use ObjectFactory rather than Usages to create Usage on Gradle 4.0
Usages has been removed in Gradle 4.0 and replaced with the use of
a new ObjectFactory API that can be used to create a Usage. This
commit uses reflection to access the ObjectFactory from the Project
and use it to create a Usage when an attempt to use Usages fails.

Closes gh-9364
2017-05-31 12:17:12 +01:00
Stephane Nicoll
e8aa3a3a8e Upgrade to Maven War Plugin 3.1.0
Closes gh-9344
2017-05-29 16:16:43 +02:00
Stephane Nicoll
294bcbe962 Merge branch '1.5.x' 2017-05-29 14:56:34 +02:00
Stephane Nicoll
9b2ad6100e Fix reference of custom layout example
Closes gh-9342
2017-05-29 14:56:14 +02:00
Johnny Lim
6939ff1e65 Polish
Closes gh-9330
2017-05-28 17:46:43 +02:00
Andy Wilkinson
6c3a27dadf Merge branch '1.5.x' 2017-05-23 20:44:46 +01:00
Andy Wilkinson
f7127e5522 Ensure that closing a JarFile closes all underlying resources
Closes gh-8871
2017-05-23 20:42:59 +01:00
Andy Wilkinson
d5438c299c Polish "Use try-with-resources to close resources automatically"
- Apply code formatting
- Use try-with-resources in many other places that were missed in the
  pull request

Closes gh-8045
2017-05-23 19:38:48 +01:00
Phillip Webb
302f038e84 Polish 2017-05-15 20:35:29 -07:00
Phillip Webb
f4444a36b3 Merge branch '1.5.x' 2017-05-15 16:00:28 -07:00
Phillip Webb
74f411faed Formatting 2017-05-15 15:58:30 -07:00
Stephane Nicoll
2e94fd4434 Remove support for Spring Loaded
Closes gh-7978
2017-05-15 14:18:06 +03:00
Stephane Nicoll
cdf5f6e0ee Add support for deprecation level in manual metadata
This commit allows to specify a deprecation level to a manual metadata
entry. The purpose of that new attribute is to distinguish cases where
the property is still bound (default) from cases where the property no
longer exists and won't be bound.

This gives the opportunity to IDEs to still show the property as an
error and offer documentation and an action to rename it if a
replacement exists.

Closes gh-9074
2017-05-15 12:39:15 +03:00
Madhura Bhave
53493fdd86 Make detection of nested config more lenient
Closes gh-3454
2017-05-12 08:58:17 -07:00
Stephane Nicoll
1835dd7b94 Merge branch '1.5.x' 2017-05-12 16:50:26 +02:00
Stephane Nicoll
643dea18ee Accommodate with Lombok generation ordering
Previously, if lombok was running before the configuration metadata
annotation processor, duplicated keys were created as both the
getter/setter and the special lombok handling applied.

This commit makes sure to be lenient by removing duplicate metadata
entries. This commit also makes sure to identify the getter of a
nested group if present. That way, the sourceMethod is set consistently
and avoid the creation of a duplicate group.

Closes gh-8886
2017-05-12 16:48:31 +02:00
Andy Wilkinson
e4f80e68fc Do not run Gradle plugin's tests when built with -DskipTests
Closes gh-9169
2017-05-12 14:39:47 +01:00
Stephane Nicoll
527c2e7b75 Add support for deprecation level in manual metadata
This commit allows to specify a deprecation level to a manual metadata
entry. The purpose of that new attribute is to distinguish cases where
the property is still bound (default) from cases where the property no
longer exists and won't be bound.

This gives the opportunity to IDEs to still show the property as an
error and offer documentation and an action to rename it if a
replacement exists.

Closes gh-9074
2017-05-11 11:46:06 +02:00
Stephane Nicoll
3547815805 Make sure Maven integration tests use a consistent java version
Closes gh-9149
2017-05-10 17:15:59 +02:00
Stephane Nicoll
5e14383886 Merge branch '1.5.x' 2017-05-09 09:38:47 +02:00
Stephane Nicoll
ea4e6fea35 Polish 2017-05-09 09:37:30 +02:00
Stephane Nicoll
f8e1345b75 Unify versions used in integration tests
This commit makes sure the integration tests use the same versions as
the one managed by `spring-boot-dependencies` (including Maven plugins).

Closes gh-8947
2017-05-09 09:36:21 +02:00
Johnny Lim
53e5d67cde Polish
Closes gh-9103
2017-05-07 10:32:12 +02:00
Andy Wilkinson
3abd8d3adf Drop support for configuring PropertiesLauncher with application.properties
Closes gh-8464
2017-05-04 17:01:07 +01:00
Stephane Nicoll
7b1fc01733 Fix checkstyle violations 2017-05-03 10:19:00 +02:00
Stephane Nicoll
063d301fd3 Make LayoutType public
Closes gh-9067
2017-05-03 09:15:34 +02:00
Andy Wilkinson
1ee9653f7c Group tasks and provide descriptions for tasks and configurations
Closes gh-8817
2017-04-28 17:40:05 +01:00
Andy Wilkinson
762a13e84f Configure assemble to depend upon bootJar or bootWar
Closes gh-8824
2017-04-28 16:48:48 +01:00
Andy Wilkinson
a6d24a3bfc Allow bootWar to package webapp resources in dirs that overlap loader
Previously, the presence of a src/main/webapp/org directory would
cause the execution of BootWar to fail due to an attempt to write
a duplicate org/ entry to the zip output stream.

This commit updates BootZipCopyAction so that FileTreeElements that
match a directory entry created while writing the loader classes are
skipped.

Closes gh-8972
2017-04-21 21:02:15 +01:00
Spring Buildmaster
9768b0a8c2 Next Development Version 2017-04-21 08:32:01 +00:00
Andy Wilkinson
ae0700efc1 Try to make RunningDocumentationTests platform independent
Windows seems unable to decide if the temp dir is in System32 or
system32 which breaks the comparison. This commit attempts to appease
the gods of case sensitity by reducing the portion of the path that we
check so that system32 vs System32 doesn't come into it.

See gh-8920
2017-04-20 13:47:58 +01:00
Spring Buildmaster
d719d2cbbc Next Development Version 2017-04-20 12:46:19 +00:00
Andy Wilkinson
079b324e21 Make RunningDocumentationTests platform independent
Closes gh-8920
2017-04-20 11:52:32 +01:00
Phillip Webb
81fef71fcb Merge branch '1.5.x' 2017-04-19 22:48:46 -07:00
Dave Syer
14638e67bc Extended PropertiesLauncher class location logic
Update `PropertiesLauncher` so that classes can be loaded outside of
`BOOT-INF/classes`. You can use a subdirectory, or the root directory
of an external jar (but not the parent archive to avoid issues
with agents and awkward delegation models).

Fixes gh-8480
Closes gh-8486
2017-04-19 22:18:12 -07:00
Stephane Nicoll
65986503c1 Fix glitch in doc
Closes gh-8921
2017-04-18 09:36:05 +02:00
Huang YunKun
f303ce5ff4 Fix windows build of the Gradle plugin
Use family instead of name to check os system

Closes gh-8907
2017-04-17 15:01:03 +02:00
Andy Wilkinson
0186fb2e84 Fail fast when plugin is used with an unsupported version of Gradle
Closes gh-8820
2017-04-06 09:10:07 +01:00
Andy Wilkinson
ab18901ad0 Ensure that entry is completely configured before putting to the stream
Previously, BootZipCopyAction would put the next entry to the stream
and then, in the case of a stored entry, configure its size, CRC32
etc. This had the benefit of being able to copy the entry into the
zip once, capturing its bytes for the calculation of the CRC32 as it
was copied. Unfortunately, while this produced zip files that could
be read by the JVM, other zip tools failed. For example, Go's zip
support that's used by CloudFoundry could not unzip the archive.

This commit updates BootZipCopy action to completely configure the
entry before putting it to the stream. This has the downside of
copying the file twice (once for the CRC32 and once to actually write
it to the zip stream) but this appears to be unavoidable as we have to
produce archives that can be unzipped without problems on all
platforms.

Closes gh-8816
2017-04-05 13:03:03 +01:00
Andy Wilkinson
2f64cdfa98 Include directory entries when copying loader into a Boot archive
See gh-8816
2017-04-05 13:02:57 +01:00
Andy Wilkinson
15d6c9d5c7 Merge pull request #8818 from Johnny Lim
* gh-8818:
  Fix typos in new Gradle plugin
2017-04-05 12:30:25 +01:00
Johnny Lim
8d921d49aa Fix typos in new Gradle plugin
Closes gh-8818
2017-04-05 12:29:52 +01:00
Andy Wilkinson
5bc721f3ad Polish Gradle plugin's documentation 2017-04-05 12:25:47 +01:00
Phillip Webb
ad38776de3 Polish 2017-04-04 09:48:10 -07:00
Phillip Webb
ddcb5ee328 Polish 2017-04-04 09:36:27 -07:00
Andy Wilkinson
7f5ca24ff9 Make Maven Central available to Gradle plugin's build 2017-04-04 16:47:05 +01:00
Andy Wilkinson
01166381a0 Provide separate documentation (API and reference) for Gradle plugin 2017-04-04 15:33:27 +01:00
Andy Wilkinson
d43b1ae3a5 Polish the Gradle plugin's javadoc 2017-04-04 15:33:27 +01:00
Andy Wilkinson
85267def3e Integration test the reaction to the Application plugin being applied 2017-04-04 15:33:27 +01:00