New informational JEP: 14: The Tip & Tail Model of Library Development
Alex Buckley
alex.buckley at oracle.com
Tue Oct 22 23:15:16 UTC 2024
On 10/22/2024 3:17 PM, Karsten Silz wrote:
> First, the JEP says this: "A selection of older JDK versions -- 8, 11,
> 17, and 21 -- are maintained in tail trains." I interpreted that as
> "Only these older JDK versions have tail trains."
Fair comment. I have updated that paragraph in "Success with tip & tail"
to clarify that all JDK versions have tail trains, some maintained
longer than others.
> Second, the JEP also says this: "From time to time, library developers
> designate a tip release as the start of a new tail train that they will
> continue update even after new tip releases are made. " To me, the "From
> time to time" suggests again that not every tip release spawns a tail
> release.
That text is from the highest level part of the Description. It is
necessarily broad. I don't see it as incompatible with the JDK's
"implementation" of T&T that forks every tip release into a tail train.
> And then there's this: "a new tail train that they will continue
> [to] update even after new tip releases are made". This was in the
> "Tip & Tail" description, so I read it as a definition: "All tail
> trains must get updates after the next tip release". Non-LTS OpenJDK
> tail trains don't today. So, a tail train getting updates after the
> next tip release is a recommendation, not a requirement?
Again, that part of the Description is high level and needs to be
applicable to all libraries. The most interesting scenario for users is
where a tail train makes tail releases for many years, long after the
next tip release has shipped, so that's how we start describing the T&T
model.
I don't want to weaken the text to accommodate the JDK's T&T
implementation -- "a new tail train that they MAY continue to update
even after new tip releases are made" -- because this phrasing, while
technically correct, will send readers off-track.
Alex
More information about the jdk-dev
mailing list