Hi Elizabeth,
On 18/01/16 22:02, Elizabeth Fischer wrote:
It is my opinion that all package names should be lower case. Or
case-insensitive. Having mixed-case case-dependent names just adds
possibility for error without any gain. (I'm thinking about the hour
I wasted debugging a CMake script this week over "BOOST" vs "Boost".)
If you're concerned about the casing of the names of the modules that
EasyBuild generates, you can use a custom module naming scheme that
simply takes the current module name and transforms it into the
lowercase equivalent.
Implementing this custom module naming scheme is trivial, see
https://github.com/hpcugent/easybuild-framework/tree/master/easybuild/tools/module_naming_scheme
for (way more involved) examples.
Together with configuring Lmod to ignore casing for "module avail"
(i.e., what Pablo mentioned), this is a very user-friendly setup imho.
If you're talking about the names we use in easyconfig files, you have a
good point though.
We try to keep it consistent to sticking to the 'official' software
name, but it does get confusing at times.
Maybe we can simply make the robot a little bit more flexible, and make
it also search for easyconfigs in a case-insensitive way when resolving
dependencies if the case-sensitive search (which is likely going to be a
lot faster) failed.
It can either make the suggestion to correct the dependency name, or
just use the easyconfig it found with the case-insensitive search.
Switching to an all-lowercase policy for software names is an intrusive
change though, but maybe worth considering.
It's kind of a religious discussion though, there's no "right" option
here imho...
regards,
Kenneth
-- Elizabeth
On Mon, Jan 18, 2016 at 3:54 PM, Kenneth Hoste <[email protected]
<mailto:[email protected]>> wrote:
Hi Ben,
On 18/01/16 21:25, Ben Roberts wrote:
Hi,
At our facility a colleague of mine recently prepared some
custom EB recipes for FFmpeg (https://www.ffmpeg.org). A
little later I found easyconfigs for ffmpeg [sic]. I imagine
case is important in Easybuild, and it’s at least good to be
consistent. It seems the official name is FFmpeg. Is it worth
updating the name, or better on the whole to stick with the
status quo?
Typically, we try and stick to the 'official' software name, indeed.
Sometimes it's hard to tell, but here it's pretty clear: it should
be 'FFmpeg' (cfr. https://www.ffmpeg.org/about.html).
So, yes, changing it to FFmpeg makes sense to me. I see this as a
bug fix.
This has some impact though, especially because 'ffmpeg' is
currently used as a dependency for 'animation' and 'OpenCV'.
In the PR where the current 'ffmpeg' are changed to use 'FFmpeg'
instead, the dependency specs will need to be updated too (if not,
Jenkins will complain about failing unit tests).
The only issue with this rename is that this potentially impacts
easyconfig files that are not included in the central easyconfigs
repository: if they use 'ffmpeg' now, they will need to be changed
to use 'FFmpeg' (unless the required 'ffmpeg' easyconfigs are also
available locally).
In this case, the impact is likely low though...
regards,
Kenneth