aws / aws/aws-secretsmanager-jdbc
Replace direct Jackson dependency with AWS SDK v2 json-utils
- Dominant language
- Java
- Stars
- 196
- Forks
- 87
- PR merge metrics
- No merged PRs in 30d
Description
## Summary
I would like to propose removing the direct dependency on `jackson-databind` from `aws-secretsmanager-jdbc` and using the JSON utilities provided by the AWS SDK for Java v2 instead.
## Background
Since AWS SDK for Java **v2.17**, the SDK shades Jackson internally and no longer exposes it as an external dependency.
AWS announced this change here:
- https://aws.amazon.com/blogs/developer/the-aws-sdk-for-java-2-17-removes-its-external-dependency-on-jackson/
As a result, applications using AWS SDK v2 generally no longer need to manage Jackson as a direct dependency for SDK functionality.
## Proposal
Instead of depending directly on `jackson-databind`, `aws-secretsmanager-jdbc` could use the AWS SDK v2 `json-utils` module for JSON processing. This would allow the library to rely on the SDK's shaded Jackson implementation rather than introducing its own direct dependency.
## Benefits
- Removes the direct dependency on `jackson-databind`.
- Reduces dependency management for applications already using AWS SDK v2.
- Avoids potential Jackson version conflicts.
- Aligns `aws-secretsmanager-jdbc` with the dependency strategy adopted by AWS SDK v2.
Contributor guide
Research direction
Start by reviewing the project's dependency declarations and locating existing jackson-databind usage, then compare the AWS SDK for Java v2 json-utils API with the current JSON processing. Done means the direct jackson-databind dependency is removed, the replacement works with the library's existing behavior, and relevant tests still pass.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- aws, java
- Domain
- build-system
- Issue type
- Refactor
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 52/100