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

CLN: remove PY2 #25725

Closed
jreback opened this issue Mar 14, 2019 · 16 comments
Closed

CLN: remove PY2 #25725

jreback opened this issue Mar 14, 2019 · 16 comments
Labels
Master Tracker High level tracker for similar issues
Milestone

Comments

@jreback
Copy link
Contributor

jreback commented Mar 14, 2019

master issue for removing all vestigaes of Python 2.

After merging: #24942 (removing the PY2 CI jobs) and #25554 (bump numpy to 1.13.3), we will be ready to remove PY2 code, tests, and doc references.

Let's do this in bite sized pieces. IOW don't do a PR with changes for everything.

cc @pandas-dev/pandas-core

@jreback jreback added 2/3 Compat Master Tracker High level tracker for similar issues labels Mar 14, 2019
@jreback jreback added this to the 0.25.0 milestone Mar 14, 2019
@TomAugspurger
Copy link
Contributor

Have we discussed whether we continue to support 3.5? Matplotlib master seems to be on 3.6.

@WillAyd
Copy link
Member

WillAyd commented Mar 14, 2019

I think it would be great to jump to 3.6 eventually for better typing support, f-strings, dict ordering, etc... but at the same time I think it makes sense to rip out the Py27 chunks first before going that route, as there will be plenty as is to clean up

@jreback
Copy link
Contributor Author

jreback commented Mar 14, 2019

step by step here. Let's remove PY2 first. Agree not against dropping 3.5 but should not do all at once.

@TomAugspurger
Copy link
Contributor

TomAugspurger commented Mar 14, 2019 via email

@TomAugspurger
Copy link
Contributor

That's actually affecting @h-vetinari's other PR; pytest wasn't being bumped correctly on the 3.5 build (since Anaconda doesn't have new enough 3.5 packages for it).

@jreback
Copy link
Contributor Author

jreback commented Mar 17, 2019

ok merged the removal of the CI jobs for PY2: #24942

open season on PY2 removals. but let's do this in a measured way.

cc @pandas-dev/pandas-core

@h-vetinari
Copy link
Contributor

h-vetinari commented Mar 17, 2019

Before it's open season, I'd suggest to at least merge #25752 first - currently the CI is much reduced from what it was due to the requested hard deletion of PY2-jobs in #24942 (instead of replacing them with new CI jobs).

Another possible candidate to wait for is #25554 (which depends on #25752 in some sense).

gfyoung added a commit to forking-repos/pandas that referenced this issue Mar 24, 2019
gfyoung added a commit to forking-repos/pandas that referenced this issue Mar 26, 2019
gfyoung added a commit to forking-repos/pandas that referenced this issue Mar 26, 2019
gfyoung added a commit to forking-repos/pandas that referenced this issue Mar 27, 2019
gfyoung added a commit to forking-repos/pandas that referenced this issue Mar 28, 2019
gfyoung added a commit to forking-repos/pandas that referenced this issue Mar 28, 2019
gfyoung added a commit to forking-repos/pandas that referenced this issue Mar 28, 2019
@jreback
Copy link
Contributor Author

jreback commented Jun 3, 2019

do we have anything left of this?

cc @pandas-dev/pandas-core

@gfyoung
Copy link
Member

gfyoung commented Jun 3, 2019

@topper-123 went berserk on this issue, so probably he's a good one to judge this 🙂

@topper-123
Copy link
Contributor

topper-123 commented Jun 3, 2019

  1. pandas.core.base.StringMixin is still there, I've given up on removing that one. If someone could take a look?
  2. There's some remaining functions in pandas.compat. Some of these are not really compat functions and should be moved to other locations. For others I haven't completely checked if they could be removed
  3. There are still comments containing the regex python2|python 2|PY2|PY 2 (52 instances total). The related code should be looked through for simplifications. Likewise the similar regex for Python3.
  4. The issue tracker currently has 24 py2/3 compat issues. Some of these can be closed now, while other can be seen as notes that some patterns are possible now that python2 support has been dropped.

Else I don't see much systematic, but in a code base of this size, there is bound to be fragments here and there that people will just have to remove upon encountering them.

Resolution of points 3 and 4 require some effort as most of the issues are quite specific. Going through and closing those could perhaps be the subject of an online sprint?

@topper-123
Copy link
Contributor

BTW, I don't necessarily see the above as blockers for a 0.25 release, but more like "things that should be cleaned up in order to have a tidy and modern code base". And doing them while there is a focus on python2/3 compat will probably be better than doing it "later".

@jreback
Copy link
Contributor Author

jreback commented Jun 3, 2019

this is not blocking 0.25; just seeing if we can close it :)

@jorisvandenbossche
Copy link
Member

Since it is not blocking, moving this from the 0.25 milestone

@jorisvandenbossche jorisvandenbossche modified the milestones: 0.25.0, 1.0 Jun 30, 2019
@jbrockmendel
Copy link
Member

closable?

@jreback
Copy link
Contributor Author

jreback commented Jul 23, 2019

sure

i don’t think we have anything concrete left that we want to remove

@jreback jreback closed this as completed Jul 23, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Master Tracker High level tracker for similar issues
Projects
None yet
Development

No branches or pull requests

9 participants