Commit Graph

2698 Commits

Author SHA1 Message Date
John Blum
7fedd5f3ec Fix Spring Boot dependency version property name.
The version property used by Spring Boot to manage Spring Data modules pulled in transitively by the Spring Data BOM has changed from 'spring-data-releasetrain.version' to 'spring-data-bom.version'.

Closes #2766
2023-01-18 15:43:43 -08:00
Mark Paluch
b3dcbbe1a7 Polishing.
Reorder statements for higher cohesion.

See #2760
Original pull request: #2762
2023-01-11 11:15:39 +01:00
Christoph Strobl
0bd2714595 Use unique bean name for configuration post processors.
Closes #2760
Original pull request: #2762
2023-01-11 11:15:39 +01:00
Mark Paluch
4c2b8ac4c8 Polishing.
Introduce common exclusion rules for constructors.

See: #2744
Original pull request: #2746
2023-01-11 11:11:14 +01:00
Christoph Strobl
1d7c1ff6e0 Exclude synthetic constructors from AOT inspection.
Java8 bytecode may contain synthetic constructors that refer to anonymous classes which should not be inspected.

Eg. the following construct results in bytecode as listed further down below.

public enum Outer {

    INSTANCE {
        @Override
        public Inner getInnerType() {
            return Inner.STANDALONE;
        }
    },

    public abstract Inner getInnerType();
}

synthetic Outer(java.lang.String arg0, int arg1, Inner$1 arg2)

See: #2744
Original pull request: #2746
2023-01-11 11:08:13 +01:00
Christoph Strobl
a2b3615572 Exclude local and anonymous classes from AOT type inspection.
Also update the type filter that would not mach types directly present in the given package.
Modify type contribution method to allow store specific override.

Closes: #2744
Original pull request: #2746
2023-01-11 11:08:13 +01:00
Oliver Drotbohm
6fd8ae4917 Improve Lazy.toString().
Added dedicated Lazy.toString() rendering the resolved value's ….toString() method but resorts to a constant [Unresolved] if it's not already resolved. An additional ….toString(Supplier<String>) allows to customize the fallback message if needed.

Fixes #2751.
2023-01-05 11:45:00 +01:00
Mark Paluch
14919995ad Extend license header copyright years to 2023.
See #2756
2023-01-02 09:53:28 +01:00
John Blum
bdfb1f8a7f Fix formatting in PropertyReferenceException message.
A message like, "No property 'creat' found for type 'User' Did you mean ''created''" is now properly formatted as:
"No property 'creat' found for type 'User'; Did you mean 'created'".

Closes #2750.
2022-12-12 13:02:23 -08:00
Mark Paluch
f8d6c9f026 Polishing.
Avoid caching. Expand exception handling to all reflective exceptions. Fix since tags.

See: #2721
Original pull request: #2743.
2022-12-12 10:37:56 +01:00
Christoph Strobl
016e8c2779 Register reflection hints for Querydsl Q types.
This commit introduced support for registering GraalVM native reflection type hints for Querydsl Q types that target domain types used in the repository interface declaration.

At this point we only do a simple lookup for Q types based in the very same package that implement EntityPath.
More advanced configuration (eg. base package and type prefix), potentially available via EntityPathResolver are not taken into account as this would require eager bean resolution from the application context, which is likely to trigger additional infrastructure. In this case the user is required to register Q types manually.

Closes: #2721
Original pull request: #2743.
2022-12-12 10:37:56 +01:00
Mark Paluch
14d76ab148 Fix wording in reference documentation.
Closes #2749
2022-12-09 08:57:13 +01:00
Mark Paluch
eee3239376 Update CI properties.
See #2734
2022-11-18 15:31:10 +01:00
Mark Paluch
9c2f99348c After release cleanups.
See #2715
2022-11-18 14:30:20 +01:00
Mark Paluch
6f47fa763d Prepare next development iteration.
See #2715
2022-11-18 14:30:18 +01:00
Mark Paluch
ac92b5ee9e Release version 3.0 GA (2022.0.0).
See #2715
2022-11-18 14:26:22 +01:00
Mark Paluch
d2e894200f Prepare 3.0 GA (2022.0.0).
See #2715
2022-11-18 14:26:12 +01:00
schauder
1f1c34b423 Add reference to release notes.
This adds a asciidoc snippet to be included in other modules documentation.
The snippet contains a reference to the release notes.

For simplicity the current version does not try to link directly to the proper version or module, but just references an overview which the user may use for further navigation.

Original pull request #2723
2022-11-10 10:21:06 +01:00
Mark Paluch
b8804be340 After release cleanups.
See #2722
2022-11-04 15:26:39 +01:00
Mark Paluch
40f193b660 Prepare next development iteration.
See #2722
2022-11-04 15:26:37 +01:00
Mark Paluch
1c507f5c15 Release version 3.0 RC2 (2022.0.0).
See #2722
2022-11-04 15:23:17 +01:00
Mark Paluch
2dc7c1421c Prepare 3.0 RC2 (2022.0.0).
See #2722
2022-11-04 15:23:05 +01:00
Jens Schauder
d56bbbdefb Make dependency tests based on ArchUnit.
The DependencyTests are reimplemented using ArchUnit and enabled.

See #2708
Original pull request #2706
2022-11-02 11:08:37 +01:00
Mark Paluch
6190baa3db Move ReactiveWrappers into o.s.d.util package.
ReactiveWrappers is not tied to repositories so it does not need to reside in the repository.util package. This utility is now located in the data.util package for a better module design and to prevent package cycles.

See #2708
2022-11-02 10:52:11 +01:00
Mark Paluch
5b784d006f Polishing.
Remove duplicate license headers. Avoid fully-qualified type usage where possible.

See #2708
2022-11-02 10:51:42 +01:00
Christoph Strobl
8d424855da Resolve package cycle between repository.config and repository.aot.
Closes #2708
2022-11-02 10:51:26 +01:00
Mark Paluch
0e00d5fd3f Update CI properties.
See #2722
2022-10-31 10:36:32 +01:00
Mark Paluch
92a6ec800c Polishing.
Use for-loop instead of stream to reduce overhead.

See #2722
2022-10-27 09:36:31 +02:00
Mark Paluch
0e57ea8872 Polishing.
Add reactive Query by Example and reactive/imperative Querydsl type hints.

See #2717
Original pull request: #2720
2022-10-19 11:44:58 +02:00
Christoph Strobl
c2293efb02 Add missing reflection hints.
Allow Kotlin to resolve everything it needs.

Closes #2717
Original pull request: #2720
2022-10-19 11:44:58 +02:00
Oliver Drotbohm
39e79a144e Consistently apply method ordering in DefaultProjectionInformation.
Fixes #2718.
2022-10-17 14:31:51 +02:00
Mark Paluch
1d1566acd3 After release cleanups.
See #2691
2022-10-13 17:31:16 +02:00
Mark Paluch
d29bedc1c1 Prepare next development iteration.
See #2691
2022-10-13 17:31:15 +02:00
Mark Paluch
db8b3c1ee7 Release version 3.0 RC1 (2022.0.0).
See #2691
2022-10-13 17:24:25 +02:00
Mark Paluch
e2695c6f09 Prepare 3.0 RC1 (2022.0.0).
See #2691
2022-10-13 17:24:04 +02:00
Christoph Strobl
ac2f8ded22 Fix typo in AuditingBeanRegistrationAotProcessorUnitTests 2022-10-12 14:40:26 +02:00
Christoph Strobl
9e157dcf8f Polishing.
Update exception messages, align method names, extract methods
Original Pull Request: #2488
2022-10-12 14:40:19 +02:00
Mark Paluch
70cda7949d Consider component names for custom implementation and fragment bean registration.
We now consider the the actual repository & fragment bean name when checking for existing bean definitions of default custom implementation beans. Previously, we used the repository interface name without considering the repository bean name.

Closes #2487.
Original Pull Request: #2488
2022-10-12 14:39:30 +02:00
Mark Paluch
103d41f7f4 Resolve package cycle between repository and aot packages.
Closes #2707
2022-10-11 11:44:45 +02:00
Mark Paluch
0fe04e37f8 Polishing.
Refine control flow.

See #2704
Original pull request: #2705.
2022-10-10 13:47:37 +02:00
Christoph Strobl
529f88cf4c Use explicit type declarations for generated code.
See #2704
Original pull request: #2705.
2022-10-10 13:47:32 +02:00
Christoph Strobl
1fde452ab9 Fix AOT code generation for managed types.
Closes #2704
Original pull request: #2705.
2022-10-10 13:47:12 +02:00
Mark Paluch
b55f098b43 Remove references to ClassTypeInformation from TypeInformation.
Closes #2703
2022-10-06 16:20:22 +02:00
Mark Paluch
1ff6e39ec2 Adopt to JUnit 5.9 changes.
Avoid duplicate parameter factory names.

Closes #2702
2022-10-06 15:57:43 +02:00
Christoph Strobl
7027df9896 Follow RuntimeHints API naming changes.
Closes: #2701
2022-10-06 10:43:45 +02:00
Jens Schauder
db34b52b89 Remove non Javadoc comments.
Closes #2699
2022-10-05 15:39:44 +02:00
Christoph Strobl
c5e95c251b Follow API changes in Spring Framework.
Closes: #2698
See: spring-projects/spring-data-build#1809
2022-10-05 11:06:59 +02:00
Christoph Strobl
9e9ddbf334 Use BindingReflectionHintsRegistrar to add reflection hints on types.
Closes: #2683
Original pull request: #2684.
2022-10-05 09:02:31 +02:00
Mark Paluch
9c993e22f5 Polishing.
Reformat code and reorder methods according to visibility. Reduce type and method visibility where applicable.

See #2680
Original pull request: #2682.
2022-10-04 15:46:14 +02:00
Christoph Strobl
e7cc9a6104 Generate custom bean initialization code for types exposed via ManagedTypes during AOT.
We now replace ManagedTypes bean definitions with generated code that contain the discovered types to avoid class path scaning.

Closes: #2680
Original pull request: #2682.
2022-10-04 15:46:14 +02:00