Package: numba / 0.56.4+dfsg-2

Metadata

Package Version Patches format
numba 0.56.4+dfsg-2 3.0 (quilt)

Patch series

view the series file
Patch File delta Description
no git in generate_lower_listing.patch | (download)

numba/scripts/generate_lower_listing.py | 6 4 + 2 - 0 !
1 file changed, 4 insertions(+), 2 deletions(-)

 prevent to query the git history whatsoever
doc no git.patch | (download)

docs/source/_ext/ghfiles.py | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

---
llvm_long_name_PR4373.patch | (download)

numba/__init__.py | 5 5 + 0 - 0 !
1 file changed, 5 insertions(+)

 [patch] set maximum name size to maximum allowable value

Fix for #3876 without needing to patch LLVM.

This is upstream PR4373 for fixing LLVM handling of long names.

See also upstream Issue#5771, and LLVM review at
https://reviews.llvm.org/D41296


32bit_skip_64bit_hashing_tests.patch | (download)

numba/tests/test_hashing.py | 3 3 + 0 - 0 !
1 file changed, 3 insertions(+)

---
skip armhf tests on arm64.patch | (download)

numba/tests/support.py | 2 1 + 1 - 0 !
numba/tests/test_dispatcher.py | 8 4 + 4 - 0 !
numba/tests/test_linalg.py | 4 2 + 2 - 0 !
3 files changed, 7 insertions(+), 7 deletions(-)

 debian builds packages on armv7l systems which don't
 support unaligned memory access and upstream tested for armv7l to
 avoid the tests that would trigger that problem. Unfortunately Debian
 runs the CI tests in a 32-bit user space on arm64 machines. The
 archecture reported on those machines is armv8l and so the skipIf
 test wasn't being triggered.
skip unicode buserror armhf.patch | (download)

numba/tests/test_unicode.py | 4 3 + 1 - 0 !
1 file changed, 3 insertions(+), 1 deletion(-)

 skip tests triggering bus errors when running armhf on arm64 when hash() 
 accesses complex multibyte unicode strings.
Bug: https://github.com/numba/numba/issues/6659
use python3 test nonsense gdb binary.patch | (download)

numba/tests/test_cli.py | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

 by default debian doesn't have a python executable installed
 use the default python3 name instead.
reorder setuptools import.patch | (download)

setup.py | 3 2 + 1 - 0 !
1 file changed, 2 insertions(+), 1 deletion(-)

 setup.py build_ext failed, but earlier on there was an warning message
 about distutils being imported before setuptools, but setuptools replaces parts of
 distutils and undesierable behavior may occur.
 Changing the order did fix my problem with running the build_ext step.


add test tags.patch | (download)

numba/tests/npyufunc/test_caching.py | 6 5 + 1 - 0 !
numba/tests/support.py | 2 1 + 1 - 0 !
numba/tests/test_caching.py | 17 17 + 0 - 0 !
numba/tests/test_parfors_caching.py | 8 7 + 1 - 0 !
numba/tests/test_runtests.py | 2 1 + 1 - 0 !
5 files changed, 31 insertions(+), 4 deletions(-)

---
add gdb test check.patch | (download)

numba/tests/gdb/test_array_arg.py | 3 2 + 1 - 0 !
numba/tests/gdb/test_basic.py | 3 2 + 1 - 0 !
numba/tests/gdb/test_break_on_symbol.py | 3 2 + 1 - 0 !
numba/tests/gdb/test_break_on_symbol_version.py | 3 2 + 1 - 0 !
numba/tests/gdb/test_conditional_breakpoint.py | 3 2 + 1 - 0 !
numba/tests/gdb/test_pretty_print.py | 3 2 + 1 - 0 !
numba/tests/support.py | 5 5 + 0 - 0 !
numba/tests/test_debuginfo.py | 2 2 + 0 - 0 !
numba/tests/test_gdb_dwarf.py | 1 1 + 0 - 0 !
9 files changed, 20 insertions(+), 6 deletions(-)

---
numpy 1 24 pr8691.patch | (download)

docs/source/user/installing.rst | 4 2 + 2 - 0 !
numba/__init__.py | 4 2 + 2 - 0 !
numba/cuda/tests/cudapy/test_intrinsics.py | 4 2 + 2 - 0 !
numba/np/arraymath.py | 4 4 + 0 - 0 !
numba/np/ufunc/_internal.c | 25 11 + 14 - 0 !
numba/stencils/stencilparfor.py | 7 6 + 1 - 0 !
numba/tests/test_array_methods.py | 15 6 + 9 - 0 !
numba/tests/test_comprehension.py | 2 2 + 0 - 0 !
numba/tests/test_linalg.py | 61 32 + 29 - 0 !
numba/tests/test_mathlib.py | 2 1 + 1 - 0 !
numba/tests/test_np_functions.py | 12 7 + 5 - 0 !
setup.py | 2 1 + 1 - 0 !
12 files changed, 76 insertions(+), 66 deletions(-)

 [patch 01/13] cuda intrinsics tests: correct np.float -> np.float16

I believe this was written in error and should always have been float16.

python3.11/0011 Comment out all C level changes.patch | (download)

numba/_dispatcher.cpp | 188 94 + 94 - 0 !
numba/_helperlib.c | 8 4 + 4 - 0 !
numba/cpython/hashing.py | 2 1 + 1 - 0 !
3 files changed, 99 insertions(+), 99 deletions(-)

 comment out all c-level changes

This will make Numba compile against the Python 3.11 code-base and
C-level API. Note that some of the Numba functionality may not be
available as a result.

python3.11/0012 implement new Python 3.11 opcode RESUME.patch | (download)

numba/core/byteflow.py | 3 3 + 0 - 0 !
numba/core/interpreter.py | 3 3 + 0 - 0 !
2 files changed, 6 insertions(+)

 implement new python 3.11 opcode: resume

With Python 3.11 a new Bytecode has been introduced: `RESUME`.

The documentation states that:

```
RESUME has been added. It is a no-op. Performs internal tracing, debugging and optimization checks.
```

And so, this is implemented as a `NOP` (no-operation) in Numba.

python3.11/0013 bump max python version.patch | (download)

setup.py | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

 bump max python version

As title

python3.11/0014 Minimal changes to get a basic integer sum reduction.patch | (download)

numba/core/bytecode.py | 3 3 + 0 - 0 !
numba/core/byteflow.py | 48 43 + 5 - 0 !
numba/core/interpreter.py | 39 34 + 5 - 0 !
3 files changed, 80 insertions(+), 10 deletions(-)

 minimal changes to get a basic integer sum reduction for loop
 working in py3.11


python3.11/0015 Get more jump opcodes.patch | (download)

numba/core/byteflow.py | 3 3 + 0 - 0 !
numba/core/interpreter.py | 3 3 + 0 - 0 !
2 files changed, 6 insertions(+)

 get more jump opcodes


python3.11/0016 Ignore the NULL push from LOAD_GLOBAL.patch | (download)

numba/core/byteflow.py | 6 4 + 2 - 0 !
1 file changed, 4 insertions(+), 2 deletions(-)

 ignore the null push from load_global.

It's only used in CALL which checks if the TOS is a NULL.

python3.11/0017 Add more BACKWARD jump and PUSH_NULL.patch | (download)

numba/core/bytecode.py | 5 4 + 1 - 0 !
numba/core/byteflow.py | 13 12 + 1 - 0 !
numba/core/interpreter.py | 12 12 + 0 - 0 !
3 files changed, 28 insertions(+), 2 deletions(-)

 add more backward jump and push_null.


python3.11/0018 Fix backward jump offset.patch | (download)

numba/core/bytecode.py | 2 1 + 1 - 0 !
numba/core/byteflow.py | 1 0 + 1 - 0 !
2 files changed, 1 insertion(+), 2 deletions(-)

 fix backward jump offset


python3.11/0019 Support KW_NAMES and getting looplifting to work.patch | (download)

numba/core/byteflow.py | 27 25 + 2 - 0 !
numba/core/interpreter.py | 10 8 + 2 - 0 !
2 files changed, 33 insertions(+), 4 deletions(-)

 support kw_names and getting looplifting to work


python3.11/0020 Support RETURN_GENERATOR.patch | (download)

numba/core/byteflow.py | 27 27 + 0 - 0 !
numba/core/interpreter.py | 41 30 + 11 - 0 !
2 files changed, 57 insertions(+), 11 deletions(-)

 support return_generator


python3.11/0021 Don t dump CACHE bytecode.patch | (download)

numba/core/bytecode.py | 3 2 + 1 - 0 !
1 file changed, 2 insertions(+), 1 deletion(-)

 don't dump cache bytecode


python3.11/0022 Partially support MAKE_FUNCTION.patch | (download)

numba/core/byteflow.py | 5 4 + 1 - 0 !
numba/core/ir_utils.py | 2 2 + 0 - 0 !
2 files changed, 6 insertions(+), 1 deletion(-)

 partially support make_function

Not sure why MakeFunctionToJitFunction is picking up the <listcomp> in the failing test:

- numba.tests.test_looplifting.TestLoopLiftingInAction.test_lift_listcomp_block0

python3.11/0023 Leave comment about co_qualname changes in MAKE_FUNC.patch | (download)

numba/core/byteflow.py | 2 2 + 0 - 0 !
1 file changed, 2 insertions(+)

 leave comment about co_qualname changes in make_function


python3.11/0024 Support BEFORE_WITH.patch | (download)

numba/core/bytecode.py | 11 10 + 1 - 0 !
numba/core/byteflow.py | 24 24 + 0 - 0 !
numba/core/controlflow.py | 2 1 + 1 - 0 !
numba/core/interpreter.py | 17 17 + 0 - 0 !
numba/tests/test_withlifting.py | 3 3 + 0 - 0 !
5 files changed, 55 insertions(+), 2 deletions(-)

 support before_with


python3.11/0025 Support with lifting.patch | (download)

numba/core/bytecode.py | 21 17 + 4 - 0 !
numba/core/byteflow.py | 58 45 + 13 - 0 !
numba/core/interpreter.py | 62 54 + 8 - 0 !
numba/core/transforms.py | 4 1 + 3 - 0 !
4 files changed, 117 insertions(+), 28 deletions(-)

 support with-lifting

test_withlifting tests report errors=31, skipped=2, expected failures=2 out of 68 tests.
A lot of the tests are failing due to cloudpickle incompatibility.

python3.11/0026 Support JUMP_IS_NONE.patch | (download)

numba/core/byteflow.py | 6 6 + 0 - 0 !
numba/core/interpreter.py | 27 27 + 0 - 0 !
numba/tests/test_withlifting.py | 8 4 + 4 - 0 !
3 files changed, 37 insertions(+), 4 deletions(-)

 support jump_is_none


python3.11/0027 Upgrade cloudpickle to version v2.2.0.patch | (download)

numba/cloudpickle/__init__.py | 4 2 + 2 - 0 !
numba/cloudpickle/cloudpickle.py | 276 188 + 88 - 0 !
numba/cloudpickle/cloudpickle_fast.py | 163 116 + 47 - 0 !
numba/cloudpickle/compat.py | 7 6 + 1 - 0 !
4 files changed, 312 insertions(+), 138 deletions(-)

 upgrade cloudpickle to version v2.2.0

from commit
https://github.com/cloudpipe/cloudpickle/commit/f31859b1dd83fa691f4f7f797166b262c9acb8e7

python3.11/0028 Support py3.11 try except.patch | (download)

numba/core/bytecode.py | 5 3 + 2 - 0 !
numba/core/byteflow.py | 168 125 + 43 - 0 !
numba/core/interpreter.py | 95 86 + 9 - 0 !
numba/core/ir.py | 13 13 + 0 - 0 !
numba/core/lowering.py | 12 10 + 2 - 0 !
numba/core/runtime/context.py | 4 2 + 2 - 0 !
numba/core/transforms.py | 18 10 + 8 - 0 !
numba/core/typeinfer.py | 2 1 + 1 - 0 !
numba/tests/test_try_except.py | 1 1 + 0 - 0 !
9 files changed, 251 insertions(+), 67 deletions(-)

 support py3.11 try-except


python3.11/0029 Flake8 fixes.patch | (download)

numba/core/bytecode.py | 1 1 + 0 - 0 !
numba/core/byteflow.py | 22 13 + 9 - 0 !
numba/core/controlflow.py | 4 3 + 1 - 0 !
numba/core/interpreter.py | 5 2 + 3 - 0 !
numba/core/lowering.py | 4 3 + 1 - 0 !
5 files changed, 22 insertions(+), 14 deletions(-)

 flake8 fixes


python3.11/0030 More flake8 fix.patch | (download)

numba/core/typeinfer.py | 3 2 + 1 - 0 !
1 file changed, 2 insertions(+), 1 deletion(-)

 more flake8 fix


python3.11/0031 Fix older python.patch | (download)

numba/core/bytecode.py | 30 20 + 10 - 0 !
numba/core/byteflow.py | 106 67 + 39 - 0 !
2 files changed, 87 insertions(+), 49 deletions(-)

 fix older python


python3.11/0032 Temporarily disable compilation warnings.patch | (download)

buildscripts/incremental/build.sh | 11 6 + 5 - 0 !
1 file changed, 6 insertions(+), 5 deletions(-)

 temporarily disable compilation warnings


python3.11/0033 Unbreak python 3.11.patch | (download)

numba/core/byteflow.py | 105 69 + 36 - 0 !
numba/core/runtime/context.py | 6 4 + 2 - 0 !
numba/tests/test_withlifting.py | 4 0 + 4 - 0 !
3 files changed, 73 insertions(+), 42 deletions(-)

 unbreak python <3.11


python3.11/0034 Unbreak py3.10 builds.patch | (download)

numba/_dispatcher.cpp | 202 106 + 96 - 0 !
1 file changed, 106 insertions(+), 96 deletions(-)

 unbreak py3.10 builds


python3.11/0035 Fix py3.10 failure.patch | (download)

numba/core/interpreter.py | 44 26 + 18 - 0 !
1 file changed, 26 insertions(+), 18 deletions(-)

 fix py3.10 failure

failng test numba.tests.test_parfors.TestParforChunksizing.test_all_iterations_reset_chunksize

python3.11/0036 Restore 7388 fixes.patch | (download)

numba/cloudpickle/cloudpickle.py | 6 6 + 0 - 0 !
numba/cloudpickle/cloudpickle_fast.py | 5 5 + 0 - 0 !
2 files changed, 11 insertions(+)

 restore #7388 fixes


python3.11/0037 Fix try except in py 3.11.patch | (download)

numba/_helperlib.c | 13 12 + 1 - 0 !
numba/core/interpreter.py | 4 3 + 1 - 0 !
2 files changed, 15 insertions(+), 2 deletions(-)

 fix try except in py<3.11


python3.11/0038 Fix inplace op.patch | (download)

numba/core/interpreter.py | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

 fix inplace op


python3.11/0039 Fix hashing support in py 3.11.patch | (download)

numba/cpython/hashing.py | 4 3 + 1 - 0 !
1 file changed, 3 insertions(+), 1 deletion(-)

 fix hashing support in py<3.11


python3.11/0040 Skip testing by git diff for now.patch | (download)

buildscripts/incremental/test.sh | 4 2 + 2 - 0 !
1 file changed, 2 insertions(+), 2 deletions(-)

 skip testing by git diff for now


python3.11/0041 Fix CI test run.patch | (download)

buildscripts/incremental/test.sh | 22 12 + 10 - 0 !
1 file changed, 12 insertions(+), 10 deletions(-)

 fix ci test run


python3.11/0042 Copy in struct _frame from cpython 3.11 source code .patch | (download)

numba/_helperlib.c | 28 25 + 3 - 0 !
1 file changed, 25 insertions(+), 3 deletions(-)

 copy in struct _frame from cpython 3.11 source code to regain access
 to the f_lineno


python3.11/0043 Adds compiler warning for stub code.patch | (download)

numba/_dispatcher.cpp | 3 2 + 1 - 0 !
1 file changed, 2 insertions(+), 1 deletion(-)

 adds compiler warning for stub code


python3.11/0044 Use _FIXED_OFFSET instead of a inline literal number.patch | (download)

numba/core/bytecode.py | 5 4 + 1 - 0 !
1 file changed, 4 insertions(+), 1 deletion(-)

 use _fixed_offset instead of a inline literal number


python3.11/0045 Rename base ByteCode class to _ByteCode.patch | (download)

numba/core/bytecode.py | 6 4 + 2 - 0 !
1 file changed, 4 insertions(+), 2 deletions(-)

 rename base bytecode class to _bytecode


python3.11/0046 Apply some review suggestions in byteflow.py.patch | (download)

numba/core/byteflow.py | 17 9 + 8 - 0 !
1 file changed, 9 insertions(+), 8 deletions(-)

 apply some review suggestions in byteflow.py


python3.11/0047 Address reviews on byteflow.py.patch | (download)

numba/core/byteflow.py | 20 13 + 7 - 0 !
1 file changed, 13 insertions(+), 7 deletions(-)

 address reviews on byteflow.py


python3.11/0048 Make PYVERSION check more consistent.patch | (download)

numba/core/bytecode.py | 12 8 + 4 - 0 !
numba/core/byteflow.py | 52 35 + 17 - 0 !
numba/core/interpreter.py | 22 15 + 7 - 0 !
3 files changed, 58 insertions(+), 28 deletions(-)

 make pyversion check more consistent


python3.11/0049 Rewrite peep_hole_split_at_pop_block. so it does not.patch | (download)

numba/core/interpreter.py | 69 39 + 30 - 0 !
1 file changed, 39 insertions(+), 30 deletions(-)

 rewrite peep_hole_split_at_pop_block. so it does not mutate
 in-place, does better at assigning labels,
 and does better with multiple POP_BLOCK.


python3.11/0050 Address reviews in interpreter.py.patch | (download)

numba/core/interpreter.py | 84 48 + 36 - 0 !
1 file changed, 48 insertions(+), 36 deletions(-)

 address reviews in interpreter.py


python3.11/0051 Remove dead code StaticReraise.patch | (download)

numba/core/ir.py | 13 0 + 13 - 0 !
numba/core/lowering.py | 8 0 + 8 - 0 !
numba/core/typeinfer.py | 3 1 + 2 - 0 !
3 files changed, 1 insertion(+), 23 deletions(-)

 remove dead code: staticreraise


python3.11/0052 Address review in transforms.py.patch | (download)

numba/core/transforms.py | 4 2 + 2 - 0 !
1 file changed, 2 insertions(+), 2 deletions(-)

 address review in transforms.py


python3.11/0053 One more PYVERSION guard for newer versions.patch | (download)

numba/core/byteflow.py | 10 7 + 3 - 0 !
1 file changed, 7 insertions(+), 3 deletions(-)

 one more pyversion guard for newer versions


python3.11/0054 Apply suggestions from code review.patch | (download)

numba/core/interpreter.py | 5 2 + 3 - 0 !
numba/core/transforms.py | 2 1 + 1 - 0 !
2 files changed, 3 insertions(+), 4 deletions(-)

 apply suggestions from code review

Co-authored-by: stuartarchibald <stuartarchibald@users.noreply.github.com>

python3.11/0055 Fix arrayexprs for py3.11.patch | (download)

numba/np/ufunc/array_exprs.py | 24 23 + 1 - 0 !
1 file changed, 23 insertions(+), 1 deletion(-)

 [patch 01/14] fix arrayexprs for py3.11 - fixes all of
 numba.tests.test_array_exprs - fixes some of numba.tests.test_parfors


python3.11/0056 Fix LOAD_GLOBAL arg use in test_parfors for py3.11.patch | (download)

numba/tests/test_parfors.py | 22 17 + 5 - 0 !
1 file changed, 17 insertions(+), 5 deletions(-)

 [patch 02/14] fix load_global arg use in test_parfors for py3.11

otherwise, sometests may segfault

python3.11/0057 Move _fix_LOAD_GLOBAL arg to bytecode module and use it in _compute_used_globals.patch | (download)

numba/core/bytecode.py | 10 9 + 1 - 0 !
numba/tests/test_parfors.py | 7 1 + 6 - 0 !
2 files changed, 10 insertions(+), 7 deletions(-)

 [patch 03/14] move _fix_load_global_arg to bytecode module and use it
 in _compute_used_globals


python3.11/0058 Fix text_flow_control for py3.11.patch | (download)

numba/core/controlflow.py | 7 7 + 0 - 0 !
numba/tests/test_flow_control.py | 4 2 + 2 - 0 !
2 files changed, 9 insertions(+), 2 deletions(-)

 [patch 04/14] fix test_flow_control for py3.11


python3.11/0059 Not a py311 change stop printing source code.patch | (download)

numba/core/ir.py | 8 6 + 2 - 0 !
1 file changed, 6 insertions(+), 2 deletions(-)

 [patch 05/14] (not a py311 change) stop printing source code in
 errmsg when lineno is unavail