Commit Graph

3373 Commits

Author SHA1 Message Date
Andy Wilkinson a0de59c209 Fix property binding to Kotlin data class in a native image
Fixes gh-34157
2023-02-13 14:49:04 +00:00
Johnny Lim bc7fc90550 Replace Base64Utils with JDK's Base64
See gh-33967
2023-01-31 10:20:06 +01:00
Krzysztof Krason f4af93fb03 Use for loop rather than iterator
See gh-33987
2023-01-26 20:47:35 -08:00
Krzysztof Krason 55a50d565c Use Comparator.comparing
See gh-33987
2023-01-26 20:47:34 -08:00
Krzysztof Krason d3efd7e091 Use try with close
See gh-33987
2023-01-26 20:36:38 -08:00
Krzysztof Krason 0e68cae57f Use instanceof patterns
See gh-33987
2023-01-26 20:36:25 -08:00
Krzysztof Krason 6e46423983 Use diamond operators
See gh-33987
2023-01-26 20:35:08 -08:00
Phillip Webb 0a50b83c75 Add DataSourceBuilderRuntimeHints
Add hints for DataSourceBuilderRuntime.

Closes gh-33692
2023-01-19 10:52:34 -08:00
Moritz Halbritter ae79c60619 Remove instance suppliers in bean definitions
Remove instance suppliers in bean definitions and depend instead
on reflection. This allows the AOT engine to correctly process
the definitions.

Fixes gh-33763
2023-01-18 19:55:56 -08:00
Phillip Webb 71efc55bf9 Merge branch '2.7.x' 2023-01-18 16:31:53 -08:00
Phillip Webb 7c508fa324 Update copyright year of changed files 2023-01-18 15:37:58 -08:00
Moritz Halbritter 94f4a4396c Merge branch '2.7.x'
Closes gh-33880
2023-01-18 17:35:52 +01:00
Moritz Halbritter e8d809fe65 Replace 'via' with 'over' or 'through' in the documentation
Closes gh-33878
2023-01-18 16:56:42 +01:00
Andy Wilkinson a2f593c15f Merge branch '2.7.x'
Closes gh-33876
2023-01-18 14:02:56 +00:00
Andy Wilkinson b5cebed120 Improve failure description when bean def has no resource description
Closes gh-33765
2023-01-18 13:52:56 +00:00
Moritz Halbritter c939e27925 Only set AWT headless property if not already set
Closes gh-28803
2023-01-18 14:28:26 +01:00
Phillip Webb fad88232b9 Update copyright year of changed files 2023-01-17 10:12:38 -08:00
Phillip Webb a889c539ab Merge branch '2.7.x' 2023-01-17 10:12:25 -08:00
Phillip Webb a0fe8241a7 Update copyright year of changed files 2023-01-17 10:07:03 -08:00
Moritz Halbritter 47c1aa2724 Merge branch '2.7.x'
Closes gh-33771
2023-01-12 09:48:21 +01:00
Moritz Halbritter d6f682da7e Polish JavaBeanBinder
Closes gh-33762
2023-01-12 09:45:36 +01:00
Moritz Halbritter e45b47565c Use Threadlocal.remove instead of .set(null)
See https://github.com/spring-cloud/spring-cloud-sleuth/issues/27 for
reference.
2023-01-11 11:38:48 +01:00
Phillip Webb 84b13f0748 Refine constructor detection logic when binding to existing values
Update `DefaultBindConstructorProvider` so that deduced constructors
are not used if there is an existing value.

Prior to this commit, constructor detection logic was not compatible
with earlier versions of Spring Boot. With Spring Boot 3.0.1, given
a class of the following form:

	@ConfigurationProperties(prefix = "example")
	public class ExampleProperties {

	    @NestedConfigurationProperty
	    private final NestedProperty nested = new NestedProperty(
	    		"Default", "default");

	    public NestedProperty getNested() {
	        return nested;
	    }

	}

If `NestedProperty` has a single constructor with arguments, constructor
binding would be used. In Spring Boot 2.x, setter injection would have
been used.

The updated code now only uses constructor injection if an explicit
`@ConstructorBinding` annotation is present, or if there is no existing
value.

Fixes gh-33409
See gh-33710
2023-01-09 16:57:56 -08:00
Phillip Webb a2ac38e203 Update copyright year of changed files 2023-01-09 15:46:07 -08:00
Phillip Webb 80cfcb71ec Update copyright year of changed files 2023-01-09 15:18:10 -08:00
Krzysztof Krason cf6493f65c Simplify AssertJ assertions and also make them more readable
See gh-33653
2023-01-09 11:10:20 +01:00
Kaveh Shamsi 2d95e4a31e Fix JavaDoc typo in LocalServerPort
See gh-33683
2023-01-09 10:27:40 +01:00
Phillip Webb 2e90b71c30 Do not attempt constructor binding for items with an existing value
Update `DefaultBindConstructorProvider` so that it no longer detects
constructors when the `Bindable` has an existing value. This update
allows us change `ConfigurationPropertiesBindingPostProcessor` and
related classes so that all instances created from `@Bean` methods
are treated as `JAVA_BEAN` bindings and will not be accidentally
re-created using constructor binding.

Fixes gh-33710
2023-01-06 17:23:03 -08:00
Phillip Webb f588793445 Update copyright year of changed files 2022-12-22 01:00:42 -08:00
Phillip Webb 0254619782 Merge branch '2.7.x' 2022-12-22 00:59:40 -08:00
Phillip Webb e4772cf3b7 Update copyright year of changed files 2022-12-22 00:59:32 -08:00
Phillip Webb 2e7ca6f82d Warning if <springProfile> is used in phase 2 model elements
Add `SpringProfileIfNestedWithinSecondPhaseElementSanityChecker` which
will provide a warning if `<springProfile>` is used within a phase 2
model element. This is similar to Logback's own `<if>` warnings.

The `LogbackLoggingSystem` has also been updated so that warning are
printed when present.

Fixes gh-33610
2022-12-22 00:57:59 -08:00
Phillip Webb 2ed512ddb5 Use model.deepMarkAsSkipped in SpringProfileModelHandler
Switch `model.markAsSkipped` to `model.deepMarkAsSkipped` in
`SpringProfileModelHandler`.

Although the current call doesn't appear to be causing issues,
it seems best to align our <springProfile> support with the way
that Logback implements its own `<if>` support.

Closes gh-33618
2022-12-22 00:54:06 -08:00
Phillip Webb c257f2b1d2 Merge branch '2.7.x' 2022-12-21 11:37:41 -08:00
Phillip Webb bc6fc33498 Polish 2022-12-21 10:16:25 -08:00
Moritz Halbritter 08659baeba Polish away public modifier on tests 2022-12-16 16:08:44 +01:00
Moritz Halbritter f36e2ecb7b Use AutoClosables with try-with-resources
Closes gh-33538
2022-12-16 15:43:15 +01:00
Moritz Halbritter 725337f976 Make fields final
Closes gh-33537
2022-12-16 14:28:44 +01:00
Moritz Halbritter 47eb3b11b9 Upgrade Tomcat to 10.1.4
Closes gh-33167
Closes gh-33071
2022-12-12 11:19:30 +01:00
Moritz Halbritter a4779b7859 Merge branch '2.7.x'
Closes gh-33433
2022-12-01 13:33:43 +01:00
Moritz Halbritter 16569099ba Polish "Fix bug in webserver start when loading PKCS#11 KeyStore"
See gh-32179
2022-12-01 12:17:34 +01:00
cdanger 716a839d54 Fix bug in webserver start when loading PKCS#11 KeyStore
See gh-32179
2022-12-01 11:53:51 +01:00
Andy Wilkinson 276b288891 Prevent repeat configuration of DB init bean dependencies
Fixes gh-33374
2022-11-30 12:36:24 +00:00
Moritz Halbritter b3878e84ae Fix bug where using a YAML with anchors couldn't be loaded
Closes gh-33404
2022-11-29 11:21:24 +01:00
Andy Wilkinson c1dab0f9e6 Fix AOT processing of add method with array parameter in Logback model
Fixes gh-33387
2022-11-28 14:09:01 +00:00
Andy Wilkinson b9e57c73b5 Consider Kotlin when checking if parameter names are available
See gh-33182
2022-11-17 12:05:16 +00:00
Phillip Webb a50d1f0bd6 Switch to use BeanUtils.getPropertyDescriptors
Update `BindableRuntimeHintsRegistrar` to use
`BeanUtils.getPropertyDescriptors` rather than `BeanInfoFactory`.

Closes gh-33232
2022-11-16 16:28:08 -08:00
Phillip Webb 2e8d766889 Fix BindableRuntimeHintsRegistrarTests inner class to be static 2022-11-16 13:54:34 -08:00
Phillip Webb d6151858f2 Merge pull request #32851 from tumit
* pr/32851:
  Polish 'Add test for BindableRuntimeHintsRegistrar'
  Add tests for BindableRuntimeHintsRegistrar

Closes gh-32851
2022-11-16 13:41:37 -08:00
Phillip Webb 13a4902018 Polish 'Add test for BindableRuntimeHintsRegistrar'
See gh-32851
2022-11-16 13:37:48 -08:00