Skip to content

Add a pass to outline computations in a function #1878

Add a pass to outline computations in a function

Add a pass to outline computations in a function #1878

Triggered via pull request June 30, 2025 19:27
@inducerinducer
synchronize #221
outlining
Status Failure
Total duration 11m 35s
Artifacts

ci.yml

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

Annotations

10 errors and 49 warnings
basedpyright: arraycontext/impl/pytato/outline.py#L198
No overloads for "rec_keyed_map_array_container" match the provided arguments (reportCallIssue)
basedpyright: arraycontext/impl/pytato/outline.py#L174
Argument of type "(key: tuple[object, ...], ary: ArrayT@_unpack_container) -> ArrayT@_unpack_container" cannot be assigned to parameter "f" of type "(tuple[SerializationKey, ...], ArrayOrScalar) -> ArrayOrScalar" in function "rec_keyed_map_array_container"   Type "(key: tuple[object, ...], ary: ArrayT@_unpack_container) -> ArrayT@_unpack_container" is not assignable to type "(tuple[SerializationKey, ...], ArrayOrScalar) -> ArrayOrScalar"     Parameter 2: type "ArrayOrScalar" is incompatible with type "ArrayT@_unpack_container"       Type "ArrayOrScalar" is not assignable to type "Array"         Type "ArrayOrScalar" is not assignable to type "Array"           "complex" is incompatible with protocol "Array" (reportArgumentType)
basedpyright: arraycontext/impl/pytato/outline.py#L174
No overloads for "rec_keyed_map_array_container" match the provided arguments (reportCallIssue)
basedpyright: arraycontext/impl/pytato/outline.py#L155
Argument of type "object" cannot be assigned to parameter "arg" of type "ArrayOrContainer | Scalar | None" in function "get_placeholder_replacement"   Type "object" is not assignable to type "ArrayOrContainer | Scalar | None"     "object" is incompatible with protocol "Array"       "shape" is not present       "size" is not present       "__len__" is not present       "dtype" is not present       "__getitem__" is not present       "__neg__" is not present ... (reportArgumentType)
basedpyright: arraycontext/impl/pytato/outline.py#L153
Argument of type "object" cannot be assigned to parameter "arg" of type "ArrayOrContainer | Scalar | None" in function "get_placeholder_replacement"   Type "object" is not assignable to type "ArrayOrContainer | Scalar | None"     "object" is incompatible with protocol "Array"       "shape" is not present       "size" is not present       "__len__" is not present       "dtype" is not present       "__getitem__" is not present       "__neg__" is not present ... (reportArgumentType)
basedpyright: arraycontext/impl/pytato/outline.py#L149
Argument of type "(keys: tuple[object, ...], ary: Array) -> Array" cannot be assigned to parameter "f" of type "(tuple[SerializationKey, ...], ArrayOrScalar) -> ArrayOrScalar" in function "rec_keyed_map_array_container"   Type "(keys: tuple[object, ...], ary: Array) -> Array" is not assignable to type "(tuple[SerializationKey, ...], ArrayOrScalar) -> ArrayOrScalar"     Parameter 2: type "ArrayOrScalar" is incompatible with type "Array"       Type "ArrayOrScalar" is not assignable to type "Array"         "complex" is incompatible with protocol "Array"           "shape" is not present           "size" is not present           "__len__" is not present           "dtype" is not present ... (reportArgumentType)
basedpyright: arraycontext/impl/pytato/outline.py#L149
No overloads for "rec_keyed_map_array_container" match the provided arguments (reportCallIssue)
basedpyright: arraycontext/impl/pytato/outline.py#L85
Argument of type "object" cannot be assigned to parameter "ary" of type "ArrayOrContainerOrScalar" in function "rec_keyed_map_array_container"   Type "object" is not assignable to type "ArrayOrContainerOrScalar"     "object" is incompatible with protocol "Array"       "shape" is not present       "size" is not present       "__len__" is not present       "dtype" is not present       "__getitem__" is not present       "__neg__" is not present ... (reportArgumentType)
basedpyright: arraycontext/impl/pytato/outline.py#L85
Argument of type "(keys: tuple[object, ...], ary: ArrayT@id_collector) -> ArrayT@id_collector" cannot be assigned to parameter "f" of type "(tuple[SerializationKey, ...], ArrayOrScalar) -> ArrayOrScalar" in function "rec_keyed_map_array_container"   Type "(keys: tuple[object, ...], ary: ArrayT@id_collector) -> ArrayT@id_collector" is not assignable to type "(tuple[SerializationKey, ...], ArrayOrScalar) -> ArrayOrScalar"     Parameter 2: type "ArrayOrScalar" is incompatible with type "ArrayT@id_collector"       Type "ArrayOrScalar" is not assignable to type "Array"         Type "ArrayOrScalar" is not assignable to type "Array"           "complex" is incompatible with protocol "Array" (reportArgumentType)
basedpyright: arraycontext/impl/pytato/outline.py#L85
No overloads for "rec_keyed_map_array_container" match the provided arguments (reportCallIssue)
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: test/test_arraycontext.py#L1213
Unnecessary "# pyright: ignore" rule: "reportAttributeAccessIssue" (reportUnnecessaryTypeIgnoreComment)
basedpyright: test/test_arraycontext.py#L1212
Unnecessary "# pyright: ignore" rule: "reportAttributeAccessIssue" (reportUnnecessaryTypeIgnoreComment)
basedpyright: test/test_arraycontext.py#L1211
Unnecessary "# pyright: ignore" rule: "reportAttributeAccessIssue" (reportUnnecessaryTypeIgnoreComment)
basedpyright: test/test_arraycontext.py#L1210
Unnecessary "# pyright: ignore" rule: "reportAttributeAccessIssue" (reportUnnecessaryTypeIgnoreComment)
basedpyright: arraycontext/impl/pytato/outline.py#L198
Return type is unknown (reportUnknownVariableType)
basedpyright: arraycontext/impl/pytato/outline.py#L149
Return type is unknown (reportUnknownVariableType)
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 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/islpy/_monkeypatch.py#L569
BasicSet.foreach_basic_set with implicit conversion of self to Set is deprecated and will stop working in 2026. Explicitly convert to Set, using .to_set().
Pytest Conda Py3 POCL: .conda-root/envs/testing/lib/python3.13/site-packages/pytato/target/loopy/codegen.py#L884
Aff.le_set with implicit conversion of self to PwAff is deprecated and will stop working in 2026. Explicitly convert to PwAff, using .to_pw_aff().
Pytest Conda Py3 POCL: .conda-root/envs/testing/lib/python3.13/site-packages/islpy/_monkeypatch.py#L569
BasicSet.foreach_basic_set with implicit conversion of self to Set is deprecated and will stop working in 2026. Explicitly convert to Set, using .to_set().
Pytest Conda Py3 POCL: .conda-root/envs/testing/lib/python3.13/site-packages/pytato/target/loopy/codegen.py#L884
Aff.le_set with implicit conversion of self to PwAff is deprecated and will stop working in 2026. Explicitly convert to PwAff, using .to_pw_aff().
Pytest Conda Py3 POCL: .conda-root/envs/testing/lib/python3.13/site-packages/islpy/_monkeypatch.py#L569
BasicSet.foreach_basic_set with implicit conversion of self to Set is deprecated and will stop working in 2026. Explicitly convert to Set, using .to_set().
Pytest Conda Py3 POCL: .conda-root/envs/testing/lib/python3.13/site-packages/pytato/target/loopy/codegen.py#L884
Aff.le_set with implicit conversion of self to PwAff is deprecated and will stop working in 2026. Explicitly convert to PwAff, using .to_pw_aff().
Pytest Conda Py3 POCL: .conda-root/envs/testing/lib/python3.13/site-packages/islpy/_monkeypatch.py#L569
BasicSet.foreach_basic_set with implicit conversion of self to Set is deprecated and will stop working in 2026. Explicitly convert to Set, using .to_set().
Pytest Conda Py3 POCL: .conda-root/envs/testing/lib/python3.13/site-packages/pytato/target/loopy/codegen.py#L884
Aff.le_set with implicit conversion of self to PwAff is deprecated and will stop working in 2026. Explicitly convert to PwAff, using .to_pw_aff().
Pytest Conda Py3 POCL: .conda-root/envs/testing/lib/python3.13/site-packages/islpy/_monkeypatch.py#L569
BasicSet.foreach_basic_set with implicit conversion of self to Set is deprecated and will stop working in 2026. Explicitly convert to Set, using .to_set().
Pytest Conda Py3 POCL: .conda-root/envs/testing/lib/python3.13/site-packages/pytato/target/loopy/codegen.py#L884
Aff.le_set with implicit conversion of self to PwAff is deprecated and will stop working in 2026. Explicitly convert to PwAff, using .to_pw_aff().
Tests for downstream project grudge: grudge/.conda-root/envs/testing/lib/python3.13/site-packages/meshmode/dof_array.py#L79
'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/.conda-root/envs/testing/lib/python3.13/site-packages/meshmode/dof_array.py#L79
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#L79
'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/.conda-root/envs/testing/lib/python3.13/site-packages/meshmode/dof_array.py#L79
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#L79
'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/.conda-root/envs/testing/lib/python3.13/site-packages/meshmode/dof_array.py#L79
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#L79
'bcast_numpy_array=True' is deprecated and will be unsupported from 2025.
Tests for downstream project meshmode: meshmode/test/test_array.py#L59
'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#L79
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/test/test_array.py,line=59::'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#L79
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#L79
'bcast_numpy_array=True' is deprecated and will be unsupported from 2025.::warning file=/home/runner/work/arraycontext/arraycontext/meshmode/test/test_array.py,line=59::'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#L79
'bcast_numpy_array=True' is deprecated and will be unsupported from 2025.
Tests for downstream project meshmode: meshmode/meshmode/dof_array.py#L79
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#L79
'bcast_numpy_array=True' is deprecated and will be unsupported from 2025.
Tests for downstream project meshmode: meshmode/test/test_array.py#L59
'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#L79
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#L79
'bcast_numpy_array=True' is deprecated and will be unsupported from 2025.