py-numba: updated to 0.47.0

Version 0.47.0
--------------

This release expands the capability of Numba in a number of important areas and
is also significant as it is the last major point release with support for
Python 2 and Python 3.5 included. The next release (0.48.0) will be for Python
3.6+ only!  (This follows NumPy's deprecation schedule as specified in
`NEP 29 <https://numpy.org/neps/nep-0029-deprecation_policy.html>`_.)

Highlights of core feature changes include:

* Full support for Python 3.8 (Siu Kwan Lam)
* Opt-in bounds checking (Aaron Meurer)
* Support for ``map``, ``filter`` and ``reduce`` (Stuart Archibald)

Intel also kindly sponsored research and development that lead to some exciting
new features:

* Initial support for basic ``try``/``except`` use (Siu Kwan Lam)
* The ability to pass functions created from closures/lambdas as arguments
  (Stuart Archibald)
* ``sorted`` and ``list.sort()`` now accept the ``key`` argument (Stuart
  Archibald and Siu Kwan Lam)
* A new compiler pass triggered through the use of the function
  ``numba.literal_unroll`` which permits iteration over heterogeneous tuples
  and constant lists of constants. (Stuart Archibald)

Enhancements from user contributed PRs (with thanks!):

* Ankit Mahato added a reference to a new talk on Numba at PyCon India 2019
* Brian Wignall kindly fixed some spelling mistakes and typos
* Denis Smirnov wrote numerous methods to considerable enhance string support
  including:

  * ``str.rindex()``
  * ``str.isprintable()``
  * ``str.index()``
  * ``start/end`` parameters for ``str.find()``
  * ``str.isspace()``
  * ``str.isidentifier()``
  * ``str.rpartition()``
  * ``str.lower()`` and ``str.islower()``

* Elena Totmenina implemented both ``str.isalnum()``, ``str.isalpha()`` and
  ``str.isascii``
* Eric Larson fixed a bug in literal comparison
* Ethan Pronovost updated the ``np.arange`` implementation to allow
  the use of the ``dtype`` key word argument and also added ``bool``
  implementations for several types.
* Graham Markall fixed some issues with the CUDA target, namely:

  * Added physical limits for CC 7.0 / 7.5 to CUDA autotune
  * Fixed bugs in TestCudaWarpOperations
  * Improved errors / warnings for the CUDA vectorize decorator

* Guilherme Leobas fixed a typo in the ``urem`` implementation
* Isaac Virshup contributed a number of patches that fixed bugs, added support
  for more NumPy functions and enhanced Python feature support. These
  contributions included:

  * Allow array construction with mixed type shape tuples
  * Implementing ``np.lcm``
  * Implement np.gcd and math.gcd
  * Make slice constructor more similar to python.
  * Added support for slice.indices
  * Clarify numba ufunc supported features

* James Bourbeau fixed some issues with tooling, add ``setuptools`` as a
  dependency and add pre-commit hooks for ``flake8`` compliance.
* Leo Fang made ``numba.dummyarray.Array`` iterable
* Marc Garcia fixed the ``numba.jit`` parameter name signature_or_function
* Marcelo Duarte Trevisani patched the llvmlite requirement to ``>=0.30.0``
* Matt Cooper fixed a long standing CI problem by remove maxParallel
* Matti Picus fixed an issue with ``collections.abc``
  from Azure Pipelines.
* Rob Ennis patched a bug in ``np.interp`` ``float32`` handling
* VDimir fixed a bug in array transposition layouts and re-enabled and
  fixed some idle tests.
* Vyacheslav Smirnov Enable support for `str.istitle()``

General Enhancements:

* Bounds checking
* Add pre-commit hooks
* Handle kw args in inliner when callee is a function
* Permits closures to become functions, enables map(), filter()
* Implement method title() for unicode based on Cpython
* Enable support for istitle() method for unicode string
* Implement str.lower() and str.islower()
* Implement str.rfind()
* Refactor `overload*` and support `jit_options` and `inline`
* Added support for slice.indices
* Add `bool` overload for several types
* Allow array construction with mixed type shape tuples
* Python3.8 support
* Add parfor support for ndarray.fill.
* Update typeconv error message to ask for sys.executable.
* Update `np.arange` implementation with `@overload`
* Make slice constructor more similar to python.
* Implement np.gcd and math.gcd
* Add setuptools as a dependency
* put git hash into build string
* Better compiler error messages for improperly used reduction
  variables.
* Typed list implement and expose allocation
* Typed list faster copy
* Implement str.isspace() based on CPython
* Implement str.isprintable() based on CPython
* Implement str.isidentifier() based on CPython
* Implement str.isalnum() based on CPython
* Implement str.isalpha() based on CPython
* Implement str.rpartition() based on CPython
* Implement str.isascii() based on CPython
* Add graphviz output for FunctionIR
* Python3.8 looplifting
* Implement str.expandtabs() based on CPython
* Implement str.index() based on CPython
* Implement str.rindex() based on CPython
* Support params start/end for str.find()
* Bump to llvmlite 0.31
* Specialise arange dtype on arch + python version.
* basic support for try except
* Implement np.lcm
* loop canonicalisation and type aware tuple unroller/loop body
  versioning passes
* Update hash(tuple) for Python 3.8.
* Implement sort/sorted with key.
* Add `is_internal` property to all Type classes.

Fixes:

* Update to LLVM8 memset/memcpy intrinsic
* Convert sub to add and div to mul when doing the reduction across
  the per-thread reduction array.
* Handle 0 correctly as slice parameter.
* Remove multiply defined variables from all blocks' equivalence sets.
* Fix pickling of dufunc
* BUG: Comparison for literal
* Change get_call_table to support intermediate Vars.
* Requires  llvmlite >=0.30.0
* prefer to import from collections.abc
* fix flake8 errors
* Fix and enable idle tests from test_array_manipulation
* Fix transpose output array layout
* Fix issue with SVML (and knock-on function resolution effects).
* Treat 0d arrays like scalars.
* fix missing incref on flags
* fix typos in numba/targets/base.py
* fix typos
* fix spelling in now-failing tests
* windowing test should check equality only up to double precision
  errors
* fix refining list by using extend on an iterator
* Fix return type in arange and zero step size handling.
* suppress spurious RuntimeWarning about ufunc sizes
* skip the xfail test for now.  Py3.8 CFG refactor seems to have
  changed the test case
* regex needs to accept singular form of "argument"
* fix typed list equals
* Fix some spelling typos
* np.interp bugfix for float32 handling
* fix creating list with JIT disabled
* fix creating dict with JIT disabled
* Better handling of prange with multiple reductions on the same
  variable.
* Improve the error message for `raise <string>`.
* Move overload of literal_unroll to avoid circular dependency that
  breaks Python 2.7
* Fix test error on windows
* Fixes a bug in the relabelling logic in literal_unroll.
* Fix overload_method problem with stararg
* Add ind_to_const to enable fewer equivalence classes.
* Remove xfail for test which has since had underlying issue fixed.
* skip pycc test on Python 3.8 + macOS because of distutils issue
This commit is contained in:
adam 2020-01-14 16:25:34 +00:00
parent ef024f79e3
commit c0d2d243e2
3 changed files with 34 additions and 12 deletions

View file

@ -1,6 +1,6 @@
# $NetBSD: Makefile,v 1.12 2019/10/19 14:17:02 adam Exp $
# $NetBSD: Makefile,v 1.13 2020/01/14 16:25:34 adam Exp $
DISTNAME= numba-0.46.0
DISTNAME= numba-0.47.0
PKGNAME= ${PYPKGPREFIX}-${DISTNAME}
CATEGORIES= math python
MASTER_SITES= ${MASTER_SITE_PYPI:=n/numba/}
@ -10,7 +10,8 @@ HOMEPAGE= http://numba.pydata.org/
COMMENT= NumPy aware dynamic Python compiler using LLVM
LICENSE= 2-clause-bsd
DEPENDS+= ${PYPKGPREFIX}-llvmlite>=0.30.0:../../devel/py-llvmlite
DEPENDS+= ${PYPKGPREFIX}-llvmlite>=0.31.0:../../devel/py-llvmlite
DEPENDS+= ${PYPKGPREFIX}-setuptools-[0-9]*:../../devel/py-setuptools
USE_LANGUAGES= c c++

View file

@ -1,4 +1,4 @@
@comment $NetBSD: PLIST,v 1.9 2019/10/19 14:17:02 adam Exp $
@comment $NetBSD: PLIST,v 1.10 2020/01/14 16:25:34 adam Exp $
bin/numba-${PYVERSSUFFIX}
bin/pycc-${PYVERSSUFFIX}
${PYSITELIB}/${EGG_INFODIR}/PKG-INFO
@ -59,6 +59,9 @@ ${PYSITELIB}/numba/array_analysis.pyo
${PYSITELIB}/numba/bytecode.py
${PYSITELIB}/numba/bytecode.pyc
${PYSITELIB}/numba/bytecode.pyo
${PYSITELIB}/numba/byteflow.py
${PYSITELIB}/numba/byteflow.pyc
${PYSITELIB}/numba/byteflow.pyo
${PYSITELIB}/numba/caching.py
${PYSITELIB}/numba/caching.pyc
${PYSITELIB}/numba/caching.pyo
@ -1060,9 +1063,9 @@ ${PYSITELIB}/numba/targets/linalg.pyo
${PYSITELIB}/numba/targets/listobj.py
${PYSITELIB}/numba/targets/listobj.pyc
${PYSITELIB}/numba/targets/listobj.pyo
${PYSITELIB}/numba/targets/literal_dispatch.py
${PYSITELIB}/numba/targets/literal_dispatch.pyc
${PYSITELIB}/numba/targets/literal_dispatch.pyo
${PYSITELIB}/numba/targets/literal.py
${PYSITELIB}/numba/targets/literal.pyc
${PYSITELIB}/numba/targets/literal.pyo
${PYSITELIB}/numba/targets/mathimpl.py
${PYSITELIB}/numba/targets/mathimpl.pyc
${PYSITELIB}/numba/targets/mathimpl.pyo
@ -1291,6 +1294,9 @@ ${PYSITELIB}/numba/tests/test_auto_constants.pyo
${PYSITELIB}/numba/tests/test_blackscholes.py
${PYSITELIB}/numba/tests/test_blackscholes.pyc
${PYSITELIB}/numba/tests/test_blackscholes.pyo
${PYSITELIB}/numba/tests/test_boundscheck.py
${PYSITELIB}/numba/tests/test_boundscheck.pyc
${PYSITELIB}/numba/tests/test_boundscheck.pyo
${PYSITELIB}/numba/tests/test_buffer_protocol.py
${PYSITELIB}/numba/tests/test_buffer_protocol.pyc
${PYSITELIB}/numba/tests/test_buffer_protocol.pyo
@ -1510,18 +1516,27 @@ ${PYSITELIB}/numba/tests/test_locals.pyo
${PYSITELIB}/numba/tests/test_looplifting.py
${PYSITELIB}/numba/tests/test_looplifting.pyc
${PYSITELIB}/numba/tests/test_looplifting.pyo
${PYSITELIB}/numba/tests/test_make_function_to_jit_function.py
${PYSITELIB}/numba/tests/test_make_function_to_jit_function.pyc
${PYSITELIB}/numba/tests/test_make_function_to_jit_function.pyo
${PYSITELIB}/numba/tests/test_mandelbrot.py
${PYSITELIB}/numba/tests/test_mandelbrot.pyc
${PYSITELIB}/numba/tests/test_mandelbrot.pyo
${PYSITELIB}/numba/tests/test_mangling.py
${PYSITELIB}/numba/tests/test_mangling.pyc
${PYSITELIB}/numba/tests/test_mangling.pyo
${PYSITELIB}/numba/tests/test_map_filter_reduce.py
${PYSITELIB}/numba/tests/test_map_filter_reduce.pyc
${PYSITELIB}/numba/tests/test_map_filter_reduce.pyo
${PYSITELIB}/numba/tests/test_mathlib.py
${PYSITELIB}/numba/tests/test_mathlib.pyc
${PYSITELIB}/numba/tests/test_mathlib.pyo
${PYSITELIB}/numba/tests/test_maxmin.py
${PYSITELIB}/numba/tests/test_maxmin.pyc
${PYSITELIB}/numba/tests/test_maxmin.pyo
${PYSITELIB}/numba/tests/test_mixed_tuple_unroller.py
${PYSITELIB}/numba/tests/test_mixed_tuple_unroller.pyc
${PYSITELIB}/numba/tests/test_mixed_tuple_unroller.pyo
${PYSITELIB}/numba/tests/test_multi3.py
${PYSITELIB}/numba/tests/test_multi3.pyc
${PYSITELIB}/numba/tests/test_multi3.pyo
@ -1666,6 +1681,9 @@ ${PYSITELIB}/numba/tests/test_threadsafety.pyo
${PYSITELIB}/numba/tests/test_tracing.py
${PYSITELIB}/numba/tests/test_tracing.pyc
${PYSITELIB}/numba/tests/test_tracing.pyo
${PYSITELIB}/numba/tests/test_try_except.py
${PYSITELIB}/numba/tests/test_try_except.pyc
${PYSITELIB}/numba/tests/test_try_except.pyo
${PYSITELIB}/numba/tests/test_tuples.py
${PYSITELIB}/numba/tests/test_tuples.pyc
${PYSITELIB}/numba/tests/test_tuples.pyo
@ -1880,6 +1898,9 @@ ${PYSITELIB}/numba/unsafe/__init__.pyo
${PYSITELIB}/numba/unsafe/bytes.py
${PYSITELIB}/numba/unsafe/bytes.pyc
${PYSITELIB}/numba/unsafe/bytes.pyo
${PYSITELIB}/numba/unsafe/eh.py
${PYSITELIB}/numba/unsafe/eh.pyc
${PYSITELIB}/numba/unsafe/eh.pyo
${PYSITELIB}/numba/unsafe/ndarray.py
${PYSITELIB}/numba/unsafe/ndarray.pyc
${PYSITELIB}/numba/unsafe/ndarray.pyo

View file

@ -1,7 +1,7 @@
$NetBSD: distinfo,v 1.11 2019/10/19 14:17:02 adam Exp $
$NetBSD: distinfo,v 1.12 2020/01/14 16:25:34 adam Exp $
SHA1 (numba-0.46.0.tar.gz) = df31d56c208b7d88452bbb1bf8d6f89b7c35ab62
RMD160 (numba-0.46.0.tar.gz) = b86b8bf167a8b03c896cd6dbfce2748e60113178
SHA512 (numba-0.46.0.tar.gz) = 845308d0d7d920c5d8aa70ead9ecc2546018ab9004839423c92a60fa10e9283526504b5fc04652ea6dcdb9ae1f53e0a96fb4584f575c1bf953683b075c9d7da8
Size (numba-0.46.0.tar.gz) = 1851254 bytes
SHA1 (numba-0.47.0.tar.gz) = ce163d458c9a7bded4993d6de9dbc6feb1a15380
RMD160 (numba-0.47.0.tar.gz) = be1bb3d60153a154c6f6382400b2f6298dd968cf
SHA512 (numba-0.47.0.tar.gz) = 1bff2e466942498ca641f227b7416a47240df9968b9af281f97ea03fcf9a64706d4bdba6f1465aa5e1dc1c37ec6aa138431cf6ff81dc71d8c5b2f17864883b4c
Size (numba-0.47.0.tar.gz) = 1935290 bytes
SHA1 (patch-numba_npyufunc_workqueue.c) = 0bcbeff869174265a2d776f847e880a99676d812