apache / apache/gravitino

[Improvement] Audit and narrow Jackson dependency boundaries in api and common

Open
#12,193 0 comments 0 reactions 0 assignees View on GitHub
improvement
Dominant language
Java
Stars
3.2k
Forks
935
Avg merge
1d 16h
Merged PRs (30d)
298

Description

### What would you like to be improved?

The `api` and `common` modules contain pre-existing Jackson dependency declarations. `common` uses Jackson broadly, while public API values should remain separate from JSON wire DTOs where practical.

Review of #12132 identified an opportunity to audit and narrow these dependency boundaries without mixing a broad module refactor into the KMS API change.

### How should we improve?

- Audit Jackson imports and dependency declarations in `api` and `common`.
- Remove dependencies that are demonstrably unused without changing published API behavior.
- Reassess ownership of shared JSON utilities and DTO serialization.
- Validate Gradle dependency metadata, affected downstream modules, tests, and documentation builds.

Contributor guide

Open the contributing guide

Research direction

Start by auditing Jackson imports and dependency declarations in the api and common modules, then review how shared JSON utilities and DTO serialization are owned. Check Gradle dependency metadata, affected downstream modules, tests, and documentation builds. Done means demonstrably unused dependencies are removed without changing published API behavior and the validations pass.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
api, build-system
Issue type
Refactor
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.