-
-
Notifications
You must be signed in to change notification settings - Fork 371
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix CI part 2 #1025
Fix CI part 2 #1025
Conversation
The CI errors are different, so there is some form of progress here. This may take a number of iterations to sort out. |
So I understand the remaining problem and know how to fix it. But the fix is really in Before this PR, From a html_exporter.template_file = 'basic' to html_exporter.template_file = 'classic/base.html.j2' everything works fine. It would also need a check of So the best way to fix this is:
I have three concerns:
|
Thanks! We can handle updating nbsmoke. The breaking changes in nbconvert have caused all sorts of problems in our ecosystem, alas. Thanks for the investigative work and for sharing the details! |
PR submitted to nbsmoke holoviz-dev/nbsmoke#57. Over to you @jbednar! |
Thanks! And I've quickly punted it over to @maximlt, who should have much more brain space available to deal with it! :-) |
Ok things got better on the nbsmoke/nbconvert front! But it seems like datashader needs to be updated wrt bokeh. This test is failing: =================================== FAILURES ===================================
________________________ test_interactive_image_update _________________________
def test_interactive_image_update():
# jbednar: This test uses 1x1 images that are not actually supported
# (as they have infinite resolution), but as InteractiveImage is deprecated
# anyway the tests have not been updated.
p = figure(x_range=(0, 1), y_range=(0, 1), plot_width=2, plot_height=2)
img = InteractiveImage(p, create_image)
# Ensure bokeh Document is instantiated
img._repr_html_()
assert isinstance(img.doc, Document)
# Ensure image is updated
img.update_image({'xmin': 0.5, 'xmax': 1, 'ymin': 0.5, 'ymax': 1, 'w': 1, 'h': 1})
out = np.array([[4287299584]], dtype=np.uint32)
assert img.ds.data['x'] == [0.5]
assert img.ds.data['y'] == [0.5]
assert img.ds.data['dh'] == [0.5]
assert img.ds.data['dw'] == [0.5]
assert np.array_equal(img.ds.data['image'][0], out)
# Ensure patch message is correct
> msg = img.get_update_event()
datashader/tests/test_bokeh_ext.py:65:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
datashader/bokeh_ext.py:319: in get_update_event
return patch_event(self)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
image = <datashader.bokeh_ext.InteractiveImage object at 0x7f8fd42b7450>
def patch_event(image):
"""
Generates a bokeh patch event message given an InteractiveImage
instance. Uses the bokeh messaging protocol for bokeh>=0.12.10
and a custom patch for previous versions.
Parameters
----------
image: InteractiveImage
InteractiveImage instance with a plot
Returns
-------
msg: str
JSON message containing patch events to update the plot
"""
if bokeh_version > '0.12.9':
> events = list(image.doc._held_events)
E AttributeError: 'Document' object has no attribute '_held_events' |
@maximlt Is there anything I can do to help with this? |
@ianthomas23 I've pushed a commit that fixes a compatibility issue with bokeh>=2.4. Now the tests are all failing on Windows for another reason. This is the error report on py38:
@jbednar have you already seen this kind of error here? |
Ok so the tests were failing on Windows due to a problem somewhere between a new version of the package freetype and matplotlib. I ran the tests locally on Windows and they passed. I think this is ready to be merged. matplotlib/matplotlib#21511 |
Thanks @ianthomas23 for the push on fixing the CI and nbsmoke! |
Thanks to both of you for getting this to the finish line! |
Following on from PR #1022, this is an attempt to fix the remaining CI failures. There are 3 changes:
nbconvert
as certain versions were causing problems when runningpytest "--nbsmoke-run" "-k" ".ipynb"
np.int
toint
which is only causes aDeprecationWarning
but I fixed it whilst I was there.Fixes work locally for me, but need to check across the full CI matrix.