-
Notifications
You must be signed in to change notification settings - Fork 60
Updated pom.xml by Safer #38
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
base: master
Are you sure you want to change the base?
Conversation
See details in issue #39 |
WalkthroughThe Changes
Possibly related issues
Poem
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
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.
Actionable comments posted: 4
🧹 Nitpick comments (2)
pom.xml (2)
47-50
:fastjson
“_noneautotype” build may disable required featuresThis unofficial classifier turns off AutoType globally to mitigate RCE CVEs.
If your deserialization relies on AutoType whitelisting, the code will fail at runtime. Validate all JSON‐binding paths or migrate tofastjson2
, which is actively maintained.
136-139
: YamlBeans 1.17 – note that project is EOLNo active maintenance since 2019; consider migrating to
snakeyaml-engine
(actively patched for CVEs) for production systems.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (1)
pom.xml
(7 hunks)
🔇 Additional comments (4)
pom.xml (4)
27-30
: Major POI jump (3.x → 5.4.1) – verify compile-time API breaks
poi-ooxml
5.x drops several deprecated classes (e.g.HSSFWorkbook
CTORs) and adopts Java 8 baseline. Expect widespread signature changes and heavier memory footprint.
Please run a full build + tests and check for:
- Removed/relocated packages (
org.apache.poi.util.IOUtils
, streaming SXSSF classes, etc.).- The new
jakarta.xml.bind
dependency that POI now transitively requires.If refactors are needed, pin to the last 3.17-security-patched build (
3.17.0.1
) temporarily.
63-66
: protobuf-java 3.25.x requires JDK11 toolchainIf your CI/runtime is still on JDK8, the shaded
java.util.concurrent.Flow
usages will throwNoClassDefFoundError
. Either bump toolchain or stay on3.24.6
(last JDK8 build).
100-103
: Druid 1.2.22 introduces strict SQL parser – watch for breakageOracle/MySQL dialect differences surface at runtime. Run integration tests that hit complex queries or temporarily set
druid.parser.enabled=false
.
141-144
: MySQL Connector/J 5.x → 8.0.31 – driver class rename
com.mysql.jdbc.Driver
→com.mysql.cj.jdbc.Driver
. Verifyspring.datasource.driverClassName
(or equivalent) property and SSL defaults (useSSL=true
now emits warnings).
<groupId>com.squareup.retrofit</groupId> | ||
<artifactId>converter-simplexml</artifactId> | ||
<version>1.6.1</version> | ||
<version>2.0.0-beta2</version> | ||
</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.
🛠️ Refactor suggestion
Still using a beta Retrofit converter
converter-simplexml:2.0.0-beta2
is eight years old, lacks security fixes, and was never promoted to stable. Retrofit 2.11.0 ships converter-simplexml:2.11.0
. Recommend upgrading:
-<version>2.0.0-beta2</version>
+<version>2.11.0</version>
📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
<groupId>com.squareup.retrofit</groupId> | |
<artifactId>converter-simplexml</artifactId> | |
<version>1.6.1</version> | |
<version>2.0.0-beta2</version> | |
</dependency> | |
<groupId>com.squareup.retrofit</groupId> | |
<artifactId>converter-simplexml</artifactId> | |
- <version>2.0.0-beta2</version> | |
+ <version>2.11.0</version> | |
</dependency> |
🤖 Prompt for AI Agents
In pom.xml around lines 58 to 61, the Retrofit converter-simplexml dependency is
using an outdated beta version 2.0.0-beta2. Update the version to 2.11.0 to use
the stable release that comes with Retrofit 2.11.0, ensuring you get the latest
security fixes and improvements.
<groupId>org.redisson</groupId> | ||
<artifactId>redisson</artifactId> | ||
<version>3.5.3</version> | ||
<version>3.6.1</version> | ||
</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.
🛠️ Refactor suggestion
Redisson 3.6.1 is old and vulnerable
Latest stable is 3.29.x with multiple CVE fixes (ACL auth, DNS failover). Using 3.6.1 undermines the PR’s security goal.
-<version>3.6.1</version>
+<version>3.29.0</version>
📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
<groupId>org.redisson</groupId> | |
<artifactId>redisson</artifactId> | |
<version>3.5.3</version> | |
<version>3.6.1</version> | |
</dependency> | |
<groupId>org.redisson</groupId> | |
<artifactId>redisson</artifactId> | |
- <version>3.6.1</version> | |
+ <version>3.29.0</version> | |
</dependency> |
🤖 Prompt for AI Agents
In pom.xml around lines 80 to 83, the Redisson dependency version 3.6.1 is
outdated and has known vulnerabilities. Update the version to the latest stable
release, 3.29.x, to ensure security improvements and fixes are included. Modify
the <version> tag accordingly to reflect this newer version.
<groupId>commons-beanutils</groupId> | ||
<artifactId>commons-beanutils</artifactId> | ||
<version>1.9.4</version> | ||
<version>1.11.0</version> | ||
</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.
commons-beanutils:1.11.0
does not exist on Maven Central
Current lineage ends at 1.9.4 (patched for CVE-2019-10086). Build will fail to resolve. Use:
-<version>1.11.0</version>
+<version>1.9.4</version>
📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
<groupId>commons-beanutils</groupId> | |
<artifactId>commons-beanutils</artifactId> | |
<version>1.9.4</version> | |
<version>1.11.0</version> | |
</dependency> | |
<groupId>commons-beanutils</groupId> | |
<artifactId>commons-beanutils</artifactId> | |
<version>1.9.4</version> | |
</dependency> |
🤖 Prompt for AI Agents
In pom.xml around lines 85 to 88, the dependency version
commons-beanutils:1.11.0 does not exist on Maven Central and will cause build
failures. Change the version to 1.9.4, which is the latest available patched
version, to ensure the dependency resolves correctly during build.
<groupId>org.apache.activemq</groupId> | ||
<artifactId>activemq-client</artifactId> | ||
<version>[5.15.9,)</version> | ||
<version>6.1.6</version> | ||
</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.
ActiveMQ 5.x → 6.1.6 is a breaking change
activemq-client:6.x
moved to Jakarta JMS 3.0 namespaces (jakarta.jms.*
).
If your code still imports javax.jms.*
, it will not compile. Consider either:
-<version>6.1.6</version>
+<version>[5.17.6]</version> <!-- latest 5.x security line -->
until the source is migrated.
🤖 Prompt for AI Agents
In pom.xml around lines 37 to 40, the activemq-client dependency version 6.1.6
uses Jakarta JMS 3.0 namespaces (jakarta.jms.*), which breaks compatibility with
code importing javax.jms.*. To fix this, either downgrade the activemq-client
version to a 5.x release compatible with javax.jms.*, or update your source code
imports and usage to the new jakarta.jms.* namespaces to match version 6.x.
This PR was automatically created by Safer, an open-source tool that updates vulnerable dependencies with compatible and more secure versions.
Analyzed commit: 97a962f
File updated: pom.xml
Vulnerabilities reduced: 313 -> 141
Let us know if you have questions.
Thanks,
Safer Bot
Summary by CodeRabbit