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



Reply via email to