Commit Graph

28511 Commits

Author SHA1 Message Date
salaboy
b47545f169 Add reference to Dapr Java SDK Spring Boot starter
See gh-44379

Signed-off-by: salaboy <Salaboy@gmail.com>
2025-03-25 11:16:00 +01:00
Phillip Webb
93113a415f Improve performance by not checking all indexed elements
Update `IndexedElementsBinder` so that bind operations are faster at
the expense of not checking that all elements have been bound. The
updated code now uses a window of 10 elements and assumes that if
no elements are missing from that window then exhaustive checking is
not required.

Closes gh-44867
2025-03-24 22:47:30 -07:00
Phillip Webb
9c25b69c06 Improve performance of MapBinder by calculating items only once
Closes gh-44868
2025-03-24 22:47:30 -07:00
Phillip Webb
859d074764 Replace streams on hot paths with for loops
Replace a few usages of stream with simple for loops. Although
this doesn't seem to make much difference to performance, it does
help when profiling applications since it reduces the stack
depth.
2025-03-24 13:45:14 -07:00
Phillip Webb
83725f8080 Add containsDescendantOfCache for system property source
Add a simple cache that is used for the system environment property
source to cache `containsDescendantOf` results since descendants
cannot be used due to the more complicated algorithm.

Closes gh-44863
2025-03-24 13:44:58 -07:00
Phillip Webb
d9d206a761 Bypass SystemEnvironmentPropertySource.resolvePropertyName
Update `ConfigurationPropertySource` adapters so accessing the
`SystemEnvironmentPropertySource` is handled by directly calling
the source.

This saves potentially expensive calls to `resolvePropertyName`
which are unnecessary since mappings are handled directly.

Closes gh-44862
2025-03-24 13:44:49 -07:00
Phillip Webb
54afa69ba5 Add Binder cache and use in JavaBeanBinder and ValueObjectBinder
Introduce a general purpose cache in the `Binder` and make use of it
in `JavaBeanBinder` and `ValueObjectBinder` to reuse potentially
expensive operations.

Closes gh-44861
2025-03-24 13:44:47 -07:00
Phillip Webb
189d84d49d Add ConfigurationPropertyCaching override support
Add `ConfigurationPropertyCaching.override()` method which can be
used to temporarily enable caching for the duration of an
operation.

The `Binder` now uses this method to ensure that caching is
enabled whilst a set of related binding operations are performed.

Closes gh-44860
2025-03-24 13:44:35 -07:00
Phillip Webb
ca9c3ed96d Mark SystemEnvironmentPropertySource as immutable
Update `SystemEnvironmentPropertySourceEnvironmentPostProcessor` so
that our origin aware subclass is marked as immutable. This aligns
with the behavior we had before introducing origin tracking, which
assumes that environment variables changes made after the application
starts are not re-bound.

Closes gh-44859
2025-03-24 13:44:23 -07:00
Phillip Webb
ae6908e4d8 Cache property mappings in ConfigurationPropertyName
Relocate `SystemEnvironmentPropertyMapper` methods into
`ConfigurationPropertyName` so that they can be cached to
improve performance

Closes gh-44858
2025-03-24 13:44:10 -07:00
Phillip Webb
81dee54137 Improve ConfigurationPropertyName equals/hashCode performance
Update `ConfigurationPropertyName` to improve performance of
the `equals(...)` and `hashCode()` methods by making the
following changes:

  - Move element hashCode logic to Element and cache the results
  - Exit the equals method early if hashcodes don't match
  - Exit the equals method early if toString() values match

Closes gh-44857
2025-03-24 13:43:53 -07:00
Phillip Webb
64318336c4 Polish SpringIterableConfigurationPropertySource 2025-03-24 13:43:49 -07:00
Phillip Webb
730b049c80 Mark ApplicationInfoPropertySource as immutable
Update `ApplicationInfoPropertySource` to indicate it is immutable and
is safe to have mappings cached.

Closes gh-44856
2025-03-24 13:43:37 -07:00
Phillip Webb
1257f817c8 Merge branch '3.4.x' 2025-03-24 13:40:18 -07:00
Phillip Webb
bfa11e3161 Merge branch '3.3.x' into 3.4.x 2025-03-24 13:40:11 -07:00
Phillip Webb
587ec6d8d4 Fix incorrect ConfigurationPropertyName javadoc 2025-03-24 13:39:43 -07:00
Stéphane Nicoll
686628dfef Polish "Add support for configuring LDAP's referral property"
See gh-44850
2025-03-24 16:38:33 +01:00
Andras, Dobrosi
59705edbc2 Add support for configuring LDAP's referral property
See gh-44850

Signed-off-by: Andras, Dobrosi <dobrosi@gmail.com>
2025-03-24 16:24:37 +01:00
Stéphane Nicoll
f8047ffb8b Merge branch '3.4.x'
Closes gh-44845
2025-03-21 16:50:33 +01:00
Stéphane Nicoll
cd726b27cd Switch to a Hazelcast container that works on latest ARM CPUs
Closes gh-44838
2025-03-21 16:48:52 +01:00
Stéphane Nicoll
fab1cf6ade Merge branch '3.4.x'
Closes gh-44844
2025-03-21 16:46:58 +01:00
Stéphane Nicoll
ba3de2bd35 Merge branch '3.3.x' into 3.4.x
Closes gh-44843
2025-03-21 16:46:50 +01:00
Stéphane Nicoll
c7f31ed12f Stop relying on test resources from another package
Closes gh-44836
2025-03-21 16:46:06 +01:00
Stéphane Nicoll
be608631f9 Merge branch '3.4.x'
Closes gh-44842
2025-03-21 16:44:23 +01:00
Stéphane Nicoll
7368b34d85 Merge branch '3.3.x' into 3.4.x
Closes gh-44841
2025-03-21 16:44:16 +01:00
Stéphane Nicoll
f94418dd6d Remove outdated classpath exclusions on Hazelcast client
Hazelcast client is no longer shipped as a separate JAR so the exclusion
doesn't do anything.

Closes gh-44835
2025-03-21 16:40:11 +01:00
Stéphane Nicoll
520d3431a9 Merge branch '3.4.x'
Closes gh-44840
2025-03-21 16:37:42 +01:00
Stéphane Nicoll
ac7d921d87 Merge branch '3.3.x' into 3.4.x
Closes gh-44839
2025-03-21 16:37:32 +01:00
Stéphane Nicoll
ced7eff799 Relocate JpaWebAutoConfigurationTests
Closes gh-44834
2025-03-21 16:29:19 +01:00
Moritz Halbritter
1bdb7dae41 Auto-configure Otel's MeterProvider where appropriate
Closes gh-44833
2025-03-21 14:18:29 +01:00
Yanming Zhou
509a790721 Polish
See gh-44814

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-03-21 08:32:34 +01:00
Stéphane Nicoll
09e19fdb9b Merge branch '3.4.x'
Closes gh-44829
2025-03-21 08:30:04 +01:00
Stéphane Nicoll
6280767870 Merge branch '3.3.x' into 3.4.x
Closes gh-44828
2025-03-21 08:29:28 +01:00
Stéphane Nicoll
1a608b7005 Add Yanming to the list of contributors
See gh-44800
2025-03-21 08:14:17 +01:00
Yanming Zhou
81db52063a Polishing BatchAutoConfigurationTests
1. Rename `TestConfiguration` to `TestJpaConfiguration` and remove unnecessary reference.
2. Use `withBean` instead of `withUserConfiguration` to avoid new configuration class.
3. Use kebab-case for configuration key

See gh-44800

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-03-21 08:12:45 +01:00
Stéphane Nicoll
07f8c47b59 Merge branch '3.4.x'
Closes gh-44827
2025-03-21 08:09:10 +01:00
Stéphane Nicoll
3460c0d19f Merge branch '3.3.x' into 3.4.x
Closes gh-44826
2025-03-21 08:09:01 +01:00
Stéphane Nicoll
28f8e3812b Fix code format
See gh-44787
2025-03-21 08:01:06 +01:00
Michael Yan
78b9eca670 Polish javadoc of SpringProfileAction
See gh-44787

Signed-off-by: Michael Yan <rain@rainboyan.com>
2025-03-21 07:59:35 +01:00
Stéphane Nicoll
c2e4793b05 Merge branch '3.3.x' into 3.4.x
Closes gh-44823
2025-03-21 07:57:16 +01:00
Michael Yan
45a99f9e5a Remove extra whitespace in logback defaults.xml
See gh-44786

Signed-off-by: Michael Yan <rain@rainboyan.com>
2025-03-21 07:55:14 +01:00
Stéphane Nicoll
03d26e1410 Merge branch '3.4.x'
Closes gh-44822
2025-03-21 07:53:56 +01:00
Stéphane Nicoll
ca61652edc Merge branch '3.3.x' into 3.4.x
Closes gh-44821
2025-03-21 07:53:51 +01:00
Stéphane Nicoll
3ea272ac2a Rewrite 2nd level cache to use ehcache
Closes gh-44809
2025-03-21 07:53:48 +01:00
Stéphane Nicoll
515ce3d44d Merge branch '3.4.x'
Closes gh-44820
2025-03-21 07:53:37 +01:00
Stéphane Nicoll
c39226b7a7 Merge branch '3.3.x' into 3.4.x
Closes gh-44819
2025-03-21 07:53:32 +01:00
Stéphane Nicoll
9091f3f58f Make link to DataSourceAutoConfiguration explicit
This commit updates DataSourceTransactionManagerAutoConfiguration to
explicitly states it should run after DataSourceAutoConfiguration.

Closes gh-44810
2025-03-21 07:53:30 +01:00
Stéphane Nicoll
1f526d6136 Merge branch '3.4.x'
Closes gh-44818
2025-03-21 07:53:17 +01:00
Stéphane Nicoll
7d409f704c Merge branch '3.3.x' into 3.4.x
Closes gh-44817
2025-03-21 07:53:10 +01:00
Stéphane Nicoll
7733551e0b Stop relying on JPA entities from another module in tests
Closes gh-44804
2025-03-21 07:53:08 +01:00