Commit Graph

1115 Commits (6215336602371e14cb3c45009773a1f3a6e3723b)

Author SHA1 Message Date
Andy Wilkinson 379ba0dc00 Support Gradle 6.0
Previously, our Gradle plugin was not tested against Gradle 6.0,
a number of deprecation warnings were output when using the plugin
with Gradle 6, and some functionality related to the application
plugin did not work as expected.

This commit tests the plugin against Gradle 6. It also avoids calling
deprecated APIs. The plugin is compatibile against Gradle 4.10 where
the deprecated APIs' replacements are not available so reflection is
used to call the replcaements. Lastly, the way in which the base name
of the boot distribution that is created when the application plugin
is applied has been modified to ensure that it is effective when using
Gradle 6.

Closes gh-18663
5 years ago
Andy Wilkinson fc3f6a930d Merge branch '2.1.x' into 2.2.x
Closes gh-18940
5 years ago
Andy Wilkinson 5765cfe010 Allow 5 seconds for child to handle SIGINT before destroying it
Previously, when RunProcess handled a SIGINT it would immediately
attempt to destroy the process that it had run. This created a race
condition between the SIGINT being handled by the child process
and RunProcess destroying the child. The exact behavior of destroy
is implementation dependent and it may result in forcible termination
of the process where shutdown hooks are not called. This is what
happens on Windows. The exit code in such a case is 1 which prevents
anything from waiting for the process to complete from detecting
that it ended as a result of a SIGINT, leaving it with no choice but
to report an error. This is what happens with mvn spring-boot:run
with a forked process on Windows and results in the build failing.

This commit updates RunProcess to allow the child process to handle
the SIGINT itself, waiting for up to five seconds for that to happen
before the process is then destroyed. Given this time, the child
process exits with 130 which RunMojo already handles correctly as
indicating that the process died due to SIGINT and the build completes
with success as a result.

Fixes gh-18936
5 years ago
Johnny Lim ea51947741 Use try-with-resources blocks in JarFileArchiveTests
See gh-18883
5 years ago
Andy Wilkinson f1af8c5510 Merge branch '2.1.x'
Closes gh-18889
5 years ago
Andy Wilkinson 59bc3c5602 Prevent recursive config props from causing a stack overflow
Previously, when the configuration properties annotation processor
encountered a property that was the same as an outer type that had
already been processed, it would fail with a stack overflow error.

This commit introduces the use of a stack to track the types that
have been processed. Types that have been seen before are skipped,
thereby preventing a failure from occurring. We do not fail upon
encountering a recursive type to allow metadata generation to
complete. At runtime, the recursive property will not cause a problem
if it is not bound.

Fixes gh-18365
5 years ago
Stephane Nicoll b951e70d18 Merge branch '2.1.x'
Closes gh-18850
5 years ago
dreis2211 8955d5c1b5 Test the Gradle Plugin against Gradle 5.6.4
See gh-18845
5 years ago
Johnny Lim 45d85778b8 Polish
See gh-18838
5 years ago
Stephane Nicoll d6d32ec01d Polish 5 years ago
Alessandro Falappa 2c199b1296 Make optimizedLaunch property name more consistent
See gh-18702
5 years ago
Phillip Webb 83d4d94e8b Cache ModifiedClassPathClassLoaders
Closes gh-18694
5 years ago
Phillip Webb 8d08d654d1 Merge branch '2.1.x'
Closes gh-18693
5 years ago
Stephane Nicoll c05f88bf78 Polish "Add missing package-info files"
See gh-18632
5 years ago
Leo Li af114c93ee Add missing package-info files
See gh-18632
5 years ago
Andy Wilkinson 03f5791860 Merge branch '2.1.x'
Closes gh-18650
5 years ago
dreis2211 d17f11dbe1 Test the Gradle Plugin against Gradle 5.6.3
See gh-18648
5 years ago
Johnny Lim 137538f415 Remove accidental JavaVersion.current() call in BootRun
It was added accidentally in d2b28ceb.

See gh-18619
5 years ago
Stephane Nicoll 8108b556ad Fix resource cleanup in test
Closes gh-18569
5 years ago
Andy Wilkinson 9a89039172 Provide a marker artifact for Boot's Gradle plugin
Closes gh-18514
5 years ago
Kant Leung 2f73e196af Polish
See gh-18534
5 years ago
Phillip Webb 61873fbf42 Don't generate @Configuration metadata
Update `AutoConfigureAnnotationProcessor` to no longer store
`@Configuration.value` in the meta-data JSON since we never actually
read it.

Closes gh-16608
5 years ago
Phillip Webb 386c0a60a7 Relax @ConstructorBinding member class requirement
Update `@ConfigurationProperties` so that `@ConstructorBinding` classes
no longer need to repeat the annotation for their members.

Closes gh-18481
5 years ago
Stephane Nicoll 45f6668d03 Use @ConstructorBinding when generating meta-data
Update the configuration processor to use the newly introduced
`@ConstructorBinding` annotation to determine when meta data
should be generated from constructor parameters.

Prior to this commit, the processor had no good way to tell when
constructor parameters should be used instead of getters/setters.

Closes gh-17035
5 years ago
Andy Wilkinson 9e514ab7f9 Provide plugin release repository for Asciidoctor Extensions
See b5069a4f8a
5 years ago
Andy Wilkinson 46c30d6bb0 Merge branch '2.1.x'
Closes gh-18476
5 years ago
Andy Wilkinson 3d4157ad6d Correct SCM URLs in published poms
Previously, Maven's default behaviour was relied up which resulted
in the artifact ID being appended to each URL as it was inherited.
This behaviour can only be disabled in Maven 3.6 and later, a version
that we cannot use due to an incompatibility with the Flatten Plugin.

This commit works around Maven's default behaviour by defining
properties for the SCM URL, connection, and developer connection and
then explicitly defining the settings in each pom using these
properties. The explicit definition of the properties in each pom
prevents them being inherited from the parent, thereby disabling the
unwanted appending of the artifact ID to the URL.

Fixes gh-18328
5 years ago
Andy Wilkinson ed29eea365 Align Spring Asciidoctor Extension dependency with new module names 5 years ago
Stephane Nicoll 852b369ce1 Revert to fixed version 5 years ago
Andy Wilkinson a6f1619971 Use Asciidoctor extension to verify documented configuration properties
Closes gh-18451
5 years ago
Stephane Nicoll e0d6d90683 Merge branch '2.1.x'
Closes gh-18447
5 years ago
dreis2211 417bfc4c87 Fix comment position in ZipHeaderPeekInputStreamTests
See gh-18445
5 years ago
dreis2211 370998e91e Simplify pipe escaping for reference doc tables
Replace `{vbar}` with an escaped pipe character. Unfortunately
`{vbar}` does not render correctly with PDF generation.

See gh-18374
5 years ago
dreis2211 8a6e254465 Avoid need to escape pipe character in reference tables 5 years ago
Phillip Webb a13666d696 Polish "Simplify code"
See gh-18342
5 years ago
Yuyan 4d0da4b700 Simplify code
See gh-18342
5 years ago
Brian Clozel eeaa9bc6c1 Fix ref docs code snippet theme
This commit also fixes a link in the reference documentation.

See gh-18293
5 years ago
Andy Wilkinson 79b5fd9d73 Polish "Allow the user that runs the app to be specified via an env var"
See gh-16973
5 years ago
Wagner Macedo b57f35893c Allow the user that runs the app to be specified via an env var
See gh-16973
5 years ago
Phillip Webb 838e7eb605 Extract spring-doc-resources URL property
Update the build to use a shared spring-doc-resources URL
rather than repeating it multiple times.

See gh-18293
5 years ago
Andy Wilkinson 02ac089767 Polish "Support zip64 jars"
See gh-16091
5 years ago
Camille Vienot 1917e1eac5 Support zip64 jars
See gh-16091
5 years ago
Andy Wilkinson d5fc324537 Upgrade to Asciidoctor Maven Plugin 1.6.0
Closes gh-17234
5 years ago
Andy Wilkinson 7d3e53c94c Fix test expectations for run-fork JVM args on Java 13+
Closes gh-17008
5 years ago
Andy Wilkinson d2b28ceba5 Don't add -Xverify:none to JVM args when running on Java 13
Closes gh-17008
5 years ago
Andy Wilkinson 1b237de5f5 Use Awaitility in our own tests
Closes gh-18227
5 years ago
Johnny Lim 5b41c3b608 Polish
See gh-18192
5 years ago
Stephane Nicoll 39fed4a9d9 Fix binding detection of ConfigurationProperties contributed by @Bean
This commit makes sure that a ConfigurationProperties type contributed
by a `@Bean` factory method uses properties binding regardless of the
presence of a matching constructor.

`@Bean` method makes sure the user is in control and will be responsible
of creating the instance. As a result, binding of properties will not
happen there and therefore can only happen with regular JavaBean
accessors.

Closes gh-18184
5 years ago
Andy Wilkinson 0c0e2dd54b Merge branch '2.1.x'
Closes gh-18186
5 years ago
Andy Wilkinson 7b1e10ed00 Use one sentence per line in Actuator and Gradle plugin doc source
Closes gh-18185
5 years ago
Andy Wilkinson ff1983c9ae Merge branch '2.1.x'
Closes gh-18168
5 years ago
Andy Wilkinson 795c2f225f Support getComment() on a nested JarFile
Previously, calling getComment() on a nested jar file would result
in the outer jar file's comment being returned.

This commit updates the loader's JarFile to read the file's comment
from the central directory end record and return it from getComment().

Fixes gh-18128
5 years ago
Andy Wilkinson fc1889ee72 Merge branch '2.1.x'
Closes gh-18167
5 years ago
dreis2211 ae30515e5e Test the Gradle Plugin against Gradle 5.6.2
See gh-18164
5 years ago
Andy Wilkinson 4b5ebd8505 Process all non-private methods, not just public methods
Previously, the configuration processor would ignore any
@ConfigurationProperties-annotated methods that were not public. This
prevented metadata generation for package-private @Bean methods such
as those in DataSourceConfiguration's inner-classes for DBCP2, Hikari,
and Tomcat JDBC.

This commit updates the annotation processor so that it will process
any non-private method annotated with @ConfigurationProperties.

Fixes gh-18124
5 years ago
Andy Wilkinson 29080b87ec Protect autoconfigure module against slow starting test containers 5 years ago
dreis2211 07b857e57a Use disabledWithoutDocker option for @Testcontainers
See gh-18095
5 years ago
dreis2211 b4350a9d96 Remove unnecessary blank lines
See gh-18089
5 years ago
Andy Wilkinson a4b8d2401f Merge branch '2.1.x'
Closes gh-18094
5 years ago
Andy Wilkinson abba4fa9c9 Include exception's message in message printed by AP
Fixes gh-17974
5 years ago
Andy Wilkinson b463acb10f Merge branch '2.1.x'
Closes gh-18093
5 years ago
Andy Wilkinson edcaee375f Consider @Deprecated on field when determining property's deprecation
Fixes gh-17550
5 years ago
dreis2211 3e35a6616c Fix duplicated words
See gh-18004
5 years ago
Andy Wilkinson 7f8b3a7b86 Test the Gradle Plugin against Gradle 5.6.1
Closes gh-17995
5 years ago
dreis2211 26a22fa523 Test the Gradle Plugin against Gradle 5.6.1
See gh-17984

Closes gh-17984
5 years ago
Stephane Nicoll b57db504df Fix broken build due to Kotlin upgrade 5 years ago
Andy Wilkinson ab87b2a39b Polish 5 years ago
thelproad 9c1f503e46 Simplify if statements
See gh-17884
5 years ago
dreis2211 d4affd7f85 Use hasSize() assertion in favor of length checks
See gh-17874
5 years ago
Andy Wilkinson a785a5b58a Test the Gradle Plugin against Gradle 5.6
Closes gh-17883
5 years ago
dreis2211 56940fca97 Test the Gradle Plugin against Gradle 5.6
See gh-17876
5 years ago
dreis2211 b605cddb10 Polish some Collections API calls
See gh-17825
5 years ago
Madhura Bhave 8a9c60a29a Merge branch '2.1.x' 5 years ago
Madhura Bhave 541d3c4853 Fix typo 5 years ago
Stephane Nicoll 07cd67a3fe Tolerate null startTime
This commit prevents a potential NPE if the startTime of the
MavenSession is not available and fallbacks to the current time. This
can happen when invoking the plugin with Maven embedded in an IDE.

Closes gh-17810
5 years ago
Stephane Nicoll 1c8f727864 Polish "Simplify if statements"
See gh-17785
5 years ago
SaberXu c6c3a91f8d Simplify if statements
See gh-17785
5 years ago
Phillip Webb 2cdceb92bf Polish 5 years ago
Phillip Webb da4f436140 Change SearchStrategy EXHAUSTIVE to TYPE_HIERARCHY
Fixup references following upstream Spring Framework change.
5 years ago
Stephane Nicoll 5926547767 Merge branch '2.1.x'
Closes gh-17745
5 years ago
Stephane Nicoll 0c560795fd Harmonize settings.gradle documentation in Gradle getting started guide
See gh-17736
5 years ago
Dave Syer e7b0450a7f Add missing repositories to snapshot configuration
See gh-17736
5 years ago
Stephane Nicoll f68c7a751f Polish "Escape reserved asciidoc character in generated documentation"
See gh-17663
5 years ago
vivganes b0fa58e861 Escape reserved asciidoc character in generated documentation
See gh-17663
5 years ago
Phillip Webb 8bc780762a Merge branch '2.1.x' 5 years ago
Phillip Webb fb1dd8fe93 Merge branch '2.0.x' into 2.1.x 5 years ago
Phillip Webb 913e831f4e Merge '1.5.x' into 2.0.x 5 years ago
Stephane Nicoll f3a138da16 Skip Gradle Plugin test when building with JDK 13
See gh-16970
5 years ago
Stephane Nicoll 19eaf86efa Update multi release test jar to include Java 12
See gh-16970
5 years ago
Johnny Lim 8f8b0b493e Remove println invocations in tests
See gh-17592
5 years ago
Andy Wilkinson 41957ec2ad Polish "Polish OutputCapture and its JUnit Jupiter extension"
See gh-17049
5 years ago
Stephane Nicoll 4ce9c6edb3 Polish "Make layout parameter available as a user property"
See gh-17277
5 years ago
Marc Rohlfs d2e34e6b07 Make layout parameter available as a user property
This commit allows the layout parameter of the Maven repackage goal to
be set from the command line.

See gh-17277
5 years ago
dreis2211 2038fac825 Remove testsupport.assertj package
See gh-17557
5 years ago
Phillip Webb a9ba7080ce Merge branch '2.1.x' 5 years ago
Phillip Webb 30b5ba87ae Merge branch '2.0.x' into 2.1.x 5 years ago
Phillip Webb 74d00354f5 Refine BuildInfoMojo time property
Update `BuildInfoMojo` so that the time property now defaults to
`${session.request.startTime}` rather than the time the Mojo was
created. Also update javadoc to make it clear that any supplied
value will be passed to `Instant.parse`.

See gh-17390
5 years ago
dreis2211 4ec035977b Polish testsupport.junit.platform package
See gh-17524
5 years ago
Phillip Webb eff1147ccc Rename classpath runner package
Remove `runner` since we're no longer tied to JUnit 4.

See gh-17491
5 years ago
Phillip Webb 1117fdb2b3 Make ModifiedClassPathExtension package private
Meta-annotate `ClassPathExclusions` and `ClassPathOverrides` with
so that the `ModifiedClassPathExtension` no longer needs to be
used directly.

See gh-17491
5 years ago
Phillip Webb b6ec1332a0 Polish ModifiedClassPathClassLoader
Remove the `ModifiedClassPathClassLoaderFactory` in favor of
factory methods on `ModifiedClassPathClassLoader`.

See gh-17491
5 years ago
Phillip Webb 4fe5e9e31e Remove direct junit-platform-launcher dependency
Replace any direct `junit-platform-launcher` dependencies and instead
rely on the test runner providing it. Launcher related class are not
handled via reflection.

This update allows us to workaround SUREFIRE-1679.

Closes gh-17517
5 years ago
Phillip Webb 543fcdbbfd Delete internal OutputCaptureRule
Delete our internal `OutputCaptureRule` since we not longer have any
tests using it.
5 years ago
Phillip Webb 13b39cbbbf Delete ModifiedClassPathRunner
Delete `ModifiedClassPathRunner` since we no longer have any tests
that use it.

See gh-17491
5 years ago
Phillip Webb bd81bb90eb Polish ModifiedClassPath support
See gh-17491
5 years ago
dreis2211 2a4c48cb91 Add JUnit 5 ModifiedClassPathExtension
Add a JUnit 5 extension that allows tests to be run with a
modified classpath. Since JUnit 5 does not currently offer a way
to run tests with a different classpath, we instead fake the
original invocation and launch an entirely new run for each
method.

See gh-17491
5 years ago
dreis2211 90d824f6cb Extract ModifiedClassPathClass logic
Extract classes from `ModifiedClassPathRunner` so that they can
be reused.

See gh-17491
5 years ago
Phillip Webb 01933f9b06 Merge previously split strings
Merge some string lines that were previously split because of the
90 chars wide formatting.
5 years ago
Phillip Webb c3816bfe7b Polish output capture names 5 years ago
Phillip Webb cdf43a7489 Polish 5 years ago
Phillip Webb 8d4a2add63 Allow OutputCaptureRule to be used with AssertJ
Update `OutputCaptureRule` so that it now implements
`CapturedOutput` and can be used directly with AssertJ.

Closes gh-17512
5 years ago
Stephane Nicoll 79b29396d0 Merge branch '2.1.x'
Closes gh-17506
5 years ago
dreis2211 e9203a280c Test the Gradle Plugin against Gradle 5.5.1
See gh-17496
5 years ago
Dmytro Nosan 8dd9c6baa1 Allow build.time to be disabled so BuildInfoMojo's output is repeatable
See gh-17390
5 years ago
dreis2211 32549cfc85 Remove folder that only contains package-info
See gh-17471
5 years ago
Andreas Gebhardt ed7cfedb51 Fix JavaDoc within spring-boot-test-support
See gh-17443
5 years ago
Andy Wilkinson bd22ca0268 Polish 5 years ago
Andy Wilkinson 2816635418 Polish 5 years ago
Andy Wilkinson 4b2a116fa7 Use String indexOf(char) and lastIndexOf(char) where possible
Closes gh-11416
5 years ago
Andy Wilkinson aa01bd3890 Polish "Polish GradleCompatibilityExtension's javadoc"
See gh-17411
5 years ago
dreis2211 dc4cc214fe Polish GradleCompatibilityExtension's javadoc
See gh-17411
5 years ago
Andy Wilkinson 9d5fa98334 Merge branch '2.1.x'
Closes gh-17429
5 years ago
Andy Wilkinson 7553b60e68 Test the Gradle Plugin against Gradle 5.5
Closes gh-17428
5 years ago
Phillip Webb a66c4d3096 Unify method visibility of private classes
Apply checkstyle rule to ensure that private and package private
classes do not have unnecessary public methods. Test classes have
also been unified as much as possible to use default scoped
inner-classes.

Closes gh-7316
5 years ago
Andy Wilkinson 6791dbb786 Merge branch '2.1.x'
Closes gh-17381
5 years ago
Andy Wilkinson 4083c721f2 Fix URL normalization when replacing /./ with /
Previously, a regular expression of /./ was used to replace /./ with
/.  The '.'' in the expression matches any single character so the
replacement was more broadly applicable than it should have been. For
example, /a/ would be replaced with /.

This commit uses Pattern.LITERAL to compile the regular expression
from the CURRENT_DIR (/./) contant. This allows the constant to be
used to check for occurances of /./ in the string before attempting
replacement, while also ensuring that the '.' is treated literally.

Closes gh-17341
5 years ago
Andy Wilkinson 1fa48882bb Merge branch '2.1.x'
See gh-17362
5 years ago
Andy Wilkinson f4e7b80651 Merge branch '2.0.x' into 2.1.x
See gh-17361
5 years ago
Andy Wilkinson 761856ac70 Merge branch '1.5.x' into 2.0.x 5 years ago
Phillip Webb 605599138e Merge branch '2.1.x' 5 years ago
Phillip Webb 92bff3c328 Merge branch '2.0.x' into 2.1.x 5 years ago
Phillip Webb cfeb0239b7 Merge branch '1.5.x' into 2.0.x 5 years ago
Madhura Bhave 7e22901bb2 Fail build on unresolved documentation links
Closes gh-12005
5 years ago
Andy Wilkinson 66f1344f7c Merge branch '2.1.x'
Closes gh-17335
Closes gh-17292
5 years ago
Andy Wilkinson 91786bc712 Merge branch '2.0.x' into 2.1.x
Closes gh-17334
5 years ago
Andy Wilkinson 256a0d636d Merge branch '1.5.x' into 2.0.x 5 years ago
Andy Wilkinson 361a9404fd Merge branch '2.1.x'
Closes gh-17321
5 years ago
Andy Wilkinson 3fb06ee29e Merge branch '2.0.x' into 2.1.x
Closes gh-17320
5 years ago
Andy Wilkinson 4973a2b217 Merge branch '1.5.x' into 2.0.x 5 years ago
Stephane Nicoll e560b7f6ba Remove public modifier on JUnit5 lifecycle methods
See gh-17292
5 years ago
Andy Wilkinson 6d8ba654cc Merge branch '2.1.x'
Closes gh-17276
5 years ago
Andy Wilkinson a5ae1de706 Fix spring-boot-loader's tests on Windows
Closes gh-17275
5 years ago
Phillip Webb 1e0cf960f0 Reinstate single page HTML and PDF docs
Closes gh-16854
6 years ago
Phillip Webb 2c2b962204 Merge branch '2.1.x'
Closes gh-17232
6 years ago
Phillip Webb d82ccf1405 Ensure META-INF/MANIFEST.MF remains as first entry
Update Gradle archive tasks to ensure that `META-INF/` and
`META-INF/MANIFEST.MF` remain as the first entries of the archive.

Prior to this commit, rewritten archives would violate the implicit
specification of `JarInputStream` that these entries should be first.

Fixes gh-16698
6 years ago
Andy Wilkinson f36af7b16d Polish 6 years ago
Andy Wilkinson ece8703278 Merge branch '2.1.x'
Closes gh-17211
6 years ago
Andy Wilkinson 7d59b78829 Fix handling of jar files with + chars in their path
Closes gh-17208
6 years ago
Johnny Lim 368c0eebe4 Fix typo
See gh-17132
6 years ago
gaurav bhatnagar 1ec5fb9972 Drop deprecated 'spring.version' POM property
See gh-17043
6 years ago
Madhura Bhave 30cfe7b4c5 Polish 6 years ago
Andy Wilkinson cffc870fd6 Fix test failures on Windows
Since the move to JUnit 5, a number of tests were failing on Windows.
The majority were failing due to open file handles preventing the
clean up of the tests' temporary directory. This commit addresses
these failures by updating the tests to close JarFiles, InputStreams,
OutputStreams etc.

A change has also been made to CachingOperationInvokerTests to make
a flakey test more robust. Due to System.currentTimeMillis() being
less precise on Windows than it is on *nix platforms, the test could
fail as it would not sleep for long enough for the TTL period to have
expired.
6 years ago
Andy Wilkinson c56fbf8c3d Allow Archives to be closed so they can release resources
Closes gh-17126
6 years ago
Andy Wilkinson 048be1813e Ensure JarFile created for nested entry InputStream is closed
Closes gh-17127
6 years ago
Andy Wilkinson 29d1cd3b2d Merge branch '2.1.x'
Closes gh-17124
6 years ago
Andy Wilkinson c12ccfb342 Close JarFile if failure occurs during construction
Fixes gh-17123
6 years ago
Andy Wilkinson 405b4ad441 Merge branch '2.1.x'
Closes gh-17118
6 years ago
Andy Wilkinson 2833f60344 Avoid leaving streams open when writing libraries
Fixes gh-17115
6 years ago
Phillip Webb b3d5cd538d Add JUnit 5 checkstyle rules
Add a rule to enforce JUnit 5 usage and conventions.

Closes gh-17093
6 years ago
Phillip Webb 266d6334b2 Fix checkstyle RedundantModifier test violations 6 years ago
Andy Wilkinson b18fffaf14 Move tests to JUnit 5 wherever possible 6 years ago
Andy Wilkinson aef92b9295 Merge branch '2.1.x'
Closes gh-17079
6 years ago
Andy Wilkinson 24925c3dae Merge branch '2.0.x' into 2.1.x
Closes gh-17078
6 years ago
Andy Wilkinson c6c139d980 Merge branch '1.5.x' into 2.0.x 6 years ago
Phillip Webb db75347eb6 Merge branch '2.1.x' 6 years ago
Phillip Webb 0ef331018e Merge branch '2.0.x' into 2.1.x 6 years ago
Phillip Webb d306b31ce9 Merge branch '2.1.x' 6 years ago
Phillip Webb ccfbd03482 Merge branch '2.0.x' into 2.1.x 6 years ago
Phillip Webb b442d3b906 Merge branch '1.5.x' into 2.0.x 6 years ago
Phillip Webb 5fba43aa31 Merge branch '1.5.x' into 2.0.x 6 years ago
Brian Clozel c74badd4f2 Auto-configure Elasticsearch REST client in Spring Data
This commit auto-configures the Elasticsearch REST client support
as a template for Spring Data Elasticsearch. As of this commit,
using the transport client is still possible but developers
should migrate.

This commit also removes the deprecated annotation on the
Elasticsearch auto-configuration for the transport client, since
this deprecation notice is already present on the configuration
property.

Closes gh-17024
Closes gh-16542
6 years ago
Stephane Nicoll 8beb6c1bcb Document how to specify arguments on the command line with Maven
Closes gh-10926
6 years ago
Phillip Webb ad5e905bd7 Update copyright header of changed files 6 years ago
Phillip Webb 68aec8b6ee Polish 6 years ago
Andy Wilkinson ecf7c817a6 Build and test the Gradle plugin with Java 11 and 12
Closes gh-12333
6 years ago
Phillip Webb 988f02d766 Merge branch '2.1.x'
Closes gh-16996
6 years ago
Phillip Webb f380ba63eb Exclude Groovy MetaClass from property meta-data
Update `TypeExcludeFilter` to exclude `groovy.lang.MetaClass`.

Closes gh-16981
6 years ago
dreis2211 e59d734098 Fix Gradle plugin code formatting
See gh-16984
6 years ago
Andy Wilkinson c80218064f Use sorted properties to make build info output repeatable
Closes gh-14494
6 years ago
Stephane Nicoll 4cdb5a8ecb Polish "Default to optimized launch of the JVM when using spring-boot:run"
Closes gh-16941
6 years ago
Dos Debug 569b850fe0 Default to optimized launch of the JVM when using spring-boot:run
See gh-16941
6 years ago
Andy Wilkinson 54b123028c Default to optimized launch of the JVM when using Gradle's bootRun
Closes gh-16222
6 years ago
Andy Wilkinson 7713a7f33a Fix inclusion of Gradle DSL snippets in plugin reference docs
Closes gh-16968
6 years ago
Andy Wilkinson bf670d0a5a Merge branch '2.1.x'
Closes gh-16960
6 years ago
Andy Wilkinson 60d60a8304 Use basedir as forked JVM's working directory in Maven plugin
Fixes gh-16811
6 years ago
Andy Wilkinson babb94c791 Migrate spring-boot-gradle-plugin's tests to JUnit 5
Closes gh-16959
6 years ago
Stephane Nicoll a5537bd2e1 Fork application process with Maven by default
Closes gh-16945
6 years ago
Andy Wilkinson 23f803c6b6 Upgrade to Hamcrest 2.1, switch to hamcrest artifact from -core and -library
Closes gh-15555
6 years ago
Andy Wilkinson 64860e196c Improve diagnostics when forked JVM exits with non-zero status
Closes gh-16869
6 years ago
Stephane Nicoll 66dc728018 Polish "Make excludeDevtools available as a user property"
Closes gh-16701
6 years ago
jvwilge dcc09ffac2 Make excludeDevtools available as a user property
See gh-16701
6 years ago
Johnny Lim 87874ffb70 Polish
Closes gh-16875
6 years ago
Phillip Webb 3a9ca5fa30 Update copyright header of changed files 6 years ago
Stephane Nicoll 6544d19fbf Merge branch '2.1.x' 6 years ago
Stephane Nicoll 4c1ef630c9 Restore lazy evaluation of project/build/finalName
This commit restores the read-only `finalName` so that its value can
be lazily resolved against `${project.build.finalName}`.

While doing the evaluation ourselves and not relying on a dedicated
field at all would have been better, the evaluation increased the
number of required dependencies for no good reason.

IDEs should not offer auto-completion for that read-only field and it
is not published in the generated site either.

Closes gh-16456
6 years ago
Madhura Bhave 684a1c7a3c Migrate tests to JUnit5 testcontainer extensions
Closes gh-15456
6 years ago
Andy Wilkinson f35b91a172 Raise minimum supported version of Gradle to 4.10 and encourage use of 5.x
Closes gh-16681
6 years ago
Andy Wilkinson 538030b57e Merge branch '2.1.x'
Closes gh-16693
6 years ago
Andy Wilkinson 881fbeff43 Test the Gradle Plugin against Gradle 5.4.1
Closes gh-16576
6 years ago
Brian Clozel c4938055b4 Polish "Separate compound properties in appendices"
Closes gh-16480
6 years ago
dreis2211 5b63b807ad Separate compound properties in appendices 6 years ago
Andy Wilkinson 5639685770 Polish "Prefer file: to jar:file: URLs in launcher"
See gh-16248
6 years ago
hengyunabc c1b34d0307 Prefer file: to jar:file: URLs in launcher
See gh-16248
6 years ago
Phillip Webb 17aaf26590 Use consistent javadoc style for annotation links
Closes gh-13920
6 years ago
Phillip Webb 1e44aba772 Fix compiler warnings and polish
Fix various compiler warnings and apply a little polish.
6 years ago
Andy Wilkinson eb0b852e99 Merge branch '2.1.x'
Closes gh-16639
6 years ago
Andy Wilkinson 5d77b48aed Polish "Polish Maven Plugin's tests"
See gh-16618
6 years ago
daonan.zhan 52c2c534db Polish Maven Plugin's tests
See gh-16618
6 years ago
dreis2211 f40b086ef5 Optimize JarEntry construction
This commit avoids calling the underlying ZipEntry.setExtra() method
that is not very inline friendly in cases where there is no extra
information to be set.

See gh-16620
6 years ago
Phillip Webb b879972d0d Migrate to MergedAnnotations API
Migrate away from `AnnotationUtils` and `AnnotatedElementUtils`
when possible to the new `MergedAnnotations` API.

Closes gh-16551
6 years ago
Stephane Nicoll a79e49f1dd Merge branch '2.1.x' 6 years ago
Johnny Lim 363994515b Polish
See gh-16575
6 years ago
Andy Wilkinson 7d2a99943f Merge branch '2.1.x' 6 years ago
Andy Wilkinson dfbc787737 Test the Gradle plugin against Gradle 5.4
Closes gh-16576
6 years ago
Phillip Webb 2dfd916c96 Polish 6 years ago
Stephane Nicoll f9c74d983f Merge branch '2.1.x'
Closes gh-16565
6 years ago
Stephane Nicoll e99deb95f7 Fix source detection in case of multiple candidates
This commit improves the detection of a property source when more than
one group with the same type exist.

Closes gh-16549
6 years ago
Andy Wilkinson 9d1f584560 Adapt Gradle plugin tests to change in Kotlin's packaging
Closes gh-16554
6 years ago
Stephane Nicoll 0972ef3422 Merge branch '2.1.x'
Closes gh-16451
6 years ago
Stephane Nicoll fbb5ffe0a4 Avoid infinite cycle resolving generic type that refers itself
This commit improves type resolution for a unresolved generic type that
uses itself in its upper bound declaration.

Closes gh-16451
6 years ago
Stephane Nicoll 763c1a99e0 Polish 6 years ago
Phillip Webb 52e635b823 Merge branch '2.1.x' 6 years ago
Phillip Webb 912e0a87a8 Merge branch '2.0.x' into 2.1.x 6 years ago
Phillip Webb 8c2e0a61ae Merge branch '1.5.x' into 2.0.x 6 years ago
Phillip Webb 2376f973f4 Merge branch '2.1.x' 6 years ago
Phillip Webb 47c6bf741d Merge branch '2.0.x' into 2.1.x 6 years ago
Phillip Webb 07c000c5b7 Merge branch '1.5.x' into 2.0.x 6 years ago
Stephane Nicoll c4b1a22e89 Polish "Add Spring-specific styling to Gradle Plugin's documentation"
Closes gh-16327
6 years ago
Hendrig Sellik 466b57cd44 Add Spring-specific styling to Gradle Plugin's documentation
This commit replaces the default Asciidoctor styling with
Spring specific styling.

First, we need to unzip the contents of the Spring Asciidoctor
documentation resources provided by the
`io.spring.docsresources:spring-docs-resources` distribution zip. This
is done in a `/target/refdocs` folder. We then copy all files from
`src/main/asciidoc` to the same location, and then launch the generation
process.

See gh-16327
6 years ago
Andy Wilkinson c5024f21a4 Merge branch '2.1.x' 6 years ago
Andy Wilkinson 6aa4fe579a Polish
See gh-16068
6 years ago
Andy Wilkinson ac4d6bb10f Merge branch '2.1.x' 6 years ago
Andy Wilkinson db4623c519 Merge branch '2.0.x' into 2.1.x 6 years ago
Andy Wilkinson 7b5f46d6e3 Add Spring-Boot-* manifest attributes to jars and wars built with Gradle
Closes gh-16068
6 years ago
Andy Wilkinson 2adb6b1fa4 Override version of Maven Site Plugin for JDK 9+181 compatibility
See gh-16400
6 years ago
Stephane Nicoll 17a800b577 Merge branch '2.1.x' 6 years ago
Stephane Nicoll 62d9c0a8b3 Test against Gradle 5.3.1 6 years ago
Stephane Nicoll 680e2b223b Remove deprecated finalName attribute
See gh-16202
6 years ago
Stephane Nicoll cba1e8ada0 Merge branch '2.1.x' 6 years ago
Stephane Nicoll 04aadcdf2e Make sure custom finalName is ignored
A read-only plugin parameter can still be set by the user which leads
to an invalid repackaged archive. This commit actually ignores the field
and uses the standard attribute instead.

Closes gh-16202
6 years ago
Stephane Nicoll 6ab942f295 Polish 6 years ago
Stephane Nicoll 554dec1a3e Document finalName alternative for repackage goal
Closes gh-16334
6 years ago
Spring Operator fb242c27d2 Use HTTPS for external links wherever possible
See gh-16276
6 years ago
Andy Wilkinson 878a635bfb Merge branch '2.1.x' 6 years ago
Andy Wilkinson 864942ad4f Merge branch '2.0.x' into 2.1.x 6 years ago
Andy Wilkinson ba4671f0ab Merge branch '1.5.x' into 2.0.x 6 years ago
Andy Wilkinson 4900505425 Merge branch '2.0.x' into 2.1.x 6 years ago
Andy Wilkinson fedb40a2bf Merge branch '1.5.x' into 2.0.x 6 years ago
Stephane Nicoll dec5a8cc7e Merge branch '2.1.x' 6 years ago
Stephane Nicoll 567a82f4ba Update multi release test jar to include Java 12
See gh-16212
6 years ago
Stephane Nicoll 90160b16aa Merge branch '2.1.x' 6 years ago
dreis2211 c2335e130c Test against Gradle 5.3
Closes gh-16294
6 years ago
Stephane Nicoll 3125f424ce Add metadata support for immutable ConfigurationProperties type
Closes gh-16071
6 years ago
Andy Wilkinson 36c1c051b8 Merge branch '2.1.x' 6 years ago
Andy Wilkinson e23f72c8b0 Merge branch '2.0.x' into 2.1.x 6 years ago
Andy Wilkinson 9fbd38ab3c Merge branch '1.5.x' into 2.0.x 6 years ago
Spring Operator 00ab30362c Use HTTPS for external links in XML files
See gh-16270
6 years ago
Andy Wilkinson b828b398b5 Merge branch '2.1.x' 6 years ago
Spring Operator b32c0080c3 Update build and setup configuration to use HTTPS
See gh-16247
6 years ago
Andy Wilkinson a36aa67b52 Merge branch '2.0.x' into 2.1.x 6 years ago
Spring Operator 3e2b6ac8ed Update build and setup configuration to use HTTPS
See gh-16246
6 years ago
Andy Wilkinson daba01ab94 Merge branch '2.1.x' 6 years ago
Andy Wilkinson 716b4e8acf Test the Gradle plugin against Gradle 5.3-rc-3
Closes gh-16211
6 years ago
Madhura Bhave 3d0219c315 Merge branch '2.1.x' 6 years ago
Johnny Lim c5b5f752ed Polish
Closes gh-16219
6 years ago
dreis2211 b39b990a72 Use isEmpty() where possible
Closes gh-16225
6 years ago
Andy Wilkinson 68bfb020aa Reduce need for bean method proxying and disable where not needed
Closes gh-9068
6 years ago
Andy Wilkinson 28cf63354a Merge pull request #16106 from Spring Operator
* gh-16106:
  Drop AnyEdit from Eclipse setup as it is not available over HTTPS
  Update build and setup configuration to use HTTPS

Closes gh-16106
6 years ago
Spring Operator c9c554b834 Update build and setup configuration to use HTTPS
See gh-16106
6 years ago
Phillip Webb 64a2e8d67f Update copyright year for changed files 6 years ago
Phillip Webb dd3e8154d9 Merge branch '2.1.x' 6 years ago
Phillip Webb fc3aa43cc2 Update copyright year for changed files 6 years ago
Andy Wilkinson 404f5d33f3 Align Gradle plugin's tests with Kotlin 1.3's restructuring
See gh-16195
6 years ago
Andy Wilkinson 9d06d22b99 Merge branch '2.0.x' into 2.1.x 6 years ago
Andy Wilkinson d6a869fa98 Switch to Jakarta EE API dependencies where possible
Closes gh-16113
Closes gh-16112
Closes gh-16111
Closes gh-15916
Closes gh-15689
6 years ago
Stephane Nicoll 75c248dcba Move setter attribute in PropertyDescriptor proper 6 years ago
Stephane Nicoll a90c8d01a9 Polish 6 years ago
Stephane Nicoll 00a18c32ab Restructure metadata generation
This commit restructures the annotation processor to off-load most of
its logic in a PropertyDescriptor abstraction that is consumed to
generate the relevant metadata.

This has the benefit to isolate the various way properties can be
identified (java bean and lombok for now).

Closes gh-16036
6 years ago
Stephane Nicoll 99c0b4561d Polish test to request the type under test 6 years ago
Stephane Nicoll c44a1e129d Polish 6 years ago
Stephane Nicoll 8a064b0da2 Move main test annotation processor to test package 6 years ago
Stephane Nicoll 4bee913fb2 Add shared test processor
This commit adds a simple annotation processor that can be used to run
more fine grained assertions.
6 years ago
Andy Wilkinson 0f0adb4cd0 Polish formatting 6 years ago
Stephane Nicoll 8773a2fed3 Polish 6 years ago
Andy Wilkinson f2e3e274a8 Merge branch '2.1.x' 6 years ago
Andy Wilkinson 53326695ea Polish 6 years ago
Andy Wilkinson f4bd0b8b4b Merge branch '2.1.x' 6 years ago
Andy Wilkinson 59430a2642 Only include zips in BOOT-INF/lib, WEB-INF/lib, and WEB-INF/lib-provided
Closes gh-16001
6 years ago
Andy Wilkinson 43c9a789ac Merge branch '2.1.x' 6 years ago
Andy Wilkinson 55fe26b075 Polish "Use kotlin_module not kotlin-module to identify Kotlin module metadata"
See gh-16004
6 years ago
Robert Thornton cb6362df82 Use kotlin_module not kotlin-module to identify Kotlin module metadata
See gh-16004
6 years ago
Stephane Nicoll 34f28b4cbd Merge branch '2.1.x' 6 years ago
Stephane Nicoll 91a005f578 Resolve generic types in generated metadata
Closes gh-15850
6 years ago
Andy Wilkinson 9540905e73 Merge branch '2.1.x' 6 years ago
Andy Wilkinson 68e3de0357 Use name from header not alias when checking entry has expected name
Previously, an entry’s potentially aliased name would be used when
checking that it has a particular name. The alias would always be
applied, irrespective of the name in the header. As a result, when
there was a clashing hash and an entry with a particular index did
not have the expected name, this would be concealed by the alias
being applied and the name check being done with the alias.

This commit reworks JarEntry to store the name in its header in
addition to its alias, if any. When checking that the entry has the
expected name, the unaliased name is passed in and the entry compares
it with the name from the header rather than the alias.

Closes gh-15981
6 years ago
Brian Clozel 2a2bfb9915 Auto-generate the "Common application properties"
Prior to this commit, the application properties listed in the reference
documentation would be manually managed and updated.

This commit adds a new `spring-boot-configuration-docs` project that
extracts that information from the available JSON metadata and writes
Asciidoctor tables ready for inclusion in the reference documentation.

The `generateConfigurationPropertyTables.groovy` is using this library
and configures the sections and how namespaces should be organized.

Fixes gh-8237
6 years ago
Madhura Bhave 9bc9639954 Merge branch '2.1.x' 6 years ago
Madhura Bhave 012a956454 Fix typo in doc 6 years ago
Andy Wilkinson 747e419db1 Merge branch '2.1.x' 6 years ago
Andy Wilkinson 9fb0b97f96 Decorate test containers so tests are skipped without Docker
Closes gh-15901
Closes gh-15638
6 years ago
Andy Wilkinson 0adea5a905 Merge branch '2.1.x' 6 years ago
Andy Wilkinson 948bafa4d8 Repackage kotlin-module metadata beneath BOOT-INF/classes
Closes gh-15890
6 years ago
Andy Wilkinson db31e42751 Merge branch '2.1.x' 6 years ago
Andy Wilkinson a975c0ad16 Use Testcontainers’ CassandraContainer rather than our own
Closes gh-15901
6 years ago
Andy Wilkinson 7e51e1a076 Merge branch '2.1.x' 6 years ago
Michael Simons 316126e8f0 Replace custom Neo4j container with Testcontainers version
See gh-15638
6 years ago
Andy Wilkinson 2cda30988e Merge branch '2.1.x' 6 years ago
Andy Wilkinson 6fe9e3a0e1 Test the Gradle plugin against Gradle 5.2.1
Closes gh-15892
6 years ago
Andy Wilkinson 4faa0f51b7 Polish "Test the Gradle plugin against Gradle 4.10.3 and 5.1.1"
Closes gh-15791
6 years ago
dreis2211 1de372d896 Test the Gradle plugin against Gradle 4.10.3 and 5.1.1
See gh-15791
6 years ago
Andy Wilkinson b3abd25e22 Merge branch '2.1.x' 6 years ago
Andy Wilkinson 8a7958ef55 Do not use reflection to fall back to JDKs jar URLStreamHandler
Closes gh-15844
6 years ago
Andy Wilkinson 342bced125 Merge branch '2.1.x' 6 years ago
Andy Wilkinson 2650a07dc9 Leave module-info.class in root of archive when repackaging
Closes gh-15810
6 years ago
dreis2211 d4ab101223 Use Assertions.contentOf() where possible
Closes gh-15793
6 years ago
Stephane Nicoll 6baa6b291e Polish contribution
Closes gh-15695
6 years ago
Johnny Lim af3ed9ff9f Polish
See gh-15695
6 years ago
Stephane Nicoll 8d1d3fb087 Polish "Avoid string concatenation inside StringBuilder append()"
Closes gh-15589
6 years ago
igor-suhorukov 59ac85d371 Avoid string concatenation inside StringBuilder append()
See gh-15589
6 years ago
dreis2211 46e59503ec Use JSONObject.putOpt in JsonConverter
Closes gh-15595
6 years ago
Stephane Nicoll 51936e1a5c Rename "agent" to "agents" to properly indicate its type
Closes gh-15455
6 years ago
igor-suhorukov 3eb2f5e476 Replace Collections sort with list sort() method
Closes gh-15585
6 years ago
Stephane Nicoll 1223355fe6 Polish "Simplify code by using for-each loop"
Closes gh-15563
6 years ago
igor-suhorukov dfb3cd51bc Simplify code by using for-each loop
See gh-15563
6 years ago
Stephane Nicoll fbef9700bf Merge branch '2.1.x' 6 years ago
Erik Mulder 00763af335 Fix system properties override example
Closes gh-15562
6 years ago
igor-suhorukov b370b1f03a Replace indexOf() with a call to the contains()
See gh-15559
6 years ago
Andy Wilkinson 372b6605b3 Merge branch '2.1.x' 6 years ago
Andy Wilkinson 83ce5dcee8 Add missing task output annotations to BootJar and BootWar
Closes gh-15488
6 years ago
igor-suhorukov cbf6b330ba Simplify code by using Map computeIfAbsent
Closes gh-15543
6 years ago
Stephane Nicoll c948bdd14d Merge branch '2.1.x' 6 years ago
Stephane Nicoll 51d3626c3b Merge branch '2.0.x' into 2.1.x 6 years ago
dreis2211 27e89bbb8a Optimize StringSequence
Closes gh-15473
6 years ago
Andy Wilkinson 0ad72d5b5e Remove reliance on mavenLocal from Gradle plugin’s tests
See gh-15471
6 years ago
Andy Wilkinson 4edc32844a Remove use of execute method inherited from internal class
Closes gh-15484
6 years ago
Stephane Nicoll 317c4c2c38 Merge branch '2.1.x' 6 years ago
Stephane Nicoll 7dbe70dc61 Merge branch '2.0.x' into 2.1.x 6 years ago
Stephane Nicoll c0b07a9429 Polish "Fix StringSequence.equals() for different lengths"
Closes gh-15465
6 years ago
dreis2211 2a0680c2ba Fix StringSequence.equals() for different lengths
See gh-15465
6 years ago
Andy Wilkinson ddabfe3fcc Deploy spring-boot-test-support so it's available downstream
Concourse builds spring-boot-tests separately from spring-boot-project
and relies on modules from the latter being available in the
distribution repository when building the former. This commit enables the
deployment of spring-boot-test-support from spring-boot-project so that it
is added to the distribution repository and is therefore available when
building spring-boot-tests. It is then excluded when putting to the
Artifactory resource as we do not want it to be published.

See gh-15471
6 years ago
Andy Wilkinson 61d04db0d7 Minimize and centralize assumptions about build output
Closes gh-15471
6 years ago
Andy Wilkinson 62fbf48446 Start Elasticsearch with single-node discovery type
See gh-15441
6 years ago
Andy Wilkinson 47fc35105d Allow more time for the Elasticsearch container to start
See gh-15441
6 years ago
Andy Wilkinson 2b453bbb16 Minimise dependencies on Log4j2
Closes gh-15441
6 years ago
Andy Wilkinson bbf0932f0f Exclude jcl-over-slf4j in favour of spring-jcl
Closes gh-15392
6 years ago
Stephane Nicoll ef40241bf6 Merge branch '2.0.x' into 2.1.x 6 years ago
dreis2211 d864b427eb Remove unused ByteArrayStartsWith matcher
Closes gh-15386
6 years ago
Andy Wilkinson 72ad0cc6be Merge branch '2.0.x' into 2.1.x 6 years ago
Andy Wilkinson 3fd0380359 Correct optional dependency declarations in spring-boot-test-support
Closes gh-15371
6 years ago
Phillip Webb ed9468a31a Update copyright year for changed files 6 years ago
Stephane Nicoll bf88a7e466 Be more lenient when repackage is invoked several times
This commit makes the repackager more lenient when it is invoked several
times in the same lifecycle.

Closes gh-15034
6 years ago
Stephane Nicoll d7fe3c73a3 Provide better logging for RepackageMojo
Closes gh-15294
6 years ago
Andy Wilkinson a0d0ecf9d4 Test the Gradle plugin against Gradle 5.0
Closes gh-15171
6 years ago
Andy Wilkinson 7790876575 Merge branch '2.0.x' 6 years ago
Andy Wilkinson c0e286b96b Test the Gradle Plugin against Gradle 5.0-rc-3
Closes gh-15171
6 years ago
Andy Wilkinson ce0a3d0311 Add missing classpath setters to BootJar and BootWar
Closes gh-15087
6 years ago
Andy Wilkinson 3fac0f0360 Polish multi-release jar support to avoid possible StackOverflowError
See gh-12523
6 years ago
Andy Wilkinson 56eebc9385 Update fat jar loader to support multi-release jar files
Closes gh-12523
6 years ago
Andy Wilkinson fe9d9ec4e2 Test the Gradle plugin against Gradle 5.0-rc-3
Closes gh-15171
6 years ago
Phillip Webb cccf5e6d2b Merge branch '2.0.x' 6 years ago
Phillip Webb 3baf782822 Merge branch '1.5.x' into 2.0.x 6 years ago
Johnny Lim fd5aa3ebf1 Polish
See gh-15134
6 years ago
Andy Wilkinson 228e05487a Test Gradle Plugin against Gradle 5.0-rc-1
Closes gh-15028
6 years ago
Phillip Webb f3fa20b2d1 Polish 6 years ago
Andy Wilkinson 1341789819 Merge branch '2.0.x' 6 years ago
Andy Wilkinson 9ea5c58e38 Remove stale mention of module layout from Maven plugin's docs
Closes gh-14854
6 years ago
Andy Wilkinson 5ac9b972fe Test the Gradle Plugin against Gradle 5.0-milestone-1
Closes gh-15005
6 years ago
Andy Wilkinson 77f571aa45 Merge branch '2.0.x' 6 years ago
Andy Wilkinson 7eb1df1650 Test the Gradle Plugin against Gradle 4.10.2
Closes gh-15004
6 years ago
Brian Clozel cf882c9b40 Fix import error in 8376bc369 6 years ago
Brian Clozel 8376bc3697 Fix build after checkstyle imports updates
See gh-14911
6 years ago
Madhura Bhave f0004c4ade Merge branch '2.0.x' 6 years ago
dreis2211 5c0d7f4ac0 Avoid creation of unnecessary collections
Closes gh-14916
6 years ago
Andy Wilkinson 9b8ead825c Polish 6 years ago
Stephane Nicoll 2a0451c461 Merge branch '2.0.x' 6 years ago
Jack Gough 94770cc0fd Force JMX hostname to 127.0.0.1
Closes gh-14836
6 years ago
Stephane Nicoll 7c6d61ee10 Update documentation to mention execution id of repackage goal
This commit updates the documentation to reference the default execution
id of the `repackage` goal when a project uses
`spring-boot-starter-parent`.

Closes gh-14835
6 years ago
Phillip Webb 85f86243c9 Order class filter checks and exit early
Update the logic in `OnClassCondition` so that filtering exits on the
first missing class. Also refactor the implementation to save
unnecessary `Set` creation when there is just a single class to check.

The `AutoConfigureAnnotationProcessor` has also been updated to order
classes so that any starting `org.springframework` are considered last.
The assumption being that other classes are more likely to be missing.

Closes gh-12131
6 years ago
Phillip Webb 94798062ab Configure Cassandra JMX Reporting
Allow Cassandra JMX reporting to be configured via a property, and
disable it by default since it won't work with Dropwizard metrics 4.

Also update some of our own tests to explicitly disable it.

Closes gh-14778
6 years ago
Andy Wilkinson 3f1b3db25a Merge branch '2.0.x' 6 years ago
Andy Wilkinson 1f34da9025 Document application plugin's need for mainClassName to be set
Closes gh-14250
6 years ago
Phillip Webb 01b8667dd7 Update copyright year for changed files 6 years ago
Andy Wilkinson a3d2f3f594 Polish "Add Kotlin DSL examples to Gradle Plugin's documentation"
Closes gh-14585
6 years ago
jnizet 5ed6c0d1ab Add Kotlin DSL examples to Gradle Plugin's documentation
See gh-14585
6 years ago
Andy Wilkinson 8c6910cf58 Polish "Refactor Gradle plugin tests to use runner's plugin classpath"
This commit removes the need for the Kotlin plugin tests to continue
to set the plugin classpath in each test build script. This is
achieved by adding the jars files containing the Kotlin plugin and
its dependencies to the runner's plugin classpath in the same way as
was already done for the dependency management plugin.

Closes gh-14680
6 years ago
jnizet c51449585e Refactor Gradle plugin tests to use runner's plugin classpath
Previously, each test build script used a property to configure its
classpath. This commit simplifies the tests by setting the classpath
once on the GradleRunner, thereby removing the need for it to be set in
each test script. It also allows, and, in fact, requires, the use of
the plugins block to apply the Boot plugin under test.

Unfortunately, this doesn't work for the tests for the reaction to the
Kotlin plugin. See the comments in the GradleBuild class and in each
KotlingPluginActionIntegrationTests build script.

See gh-14680
6 years ago
Andy Wilkinson 76849c12e5 Merge branch '2.0.x' 6 years ago
Andy Wilkinson cf24d18139 Explicity set permissions on files in lib of Boot distribution
Previously, only the permissions for the scripts in bin/ were set. The
permissions for the files in lib/ were not explicity set, leaving them
with the same permissions as the source files in Gradle's cache. This
has proven to be a little brittle when building in certain
environments, leading to test failures. It also assumes that the
file permissions in Gradle's cache will be appropriate for entries in
a distribution archive. That may not always be a reasonable assumption
to make.

To avoid the above-described problems, this commit updates the copy
spec that's used to add files to lib/ in the archive so that each
file uses 0644 for its permissions.

Closes gh-14158
6 years ago
Andy Wilkinson 4a222cb4e5 Polish "Log a warning when using fallback for pid and log locations"
Closes gh-14519
6 years ago
Andreas Gebhardt 3f894cbeeb Log a warning when using fallback for pid and log locations
See gh-14519
6 years ago
Johnny Lim 335775892b Polish
See gh-14667
6 years ago
dreis2211 e68b9e8322 Remove unnecessary parameters for String.substring
Closes gh-14661
6 years ago
Phillip Webb d76bba5e6f Migrate from ExpectedException rule to AssertJ
Replace ExpectedException JUnit rules with AssertJ exception
assertions.

Closes gh-14336
6 years ago
Andy Wilkinson 285f6bfd5f Merge branch '2.0.x' 6 years ago
jnizet eee07a840f Move away from deprecated Gradle configurations
Closes gh-14593
6 years ago
Johnny Lim 698bbd6a9e Polish
Closes gh-14597
6 years ago
Phillip Webb 64627fa9d6 Restore Maven 3.3 compatibility
Downgrade the `spring-boot-maven-plugin` maven version to 3.3.

Closes gh-14464
6 years ago
Phillip Webb 75bde00334 Generate auto-configuration OnWebApplication data
Update the auto-configuration annotation processor to generate
properties for `@OnWebApplication`.

See gh-13328
6 years ago
Phillip Webb 586507c49a Generate auto-configuration OnBean data
Update the auto-configuration annotation processor to generate
properties for `@ConditionalOnBean` and `@ConditionalOnSingleCandidate`.

See gh-13328
6 years ago
Phillip Webb 11b1318cad Reduce GC pressure in JAR handler
Update the JAR `Hander` so that URL `startsWith` checks produce less
garbage. Comparisons are now performed first on the `path` rather than
the full `toString`. URL `toString` operations produce quite a lot of
garbage since a `StringBuilder` is always used.

In addition, we now also cache the JarFile URL toString to save repeated
calculation.

Closes gh-14561
6 years ago