Sebastien Deleuze
c3e6afb879
Improve null-safety to fix some Spring Boot warnings
...
Issue: SPR-15540
8 years ago
Sebastien Deleuze
b47d713e14
Add missing @Nullable annotations on parameters
...
Issue: SPR-15540
8 years ago
Sebastien Deleuze
87598f48e4
Introduce null-safety of Spring Framework API
...
This commit introduces 2 new @Nullable and @NonNullApi
annotations that leverage JSR 305 (dormant but available via
Findbugs jsr305 dependency and already used by libraries
like OkHttp) meta-annotations to specify explicitly
null-safety of Spring Framework parameters and return values.
In order to avoid adding too much annotations, the
default is set at package level with @NonNullApi and
@Nullable annotations are added when needed at parameter or
return value level. These annotations are intended to be used
on Spring Framework itself but also by other Spring projects.
@Nullable annotations have been introduced based on Javadoc
and search of patterns like "return null;". It is expected that
nullability of Spring Framework API will be polished with
complementary commits.
In practice, this will make the whole Spring Framework API
null-safe for Kotlin projects (when KT-10942 will be fixed)
since Kotlin will be able to leverage these annotations to
know if a parameter or a return value is nullable or not. But
this is also useful for Java developers as well since IntelliJ
IDEA, for example, also understands these annotations to
generate warnings when unsafe nullable usages are detected.
Issue: SPR-15540
8 years ago
Juergen Hoeller
3cc94ae8b5
Consistently accept "taskExecutor" bean of type Executor (as stated in @EnableAsync's javadoc)
...
Issue: SPR-15566
8 years ago
Andy Clement
109746a03b
Adjust source in test class to work around eclipse compiler bug
...
Issue: SPR-15586
8 years ago
Juergen Hoeller
cb3d1befcd
LocalValidatorFactoryBean properly supports unwrap at ValidatorFactory level
...
Also documents limitation for Bean Validation 2.0's getClockProvider() method.
Issue: SPR-15561
Issue: SPR-13482
8 years ago
Juergen Hoeller
ba501791c9
Consistent use of WebFlux terminology over Web Reactive
8 years ago
Juergen Hoeller
1f5eaf20b0
Basic test for functional bean registration within a configuration class
...
Issue: SPR-13779
8 years ago
Juergen Hoeller
1ea54eb2c6
GenericFilterBean lazily initializes its default environment
...
Alignment with HttpServletBean; consistent use of EnvironmentCapable.
Issue: SPR-15469
8 years ago
Juergen Hoeller
8b50f887db
Caching annotations on interface methods with CGLIB proxies
...
Issue: SPR-15271
8 years ago
Juergen Hoeller
6c43d14a77
Async annotations on interface methods with CGLIB proxies
...
Issue: SPR-14949
8 years ago
Juergen Hoeller
91df0653fe
Polishing
8 years ago
Juergen Hoeller
5d3249f692
Recommendation for consistent @Profile declarations on overloaded @Bean methods
...
Issue: SPR-15266
8 years ago
Juergen Hoeller
022aefdfe8
Explicit note about @Profile declarations on overloaded @Bean methods
...
Also marks @Conditional as @Documented , aligned with other annotations.
Issue: SPR-15266
8 years ago
Juergen Hoeller
9abf249cee
Explicitly replace target ApplicationListener with singleton proxy, if any (avoiding double registration/invocation)
...
Issue: SPR-15452
8 years ago
Juergen Hoeller
0b118322b0
Polishing
8 years ago
Juergen Hoeller
1735ba22cb
ShadowingClassLoader can be constructed without default excludes
...
Issue: SPR-15439
8 years ago
Juergen Hoeller
c4e0d6c2a2
UnknownHostException as resource-not-found for properties files
...
Plus first-class declaration of FileNotFoundException in Resource javadoc.
Issue: SPR-15433
8 years ago
Juergen Hoeller
15b5dd9f12
Polishing
8 years ago
Juergen Hoeller
a95843a068
Dependency tracking for Supplier-created beans
...
Issue: SPR-15417
8 years ago
Juergen Hoeller
67ea4b3a05
package-info for repackaged libraries (and other polishing)
8 years ago
Juergen Hoeller
917207b7ae
Support for @Order on nested configuration classes
...
Issue: SPR-15384
8 years ago
Sam Brannen
51f23cb424
Polish JavaDoc for date-time and number format annotations
8 years ago
Sam Brannen
279c56a385
Fix typo in JavaDoc
8 years ago
Sebastien Deleuze
e2fd398bad
Specify explicitly Kotlin extensions return type
...
The main purpose is to specify nullability.
8 years ago
Sam Brannen
7a01771a45
Polishing
8 years ago
Sam Brannen
0b11785852
Improve tests for PropertySourcesPlaceholderConfigurer
8 years ago
QBNemo
26101892c1
Fix typo
...
Closes gh-1354
8 years ago
Grant Hutchins
e087db1ecb
Fix typo
...
Closes gh-1364
8 years ago
Juergen Hoeller
e892e02f41
Polishing
8 years ago
Juergen Hoeller
fc2e635c05
Lookup methods work on configuration classes as well
...
Issue: SPR-15316
8 years ago
Juergen Hoeller
6d6cf01a42
Polishing
8 years ago
Juergen Hoeller
d003f6614b
Tests for annotation lookups in interfaces (currently ignored for CGLIB proxies)
...
Issue: SPR-15271
Issue: SPR-14949
Issue: SPR-14322
8 years ago
Juergen Hoeller
d4a1b59b4c
Skip transaction/caching metadata retrieval for java.lang.Object methods
...
Also retrieves CacheConfig as merged annotation now, aligned with other caching annotations.
Issue: SPR-15296
8 years ago
Juergen Hoeller
cbd19153c4
Polishing
8 years ago
Juergen Hoeller
f4de1ea147
Polishing
8 years ago
Juergen Hoeller
7fb0ad37da
ConfigurationClassEnhancer explicitly handles non-interceptable FactoryBeans
...
Issue: SPR-15275
8 years ago
Juergen Hoeller
370e3d683a
Polishing
8 years ago
Stephane Nicoll
73909f41cb
Polish
8 years ago
Stephane Nicoll
1c74a1a0fe
Improve allowNullValue handling when a null value is provided
...
This commit improves `AbstractValueAdaptingCache` to throw a dedicated
exception if `allowNullValues` is `false` and a `null` value is provided
anyway. This avoid a lower-level exception from the cache library that
will miss some context.
Issue: SPR-15173
8 years ago
Juergen Hoeller
1ee0626c94
Polishing
8 years ago
Juergen Hoeller
8d707eb530
Polishing
8 years ago
Juergen Hoeller
599c1ba73e
Polishing
8 years ago
Juergen Hoeller
54f01cffaf
Drop weaving support for pre-Servlet-3.1 servers
...
Issue: SPR-14467
8 years ago
Juergen Hoeller
44ec6e0037
Polishing
8 years ago
Juergen Hoeller
e1bb697cf9
Correct explanation of example patterns
...
Issue: SPR-15240
8 years ago
Juergen Hoeller
448ea4cdfe
Consistent logging in ignoreResourceNotFound scenarios
...
Issue: SPR-15218
8 years ago
Juergen Hoeller
5015613934
Enforce delegation through single overridable registerBean method
...
Issue: SPR-14832
8 years ago
Juergen Hoeller
1b2dc3638f
Revisit Assert to avoid single-arg assert methods (with refined messages)
...
Issue: SPR-15196
8 years ago
Stephane Nicoll
d550eb152c
Polish contribution
...
Closes gh-1307
8 years ago