1787 Commits

Author SHA1 Message Date
Andy Wilkinson
ae5f2d7725 Do not require aspectjweaver to enable CGLib-based proxies
Previously, AopAutoConfiguration would only enable CGLib-based
proxies if aspectjweaver was on the classpath. The intention was for
CGLib-based proxies to always be used by default so this behaviour
was incorrect.

This commit updates AopAutoConfiguration to force the use of
CGLib-based proxies even in the absence of aspectjweaver.

Closes gh-18523
2019-11-04 15:19:06 +00:00
Andy Wilkinson
e26d5d95a8 Do not enable @ConfigurationPropertiesScan be default
In 2.2.0, @ConfigurationPropertiesScan was enabled by default.
Unfortunately, this had the unexpected side-effect of breaking
conditional enablement of a @ConfigurationProperties class via
@EnableConfigurationProperties if the @ConfigurationProperties class
was in a package covered by scanning.

This commit remove @ConfigurationPropertiesScan from
@SpringBootApplication so that it is no longer enabled by default.
2.1.x users who rely upon such conditional enablement of
@ConfigurationProperties classes can now upgrade to 2.2.x without
having to make any changes. Users who do not have such a need and are
in a position to use configuration properties scanning can now opt-in
by adding @ConfigurationPropertiesScan to their main application class
alongside @SpringBootApplication.

Closes gh-18674
2019-11-04 14:09:33 +00:00
Johnny Lim
45d85778b8 Polish
See gh-18838
2019-11-01 09:01:24 +02:00
Brian Clozel
b7f59eb7cb Add config property for webflux codec maxInMemorySize
This commit creates a new configuration property
`spring.codec.max-in-memory-size` which configures the maximum
amount of data to be buffered in memory by codecs (both client and
server).

This property has no default value - it will let Spring Framework handle
the default behavior, currently enforcing a 256KB for provided codecs.

Fixes gh-18828
2019-10-31 20:01:43 +01:00
Stephane Nicoll
7f509bf84e Make sure Web infrastructure uses qualified beans
This commit is a follow-up of a change in Spring Framework[1] to make
sure injection points that are expecting a specific bean by name use
a qualifier.

As a result of this change, MVC uses the dedicated MVC validator again
rather than the general one auto-configured by Spring Boot.

[1] https://github.com/spring-projects/spring-framework/issues/23887

Closes gh-18672
2019-10-30 15:47:02 +01:00
Stephane Nicoll
2ceffcee14 Start building against Spring Data Moore-SR1 snapshots
See gh-18744
2019-10-29 10:36:35 +01:00
dreis2211
9ece2e277f Remove redundant explicit types
See gh-18754
2019-10-27 08:33:01 +01:00
wonwoo
3369d80f3f Polish OnBeanCondition message
See gh-18727
2019-10-26 11:55:34 +02:00
Phillip Webb
597baf9774 Polish "Optimize logger calls"
See gh-18710
2019-10-23 21:00:05 -07:00
wycm
240b1f9e29 Optimize logger calls
Guard logger calls to ensure that they are only made when the
level is set.

See gh-18710
2019-10-23 20:59:11 -07:00
Johnny Lim
8c2d6b28f8 Polish
See gh-18697
2019-10-23 10:09:56 +02:00
dreis2211
8ecdf919f8 Fix Mockito deprecations
See gh-18689
2019-10-23 09:49:33 +02:00
Phillip Webb
511a2a073f Merge branch '2.1.x'
Closes gh-18695
2019-10-22 16:20:05 -07:00
Rafiullah Hamedy
81dc6e02e6 Rename max-http-post-size server property
Rename `max-http-post-size` to `max-http-form-post-size` for Jetty and
Tomcat to make it clearer that they only apply to POSTed form content.

See gh-18566
2019-10-22 16:00:43 -07:00
Phillip Webb
714c9b9804 Polish 2019-10-22 13:12:09 -07:00
Stephane Nicoll
dccb842286 Polish "Apply dependsOn semantic between Liquibase and JPA"
See gh-18673
2019-10-22 17:44:04 +02:00
Dmytro Nosan
bacd36f0cf Apply dependsOn semantic between Liquibase and JPA
This commits restores the dependency between Liquibase and the JPA
EntityManager even if a custom `SpringLiquibase` is configured.

See gh-18673
2019-10-22 17:43:28 +02:00
Stephane Nicoll
4d5d90847e Merge branch '2.1.x'
Closes gh-18682
2019-10-22 09:41:04 +02:00
wycm
681a94b0d5 Optimize debug level logs
See gh-18604
2019-10-22 09:36:48 +02:00
Stephane Nicoll
c05f88bf78 Polish "Add missing package-info files"
See gh-18632
2019-10-22 09:35:10 +02:00
Leo Li
af114c93ee Add missing package-info files
See gh-18632
2019-10-22 09:30:04 +02:00
Alessandro Falappa
f28af3db9f Narrow type for Tomcat 'locale' and 'encoding' properties
See gh-18637
2019-10-22 09:22:48 +02:00
Brian Clozel
1529ba14c8 Rename server.jetty.idle-timeout
This commit renames the `server.jetty.idle-timeout` property to
`server.jetty.thread-idle-timeout`, since there are other timeout
properties that are not tied to the threadpool configuration (e.g. the
connection idle timeout).

We might regroup thread-related properties in a dedicated group in the
future, see gh-18620.

Fixes gh-18615
2019-10-16 14:57:05 +02:00
Andy Wilkinson
fd1d653c34 Rename socket factory processor methods on NettyRSocketServerFactory
Previously, the methods were named addServerProcessors and
setServerProcessors which wasn't aligned with them taking
socket factory processors (ServerRSocketFactoryProcessor) as an
argument.

This commit renames the methods to align them more closely with the
type of their arguments.

Closes gh-18617
2019-10-16 13:39:42 +01:00
Brian Clozel
7104b8385f Merge branch '2.1.x' 2019-10-16 14:37:26 +02:00
Brian Clozel
9c5ee1126f Polish
See gh-18473
2019-10-16 14:36:19 +02:00
Brian Clozel
7113d41a80 Merge branch '2.1.x'
Closes gh-18618
2019-10-16 14:09:46 +02:00
Brian Clozel
e4fa9ce8c6 Deprecate server.connection-timeout property
Prior to this commit, all supported servers would share the same
configuration property `server.connection-timeout`. Unfortunately, in
many cases the behavior of this timeout changes depending on the server.
From actual connection setup timeout, to detecting and closing idle
connections, this property cannot be properly translated from one server
implementation to another.

This commit deprecates this configuration property and introduces server
specific properties:

* `server.jetty.connection-idle-timeout`
(Time that the connection can be idle before it is closed.)
* `server.netty.connection-timeout`
(Connection timeout of the Netty channel.)
* `server.tomcat.connection-timeout`
(Amount of time the connector will wait, after accepting a connection,
for the request URI line to be presented.)
* `server.undertow.no-request-timeout`
(Amount of time a connection can sit idle without processing a request,
before it is closed by the server.)

`server.connection-timeout` is now deprecated and will be removed in a
future release.

Fixes gh-18473
2019-10-16 13:48:48 +02:00
Andy Wilkinson
4b4b39853b Merge branch '2.1.x'
Closes gh-18608
2019-10-15 19:47:41 +01:00
Andy Wilkinson
00d4b44cbb Remove trailing commas from test SQL scripts
Closes gh-18607
2019-10-15 19:47:27 +01:00
Andy Wilkinson
6e84ae6474 Make SAML 2 login configuration back off with user provider config adapter
Previously, a WebSecurityConfigurerAdapter would be configured
irrespective of whether or not the user had provided their own
WebSecurityConfigurerAdapter. This then required them to use ordering
to diambiguate the configuration and made it harder to take complete
control of security configuration.

This commit updates the configuration of the SAML 2 login configurer
adapter to be conditional on missing bean, aligning it with other
security configuration such as the equivalent OAuth 2 configurer
adapter.

Closes gh-18530
2019-10-15 16:52:18 +01:00
Andy Wilkinson
07d0794827 Consider possibility of missing @ConstructorBinding in failure analysis
Previously, when a NoSuchBeanDefinitionException was being analyzed,
the possibility of a missing @ConstructorBinding annotation on a
@ConfigurationProperties class was not considered.

This commit updates the failure analysis for failed constructor
injection of an instance of a @ConfigurationProperties-annotated
class. When such a failure occurs, adding @ConstructorBinding is
now suggested as an action.

Closes gh-18545
2019-10-15 13:48:20 +01:00
Johnny Lim
701bd0dd46 Polish
See gh-18490
2019-10-02 22:15:05 -07:00
Phillip Webb
795303d667 Replace depends-on post processor configurations
Replace `AbstractDependsOnBeanFactoryPostProcessor` `@Configuration`
classes with simple `@Import` component classes.

Closes gh-18382
2019-10-02 21:41:31 -07:00
Madhura Bhave
40ac5b4ae2 Autoconfigure RSocket Security
Closes gh-18356
2019-10-02 13:54:07 -07:00
Madhura Bhave
bc96e09965 Add additional test for reactive security auto-config 2019-10-02 13:46:50 -07:00
Madhura Bhave
22ed56ac52 Add auto-config for Spring Security's SAML support
Closes gh-18260

Co-authored-by: Phillip Webb <pwebb@pivotal.io>
2019-10-02 11:23:21 -07:00
Phillip Webb
71f8347c81 Rename ServerRSocketFactoryCustomizer
Rename `ServerRSocketFactoryCustomizer` to
`ServerRSocketFactoryProcessor` to better reflect that it is not a
traditional customizer.

Closes gh-18390
2019-10-02 10:41:53 -07:00
Andy Wilkinson
46c30d6bb0 Merge branch '2.1.x'
Closes gh-18476
2019-10-02 10:48:57 +01:00
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
2019-10-02 10:48:30 +01:00
Vedran Pavic
4808016560 Align with Spring Session MongoDB deprecations
See gh-18470
2019-10-01 21:32:45 +01:00
dreis2211
bafc10f2c4 Fix default values in metadata for HiddenHttpMethodFilter
See gh-18435
2019-09-29 16:18:41 +02:00
Phillip Webb
1f9c9fedb4 Merge branch '2.1.x'
Closes gh-18409
2019-09-28 22:31:17 -07:00
Phillip Webb
615c6d4e86 Restructure RSocket packages and polish
Polish code and relocate `RSocketServerBootstrap` from `server` to
`context` since it's really an `ApplicationContext` concern.

Closes gh-18391
2019-09-28 22:04:30 -07:00
Phillip Webb
4b0fb8ff24 Polish 'Add @LocalRSocketServerPort support'
See gh-18287
2019-09-28 22:03:36 -07:00
Verónica Vásquez
3c8fa3bbd0 Add @LocalRSocketServerPort support
Add an appication context initializer to detect and store the
active RSocket port in the Environment under
`local.rsocket.server.port`.

Additionally add a `@LocalServerPort` that provides a convenient
alternative to `@Value`.

See gh-18287

Co-authored-by: Eddú Meléndez <eddu.melendez@gmail.com>
2019-09-28 22:03:36 -07:00
Tadaya Tsuyukubo
bccdf04358 Use ordered TaskExecutorCustomizers
Use an ordered stream in `TaskExecutionAutoConfiguration` when
obtaining the TaskExecutor customizers.

See gh-18333
2019-09-28 18:44:57 -07:00
Madhura Bhave
39ed15728f Configure oauth2client in Reactive OAuth2 client auto-config
Closes gh-18385
2019-09-27 11:42:43 -07:00
Stephane Nicoll
f78c9574d8 Start building against Spring Session Corn snapshots
See gh-18257
2019-09-27 16:20:50 +02:00
Phillip Webb
d83238aaab Merge branch '2.1.x'
Closes gh-18369
2019-09-26 12:14:35 -07:00