Skip to content

Add a pass to outline computations in a function #1828

Add a pass to outline computations in a function

Add a pass to outline computations in a function #1828

Triggered via pull request June 2, 2025 20:24
@majosmmajosm
synchronize #221
outlining
Status Failure
Total duration 11m 27s
Artifacts

ci.yml

on: pull_request
Matrix: downstream_tests
Fit to window
Zoom out
Zoom in

Annotations

5 errors and 53 warnings
basedpyright
Process completed with exit code 1.
basedpyright
2 errors
basedpyright: arraycontext/impl/pytato/outline.py#L189
Argument of type "(key: tuple[Any, ...], ary: Array) -> Array" cannot be assigned to parameter "f" of type "(tuple[SerializationKey, ...], ArrayT@rec_keyed_map_array_container) -> ArrayT@rec_keyed_map_array_container" in function "rec_keyed_map_array_container"   Type "(key: tuple[Any, ...], ary: Array) -> Array" is not assignable to type "(tuple[SerializationKey, ...], ArrayT@rec_keyed_map_array_container) -> ArrayT@rec_keyed_map_array_container"     Parameter 2: type "ArrayT@rec_keyed_map_array_container" is incompatible with type "Array"       "Array*" is not assignable to "Array"     Function return type "Array" is incompatible with type "ArrayT@rec_keyed_map_array_container"       Type "pytato.array.Array" is not assignable to type "arraycontext.context.Array"         "Array" is incompatible with protocol "Array"           "shape" is an incompatible type           "size" is an incompatible type ... (reportArgumentType)
basedpyright: arraycontext/impl/pytato/outline.py#L140
Argument of type "(keys: tuple[Any, ...], ary: Array) -> Array" cannot be assigned to parameter "f" of type "(tuple[SerializationKey, ...], ArrayT@rec_keyed_map_array_container) -> ArrayT@rec_keyed_map_array_container" in function "rec_keyed_map_array_container"   Type "(keys: tuple[Any, ...], ary: Array) -> Array" is not assignable to type "(tuple[SerializationKey, ...], ArrayT@rec_keyed_map_array_container) -> ArrayT@rec_keyed_map_array_container"     Parameter 2: type "ArrayT@rec_keyed_map_array_container" is incompatible with type "Array"       "Array*" is not assignable to "Array"     Function return type "Array" is incompatible with type "ArrayT@rec_keyed_map_array_container"       Type "pytato.array.Array" is not assignable to type "arraycontext.context.Array"         "Array" is incompatible with protocol "Array"           "shape" is an incompatible type           "size" is an incompatible type ... (reportArgumentType)
Mypy
Process completed with exit code 1.
Tests for downstream project mirgecom
No point in testing mirgecom at the moment, see https://github.com/illinois-ceesd/mirgecom/pull/898. Test not performed.
Tests for downstream project mirgecom_examples
No point in testing mirgecom at the moment, see https://github.com/illinois-ceesd/mirgecom/pull/898. Test not performed.
Ruff
The `python-version` input is not set. The version of Python currently in `PATH` will be used.
basedpyright: arraycontext/impl/pytato/compile.py#L308
"_ary_container_key_stringifier" is private and used outside of the module in which it is declared (reportPrivateUsage)
basedpyright: arraycontext/impl/pytato/compile.py#L173
"_verify_is_dag" is private and used outside of the module in which it is declared (reportPrivateUsage)
basedpyright: arraycontext/impl/pytato/__init__.py#L979
"_verify_is_dag" is private and used outside of the module in which it is declared (reportPrivateUsage)
basedpyright: arraycontext/impl/pytato/__init__.py#L973
Method "transform_dag" is not marked as override but is overriding a method in class "_BasePytatoArrayContext" (reportImplicitOverride)
basedpyright: arraycontext/impl/pytato/__init__.py#L902
"_ary_container_key_stringifier" is private and used outside of the module in which it is declared (reportPrivateUsage)
basedpyright: arraycontext/impl/pytato/__init__.py#L756
"_verify_is_dag" is private and used outside of the module in which it is declared (reportPrivateUsage)
basedpyright: arraycontext/impl/pytato/__init__.py#L587
"_verify_is_dag" is private and used outside of the module in which it is declared (reportPrivateUsage)
basedpyright: arraycontext/impl/pytato/__init__.py#L523
"_ary_container_key_stringifier" is private and used outside of the module in which it is declared (reportPrivateUsage)
basedpyright: arraycontext/impl/pytato/__init__.py#L239
Function calls and mutable objects not allowed within parameter default value expression (reportCallInDefaultInitializer)
basedpyright: arraycontext/context.py#L584
"id" is not accessed (reportUnusedParameter)
Pytest Conda Py3 Intel: .conda-root/envs/testing/lib/python3.13/site-packages/pyopencl/cache.py#L420
Non-empty compiler output encountered. Set the environment variable PYOPENCL_COMPILER_OUTPUT=1 to see more.
Pytest Conda Py3 Intel: .conda-root/envs/testing/lib/python3.13/site-packages/pyopencl/cache.py#L420
Non-empty compiler output encountered. Set the environment variable PYOPENCL_COMPILER_OUTPUT=1 to see more.
Pytest Conda Py3 Intel: .conda-root/envs/testing/lib/python3.13/site-packages/pytools/py_codegen.py#L119
Overwriting existing generated code in linecache: '<pyopencl invoker for 'minimum'>'.
Pytest Conda Py3 Intel: .conda-root/envs/testing/lib/python3.13/site-packages/pyopencl/cache.py#L420
Non-empty compiler output encountered. Set the environment variable PYOPENCL_COMPILER_OUTPUT=1 to see more.
Pytest Conda Py3 Intel: .conda-root/envs/testing/lib/python3.13/site-packages/pytools/py_codegen.py#L119
Overwriting existing generated code in linecache: '<pyopencl invoker for 'minimum'>'.
Pytest Conda Py3 Intel: .conda-root/envs/testing/lib/python3.13/site-packages/pyopencl/cache.py#L420
Non-empty compiler output encountered. Set the environment variable PYOPENCL_COMPILER_OUTPUT=1 to see more.
Pytest Conda Py3 Intel: .conda-root/envs/testing/lib/python3.13/site-packages/pyopencl/cache.py#L420
Non-empty compiler output encountered. Set the environment variable PYOPENCL_COMPILER_OUTPUT=1 to see more.
Pytest Conda Py3 Intel: .conda-root/envs/testing/lib/python3.13/site-packages/pyopencl/cache.py#L420
Non-empty compiler output encountered. Set the environment variable PYOPENCL_COMPILER_OUTPUT=1 to see more.
Pytest Conda Py3 Intel: .conda-root/envs/testing/lib/python3.13/site-packages/pyopencl/cache.py#L420
Non-empty compiler output encountered. Set the environment variable PYOPENCL_COMPILER_OUTPUT=1 to see more.
Pytest Conda Py3 Intel: .conda-root/envs/testing/lib/python3.13/site-packages/pyopencl/cache.py#L420
Non-empty compiler output encountered. Set the environment variable PYOPENCL_COMPILER_OUTPUT=1 to see more.
Pytest Conda Py3 POCL: .conda-root/envs/testing/lib/python3.13/site-packages/pytools/py_codegen.py#L119
Overwriting existing generated code in linecache: '<pyopencl invoker for 'if_positive'>'.
Pytest Conda Py3 POCL: .conda-root/envs/testing/lib/python3.13/site-packages/pytools/py_codegen.py#L119
Overwriting existing generated code in linecache: '<pyopencl invoker for 'scalar_comparison_kernel'>'.
Pytest Conda Py3 POCL: .conda-root/envs/testing/lib/python3.13/site-packages/pytools/py_codegen.py#L119
Overwriting existing generated code in linecache: '<pyopencl invoker for 'maximum'>'.
Pytest Conda Py3 POCL: .conda-root/envs/testing/lib/python3.13/site-packages/pytools/py_codegen.py#L119
Overwriting existing generated code in linecache: '<pyopencl invoker for 'maximum'>'.
Pytest Conda Py3 POCL: .conda-root/envs/testing/lib/python3.13/site-packages/pytools/py_codegen.py#L119
Overwriting existing generated code in linecache: '<pyopencl invoker for 'cdouble_conj_kernel'>'.
Pytest Conda Py3 POCL: .conda-root/envs/testing/lib/python3.13/site-packages/pytools/py_codegen.py#L119
Overwriting existing generated code in linecache: '<pyopencl invoker for 'cdouble_conj_kernel'>'.
Pytest Conda Py3 POCL: .conda-root/envs/testing/lib/python3.13/site-packages/pytools/py_codegen.py#L119
Overwriting existing generated code in linecache: '<pyopencl invoker for 'copy'>'.
Pytest Conda Py3 POCL: .conda-root/envs/testing/lib/python3.13/site-packages/pytools/py_codegen.py#L119
Overwriting existing generated code in linecache: '<pyopencl invoker for 'copy'>'.
Pytest Conda Py3 POCL: .conda-root/envs/testing/lib/python3.13/site-packages/pytools/py_codegen.py#L119
Overwriting existing generated code in linecache: '<pyopencl invoker for 'minimum'>'.
Pytest Conda Py3 POCL: .conda-root/envs/testing/lib/python3.13/site-packages/pytools/py_codegen.py#L119
Overwriting existing generated code in linecache: '<pyopencl invoker for 'minimum'>'.
Tests for downstream project grudge: grudge/.conda-root/envs/testing/lib/python3.13/site-packages/meshmode/dof_array.py#L75
'bcast_numpy_array=True' is deprecated and will be unsupported from 2025.
Tests for downstream project grudge: grudge/.conda-root/envs/testing/lib/python3.13/site-packages/meshmode/dof_array.py#L75
'bcast_numpy_array=True' is deprecated and will be unsupported from 2025.
Tests for downstream project grudge: grudge/.conda-root/envs/testing/lib/python3.13/site-packages/meshmode/dof_array.py#L75
Broadcasting array context array types across <class 'meshmode.dof_array.DOFArray'> has been implicitly enabled. As of 2026, this will no longer work. Use arraycontext.Bcast* object wrappers for roughly equivalent functionality. See the discussion in https://github.com/inducer/arraycontext/pull/190. To opt out now (and avoid this warning), pass _bcast_actx_array_type=False.
Tests for downstream project grudge: grudge/.conda-root/envs/testing/lib/python3.13/site-packages/meshmode/dof_array.py#L75
'bcast_numpy_array=True' is deprecated and will be unsupported from 2025.
Tests for downstream project grudge: grudge/test/test_reductions.py#L167
Broadcasting array context array types across <class 'test_reductions.MyContainer'> has been implicitly enabled. As of 2026, this will no longer work. Use arraycontext.Bcast* object wrappers for roughly equivalent functionality. See the discussion in https://github.com/inducer/arraycontext/pull/190. To opt out now (and avoid this warning), pass _bcast_actx_array_type=False.
Tests for downstream project grudge: grudge/test/test_reductions.py#L167
Broadcasting array context array types across <class 'test_reductions.MyContainer'> has been implicitly enabled. As of 2026, this will no longer work. Use arraycontext.Bcast* object wrappers for roughly equivalent functionality. See the discussion in https://github.com/inducer/arraycontext/pull/190. To opt out now (and avoid this warning), pass _bcast_actx_array_type=False.
Tests for downstream project grudge: grudge/.conda-root/envs/testing/lib/python3.13/site-packages/meshmode/dof_array.py#L75
Broadcasting array context array types across <class 'meshmode.dof_array.DOFArray'> has been implicitly enabled. As of 2026, this will no longer work. Use arraycontext.Bcast* object wrappers for roughly equivalent functionality. See the discussion in https://github.com/inducer/arraycontext/pull/190. To opt out now (and avoid this warning), pass _bcast_actx_array_type=False.
Tests for downstream project grudge: grudge/.conda-root/envs/testing/lib/python3.13/site-packages/meshmode/dof_array.py#L75
Broadcasting array context array types across <class 'meshmode.dof_array.DOFArray'> has been implicitly enabled. As of 2026, this will no longer work. Use arraycontext.Bcast* object wrappers for roughly equivalent functionality. See the discussion in https://github.com/inducer/arraycontext/pull/190. To opt out now (and avoid this warning), pass _bcast_actx_array_type=False.
Tests for downstream project grudge: grudge/.conda-root/envs/testing/lib/python3.13/site-packages/meshmode/dof_array.py#L75
'bcast_numpy_array=True' is deprecated and will be unsupported from 2025.
Tests for downstream project grudge: grudge/.conda-root/envs/testing/lib/python3.13/site-packages/meshmode/dof_array.py#L75
'bcast_numpy_array=True' is deprecated and will be unsupported from 2025.
Tests for downstream project meshmode: meshmode/test/test_array.py#L55
'bcast_obj_array' is deprecated and will be unsupported from 2025. Use 'bcasts_across_obj_array', with equivalent meaning.
Tests for downstream project meshmode: meshmode/test/test_array.py#L55
'bcast_obj_array' is deprecated and will be unsupported from 2025. Use 'bcasts_across_obj_array', with equivalent meaning.
Tests for downstream project meshmode: meshmode/meshmode/dof_array.py#L75
Broadcasting array context array types across <class 'meshmode.dof_array.DOFArray'> has been implicitly enabled. As of 2026, this will no longer work. Use arraycontext.Bcast* object wrappers for roughly equivalent functionality. See the discussion in https://github.com/inducer/arraycontext/pull/190. To opt out now (and avoid this warning), pass _bcast_actx_array_type=False.::warning file=/home/runner/work/arraycontext/arraycontext/meshmode/meshmode/dof_array.py,line=75::Broadcasting array context array types across <class 'meshmode.dof_array.DOFArray'> has been implicitly enabled. As of 2026, this will no longer work. Use arraycontext.Bcast* object wrappers for roughly equivalent functionality. See the discussion in https://github.com/inducer/arraycontext/pull/190. To opt out now (and avoid this warning), pass _bcast_actx_array_type=False.
Tests for downstream project meshmode: meshmode/meshmode/dof_array.py#L75
'bcast_numpy_array=True' is deprecated and will be unsupported from 2025.
Tests for downstream project meshmode: meshmode/meshmode/dof_array.py#L75
'bcast_numpy_array=True' is deprecated and will be unsupported from 2025.
Tests for downstream project meshmode: meshmode/meshmode/dof_array.py#L75
Broadcasting array context array types across <class 'meshmode.dof_array.DOFArray'> has been implicitly enabled. As of 2026, this will no longer work. Use arraycontext.Bcast* object wrappers for roughly equivalent functionality. See the discussion in https://github.com/inducer/arraycontext/pull/190. To opt out now (and avoid this warning), pass _bcast_actx_array_type=False.
Tests for downstream project meshmode: meshmode/meshmode/dof_array.py#L75
'bcast_numpy_array=True' is deprecated and will be unsupported from 2025.
Tests for downstream project meshmode: meshmode/test/test_array.py#L55
'bcast_obj_array' is deprecated and will be unsupported from 2025. Use 'bcasts_across_obj_array', with equivalent meaning.
Tests for downstream project meshmode: meshmode/meshmode/dof_array.py#L75
Broadcasting array context array types across <class 'meshmode.dof_array.DOFArray'> has been implicitly enabled. As of 2026, this will no longer work. Use arraycontext.Bcast* object wrappers for roughly equivalent functionality. See the discussion in https://github.com/inducer/arraycontext/pull/190. To opt out now (and avoid this warning), pass _bcast_actx_array_type=False.
Tests for downstream project meshmode: meshmode/meshmode/dof_array.py#L75
'bcast_numpy_array=True' is deprecated and will be unsupported from 2025.