Skip to content

Conversation

rahulrajaram
Copy link
Collaborator

@rahulrajaram rahulrajaram commented Sep 12, 2024

Upgrade cement to 2.10.14 and upgrade other dependencies. Drop support for Python 2.7 and all Pythons below 3.7. Remove code anticipating older, deprecated versions of Docker.

Undo a past change that parsed .ebextensions and saved configs for ELB parameters which was non-idiomatic since the service is what should be responsible for determining precedence.

Testing: I have run manual tests with several eb commands and have ensured that unit tests work against Python 3.12 and 3.9. One thing to be aware of is that Pytest 3 is also incompatible with Python 3.12 due to imp deprecation and a signature change of the addini method. I've verified that the necessary fixes being made/backported, that all unit tests against Python 3.12 + Pytest 3.10.1. In a future work, we will upgrade pytest to 8.x

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

Rahul Rajaram added 6 commits September 11, 2024 21:39
This commit remvoes unnecessary code to check whether the right version
of docker is present. This was necessary a few years ago when older
versions of docker, incompatible with local development, were still in
use. This commit also assumes the customer has the necessary setup to
launch docker locally on a Windows.
Assume existence of modern pip versions
…t Git branches

"main" came into adoption as the default branch on certain Git clients
especially on OS X whereas "master" was historically the default branch.
This commit incorporates cement 2.10.14 that removes accesses to the
`imp` module in favour of `importlib` for 3.12. The EB CLI now
works for Python 3.12. One limitation is that Pytest 3 is not compatible
with Python 3.12 because of it's reliance on `imp` and [this
change](https://github.com/pytest-dev/pytest/blob/9515dfa58a144f3644fd29b256113d723c9c1955/src/_pytest/config/argparsing.py#L180)
not having been incorporated into Pytest 3.10.1 which hasn't see a new
release [since Nov 2018](https://pypi.org/project/pytest/3.10.1/). In
future work, we should upgrade Pytest to 8.x.

Issue: #493
@rahulrajaram rahulrajaram changed the title Upgrade cement to 2.10.14 Upgrade cement to 2.10.14/Fix EBCLI for Python 3.12 Sep 12, 2024
@rahulrajaram rahulrajaram merged commit 25acc01 into master Sep 14, 2024
4 checks passed
@rahulrajaram rahulrajaram deleted the 3.21 branch September 14, 2024 04:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants