Skip to content

docs(proccess): add versioning and maintenance policy #3682

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

Merged
merged 8 commits into from
Jan 31, 2024
Merged

docs(proccess): add versioning and maintenance policy #3682

merged 8 commits into from
Jan 31, 2024

Conversation

leandrodamascena
Copy link
Contributor

Issue number: #3681

Summary

Changes

In this pull request, we are adding a comprehensive guide to inform our customers about our policies regarding the maintenance and versioning of Powertools or AWS Lambda.

User experience

Please share what the user experience looks like before and after this change

Checklist

If your change doesn't seem to apply, please leave them unchecked.

Is this a breaking change?

RFC issue number:

Checklist:

  • Migration process documented
  • Implement warnings (if it can live side by side)

Acknowledgment

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Disclaimer: We value your time and bandwidth. As such, any pull requests created on non-triaged issues might not be successful.

@leandrodamascena leandrodamascena requested a review from a team January 30, 2024 10:06
@boring-cyborg boring-cyborg bot added the documentation Improvements or additions to documentation label Jan 30, 2024
@pull-request-size pull-request-size bot added the size/M Denotes a PR that changes 30-99 lines, ignoring generated files. label Jan 30, 2024
@leandrodamascena leandrodamascena linked an issue Jan 30, 2024 that may be closed by this pull request
2 tasks
@heitorlessa
Copy link
Contributor

Thank you @leandrodamascena! Starting the editing process.

@heitorlessa
Copy link
Contributor

Pushed the first editing pass. Import notes to discuss on a call as details matter.


Significant contract abiding worth reviewing

  • No mention of the term semantic versioning
  • GA versions minimum support of 2 years (24 months)
    • suggestion: bind to Lambda runtime instead
  • At least 6 months announcement for maintenance releases
  • Maintenance versions minimum support of 1 year
    • suggestion: given staffing and EOL supply chain, we may not be able to do it.
  • End of support versions are kept on GitHub (e.g., v2 branch)
    • suggestion: keep package managers only to prevent higher CI charges on checkout (sparse checkout is possible)
  • GA versions support underlying EOL dependencies for at least 6 months
    • suggestion: same issue as maintenance versions for 1yr

Questions

Q: Do we want to keep EOL versions source code on GitHub?

Q: Do we want to support GA releases for a minimum of 2 years?

Q: Are we comfortable supporting underlying EOL dependencies for a minimum of 6 months (e.g., Pydantic v2, Middy 4, etc.)?

Q: Do we want to bundle EOL documentation versions (1.x), keep them (2.32.0)?

@heitorlessa
Copy link
Contributor

Posting update after a call between @leandrodamascena @rubenfonseca and myself.

Answered questions

Q: Do we want to keep EOL versions source code on GitHub?

We will keep as part of the Git tree e.g., tags, commits, etc. We will NOT keep a separate branch for each EOL version e.g., v1.

Q: Do we want to support GA releases for a minimum of 2 years?

Yes, as we've already done so historically.

Q: Are we comfortable supporting underlying EOL dependencies for a minimum of 6 months (e.g., Pydantic v2, Middy 4, etc.)?

No. We wouldn't have the know-how to vendor and backport each 3P critical fix dependency -- it can easily become a supply chain security issue given the plurality of each 3P community.

Q: Do we want to bundle EOL documentation versions (1.x), keep them (2.32.0)?

Keep as-is. Documentation rebuilds are taking approximately 1m10s end-to-end with the new architecture (e.g., S3 over GitHub Pages).

@heitorlessa
Copy link
Contributor

gonna try to meet @am29d @dreamorosi and @hjgraca to hear their thoughts from TS.

@dreamorosi dreamorosi self-requested a review January 30, 2024 15:51
Copy link
Contributor

@dreamorosi dreamorosi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Other than the minor comment I've left on the name of one of the 3rd party dependencies, I agree with the document and its content as discussed during the sync.

Great work to all who contributed to its redaction, this will be very useful for both maintainers and customers.

@heitorlessa
Copy link
Contributor

Good to go now @leandrodamascena -- feel free to merge and refresh the latest documentation!

Copy link

Quality Gate Passed Quality Gate passed

Kudos, no new issues were introduced!

0 New issues
0 Security Hotspots
No data about Coverage
No data about Duplication

See analysis details on SonarCloud

@leandrodamascena leandrodamascena merged commit e1a4d1e into aws-powertools:develop Jan 31, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation size/M Denotes a PR that changes 30-99 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Maintenance: Create maintenance and versioning policy guide
4 participants