-
Notifications
You must be signed in to change notification settings - Fork 12
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
Version 2.0.0: Drop support for python 3.6 and 3.7 #50
Conversation
I've never actually been sure if dropping support for a Python version actually counts as a breaking change. I think you meant to refer to Item 8 which talks about breaking changes to the public API, not to things like what versions are supported. However I've also had issues with other libraries that I've used before where they drop support for a version of Python I'm using and only change the minor version or even the patch version which is annoying so I don't feel particularly strongly one way or another. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks! This looks good to me overall apart from some minor changelog comments.
CHANGELOG.md
Outdated
@@ -5,6 +5,10 @@ All notable changes to this project will be documented in this file. | |||
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), | |||
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). | |||
|
|||
## [2.0.0] - 2023-06-05 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can you change this to Unreleased
and remove the date? I'll finalize updates here when I'm ready to push a release to PyPI.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Changes made!
CHANGELOG.md
Outdated
@@ -5,6 +5,10 @@ All notable changes to this project will be documented in this file. | |||
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), | |||
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). | |||
|
|||
## [2.0.0] - 2023-06-05 | |||
|
|||
Support for both python 3.6 and 3.7 is removed. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I believe there have been some more changes since the last release but if you don't feel like checking I can handle updating this when I make the release.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Using commit 11cf9ef468a9f5d54d83275b9317492bf98c68ce as the starting point the following changes were as follows:
- Add
TypeError
for non-Optional
Union
typing with prompt to use customtype
- Add support for
metavar
in metadata Literal
types as an alternative for fixed-choice fields- Prevent
Literal
andchoices
collision - Unit tests for:
- union typing
I added the above points in CHANGELOG.md
, feel free to add any that I may have missed!
Agreed, my thinking was to err on the side of caution and us Item 9 and increment the major version. Luckily python3.8 has EOL October 14, 2024 so we won't encounter this problem in the near future. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks!
Summary
This PR responds to issue #39 concerning the removal of support for Python 3.6 and 3.7. As stated in the PR the stated versions of python entered "End of Life" during the following times:
Changes Made
@frank113
to list of contributors1.0.0
->2.0.0
as per Semantic Versioning point 9.typing
imports as conditional imports forpython>=3.8
is no longer neededtox.ini
to includepy311
to match tags withinsetup.py
setup.py
to removeinstall_requires
and now-irrelevant tags.3.7
from CI workflowConsiderations
py311
was needed withintox.ini
to match the given tags withinsetup.py
is an assumption on my endtyping
import inargparse_dataclass.py
but prefer to avoid repetition oftyping.<TYPE>
References
Other
The package results in a very clean interface. Thanks for starting this!