GithubHelp home page GithubHelp logo

numpy-wheels's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

numpy-wheels's Issues

python3.8 wheels for osx, windows

It seems we should be able to use multibuild to build osx wheels for python3.8 with the following diff. Multibuild supports 3.8 on OSX since matthew-brett/multibuild#262 (which is badly named)

diff --git a/.travis.yml b/.travis.yml
index 6b19a35..7eaae8d 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -63,6 +63,11 @@ matrix:
       env:
         - MB_PYTHON_VERSION=3.7
         - MB_PYTHON_OSX_VER=10.9
+    - os: osx
+      language: generic
+      env:
+        - MB_PYTHON_VERSION=3.8
+        - MB_PYTHON_OSX_VER=10.9
 
 before_install:
     - if [ "$TRAVIS_BRANCH" == "master" ]; then

Providing wheels for 3.11

I am aware that Python 3.11 is still a few months away, but can I expect any NumPy wheels to become available for alphas or betas of the aforementioned version?

Scheduled Wheels Builds on Windows

This came up in pandas-dev/pandas#26546

Both NumPy and SciPy only do scheduled builds on Travis (Linux / Mac) but not on Appveyor (Windows), so regular master branch wheels / binaries are not available consistently on Windows for i.e., debugging downstream, etc.

It looks like appveyor team wants to be contacted directly by OSS projects that want scheduled builds to avoid wasted cycles on abandoned projects with scheduled builds.

See also: https://www.appveyor.com/docs/build-configuration/#scheduled-builds

Not sure if it is much easier on Azure or not.

Move to github actions

It would be nice to be able to use the newest python versions to build wheels. For linux, these are available via the manylinux wheels, which are updated pretty quickly after a python release. But for windows and macOS, we need python executables via the CI. Azure tends to lag behind github actions, so perhaps we should move the CI builds to github actions before the release of Python 3.10

Archive this repo

I think we should archive this repo once we are done with 1.23 releases. 1.24 uses cibuildwheel.

newer SIMD architectures missing from wheels

I was looking at wheel sizes and was surprised that the 1.20 wheels were barely larger than the 1.19 ones. I can't remember we have taken a decision on what SIMD architectures to include in wheels, however I'd expect it to include at least AVX2. This is what I see on macOS right now:

>>> np.__version__
'1.20.1'
>>> np.core._multiarray_umath.__cpu_baseline__
['SSE', 'SSE2', 'SSE3']

I think it's similar on other platforms, we didn't update this repo with a new baseline. Thoughts @seiko2plus, @mattip?

Universal2 wheels are no longer produced.

I assume that this is the result of using osx 10.14 for the target version. Both the 10_14 x86_64 and 11_0 arm64 wheels are produced, but no universal wheel combining the two. When 10.9 was the target version we also got both to those, along with 10_9 x86_64 wheels and universal2 wheels. It looks like the universal builds used to produce both the 10_14 and 11.0 wheels. The relevant PR that led to this problem is probably #149. @isuruf Any thoughts about what might be going on here? There are no error messages.

Add numpy wheels for pypy3.7 and pypy3.8

 curl https://pypi.org/pypi/numpy/json | jq | grep filename | grep whl | grep aarch64

There are no wheels for pypy on aarch64, any change to add the support for it?

BTW, the numpy can installed by source successfully, but it's very slow.

Headers in universal2 wheels are not architecture independent

Since auto-generated file _numpyconfig.h has NPY_SIZEOF_LONGDOUBLE and NPY_SIZEOF_COMPLEX_LONGDOUBLE generated, it's wrong for x86_64 as the universal2 wheel distributes the arm64 version of it.

Easiest option would be to stop distributing universal2 wheels and only distribute thin wheels.

Secrets disappeared

@mattip The secrets have disappeared. Do you know if there was a time limit on them? I'm also wondering if trying to build 1.18.5 broke things? Anyway, the first attempt failed on travis, so I am trying again with azure, which I suspect is going to fail for Python 3.5 on Mac, but one doesn't know until they try.

TravisCI cron job has been removed.

I have deleted the TravisCI cron job, so that should no longer run on Saturday nights. Note that those jobs are set up on the TravisCI website, not in the yml file.

Please revert to VS2017-compatible build for Numpy

Summary

The 1.22 series are using the latest VS2019 toolchain (version 142). This makes the built objects and static libraries incompatible with software built with older toolchains. Would you accept a PR to use the older VS2017 version 141 toolchain instead?

Detail

The Numpy 1.22 series wheels are breaking the Scipy MinGW-w64 builds.

I believe this is because y'all have updated from the previous VS2017 toolchain (version 141) to the latest VS2019 toolchain (version 142).

As MS point out, using version 142 to build the static libraries means that anyone linking against those libraries must also be using (at least) this toolchain.

This means that projects like Scipy can't link to Numpy without also updating to version 142.

In fact, for Scipy, it also, and presumably for similar reasons, breaks our ability to link using MinGW-w64:

matthew-brett/dll_investigation#1

I believe, for these reasons, conda-forge has standardized to version 141 for their builds.

Would y'all consider following conda-forge, and using the 141 toolchain for builds, so that more of us can safely
link to Numpy - particularly - npymath?

@isuruf tells me that this just requires the following lines for a Visual Studio 2019 image:

call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars64.bat" -vcvars_ver=14.16
set DISTUTILS_USE_SDK=1

@isuruf points out that

Last part is to make sure that distutils doesn't try to override that if you are using distutils.

@rgommers @carlkl

Moving from rackspace

@mattip @tylerjereddy

I need to start preparing numpy-wheels master for the 1.19 release. There are a couple of things that need fixing or decisions.

  • Should wheel uploads go to the new anaconda repo?
  • Do we need https://anaconda.org/multibuild-wheels-staging/numpy?
  • What needs to be changed to use the libraries on anaconda?
  • Should 1.19 stick with manylinux2010 or fall back to manylinux1 for working 32 bit NumPy?

Pandas looks to have uploaded the recent pandas to anaconda, maybe we can steal some code from them.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.