After a little bit of less activity for Jackson over the past couple
of months, I am trying to get back to adding new things. While the
goals for Jackson 2.14 are quite modest (and my time to finalize 3.0
is too limited for right now), I am hoping to address at least one
entry from the list of ideas:
https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.14
Specifically, I think that addition of so-called "DataTypeFeature"s
(like `JsonNodeFeature`, `Enum[Config?]Feature`) would be a good
extension mechanism, along with a set of initial configurable aspects.
I tried to write a JSTEP draft around it:
https://github.com/FasterXML/jackson-future-ideas/wiki/JSTEP-7
and would appreciate feedback on it.
I actually have a reasonable idea of how scaffolding/plumbing should
work, so that once added, configuration would be quite similar to that
of `DeserializationFeature` and `SerializationFeature`.
But the real work would come from actually adding support for
jackson-databind to make use of these new Features.
Initially I was able to collect a set of `JsonNode` related features,
and need to do the same for Enum-related ones.
The third obvious generalized datatype -- Date/Time -- would be more
challenging, but I'd be happy to incorporate feature ideas there as
well (one challenge being that `@JsonFormat` mechanism, as well as
datatype -module settings would need to be merged somehow).
Anyway, I thought this might be of interest to some of you, as a sort
of advance warning that I will try to tackle this aspect of
Jackson-configurability, for Jackson 2.14.
So. Would love to hear some feedback, comments, suggestions; would be
happy to answer questions as well.
-+ Tatu +-