Skip to content

Improve kernel type annotations #1730

Improve kernel type annotations

Improve kernel type annotations #1730

Triggered via pull request September 9, 2025 13:39
Status Cancelled
Total duration 23m 0s
Artifacts

ci.yml

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

Annotations

44 errors and 42 warnings
Conda Examples
Process completed with exit code 1.
basedpyright: test/test_cse.py#L359
"__getitem__" method not defined on type "Basic" (reportIndexIssue)
basedpyright: test/test_cse.py#L359
"__getitem__" method not defined on type "Basic" (reportIndexIssue)
basedpyright: test/test_cse.py#L359
"__getitem__" method not defined on type "Basic" (reportIndexIssue)
basedpyright: sumpy/kernel.py#L1483
Argument of type "dict[tuple[int, ...], Expr]" cannot be assigned to parameter "derivative_coeff_dict" of type "DerivativeCoeffDict" in function "__init__"   "dict[tuple[int, ...], Expr]" is not assignable to "dict[tuple[int, ...], int | float | complex | Expr]"     Type parameter "_VT@dict" is invariant, but "Expr" is not the same as "int | float | complex | Expr"     Consider switching from "dict" to "Mapping" which is covariant in the value type (reportArgumentType)
basedpyright: sumpy/kernel.py#L731
Type "Expr" is not assignable to return type "LinearPDESystemOperator"   "Expr" is not assignable to "LinearPDESystemOperator" (reportReturnType)
basedpyright: sumpy/kernel.py#L644
Type "Expr" is not assignable to return type "LinearPDESystemOperator"   "Expr" is not assignable to "LinearPDESystemOperator" (reportReturnType)
basedpyright: sumpy/expansion/level_to_order.py#L58
"l3dterms" is unknown import symbol (reportAttributeAccessIssue)
basedpyright: sumpy/expansion/level_to_order.py#L57
"l2dterms" is unknown import symbol (reportAttributeAccessIssue)
basedpyright: sumpy/expansion/level_to_order.py#L56
"h3dterms" is unknown import symbol (reportAttributeAccessIssue)
basedpyright: sumpy/expansion/level_to_order.py#L55
"h2dterms" is unknown import symbol (reportAttributeAccessIssue)
Tests for downstream project pytential: pytential/test/test/test_layer_pot.py#L553
test_3d_jump_relations[<PyOpenCLArrayContext for <pyopencl.Device 'cpu-haswell-AMD EPYC 7763 64-Core Processor' on 'Portable Computing Language'>>-sp] NotImplementedError: 'replace_base_kernel' is not implemented for 'AxisTargetDerivative'
Tests for downstream project pytential: pytential/test/test/test_layer_pot.py#L429
test_unregularized_off_surface_fmm_vs_direct[<PyOpenCLArrayContext for <pyopencl.Device 'cpu-haswell-AMD EPYC 7763 64-Core Processor' on 'Portable Computing Language'>>] TypeError: DirectionalDerivative.__init__() got an unexpected keyword argument 'dim'
Tests for downstream project pytential: pytential/test/test/test_layer_pot.py#L285
test_single_plus_double_with_single_fmm[<PyOpenCLArrayContext for <pyopencl.Device 'cpu-haswell-AMD EPYC 7763 64-Core Processor' on 'Portable Computing Language'>>] TypeError: DirectionalDerivative.__init__() got an unexpected keyword argument 'dim'
Tests for downstream project pytential: pytential/test/test/test_beltrami.py#L237
test_beltrami_convergence[<PyOpenCLArrayContext for <pyopencl.Device 'cpu-haswell-AMD EPYC 7763 64-Core Processor' on 'Portable Computing Language'>>-operator3-solution3] TypeError: DirectionalDerivative.__init__() got an unexpected keyword argument 'dim'
Tests for downstream project pytential: pytential/test/test/test_layer_pot.py#L200
test_off_surface_eval_vs_direct[<PyOpenCLArrayContext for <pyopencl.Device 'cpu-haswell-AMD EPYC 7763 64-Core Processor' on 'Portable Computing Language'>>] TypeError: DirectionalDerivative.__init__() got an unexpected keyword argument 'dim'
Tests for downstream project pytential: pytential/test/test/test_beltrami.py#L237
test_beltrami_convergence[<PyOpenCLArrayContext for <pyopencl.Device 'cpu-haswell-AMD EPYC 7763 64-Core Processor' on 'Portable Computing Language'>>-operator2-solution2] TypeError: DirectionalDerivative.__init__() got an unexpected keyword argument 'dim'
Tests for downstream project pytential: pytential/test/test/test_beltrami.py#L237
test_beltrami_convergence[<PyOpenCLArrayContext for <pyopencl.Device 'cpu-haswell-AMD EPYC 7763 64-Core Processor' on 'Portable Computing Language'>>-operator1-solution1] TypeError: DirectionalDerivative.__init__() got an unexpected keyword argument 'dim'
Tests for downstream project pytential: pytential/test/test/test_layer_pot.py#L127
test_off_surface_eval[<PyOpenCLArrayContext for <pyopencl.Device 'cpu-haswell-AMD EPYC 7763 64-Core Processor' on 'Portable Computing Language'>>-False] TypeError: DirectionalDerivative.__init__() got an unexpected keyword argument 'dim'
Tests for downstream project pytential: pytential/test/test/test_beltrami.py#L237
test_beltrami_convergence[<PyOpenCLArrayContext for <pyopencl.Device 'cpu-haswell-AMD EPYC 7763 64-Core Processor' on 'Portable Computing Language'>>-operator0-solution0] TypeError: DirectionalDerivative.__init__() got an unexpected keyword argument 'dim'
Tests for downstream project pytential: pytential/test/test/test_layer_pot.py#L127
test_off_surface_eval[<PyOpenCLArrayContext for <pyopencl.Device 'cpu-haswell-AMD EPYC 7763 64-Core Processor' on 'Portable Computing Language'>>-True] TypeError: DirectionalDerivative.__init__() got an unexpected keyword argument 'dim'
Conda Pytest: test/test/test_kernels.py#L306
test_p2e2p[<PyOpenCLArrayContext for <pyopencl.Device 'cpu-haswell-AMD EPYC 7763 64-Core Processor' on 'Portable Computing Language'>>-False-base_knl0-VolumeTaylorLocalExpansion-4] TypeError: AxisTargetDerivative.__init__() got an unexpected keyword argument 'dim'
Conda Pytest: test/test/test_kernels.py#L194
test_p2e_multiple[<PyOpenCLArrayContext for <pyopencl.Device 'cpu-haswell-AMD EPYC 7763 64-Core Processor' on 'Portable Computing Language'>>-base_knl1-LinearPDEConformingVolumeTaylorMultipoleExpansion] TypeError: DirectionalDerivative.__init__() got an unexpected keyword argument 'dim'
Conda Pytest: test/test/test_kernels.py#L194
test_p2e_multiple[<PyOpenCLArrayContext for <pyopencl.Device 'cpu-haswell-AMD EPYC 7763 64-Core Processor' on 'Portable Computing Language'>>-base_knl0-LinearPDEConformingVolumeTaylorLocalExpansion] TypeError: DirectionalDerivative.__init__() got an unexpected keyword argument 'dim'
Conda Pytest: test/test/test_kernels.py#L84
test_p2p[<PyOpenCLArrayContext for <pyopencl.Device 'cpu-haswell-AMD EPYC 7763 64-Core Processor' on 'Portable Computing Language'>>-False] TypeError: AxisTargetDerivative.__init__() got an unexpected keyword argument 'dim'
Conda Pytest: test/test/test_kernels.py#L84
test_p2p[<PyOpenCLArrayContext for <pyopencl.Device 'cpu-haswell-AMD EPYC 7763 64-Core Processor' on 'Portable Computing Language'>>-True] TypeError: AxisTargetDerivative.__init__() got an unexpected keyword argument 'dim'
Conda Pytest: test/test/test_fmm.py#L699
test_sumpy_target_point_multiplier[<PyOpenCLArrayContext for <pyopencl.Device 'cpu-haswell-AMD EPYC 7763 64-Core Processor' on 'Portable Computing Language'>>-deriv_axes2] TypeError: TargetPointMultiplier.__init__() got an unexpected keyword argument 'dim'
Conda Pytest: test/test/test_fmm.py#L699
test_sumpy_target_point_multiplier[<PyOpenCLArrayContext for <pyopencl.Device 'cpu-haswell-AMD EPYC 7763 64-Core Processor' on 'Portable Computing Language'>>-deriv_axes1] TypeError: TargetPointMultiplier.__init__() got an unexpected keyword argument 'dim'
Conda Pytest: test/test/test_fmm.py#L699
test_sumpy_target_point_multiplier[<PyOpenCLArrayContext for <pyopencl.Device 'cpu-haswell-AMD EPYC 7763 64-Core Processor' on 'Portable Computing Language'>>-deriv_axes0] TypeError: TargetPointMultiplier.__init__() got an unexpected keyword argument 'dim'
Conda Pytest: test/test/test_fmm.py#L630
test_sumpy_axis_source_derivative[<PyOpenCLArrayContext for <pyopencl.Device 'cpu-haswell-AMD EPYC 7763 64-Core Processor' on 'Portable Computing Language'>>] TypeError: AxisTargetDerivative.__init__() got an unexpected keyword argument 'dim'
Conda Pytest: test/test/test_fmm.py#L427
test_unified_single_and_double[<PyOpenCLArrayContext for <pyopencl.Device 'cpu-haswell-AMD EPYC 7763 64-Core Processor' on 'Portable Computing Language'>>] TypeError: AxisTargetDerivative.__init__() got an unexpected keyword argument 'dim'
Conda Pytest
Canceling since a higher priority waiting request for dataclass-kernel-typing exists
Conda Pytest Symengine: test/test/test_kernels.py#L306
test_p2e2p[<PyOpenCLArrayContext for <pyopencl.Device 'cpu-haswell-AMD EPYC 7763 64-Core Processor' on 'Portable Computing Language'>>-False-base_knl0-VolumeTaylorLocalExpansion-4] TypeError: AxisTargetDerivative.__init__() got an unexpected keyword argument 'dim'
Conda Pytest Symengine: test/test/test_kernels.py#L194
test_p2e_multiple[<PyOpenCLArrayContext for <pyopencl.Device 'cpu-haswell-AMD EPYC 7763 64-Core Processor' on 'Portable Computing Language'>>-base_knl1-LinearPDEConformingVolumeTaylorMultipoleExpansion] TypeError: DirectionalDerivative.__init__() got an unexpected keyword argument 'dim'
Conda Pytest Symengine: test/test/test_kernels.py#L194
test_p2e_multiple[<PyOpenCLArrayContext for <pyopencl.Device 'cpu-haswell-AMD EPYC 7763 64-Core Processor' on 'Portable Computing Language'>>-base_knl0-LinearPDEConformingVolumeTaylorLocalExpansion] TypeError: DirectionalDerivative.__init__() got an unexpected keyword argument 'dim'
Conda Pytest Symengine: test/test/test_kernels.py#L84
test_p2p[<PyOpenCLArrayContext for <pyopencl.Device 'cpu-haswell-AMD EPYC 7763 64-Core Processor' on 'Portable Computing Language'>>-False] TypeError: AxisTargetDerivative.__init__() got an unexpected keyword argument 'dim'
Conda Pytest Symengine: test/test/test_kernels.py#L84
test_p2p[<PyOpenCLArrayContext for <pyopencl.Device 'cpu-haswell-AMD EPYC 7763 64-Core Processor' on 'Portable Computing Language'>>-True] TypeError: AxisTargetDerivative.__init__() got an unexpected keyword argument 'dim'
Conda Pytest Symengine: test/test/test_fmm.py#L699
test_sumpy_target_point_multiplier[<PyOpenCLArrayContext for <pyopencl.Device 'cpu-haswell-AMD EPYC 7763 64-Core Processor' on 'Portable Computing Language'>>-deriv_axes2] TypeError: TargetPointMultiplier.__init__() got an unexpected keyword argument 'dim'
Conda Pytest Symengine: test/test/test_fmm.py#L699
test_sumpy_target_point_multiplier[<PyOpenCLArrayContext for <pyopencl.Device 'cpu-haswell-AMD EPYC 7763 64-Core Processor' on 'Portable Computing Language'>>-deriv_axes1] TypeError: TargetPointMultiplier.__init__() got an unexpected keyword argument 'dim'
Conda Pytest Symengine: test/test/test_fmm.py#L699
test_sumpy_target_point_multiplier[<PyOpenCLArrayContext for <pyopencl.Device 'cpu-haswell-AMD EPYC 7763 64-Core Processor' on 'Portable Computing Language'>>-deriv_axes0] TypeError: TargetPointMultiplier.__init__() got an unexpected keyword argument 'dim'
Conda Pytest Symengine: test/test/test_fmm.py#L630
test_sumpy_axis_source_derivative[<PyOpenCLArrayContext for <pyopencl.Device 'cpu-haswell-AMD EPYC 7763 64-Core Processor' on 'Portable Computing Language'>>] TypeError: AxisTargetDerivative.__init__() got an unexpected keyword argument 'dim'
Conda Pytest Symengine: test/test/test_fmm.py#L427
test_unified_single_and_double[<PyOpenCLArrayContext for <pyopencl.Device 'cpu-haswell-AMD EPYC 7763 64-Core Processor' on 'Portable Computing Language'>>] TypeError: AxisTargetDerivative.__init__() got an unexpected keyword argument 'dim'
Conda Pytest Symengine
Canceling since a higher priority waiting request for dataclass-kernel-typing exists
CI
Canceling since a higher priority waiting request for dataclass-kernel-typing exists
Pylint
modifying pylint run because we're on Python 3.13
basedpyright: sumpy/expansion/diff_op.py#L228
Argument type is unknown   Argument corresponds to parameter "gens" in function "submodule" (reportUnknownArgumentType)
basedpyright: sumpy/expansion/diff_op.py#L228
Type of "submodule" is partially unknown   Type of "submodule" is "(...) -> SubModulePolyRing" (reportUnknownMemberType)
basedpyright: sumpy/expansion/diff_op.py#L228
Type of "free_module" is partially unknown   Type of "free_module" is "((rank: Unknown) -> FreeModulePolyRing)" (reportUnknownMemberType)
basedpyright: sumpy/expansion/diff_op.py#L227
Argument type is Any   Argument corresponds to parameter "symbols" in function "old_poly_ring" (reportAny)
basedpyright: sumpy/expansion/diff_op.py#L227
Type of "old_poly_ring" is partially unknown   Type of "old_poly_ring" is "(...) -> (GlobalPolynomialRing | GeneralizedPolynomialRing)" (reportUnknownMemberType)
basedpyright: sumpy/expansion/diff_op.py#L205
Type of "as_expr" is partially unknown   Type of "as_expr" is "(*gens: Unknown) -> Expr" (reportUnknownMemberType)
basedpyright: sumpy/expansion/diff_op.py#L190
Argument type is unknown   Argument corresponds to parameter "symbols" in function "diff" (reportUnknownArgumentType)
basedpyright: sumpy/expansion/diff_op.py#L181
Argument type is unknown   Argument corresponds to parameter "args" in function "__new__" (reportUnknownArgumentType)
basedpyright: sumpy/e2e.py#L399
Argument type is partially unknown   Argument corresponds to parameter "domains" in function "make_function"   Argument type is "list[Unknown]" (reportUnknownArgumentType)
basedpyright: sumpy/derivative_taker.py#L176
Argument type is partially unknown   Argument corresponds to parameter "iterable" in function "sum"   Argument type is "Generator[Unknown | Expr, None, None]" (reportUnknownArgumentType)
Tests for downstream project pytential: pytential/.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 pytential: pytential/.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 pytential: pytential/.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 pytential: pytential/.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 pytential: pytential/.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 pytential: pytential/.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 pytential: pytential/.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 pytential: pytential/.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 pytential: pytential/.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 pytential: pytential/.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.
Conda Pytest: .conda-root/envs/testing/lib/python3.13/site-packages/loopy/isl_helpers.py#L198
Aff.is_equal with implicit conversion of self to PwAff is deprecated and will stop working in 2026. Explicitly convert to PwAff, using .to_pw_aff().
Conda Pytest: .conda-root/envs/testing/lib/python3.13/site-packages/boxtree/array_context.py#L57
Using the base PyOpenCLArrayContext.transform_loopy_program to transform a translation unit. This is largely a no-op and unlikely to result in fast generated code.Instead, subclass PyOpenCLArrayContext and implement the specific transform logic required to transform the program for your package or application. Check higher-level packages (e.g. meshmode), which may already have subclasses you may want to build on.
Conda Pytest: .conda-root/envs/testing/lib/python3.13/site-packages/loopy/isl_helpers.py#L198
Aff.is_equal with implicit conversion of self to PwAff is deprecated and will stop working in 2026. Explicitly convert to PwAff, using .to_pw_aff().
Conda Pytest: .conda-root/envs/testing/lib/python3.13/site-packages/loopy/isl_helpers.py#L198
Aff.is_equal with implicit conversion of self to PwAff is deprecated and will stop working in 2026. Explicitly convert to PwAff, using .to_pw_aff().
Conda Pytest: .conda-root/envs/testing/lib/python3.13/site-packages/boxtree/array_context.py#L57
Using the base PyOpenCLArrayContext.transform_loopy_program to transform a translation unit. This is largely a no-op and unlikely to result in fast generated code.Instead, subclass PyOpenCLArrayContext and implement the specific transform logic required to transform the program for your package or application. Check higher-level packages (e.g. meshmode), which may already have subclasses you may want to build on.
Conda Pytest: .conda-root/envs/testing/lib/python3.13/site-packages/loopy/isl_helpers.py#L198
Aff.is_equal with implicit conversion of self to PwAff is deprecated and will stop working in 2026. Explicitly convert to PwAff, using .to_pw_aff().
Conda Pytest: .conda-root/envs/testing/lib/python3.13/site-packages/loopy/isl_helpers.py#L198
Aff.is_equal with implicit conversion of self to PwAff is deprecated and will stop working in 2026. Explicitly convert to PwAff, using .to_pw_aff().
Conda Pytest: .conda-root/envs/testing/lib/python3.13/site-packages/boxtree/array_context.py#L57
Using the base PyOpenCLArrayContext.transform_loopy_program to transform a translation unit. This is largely a no-op and unlikely to result in fast generated code.Instead, subclass PyOpenCLArrayContext and implement the specific transform logic required to transform the program for your package or application. Check higher-level packages (e.g. meshmode), which may already have subclasses you may want to build on.
Conda Pytest: .conda-root/envs/testing/lib/python3.13/site-packages/loopy/isl_helpers.py#L198
Aff.is_equal with implicit conversion of self to PwAff is deprecated and will stop working in 2026. Explicitly convert to PwAff, using .to_pw_aff().
Conda Pytest: .conda-root/envs/testing/lib/python3.13/site-packages/loopy/isl_helpers.py#L198
Aff.is_equal with implicit conversion of self to PwAff is deprecated and will stop working in 2026. Explicitly convert to PwAff, using .to_pw_aff().
Conda Pytest Symengine: .conda-root/envs/testing/lib/python3.13/site-packages/loopy/isl_helpers.py#L198
Aff.is_equal with implicit conversion of self to PwAff is deprecated and will stop working in 2026. Explicitly convert to PwAff, using .to_pw_aff().
Conda Pytest Symengine: .conda-root/envs/testing/lib/python3.13/site-packages/boxtree/array_context.py#L57
Using the base PyOpenCLArrayContext.transform_loopy_program to transform a translation unit. This is largely a no-op and unlikely to result in fast generated code.Instead, subclass PyOpenCLArrayContext and implement the specific transform logic required to transform the program for your package or application. Check higher-level packages (e.g. meshmode), which may already have subclasses you may want to build on.
Conda Pytest Symengine: .conda-root/envs/testing/lib/python3.13/site-packages/loopy/isl_helpers.py#L198
Aff.is_equal with implicit conversion of self to PwAff is deprecated and will stop working in 2026. Explicitly convert to PwAff, using .to_pw_aff().
Conda Pytest Symengine: .conda-root/envs/testing/lib/python3.13/site-packages/loopy/isl_helpers.py#L198
Aff.is_equal with implicit conversion of self to PwAff is deprecated and will stop working in 2026. Explicitly convert to PwAff, using .to_pw_aff().
Conda Pytest Symengine: .conda-root/envs/testing/lib/python3.13/site-packages/boxtree/array_context.py#L57
Using the base PyOpenCLArrayContext.transform_loopy_program to transform a translation unit. This is largely a no-op and unlikely to result in fast generated code.Instead, subclass PyOpenCLArrayContext and implement the specific transform logic required to transform the program for your package or application. Check higher-level packages (e.g. meshmode), which may already have subclasses you may want to build on.
Conda Pytest Symengine: .conda-root/envs/testing/lib/python3.13/site-packages/boxtree/array_context.py#L57
Using the base PyOpenCLArrayContext.transform_loopy_program to transform a translation unit. This is largely a no-op and unlikely to result in fast generated code.Instead, subclass PyOpenCLArrayContext and implement the specific transform logic required to transform the program for your package or application. Check higher-level packages (e.g. meshmode), which may already have subclasses you may want to build on.
Conda Pytest Symengine: .conda-root/envs/testing/lib/python3.13/site-packages/loopy/isl_helpers.py#L198
Aff.is_equal with implicit conversion of self to PwAff is deprecated and will stop working in 2026. Explicitly convert to PwAff, using .to_pw_aff().
Conda Pytest Symengine: .conda-root/envs/testing/lib/python3.13/site-packages/loopy/isl_helpers.py#L198
Aff.is_equal with implicit conversion of self to PwAff is deprecated and will stop working in 2026. Explicitly convert to PwAff, using .to_pw_aff().
Conda Pytest Symengine: .conda-root/envs/testing/lib/python3.13/site-packages/loopy/isl_helpers.py#L198
Aff.is_equal with implicit conversion of self to PwAff is deprecated and will stop working in 2026. Explicitly convert to PwAff, using .to_pw_aff().
Conda Pytest Symengine: .conda-root/envs/testing/lib/python3.13/site-packages/loopy/isl_helpers.py#L198
Aff.is_equal with implicit conversion of self to PwAff is deprecated and will stop working in 2026. Explicitly convert to PwAff, using .to_pw_aff().