Discussion:
[Numpy-discussion] NumPy 1.12.0b1 released
Matti Picus
2016-11-17 23:24:19 UTC
Permalink
Congrats to all on the release.Two questions:

Is there a guide to building standard wheels for NumPy?

Assuming I can build standardized PyPy 2.7 wheels for Ubuntu, Win32 and
OSX64, how can I get them blessed and uploaded to PyPI?

Matti
Date: Wed, 16 Nov 2016 22:47:39 -0700
Subject: [Numpy-discussion] NumPy 1.12.0b1 released.
Hi All,
I'm pleased to annouce the release of NumPy 1.12.0b1. This release
supports Python 2.7 and 3.4 - 3.6 and is the result of 388 pull requests
submitted by 133 contributors. It is quite sizeable and rather than put the
release notes inline I've attached them as a file and they may also be
viewed at Github<https://github.com/numpy/numpy/releases/tag/v1.12.0b1>.
Zip files and tarballs may also be found the Github link. Wheels and source
archives may be downloaded from PyPI, which is the recommended method.
This release is a large collection of fixes, enhancements, and improvements
and it is difficult to select just a few as highlights. However, the
following enhancements may be of particular interest
- Order of operations in ``np.einsum`` now can be optimized for large
speed improvements.
- New ``signature`` argument to ``np.vectorize`` for vectorizing with
core dimensions.
- The ``keepdims`` argument was added to many functions.
- Support for PyPy 2.7 v5.6.0 has been added. While not complete, this
is a milestone for PyPy's C-API compatibility layer.
Thanks to all,
Chuck
Matthew Brett
2016-11-18 08:08:25 UTC
Permalink
Hi,
Post by Matti Picus
Is there a guide to building standard wheels for NumPy?
I don't think so - there is a repository that we use to build the
wheels, that has the Windows, OSX and manyllinux recipes for the
standard CPython build:

https://github.com/MacPython/numpy-wheelso

If you can work out a way to automate the PyPy builds and tests -
especially using the same repo - that would be very useful.
Post by Matti Picus
Assuming I can build standardized PyPy 2.7 wheels for Ubuntu, Win32 and
OSX64, how can I get them blessed and uploaded to PyPI?
If you can automate the build and tests, I'm guessing there will be no
objections - but it's not my call...

Cheers,

Matthew
Ralf Gommers
2016-11-18 09:14:45 UTC
Permalink
Post by Matthew Brett
Hi,
Post by Matti Picus
Is there a guide to building standard wheels for NumPy?
I don't think so - there is a repository that we use to build the
wheels, that has the Windows, OSX and manyllinux recipes for the
https://github.com/MacPython/numpy-wheelso
If you can work out a way to automate the PyPy builds and tests -
especially using the same repo - that would be very useful.
Post by Matti Picus
Assuming I can build standardized PyPy 2.7 wheels for Ubuntu, Win32 and
OSX64, how can I get them blessed and uploaded to PyPI?
If you can automate the build and tests, I'm guessing there will be no
objections - but it's not my call...
I'm in favor, assuming that the wheel tags and PyPy backwards compatibility
situation is OK. Can't really find any examples. What I mean is that for
CPython wheels contain tags like "cp27" or "cp35". PyPy wheels should have
tags "pp<something>". Are the PyPy cpyext layer and the <something> defined
such that a new PyPy release won't break older wheels?

Ralf
Nathaniel Smith
2016-11-18 16:24:10 UTC
Permalink
Post by Ralf Gommers
Post by Matthew Brett
Hi,
Post by Matti Picus
Is there a guide to building standard wheels for NumPy?
I don't think so - there is a repository that we use to build the
wheels, that has the Windows, OSX and manyllinux recipes for the
https://github.com/MacPython/numpy-wheelso
If you can work out a way to automate the PyPy builds and tests -
especially using the same repo - that would be very useful.
Post by Matti Picus
Assuming I can build standardized PyPy 2.7 wheels for Ubuntu, Win32 and
OSX64, how can I get them blessed and uploaded to PyPI?
If you can automate the build and tests, I'm guessing there will be no
objections - but it's not my call...
I'm in favor, assuming that the wheel tags and PyPy backwards
compatibility situation is OK. Can't really find any examples. What I mean
is that for CPython wheels contain tags like "cp27" or "cp35". PyPy wheels
should have tags "pp<something>". Are the PyPy cpyext layer and the
<something> defined such that a new PyPy release won't break older wheels?

Another thing to think about is that 1.12 on pypy won't pass its test suite
(though it's close), and we're not yet testing new PRs on pypy, so no
guarantees about 1.13 yet. I think on balance these probably aren't reasons
*not* to upload wheels, but it's a funny place where we're talking about
providing "official" builds even though it's not an "officially supported
platform". So we will at least want to be clear about that. And someone
will have to handle the bug reports about the test suite failing :-).

-n

Peter Cock
2016-11-18 14:30:33 UTC
Permalink
I have a related question to Matti's,

Do you have any recommendations for building standard wheels
for 3rd party Python libraries which use both the NumPy Python
and C API?

e.g. Do we need to do anything special given the NumPy C API
itself is versioned? Does it matter compiler chain should we use?

Thanks

Peter
Post by Matti Picus
Is there a guide to building standard wheels for NumPy?
Assuming I can build standardized PyPy 2.7 wheels for Ubuntu, Win32 and
OSX64, how can I get them blessed and uploaded to PyPI?
Matti
Date: Wed, 16 Nov 2016 22:47:39 -0700
Subject: [Numpy-discussion] NumPy 1.12.0b1 released.
Hi All,
I'm pleased to annouce the release of NumPy 1.12.0b1. This release
supports Python 2.7 and 3.4 - 3.6 and is the result of 388 pull requests
submitted by 133 contributors. It is quite sizeable and rather than put the
release notes inline I've attached them as a file and they may also be
viewed at Github<https://github.com/numpy/numpy/releases/tag/v1.12.0b1>.
Zip files and tarballs may also be found the Github link. Wheels and source
archives may be downloaded from PyPI, which is the recommended method.
This release is a large collection of fixes, enhancements, and improvements
and it is difficult to select just a few as highlights. However, the
following enhancements may be of particular interest
- Order of operations in ``np.einsum`` now can be optimized for large
speed improvements.
- New ``signature`` argument to ``np.vectorize`` for vectorizing with
core dimensions.
- The ``keepdims`` argument was added to many functions.
- Support for PyPy 2.7 v5.6.0 has been added. While not complete, this
is a milestone for PyPy's C-API compatibility layer.
Thanks to all,
Chuck
_______________________________________________
NumPy-Discussion mailing list
https://mail.scipy.org/mailman/listinfo/numpy-discussion
Nathan Goldbaum
2016-11-18 14:46:41 UTC
Permalink
Since the NumPy API is forwards compatible, you should use the oldest
version of NumPy you would like to support to build your wheels with. The
wheels will then work with any future NumPy versions.
Post by Peter Cock
I have a related question to Matti's,
Do you have any recommendations for building standard wheels
for 3rd party Python libraries which use both the NumPy Python
and C API?
e.g. Do we need to do anything special given the NumPy C API
itself is versioned? Does it matter compiler chain should we use?
Thanks
Peter
Post by Matti Picus
Is there a guide to building standard wheels for NumPy?
Assuming I can build standardized PyPy 2.7 wheels for Ubuntu, Win32 and
OSX64, how can I get them blessed and uploaded to PyPI?
Matti
Date: Wed, 16 Nov 2016 22:47:39 -0700
Subject: [Numpy-discussion] NumPy 1.12.0b1 released.
Hi All,
I'm pleased to annouce the release of NumPy 1.12.0b1. This release
supports Python 2.7 and 3.4 - 3.6 and is the result of 388 pull
requests
Post by Matti Picus
submitted by 133 contributors. It is quite sizeable and rather than put the
release notes inline I've attached them as a file and they may also be
viewed at Github<https://github.com/numpy/numpy/releases/tag/v1.12.0b1
.
Zip files and tarballs may also be found the Github link. Wheels and source
archives may be downloaded from PyPI, which is the recommended method.
This release is a large collection of fixes, enhancements, and improvements
and it is difficult to select just a few as highlights. However, the
following enhancements may be of particular interest
- Order of operations in ``np.einsum`` now can be optimized for
large
Post by Matti Picus
speed improvements.
- New ``signature`` argument to ``np.vectorize`` for vectorizing
with
Post by Matti Picus
core dimensions.
- The ``keepdims`` argument was added to many functions.
- Support for PyPy 2.7 v5.6.0 has been added. While not complete,
this
Post by Matti Picus
is a milestone for PyPy's C-API compatibility layer.
Thanks to all,
Chuck
_______________________________________________
NumPy-Discussion mailing list
https://mail.scipy.org/mailman/listinfo/numpy-discussion
_______________________________________________
NumPy-Discussion mailing list
https://mail.scipy.org/mailman/listinfo/numpy-discussion
Peter Cock
2016-11-18 15:42:33 UTC
Permalink
Thanks Nathan,

That makes sense (compile using the oldest version of NumPy
we wish to support).

The information on https://github.com/MacPython/numpy-wheels
will probably be very useful too (I've been meaning to try out
appveyor at some point for Windows builds/testing).

Regards,

Peter
Post by Nathan Goldbaum
Since the NumPy API is forwards compatible, you should use the oldest
version of NumPy you would like to support to build your wheels with. The
wheels will then work with any future NumPy versions.
Post by Peter Cock
I have a related question to Matti's,
Do you have any recommendations for building standard wheels
for 3rd party Python libraries which use both the NumPy Python
and C API?
e.g. Do we need to do anything special given the NumPy C API
itself is versioned? Does it matter compiler chain should we use?
Thanks
Peter
Loading...