#24088 closed defect (fixed)

build hangs on ipykernel

Reported by: mderickx Owned by:
Priority: blocker Milestone: sage-8.1
Component: packages: standard Keywords:
Cc: Merged in:
Authors: Jeroen Demeyer Reviewers: François Bissey, Maarten Derickx
Report Upstream: N/A Work issues:
Branch: c90fe7f (Commits) Commit: c90fe7f984dc08111fd02f9b1a6f620e98920c9b
Dependencies: Stopgaps:

Description (last modified by jdemeyer)

At least three patchbots fail during the build of ipykernel since 8.1.beta9.

Most relevant part of the install log (which is messed up due to parallel builds)

[ipykernel-4.6.1]     Traceback (most recent call last):
[ipykernel-4.6.1]       File "<string>", line 1, in <module>
[ipykernel-4.6.1]       File "/tmp/pip-n397X9-build/setup.py", line 91, in <module>
[ipykernel-4.6.1]         from ipykernel.kernelspec import write_kernel_spec, make_ipkernel_cmd, KERNEL_NAME
[ipykernel-4.6.1]       File "ipykernel/__init__.py", line 2, in <module>
[ipykernel-4.6.1]         from .connect import *
[ipykernel-4.6.1]       File "ipykernel/connect.py", line 13, in <module>
[ipykernel-4.6.1]         from IPython.core.profiledir import ProfileDir
[ipykernel-4.6.1]       File "/opt/sage/local/lib/python2.7/site-packages/IPython/__init__.py", line 48, in <module>
[ipykernel-4.6.1]         from .core.application import Application
[ipykernel-4.6.1]       File "/opt/sage/local/lib/python2.7/site-packages/IPython/core/application.py", line 23, in <module>
[ipykernel-4.6.1]         from traitlets.config.application import Application, catch_config_error
[ipykernel-4.6.1]       File "/opt/sage/local/lib/python2.7/site-packages/traitlets/__init__.py", line 1, in <module>
[numpy-1.13.3.p0] gcc: numpy/core/src/npymath/npy_math.c
[ipykernel-4.6.1]         from .traitlets import *
[ipykernel-4.6.1]       File "/opt/sage/local/lib/python2.7/site-packages/traitlets/traitlets.py", line 60, in <module>
[ipykernel-4.6.1]         from .utils.importstring import import_item
[ipykernel-4.6.1]       File "/opt/sage/local/lib/python2.7/site-packages/traitlets/utils/importstring.py", line 8, in <module>
[ipykernel-4.6.1]         from ipython_genutils.py3compat import cast_bytes_py2
[ipykernel-4.6.1]     ImportError: No module named ipython_genutils.py3compat

This can easily be reproduced by

./sage --pip uninstall ipython_genutils
./sage -f ipykernel

Change History (16)

comment:1 Changed 20 months ago by mderickx

  • Description modified (diff)

comment:2 Changed 20 months ago by fbissey

It is very curious as the log shows that traitlets is installed and used, and it should have pulled ipython_genutils in fact looking at it closer, one can see the failing call is from traitlets. The quoted github issue is most relevant here I think.

comment:3 Changed 20 months ago by fbissey

In fact it is worse than the github issue. In the github issue, pip solves the dependencies, in sage it is done by the master makefile and we still fail.

comment:4 Changed 20 months ago by jdemeyer

I think this is just missing a dependency of ipykernel on ipython.

comment:5 Changed 20 months ago by jdemeyer

  • Authors set to Jeroen Demeyer
  • Description modified (diff)

comment:6 Changed 20 months ago by jdemeyer

  • Branch set to u/jdemeyer/build_hangs_on_ipykernel

comment:7 follow-up: Changed 20 months ago by fbissey

  • Commit set to eab4ea647050e946003c237f42bcd38571b3d788
  • Reviewers set to François Bissey
  • Status changed from new to needs_review

That should definitely be there and it *should* be enough.


New commits:

eab4ea6ipykernel should depend on ipython

comment:8 Changed 20 months ago by git

  • Commit changed from eab4ea647050e946003c237f42bcd38571b3d788 to c90fe7f984dc08111fd02f9b1a6f620e98920c9b

Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:

c90fe7fAdd some dependencies for ipykernel

comment:9 in reply to: ↑ 7 Changed 20 months ago by jdemeyer

Replying to fbissey:

That should definitely be there and it *should* be enough.

Actually, it is not. But after adding a few more dependencies, it works now.

comment:10 Changed 20 months ago by fbissey

Indeed, I should have noticed jupyter_client and good spotting on dateutils.

comment:11 Changed 20 months ago by egourgoulhon

Just to confirm that this solves the issue of building Sage 8.1.beta9 from a fresh git clone. So +1 for the positive review.

comment:12 follow-up: Changed 20 months ago by mderickx

  • Status changed from needs_review to needs_work

I'm a bit confused by the status of this ticket. It was changed from new to needs review by the reviewer, so I do not know wether Jeroen thinks it is already ready for review. Anyway I am moving it to "needs work" so that other people can put it in the correct status.

Last edited 20 months ago by mderickx (previous) (diff)

comment:13 in reply to: ↑ 12 Changed 20 months ago by jdemeyer

  • Status changed from needs_work to needs_review

Replying to mderickx:

I'm a bit confused by the status of this ticket. It was changed from new to needs review by the reviewer

Yes, that was confusing indeed.

But it needs review now.

comment:14 Changed 20 months ago by mderickx

  • Reviewers changed from François Bissey to François Bissey, Maarten Derickx
  • Status changed from needs_review to positive_review

Ok, I checked that with this branch the dependencies of ipykernel agree with what is listed on Pypi (tornado is indirectly coming via the ipython dependency), and it fixes the problem so positive review from me.

comment:15 Changed 20 months ago by fbissey

Must have been still sleepy, I thought Jeroen had put it for review. Until a ticket has been put to "needs review" once you cannot click "positive review" so I must have clicked what was clickable next to it.

comment:16 Changed 20 months ago by vbraun

  • Branch changed from u/jdemeyer/build_hangs_on_ipykernel to c90fe7f984dc08111fd02f9b1a6f620e98920c9b
  • Resolution set to fixed
  • Status changed from positive_review to closed
Note: See TracTickets for help on using tickets.