Repository navigation
Release 3.3.0, non-LTS, no Release Candidates: focus; Vulns, Performance #108
Replies: 4 comments 9 replies
|
/cc @pjfanning @JooHyukKim @k163377 @stevenschlansker @yawkat @sdeleuze Note: anyone tagged interested in helping with GHSA (vuln submissions) but does not yet have access, DM/email me and I can add you to relevant role (see https://github.com/FasterXML/jackson-databind/security/advisories to see if you do have access). Similarly wrt access to edit other relevant things; Wikis, READMEs; if I can give access, I will. |
|
Went through open issues/PRs again after the status update. Not on the TODO yet, but I think these need to be in 3.3.0:
One more: databind#6260 ( |
Thank you for catching this, I will evaluate and include fixes in the next iteration. |
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
We are getting close to wanting to release new Jackson 3.x minor version, 3.3: partly this is simply due to accumulation of changes (128 already! Not far from 160 for 3.2); and partly to release before Sonatype Publish limits kick in (if we can do that).
Changes accumulated so far can be seen here: https://github.com/FasterXML/jackson/wiki/Jackson-Release-3.3
LTS (Long-Term Support) version: no
Since Jackson 3.1. was an LTS, I think we should have at least one more non-LTS one; 3.4 might be the next LTS.
Release Candidate(s) (RCs): no
Going forward, I think we should only do RC(s) for LTS versions, unless there are some risky changes.
So defaulting to no RCs for non-LTS.
Dependencies
We will want to keep 2.x and 3.x synced for now, so
2.23.0release of Jackson 2.x should be pushed at around same time -- but due to coupling withjackson-annotations(for which we push2.23), 2.x needs to go first.Note: although 2.23 has only 24 fixes (https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.23), many are worthwhile so this is not a useless release either.
It should also not become an LTS (2.21 was).
Also: we probably would want to release full set of supported branches right before 3.3.0 / 2.23.0:
which contain multiple CVE fixes already (and might accumulate couple more before release)
Timeline
At this point, I would suggest Friday, October 30, 2026 as the target for 2.23.0 / 3.3.0 releases.
From that, we need to release 5 (!) sets of patches before that; and since I mostly have time on Fridays and weekends, these would be targeted for release on Friday, October 23, 2026.
This would gives us about week and a half to finish up work.
This is tight but we can start with it as a Stretch Goal. If it does not work we can extend timeline as necessary; Sonatype publishing limits may need to be resolved but there is no need to rush if things are not ready for release.
Issues to Include/Exclude, Prioritize; labels
Priorities: Vulnerabilities, Performance
As usual, we should try to tackle as many of reported (as GHSA) issues as possible.
Second priority category for this version is, I think, Performance -- we have a few good PRs for
jackson-coreand various data format backends; so let's focus on gettings those in.Third category -- if time allows -- are low-risk bug fixes ("low-hanging fruit"); favoring number of fixes over tackling more complex things for which more time allows for thorough review process.
Exclude
At this point, we should try to limit riskier changes; especially things that need fundamental changes and/or major refactoring. This includes at this point:
@JacksonInjecthandling fixes@JsonViewfixesTagging (labels)
We should use Github Labels to indicate priorization, like so:
3.3(or2.23)3.4(even if backport to2.xplanned)3.x(NOTE: this does NOT mean they could not be included in 3.4; just that there is no urgency)NOTE: if labels are missing for some repos, feel free to create if you have access; if not, add a comment here.
Similarly if you cannot apply labels, add a comment on issue/PR tagging me and I can add label.
All reactions