binbashar / leverage

Binbash Leverage CLI intended to orchestrate Leverage Reference Architecture for AWS (www.binbash.co/leverage)
https://pypi.org/project/leverage/
Apache License 2.0
17 stars 2 forks source link

Enhancement | Clarify Supported Python Versions as 3.8, 3.9, and 3.10 #252

Closed borland667 closed 4 months ago

borland667 commented 6 months ago

Enhancement: Clarify Supported Python Versions as 3.8, 3.9, and 3.10

Current Situation

The project's documentation and Pipfile currently suggest that we support Python version 3.8 and above. However, our integration tests are only conducted on Python versions 3.8, 3.9, and 3.10. This discrepancy can lead to uncertainties about the project's compatibility with newer Python versions beyond 3.10.

Issue

By indicating support for "Python version >= 3.8" without specifying an upper limit, we may unintentionally imply compatibility with all future Python versions, which have not been tested and may introduce compatibility issues or unexpected behavior.

Expected Behavior

The project should explicitly specify that it supports only Python versions 3.8, 3.9, and 3.10. This clarification will ensure that contributors and users have accurate information regarding which Python versions are guaranteed to work with the project and are covered by our integration tests.

Proposed Solution

Implementation Steps

  1. Update Pipfile: Modify the [requires] section in Pipfile to reflect the supported Python versions more accurately. Instead of python_version = ">=3.8", specify the versions as python_version = "3.8, 3.9, 3.10".
  2. Documentation Revision: Amend the README.md and any relevant documentation to explicitly state that the project supports Python 3.8, 3.9, and 3.10. Include a note about the rationale for these specific versions, emphasizing their coverage in integration tests.
  3. CI/CD Workflow Adjustment: Review and update the GitHub Actions workflows to confirm that tests are consistently run against Python versions 3.8, 3.9, and 3.10. Adjust the testing matrix if necessary to ensure these versions are included.
  4. Communicate Changes: Inform current contributors and users about the update to supported Python versions through a project announcement or update notes. Highlight the importance of using one of the supported versions for development and deployment.

Additional Context

Restricting the officially supported Python versions to 3.8, 3.9, and 3.10 is a strategic decision to align our project's compatibility claims with the reality of our testing coverage. This approach also helps us manage expectations and support more effectively.

Action Items


Feedback and additional suggestions on this proposed change are welcome and appreciated.