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

ARROW-14217: [Python][CI] Add support for python 3.10 #11316

Closed
wants to merge 11 commits into from

Conversation

kszucs
Copy link
Member

@kszucs kszucs commented Oct 5, 2021

No description provided.

@kszucs kszucs changed the title [Python][CI] Add support for python 3.10 [WIP] ARROW-14217 [Python][CI] Add support for python 3.10 [WIP] Oct 5, 2021
@kszucs kszucs changed the title ARROW-14217 [Python][CI] Add support for python 3.10 [WIP] ARROW-14217: [Python][CI] Add support for python 3.10 [WIP] Oct 5, 2021
@apache apache deleted a comment from github-actions bot Oct 5, 2021
@github-actions
Copy link

github-actions bot commented Oct 5, 2021

@kszucs
Copy link
Member Author

kszucs commented Oct 5, 2021

@github-actions crossbow submit cp310

@github-actions
Copy link

github-actions bot commented Oct 5, 2021

Revision: cd3da84

Submitted crossbow builds: ursacomputing/crossbow @ actions-883

Task Status
wheel-macos-high-sierra-cp310-amd64 Github Actions
wheel-macos-mavericks-cp310-amd64 Github Actions
wheel-manylinux2010-cp310-amd64 Github Actions
wheel-manylinux2014-cp310-amd64 Github Actions
wheel-manylinux2014-cp310-arm64 TravisCI
wheel-windows-cp310-amd64 Github Actions

@kszucs
Copy link
Member Author

kszucs commented Oct 5, 2021

@github-actions crossbow submit wheel-macos-big-sur-cp310*

@github-actions
Copy link

github-actions bot commented Oct 5, 2021

Revision: 583301f

Submitted crossbow builds: ursacomputing/crossbow @ actions-884

Task Status
wheel-macos-big-sur-cp310-arm64 Github Actions
wheel-macos-big-sur-cp310-universal2 Github Actions

@kszucs
Copy link
Member Author

kszucs commented Oct 5, 2021

@github-actions crossbow submit cp310

@github-actions
Copy link

github-actions bot commented Oct 5, 2021

Revision: 583301f

Submitted crossbow builds: ursacomputing/crossbow @ actions-885

Task Status
wheel-macos-big-sur-cp310-arm64 Github Actions
wheel-macos-big-sur-cp310-universal2 Github Actions
wheel-macos-high-sierra-cp310-amd64 Github Actions
wheel-macos-mavericks-cp310-amd64 Github Actions
wheel-manylinux2010-cp310-amd64 Github Actions
wheel-manylinux2014-cp310-amd64 Github Actions
wheel-manylinux2014-cp310-arm64 TravisCI
wheel-windows-cp310-amd64 Github Actions

@kszucs
Copy link
Member Author

kszucs commented Oct 5, 2021

@github-actions crossbow submit wheel-manylinuxcp310

@github-actions
Copy link

github-actions bot commented Oct 5, 2021

Revision: af016f3

Submitted crossbow builds: ursacomputing/crossbow @ actions-886

Task Status
wheel-manylinux2010-cp310-amd64 Github Actions
wheel-manylinux2014-cp310-amd64 Github Actions
wheel-manylinux2014-cp310-arm64 TravisCI

@kszucs
Copy link
Member Author

kszucs commented Oct 5, 2021

@github-actions crossbow submit wheel-manylinuxcp310

@github-actions
Copy link

github-actions bot commented Oct 5, 2021

Revision: 93fc1b7

Submitted crossbow builds: ursacomputing/crossbow @ actions-887

Task Status
wheel-manylinux2010-cp310-amd64 Github Actions
wheel-manylinux2014-cp310-amd64 Github Actions
wheel-manylinux2014-cp310-arm64 TravisCI

@pitrou
Copy link
Member

pitrou commented Oct 5, 2021

Why don't you start by adding a GHA entry for Python 3.10?

@kszucs
Copy link
Member Author

kszucs commented Oct 5, 2021

Why don't you start by adding a GHA entry for Python 3.10?

You mean an additional conda based build?

@kszucs
Copy link
Member Author

kszucs commented Oct 5, 2021

@github-actions crossbow submit wheel-manylinuxcp310

@pitrou
Copy link
Member

pitrou commented Oct 5, 2021

You mean an additional conda based build?

Hmm, my bad, there's no conda package available.

@kszucs
Copy link
Member Author

kszucs commented Oct 5, 2021

@github-actions crossbow submit wheel-manylinuxcp310

@github-actions
Copy link

github-actions bot commented Oct 5, 2021

Revision: ee6e3c6

Submitted crossbow builds: ursacomputing/crossbow @ actions-891

Task Status
wheel-manylinux2010-cp310-amd64 Github Actions
wheel-manylinux2014-cp310-amd64 Github Actions
wheel-manylinux2014-cp310-arm64 TravisCI

@kszucs
Copy link
Member Author

kszucs commented Oct 5, 2021

The manylinux builds are working, but the testing docker images have not been released yet - matter of days I guess.

For the rest of the wheels we need to wait for the next numpy release.

@kszucs
Copy link
Member Author

kszucs commented Oct 6, 2021

@github-actions crossbow submit wheel-manylinuxcp310

The python:3.10 images are available now https://hub.docker.com/_/python

@github-actions
Copy link

github-actions bot commented Oct 6, 2021

Revision: ee6e3c6

Submitted crossbow builds: ursacomputing/crossbow @ actions-896

Task Status
wheel-manylinux2010-cp310-amd64 Github Actions
wheel-manylinux2014-cp310-amd64 Github Actions
wheel-manylinux2014-cp310-arm64 TravisCI

@github-actions
Copy link

github-actions bot commented Oct 6, 2021

Revision: ee6e3c6

Submitted crossbow builds: ursacomputing/crossbow @ actions-897

Task Status
wheel-manylinux2010-cp310-amd64 Github Actions
wheel-manylinux2014-cp310-amd64 Github Actions
wheel-manylinux2014-cp310-arm64 TravisCI

@github-actions
Copy link

Revision: de75bb5

Submitted crossbow builds: ursacomputing/crossbow @ actions-939

Task Status
wheel-manylinux2010-cp310-amd64 Github Actions
wheel-manylinux2010-cp36-amd64 Github Actions
wheel-manylinux2010-cp37-amd64 Github Actions
wheel-manylinux2010-cp38-amd64 Github Actions
wheel-manylinux2010-cp39-amd64 Github Actions
wheel-manylinux2014-cp310-amd64 Github Actions
wheel-manylinux2014-cp310-arm64 TravisCI
wheel-manylinux2014-cp36-amd64 Github Actions
wheel-manylinux2014-cp36-arm64 TravisCI
wheel-manylinux2014-cp37-amd64 Github Actions
wheel-manylinux2014-cp37-arm64 TravisCI
wheel-manylinux2014-cp38-amd64 Github Actions
wheel-manylinux2014-cp38-arm64 TravisCI
wheel-manylinux2014-cp39-amd64 Github Actions
wheel-manylinux2014-cp39-arm64 TravisCI

@github-actions
Copy link

Revision: de75bb5

Submitted crossbow builds: ursacomputing/crossbow @ actions-940

Task Status
test-conda-python-3.10 Github Actions
test-conda-python-3.6 Github Actions
test-conda-python-3.6-pandas-0.23 Github Actions
test-conda-python-3.7 Github Actions
test-conda-python-3.7-dask-latest Github Actions
test-conda-python-3.7-dask-master Github Actions
test-conda-python-3.7-hdfs-2.9.2 Github Actions
test-conda-python-3.7-hdfs-3.2.1 Github Actions
test-conda-python-3.7-kartothek-latest Github Actions
test-conda-python-3.7-kartothek-master Github Actions
test-conda-python-3.7-pandas-0.24 Github Actions
test-conda-python-3.7-pandas-latest Github Actions
test-conda-python-3.7-spark-branch-3.0 Github Actions
test-conda-python-3.8 Github Actions
test-conda-python-3.8-hypothesis Github Actions
test-conda-python-3.8-pandas-latest Github Actions
test-conda-python-3.8-pandas-nightly Github Actions
test-conda-python-3.8-spark-master Github Actions
test-conda-python-3.9 Github Actions
test-conda-python-3.9-pandas-master Github Actions
test-debian-11-python-3 Azure
test-fedora-33-python-3 Azure
test-ubuntu-18.04-python-3 Azure

@kszucs
Copy link
Member Author

kszucs commented Oct 13, 2021

Thanks @pitrou for the fix!

@pitrou
Copy link
Member

pitrou commented Oct 13, 2021

@github-actions crossbow submit test-conda-python-3.10

@github-actions
Copy link

Revision: 90a0fd3

Submitted crossbow builds: ursacomputing/crossbow @ actions-941

Task Status
test-conda-python-3.10 Github Actions

@pitrou
Copy link
Member

pitrou commented Oct 13, 2021

"test-conda-python-3.10" will fail as long as Numpy and other packages are not available yet for Python 3.10 on conda-forge.

@pitrou
Copy link
Member

pitrou commented Oct 13, 2021

@kszucs It seems vcpkg is building both debug and release versions of dependencies? See example

#12 1979.1 -- Downloading https://github.com/grpc/grpc/archive/44c40ac23023b7b3dd82744372c06817cc203898.tar.gz -> grpc-grpc-44c40ac23023b7b3dd82744372c06817cc203898.tar.gz...
#12 1979.1 -- Extracting source /opt/vcpkg/downloads/grpc-grpc-44c40ac23023b7b3dd82744372c06817cc203898.tar.gz
#12 1979.1 -- Applying patch 00001-fix-uwp.patch
#12 1979.1 -- Applying patch 00002-static-linking-in-linux.patch
#12 1979.1 -- Applying patch 00003-undef-base64-macro.patch
#12 1979.1 -- Applying patch 00004-link-gdi32-on-windows.patch
#12 1979.1 -- Applying patch 00005-fix-uwp-error.patch
#12 1979.1 -- Applying patch 00009-use-system-upb.patch
#12 1979.1 -- Applying patch 00010-add-feature-absl-sync.patch
#12 1979.1 -- Applying patch 00011-fix-csharp_plugin.patch
#12 1979.1 -- Applying patch snprintf.patch
#12 1979.1 -- Applying patch 00012-fix-use-cxx17.patch
#12 1979.1 -- Applying patch 00013-build-upbdefs.patch
#12 1979.1 -- Using source at /opt/vcpkg/buildtrees/grpc/src/17cc203898-db2679e7f2.clean
#12 1979.1 -- Configuring x64-linux-dbg
#12 1979.1 -- Configuring x64-linux-rel
#12 1979.1 -- Building x64-linux-dbg
#12 1979.1 -- Building x64-linux-rel
#12 1979.1 -- Installing: /opt/vcpkg/packages/grpc_x64-linux/share/grpc/copyright
#12 1979.1 -- Performing post-build validation
#12 1979.1 -- Performing post-build validation done

@pitrou
Copy link
Member

pitrou commented Oct 13, 2021

For some reason, it looks like the 3.10 build doesn't use the Numpy binary wheels:
https://github.com/ursacomputing/crossbow/runs/3886034769?check_suite_focus=true#step:7:3186

@kszucs
Copy link
Member Author

kszucs commented Oct 13, 2021

@kszucs It seems vcpkg is building both debug and release versions of dependencies? See example

Strange, the selected triplet file should restrict it to release builds.

@kszucs
Copy link
Member Author

kszucs commented Oct 13, 2021

@kszucs It seems vcpkg is building both debug and release versions of dependencies? See example

Strange, the selected triplet file should restrict it to release builds.

Seems like that's not true for all of the packages.

@pitrou pitrou changed the title ARROW-14217: [Python][CI] Add support for python 3.10 [WIP] ARROW-14217: [Python][CI] Add support for python 3.10 Oct 13, 2021
@kszucs
Copy link
Member Author

kszucs commented Oct 13, 2021

For some reason, it looks like the 3.10 build doesn't use the Numpy binary wheels:
https://github.com/ursacomputing/crossbow/runs/3886034769?check_suite_focus=true#step:7:3186

We may try to restrict that like in the macos builds.

@kszucs
Copy link
Member Author

kszucs commented Oct 13, 2021

We may also need to bump the manylinux image tag because the interpreter path indicates cypthon version 3.10-rc2

@kszucs
Copy link
Member Author

kszucs commented Oct 13, 2021

For some reason, it looks like the 3.10 build doesn't use the Numpy binary wheels:
https://github.com/ursacomputing/crossbow/runs/3886034769?check_suite_focus=true#step:7:3186

We may try to restrict that like in the macos builds.

Ahh, numpy only has wheels for manylinux_2014 and manylinux_2_17 and the build you referenced is manylinux2010

@pitrou
Copy link
Member

pitrou commented Oct 14, 2021

We may also need to bump the manylinux image tag because the interpreter path indicates cypthon version 3.10-rc2

The wheel has the right tag apparently: "pyarrow-6.0.0.dev470-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl".
See https://github.com/ursacomputing/crossbow/runs/3886034769?check_suite_focus=true#step:7:6079

@kszucs
Copy link
Member Author

kszucs commented Oct 14, 2021

I think it's worth waiting for:

@pitrou
Copy link
Member

pitrou commented Oct 14, 2021

I'm not sure what waiting would bring here. We have a working fine to fix the tests already, and we can produce manylinux wheels. We can add the rest later.

@kszucs
Copy link
Member Author

kszucs commented Oct 14, 2021

@github-actions crossbow submit wheel-manylinux*

@@ -47,7 +47,7 @@ jobs:
{{ macros.github_upload_releases("arrow/python/repaired_wheels/*.whl")|indent }}
{{ macros.github_upload_gemfury("arrow/python/repaired_wheels/*.whl")|indent }}

{% if arrow.branch == 'master' %}
{% if True or arrow.branch == 'master' %}
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Need to remove before merge.

@github-actions
Copy link

Revision: 626987a

Submitted crossbow builds: ursacomputing/crossbow @ actions-954

Task Status
wheel-manylinux2010-cp310-amd64 Github Actions
wheel-manylinux2010-cp36-amd64 Github Actions
wheel-manylinux2010-cp37-amd64 Github Actions
wheel-manylinux2010-cp38-amd64 Github Actions
wheel-manylinux2010-cp39-amd64 Github Actions
wheel-manylinux2014-cp310-amd64 Github Actions
wheel-manylinux2014-cp310-arm64 TravisCI
wheel-manylinux2014-cp36-amd64 Github Actions
wheel-manylinux2014-cp36-arm64 TravisCI
wheel-manylinux2014-cp37-amd64 Github Actions
wheel-manylinux2014-cp37-arm64 TravisCI
wheel-manylinux2014-cp38-amd64 Github Actions
wheel-manylinux2014-cp38-arm64 TravisCI
wheel-manylinux2014-cp39-amd64 Github Actions
wheel-manylinux2014-cp39-arm64 TravisCI

@kszucs
Copy link
Member Author

kszucs commented Oct 14, 2021

I'm not sure what waiting would bring here. We have a working fine to fix the tests already, and we can produce manylinux wheels. We can add the rest later.

We can merge it now as well, but then we are going to have failing builds for the other platforms until numpy gains the new wheels. Ideally the only thing we'll need to do is to build and push the windows image for python 3.10, otherwise the builds should fix themselves.

Does that sound good to you?

@pitrou
Copy link
Member

pitrou commented Oct 14, 2021

Yes, that sounds good to me.

Copy link
Member Author

@kszucs kszucs left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

+1, merging on green

@kszucs kszucs closed this in 15f4e56 Oct 18, 2021
@ursabot
Copy link

ursabot commented Oct 18, 2021

Benchmark runs are scheduled for baseline = bea1701 and contender = 15f4e56. 15f4e56 is a master commit associated with this PR. Results will be available as each benchmark for each run completes.
Conbench compare runs links:
[Finished ⬇️0.0% ⬆️0.0%] ec2-t3-xlarge-us-east-2
[Finished ⬇️0.0% ⬆️0.0%] ursa-i9-9960x
[Finished ⬇️0.09% ⬆️0.13%] ursa-thinkcentre-m75q
Supported benchmarks:
ursa-i9-9960x: langs = Python, R, JavaScript
ursa-thinkcentre-m75q: langs = C++, Java
ec2-t3-xlarge-us-east-2: cloud = True

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants