-
-
Notifications
You must be signed in to change notification settings - Fork 18.4k
QST: Python 3.9 testing in CI #36279
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
Comments
@WillAyd is cython3 the blocker here? |
I think the problem is we import PyUnicode_GET_SIZE in writers.pyx which is deprecated. Might be able to swap out with PyUnicode_GET_LENGTH assuming that is available in Cython https://docs.python.org/3/c-api/unicode.html#c.PyUnicode_GET_SIZE |
@wumpus if you'd like to try I think you just need to update this and any occurrence within the module pandas/pandas/_libs/writers.pyx Line 5 in ddf2f05
|
I made that one change, and (no surprise) there are other calls to the "legacy" Unicode interface beyond that first one. The deprecation plan is PEP 623 and py3.9 has the first deprecations. I'm confused, though, why this isn't already fixed in pandas -- is |
We have the warnings turned on but they must not be throwing a deprecation warning until 3.9. Can you post the full error list? |
Well, with just the one change to change GET_SIZE to GET_LENGTH (https://travis-ci.com/github/wumpus/pandas-appender/jobs/384012415) this is the next error:
PEP 623 appears to have a complete list of what was deprecated in py3.9. And yes, they were first deprecated in 3.9. Edit: I looked at the Pandas travis CI looking for a successful 3.9 build, got tired of looking before I found one. |
Strange - I made the edits above and it seemed to get rid of those warnings. I'll push up a PR soon |
Well, I'm getting them with cython-0.29.21 (the current release), and the symbols aren't in pandas, they're inserted by cython. |
@WillAyd Looks like your PR built in Travis with cython-3, which is what @jbrockmendel asked you up top. With that clue, now I can try it for myself. |
... and that seems to have worked for my code to pass its tests. So I didn't run the pandas tests and my code doesn't use any Unicode, but indeed changing PyUnicode_GET_SIZE to _LENGTH and using Cython==3.0a6 seems to be a winning combination in python-3.9.0rc1 |
Fixed by PR 36393 |
I use Travis CI to test, and I've tested all of my projects against the upcoming python 3.9 release. The only problem I'm seeing is dependent packages is pandas.
Pandas + 3.9 takes a long time to build and then dies with a compiler error. It also does this when I install cython first, which is the usual workaround when a new version of Python is close to release. Is some not-yet-mainstream cython version needed? I suppose there will be a wheel by the time 3.9.0 comes out in October?
Example CI log: https://travis-ci.com/github/wumpus/paramsurvey/jobs/383337409
The logfile contains complete version information about the travisci environment.
The text was updated successfully, but these errors were encountered: