-
-
Notifications
You must be signed in to change notification settings - Fork 490
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
Repackage Sage's cropped threejs as a pip-installable package (nbextension) jupyter-threejs-sage #30123
Comments
comment:2
My guess is that the new install script The code that installs the Jupyter kernel has moved recently to This should be investigated by someone who knows about the notebook. |
comment:3
According to Dima Pasechnik, this can be fixed by Indeed... That is neverthelass a bug that should be fixed. |
comment:5
Note that |
comment:6
Replying to @jhpalmieri:
Let's fix that in #30153. |
comment:7
Replying to @mkoeppe:
As of Sage 9.2.beta7 (which includes #30153), |
comment:8
FWIW, here is the content of
The
fixes the Jupyter notebook issue reported in this ticket. |
comment:9
Thanks for investigating this. This is, as I thought, due to the poisoning of environment variables in the script The links that created here seem to assume that The correct fix is to create |
comment:10
In fact, it seems strange that the sagelib installation script would even install these links. Shouldn't the install script of |
This comment has been minimized.
This comment has been minimized.
comment:11
Hoping that someone who knows about these javascript things will work on this ticket. |
comment:12
for some reason |
comment:13
I think this ticket is moving in the wrong direction. The issue is not with the installation of JavaScript packages, it is that they all expect a link to |
comment:14
As you can see in comment 8, it is called but the paths are configured wrong. |
comment:15
So the notebook doesn't work because of an explicit mangling of environment variables. Why can't you just unmangle the appropriate directory so that notebook setup works? Oddly enough all of the tests in As for using a system Three.js I would definitely advise against that. Mr.doob very often makes changes that are NOT backward compatible. The template that renders Three.js is version dependent: you can't just switch to a newer version and expect it to work. That's why I continue to extract the core of the library and package it here separately from the upstream repository. |
comment:16
Replying to @paulmasson:
The mangling happens during install, not during testing.
That's an important bit of information.
You package it where? |
comment:17
Replying to @mkoeppe:
If you look at the upgrade tickets, like #29809, I always attach a zip file containing a small portion of the full library. I've been doing that since I started the viewer, at first just to avoid downloading the full library. There is however a change coming in the new year, in which one of the two critical files we use will officially be removed from the library. That will necessitate either continuing the current process or modifying a local copy of the full library, a process over which we would not be guaranteed control. Volker has been moving my zip files to the mirrors manually. Do you know if that is also the process for libraries with upstream links? |
comment:18
Replying to @paulmasson:
Thanks. I am looking at Since the 9.1 cycle we have a better mechanism for tickets that upgrade spkgs. See https://wiki.sagemath.org/ReleaseTours/sage-9.1#For_developers-1 |
comment:19
Replying to @mkoeppe:
OK, but is it possible to reliably test for presence of a specific version in the system? Do you know how distribution packagers handle this? (Debian, Gentoo, ...) |
comment:21
Replying to @mkoeppe:
That's precisely what I used for the last update. |
comment:22
Replying to @mkoeppe:
You can search for a REVISION string as is done here. This code was written to ditch On a more general note, what if a user installs a newer package of any sort that creates conflicts with Sage? Do you then force installation of the version needed by Sage? |
comment:23
Replying to @paulmasson:
Thanks. So this looks at a local installation (located via the When you make updates, do you make simultaneous changes to both sagelib and to the threejs spkg?
The |
comment:24
The standard way to install notebook extensions seems to be using |
comment:25
Replying to @mkoeppe:
In many ways The only real example I have on top of my head is |
comment:64
Replying to @kiwifb:
That's right, same behavior as |
comment:65
Replying to @mkoeppe:
Can't quite believe how that little bit just destroy the ebuild file format. Just 'b' would pass, but 'b1' with a meaning of 'beta 1', I technically should transform that into |
comment:66
Replying to @mkoeppe:
Tested with the Arch package, everything works. +1 from me. |
comment:67
Replying to @kiwifb:
Hopefully we can quickly proceed to an actual release so that this problem will go away. |
comment:68
Replying to @mkoeppe:
That's just venting. I can, and did, work around that. |
Changed keywords from none to sd111 |
comment:69
Hoping we can make progress on this ticket this week - https://wiki.sagemath.org/days111 |
This comment has been minimized.
This comment has been minimized.
comment:72
please rebase |
comment:73
Replying to @mkoeppe:
As it turns out, it is very relevant; and it would probably be best to redo the Python packaging ( |
comment:75
Opened #32070 (Add package pythreejs 2.3.0). |
comment:76
Setting a new milestone for this ticket based on a cursory review. |
As a follow-up to #30972, we provide a pip-installable package (nbextension) that makes (all supported versions of) the
threejs-sage
offline script available to a Jupyter notebook:This allows users to set up a system Jupyter notebook in which Sage is fully functional (including offline 3d graphics), without having to manually create symlinks from a Sage installation to the system's nbextensions directory.
see also:
spkg-configure
formathjax
User reports:
Depends on #30972
CC: @dimpase @kliem @paulmasson @jcamp0x2a @nbruin @slel @mjungmath @orlitzky @kiwifb @antonio-rojas @mwageringel
Component: user interface
Keywords: sd111
Author: Matthias Koeppe
Branch/Commit: u/mkoeppe/repackage_sage_s_cropped_threejs_as_a_pip_installable_package__nbextension__jupyter_threejs_sage @
74ade58
Issue created by migration from https://trac.sagemath.org/ticket/30123
The text was updated successfully, but these errors were encountered: