You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
__________________________________________________________TestImageViewer.test_save_aggregate_slice___________________________________________________________self=<glue.viewers.image.qt.tests.test_data_viewer.TestImageViewerobjectat0x15f5238d0>tmpdir=local('/private/var/folders/bb/f_z2vsjd21d_p0jpqxzhhwhh00027w/T/pytest-of-derek/pytest-5/test_save_aggregate_slice0')
deftest_save_aggregate_slice(self, tmpdir):
# Regression test to make sure that image viewers that include# aggregate slice objects in the slices can be saved/restoredself.viewer.add_data(self.hypercube)
self.viewer.state.slices=AggregateSlice(slice(1, 3), 10, np.sum), 3, 0, 0filename=tmpdir.join('session.glu').strpathself.application.save_session(filename)
self.application.close()
>app2=GlueApplication.restore_session(filename)
glue/viewers/image/qt/tests/test_data_viewer.py:679:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
glue/app/qt/application.py:1135: inrestore_sessionga=Application.restore_session(path)
__ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
path='/private/var/folders/bb/f_z2vsjd21d_p0jpqxzhhwhh00027w/T/pytest-of-derek/pytest-5/test_save_aggregate_slice0/session.glu'@staticmethoddefrestore_session(path):
""" Reload a previously-saved session Parameters ---------- path : `str` Path to the file to load. Returns ------- app : :class:`Application` The loaded application. """fromglue.core.stateimportGlueUnSerializer# In case relative paths are needed in the session file, we do the# loading while setting the current directory to the directory# in which the session file is so that relative paths are interpreted# as relative to the session file.start_dir=os.path.abspath('.')
session_dir=os.path.dirname(path) or'.'session_file=os.path.basename(path)
try:
os.chdir(session_dir)
>withopen(session_file) asinfile:
EFileNotFoundError: [Errno2] Nosuchfileordirectory: 'session.glu'glue/core/application_base.py:155: FileNotFoundError
together with a pop-up error window (on which the CI probably hangs)
Failed to save session
Don't know how to serialize <function sum at 0x104ff6b30> of type <class 'numpy._ArrayFunctionDispatcher'>
Traceback (mostrecentcalllast):
File"/Users/derek/git/glue/glue/core/application_base.py", line23, inwrapperreturnfunc(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^File"/Users/derek/git/glue/glue/core/application_base.py", line121, insave_sessionstate=gs.dumps(indent=2)
^^^^^^^^^^^^^^^^^^File"/Users/derek/git/glue/glue/core/state.py", line421, indumpsresult=self.dumpo()
^^^^^^^^^^^^File"/Users/derek/git/glue/glue/core/state.py", line400, indumporeturnself.do_all()
^^^^^^^^^^^^^File"/Users/derek/git/glue/glue/core/state.py", line325, indo_allresult= [(oid, self.do(obj)) foroid, objinlist(self._objs.items())]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^File"/Users/derek/git/glue/glue/core/state.py", line325, in<listcomp>result= [(oid, self.do(obj)) foroid, objinlist(self._objs.items())]
^^^^^^^^^^^^File"/Users/derek/git/glue/glue/core/state.py", line353, indoresult=fun(obj, self)
^^^^^^^^^^^^^^File"/Users/derek/git/glue/glue/core/state.py", line583, in_save_tuplereturndict(contents=[context.do(item) foriteminstate])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^File"/Users/derek/git/glue/glue/core/state.py", line583, in<listcomp>returndict(contents=[context.do(item) foriteminstate])
^^^^^^^^^^^^^^^^File"/Users/derek/git/glue/glue/core/state.py", line353, indoresult=fun(obj, self)
^^^^^^^^^^^^^^File"/Users/derek/git/glue/glue/viewers/image/state.py", line59, in__gluestate__function=context.do(self.function))
^^^^^^^^^^^^^^^^^^^^^^^^^File"/Users/derek/git/glue/glue/core/state.py", line351, indofun, version=self._dispatch(obj)
^^^^^^^^^^^^^^^^^^^File"/Users/derek/git/glue/glue/core/state.py", line380, in_dispatchraiseGlueSerializeError("Don't know how to serialize"glue.core.state.GlueSerializeError: Don't know how to serialize <function sum at 0x104ff6b30> of type <class 'numpy._ArrayFunctionDispatcher'>
py38 is still on Numpy 1.24.4 while the newer envs have 1.25.0, so that is probably behind it; but the dev jobs passing indicates that there is some other dependency that needs to be updated.
The text was updated successfully, but these errors were encountered:
We shouldn't really be trying to serialize np.sum - since I think it's only a few possible functions that need to get saved to the session file we could always map them to strings such as 'numpy.sum' and then restore them back as functions.
Describe the bug
Almost all tests on Python > 3.8 (except the
dev
ones) have been hanging and timed out after 6 hours for several weeks (basically since 1.12.0, it seems) intest_data_viewer
, e.g.https://github.com/glue-viz/glue/actions/runs/5393566950/job/14600937184
Running locally I found a failure in
together with a pop-up error window (on which the CI probably hangs)
py38 is still on Numpy 1.24.4 while the newer envs have 1.25.0, so that is probably behind it; but the dev jobs passing indicates that there is some other dependency that needs to be updated.
The text was updated successfully, but these errors were encountered: