Hello community, here is the log from the commit of package python-numba for openSUSE:Factory checked in at 2018-06-25 11:42:52 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-numba (Old) and /work/SRC/openSUSE:Factory/.python-numba.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-numba" Mon Jun 25 11:42:52 2018 rev:10 rq:618811 version:0.38.1 Changes: -------- --- /work/SRC/openSUSE:Factory/python-numba/python-numba.changes 2018-05-29 10:29:55.173722871 +0200 +++ /work/SRC/openSUSE:Factory/.python-numba.new/python-numba.changes 2018-06-25 11:42:53.152408029 +0200 @@ -1,0 +2,25 @@ +Sun Jun 24 01:05:37 UTC 2018 - [email protected] + +- update to version 0.38.1: + This is a critical bug fix release addressing: + https://github.com/numba/numba/issues/3006 + + The bug does not impact users using conda packages from Anaconda or Intel Python + Distribution (but it does impact conda-forge). It does not impact users of pip + using wheels from PyPI. + + This only impacts a small number of users where: + + * The ICC runtime (specifically libsvml) is present in the user's environment. + * The user is using an llvmlite statically linked against a version of LLVM + that has not been patched with SVML support. + * The platform is 64-bit. + + The release fixes a code generation path that could lead to the production of + incorrect results under the above situation. + + Fixes: + * PR #3007: Augment SVML detection with llvmlite SVML patch + detection. + +------------------------------------------------------------------- Old: ---- numba-0.38.0.tar.gz New: ---- numba-0.38.1.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-numba.spec ++++++ --- /var/tmp/diff_new_pack.oc6fIm/_old 2018-06-25 11:42:53.816383540 +0200 +++ /var/tmp/diff_new_pack.oc6fIm/_new 2018-06-25 11:42:53.820383393 +0200 @@ -18,7 +18,7 @@ %{?!python_module:%define python_module() python-%{**} python3-%{**}} Name: python-numba -Version: 0.38.0 +Version: 0.38.1 Release: 0 Summary: Compiling Python code using LLVM License: BSD-2-Clause ++++++ numba-0.38.0.tar.gz -> numba-0.38.1.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/numba-0.38.0/CHANGE_LOG new/numba-0.38.1/CHANGE_LOG --- old/numba-0.38.0/CHANGE_LOG 2018-04-25 00:11:11.000000000 +0200 +++ new/numba-0.38.1/CHANGE_LOG 2018-06-01 22:10:43.000000000 +0200 @@ -1,3 +1,34 @@ +Version 0.38.1 +-------------- + +This is a critical bug fix release addressing: +https://github.com/numba/numba/issues/3006 + +The bug does not impact users using conda packages from Anaconda or Intel Python +Distribution (but it does impact conda-forge). It does not impact users of pip +using wheels from PyPI. + +This only impacts a small number of users where: + + * The ICC runtime (specifically libsvml) is present in the user's environment. + * The user is using an llvmlite statically linked against a version of LLVM + that has not been patched with SVML support. + * The platform is 64-bit. + +The release fixes a code generation path that could lead to the production of +incorrect results under the above situation. + +Fixes: + +* PR #3007: Augment SVML detection with llvmlite SVML patch detection. + +Contributors: + +The following people contributed to this release. + +* Stuart Archibald (core dev) + + Version 0.38.0 -------------- diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/numba-0.38.0/PKG-INFO new/numba-0.38.1/PKG-INFO --- old/numba-0.38.0/PKG-INFO 2018-04-25 00:14:57.000000000 +0200 +++ new/numba-0.38.1/PKG-INFO 2018-06-01 22:11:24.000000000 +0200 @@ -1,12 +1,11 @@ Metadata-Version: 1.1 Name: numba -Version: 0.38.0 +Version: 0.38.1 Summary: compiling Python code using LLVM Home-page: http://numba.github.com Author: Anaconda, Inc. Author-email: [email protected] License: BSD -Description-Content-Type: UNKNOWN Description: ***** Numba ***** diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/numba-0.38.0/numba/__init__.py new/numba-0.38.1/numba/__init__.py --- old/numba-0.38.0/numba/__init__.py 2018-04-25 00:11:11.000000000 +0200 +++ new/numba-0.38.1/numba/__init__.py 2018-06-01 22:10:43.000000000 +0200 @@ -6,6 +6,7 @@ import platform import re import sys +import warnings from . import config, errors, runtests, types @@ -118,10 +119,36 @@ llvmlite.binding.load_library_permanently("svml_dispmd") else: return False + # The SVML library is loaded, therefore SVML *could* be supported. + # Now see if LLVM has been compiled with the SVML support patch. + # If llvmlite has the checking function `has_svml` and it returns + # True, then LLVM was compiled with SVML support and the the setup + # for SVML can proceed. We err on the side of caution and if the + # checking function is missing, regardless of that being fine for + # most 0.23.{0,1} llvmlite instances (i.e. conda or pip installed), + # we assume that SVML was not compiled in. llvmlite 0.23.2 is a + # bugfix release with the checking function present that will always + # produce correct behaviour. For context see: #3006. + try: + if not getattr(llvmlite.binding.targets, "has_svml")(): + # has detection function, but no svml compiled in, therefore + # disable SVML + return False + except AttributeError: + if platform.machine() == 'x86_64' and config.DEBUG: + msg = ("SVML was found but llvmlite >= 0.23.2 is " + "needed to support it.") + warnings.warn(msg) + # does not have detection function, cannot detect reliably, + # disable SVML. + return False + + # All is well, detection function present and reports SVML is + # compiled in, set the vector library to SVML. llvmlite.binding.set_option('SVML', '-vector-library=SVML') return True except: - if platform.machine == 'x86_64' and config.DEBUG: + if platform.machine() == 'x86_64' and config.DEBUG: warnings.warn("SVML was not found/could not be loaded.") return False diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/numba-0.38.0/numba/_version.py new/numba-0.38.1/numba/_version.py --- old/numba-0.38.0/numba/_version.py 2018-04-25 00:14:57.000000000 +0200 +++ new/numba-0.38.1/numba/_version.py 2018-06-01 22:11:24.000000000 +0200 @@ -4,8 +4,8 @@ # unpacked source archive. Distribution tarballs contain a pre-generated copy # of this file. -version_version = '0.38.0' -version_full = '2a2b772fc0dd19dd3d6b2db2421c78c8b4da046e' +version_version = '0.38.1' +version_full = '912ace4a5889424a5c54377b40f8141123ac0983' def get_versions(default={}, verbose=False): return {'version': version_version, 'full': version_full}
