Skip to content
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

Drop support for Python 2 #401

Closed
5 tasks
mjs opened this issue Jun 4, 2020 · 3 comments · Fixed by #474
Closed
5 tasks

Drop support for Python 2 #401

mjs opened this issue Jun 4, 2020 · 3 comments · Fixed by #474
Milestone

Comments

@mjs
Copy link
Owner

mjs commented Jun 4, 2020

Python 2 is no longer supported upstream. I propose that the next major release of IMAPClient (3.0) no longer supports Python 3. This could coincide with the imaplib removal changes in #400.

If we go ahead with this, the following changes should be made:

  • Release all unreleased changes as the final Python 2 supporting version
  • Update the docs and README to mention the last version of IMAPClient that does support Python 2
  • Update setup.py
  • Update .travis.yml
  • Remove the use of six and hacks to support a mixed 2/3 codebase (this can be done gradually)

@NicolasLM what do you think?

@NicolasLM
Copy link
Collaborator

@mjs It makes sense to drop support for Python 2 now.

@mjs mjs changed the title Drop support for Python 2? Drop support for Python 2 Jul 1, 2020
@mjs mjs added this to the 3.0.0 milestone Jul 19, 2020
JohnVillalovos added a commit to JohnVillalovos/imapclient that referenced this issue Jun 17, 2022
  * Remove all usage of the `six` library
  * Remove declared support for Python 2
  * Update tox.ini to remove `py27` environment
  * Update Github workflows to no longer test against Python 2.7

Closes: mjs#401
@NicolasLM
Copy link
Collaborator

Hey @mjs, @JohnVillalovos' PR removing Python 2 looks good. Do you want to publish a final release supporting Python 2.7 before we merge it?

JohnVillalovos added a commit to JohnVillalovos/imapclient that referenced this issue Jun 17, 2022
Python 2.7 (the last Python 2 release) was End-Of-Life on 1-Jan-2020.

  * Remove all usage of the `six` library
  * Remove declared support for Python 2
  * Update tox.ini to remove `py27` environment
  * Update Github workflows to no longer test against Python 2.7
  * Remove `from __future__ import print_function`
  * Remove `from __future__ unicode_literals`
  * Update tests to import `unittest` and `unittest.mock` directly

Closes: mjs#401
JohnVillalovos added a commit to JohnVillalovos/imapclient that referenced this issue Jun 17, 2022
Python 2.7 (the last Python 2 release) was End-Of-Life on 1-Jan-2020.

  * Remove all usage of the `six` library
  * Remove declared support for Python 2
  * Update tox.ini to remove `py27` environment
  * Update Github workflows to no longer test against Python 2.7
  * Remove `from __future__ import print_function`
  * Remove `from __future__ unicode_literals`
  * Update tests to import `unittest` and `unittest.mock` directly

Closes: mjs#401
JohnVillalovos added a commit to JohnVillalovos/imapclient that referenced this issue Jun 17, 2022
Python 2.7 (the last Python 2 release) was End-Of-Life on 1-Jan-2020.

  * Remove all usage of the `six` library
  * Remove declared support for Python 2
  * Update tox.ini to remove `py27` environment
  * Update Github workflows to no longer test against Python 2.7
  * Remove `from __future__ import print_function`
  * Remove `from __future__ unicode_literals`
  * Update tests to import `unittest` and `unittest.mock` directly

Closes: mjs#401
JohnVillalovos added a commit to JohnVillalovos/imapclient that referenced this issue Jun 18, 2022
Python 2.7 (the last Python 2 release) was End-Of-Life on 1-Jan-2020.

  * Add requirement to `setup.py` for python_requires=">=3.4.0"
  * Remove all usage of the `six` library
  * Remove declared support for Python 2
  * Update tox.ini to remove `py27` environment
  * Update Github workflows to no longer test against Python 2.7
  * Remove `from __future__ import print_function`
  * Remove `from __future__ unicode_literals`
  * Update tests to import `unittest` and `unittest.mock` directly

Closes: mjs#401
@mjs
Copy link
Owner Author

mjs commented Jun 20, 2022

I was planning on making 2.3.0 that last Python 2 supporting release but I haven't put much time into it and there's nothing there that needs to be in a Python 2 supporting release.

I don't want to hold up the Python 2 removal work so let's get #474 merged. I will review now.

JohnVillalovos added a commit to JohnVillalovos/imapclient that referenced this issue Jun 20, 2022
Python 2.7 (the last Python 2 release) was End-Of-Life on 1-Jan-2020.

  * Add requirement to `setup.py` for python_requires=">=3.4.0"
  * Remove all usage of the `six` library
  * Remove declared support for Python 2
  * Update tox.ini to remove `py27` environment
  * Update Github workflows to no longer test against Python 2.7
  * Remove `from __future__ import print_function`
  * Remove `from __future__ unicode_literals`
  * Update tests to import `unittest` and `unittest.mock` directly

Closes: mjs#401
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 a pull request may close this issue.

2 participants