This is a meta issue for defining Agent version's EOL and maintenance date.
The Elastic stack defines EOL and maintenance dates here: https://www.elastic.co/support/eol.
EOL is 18 months after release. Maintenance is typically until the next minor, with exceptions for the final minor of each major.
I think it makes sense to start publishing this information for each of the Agents. It could live in the _Upgrading_ section that some of the Agents have. For example: Ptyhon, Node.js.
@axw, I can handle the documentation part, but I'll need some help defining it. With each of the Agent's versioned so differently, I'm not sure if this is something we should standardize on and adapt as needed, or just let each Agent figure it out on their own?
I'm inclined to go with the same EOL/maintenance policy as the stack for all of the agents. That will keep the number of variables down for users.
@elastic/apm-agent-devs any concerns?
The policy doesn't really explain what the difference between EOL and maintenance are. It says
Our End of Life policy defines how long a given release is considered supported, as well as how long a release is considered still in active development or maintenance.
E.g. 7.4.x is maintained until 7.5.0 is released (as in, any week now), but EOL is April 2021. Which date is the cut-off for backporting bug fixes and security issues?
So far, we (as in, Python agent) haven't really backported any bug fixes to the previous major branch, only security fixes and some docs changes. Would that need to change if we adapt this policy?
The policy doesn't really explain what the difference between EOL and maintenance are.
It's not super clear, but I understand it to mean this: when a version goes out of maintenance, it is no longer guaranteed to get bug fixes. Between the end of maintenance and EOL, bug fixes will be discretionary, e.g. critical security issues. Once it's EOL, it's no longer given any support attention; issues related to it will be closed with WONTFIX.
So far, we (as in, Python agent) haven't really backported any bug fixes to the previous major branch, only security fixes and some docs changes. Would that need to change if we adapt this policy?
I think so. For the Python agent, bug fixes would go into 5.x and 4.2.x until 6.0.0 comes along.
At that point, it would be discretionary whether fixes go into 4.x until EOL.
@bmorelli25 seems we've got quorum, so let's go ahead with that
Will do. Thanks for pushing this forward!
Most helpful comment
It's not super clear, but I understand it to mean this: when a version goes out of maintenance, it is no longer guaranteed to get bug fixes. Between the end of maintenance and EOL, bug fixes will be discretionary, e.g. critical security issues. Once it's EOL, it's no longer given any support attention; issues related to it will be closed with WONTFIX.
I think so. For the Python agent, bug fixes would go into 5.x and 4.2.x until 6.0.0 comes along.
At that point, it would be discretionary whether fixes go into 4.x until EOL.