Commit Graph

39538 Commits

Author SHA1 Message Date
Phillip Webb
48f3cd75d4 Refine SpringBootTest.useMainMethod support
Refine `SpringBootContextLoader` so that calls to the main method do
not exit early and the hook is only used when necessary.

See gh-22405
2022-09-15 10:48:58 -07:00
Stephane Nicoll
f1b60eef55 Upgrade to Spring Retry 2.0.0-M1
Closes gh-32293
2022-09-15 18:06:17 +02:00
Andy Wilkinson
2b503ee334 Add AOT-generated classes as a dependency
Previously, the AOT-generated classes were added directly to the
compile classpath of the AOT compilation task. This didn't work
perfectly in IntelliJ IDEA, leaving the generated classes in the
runtime scope and causing compilation problems where the
AOT-generated source tried to reference those classes.

This commit updates the plugin to add the AOT-generated classes as
a dependency to the AOT source set's implementation configuration.
This makes the classes available during compilation by the source
set's Java compilation task while also makeing IntelliJ IDEA aware
of their presence on the compile classpath.

Closes gh-32395
2022-09-15 14:02:54 +01:00
Andy Wilkinson
0476b5da5d Upgrade to Selenium HtmlUnit 3.64.0 and Selenium 4.4.0
Closes gh-32372
Closes gh-32373
2022-09-15 12:31:56 +01:00
Andy Wilkinson
aa67f2422a Merge branch '2.7.x' 2022-09-15 11:58:08 +01:00
Andy Wilkinson
52522b87f0 Merge branch '2.6.x' into 2.7.x
Closes gh-32393
2022-09-15 11:57:28 +01:00
Andy Wilkinson
77f428498f Compile against SnakeYAML 1.32 and test against older versions
Closes gh-32392
2022-09-15 11:55:44 +01:00
Stephane Nicoll
d111aa21cf Merge branch '2.7.x' 2022-09-15 11:11:39 +02:00
Stephane Nicoll
3803cda746 Upgrade to Spring Framework 6.0.0-M6
Closes gh-31834
2022-09-15 11:11:28 +02:00
Stephane Nicoll
150682a2cc Merge branch '2.6.x' into 2.7.x 2022-09-15 11:10:12 +02:00
Stephane Nicoll
4aabe7caf5 Upgrade to Spring Framework 5.3.23
Closes gh-32274
2022-09-15 11:09:43 +02:00
Stephane Nicoll
78fb738117 Upgrade to Spring Framework 5.3.23
Closes gh-32267
2022-09-15 11:08:55 +02:00
Stephane Nicoll
e7a2f0cd5b Merge branch '2.7.x' 2022-09-15 10:06:56 +02:00
Stephane Nicoll
423f6c353a Upgrade CI to Docker 20.10.18
Closes gh-32375
2022-09-15 10:06:45 +02:00
Stephane Nicoll
8e56b77869 Merge branch '2.6.x' into 2.7.x 2022-09-15 10:06:31 +02:00
Stephane Nicoll
29cffc6e40 Upgrade CI to Docker 20.10.18
Closes gh-32376
2022-09-15 10:06:07 +02:00
Stephane Nicoll
3a55c3a530 Upgrade CI to Docker 20.10.18
Closes gh-32377
2022-09-15 10:05:31 +02:00
Stephane Nicoll
9391f329fb Upgrade to Versions Maven Plugin 2.12.0
Closes gh-32391
2022-09-15 09:39:18 +02:00
Stephane Nicoll
8f67cfd709 Upgrade to Undertow 2.2.19.Final
Closes gh-32390
2022-09-15 09:39:16 +02:00
Stephane Nicoll
74c1f5bede Upgrade to UnboundID LDAPSDK 6.0.6
Closes gh-32389
2022-09-15 09:39:13 +02:00
Stephane Nicoll
92b99e3a3f Upgrade to Tomcat 10.0.23
Closes gh-32388
2022-09-15 09:39:11 +02:00
Stephane Nicoll
c10a8cb195 Upgrade to SQLite JDBC 3.39.3.0
Closes gh-32387
2022-09-15 09:39:08 +02:00
Stephane Nicoll
59448ce5d2 Upgrade to SnakeYAML 1.32
Closes gh-32386
2022-09-15 09:39:06 +02:00
Stephane Nicoll
b352ebfc5a Upgrade to RSocket 1.1.3
Closes gh-32385
2022-09-15 09:39:04 +02:00
Stephane Nicoll
16bb543c16 Upgrade to Maven Shade Plugin 3.4.0
Closes gh-32384
2022-09-15 09:39:01 +02:00
Phillip Webb
4d037c3003 Update SpringBootContextLoader to support AOT
Update `SpringBootContextLoader` so that it now implements the
`AotContextLoader` interface. The `ContextLoaderHook` will abandon
at `contextLoaded` if the test class is being AOT processed.

This commit also introduces a new `AotApplicationContextInitializer`
which allows us to plug-in an alternative AOT application context
listener when the `SpringApplication` is running in test mode.

Closes gh-31965
2022-09-14 22:37:47 -07:00
Phillip Webb
d1e7c9bd70 Introduce 'nativeTest' maven profile
Update `spring-boot-start-parent` with a new `nativeTest` profile. When
active, this profile will trigger AOT processing of test code and call
the native build tools 'test' goal.

Closes gh-32383
2022-09-14 22:37:41 -07:00
Phillip Webb
41e0bbf4bb Add SpringBootTest.useMainMethod support
Add a new `useMainMethod` attribute to `SpringBootTest` which can be
used to determine how the test should run. The three available options
are:

	- `ALWAYS`
	- `NEVER`
	- `WHEN_AVAILABLE`

The default is `WHEN_AVAILABLE` which will attempt to launch the test
using the `main` method if there is one.

The `SpringBootContextLoader` has been updated to use the new
`SpringApplicationHook` interface when the main method is being used.

Closes gh-22405
2022-09-14 22:37:37 -07:00
Phillip Webb
fadbb4b763 Polish SpringBootContextLoader 2022-09-14 22:34:53 -07:00
Phillip Webb
d3957dfa3e Provide a public API for SpringApplication hooks
Create a new public SpringApplication Hook API based on the existing
`SpringApplicationRunListener` interface.

The previous package-private `SpringApplicationHooks` class has been
replaced with a public `SpringApplicationHook` interface which acts as
a factory that can create additional `SpringApplicationRunListener`
instances to hook in.

The boolean result from the previous `preRefresh` method has been
replaced with an `AbandonedRunException` which can be thrown from
the `SpringApplicationRunListener`.

Closes gh-32301
2022-09-14 22:34:50 -07:00
Phillip Webb
88913b11ce Allow additional listeners registration in early events
Update `EventPublishingRunListener` so that event listeners may add
additional listeners to the `SpringApplication` during early events.

Prior to this commit, the listeners were collected only once which
meant that if a listener for an `ApplicationStartingEvent` called
`application.addListener(...)`, it would be ignored.

Closes gh-32300
2022-09-14 22:34:39 -07:00
Phillip Webb
6955ed9dcf Make EventPublishingRunListener package private
Closes gh-32299
2022-09-14 13:50:27 -07:00
Phillip Webb
20b91c5ae2 Include 'classesDirectory' in ProcessTestAotMojo classpath
Update `ProcessTestAotMojo` so that the classesDirectory and
the testClassesDirectory are on the classpath when compiling
code.

See gh-32191
2022-09-14 13:50:27 -07:00
Phillip Webb
db89ee6904 Deprecate spring.mvc.ignore-default-model-on-redirect property
Closes gh-32381
2022-09-14 13:49:03 -07:00
Stephane Nicoll
f0df4635c5 Merge branch '2.7.x' 2022-09-14 22:20:50 +02:00
Stephane Nicoll
101d5c0efb Merge branch '2.6.x' into 2.7.x 2022-09-14 22:19:11 +02:00
Stephane Nicoll
9620fb5317 Start building against Spring HATEOAS 1.5.2 snapshots
See gh-32378
2022-09-14 22:16:03 +02:00
Stephane Nicoll
1839c8385e Upgrade to RSocket 1.1.3
Closes gh-32380
2022-09-14 22:15:40 +02:00
Stephane Nicoll
9b122924c8 Upgrade to RSocket 1.1.3
Closes gh-32379
2022-09-14 22:13:43 +02:00
Stephane Nicoll
1fa6985311 Upgrade to REST Assured 5.2.0
Closes gh-32371
2022-09-14 15:57:03 +02:00
Stephane Nicoll
447804fdc4 Upgrade to Rabbit Stream Client 0.7.0
Closes gh-32370
2022-09-14 15:57:02 +02:00
Stephane Nicoll
6e59f3fe18 Upgrade to Rabbit AMQP Client 5.16.0
Closes gh-32369
2022-09-14 15:57:02 +02:00
Stephane Nicoll
52e0293bd0 Upgrade to Postgresql 42.5.0
Closes gh-32368
2022-09-14 15:57:02 +02:00
Stephane Nicoll
6a4fef33bb Upgrade to Oracle Database 21.7.0.0
Closes gh-32367
2022-09-14 15:57:02 +02:00
Stephane Nicoll
777fbce1fa Upgrade to OpenTelemetry 1.18.0
Closes gh-32366
2022-09-14 15:57:02 +02:00
Stephane Nicoll
297e9019ac Upgrade to Netty 4.1.82.Final
Closes gh-32365
2022-09-14 15:57:01 +02:00
Stephane Nicoll
aa47a9bd83 Upgrade to MySQL 8.0.30
Closes gh-32364
2022-09-14 15:57:01 +02:00
Stephane Nicoll
3fa038a393 Upgrade to MSSQL JDBC 11.2.1.jre17
Closes gh-32363
2022-09-14 15:57:01 +02:00
Stephane Nicoll
bcf452918b Upgrade to MongoDB 4.7.1
Closes gh-32362
2022-09-14 15:57:01 +02:00
Stephane Nicoll
81a75f9e5d Upgrade to Mockito 4.8.0
Closes gh-32361
2022-09-14 15:57:00 +02:00