Skip to content

New package: jupyterlab #30873

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

Closed
wants to merge 21 commits into from
Closed

New package: jupyterlab #30873

wants to merge 21 commits into from

Conversation

dkwo
Copy link
Contributor

@dkwo dkwo commented May 14, 2021

Jupyterlab is the new generation of Jupyter notebook.

General

It seems to build fine, but still running some tests. @maneandrea

I forked commits from #30802 (just a small edit as mentioned there) and #26806 (edited hostmakedepends otherwise it was failing)

@dkwo
Copy link
Contributor Author

dkwo commented May 14, 2021

@ahesford Could you help me fix this loop?
Build-time cyclic dependency python3-ipython_ipykernel(host), python3-jupyter_client(host), python3-ipython_ipykernel(host) detected.

@dkwo
Copy link
Contributor Author

dkwo commented May 14, 2021

also, I'm not sure what to do with this
srcpkgs/python3-json5/template:16: license Apache-2.0 should not be installed

@folliehiyuki
Copy link
Contributor

also, I'm not sure what to do with this srcpkgs/python3-json5/template:16: license Apache-2.0 should not be installed

You can drop the post_install() with vlicense

@ericonr ericonr added the new-package This PR adds a new package label May 14, 2021
@dkwo dkwo force-pushed the jlab branch 2 times, most recently from a204bbc to 72c55bc Compare May 15, 2021 12:13
@dkwo dkwo changed the title [wip] new package: jupyterlab New package: jupyterlab May 15, 2021
@dkwo
Copy link
Contributor Author

dkwo commented May 15, 2021

This doesn't seem a real build-time cycle, rather a runtime dependency that is not correctly handled by xbps-src, so I think this is ready for review.

@ahesford
Copy link
Member

The cycle is probably introduced by checkdepends. I encountered this at one point and disabled tests in one template because they failed anyway, and that broke the cycle. I'll take a look to see where the cycle is in this case.

@ahesford ahesford mentioned this pull request May 16, 2021
2 tasks
@ahesford
Copy link
Member

I force-pushed a couple of fixes and broke the check cycle by disabling checks in python3-jupyter_core, python3_jupyter_client and python3-ipython_ipykernel. However, there are still some changes that should be made:

  1. Please take ownership of all the new packages added here. I am not interested in maintaining the ones I added to support my earlier effort, and you should also control python3-pyrsistent since you are adding it to support Jupyter.
  2. There are still some other tests that fail and need to be reconciled. I didn't fix everything in the list.
  3. Rename python3-jupyter_nbclassic to python3-nbclassic. (Most of the existing python3-jupyter* packages are misnamed, but I don't know if we want to bother renaming them now; we should at least pick the right name for new packages.)
  4. I don't think this resolves the jupyter console issue I was having, which also triggers some test failures in (I think) python3-nbformat. This seems to be related to PyZMQ, but I haven't dug into it and am not sure if there is an upstream fix somewhere. That needs to be resolved.

@dkwo
Copy link
Contributor Author

dkwo commented May 22, 2021

@ahesford Thanks. I fixed the easy stuff, will look at tests now.

@dkwo
Copy link
Contributor Author

dkwo commented May 22, 2021

If on my machine I do

./xbps-src update-bulk
./xbps-src check python3-jupyter_nbconvert

then I get
========== 275 passed, 5 skipped, 5 deselected, 5 warnings in 49.49s ===========
Why is it failing on ci?

I fixed json5, but I'm still unable to fixanyio, jupyter_server, jupyterlab_server, jupyterlab, nbclassic due presumably to missing packages in Void, or their depending on packages that already skip tests. Can I skip test for these as well?

Finally, jupyter_console was probably broken already before, but

 ./xbps-src check python3-jupyter_nbformat
======================= 99 passed, 2 deselected in 0.34s =======================

so that seems fine.

@dkwo
Copy link
Contributor Author

dkwo commented Jun 4, 2021

Added make_check=no to anyio, jupyter_server, jupyterlab_server, jupyterlab, nbclassic, jupyter_console, as well as to python3-jupyter_nbconvert (this one just temporarily, as I said).

@dkwo dkwo force-pushed the jlab branch 3 times, most recently from f6cd84c to eb0aedd Compare June 5, 2021 08:24
@dkwo
Copy link
Contributor Author

dkwo commented Jun 5, 2021

@ahesford Do you understand why the aarch and arm builds are failing?
The rest seems to be fine now.

@ahesford
Copy link
Member

ahesford commented Jun 7, 2021

Python dependencies (like python3-jupyter_{notebook,server} in python3-jupyterlab_server) should generally go in hostmakedepends, not makedepends, because the host Python interpreter needs to find them. As a special case, only if the Python packages include headers or shlibs that will be linked against in compiled extensions, the packages should be included in makedepends in adddition to hostmakedepends.

I haven't looked through the other templates in this PR, but you should probably move python3-* dependencies from makedepends to hostmakedepends in all of them.

@ahesford
Copy link
Member

ahesford commented Jun 7, 2021

Ok, this looks almost ready to go, but there are two issues:

  1. Do you mind bumping the python3-jupyter meta-package to agree with python3-jupyter_core and taking ownership of that? I split it off some time ago to avoid a build loop.
  2. Running jupyter console causes an error described in RuntimeWarning: coroutine 'ZMQSocketChannel.msg_ready' was never awaited jupyter/jupyter_console#241. Downgrading to our currently packaged python3-jupyter_client-6.1.0_2 seems to fix the issue. Can you update python3-jupyter_client to version 6.1.12 (the last pre-6.2 release that hasn't been yanked) instead of 6.2.0, then make sure everything works as expected? We should delay 6.2 until that issue is fixed.

@dkwo
Copy link
Contributor Author

dkwo commented Jun 7, 2021

@ahesford Done.

@ahesford ahesford closed this in 7276821 Jun 7, 2021
uncomfyhalomacro pushed a commit to uncomfyhalomacro/void-packages that referenced this pull request Jun 12, 2021
@dkwo dkwo deleted the jlab branch July 24, 2021 07:48
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Oct 22, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
new-package This PR adds a new package
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants