Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: As a user, I want to know if V3.2 is still an LTS version. If not, what are some alternatives for those who are using V3.2? #11759

Open
yzeng25 opened this issue Nov 20, 2024 · 3 comments
Labels
question label for questions asked by users

Comments

@yzeng25
Copy link
Contributor

yzeng25 commented Nov 20, 2024

Description

LTS tag for v3.2 is removed in apache/apisix-website#1831 and it leads to confusion because no public annoucement was made before it happended.

  • Is V3.2 no longer maintained?
  • Why there isn't an public annoucement (i.e. mailing list or github issue) of abandoning this LTS verison?
  • What is the plan of next LTS version release?
  • What are some alternatives for those who are activelt using V3.2?
  • How to migrate from V3.2 to the versions that are still under maintainance?
@dosubot dosubot bot added the question label for questions asked by users label Nov 20, 2024
@bzp2010
Copy link
Contributor

bzp2010 commented Nov 20, 2024

The below is my personal opinion.


  • Is V3.2 no longer maintained?

I think so, and if others think this is wrong, please correct them.

It stems from a fundamental error, we have not claimed a maintenance cycle for this LTS since its release (from what I remember it didn't have the expected EOL, I vaguely remember some discussion about how they should be cut off at 6 months, but I don't remember the conclusions), so no one knows when it should end. But I think it would be even more irresponsible to permanently mark it as an LTS anyway; we haven't released a patch release since 3.2.2 was released (and some critical fixes were indeed included on 3.2.x), to the point where some of the foundations have changed, and it's hard to merge forward without more complex implications.

As an APISIX developer, I'm very aware of how much APISIX has changed since 3.2.x. We've applied a number of patches from outstanding developers, some of which have significantly improved APISIX's performance in certain areas, such as improvements to reduce etcd connections, which allow for larger clusters; many new plugins; bug fixes etc.

The LTS markup has caused some users to be attracted to stay permanently in an older version, they do not consider newer versions, and of course, they do not benefit from our continuous improvements. Since then, there have also been some break changes that have occurred, where new users would have difficulties upgrading if they started with an older version.

I'm often asked the question, what version should I use, and that in itself is confusing. That's exactly why I submited that PR myself.

Further, it is confusing that some bugs that have been fixed in newer versions are still being encountered and discovered by some users stuck in older versions. According to the normal workflow, fixes will always be merged in the master branch, so investigations and fixes for bugs will only be possible in the master branch (which means the latest version), and for an old version, maybe nobody wants to go there to investigate bugs.

IMO, 3.2 is old.

  • Why there isn't an public annoucement (i.e. mailing list or github issue) of abandoning this LTS version?

Like some other super open source projects, such as NodeJS, I haven't found a specific article about a particular version of EOL in their blog postings. So I don't think a “public announcement” is necessary.

But, the key problem is that we don't have a clear timeline to plan for this EOL, we don't have a process to deal with it, since 3.2 is the only version that is LTS.
I think this does need to be clarified, and there needs to be some discussion about what is LTS and how long it should be kept. If this comes to some conclusion, I will announce it publicly.

  • What is the plan of next LTS version release?

I personally don't have plans for it, and this is due to the fact that I understand that some of the underlying improvements haven't been made yet, so personally I don't think it's innovative in some way.

I'm open to suggestions for creating another LTS version, which can be discussed, and which ultimately depends on the work of other maintainers and suggestions from users. If users had been using 3.2, we wouldn't have received enough suggestions.

  • What are some alternatives for those who are activelt using V3.2?

I think migrating to a newer version would be a good start, and after that, APISIX should be updated consistently on a fixed cycle (e.g., semi-annually or annually)
This facilitates continuous access to new features and benefits from improvements and performance enhancements to existing features.

Using an ancient version would make fewer maintainers willing to put the effort into investigating it, as the codebase varies so much that users may need to verify that it still exists on the latest version, and if so, it will be fixed and included in the latest release.

  • How to migrate from V3.2 to the versions that are still under maintenance?

I will investigate this feasibility and provide some options. I will update if there is any progress.


The above is my personal opinion.

@wzhlinux
Copy link

I also want to know what to do next, or how to upgrade to 3.2.2

@purefun
Copy link

purefun commented Nov 27, 2024

Like some other super open source projects, such as NodeJS, I haven't found a specific article about a particular version of EOL in their blog postings. So I don't think a “public announcement” is necessary.

image

https://nodesource.com/blog/Node.js-v22-Long-Term-Support-LTS

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question label for questions asked by users
Projects
Status: 📋 Backlog
Development

No branches or pull requests

4 participants