Commit Graph

1690 Commits

Author SHA1 Message Date
Phillip Webb 522e3df394 Fix same name configuration properties adapting
Update `SpringConfigurationPropertySources` adapter logic so that and
exact instance match is used when checking if the cache can be used.

Prior to this commit if a property source was replaced with one that
had exactly the same name, the adapted version would not change.

Fixes gh-12451
2018-03-15 16:14:17 -07:00
Phillip Webb c201c1dac1 Polish 2018-03-15 16:09:14 -07:00
Madhura Bhave 9384e5c3c1 Fix binding to bean with cloned arrays
Fixes gh-12478
2018-03-15 14:14:20 -07:00
Madhura Bhave cb3da28bb9 Enforce length > 1 for H2 and WebServices path
Fixes gh-12485
2018-03-15 12:14:28 -07:00
Madhura Bhave e6149fda1c Assert endpoints basePath starts with '/' or is empty
Fixes gh-12489
2018-03-15 11:39:37 -07:00
Brian Clozel b8e8647391 Fix Servlet requirements in reference docs
As of Spring Framework 5.0, only Servlet 3.1+ containers are supported.
See https://github.com/spring-projects/spring-framework/wiki/Upgrading-to-Spring-Framework-5.x

This commit updates the reference documentation to reflect that and also
removes sections describing pre-Servlet 3.1 solutions, as those are not
supported anymore.

Fixes gh-12370
2018-03-15 17:25:48 +01:00
Brian Clozel 2561f320e8 War deployment is not supported for WebFlux apps
Even though War deployment is supported by Spring Framework itself for
WebFlux applications, this is not the case currently in Spring Boot.

Fixes gh-12455
2018-03-15 16:58:40 +01:00
Brian Clozel a0b9974796 Polish Couchbase tests 2018-03-15 15:49:21 +01:00
dreis2211 ca30739bf9 Use ApplicationContextRunner in tests
Closes gh-12495
2018-03-15 14:28:56 +01:00
Andy Wilkinson 19b726854d Upgrade to Mariadb 2.2.3
Closes gh-12503
2018-03-15 13:00:08 +00:00
Andy Wilkinson 6da049b7e3 Upgrade to Solr 6.6.3
Closes gh-12502
2018-03-15 13:00:08 +00:00
Andy Wilkinson c940f49bb3 Upgrade to Johnzon Jsonb 1.1.7
Closes gh-12501
2018-03-15 13:00:07 +00:00
Andy Wilkinson 3aafbce4f8 Upgrade to Byte Buddy 1.7.11
Closes gh-12500
2018-03-15 13:00:06 +00:00
Andy Wilkinson b948e32f12 Upgrade to Couchbase Client 2.5.6
Closes gh-12499
2018-03-15 13:00:05 +00:00
Andy Wilkinson d5e588d50a Merge branch '1.5.x' 2018-03-15 12:51:51 +00:00
Andy Wilkinson 53924de556 Merge branch '1.5.x' 2018-03-15 12:47:52 +00:00
Vladimir Tsanev bf433e7f17 Fix Javadoc for ServiceLevelAgreementBoundary
Closes gh-12492
2018-03-15 13:40:13 +01:00
Brian Clozel 57147241cb Make WebClientCustomizer optional for WebClient
This commit removes the required dependency on `WebClientCustomizer`
instances when creating `WebClient` beans, making it optional.

Closes gh-12458
2018-03-15 10:47:45 +01:00
Phillip Webb d1e51d7f98 Explicitly set asyncSupported for reactive servers
Update `JettyReactiveWebServerFactory`/`TomcatReactiveWebServerFactory`
to explicitly set `asyncSupported` to `true`.

Fixes gh-12486
2018-03-14 16:09:45 -07:00
igor-suhorukov 4c61d8abfe avoid check class by string name 2018-03-14 23:59:42 +01:00
Johnny Lim 2e6914ea88 Add missing super() calls
Closes gh-12459
2018-03-14 15:56:53 -07:00
Brian Clozel a08deff0ce Fix WelcomePageHandlerMapping order
This commit fixes 220f8cd and moves the order for
`WelcomePageHandlerMapping` to `2` since the previous order was
conflicting with the resource mapping.

Closes gh-12335
2018-03-14 23:38:17 +01:00
Jon Schneider 0ce7c34036 Upgrade to Micrometer 1.0.2
Closes gh-12480
2018-03-14 15:27:06 -07:00
Phillip Webb c3bc6f6dd6 Polish "Move test to ApplicationContextRunner"
Closes gh-12477
2018-03-14 15:20:56 -07:00
dreis2211 3246496e2c Move test to ApplicationContextRunner
Move `DispatcherServletAutoConfigurationTests` to use the
`ApplicationContextRunner`

See gh-12477
2018-03-14 15:20:16 -07:00
dreis2211 8626daf135 Replace Mockito.times(0) with Mockito.never()
Closes gh-12475
2018-03-14 15:12:20 -07:00
Phillip Webb 90949669be Polish "refactor spring-boot JSON parser"
Polish JSON parser refactoring and remove some more duplication.

Closes gh-12428
2018-03-14 14:54:21 -07:00
Anton Telechev aa69621078 Refactor spring-boot JSON parsers
Refactor JSON parser wrappers to remove duplicate code portions in the
parseMap() and parseList() methods by adding an AbstractJsonParser.

See gh-12428
2018-03-14 14:53:35 -07:00
Phillip Webb a4b0be089d Polish 2018-03-14 14:05:26 -07:00
Brian Clozel 220f8cdca2 Order WelcomePageHandlerMapping at lower precedence
This commit orders the `WelcomePageHandlerMapping` at
`Ordered.LOWEST_PRECEDENCE -1` in order to give a chance to other
mappings to handle the incoming requests.

In this case, developers might provide a custom `ViewController` or
custom `HandlerMapping` for the `"/"` path and we should not override
that opinion.

Closes gh-12335
2018-03-14 17:16:39 +01:00
Stephane Nicoll 5320081d0b Revert "Only create a WebTestClient with WebFlux"
This reverts commit 282bd9f
2018-03-14 08:34:48 -04:00
Stephane Nicoll b80620fe28 Revert "Group auto-configuration import selectors together"
This reverts commit 26d9c26
2018-03-14 08:34:30 -04:00
Stephane Nicoll 282bd9f0db Only create a WebTestClient with WebFlux
This commit updates WebTestClientAutoConfiguration to only create a
WebTestClient when running a WebFlux-based application as mocking the
context only works with that mode at the moment.

Closes gh-12318
2018-03-14 05:12:45 -04:00
Stephane Nicoll 26d9c261c5 Group auto-configuration import selectors together
This commit updates Spring Boot's DeferredImportSelector implementations
to group imports in a consistent set. This makes sure ordering is
applied consistently.

Closes gh-12366
2018-03-14 05:02:22 -04:00
Jon Schneider 172794d446 Correct default Wavefront proxy port in docs
Closes gh-12471
2018-03-13 17:52:13 -07:00
dreis2211 0d3f3e46dd Fix typos
Closes gh-12468
2018-03-13 17:42:19 -07:00
Andy Wilkinson 2f1b2e3ce2 Log summary of web-exposed endpoints during startup
Closes gh-12442
2018-03-13 14:55:51 +00:00
Andy Wilkinson f758a4ddd5 Do not link to controller endpoints in Jersey-based Actuator
Closes gh-12463
2018-03-13 14:55:51 +00:00
dreis2211 a21ea612db Remove duplicated @author tags
Closes gh-12454
2018-03-13 08:51:17 +01:00
igor-suhorukov 97d803bd30 Polish
Closes gh-12448
2018-03-13 08:49:49 +01:00
igor-suhorukov cca976eccd Remove redundant "close" call
Closing the resource is handled automatically by the try-with-resources.

Closes gh-12453
2018-03-13 08:48:13 +01:00
igor-suhorukov 12185251c1 "toString()" should never be called on a String object
Closes gh-12452
2018-03-13 08:45:02 +01:00
igor-suhorukov 93f9bd0a32 Polish
Closes gh-12450
2018-03-13 08:37:50 +01:00
Madhura Bhave 6d9692ffb7 Fix binding to empty prefix when empty name present
Fixes gh-12381
2018-03-12 12:35:08 -07:00
Andy Wilkinson b88e3cb27e Upgrade to Hibernate Validator 6.0.8.Final
Closes gh-12440
2018-03-12 15:58:52 +00:00
Andy Wilkinson db466a1ae2 Upgrade to Hibernate 5.2.15.Final
Closes gh-12439
2018-03-12 15:58:52 +00:00
Stephane Nicoll 0fbe3c28a2 Polish "Add reference to RabbitMQ (advanced usage) starter"
Closes gh-12427
2018-03-12 15:45:59 +01:00
Vincent Fuchs 61c44cf672 Add reference to RabbitMQ (advanced usage) starter
See gh-12427
2018-03-12 15:43:11 +01:00
Stephane Nicoll bb25b0a1f4 Merge branch '1.5.x' 2018-03-12 15:40:50 +01:00
Stephane Nicoll ed05e1f7ca Polish "Reorder modifiers to comply with the JLS"
Closes gh-12432
2018-03-12 15:17:23 +01:00
igor-suhorukov aebb475bc5 Reorder modifiers to comply with the JLS
See gh-12432
2018-03-12 15:17:05 +01:00
Andy Wilkinson 6d16c5ff6e Omit libraries with null destination when repackaging
Closes gh-12437
2018-03-12 13:33:42 +00:00
Stephane Nicoll 7f9ab8078f Merge branch '1.5.x' 2018-03-12 09:07:05 +01:00
igor-suhorukov 6ee04ff942 Polish
Closes gh-12425
2018-03-10 10:28:04 +01:00
Madhura Bhave 6bcdd57ef2 Polish 2018-03-09 10:39:44 -08:00
Madhura Bhave 26811b8974 Ignore top-level ConfigurationProperty binding failures
Fixes gh-12357
2018-03-09 10:36:36 -08:00
Stephane Nicoll a55180aa1e Polish "Get rid of "magic" time constants"
Closes gh-12411
2018-03-09 16:37:18 +01:00
igor-suhorukov ce78a78231 Get rid of "magic" time constants
See gh-12411
2018-03-09 16:36:45 +01:00
Johnny Lim 3c9cee2a8c Invoke mapStatus() only when necessary
Closes gh-12419
2018-03-09 16:21:42 +01:00
Andy Wilkinson 3642636b60 Align test build-info.properties with ISO 8601 formatt changes
See gh-12420
2018-03-09 13:24:34 +00:00
Andy Wilkinson 9b637d4f0d Use millisecond precision for build time in BuildPropertiesTests
Closes gh-12420
2018-03-09 11:59:26 +00:00
Andy Wilkinson 87239ba6c9 Parse build.time as an ISO 8601 instant
Closes gh-12420
2018-03-09 11:32:43 +00:00
igor-suhorukov 4f4cc1569c Polish
Declarations should use Java collection interfaces such as "Deque" rather
than specific implementation classes such as "LinkedList".

Closes gh-12405
2018-03-09 09:32:14 +01:00
Andy Wilkinson 8109267de8 Upgrade to Spring Batch 4.0.1.RELEASE
Closes gh-12410
2018-03-08 17:04:26 +00:00
Andy Wilkinson 63a7a9bf42 Merge branch '1.5.x' 2018-03-08 15:52:47 +00:00
Andy Wilkinson d08b228813 Merge branch '1.5.x' 2018-03-08 15:46:59 +00:00
Andy Wilkinson 43d05315b3 Use Surefire and Failsafe 2.21.0 when building with JDK 10
Closes gh-12332
2018-03-08 13:11:27 +00:00
Madhura Bhave 89e42d40c5 Provide security matchers for actuator links
Fixes gh-12353
2018-03-07 19:02:35 -08:00
Stephane Nicoll 7d1faa1c88 Ignore static and abstract accessors
This commit updates the annotation processor and the binder to ignore
any static or abstract method that has the characteristics of a JavaBean
accessor. As a result, no property is generated for those (invalid)
accessor and no binding occurs on them either.

Closes gh-12390
2018-03-07 17:55:12 +01:00
Brian Clozel 72afdc676d Reorder WebMvcConfigurer from auto-configuration
Prior to this commit, all `WebMvcConfigurer` instances provided by user
configuration were processed *before* the one provided by the
`WebMvcAutoConfiguration`.

For many options this has no consequence, but for some, like the
`ContentNegotiationConfigurer`, settings were overriden by the
auto-configuration even if developers provided an opinion.

This commit orders the `WebMvcConfigurer` provided by the
auto-configuration at `0`, so that custom configurers (unordered, at
`Ordered.LOWEST_PRECEDENCE`) are processed *after*.

This still gives room to developers for configuring things *before* the
auto-configuration - they can still order their own configuration
accordingly.

Fixes gh-12389
2018-03-07 17:50:41 +01:00
Stephane Nicoll 9b1003d9f6 Properly identify accessor methods
This commit fixes the binder so that it property identifies JavaBean
accessors. Previously an accessor named `get` or `is` was identified.
Similarly, a setter named `set` was identified.

Closes gh-12363
2018-03-07 15:14:07 +01:00
Stephane Nicoll 36ed7ae699 Polish 2018-03-07 14:23:49 +01:00
Stephane Nicoll 3804466ad5 Fix description of JDBC starter
Closes gh-12387
2018-03-07 14:17:14 +01:00
Andy Wilkinson bf84215b90 Merge branch '1.5.x' 2018-03-07 13:14:40 +00:00
Stephane Nicoll 1b36ab5be0 Fix wrong import 2018-03-07 14:10:49 +01:00
Stephane Nicoll 0207b816d9 Attempt to detect ddl-auto mode only if necessary
This commit defers the resolution of the default ddl auto mode only when
it is absolutely necessary. This prevents Spring Boot to attempt to get
a connection when it isn't necessary

Closes gh-12374
2018-03-07 13:06:01 +01:00
Andy Wilkinson 317b51f2ad Make ApplicationContextRequestMatcher and subclasses thread-safe
Previously, when performing lazy initialisation of the context,
ApplicationContextRequestMatcher assigned the context field before it
called initialized. The context being non-null is used as the signal
that it’s ok to call a subclass’s matches method. If one thread checks
for a non-null context in between the field being assigned and
initialized being called on another thread, matches will be called
before the subclass is ready.

This commit closes the window for the race condition by only assigning
the context field once the subclass’s initialized method has been
called.

There is a secondary problem in each of the subclasses. Due to the use
of double-checked locking in ApplicationContextRequestMatcher, it’s
possible for a subclass’s matches method to be called by a thread that
has not synchronised on the context lock that’s held when initialized
is called and the delegate field is assigned. This means that the
value assigned to the field may not be visible to that thread.

This commit declares the delegate field of each
ApplicationContextRequestMatcher subclass as volatile to ensure that,
following initialisation, its value is guaranteed to be visible to
all threads.

Closes gh-12380
2018-03-07 11:37:01 +00:00
Stephane Nicoll 42629cb8ae Add support for ConnectionNameStrategy
This commit detects if a `ConnectionNameStrategy` bean exists in the
context and associates it with the auto-configured RabbitMQ's
`ConnectionFactory` when that is the case.

Closes gh-12367
2018-03-07 11:15:50 +01:00
Stephane Nicoll bc47b715c3 Add a note about the use of `*` with YAML
Closes gh-12361
2018-03-07 10:32:10 +01:00
seongwoon.lee 762793b812 Remove a redundant trailing slash in doc
Closes gh-12365
2018-03-06 17:42:43 +01:00
Stephane Nicoll 7a88fe692d Polish Quartz dependency management
Closes gh-12364
2018-03-06 17:00:56 +01:00
Stephane Nicoll 326c1e123c Merge branch '1.5.x' 2018-03-06 15:26:47 +01:00
Stephane Nicoll 6f7501f62b Remove my clone 2018-03-06 10:21:00 +01:00
Madhura Bhave e6eca04af2 Make EndpointRequestMatcher#excluding public
Fixes gh-12354
2018-03-05 16:07:46 -08:00
Madhura Bhave 4ca1e6ae4e Polish "Fix typo in TestDatabaseAutoConfiguration"
Closes gh-12350
2018-03-05 13:13:07 -08:00
inabajunmr ddd8598e2e Fix typo in TestDatabaseAutoConfiguration failure msg
See gh-12350
2018-03-05 13:10:46 -08:00
Madhura Bhave b6e09e8311 Merge branch '1.5.x' 2018-03-05 12:54:01 -08:00
Andy Wilkinson d00d1da27a Upgrade to Maven Javadoc Plugin 3.0.0
Closes gh-12345
2018-03-05 12:45:17 +00:00
Cristian Greco b552842b9d Fix link to Spring Data JPA in docs
Closes gh-12342
2018-03-05 12:33:26 +00:00
Andy Wilkinson f918e0eb6a Merge branch '1.5.x' 2018-03-05 11:55:18 +00:00
Andy Wilkinson 85900796d3 Remove stale tip about ManagementContextConfiguration for endpoints
Closes gh-12312
2018-03-05 11:19:10 +00:00
Andy Wilkinson 2c882a47d0 Merge pull request #12324 from Jon Schneider
* gh-12324:
  Polish "Improve docs on custom metrics"
  Improve docs on custom metrics
2018-03-05 10:55:00 +00:00
Andy Wilkinson d7499387d8 Polish "Improve docs on custom metrics"
Closes gh-12324
2018-03-05 10:54:19 +00:00
Jon Schneider 25ff82f1d7 Improve docs on custom metrics
See gh-12324
2018-03-05 10:53:55 +00:00
dreis2211 3adced9962 Remove workaround for JDK-8023130 in RunProcess
With JDK 8 being the baseline and JDK 7 not being supported anymore we
can get rid of the workaround for a JDK 7 bug in
ProcessBuilder.inheritIO on Windows machines.

Closes gh-12337
2018-03-05 10:39:28 +00:00
Andy Wilkinson 9882d87e1b Start building against Spring Framework 5.0.5 snapshots
See gh-12340
2018-03-05 09:34:41 +00:00
Stephane Nicoll 6533278191 Update reference guide to stop mentioning setWebEnvironment
Closes gh-12330
2018-03-04 09:50:40 +01:00
Andy Wilkinson 1f5143de70 Avoid problems with Failsafe when building with JDK 10
See gh-12028
2018-03-03 17:52:41 +00:00
Andy Wilkinson d30c1fd9f8 Make javadoc plugin use Java 10-compatible version of Commons Lang 3
See gh-12028
2018-03-03 17:52:41 +00:00
Andy Wilkinson 4aa947c227 Use a Java 10-compatibile version of Maven’s site plugin
See gh-12028
2018-03-03 17:52:41 +00:00