Hi all, Matteo and I discussed the versioning of the next Pulsar release and concluded it makes more sense to rename it from 4.3.0 to 5.0.0-M1 (the first milestone release on the road to 5.0.0). I'd like to propose this to the community.
Background and reasoning: The next release will start landing changes that are part of the 5.0 line. PIP-460 (Scalable Topics / Topics v5) and PIP-466 (New Java Client API V5 with Scalable Topic Support) both explicitly target 5.0 as the LTS milestone, and both are designed around a phased delivery path so that we can collect implementation experience and community feedback before the LTS commitment. The work is additive and preserves backwards compatibility - scalable topics are introduced as a new topic type alongside the existing partitioned and non-partitioned topics, and the V5 client API ships as new modules (pulsar-client-api-v5, pulsar-client-v5) without touching the existing pulsar-client-api or pulsar-client. Existing applications and topics keep working unchanged. Trying to ship that under a 4.3.0 label has a few problems: 1. The content of the release is squarely on the 5.0 track. Calling it 4.3.0 understates what's landing and makes it harder for users to recognize that these are early previews of the V5 surface (scalable topics, new client API, new consumer model) rather than incremental 4.x improvements. 2. The version number itself communicates intent. Users immediately understand that a 5.0.0-M1 build is a milestone preview and not meant for production use, which is exactly the message we want for an early-feedback release - especially for features like scalable topics and the V5 client API where we explicitly want feedback before the LTS commitment. 3. It lets us build awareness and momentum around 5.0. We can ship several milestones (5.0.0-M1, M2, ...) before cutting the final 5.0.0, each one giving the community a chance to try the new APIs alongside the existing ones and report back. This matches the phased delivery path called out in PIP-460. 4. It doesn't change the schedule or scope of the release - we still want to get this out as soon as possible to start collecting feedback. It only changes the label and the expectations that come with it. In short: same release, more accurate version number, and a clearer runway toward 5.0.0 LTS. Happy to hear thoughts and objections. Thanks, Lari
