Skip to content

Enable CALL_FUNCTION_EX fix for py3.11 - #8902

Merged
sklam merged 2 commits into
numba:mainfrom
sklam:fix/iss8900
Apr 24, 2023
Merged

sklam merged 2 commits into
numba:mainfrom
sklam:fix/iss8900

Conversation

@sklam

@sklam sklam commented Apr 14, 2023

Copy link
Copy Markdown
Member

Tests were originally from #7866

Fix #8900

@sklam
sklam marked this pull request as ready for review April 17, 2023 13:43
@sklam
sklam requested a review from stuartarchibald as a code owner April 17, 2023 13:43
@sklam sklam added this to the Numba 0.57 final milestone Apr 17, 2023

@stuartarchibald stuartarchibald left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the patch, the proposed changes make sense as a fix for #8900. The area of Python/compile.c in the CPython source that deals with CALL_FUNCTION_EX has changed slightly between 3.10 and 3.11 but just on inspection it doesn't look like anything has changed that would significantly alter bytecode emission with respect to what Numba is interested in. A spot check of the disassembled bytecode from calling functions with large numbers of kwargs suggests similar, i.e. no significant change that would impact the peephole optimiser that fixes up the bytecode for Numba post 3.10. Also, the tests being re-enabled are extensive with respect to the bytecode patterns that can be generated and that they are passing gives further confidence.

@stuartarchibald stuartarchibald added Pending BuildFarm For PRs that have been reviewed but pending a push through our buildfarm 4 - Waiting on CI Review etc done, waiting for CI to finish and removed 3 - Ready for Review labels Apr 18, 2023
@sklam

sklam commented Apr 18, 2023

Copy link
Copy Markdown
Member Author

BFID numba_pynext_cpu_yaml_20

@sklam sklam changed the title Enable CALL_FUNCTION_EX test for py3.11 Enable CALL_FUNCTION_EX fix for py3.11 Apr 18, 2023
@stuartarchibald

Copy link
Copy Markdown
Contributor

BFID numba_pynext_cpu_yaml_20

Passed.

@stuartarchibald stuartarchibald added BuildFarm Passed For PRs that have been through the buildfarm and passed and removed Pending BuildFarm For PRs that have been reviewed but pending a push through our buildfarm labels Apr 19, 2023
@stuartarchibald

Copy link
Copy Markdown
Contributor

Manual check of reproducer in #8900 also passes.

@stuartarchibald stuartarchibald added 5 - Ready to merge Review and testing done, is ready to merge and removed 4 - Waiting on CI Review etc done, waiting for CI to finish labels Apr 19, 2023
@stuartarchibald stuartarchibald self-assigned this Apr 19, 2023
@sklam
sklam merged commit f313df1 into numba:main Apr 24, 2023
sklam added a commit to sklam/numba that referenced this pull request Apr 25, 2023
Enable CALL_FUNCTION_EX fix for py3.11
esc added a commit to esc/numba that referenced this pull request Jun 28, 2023
```
 💣 zsh» git --no-pager log -1 --decorate --oneline
04e8107 (HEAD -> release0.57, tag: 0.57.1, origin/release0.57) Merge pull request numba#9026 from esc/change_log_etc_0.57.1

 💣 zsh» git --no-pager log -1 --decorate --oneline main
82d3cbb (origin/main, origin/HEAD, main) Merge pull request numba#8911 from guilhermeleobas/guilhermeleobas/remoeisinstance-feat-warn

 💣 zsh» git --no-pager diff main -- CHANGE_LOG docs/source/user/installing.rst
diff --git c/CHANGE_LOG w/CHANGE_LOG
index 8e57301..7efe83d 100644
--- c/CHANGE_LOG
+++ w/CHANGE_LOG
@@ -1,3 +1,30 @@
+Version 0.57.1 (21 June, 2023)
+------------------------------
+
+Pull-Requests:
+
+* PR `numba#8964 <https://github.com/numba/numba/pull/8964>`_: fix missing nopython keyword in cuda random module (`esc <https://github.com/esc>`_)
+* PR `numba#8965 <https://github.com/numba/numba/pull/8965>`_: fix return dtype for np.angle (`guilhermeleobas <https://github.com/guilhermeleobas>`_ `esc <https://github.com/esc>`_)
+* PR `numba#8982 <https://github.com/numba/numba/pull/8982>`_: Don't do the parfor diagnostics pass for the parfor gufunc. (`DrTodd13 <https://github.com/DrTodd13>`_)
+* PR `numba#8996 <https://github.com/numba/numba/pull/8996>`_: adding a test for 8940 (`esc <https://github.com/esc>`_)
+* PR `numba#8958 <https://github.com/numba/numba/pull/8958>`_: resurrect the import, this time in the registry initialization (`esc <https://github.com/esc>`_)
+* PR `numba#8947 <https://github.com/numba/numba/pull/8947>`_: Introduce internal _isinstance_no_warn (`guilhermeleobas <https://github.com/guilhermeleobas>`_ `esc <https://github.com/esc>`_)
+* PR `numba#8998 <https://github.com/numba/numba/pull/8998>`_: Fix 8939 (second attempt) (`esc <https://github.com/esc>`_)
+* PR `numba#8978 <https://github.com/numba/numba/pull/8978>`_: Import MVC packages when using MVCLinker. (`bdice <https://github.com/bdice>`_)
+* PR `numba#8895 <https://github.com/numba/numba/pull/8895>`_: CUDA: Enable caching functions that use CG (`gmarkall <https://github.com/gmarkall>`_)
+* PR `numba#8976 <https://github.com/numba/numba/pull/8976>`_: Fix index URL for ptxcompiler/cubinlinker packages. (`bdice <https://github.com/bdice>`_)
+* PR `numba#9004 <https://github.com/numba/numba/pull/9004>`_: Skip MVC test when libraries unavailable (`gmarkall <https://github.com/gmarkall>`_ `esc <https://github.com/esc>`_)
+* PR `numba#9006 <https://github.com/numba/numba/pull/9006>`_: link to version support table instead of using explicit versions (`esc <https://github.com/esc>`_)
+* PR `numba#9005 <https://github.com/numba/numba/pull/9005>`_: Fix: Issue numba#8923 - avoid spurious device-to-host transfers in CUDA ufuncs (`gmarkall <https://github.com/gmarkall>`_)
+
+
+Authors:
+
+* `bdice <https://github.com/bdice>`_
+* `DrTodd13 <https://github.com/DrTodd13>`_
+* `esc <https://github.com/esc>`_
+* `gmarkall <https://github.com/gmarkall>`_
+
 Version 0.57.0 (1 May, 2023)
 ----------------------------

@@ -395,6 +422,7 @@ Pull-Requests:
 * PR `numba#8879 <https://github.com/numba/numba/pull/8879>`_: Remove use of ``compile_isolated`` from generator tests. (`stuartarchibald <https://github.com/stuartarchibald>`_)
 * PR `numba#8880 <https://github.com/numba/numba/pull/8880>`_: Fix missing dependency guard on pyyaml in ``test_azure_config``. (`stuartarchibald <https://github.com/stuartarchibald>`_)
 * PR `numba#8881 <https://github.com/numba/numba/pull/8881>`_: Replace use of compile_isolated in test_obj_lifetime (`sklam <https://github.com/sklam>`_)
+* PR `numba#8884 <https://github.com/numba/numba/pull/8884>`_: Pin llvmlite and NumPy on release branch (`sklam <https://github.com/sklam>`_)
 * PR `numba#8887 <https://github.com/numba/numba/pull/8887>`_: Update PyPI supported version tags (`bryant1410 <https://github.com/bryant1410>`_)
 * PR `numba#8896 <https://github.com/numba/numba/pull/8896>`_: Remove codecov install (now deleted from PyPI) (`gmarkall <https://github.com/gmarkall>`_)
 * PR `numba#8902 <https://github.com/numba/numba/pull/8902>`_: Enable CALL_FUNCTION_EX fix for py3.11 (`sklam <https://github.com/sklam>`_)
diff --git c/docs/source/user/installing.rst w/docs/source/user/installing.rst
index 72307ac..a83c4fd 100644
--- c/docs/source/user/installing.rst
+++ w/docs/source/user/installing.rst
@@ -262,6 +262,8 @@ information.
 +----------++--------------+---------------------------+----------------------------+------------------------------+-------------------+-----------------------------+
 | Numba     | Release date | Python                    | NumPy                      | llvmlite                     | LLVM              | TBB                         |
 +===========+==============+===========================+============================+==============================+===================+=============================+
+| 0.57.1    | 2023-06-21   | 3.8.x <= version < 3.12   | 1.21 <= version < 1.25     | 0.40.x                       | 14.x              | 2021.6 <= version           |
++-----------+--------------+---------------------------+----------------------------+------------------------------+-------------------+-----------------------------+
 | 0.57.0    | 2023-05-01   | 3.8.x <= version < 3.12   | 1.21 <= version < 1.25     | 0.40.x                       | 14.x              | 2021.6 <= version           |
 +-----------+--------------+---------------------------+----------------------------+------------------------------+-------------------+-----------------------------+
 | 0.56.4    | 2022-11-03   | 3.7.x <= version < 3.11   | 1.18 <= version < 1.24     | 0.39.x                       | 11.x              | 2021.x                      |
```
@sklam
sklam deleted the fix/iss8900 branch July 27, 2023 21:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

5 - Ready to merge Review and testing done, is ready to merge BuildFarm Passed For PRs that have been through the buildfarm and passed Effort - medium Medium size effort needed

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0.57.0rc1 UnsupportedError when number of keyword arguments in CALL_FUNCTION_EX is 16 or more

2 participants