Commit Graph

10 Commits

Author SHA1 Message Date
Phillip Webb 239f384ac0 Update PropertyMapper to better support nullability
Refactor `PropertyMapper` so that it no longer calls adapter or
predicate methods by default when the source value is `null`. This
effectively makes all default calls the same as using
`alwaysWhenNotNull` in the previous generation of the code.

For the limited times when you do need to deal with `null` values, the
new `always()` method can be used.

For example,

	map.from(source::method).to(destination::method);

Will not call `destination.method(...)` if `source.method()` returns
`null`.

Where as:

	map.from(source::method).always().to(destination::method);

Will call  `destination.method(null)` if `source.method()` returns
`null`.

This update provides clearer semantics for the API and allows for better
JSpecify nullability annotations. It has also simplified much of our
existing property mapper code.

Closes gh-47024

Co-authored-by: Moritz Halbritter <moritz.halbritter@broadcom.com>
2025-09-05 14:43:33 -07:00
Andy Wilkinson b1b5880f48 Merge branch '3.5.x'
Closes gh-47036
2025-09-04 09:56:46 +01:00
Moritz Halbritter 76157c77fa Improve null-safety of module/spring-boot-web-server
See gh-46926
2025-08-26 14:22:56 +02:00
Andy Wilkinson 37342aff69 Merge branch '3.5.x'
Closes gh-46923
2025-08-20 11:32:02 +01:00
Brian Clozel 8c0051a02e Drop Undertow support
Spring Framework 7.0 requires a Servlet 6.1 baseline for Servlet containers.

Partial Servlet 6.1 support is available on the `main` Undertow branch,
but there isn't any milestone version available for the undertow 2.4
generation. At this stage of our 4.0 schedule, we think it's safer to drop
Undertow support now.

Closes: gh-46917
2025-08-20 09:30:40 +02:00
Moritz Halbritter f82da9777b Add more nullability annotations to module/spring-boot-web-server
See gh-46587
2025-08-06 10:13:38 +02:00
Andy Wilkinson d0dd8c86c6 Prevent pausing of the web server 2025-08-05 10:33:47 +01:00
Moritz Halbritter 0efeea69d0 Add more nullability annotations to module/spring-boot-web-server
See gh-46587
2025-08-05 09:39:25 +02:00
Moritz Halbritter e30cad418a Add nullability annotations to module/spring-boot-web-server
See gh-46587
2025-08-04 11:27:41 +02:00
Phillip Webb decc32dde3 Restructure project directories to better fit Gradle
Closes gh-46358
2025-07-10 17:54:08 -07:00