-
-
Notifications
You must be signed in to change notification settings - Fork 18k
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
Remove py27 CI jobs #24942
Remove py27 CI jobs #24942
Conversation
keep in mind that we likely won't merge anything PY2 removal for a month or so. |
Which makes a lot of sense from a backports POV, but I didn't think about that. Guess I just couldn't/can't wait. ;) |
Codecov Report
@@ Coverage Diff @@
## master #24942 +/- ##
==========================================
+ Coverage 92.37% 92.37% +<.01%
==========================================
Files 166 166
Lines 52420 52388 -32
==========================================
- Hits 48423 48396 -27
+ Misses 3997 3992 -5
Continue to review full report at Codecov.
|
Codecov Report
@@ Coverage Diff @@
## master #24942 +/- ##
==========================================
- Coverage 91.25% 91.25% -0.01%
==========================================
Files 172 172
Lines 52976 52976
==========================================
- Hits 48342 48341 -1
- Misses 4634 4635 +1
Continue to review full report at Codecov.
|
@jreback @TomAugspurger |
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.
@h-vetinari this is again changing too much. I want only the actual env files to be changed. you are changing all kinds of CI things and something is still breaking. I would start anew and simply remove the PY2 builds and leave the actual updates of versions to another PR.
ci/deps/travis-35.yaml
Outdated
@@ -3,14 +3,13 @@ channels: | |||
- defaults | |||
- conda-forge | |||
dependencies: | |||
- backports.lzma |
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.
yes
ci/deps/travis-35.yaml
Outdated
@@ -19,33 +18,40 @@ dependencies: | |||
- numexpr | |||
- numpy=1.13* | |||
- openpyxl=2.4.0 | |||
- pathlib |
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.
this is not needed as its builtin
ci/deps/travis-35.yaml
Outdated
- hypothesis>=3.58.0 | ||
- isort | ||
# satisfy fastparquet deps with conda |
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 would rather remove fastparquet from this build then, we have it installed for 1 or more of 3.6/3.7 already I think (pls check)
pandas/tests/io/test_excel.py
Outdated
@@ -2182,6 +2182,8 @@ def test_write_cells_merge_styled(self, merge_cells, ext, engine): | |||
assert xcell_b1.font == openpyxl_sty_merged | |||
assert xcell_a2.font == openpyxl_sty_merged | |||
|
|||
@pytest.mark.xfail(PY35 and not PY36, reason='only fails on Linux?', |
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.
why is this changing?
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.
Because I wasn't able to make this test work on PY35 regardless of the versions I tried.
pandas/tests/io/test_sql.py
Outdated
@@ -28,7 +28,7 @@ | |||
import pytest | |||
|
|||
import pandas.compat as compat | |||
from pandas.compat import PY2, PY36, lrange, range, string_types | |||
from pandas.compat import PY2, PY35, PY36, lrange, range, string_types |
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.
really really don't change things, if you are forcing chanegs then roll back the env changes which cause this.
pandas/tests/test_algos.py
Outdated
@@ -11,8 +11,9 @@ | |||
|
|||
from pandas._libs import ( | |||
algos as libalgos, groupby as libgroupby, hashtable as ht) | |||
from pandas.compat import PY2, lrange, range | |||
from pandas.compat.numpy import np_array_datetime64_compat | |||
from pandas.compat import lrange, range |
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.
see my comment above
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.
Again, if I don't fix the regex here, the tests will fail.
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.
@jreback
Pushing some changes based on your review. This PR contains some xfails that I wasn't able to solve so far, as well as two changes to regexes that would otherwise fail. If the goal is a passing CI, those are unavoidable.
pandas/tests/io/test_excel.py
Outdated
@@ -2182,6 +2182,8 @@ def test_write_cells_merge_styled(self, merge_cells, ext, engine): | |||
assert xcell_b1.font == openpyxl_sty_merged | |||
assert xcell_a2.font == openpyxl_sty_merged | |||
|
|||
@pytest.mark.xfail(PY35 and not PY36, reason='only fails on Linux?', |
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.
Because I wasn't able to make this test work on PY35 regardless of the versions I tried.
pandas/tests/test_algos.py
Outdated
@@ -11,8 +11,9 @@ | |||
|
|||
from pandas._libs import ( | |||
algos as libalgos, groupby as libgroupby, hashtable as ht) | |||
from pandas.compat import PY2, lrange, range | |||
from pandas.compat.numpy import np_array_datetime64_compat | |||
from pandas.compat import lrange, range |
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.
Again, if I don't fix the regex here, the tests will fail.
ci/deps/travis-35.yaml
Outdated
- hypothesis>=3.58.0 | ||
- isort | ||
# satisfy fastparquet deps with conda |
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.
Removed. Remaining jobs with fastparquet
:
ci/deps\azure-windows-36.yaml:9: - fastparquet>=0.2.1
ci/deps\travis-36-doc.yaml:9: - fastparquet>=0.2.1
ci/deps\travis-36.yaml:10: - fastparquet>=0.2.1
@h-vetinari can you point to the test errors for which you needed to add the additional xfails? (or do a new build without any of them) Ideally, we should investigate each of those in more detail why they are failing instead of just xfailing them (unless you already know the reason for each of them) |
@jorisvandenbossche |
@jorisvandenbossche @TomAugspurger @jreback Considering the fact that removing support for PY35 is already being talked about in #25725, I think a small handful of xfailed tests is not a big burden. Certainly those are less trivial to fix than for example the skips that have been added for regex fails (of which there about 30). |
as i said above pls start over and JUST remove the 2.7 jobs; since things are working now this will just work. after that you can do independent PR to add new / change things. something is breaking and certainly needs fixing |
PY35 is not being removed at this time |
Of course it's easier to just rip things out, but I actually went to the effort here of thinking of a good distribution for the CI, updating the jobs, and making them pass again. That's also how the last numpy bump was made. Tbh, I feel these conditions are quite arbitrary, but well... I'll delete the former PY2 jobs later today, and post the fixes in a separate PR.
I know that. But adding 6-7 |
@h-vetinari as I have explained many many times. PRs which do lots of things take way more time to review and are much harder to merge. It is the same case here. |
@jreback |
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.
just the 1 comment
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.
Sorry, somehow didn't get a notification for the first comment.
thanks, would also appreciate a PR against : https://github.com/Macpython/pandas-wheels (the daily branch, not master). |
This same PR or the PY35 one? |
neither. one to remove the PY2 jobs only (this is where we build wheels), and is our daily testing. |
The start of a looooooooong process to get rid of the py2 compat code.
I kept most of the CI jobs that used to be 2.7 at the lower end of the various supported versions, with 2x 2.7->3.5, 1x 2.7->3.6 and only one real upgrade from 2.7->3.7 (first CI job for 3.7 & windows).
@jreback @TomAugspurger