GNU bug report logs - #39765
Add package JupyterLab

Previous Next

Package: guix-patches;

Reported by: Lars-Dominik Braun <ldb <at> leibniz-psychology.org>

Date: Mon, 24 Feb 2020 10:19:02 UTC

Severity: normal

Done: Lars-Dominik Braun <lars <at> 6xq.net>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 39765 in the body.
You can then email your comments to 39765 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to guix-patches <at> gnu.org:
bug#39765; Package guix-patches. (Mon, 24 Feb 2020 10:19:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Lars-Dominik Braun <ldb <at> leibniz-psychology.org>:
New bug report received and forwarded. Copy sent to guix-patches <at> gnu.org. (Mon, 24 Feb 2020 10:19:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Lars-Dominik Braun <ldb <at> leibniz-psychology.org>
To: guix-patches <at> gnu.org
Subject: Add package JupyterLab
Date: Mon, 24 Feb 2020 11:18:10 +0100
[Message part 1 (text/plain, inline)]
Hi,

this patch series adds Jupyter’s JupyterLab, which is the new frontend for
Jupyter Notebooks. The software works fine, but there are a few caveats

1) it comes with bundled pre-compiled JavaScript, which cannot be removed until
   we have proper support for importing from NPM
2) it contains an extension manager, that downloads arbitrary packages from NPM
   (`jupyter lab build`). This works, but is less than optimal imo. We should
   figure out how to package extensions in guix.
3) also it is required to install the package `jupyter`, otherwise installed
   kernels cannot be found and the `jupyter` command does not work.

Cheers,
Lars

[0001-gnu-Add-package-python-pytest-check-links.patch (text/x-diff, attachment)]
[0002-gnu-Add-package-python-json5.patch (text/x-diff, attachment)]
[0003-gnu-Add-package-python-jupyterlab-server.patch (text/x-diff, attachment)]
[0004-gnu-Add-package-python-jupyterlab.patch (text/x-diff, attachment)]
[0005-gnu-python-notebook-Support-UNIX-domain-sockets.patch (text/x-diff, attachment)]

Information forwarded to guix-patches <at> gnu.org:
bug#39765; Package guix-patches. (Thu, 26 Mar 2020 22:56:02 GMT) Full text and rfc822 format available.

Message #8 received at 39765 <at> debbugs.gnu.org (full text, mbox):

From: Ludovic Courtès <ludo <at> gnu.org>
To: Lars-Dominik Braun <ldb <at> leibniz-psychology.org>
Cc: 39765 <at> debbugs.gnu.org
Subject: Re: [bug#39765] Add package JupyterLab
Date: Thu, 26 Mar 2020 23:55:26 +0100
Hi Lars,

Sorry for the late reply.

Lars-Dominik Braun <ldb <at> leibniz-psychology.org> skribis:

> this patch series adds Jupyter’s JupyterLab, which is the new frontend for
> Jupyter Notebooks. The software works fine, but there are a few caveats
>
> 1) it comes with bundled pre-compiled JavaScript, which cannot be removed until
>    we have proper support for importing from NPM
> 2) it contains an extension manager, that downloads arbitrary packages from NPM
>    (`jupyter lab build`). This works, but is less than optimal imo. We should
>    figure out how to package extensions in guix.
> 3) also it is required to install the package `jupyter`, otherwise installed
>    kernels cannot be found and the `jupyter` command does not work.

#2 should be quite easy to address: we could arrange to have that
feature disabled by default, so that users don’t find themselves
unknowingly downloading arbitrary code from npm.

#3 is OK.

#1 is a showstopper.  :-/  I suppose that’s a lot of code that would
need to be imported from npm, right?

It’s sad because all this is free software, but we practically can’t get
the corresponding source.

I’ve pushed the first two patches of the series (python-json5 and
python-pytest-check-links).

Comments on the other bits that are readily applicable:

>>From a47fd94aa6f3e62b77f3b7208c4e6757e3a9ee08 Mon Sep 17 00:00:00 2001
> From: Lars-Dominik Braun <ldb <at> leibniz-psychology.org>
> Date: Thu, 12 Dec 2019 08:53:39 +0100
> Subject: [PATCH 5/5] gnu: python-notebook: Support UNIX domain sockets
>
> * gnu/packages/python-xyz.scm (python-notebook): Add patch from upstream
> https://github.com/jupyter/notebook/pull/4835
> (python-requests-unixsocket) New variable
> ---
>  ...pyter-unix-domain-sockets-4835-5.7.4.patch | 591 ++++++++++++++++++
>  gnu/packages/python-xyz.scm                   |  35 +-
>  2 files changed, 624 insertions(+), 2 deletions(-)
>  create mode 100644 gnu/packages/patches/jupyter-unix-domain-sockets-4835-5.7.4.patch
>
> diff --git a/gnu/packages/patches/jupyter-unix-domain-sockets-4835-5.7.4.patch b/gnu/packages/patches/jupyter-unix-domain-sockets-4835-5.7.4.patch
> new file mode 100644
> index 0000000000..134d3ad2b8
> --- /dev/null
> +++ b/gnu/packages/patches/jupyter-unix-domain-sockets-4835-5.7.4.patch
> @@ -0,0 +1,591 @@

Please add provenance info at the top of the patch (such as the URL of
the upstream commit), as well as a line or two explaining what it does.

You can omit “-4835-5.7.4” from the file name.

Make sure to add the file to ‘gnu/local.mk’.

That said, it’s a big patch, so it would be even better if we didn’t
have to carry it.  Will the next version of ‘notebook’ include it?

Last, ‘python-requests-unixsocket’ should be added in a separate patch.

[...]

> +    (arguments
> +     ;; tests depend on very specific package version, which are not available in guix
> +     '(#:tests? #f))

Perhaps add a “FIXME” and clarify which packages we’re talking about
(the “not available” bit is bound to become outdated :-)).

> +    (home-page
> +     "https://github.com/msabramo/requests-unixsocket")
> +    (synopsis
> +     "Use requests to talk HTTP via a UNIX domain socket")
> +    (description
> +     "Use requests to talk HTTP via a UNIX domain socket")

Please follow the synopsis/description guidelines (info "(guix) Synopses
and Descriptions").

Thank you for this endeavor!

Ludo’.




Information forwarded to guix-patches <at> gnu.org:
bug#39765; Package guix-patches. (Fri, 27 Mar 2020 07:31:02 GMT) Full text and rfc822 format available.

Message #11 received at 39765 <at> debbugs.gnu.org (full text, mbox):

From: Lars-Dominik Braun <ldb <at> leibniz-psychology.org>
To: Ludovic Courtès <ludo <at> gnu.org>
Cc: 39765 <at> debbugs.gnu.org
Subject: Re: [bug#39765] Add package JupyterLab
Date: Fri, 27 Mar 2020 08:30:27 +0100
[Message part 1 (text/plain, inline)]
Hi Ludo,

> #2 should be quite easy to address: we could arrange to have that
> feature disabled by default, so that users don’t find themselves
> unknowingly downloading arbitrary code from npm.
it’s “disabled” by default, because it is considered experimental in this
version of JupyterLab. But a user can re-enable it. And the last part is
entirely client-side, so we cannot disable it completely until we fix #1.

> #1 is a showstopper.  :-/  I suppose that’s a lot of code that would
> need to be imported from npm, right?
`jupyter build` downloads about 600 NPM packages, as far as I remember.

> I’ve pushed the first two patches of the series (python-json5 and
> python-pytest-check-links).
Thank you!

> That said, it’s a big patch, so it would be even better if we didn’t
> have to carry it.  Will the next version of ‘notebook’ include it?
Does not look like it. The pull request[1] has been open for a few months now.
It’s vital to our use-case and (probably) everyone hosting notebooks, but not
very useful to the casual home user. So, executive decision: Do you want it in
guix proper? I’ll just maintain it in my channel[2] otherwise.

Lars

[1] https://github.com/jupyter/notebook/pull/4835
[2] https://github.com/leibniz-psychology/guix-zpid

[signature.asc (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#39765; Package guix-patches. (Mon, 30 Mar 2020 02:36:29 GMT) Full text and rfc822 format available.

Message #14 received at 39765 <at> debbugs.gnu.org (full text, mbox):

From: Ludovic Courtès <ludo <at> gnu.org>
To: Lars-Dominik Braun <ldb <at> leibniz-psychology.org>
Cc: 39765 <at> debbugs.gnu.org
Subject: Re: [bug#39765] Add package JupyterLab
Date: Sun, 29 Mar 2020 16:37:11 +0200
Hi,

Lars-Dominik Braun <ldb <at> leibniz-psychology.org> skribis:

>> #2 should be quite easy to address: we could arrange to have that
>> feature disabled by default, so that users don’t find themselves
>> unknowingly downloading arbitrary code from npm.
> it’s “disabled” by default, because it is considered experimental in this
> version of JupyterLab. But a user can re-enable it. And the last part is
> entirely client-side, so we cannot disable it completely until we fix #1.
>
>> #1 is a showstopper.  :-/  I suppose that’s a lot of code that would
>> need to be imported from npm, right?
> `jupyter build` downloads about 600 NPM packages, as far as I remember.

OK.

>> That said, it’s a big patch, so it would be even better if we didn’t
>> have to carry it.  Will the next version of ‘notebook’ include it?
> Does not look like it. The pull request[1] has been open for a few months now.
> It’s vital to our use-case and (probably) everyone hosting notebooks, but not
> very useful to the casual home user. So, executive decision: Do you want it in
> guix proper? I’ll just maintain it in my channel[2] otherwise.

(It’s not about what I personally want or don’t want, of course.  :-))
In general, the guideline is to have patches that are either included
upstream, just not in a published release, or are Guix-specific and thus
are not meant to be included upstream.

This patch doesn’t seem to fall in any of these two categories, so I
would prefer not to have it, at least not until upstream has included
it.

WDYT?

Thanks,
Ludo’.




Information forwarded to guix-patches <at> gnu.org:
bug#39765; Package guix-patches. (Mon, 30 Mar 2020 06:12:01 GMT) Full text and rfc822 format available.

Message #17 received at 39765 <at> debbugs.gnu.org (full text, mbox):

From: Lars-Dominik Braun <ldb <at> leibniz-psychology.org>
To: Ludovic Courtès <ludo <at> gnu.org>
Cc: 39765 <at> debbugs.gnu.org
Subject: Re: [bug#39765] Add package JupyterLab
Date: Mon, 30 Mar 2020 08:10:54 +0200
Hi Ludo,

> (It’s not about what I personally want or don’t want, of course.  :-))
> In general, the guideline is to have patches that are either included
> upstream, just not in a published release, or are Guix-specific and thus
> are not meant to be included upstream.
>
> This patch doesn’t seem to fall in any of these two categories, so I
> would prefer not to have it, at least not until upstream has included
> it.
sure, I can see that :)

Lars





bug closed, send any further explanations to 39765 <at> debbugs.gnu.org and Lars-Dominik Braun <ldb <at> leibniz-psychology.org> Request was from Lars-Dominik Braun <lars <at> 6xq.net> to control <at> debbugs.gnu.org. (Thu, 14 Jan 2021 09:12:02 GMT) Full text and rfc822 format available.

bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Thu, 11 Feb 2021 12:24:07 GMT) Full text and rfc822 format available.

This bug report was last modified 3 years and 46 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.