FasterXML / FasterXML/jackson-annotations

Make `@JsonIgnoreProperties` and `@JsonPropertyOrder` merge (optionally), not just override

Open
#82 3 comments 0 reactions 0 assignees View on GitHub
Dominant language
Java
Stars
1.1k
Forks
342
Avg merge
8h 53m
Merged PRs (30d)
2

Description

A small subset of array-valued annotations would benefit from ability to append/merge their values.
List includes at least:
- `@JsonIgnoreProperties` (default: simple union/merge)
- `@JsonPropertyOrder` (default: simple append?)

In these cases, current behavior of full replacement is probably not what is usually the expected behavior.
But additionally we should probably also allow alternate choice of "override"/"overwrite".

One obvious challenge is that since `Annotation` types can not be instantiated, we may have to figure out whether we could use value object approach (see `@JacksonAnnotationValue` for details) to help here.

The main challenge here is to combine two important aspects:
1. Try to keep annotation-merging/inheritance-handling/resolution code annotation agnostic and fully generic (that is, logic need not know semantics of actual annotation tpes)
2. Fully handle merging so that un-merged set of annotations need not be exposed to calling code.

So: big part of this is to see if merging is practical, and how.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.