Skip to content
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

update Jmol spkg to support pure javascript 3-D in notebook... #16003

Closed
gutow opened this issue Mar 24, 2014 · 51 comments
Closed

update Jmol spkg to support pure javascript 3-D in notebook... #16003

gutow opened this issue Mar 24, 2014 · 51 comments

Comments

@gutow
Copy link

gutow commented Mar 24, 2014

Update Jmol to Jmol-14.0.13 which supplies the JSmol pure javascript version of Jmol. Utilizing this requires significant changes to how the notebook utilizes Jmol/JSmol. The notebook changes are in ticket #16004.

In addition to the updates to the new-style SPKG, the tar.gz from Jmol needs to be renamed before it matches the Sage standards. The Jmol project distributes a large number of different archives. The appropriate one for this SPKG is the Jmol-14.0.13-binary.tar.gz, which needs to be renamed to jmol-14.0.13.tar.gz (note the lower case "j"). The Jmol archive can be downloaded using this direct link Jmol-14.0.13-binary.tar.gz. Rename and place in "upstream" directory.

This will break the current Jmol in the notebook as a serious reorganization of supporting files was required to support both java and javascript live 3-D.

After adding the new jmol-14.0.13.tar.gz to the upstream directory checkout this ticket and install the package.

$./sage -dev checkout --ticket 16003
$ ./sage -f jmol 

To test you will need the updates to the notebook as well.

Depends on #16004

CC: @kcrisman @novoselt @strogdon @kiwifb

Component: packages: standard

Keywords: Jmol 3D 3-D

Branch/Commit: u/kcrisman/jmol @ f8ba6aa

Reviewer: Volker Braun, Karl-Dieter Crisman

Issue created by migration from https://trac.sagemath.org/ticket/16003

@gutow gutow added this to the sage-6.2 milestone Mar 24, 2014
@gutow

This comment has been minimized.

@gutow
Copy link
Author

gutow commented Mar 24, 2014

Branch: u/gutow/ticket/16003

@gutow
Copy link
Author

gutow commented Mar 24, 2014

New commits:

e417d3bJmol/JSmol to 14.0.11

@gutow
Copy link
Author

gutow commented Mar 24, 2014

Commit: e417d3b

@gutow gutow self-assigned this Mar 24, 2014
@fchapoton
Copy link
Contributor

comment:6

some typos : "privides" and "supposted"

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Apr 5, 2014

Branch pushed to git repo; I updated commit sha1. New commits:

049657ftypo fixes to Jmol/SPKG.txt

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Apr 5, 2014

Changed commit from e417d3b to 049657f

@gutow

This comment has been minimized.

@gutow

This comment has been minimized.

@kcrisman
Copy link
Member

kcrisman commented Apr 8, 2014

comment:11

Of course, on Macs

The appropriate one for this SPKG is the Jmol-14.0.11-binary.tar.gz, which needs to be renamed to jmol-14.0.11.tar.gz (note the lower case "j").

doesn't really do that much, since it is only fictively case-sensitive :-)

Okay, trying to look into this between much grading and other stuff.

@kcrisman

This comment has been minimized.

@kcrisman
Copy link
Member

kcrisman commented Apr 8, 2014

Dependencies: #16004

@kcrisman
Copy link
Member

comment:13

I should point out that the command-line Jmols work just fine with this; it's the notebook piece that requires more review (as well as testing on some other platforms).

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Apr 21, 2014

Branch pushed to git repo; I updated commit sha1. New commits:

f9e55eeupdate Jmol/JSmol popup menu to include file actions
a89ac4bupdate Jmol/JSmol to version 14.0.13

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Apr 21, 2014

Changed commit from 049657f to a89ac4b

@gutow

This comment has been minimized.

@gutow

This comment has been minimized.

@strogdon
Copy link

comment:17

Minor item. It appears jmol version and release date are hardcoded somewhere, probably in SageMenu.mnu and I guess should be changed to 14.0.13 and whatever the appropriate release date is. I see this when right-clicking on a live jmol and mousing to About -> Jmol

@sagetrac-vbraun-spam sagetrac-vbraun-spam mannequin modified the milestones: sage-6.2, sage-6.3 May 6, 2014
@kcrisman
Copy link
Member

comment:28

I hope I didn't screw this up.


New commits:

8d0bd28Merge branch 'public/ticket/16003' of trac.sagemath.org:sage into jsmol
0071f18Remove unnecessary testjava.sh test

@kcrisman
Copy link
Member

Changed branch from public/ticket/16003 to u/kcrisman/jmol

@kcrisman
Copy link
Member

comment:29

Hi strogdon,

Minor item. It appears jmol version and release date are hardcoded somewhere, probably in SageMenu.mnu and I guess should be changed to 14.0.13 and whatever the appropriate release date is. I see this when right-clicking on a live jmol and mousing to About -> Jmol

You are correct, that will have to be hand-edited whenever we decide the final version here.

Weirdly, I do not see this problem when using a Jmol (from command line, of course) - it seems to acquire the correct info from system itself. So in principle we don't even have to change this.

I think this is ready for positive review as long as it actually applies properly, and of course pending #16004 or some variant thereof.

@fchapoton
Copy link
Contributor

comment:30

Latest available version is now Jmol-14.2.4_2014.08.03-binary.tar.gz

at http://sourceforge.net/projects/jmol/files/Jmol/Version%2014.2/Version%2014.2.4/

@kcrisman
Copy link
Member

comment:31

Latest available version is now Jmol-14.2.4_2014.08.03-binary.tar.gz

Do you see any substantive differences between this and that? (I assume it doesn't have the #12212 change in any case.)

Weirdly, I do not see this problem when using a Jmol (from command line, of course) - it seems to acquire the correct info from system itself. So in principle we don't even have to change this.

This is about SageMenu.mnu - in the notebook Jmols it also finds this info fine until we switch to the custom one, very weird. I'm trying to figure out where that .mnu file is defined but the one at the Jmol website is clearly several (major) versions out of date.

Ah, found it - local/share/jsmol/j2s/core/coremenu.z.js. Naughty! But even the untranslated local/share/jsmol/js/coremenu.js seems to be getting this info dynamically in some way I'm not going to figure out immediately. So I'm going to do the easy fix to that for now.

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Aug 25, 2014

Branch pushed to git repo; I updated commit sha1. New commits:

f8ba6aaupdate version of Jmol to Jonathan's last spkg

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Aug 25, 2014

Changed commit from 0071f18 to f8ba6aa

@vbraun
Copy link
Member

vbraun commented Sep 21, 2014

comment:33

"unzip" is not one of our build-time dependencies so far: http://www.sagemath.org/doc/installation/source.html#general-requirements I'm not terribly concerned about that one, but this is why I went a different route in #17020. But if you want to require unzip then it should be documented.

Why does this ticket depend on #16004? We should merge the jmol update asap, no need to wait as long as it doesn't break something that is currently working. Anything related to jsmol can then be dealt with in #16004 if necessary.

@kcrisman
Copy link
Member

comment:34

As the description points out:

This will break the current Jmol in the notebook as a serious reorganization of supporting files was required to support both java and javascript live 3-D.

To say this more clearly, I believe the new jmol interface uses js even for Java applets when used on the web (not command line), so one would have to reorganize in any case. Also, I don't know that there are enough other goodies to make the Jmol update worthwhile, per se.

@fchapoton
Copy link
Contributor

comment:35

Well, new features in Jmol would be needed for #12212, but it requires Jmol 14.2.5.

@vbraun
Copy link
Member

vbraun commented Sep 22, 2014

comment:36

The notebook jmol viewer is working with #17020, and I suspect it is also working with this ticket. Of course not in chrome, which has by now permanently kicked the old java applet to the curb. Works in firefox with the icedtea plugin, though.

Unless somebody objects I would propose that we make a modified tarball that does not require unzip, that is, by re-packing the upstream tarball.

Frederic, it seems that 14.2.5 is not out yet? Since you seem to know upstream, maybe you can suggest that they put jsmol uncompressed inside their archive, and not a zip-with-tar file.

@fchapoton
Copy link
Contributor

comment:37

Yes, the changes for #12212 are not yet in a release, they are in fact in there:

http://sourceforge.net/projects/jmol/files/Jmol-beta/Jmol%2014.3/Jmol%2014.3.6/

I am not sure to know "upstream". I have had a private mail exchange about #12212 with somebody who was very reactive and efficient, and had the power to include changes in the latest jmol beta. I can give you his name and mail if you send me a private mail.

@kcrisman
Copy link
Member

comment:38

The notebook jmol viewer is working with #17020, and I suspect it is also working with this ticket. Of course not in chrome, which has by now permanently kicked the old java applet to the curb. Works in firefox with the icedtea plugin, though.

Huh, that's surprising, Jonathan made it sound like the interface had changed enough that it wouldn't. We're even having trouble with icedtea here at AIMS in any case :-(

Unless somebody objects I would propose that we make a modified tarball that does not require unzip, that is, by re-packing the upstream tarball.

That seems reasonable; Jonathan, did you have a reason for including that? Maybe it's just because that's how upstream packages it...

@strogdon
Copy link

comment:39

Replying to @vbraun:

The notebook jmol viewer is working with #17020, and I suspect it is also working with this ticket. Of course not in chrome, which has by now permanently kicked the old java applet to the curb. Works in firefox with the icedtea plugin, though.

Maybe I misunderstand but just upgrading jmol as in #17020 without doing anything else break jmol in the notebook here. This is with firefox and either icedtea or oracle plugin.

@vbraun
Copy link
Member

vbraun commented Sep 23, 2014

comment:40

As far as I understand, the 14.3.x series is the current beta and 14.2.x is the stable branch. E.g. look at the SF download page http://sourceforge.net/projects/jmol/files/

@vbraun
Copy link
Member

vbraun commented Sep 23, 2014

comment:41

Also, why is

+ * JVM (java virtual machine) on the server.

added to the dependencies?

@vbraun
Copy link
Member

vbraun commented Sep 23, 2014

comment:42

Ok, I can confirm that the jmol upgrade does not work with the current notebook. I must have had the wrong version installed.

@gutow
Copy link
Author

gutow commented Sep 26, 2014

comment:43

Replying to @vbraun:

Also, why is

+ * JVM (java virtual machine) on the server.

added to the dependencies?

Tried to answer this a few days ago, but it didn't go through. The JVM allows the server to run a headless version of Jmol to generate high quality static images. If the JVM is not available things default to the lower quality Tachyon images (with some work those cold be made better). The other reason to keep this is that if I ever finish sorting out the issues caused by the attempts to kill Java applets in browsers, I can begin to utilize this server-side engine to make much more efficient and adaptable packages of data to send to the browser for viewing.

@vbraun
Copy link
Member

vbraun commented Sep 26, 2014

comment:44

But its still not a build requirement for jmol, right? Only a (optional) runtime dependency of sagenb.

@vbraun
Copy link
Member

vbraun commented Oct 5, 2014

comment:45

I propose to close this ticket as duplicate of #17020. I imported all commits there, but switched to the different packaging that does not require unzip.

@vbraun vbraun removed this from the sage-6.4 milestone Oct 5, 2014
@kcrisman
Copy link
Member

kcrisman commented Oct 7, 2014

comment:46

Sure, no problem, that makes perfect sense, as long as #17020 works out fine :-)

@kcrisman
Copy link
Member

kcrisman commented Oct 7, 2014

Changed author from gutow to none

@kcrisman
Copy link
Member

kcrisman commented Oct 7, 2014

Reviewer: Volker Braun, Karl-Dieter Crisman

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants