diff --git a/numba-0.48.0.tar.gz b/numba-0.48.0.tar.gz deleted file mode 100644 index 74e47b4..0000000 --- a/numba-0.48.0.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:9d21bc77e67006b5723052840c88cc59248e079a907cc68f1a1a264e1eaba017 -size 1976859 diff --git a/numba-0.49.0.tar.gz b/numba-0.49.0.tar.gz new file mode 100644 index 0000000..cd0c457 --- /dev/null +++ b/numba-0.49.0.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9dbef9c738685a624fb0a4e2ec4cc425bed0e1de830d9bafc629bdb55e8df98f +size 2008626 diff --git a/python-numba.changes b/python-numba.changes index 393f321..f7ce92e 100644 --- a/python-numba.changes +++ b/python-numba.changes @@ -1,3 +1,33 @@ +------------------------------------------------------------------- +Fri Apr 24 14:07:35 UTC 2020 - Marketa Calabkova + +- Update to 0.49.0 + * Removal of all Python 2 related code and also updating the minimum supported + Python version to 3.6, the minimum supported NumPy version to 1.15 and the + minimum supported SciPy version to 1.0. (Stuart Archibald). + * Refactoring of the Numba code base. The code is now organised into submodules + by functionality. This cleans up Numba's top level namespace. + (Stuart Archibald). + * Introduction of an ``ir.Del`` free static single assignment form for Numba's + intermediate representation (Siu Kwan Lam and Stuart Archibald). + * An OpenMP-like thread masking API has been added for use with code using the + parallel CPU backends (Aaron Meurer and Stuart Archibald). + * For the CUDA target, all kernel launches now require a configuration, this + preventing accidental launches of kernels with the old default of a single + thread in a single block. The hard-coded autotuner is also now removed, such + tuning is deferred to CUDA API calls that provide the same functionality + (Graham Markall). + * The CUDA target also gained an External Memory Management plugin interface to + allow Numba to use another CUDA-aware library for all memory allocations and + deallocations (Graham Markall). + * The Numba Typed List container gained support for construction from iterables + (Valentin Haenel). + * Experimental support was added for first-class function types + (Pearu Peterson). +- Refreshed patch skip-failing-tests.patch + * the troublesome tests are skipped upstream on 32-bit +- Unpin llvmlite + ------------------------------------------------------------------- Mon Apr 6 07:56:16 UTC 2020 - Tomáš Chvátal diff --git a/python-numba.spec b/python-numba.spec index 18a155b..23dafe0 100644 --- a/python-numba.spec +++ b/python-numba.spec @@ -27,7 +27,7 @@ %bcond_with test %endif Name: python-numba%{psuffix} -Version: 0.48.0 +Version: 0.49.0 Release: 0 Summary: NumPy-aware optimizing compiler for Python using LLVM License: BSD-2-Clause @@ -36,23 +36,8 @@ Source: https://files.pythonhosted.org/packages/source/n/numba/numba-%{v Patch0: skip-failing-tests.patch # PATCH-FIX-UPSTREAM fix-max-name-size.patch -- fix for gh#numba/numba#3876 -- from gh#numba/numba#4373 Patch1: fix-max-name-size.patch -%if %{with test} -BuildRequires: %{python_module Jinja2} -BuildRequires: %{python_module PyYAML} -BuildRequires: %{python_module Pygments} -BuildRequires: %{python_module cffi} BuildRequires: %{python_module devel} -BuildRequires: %{python_module ipython} -BuildRequires: %{python_module llvmlite >= 0.31} -BuildRequires: %{python_module numba >= %{version}} -BuildRequires: %{python_module numba-devel >= %{version}} -BuildRequires: %{python_module numpy-devel >= 1.11} -BuildRequires: %{python_module pytest} -BuildRequires: %{python_module scipy >= 0.16} -BuildRequires: %{python_module tbb} -%endif -BuildRequires: %{python_module devel} -BuildRequires: %{python_module numpy-devel >= 1.11} +BuildRequires: %{python_module numpy-devel >= 1.15} BuildRequires: %{python_module setuptools} BuildRequires: fdupes BuildRequires: gcc-c++ @@ -67,6 +52,19 @@ Recommends: python-Jinja2 Recommends: python-Pygments Recommends: python-cffi Recommends: python-tbb +%if %{with test} +BuildRequires: %{python_module Jinja2} +BuildRequires: %{python_module PyYAML} +BuildRequires: %{python_module Pygments} +BuildRequires: %{python_module cffi} +BuildRequires: %{python_module ipython} +BuildRequires: %{python_module llvmlite >= 0.31} +BuildRequires: %{python_module numba >= %{version}} +BuildRequires: %{python_module numba-devel >= %{version}} +BuildRequires: %{python_module pytest} +BuildRequires: %{python_module scipy >= 0.16} +BuildRequires: %{python_module tbb} +%endif %python_subpackages %description @@ -113,6 +111,8 @@ rm numba/tests/test_hashing.py rm numba/tests/test_typedlist.py # as we reduced the amount of tests: sed -i -e 's:5000:3000:' numba/tests/test_runtests.py +# unpin llvmlite since it screws up dependencies +sed -i 's/,<={max_llvmlite_version}//' setup.py %build export CFLAGS="%{optflags} -fPIC" @@ -147,7 +147,7 @@ mv numba_temp numba %files %{python_files} %license LICENSE -%doc AUTHORS CHANGE_LOG README.rst +%doc CHANGE_LOG README.rst %python_alternative %{_bindir}/numba %python_alternative %{_bindir}/pycc %{python_sitearch}/numba/ diff --git a/skip-failing-tests.patch b/skip-failing-tests.patch index d51a174..20761ad 100644 --- a/skip-failing-tests.patch +++ b/skip-failing-tests.patch @@ -1,36 +1,43 @@ -Index: numba-0.48.0/numba/tests/test_runtests.py +Index: numba-0.49.0/numba/tests/test_parfors.py =================================================================== ---- numba-0.48.0.orig/numba/tests/test_runtests.py -+++ numba-0.48.0/numba/tests/test_runtests.py -@@ -76,8 +76,7 @@ class TestCase(unittest.TestCase): - def test_subpackage(self): - self.check_testsuite_size(['numba.tests.npyufunc'], 50) - -- @unittest.skipIf(sys.version_info < (3, 4), -- "'--random' only supported on Python 3.4 or higher") -+ @unittest.skip("Somehow doesn't work with the current version of NumPy") - def test_random(self): - self.check_testsuite_size( - ['--random', '0.1', 'numba.tests.npyufunc'], 5) -Index: numba-0.48.0/numba/tests/test_parfors.py -=================================================================== ---- numba-0.48.0.orig/numba/tests/test_parfors.py -+++ numba-0.48.0/numba/tests/test_parfors.py -@@ -544,7 +544,7 @@ class TestParfors(TestParforsBase): - self.check(test_impl) - self.assertTrue(countParfors(test_impl, ()) == 1) - -- @skip_unsupported -+ @unittest.skip("This will fail with system llvm and LTO") - @tag('important') - def test_pi(self): - def test_impl(n): -@@ -1521,7 +1521,7 @@ class TestParfors(TestParforsBase): +--- numba-0.49.0.orig/numba/tests/test_parfors.py ++++ numba-0.49.0/numba/tests/test_parfors.py +@@ -1505,7 +1505,7 @@ class TestParfors(TestParforsBase): msg = ("The reshape API may only include one negative argument.") self.assertIn(msg, str(raised.exception)) -- @skip_unsupported +- @skip_parfors_unsupported + @unittest.skip("Fails on type check in OBS") def test_ndarray_fill(self): def test_impl(x): x.fill(7.0) +@@ -2541,7 +2541,7 @@ class TestParforsVectorizer(TestPrangeBa + # to check vsqrtpd operates on zmm + match_vsqrtpd_on_zmm = re.compile('\n\s+vsqrtpd\s+.*zmm.*\n') + +- @linux_only ++ @unittest.skip("Our x86_64 asm is most probably different from the Travis one.") + def test_vectorizer_fastmath_asm(self): + """ This checks that if fastmath is set and the underlying hardware + is suitable, and the function supplied is amenable to fastmath based +@@ -2584,7 +2584,7 @@ class TestParforsVectorizer(TestPrangeBa + # check no zmm addressing is present + self.assertTrue('zmm' not in v) + +- @linux_only ++ @unittest.skip("Our x86_64 asm is most probably different from the Travis one.") + def test_unsigned_refusal_to_vectorize(self): + """ 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.49.0/numba/tests/test_parfors_passes.py +=================================================================== +--- numba-0.49.0.orig/numba/tests/test_parfors_passes.py ++++ numba-0.49.0/numba/tests/test_parfors_passes.py +@@ -512,6 +512,7 @@ class TestConvertLoopPass(BaseTest): + str(raises.exception), + ) + ++ @unittest.skip("Fails on type check in OBS") + def test_init_prange(self): + def test_impl(): + n = 20