Skip to content

[Snyk] Security upgrade io.vertx:vertx-core from 3.8.5 to 4.0.0#320

Open
caniszczyk wants to merge 1 commit into
mainfrom
snyk-fix-ed78fc70845a72269f41745a44565c5c
Open

[Snyk] Security upgrade io.vertx:vertx-core from 3.8.5 to 4.0.0#320
caniszczyk wants to merge 1 commit into
mainfrom
snyk-fix-ed78fc70845a72269f41745a44565c5c

Conversation

@caniszczyk

Copy link
Copy Markdown

snyk-top-banner

Snyk has created this PR to fix 1 vulnerabilities in the maven dependencies of this project.

Snyk changed the following file(s):

  • builders/testdata/java/vertx-helloworld/pom.xml

Vulnerabilities that will be fixed with an upgrade:

Issue Score Upgrade
medium severity Improperly Controlled Modification of Dynamically-Determined Object Attributes
SNYK-JAVA-COMFASTERXMLJACKSONCORE-17457695
  738   io.vertx:vertx-core:
3.8.5 -> 4.0.0
Major version upgrade Proof of Concept

Breaking Change Risk

Merge Risk: High

Notice: This assessment is enhanced by AI.


Important

  • Check the changes in this PR to ensure they won't cause issues with your project.
  • Max score is 1000. Note that the real score may have changed since the PR was raised.
  • This PR was automatically created by Snyk using the credentials of a real user.

Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open fix PRs.

For more information:
🧐 View latest project report
📜 Customise PR templates
🛠 Adjust project settings
📚 Read about Snyk's upgrade logic


Learn how to fix vulnerabilities with free interactive lessons:

🦉 Improperly Controlled Modification of Dynamically-Determined Object Attributes

@caniszczyk

Copy link
Copy Markdown
Author

Merge Risk: High

The upgrade from Vert.x 3.8.5 to 4.0.0 is a major version change with significant breaking changes that require code modifications.

Key Breaking Changes:

  • Asynchronous Programming Model: Vert.x 4 introduces a Future-based model for asynchronous operations alongside the traditional callback approach. While callbacks are still supported to ease migration, many APIs have changed. The Future.completer() method has been removed as Future<T> now directly implements Handler<AsyncResult<T>>. [1]
  • API Removals and Behavioral Changes:
    • WriteStream: The write and end methods are no longer fluent (i.e., they do not return the stream instance). This is a breaking change that requires updating any chained calls. [1, 14]
    • Multi-Threaded Workers: The option to deploy multi-threaded worker verticles has been removed. The recommended replacement is to use Vertx.executeBlocking() with an unordered queue. [1]
    • HTTP: The synchronous HttpServerRequest.upgrade() method has been removed and replaced by the asynchronous HttpServerRequest.toWebSocket() method. [1]
    • EventBus: Some request-response send methods have been removed from the EventBus. [1]
  • Dependency Changes: The jackson-databind library is no longer a default dependency. If your application performs object mapping from JSON, you must now explicitly add it to your project's dependencies. [1, 5]

Recommendation: This upgrade requires a thorough review and refactoring of the application code. Developers must consult the official migration guide to address the numerous breaking changes across the asynchronous programming model, HTTP layer, and other core components.

Source: Vert.x 3 to 4 Migration Guide

Notice 🤖: This content was augmented using artificial intelligence. AI-generated content may contain errors and should be reviewed for accuracy before use.

@CLAassistant

Copy link
Copy Markdown

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.
You have signed the CLA already but the status is still pending? Let us recheck it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants