-
Notifications
You must be signed in to change notification settings - Fork 950
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat!: Update to Spring 6, Boot 3 #13545
Conversation
This class is deprecated and uses API removed in Spring 6 - `AbstractBeanFactory.getAccessControlContext()` It also uses deprecated API in Java 17 - `java.lang.AccessController` and `java.lang.SecurityManager`
The Spring CommonsMultipartResolver is removed in Spring 6. The grails-web-fileupload project seems to have been created to address a specific problem with the Safari browser. Hopefully this is resolved now and this fix no longer necessary.
The overridden methods in this class has been removed in Spring 6. This class does not serve a purpose any longer and is therefore deprecated.
NestedIOException has been removed in Spring 6. IOException should be used directly instead.
The class hierarchy for AnnotationMetadataReadingVisitor has been removed in Spring 6 with no public replacement. This commit adds them to the grails-core project instead as a workaround until another solution is found.
Spring has introduced a new `spring.config.activate.on-profile` config property to signal if a config document should be included or not. This commit refactors the existing `shouldSkipBlock` method to take that into consideration. However, the usage of `shouldSkipBlock` was removed in commit 03bef04. I'm not sure if that was an oversight, but I have added the usage of this method back (now named `springProfileExclude`).
…ers` `grails-plugin-converters` has not yet been converted to jakarta.servlet. This commit makes the test suite pass until that is fixed. `GrailsMockHttpServletRequestTests` had to be converted from JUnit to Spock to be able to use `@PendingFeature`.
The `grails-gsp` module has not yet been converted to jakarta.servlet, causing test failures. To ensure the test suite passes until this conversion is complete, this commit disables the affected tests using `@Ignore` (Spock) and `@Disabled` (JUnit5). As the problem with the tests occurs in the initialization phase, it was regrettably not possible to use `@PendingFeature`.
Use the new `spring.config.activate.on-profile` config property instead of the old `spring.profiles`.
The |
As Micronaut 4 does no longer include `jackson-databind` as a transitive dependency, it is added as a direct dependency where ObjectMapper is used.
|
||
@NonNull | ||
@Override | ||
public <A extends Annotation> Set<A> findAllAnnotationsOnBean(@NonNull String beanName, @NonNull Class<A> annotationType, boolean allowFactoryBeanInit) throws NoSuchBeanDefinitionException { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is it intentional that this behavior is introduced in the license header update commit?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@osscontributor No, that was not my intention. Must have missed to exclude that change from the commit.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Were these classes ported from Spring because they had been removed from Spring the latest version?
RecursiveAnnotationAttributesVisitor
RecursiveAnnotationArrayVisitor
MethodMetadataReadingVisitor
ClassMetadataReadingVisitor
AnnotationReadingVisitorUtils
AnnotationMetadataReadingVisitor
If that it is the case, we should tell that in these classess javadoc header.
Can we replace?
@Ignore('grails-gsp is not on jakarta.servlet yet')
with:
@PendingFeature
@@ -1,5 +0,0 @@ | |||
## grails-web-fileupload |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
why did we remove this module?
super.setStatus(status, errorMessage); | ||
} | ||
} | ||
@Deprecated(forRemoval = true) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
should we remove it in Grails 7 and document the breaking change instead of deprecating it?
...ore/src/main/groovy/org/grails/spring/beans/factory/OptimizedAutowireCapableBeanFactory.java
Show resolved
Hide resolved
The class hierarchy for AnnotationMetadataReadingVisitor has been
Yes, I'll add that 👍 |
As the problem with the tests occurs in the initialization phase, |
This commit enables the tests that were disabled before `grails-gsp` was migrated to `jakarta.servlet`. See #13545
No description provided.