[Scilab-users] Update library and help

Jean-Yves Baudais Jean-Yves.Baudais at insa-rennes.fr
Fri Jan 29 18:47:28 CET 2021


Hello,

Thanks for the message.

----- Original Message -----
> Do you get any error message that tells that this line is KO while by default
> other ones are OK?
> Please note that the compilation of the documentation can (quite often) yield
> some errors that are [ http://bugzilla.scilab.org/7255 | NOT displayed in the
>        Scilab console ] (but, on Windows, in the so-called consolebox()).
> After such "silent" errors, some involved files [
> http://bugzilla.scilab.org/8430 | can
>        stay locked ] (or simply not updated), and next instructions might look as
>        failing.

I saw that some messages are written on XTERM and not on Scilab window.

Well, I did new test with a simple function in home+"/macros"

function out=testadd(a,b)
  // To test process for lib
  //
  // Syntax
  //  out=testlib(a,b)
  // Parameters
  //  a: scalar
  //  b: scalar
  // Description
  //  Add to scalar
  // Author
  //  Me
  // Bibliography
  //  Nothing
  out=a+b;
endfunction

and I generate the lib "testlib". Contrary to what I wrote, that works fine. I did mistake when I used clear. It must be
--> clear testlib testadd
and not
--> clear testlib, testadd
(testadd should also be cleared if it has been called, because load("macros/lib") is not enough to replace the function already loaded in Scilab memory, I guess)

So, there is no problem with the updated library though the load is fisrtly done in .scilab. I don't need to restart Scilab to use the updated library "testlib".

The problem still remains for the help:

--> help_from_sci("macros","help/gl_GL")
help_from_sci: Reading from directory macros
help_from_sci: Processing of file: macros/testadd to help/gl_GL/testadd
help_from_sci: processed 1 files.
ans  =
""

Of course I created the help/gl_GL directory before, otherwise there is an error, and testadd.xml is created (gl is for globish, english is out of my reach)

--> xmltojar("help/gl_GL","My test lib","gl_GL")

jar/scilab_gl_GL_help.jar is udpated, and there is also a message in the linux XTERM with the number of generated files.

--> add_help_chapter("My test lib","jar")
T

--> help

The chapter "My test lib" is in the help window with the function testadd.

--> del_help_chapter("My test lib")
--> help

The chapter is not in the help, as expected.

--> add_help_chapter("My test lib","jar")
T

I change the head comment and rebuilt the help:

--> help_from_sci("macros","help/gl_GL")

a warning mentions that the file exists, but I choose "create anyway"

--> xmltojar("help/gl_GL","My test lib","gl_GL")

the files are updated

--> help
Could not load file: /home/jbaudais/jar/scilab_gl_GL_help.jar. Please check its contents, must be a Java Help file.
Error message: Could not parse
Got an IOException (JAR entry scilab_gl_GL_help/jhelpset.hs not found in /home/jbaudais/jar/scilab_gl_GL_help.jar)
Parsing failed for null

However, I can open the file "jhelpset.hs", so the message is wrong, the entry "scilab_gl_GL_help/jhelpset.hs" exists in the file "/home/jbaudais/jar/scilab_gl_GL_help.jar", on the filesystem of course, but Scilab use its memory (stack, heap?) and not the filesystem. Maybe the "scilab_gl_GL_help.jar" is corrupted by xmltojar on the Scilab memory. What do you think?


I try 
--> del_help_chapter("My test lib")

before modification, and

--> add_help_chapter("My test lib","jar")

but that change nothing. I must restart scilab and

--> add_help_chapter("My test lib","jar")
--> help

it works fine. 

So, I have no solution to rebuilt the help without Scilab restart, from scratch! I think the corresponding Scilab memory is not correctly updated or is corrupted somewhere (xmltojar, add_help_chapter?), so we must restart Scilab. Do you have the same behaviour?

-- Jean-Yves

PS : I read the discussion about profile and did test. Is there similar tool to check memory within Scilab, or do we need to use external tools as valgrind?



More information about the users mailing list