Skip to content

Expn typing

Expn typing #1793

Triggered via pull request October 22, 2025 18:57
@inducerinducer
synchronize #250
expn-typing
Status Failure
Total duration 38m 46s
Artifacts

ci.yml

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

Annotations

41 errors and 31 warnings
Ruff
Process completed with exit code 1.
Documentation
Process completed with exit code 2.
basedpyright
Process completed with exit code 1.
basedpyright
7 errors
basedpyright: sumpy/test/test_misc.py#L597
Argument missing for parameter "max_mi" (reportCallIssue)
basedpyright: sumpy/test/test_misc.py#L595
Argument missing for parameter "max_mi" (reportCallIssue)
basedpyright: sumpy/test/test_kernels.py#L851
Argument of type "floating[Any]" cannot be assigned to parameter "error" of type "float" in function "add_data_point"   "floating[Any]" is not assignable to "float" (reportArgumentType)
basedpyright: sumpy/symbolic.py#L364
Type "SympyLikeExpression" is not assignable to return type "Expr"   "Basic" is not assignable to "Expr" (reportReturnType)
basedpyright: sumpy/symbolic.py#L341
Type "SympyLikeExpression" is not assignable to return type "Expr"   "Basic" is not assignable to "Expr" (reportReturnType)
basedpyright: sumpy/kernel.py#L449
Type "SympyLikeExpression" is not assignable to return type "Expr"   "Basic" is not assignable to "Expr" (reportReturnType)
basedpyright: sumpy/kernel.py#L444
Type "Unknown | SympyLikeExpression" is not assignable to return type "Expr"   Type "Unknown | SympyLikeExpression" is not assignable to type "Expr"     "Basic" is not assignable to "Expr" (reportReturnType)
Conda Pytest Symengine: test/sumpy/test/test_misc.py#L595
test_get_storage_index[True-knl3-6] TypeError: LinearPDEBasedExpansionTermsWrangler.__init__() missing 1 required positional argument: 'max_mi'
Conda Pytest Symengine: test/sumpy/test/test_misc.py#L595
test_get_storage_index[True-knl2-6] TypeError: LinearPDEBasedExpansionTermsWrangler.__init__() missing 1 required positional argument: 'max_mi'
Conda Pytest Symengine: test/sumpy/test/test_misc.py#L595
test_get_storage_index[True-knl1-6] TypeError: LinearPDEBasedExpansionTermsWrangler.__init__() missing 1 required positional argument: 'max_mi'
Conda Pytest Symengine: test/sumpy/test/test_misc.py#L595
test_get_storage_index[True-knl0-6] TypeError: LinearPDEBasedExpansionTermsWrangler.__init__() missing 1 required positional argument: 'max_mi'
Conda Pytest Symengine: test/sumpy/test/test_misc.py#L382
test_cse_matvec TypeError: ufunc 'isfinite' not supported for the input types, and the inputs could not be safely coerced to any supported types according to the casting rule ''safe''
Conda Pytest Symengine: test/sumpy/test/test_kernels.py#L651
test_translations[<PyOpenCLArrayContext for <pyopencl.Device 'cpu-haswell-AMD EPYC 7763 64-Core Processor' on 'Portable Computing Language'>>-knl2-LinearPDEConformingVolumeTaylorLocalExpansion-LinearPDEConformingVolumeTaylorMultipoleExpansion-True] AssertionError
Conda Pytest Symengine: test/sumpy/test/test_fmm.py#L657
test_sumpy_axis_source_derivative[<PyOpenCLArrayContext for <pyopencl.Device 'cpu-haswell-AMD EPYC 7763 64-Core Processor' on 'Portable Computing Language'>>] assert np.False_ + where np.False_ = <function isclose at 0x7f68fb66ef70>(np.float64(1.421555489213207), 0, atol=1e-05) + where <function isclose at 0x7f68fb66ef70> = np.isclose
Conda Pytest Symengine: test/sumpy/test/test_fmm.py#L588
test_sumpy_fmm_exclude_self[<PyOpenCLArrayContext for <pyopencl.Device 'cpu-haswell-AMD EPYC 7763 64-Core Processor' on 'Portable Computing Language'>>] assert np.False_ + where np.False_ = <function isclose at 0x7f68fb66ef70>(np.float64(11.588017914042016), 0, atol=1e-07) + where <function isclose at 0x7f68fb66ef70> = np.isclose
Conda Pytest Symengine: test/sumpy/test/test_fmm.py#L361
test_coeff_magnitude_rscale[<PyOpenCLArrayContext for <pyopencl.Device 'cpu-haswell-AMD EPYC 7763 64-Core Processor' on 'Portable Computing Language'>>-knl1] AssertionError: np.float64(55851775.859486066) assert np.float64(55851775.859486066) < (10 ** 6)
Conda Pytest Symengine: test/sumpy/test/test_fmm.py#L361
test_coeff_magnitude_rscale[<PyOpenCLArrayContext for <pyopencl.Device 'cpu-haswell-AMD EPYC 7763 64-Core Processor' on 'Portable Computing Language'>>-knl0] AssertionError: np.float64(631085140.223572) assert np.float64(631085140.223572) < (10 ** 6)
Conda Pytest: test/sumpy/test/test_misc.py#L595
test_get_storage_index[True-knl2-6] TypeError: LinearPDEBasedExpansionTermsWrangler.__init__() missing 1 required positional argument: 'max_mi'
Conda Pytest: test/sumpy/test/test_misc.py#L595
test_get_storage_index[True-knl1-6] TypeError: LinearPDEBasedExpansionTermsWrangler.__init__() missing 1 required positional argument: 'max_mi'
Conda Pytest: test/sumpy/test/test_misc.py#L595
test_get_storage_index[True-knl0-6] TypeError: LinearPDEBasedExpansionTermsWrangler.__init__() missing 1 required positional argument: 'max_mi'
Conda Pytest: test/sumpy/test/test_misc.py#L382
test_cse_matvec TypeError: ufunc 'isfinite' not supported for the input types, and the inputs could not be safely coerced to any supported types according to the casting rule ''safe''
Conda Pytest: test/sumpy/test/test_kernels.py#L651
test_translations[<PyOpenCLArrayContext for <pyopencl.Device 'cpu-haswell-AMD EPYC 7763 64-Core Processor' on 'Portable Computing Language'>>-knl5-LinearPDEConformingVolumeTaylorLocalExpansion-LinearPDEConformingVolumeTaylorMultipoleExpansion-True] AssertionError
Conda Pytest: test/sumpy/test/test_kernels.py#L651
test_translations[<PyOpenCLArrayContext for <pyopencl.Device 'cpu-haswell-AMD EPYC 7763 64-Core Processor' on 'Portable Computing Language'>>-knl2-LinearPDEConformingVolumeTaylorLocalExpansion-LinearPDEConformingVolumeTaylorMultipoleExpansion-True] AssertionError
Conda Pytest: test/sumpy/test/test_fmm.py#L657
test_sumpy_axis_source_derivative[<PyOpenCLArrayContext for <pyopencl.Device 'cpu-haswell-AMD EPYC 7763 64-Core Processor' on 'Portable Computing Language'>>] assert np.False_ + where np.False_ = <function isclose at 0x7f0e6b90dfb0>(np.float64(2.049192883416945), 0, atol=1e-05) + where <function isclose at 0x7f0e6b90dfb0> = np.isclose
Conda Pytest: test/sumpy/test/test_fmm.py#L588
test_sumpy_fmm_exclude_self[<PyOpenCLArrayContext for <pyopencl.Device 'cpu-haswell-AMD EPYC 7763 64-Core Processor' on 'Portable Computing Language'>>] assert np.False_ + where np.False_ = <function isclose at 0x7f0e6b90dfb0>(np.float64(12.283113388729447), 0, atol=1e-07) + where <function isclose at 0x7f0e6b90dfb0> = np.isclose
Conda Pytest: test/sumpy/test/test_fmm.py#L361
test_coeff_magnitude_rscale[<PyOpenCLArrayContext for <pyopencl.Device 'cpu-haswell-AMD EPYC 7763 64-Core Processor' on 'Portable Computing Language'>>-knl1] AssertionError: np.float64(55851775.859486066) assert np.float64(55851775.859486066) < (10 ** 6)
Conda Pytest: test/sumpy/test/test_fmm.py#L361
test_coeff_magnitude_rscale[<PyOpenCLArrayContext for <pyopencl.Device 'cpu-haswell-AMD EPYC 7763 64-Core Processor' on 'Portable Computing Language'>>-knl0] AssertionError: np.float64(631085140.2235717) assert np.float64(631085140.2235717) < (10 ** 6)
Tests for downstream project pytential: pytential/test/test/test_layer_pot_identity.py#L363
test_identity_convergence[<PyOpenCLArrayContext for <pyopencl.Device 'cpu-haswell-AMD EPYC 7763 64-Core Processor' on 'Portable Computing Language'>>-case1] assert np.float64(-28.337256198336178) > (5 - 1.6) + where np.float64(-28.337256198336178) = order_estimate() + where order_estimate = <pytools.convergence.EOCRecorder object at 0x7f7b65d45700>.order_estimate
Tests for downstream project pytential: pytential/test/test/test_layer_pot_eigenvalues.py#L240
test_ellipse_eigenvalues[<PyOpenCLArrayContext for <pyopencl.Device 'cpu-haswell-AMD EPYC 7763 64-Core Processor' on 'Portable Computing Language'>>-1-5-4-False] assert np.float64(-35.038333297237195) > (5 - 1.5) + where np.float64(-35.038333297237195) = order_estimate() + where order_estimate = <pytools.convergence.EOCRecorder object at 0x7efdcf0aacf0>.order_estimate
Tests for downstream project pytential: pytential/test/test/test_layer_pot_eigenvalues.py#L240
test_ellipse_eigenvalues[<PyOpenCLArrayContext for <pyopencl.Device 'cpu-haswell-AMD EPYC 7763 64-Core Processor' on 'Portable Computing Language'>>-2-5-3-False] assert np.float64(-24.316906292747763) > (4 - 1.5) + where np.float64(-24.316906292747763) = order_estimate() + where order_estimate = <pytools.convergence.EOCRecorder object at 0x7efdeb8d5a50>.order_estimate
Tests for downstream project pytential: pytential/test/test/test_layer_pot_eigenvalues.py#L240
test_ellipse_eigenvalues[<PyOpenCLArrayContext for <pyopencl.Device 'cpu-haswell-AMD EPYC 7763 64-Core Processor' on 'Portable Computing Language'>>-1-6-3-False] assert np.float64(-33.22591376368426) > (4 - 1.5) + where np.float64(-33.22591376368426) = order_estimate() + where order_estimate = <pytools.convergence.EOCRecorder object at 0x7efdced348d0>.order_estimate
Tests for downstream project pytential: pytential/test/test/test_layer_pot_identity.py#L363
test_identity_convergence[<PyOpenCLArrayContext for <pyopencl.Device 'cpu-haswell-AMD EPYC 7763 64-Core Processor' on 'Portable Computing Language'>>-case0] assert np.float64(-28.242648202319536) > (5 - 1.6) + where np.float64(-28.242648202319536) = order_estimate() + where order_estimate = <pytools.convergence.EOCRecorder object at 0x7f7b70363490>.order_estimate
Tests for downstream project pytential: pytential/test/test/test_layer_pot_eigenvalues.py#L240
test_ellipse_eigenvalues[<PyOpenCLArrayContext for <pyopencl.Device 'cpu-haswell-AMD EPYC 7763 64-Core Processor' on 'Portable Computing Language'>>-1-5-3-False] assert np.float64(-35.038329009341865) > (4 - 1.5) + where np.float64(-35.038329009341865) = order_estimate() + where order_estimate = <pytools.convergence.EOCRecorder object at 0x7efdcfbc9f30>.order_estimate
Tests for downstream project pytential: pytential/test/test/test_layer_pot_eigenvalues.py#L240
test_ellipse_eigenvalues[<PyOpenCLArrayContext for <pyopencl.Device 'cpu-haswell-AMD EPYC 7763 64-Core Processor' on 'Portable Computing Language'>>-2-7-5-False] assert np.float64(-24.110394265800252) > (6 - 1.5) + where np.float64(-24.110394265800252) = order_estimate() + where order_estimate = <pytools.convergence.EOCRecorder object at 0x7f7b7086b820>.order_estimate
Tests for downstream project pytential: pytential/test/test/test_layer_pot.py#L314
test_single_plus_double_with_single_fmm[<PyOpenCLArrayContext for <pyopencl.Device 'cpu-haswell-AMD EPYC 7763 64-Core Processor' on 'Portable Computing Language'>>] assert np.float64(270571343001.42343) < 0.001
Tests for downstream project pytential: pytential/test/test/test_layer_pot.py#L228
test_off_surface_eval_vs_direct[<PyOpenCLArrayContext for <pyopencl.Device 'cpu-haswell-AMD EPYC 7763 64-Core Processor' on 'Portable Computing Language'>>] assert np.float64(10653723220.200274) < 0.001
Tests for downstream project pytential: pytential/test/test/test_layer_pot_eigenvalues.py#L240
test_ellipse_eigenvalues[<PyOpenCLArrayContext for <pyopencl.Device 'cpu-haswell-AMD EPYC 7763 64-Core Processor' on 'Portable Computing Language'>>-1-7-5-False] assert np.float64(-32.44907265335494) > (6 - 1.5) + where np.float64(-32.44907265335494) = order_estimate() + where order_estimate = <pytools.convergence.EOCRecorder object at 0x7f7b9a2ba900>.order_estimate
basedpyright: sumpy/expansion/__init__.py#L27
Import "field" is not accessed (reportUnusedImport)
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/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: .conda-root/envs/testing/lib/python3.14/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.14/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.14/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.14/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.14/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.14/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.14/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.14/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.14/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.14/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().
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.::warning file=/home/runner/work/sumpy/sumpy/pytential/.conda-root/envs/testing/lib/python3.13/site-packages/meshmode/dof_array.py,line=79::'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.
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.