Commit Graph

14 Commits

Author SHA1 Message Date
Moritz Halbritter 657c537cc2 Add nullability annotations to tests in module/spring-boot-flyway
See gh-47263
2025-10-06 12:03:54 +02:00
Phillip Webb 155e3bd5e6 Relocate `@AutoConfigureDataSourceInitialization`
Relocate `@AutoConfigureDataSourceInitialization` from
`spring-jdbc-test` to `spring-boot-test-autoconfigure`. This change
allows Flyway and Liquibase to respond to the annotation without
the user needing to remember the `spring-jdbc-test` dependency.

This is especially important for R2DB applications which may
still be using Flyway or Liquibase for migrations and will
want them to apply during tests.

See gh-46356
See gh-47322
2025-10-01 21:43:13 -07:00
Andy Wilkinson 5348880b69 Modularize spring-boot-test-autoconfigure
This commit modularizes spring-boot-test-autoconfigure. It now
contains only the code that's central to test auto-configuration.
Feature-specific functionality has moved out into -test modules,
some existing and some newly created. For example, `@DataJpaTest` can
now be found in spring-boot-data-jpa-test.

Closes gh-47322
2025-09-25 13:11:35 +01:00
Stéphane Nicoll 2e76cda4ba Upgrade to Flyway 11.13.1
Closes gh-47261
2025-09-18 03:36:34 +02:00
Stéphane Nicoll 297b4dfe70 Upgrade to Flyway 11.13.0
Closes gh-47239
2025-09-17 08:51:14 +02:00
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
Moritz Halbritter d618f6b1ec Merge branch '3.5.x'
Closes gh-47014
2025-09-01 16:10:16 +02:00
Moritz Halbritter 3c01fdfeaa Improve null-safety of module/spring-boot-flyway
See gh-46926
2025-08-27 14:20:11 +02:00
Moritz Halbritter 5f5443ea67 Improve null-safety of module/spring-boot-flyway
See gh-46926
2025-08-26 14:22:55 +02:00
Moritz Halbritter 78ec5ce3f9 Add more nullability annotations to module/spring-boot-flyway
See gh-46587
2025-08-01 09:16:11 +02:00
Moritz Halbritter eb31180a64 Add nullability annotations to module/spring-boot-flyway
See gh-46587
2025-07-30 14:56:56 +02:00
Moritz Halbritter c0f1f641ce Make auto-configurations final and remove public members
Closes gh-32883
2025-07-29 09:48:49 +02:00
Stéphane Nicoll 2a37168521 Upgrade to Flyway 11.10.3
Closes gh-46496
2025-07-22 16:00:57 +02:00
Phillip Webb decc32dde3 Restructure project directories to better fit Gradle
Closes gh-46358
2025-07-10 17:54:08 -07:00