>From what I'm seeing in the emails, there is no need for me to change Lmod
w.r.t. spider output.   That all I need to do is document how Spider uses
the whatis string.  Any other issues can be handled by EasyBuild.

Do I have this right?
R.


On Mon, Jul 3, 2017 at 7:37 AM, Alvarez, Damian <[email protected]>
wrote:

> This is probably a discussion more for the easybuild mailing list (in CC
> now).
>
> Avoiding autogenerated “whatis” lines is fine IMO, as long as it does not
> affect the autogenerated “help” lines. That’s actually kind of the whole
> point, being able to control what is included in “whatis”, which should be
> a oneliner kind of thing (ok, it might be longer, but it shouldn’t be a
> full blown “help”). That’s at least how I envision the implementation of
> the suggestion that my [other] colleagues made to me last week.
>
> Also, I am talking here about our particular case, I am not sure if this
> is something that should be considered for the upstream EB repos. Maybe
> changing “whatis” upstream would break other’s setup, I am not sure. On the
> other hand, having an autogenerated “whatis” being exactly the same as the
> autogenerated “help” is kind of weird. I recall it was discussed already on
> the past, but I don’t remember the outcome of the discussion.
>
> Damian
>
> On 03/07/17 13:42, "Geimer, Markus" <[email protected]> wrote:
>
>     Damian, all,
>
>     Keep in mind that when using the 'whatis' easyconfig parameter, *all*
>     auto-generated whatis lines (description, homepage, extensions if any)
>     will be suppressed.
>
>     @Kenneth:  Maybe we need to consider the whatis lines as key/value
>     pairs, allowing to suppress (empty value) or overwrite (non-empty
>     value) auto-generated whatis entries?
>
>     Markus
>
>
>     On 07/03/2017 12:25 PM, Alvarez, Damian wrote:
>     > Let me expand a bit on the background of my question:
>     >
>     >
>     >
>     > At the moment, our modules are generated by EasyBuild, and include a
>     > long "whatis” string, and a long “help” string. These strings are
>     > autogenerated, and what EB does is making them exactly the same, if
> no
>     > specific “whatis” string is specified.
>     >
>     >
>     >
>     > Some colleagues were complaining, saying that they want to see a very
>     > short description when spidering, and a very long description when
> using
>     > “ml help”. I said that we could do it, by specifying a short “whatis”
>     > string on the EB files. I was expecting “ml spider” to show the
> contents
>     > of “whatis”, not of “help”. I did a small experiment, and I found out
>     > that I was wrong:
>     >
>     >
>     >
>     > ~]$ ml show test1
>     >
>     > -------------------------------
>     >
>     >    /path/to/test1/1.0.lua:
>     >
>     > -------------------------------
>     >
>     > whatis("whatis")
>     >
>     > help([[help]])
>     >
>     >
>     >
>     > ~]$ ml spider test1
>     >
>     >
>     >
>     > -------------------------------
>     >
>     >   test1: test1/1.0
>     >
>     > -------------------------------
>     >
>     >
>     >
>     >     This module can be loaded directly: module load test1/1.0
>     >
>     >
>     >
>     >     Help:
>     >
>     >       help
>     >
>     >
>     >
>     > After Rob’s first email I now understand that I can “trick” lmod and
>     > make spider print the content of “whatis”:
>     >
>     >
>     >
>     > ~]$ ml show test1
>     >
>     > -------------------------------
>     >
>     >    /path/to/test1/1.0.lua:
>     >
>     > -------------------------------
>     >
>     > whatis("Description: whatis")
>     >
>     > help([[help]])
>     >
>     >
>     >
>     > ~]$ ml spider test1
>     >
>     >
>     >
>     > -------------------------------
>     >
>     >   test1: test1/1.0
>     >
>     > -------------------------------
>     >
>     >     Description:
>     >
>     >       whatis
>     >
>     >
>     >
>     >
>     >
>     >     This module can be loaded directly: module load test1/1.0
>     >
>     >
>     >
>     >     Help:
>     >
>     >       help
>     >
>     >
>     >
>     >
>     >
>     > That gets closer to what my colleagues suggested. However, we still
> get
>     > the full “help” string, which they’d like to avoid when using spider.
>     > But I’ve seen too that the spider will print the content of help,
> when
>     > there is a single module for that software. With multiple modules the
>     > output is what we needed:
>     >
>     >
>     >
>     > ~]$ ml spider test1
>     >
>     >
>     >
>     > -------------------------------
>     >
>     >   test1:
>     >
>     > -------------------------------
>     >
>     >     Description:
>     >
>     >       whatis
>     >
>     >
>     >
>     >      Versions:
>     >
>     >         test1/1.0
>     >
>     >         test1/2.0
>     >
>     >
>     >
>     > -------------------------------
>     >
>     >   For detailed information about a specific "test1" module (including
>     > how to load the modules) use the module's full name.
>     >
>     >   For example:
>     >
>     >
>     >
>     >      $ module spider test1/2.0
>     >
>     > -------------------------------
>     >
>     >
>     >
>     >
>     >
>     > To summarize: it is all good, I think we can get Lmod to do what we
>     > want. I just wasn’t aware of all these spider output details.
>     >
>     >
>     >
>     > Best,
>     >
>     > Damian
>     >
>     >
>     >
>     >
>     >
>     > *From: *Robert McLay <[email protected]>
>     > *Date: *Friday 30 June 2017 at 21:29
>     > *To: *Kenneth Hoste <[email protected]>
>     > *Cc: *"Geimer, Markus" <[email protected]>, lmod-users
>     > <[email protected]>
>     > *Subject: *Re: [Lmod-users] Spider output - whatis vs help
>     >
>     >
>     >
>     > Either way is fine by me.  Using the second style, you'd get:
>     >
>     >
>     >
>     > $ ml spider EasyBuild/3.2.0
>     >
>     >
>     >
>     > EasyBuild/3.2.0:
>     >
>     >
>     >
>     >    Description:
>     >
>     >         ...
>     >
>     >
>     >
>     >     Whatis:
>     >
>     >          Homepage: http://hpcugent.github.com/easybuild/
>     >
>     >
>     >
>     > R.
>     >
>     >
>     >
>     >
>     >
>     >
>     >
>     > On Fri, Jun 30, 2017 at 2:13 PM, Kenneth Hoste <
> [email protected]
>     > <mailto:[email protected]>> wrote:
>     >
>     >     Hi Robert & co,
>     >
>     >     Things are slightly different now (since EayBuild v3.2.0),
> thanks to
>     >     changes made by Markus (in CC) [1]:
>     >
>     >     help([[
>     >
>     >     Description
>     >     ===========
>     >     EasyBuild is a software build and installation framework
>     >      written in Python that allows you to install software in a
> structured,
>     >      repeatable and robust way.
>     >
>     >
>     >     More information
>     >     ================
>     >      - Homepage: http://hpcugent.github.com/easybuild/
>     >     ]])
>     >
>     >     whatis([[Description: EasyBuild is a software build and
> installation
>     >     framework
>     >      written in Python that allows you to install software in a
> structured,
>     >      repeatable and robust way.]])
>     >     whatis([[Homepage: http://hpcugent.github.com/easybuild/]])
>     >
>     >
>     >     Markus: taken the below into account, do you think we should make
>     >     any further changes?
>     >
>     >
>     >     regards,
>     >
>     >     Kenneth
>     >
>     >
>     >     [1] https://github.com/hpcugent/easybuild-framework/pull/2113
>     >
>     >
>     >
>     >     On 30/06/2017 20:19, Robert McLay wrote:
>     >
>     >         Here is a typical modulefile found at Univ. of Ghent that
> have
>     >         been created by EasyBuild:
>     >
>     >
>     >
>     >         whatis([[Description: ZeroMQ looks like an embeddable
> networking
>     >         library but acts like a concurrency framework.
>     >
>     >          It gives you sockets that carry atomic messages across
> various
>     >         transports like in-process,
>     >
>     >          inter-process, TCP, and multicast. You can connect sockets
>     >         N-to-N with patterns like fanout,
>     >
>     >          pub-sub, task distribution, and request-reply. It's fast
> enough
>     >         to be the fabric for clustered
>     >
>     >          products. Its asynchronous I/O model gives you scalable
>     >         multicore applications, built as asynchronous
>     >
>     >          message-processing tasks. It has a score of language APIs
> and
>     >         runs on most operating systems. - Homepage:
>     >         http://www.zeromq.org/] <http://www.zeromq.org/%5D>])
>     >
>     >
>     >
>     >         If you are using this format for your modulefiles, then you
> will
>     >         see absolutely no change.  My proposed change would add all
> the
>     >         whatis calls that don't start with Description:.  In this
> case
>     >         there is only whatis() call in the modulefile and it starts
> with
>     >         "Description:".  This means that nothing new would be
> printed in
>     >         the proposed "Whatis" section for a level2 spider output
> (namely
>     >         ml spider boost/1.64)
>     >
>     >
>     >
>     >         Please note that I don't expect that sites will change their
>     >         modulefiles.  Only that new information might be printed when
>     >         doing "ml spider boost/1.64".
>     >
>     >
>     >
>     >         The only other thing I'm saying is that Lmod does something
>     >         special with a whatis call that starts with "Description"
> just
>     >         like the one above.  This means that site that don't
> generate a
>     >         whatis("Description: ...") call in their modulefiles might
>     >         consider adding it when they get a chance.
>     >
>     >
>     >
>     >         I hope that this clarifies what I'm proposing.
>     >
>     >         R.
>     >
>     >
>     >
>     >
>     >
>     >         ------------------------------------------------------------
> ------------------
>     >
>     >         Check out the vibrant tech community on one of the world's
> most
>     >
>     >         engaging tech sites, Slashdot.org! http://sdm.link/slashdot
>     >
>     >
>     >
>     >         _______________________________________________
>     >
>     >         Lmod-users mailing list
>     >
>     >         [email protected]
>     >         <mailto:[email protected]>
>     >
>     >         https://lists.sourceforge.net/lists/listinfo/lmod-users
>     >
>     >
>     >
>     >
>     >
>     >
>     >
>     > --
>     >
>     > Robert McLay, Ph.D.
>     >
>     > TACC
>     >
>     > Manager, HPC Software Tools
>     >
>     > (512) 232-8104
>     >
>     >
>     >
>
>     --
>     Dr. Markus Geimer
>     Juelich Supercomputing Centre
>     Institute for Advanced Simulation
>     Forschungszentrum Juelich GmbH
>     52425 Juelich, Germany
>
>     Phone:  +49-2461-61-1773
>     Fax:    +49-2461-61-6656
>     E-Mail: [email protected]
>     WWW:    http://www.fz-juelich.de/jsc
>
>
>
>
> ------------------------------------------------------------
> ------------------------------------
> ------------------------------------------------------------
> ------------------------------------
> Forschungszentrum Juelich GmbH
> 52425 Juelich
> Sitz der Gesellschaft: Juelich
> Eingetragen im Handelsregister des Amtsgerichts Dueren Nr. HR B 3498
> Vorsitzender des Aufsichtsrats: MinDir Dr. Karl Eugen Huthmacher
> Geschaeftsfuehrung: Prof. Dr.-Ing. Wolfgang Marquardt (Vorsitzender),
> Karsten Beneke (stellv. Vorsitzender), Prof. Dr.-Ing. Harald Bolt,
> Prof. Dr. Sebastian M. Schmidt
> ------------------------------------------------------------
> ------------------------------------
> ------------------------------------------------------------
> ------------------------------------
>
>


-- 
Robert McLay, Ph.D.
TACC
Manager, HPC Software Tools
(512) 232-8104

Reply via email to