- update to 0.59.0

* Python 3.12 support
  * minimum supported version to 3.9
  * Add support for ufunc attributes and reduce
  * Add a config variable to enable / disable the llvmlite memory
    manager
  * see https://numba.readthedocs.io/en/stable/release/0.59.0-notes.html#highlights
  * fix regressions with 0.57.0
    + Support is added for the dict(iterable) constructor.
- Clean up leftover Python 3.8 gubbins, look forward to Python 3.11 support.
  This release focuses on performance improvements, but also adds
  some new features and contains numerous bug fixes and stability
  * Intel kindly sponsored research and development into producing
    a new reference count pruning pass. This pass operates at the
    LLVM level and can prune a number of common reference counting
    patterns. This will improve performance for two primary
    - There will be less pressure on the atomic locks used to do
    - Removal of reference counting operations permits more
      inlining and the optimisation passes can in general do more
  * Intel also sponsored work to improve the performance of the
    numba.typed.List container, particularly in the case of
  * Superword-level parallelism vectorization is now switched on
    and the optimisation pipeline has been lightly analysed and
    tuned so as to be able to vectorize more and more often
  * The inspect_cfg method on the JIT dispatcher object has been
    significantly enhanced and now includes highlighted output and
  * The BSD operating system is now unofficially supported (Stuart
  * Numerous features/functionality improvements to NumPy support,
    - the ndarray allocators, empty, ones and zeros, accepting a
  * Cudasim support for mapped array, memcopies and memset has

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:numeric/python-numba?expand=0&rev=77
This commit is contained in:
Dirk Mueller 2024-02-03 07:06:15 +00:00 committed by Git OBS Bridge
parent 76fe35019e
commit 0d9dfc143d
6 changed files with 80 additions and 58 deletions

View File

@ -2,4 +2,5 @@
<package>test-py39</package> <package>test-py39</package>
<package>test-py310</package> <package>test-py310</package>
<package>test-py311</package> <package>test-py311</package>
<package>test-py312</package>
</multibuild> </multibuild>

BIN
numba-0.58.1.tar.gz (Stored with Git LFS)

Binary file not shown.

3
numba-0.59.0.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:12b9b064a3e4ad00e2371fc5212ef0396c80f41caec9b5ec391c8b04b6eaf2a8
size 2656773

View File

@ -1,3 +1,14 @@
-------------------------------------------------------------------
Sat Feb 3 07:04:27 UTC 2024 - Dirk Müller <dmueller@suse.com>
- update to 0.59.0
* Python 3.12 support
* minimum supported version to 3.9
* Add support for ufunc attributes and reduce
* Add a config variable to enable / disable the llvmlite memory
manager
* see https://numba.readthedocs.io/en/stable/release/0.59.0-notes.html#highlights
------------------------------------------------------------------- -------------------------------------------------------------------
Mon Nov 20 12:15:07 UTC 2023 - Markéta Machová <mmachova@suse.com> Mon Nov 20 12:15:07 UTC 2023 - Markéta Machová <mmachova@suse.com>

View File

@ -1,7 +1,7 @@
# #
# spec file # spec file for package python-numba
# #
# Copyright (c) 2023 SUSE LLC # Copyright (c) 2024 SUSE LLC
# #
# All modifications and additions to the file contributed by third parties # All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed # remain the property of their copyright owners, unless otherwise agreed
@ -30,23 +30,33 @@
%define psuffix -test-py39 %define psuffix -test-py39
%define skip_python310 1 %define skip_python310 1
%define skip_python311 1 %define skip_python311 1
%define skip_python312 1
%bcond_without test %bcond_without test
%endif %endif
%if "%{flavor}" == "test-py310" %if "%{flavor}" == "test-py310"
%define psuffix -test-py310 %define psuffix -test-py310
%define skip_python39 1 %define skip_python39 1
%define skip_python311 1 %define skip_python311 1
%define skip_python312 1
%bcond_without test %bcond_without test
%endif %endif
%if "%{flavor}" == "test-py311" %if "%{flavor}" == "test-py311"
%define psuffix -test-py311 %define psuffix -test-py311
%define skip_python39 1 %define skip_python39 1
%define skip_python310 1 %define skip_python310 1
%define skip_python312 1
%bcond_without test
%endif
%if "%{flavor}" == "test-py312"
%define psuffix -test-py312
%define skip_python39 1
%define skip_python310 1
%define skip_python311 1
%bcond_without test %bcond_without test
%endif %endif
Name: python-numba%{?psuffix} Name: python-numba%{?psuffix}
Version: 0.58.1 Version: 0.59.0
Release: 0 Release: 0
Summary: NumPy-aware optimizing compiler for Python using LLVM Summary: NumPy-aware optimizing compiler for Python using LLVM
License: BSD-2-Clause License: BSD-2-Clause
@ -55,7 +65,7 @@ URL: https://numba.pydata.org/
Source: https://files.pythonhosted.org/packages/source/n/numba/numba-%{version}.tar.gz Source: https://files.pythonhosted.org/packages/source/n/numba/numba-%{version}.tar.gz
# PATCH-FIX-OPENSUSE skip tests failing due to OBS specifics # PATCH-FIX-OPENSUSE skip tests failing due to OBS specifics
Patch3: skip-failing-tests.patch Patch3: skip-failing-tests.patch
BuildRequires: %{python_module devel >= 3.8} BuildRequires: %{python_module devel >= 3.9}
BuildRequires: %{python_module numpy-devel >= %{min_numpy_ver} with %python-numpy-devel < %{max_numpy_ver}} BuildRequires: %{python_module numpy-devel >= %{min_numpy_ver} with %python-numpy-devel < %{max_numpy_ver}}
BuildRequires: %{python_module pip} BuildRequires: %{python_module pip}
BuildRequires: %{python_module setuptools} BuildRequires: %{python_module setuptools}
@ -67,7 +77,7 @@ BuildRequires: (tbb-devel >= 2021)
Requires: (python-llvmlite >= 0.41 with python-llvmlite < 0.42) Requires: (python-llvmlite >= 0.41 with python-llvmlite < 0.42)
Requires: (python-numpy >= %{min_numpy_ver} with python-numpy < %{max_numpy_ver}) Requires: (python-numpy >= %{min_numpy_ver} with python-numpy < %{max_numpy_ver})
Requires(post): update-alternatives Requires(post): update-alternatives
Requires(postun):update-alternatives Requires(postun): update-alternatives
Recommends: python-Jinja2 Recommends: python-Jinja2
Recommends: python-Pygments Recommends: python-Pygments
Recommends: python-cffi Recommends: python-cffi

View File

@ -3,11 +3,11 @@
numba/tests/test_parfors_passes.py | 1 + numba/tests/test_parfors_passes.py | 1 +
2 files changed, 4 insertions(+), 2 deletions(-) 2 files changed, 4 insertions(+), 2 deletions(-)
Index: numba-0.57.0/numba/tests/test_parfors.py Index: numba-0.59.0/numba/tests/test_parfors.py
=================================================================== ===================================================================
--- numba-0.57.0.orig/numba/tests/test_parfors.py --- numba-0.59.0.orig/numba/tests/test_parfors.py
+++ numba-0.57.0/numba/tests/test_parfors.py +++ numba-0.59.0/numba/tests/test_parfors.py
@@ -1190,6 +1190,7 @@ class TestParforNumPy(TestParforsBase): @@ -1198,6 +1198,7 @@ class TestParforNumPy(TestParforsBase):
self.check_variants(test_impl2, data_gen) self.check_variants(test_impl2, data_gen)
self.count_parfors_variants(test_impl2, data_gen) self.count_parfors_variants(test_impl2, data_gen)
@ -15,29 +15,29 @@ Index: numba-0.57.0/numba/tests/test_parfors.py
def test_ndarray_fill(self): def test_ndarray_fill(self):
def test_impl(x): def test_impl(x):
x.fill(7.0) x.fill(7.0)
@@ -4479,7 +4480,7 @@ class TestParforsVectorizer(TestPrangeBa @@ -4639,7 +4640,7 @@ class TestParforsVectorizer(TestPrangeBa
return asm return asm
- @linux_only - @linux_only
+ @unittest.skip("Our x86_64 asm is most probably different from the upstream one.") + @unittest.skip("Our x86_64 asm is most probably different from the upstream one.")
@TestCase.run_test_in_subprocess
def test_vectorizer_fastmath_asm(self): def test_vectorizer_fastmath_asm(self):
""" This checks that if fastmath is set and the underlying hardware """ This checks that if fastmath is set and the underlying hardware
is suitable, and the function supplied is amenable to fastmath based @@ -4680,7 +4681,7 @@ class TestParforsVectorizer(TestPrangeBa
@@ -4519,7 +4520,7 @@ class TestParforsVectorizer(TestPrangeBa
# check no zmm addressing is present # check no zmm addressing is present
self.assertTrue('zmm' not in v) self.assertTrue('zmm' not in v)
- @linux_only - @linux_only
+ @unittest.skip("Our x86_64 asm is most probably different from the upstream one.") + @unittest.skip("Our x86_64 asm is most probably different from the upstream one.")
@TestCase.run_test_in_subprocess(envvars={'NUMBA_BOUNDSCHECK': '0'})
def test_unsigned_refusal_to_vectorize(self): def test_unsigned_refusal_to_vectorize(self):
""" This checks that if fastmath is set and the underlying hardware """ This checks that if fastmath is set and the underlying hardware
is suitable, and the function supplied is amenable to fastmath based Index: numba-0.59.0/numba/tests/test_parfors_passes.py
Index: numba-0.57.0/numba/tests/test_parfors_passes.py
=================================================================== ===================================================================
--- numba-0.57.0.orig/numba/tests/test_parfors_passes.py --- numba-0.59.0.orig/numba/tests/test_parfors_passes.py
+++ numba-0.57.0/numba/tests/test_parfors_passes.py +++ numba-0.59.0/numba/tests/test_parfors_passes.py
@@ -516,6 +516,7 @@ class TestConvertLoopPass(BaseTest): @@ -514,6 +514,7 @@ class TestConvertLoopPass(BaseTest):
str(raises.exception), str(raises.exception),
) )
@ -45,10 +45,10 @@ Index: numba-0.57.0/numba/tests/test_parfors_passes.py
def test_init_prange(self): def test_init_prange(self):
def test_impl(): def test_impl():
n = 20 n = 20
Index: numba-0.57.0/numba/tests/test_cli.py Index: numba-0.59.0/numba/tests/test_cli.py
=================================================================== ===================================================================
--- numba-0.57.0.orig/numba/tests/test_cli.py --- numba-0.59.0.orig/numba/tests/test_cli.py
+++ numba-0.57.0/numba/tests/test_cli.py +++ numba-0.59.0/numba/tests/test_cli.py
@@ -264,6 +264,7 @@ class TestGDBCLIInfoBrokenGdbs(TestCase) @@ -264,6 +264,7 @@ class TestGDBCLIInfoBrokenGdbs(TestCase)
self.assertIn("No such file or directory", stdout) self.assertIn("No such file or directory", stdout)
self.assertIn(path, stdout) self.assertIn(path, stdout)