aws / aws/aws-secretsmanager-jdbc

Replace direct Jackson dependency with AWS SDK v2 json-utils

Open
#350 0 comments 0 reactions 0 assignees View on GitHub
enhancement
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

Open the contributing 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.