-
Notifications
You must be signed in to change notification settings - Fork 30
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
Chore/upgrade spring to 5 3 #216
base: master
Are you sure you want to change the base?
Chore/upgrade spring to 5 3 #216
Conversation
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.
Thanks @cbeach47!
From skimming the code (I have not tested this locally) it looks good!
I see some issues with dependencies when I deploy the portlet to Tomcat. In WEB-INF/lib, I noticed:
|
<dependency> | ||
<groupId>commons-logging</groupId> | ||
<artifactId>commons-logging</artifactId> | ||
<version>1.2</version> | ||
<scope>provided</scope> | ||
</dependency> |
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 was this removed? When I deploy the portlet to Tomcat, I see both these jars in WEB-INF/lib, but I think we only want the slf4j one:
- commons-logging-1.2.jar
- jcl-over-slf4j-1.7.5.jar
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.
For logging, the goal is logback (via the slf4j api). All other logging implementations (even transitive ones) should be removed. I'll look into how commons-logging is still getting deployed.
The JCL bridges (-over-) are now included in spring-jcl, so we don't have to explicitly declare them in the pom, however, I'll need to check if jcl-over-slf4j-1.7.5.jar
is from spring-jcl, or a transitive dependency that should be excluded.
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.
So, lines 201-206 actually prevent any dependency from pulling in commons-logging, which is why I think it should remain. Otherwise, you have to find which dependencies are pulling in commons-logging and add excludes.
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.
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.
discussed in PR - change the parent pom to have a dependencies
section with the excluded deps as 'provided'
@groybal -
I've now set up the maven enforcer to ban commons-logging, and adjusted the pom to not emit the commons-logging dep.
Took a deeper look at the jaxb-core jars - These 'duplicate' jars were present prior to upgrade, and deals with CAS and personDir flows. In order to control scope, I am to delay this. Added #217 for a future effort.
Good catch - I've removed it now.
Ah - the scope was misconfigured. This is now removed in the deployment. |
</build> | ||
</profile> | ||
<profile> | ||
<id>doclint-java8-disable</id> |
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.
Since we only support Java 8+ , doclint is disabled at the maven-javadoc-plugin level in the parent pom.
@@ -51,18 +52,8 @@ | |||
<!-- Dependency Version Properties --> | |||
<properties> |
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.
Collapse dependencyManagement
</configuration> | ||
</plugin> | ||
<plugin> | ||
<!-- Overrides the parent pom due to the overlays --> | ||
<groupId>org.apache.maven.plugins</groupId> |
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.
Leave a note similar to SCP's plugin
</plugins> | ||
</build> | ||
|
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.
Good to remove - note, that this locally builds, and pluto-izes the war file. Add this to the release notes.
Spring upgrade to 5.3.
@Slf4j
.Testing note: Due to available time, not all classes with the logging switch were tested. However - some were tested, and the logging switch was a simple switch across the board without logic adjustments.