Path to Jackson 3.0.0 #72
Replies: 7 comments 21 replies
-
/cc @k163377 @pjfanning @yawkat @yihtserns -- the new central planning page for Jackson 3.0.0. Trying to collect links to everything pertinent, keep updated. Especially interested in 3 Polls under "Things to Decide". |
Beta Was this translation helpful? Give feedback.
-
Is it possible to enable |
Beta Was this translation helpful? Give feedback.
-
How about another one? Proposal for this one : Unifying testing structure/tools pre-Jackson 3 that I previously proposed in Jackson main repo. Benefits....
|
Beta Was this translation helpful? Give feedback.
-
[ Another suggestion for writing 2 -> 3 migration guide ]I would like to suggest that we have 2 -> 3 migration guide here in this repo. |
Beta Was this translation helpful? Give feedback.
-
@cowtowncoder Also, would it be desirable to do the same for the |
Beta Was this translation helpful? Give feedback.
-
Quick note: due to timing, I think 3.0.0-rc1 needs to go first, to try to make it happen close to end of February 2025. I don't want 2.19.0 work to derail that (plus there's need for 2.19.0-rc1). But I am also fairly certain that 2.19.0 (release) will go out way before 3.0.0 (release). Just that rc1's go in different order. I also think 2.18.3 will be released before 2.19.0, and probably before 2.19.0-rc1. Just because there are so many accumulated changes. As to changes for 2.18.3: this is a patch release and really shouldn't change API, including no new deprecations. So there's less co-ordination wrt 3.0.0, I think. |
Beta Was this translation helpful? Give feedback.
-
Hi everyone, I noticed that jackson-annotations hasn’t been migrated to the tools.jackson group like the other Jackson artifacts. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Goal of this Discussion
This Discussion is "uber-discussion" covering the high-level scope of what the official Jackson 3.0.0 Release should include, along with bit of status of the progress. Most of content will be links to other pages, issues, discussions in other repos (with actual Issues, for example).
Note that while most issues were planned to be addressed by
3.0.0-rc1
(the first pre-release), we also want to follow "release early, release often" to get a tight feedback loop -- i.e. not get too ambitious on specific RC release.Jackson 3.0.0: Requirements
To reach state where we are ready to publish the final 3.0.0, we have to tackle following things.
(note: this document is work-in-progress and will continue living -- it is not a static requirements document).
RCs
Lower level details about specific release candidates are on sub-discussions:
JSTEPs
See JSTEP Overview for an overview what JSTEPs are. They can be thought as an effort bigger than what a single Issue can cover, and are natural way to group such efforts.
For 3.0.0 we want to tackle most of them, specifically:
3.0.0-rc6
)JsonNode
improvements3.0.0-rc2
)JacksonException
module-info.java
Note that we can create new JTEPs and reconsider ones not completed.
Some JSTEPs are also for 2.x, not 3.0 (and others for later 3.x versions beyond initial one).
Of these, ones with specific urgency are:
java.util.Date
/ Java 8 Date/Time / JodaDateTimeFeature
classifier
to use: initial proposal is "sbom-cyclonedx" (but plug-in default simple "cyclonedx")Things to decide (polls!)
Here are things to decide on proposed changes: please vote if you have opinion on whether change suggested is desired.
You may also add comments explaining your reasoning, as well as upvote comments by others.
General
Changes to Feature defaults
JsonWriteFeature.ESCAPE_FORWARD_SLASHES
-- issue core#1200DeserializationFeature. FAIL_ON_NULL_FOR_PRIMITIVES
-- issue databind#4858Issues to work on in jackson-databind
Aside from decisions (or in some cases, related to), there are specific issues to work on.
"Most Wanted" Jackson issues
Of all open issues, a small subset has been labeled as "most-wanted" based on upvotes.
These may be considered for inclusion in 2.x as well, but some might require bigger changes.
Because of this, it would make sense to see if any could be added in 3.0.0-SNAPSHOT:
Issues labeled with '3.0'
Some issues have been labeled specifically as targeted to 3.0.0-SNAPSHOT release:
https://github.com/FasterXML/jackson-databind/issues?q=is%3Aissue+is%3Aopen+label%3A3.0
Issues labeled with '3.x'
Other issues have been labeled with
3.x
to indicate "not possible/practical for 2.x, maybe one of 3.x releases", but not necessarily 3.0.0:https://github.com/FasterXML/jackson-databind/issues?q=is%3Aissue+is%3Aopen+label%3A3.x
Issues/Discussion for Other Modules
Beside
jackson-databind
repo, there are issues in other FasterXML Jackson repositories, labeled for ideally being included in 3.0.0-SNAPSHOT:Kotlin
Beta Was this translation helpful? Give feedback.
All reactions