Bug#1028548: New upstream version needed
Enrico Zini
enrico at debian.org
Thu Jan 12 15:26:49 GMT 2023
Package: hyperspy
Version: 1.6.1-1
Severity: normal
Hello,
a new upstream version of hyperspy is needed to fix #997475 and to build
with the python/numpy/* toolchain currently in sid.
I started packaging it at https://salsa.debian.org/science-team/hyperspy/
and it's currently blocked by:
* python3-statsmodels and python3-dask not being coinstallable
(relevant issues: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1025393
and https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1027254 )
* seemingly numba-related errors in the test suite of this kind:
```
____________________________________________________________________ TestInteractive.test_lazy_interactive_snap[default] _____________________________________________________________________
[gw1] linux -- Python 3.11.1 /usr/bin/python3.11
self = <hyperspy.tests.utils.test_roi.TestInteractive object at 0x7fb2319d5190>, snap = True
@pytest.mark.parametrize('snap', [True, False, 'default'])
def test_interactive_snap(self, snap):
kwargs = {}
if snap != 'default':
kwargs['snap'] = snap
else:
# default is True
snap = True
s = self.s
r = RectangularROI(left=3, right=7, top=2, bottom=5)
> s.plot()
hyperspy/tests/utils/test_roi.py:705:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
hyperspy/_signals/lazy.py:1234: in plot
super().plot(navigator=navigator, **kwargs)
hyperspy/_signals/signal1d.py:1658: in plot
super().plot(navigator=navigator,
hyperspy/signal.py:2898: in plot
self._plot.plot(**kwargs)
hyperspy/drawing/mpl_he.py:188: in plot
self.pointer.connect_navigate()
hyperspy/drawing/widget.py:225: in connect_navigate
self._on_navigate(self.axes_manager) # Update our position
hyperspy/drawing/widget.py:462: in _on_navigate
self.position = p # Use property to trigger events
hyperspy/drawing/widget.py:425: in <lambda>
lambda s, v: s._set_position(v))
hyperspy/drawing/widget.py:419: in _set_position
position = self._validate_pos(position)
hyperspy/drawing/widget.py:404: in _validate_pos
pos = self._do_snap_position(pos)
hyperspy/drawing/widget.py:434: in _do_snap_position
value[i] = ax.index2value(ax.value2index(value[i]))
hyperspy/axes.py:1214: in value2index
round_half_towards_zero(index, decimals=0),
/usr/lib/python3/dist-packages/numba/core/dispatcher.py:468: in _compile_for_args
error_rewrite(e, 'typing')
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
e = TypingError('Failed in nopython mode pipeline (step: nopython frontend)\n\x1b[1m\x1b[1m\x1b[1mNo implementation of fun... pragma: no cover\n <source elided>\n\n\x1b[1m return np.where(array >= 0,\n\x1b[0m \x1b[1m^\x1b[0m\x1b[0m\n')
issue_type = 'typing'
def error_rewrite(e, issue_type):
"""
Rewrite and raise Exception `e` with help supplied based on the
specified issue_type.
"""
if config.SHOW_HELP:
help_msg = errors.error_extras[issue_type]
e.patch_message('\n'.join((str(e).rstrip(), help_msg)))
if config.FULL_TRACEBACKS:
raise e
else:
> raise e.with_traceback(None)
E numba.core.errors.TypingError: Failed in nopython mode pipeline (step: nopython frontend)
E No implementation of function Function(<function where at 0x7fb280c18cc0>) found for signature:
E
E >>> where(bool, float64, float64)
E
E There are 4 candidate implementations:
E - Of which 4 did not match due to:
E Overload in function '_OverloadWrapper._build.<locals>.ol_generated': File: numba/core/overload_glue.py: Line 129.
E With argument(s): '(bool, float64, float64)':
E Rejected as the implementation raised a specific error:
E TypeError: code() argument 13 must be str, not int
E raised from /usr/lib/python3/dist-packages/numba/core/overload_glue.py:64
E
E During: resolving callee type: Function(<function where at 0x7fb280c18cc0>)
E During: typing of call at /media/hyperspy/.pybuild/cpython3_3.11_hyperspy/build/hyperspy/misc/array_tools.py (557)
E
E
E File "hyperspy/misc/array_tools.py", line 557:
E def round_half_towards_zero(array, decimals=0): # pragma: no cover
E <source elided>
E
E return np.where(array >= 0,
E ^
/usr/lib/python3/dist-packages/numba/core/dispatcher.py:409: TypingError
```
I'm opening this issue to track progress on the situation.
Enrico
-- System Information:
Debian Release: bookworm/sid
APT prefers testing
APT policy: (500, 'testing')
Architecture: amd64 (x86_64)
Kernel: Linux 6.0.0-6-amd64 (SMP w/4 CPU threads; PREEMPT)
Locale: LANG=en_IE.UTF-8, LC_CTYPE=en_IE.UTF-8 (charmap=UTF-8), LANGUAGE=en_IE:en
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled
More information about the debian-science-maintainers
mailing list