Donders-Institute / staff-scientists

The consultancy page for the DCCN staff scientists
https://staff-scientists-dccn.readthedocs.io
3 stars 1 forks source link

request to install more recent versions of bids-validator #8

Closed robertoostenveld closed 3 years ago

robertoostenveld commented 3 years ago

Describe the issue

I want to use the command-line version of the bids-validator to test the construction of BIDS datasets. The latest version is 1.8.2, see https://github.com/bids-standard/bids-validator/releases. The (only) version we have as a module is 1.4.2

Describe yourself

  1. Robert Oostenveld
  2. Associate PI
  3. megmethods

To Reproduce

roboos@mentat002> module add bids-validator
roboos@mentat002> bids-validator --v
1.4.2

Expected behavior

roboos@mentat002> module avail bids-validator
-------------------------------- /opt/_modules ---------------------------------
bids-validator/1.4.2(default)

I would expect this to show all versions, including all versions in between 1.8.2 and 1.4.2. I would expect the latest version being the default.

Environment and versions (please complete the following information):

DCCN compute cluster.

Additional context

See https://github.com/fieldtrip/fieldtrip/issues/1859 and https://github.com/fieldtrip/fieldtrip/issues/1844. On https://intranet.donders.ru.nl/index.php?id=torque-software I see that nobody is assigned as responsible. Looking at the currently installed version, I see that it is implemented as singularity container:

roboos@mentat002> ls /opt/bids-validator/1.4.2/
bids-validator.simg
schoffelen commented 3 years ago

I see on: https://intranet.donders.ru.nl/index.php?id=torque-software that there's currently no maintainer listed for the bids-validator. I think it would indeed be a good idea to discuss with TG whether they can address the version issue (i.e. add missing versions, and upgrade the default to the latest), or whether @marcelzwiers / @achetverikov or me should take the maintainer role. It would probably be a good example of a situation to handle this according to the intended 'maintainers'-scheme', as outlined on: https://dccn-hpc-wiki.readthedocs.io/en/latest/docs/cluster_howto/software-maintainer-responsibility.html

schoffelen commented 3 years ago

Pinging @hurngchunlee: Hong I think that this software is somewhat a non-brainer for maintenance for the TG, but on the other hand I wouldn't mind being made responsible for getting (and keeping) it up-to-date. Should we perhaps discuss how to address this issue? Do you have a different idea about this?

hurngchunlee commented 3 years ago

@schoffelen It would be perfectly fine (and appreciated) if you could take the responsibility to maintaining it.

If you want to keep using the format of singularity, I also see it is an opportunity to investigate a workflow by which a maintainer without root privilege can build the singularity container.

schoffelen commented 3 years ago

I accept the challenge! I will start by reading some background info.

BTW, to do some expectation management, for me it is not a matter of 'to keep using the format of singularity', since I have never used this before...

hurngchunlee commented 3 years ago

@schoffelen I have made you the owner of /opt/bids-validator and /opt/_modules/bids-validator directories. The current version is installed as a singularity image, and the command bids-validator is an alias set in the module file (/opt/_modules/bids-validator/common.tcl).

It is not necessary to be a singularity image, it just prevents the hassle of installing required dependencies.

schoffelen commented 3 years ago

After having pressed a series of wrong buttons: @hurngchunlee thanks so far. Is there any swallowable documentation that you can point me to to get started w.r.t. the singularity business? I can obviously start reading online, create a sandbox and start fooling around, but I am not sure whether that's really efficient.

schoffelen commented 3 years ago

following Hong's instructions, I have now created singularity images (from dockerhub) for the following versions: 1.5.0, 1.6.0, 1.7.0, 1.8.0 (which is the most recent non-dev numbered version on dockerhub)

robertoostenveld commented 3 years ago

Cool, they all seems to work:

roboos@mentat001> module add bids-validator/1.4.2
roboos@mentat001> bids-validator --version
1.4.2
roboos@mentat001> module remove bids-validator
roboos@mentat001> 
roboos@mentat001> module add bids-validator/1.5.0
roboos@mentat001> bids-validator --version
1.5.0
roboos@mentat001> module remove bids-validator
roboos@mentat001> module add bids-validator/1.6.0
roboos@mentat001> bids-validator --version
1.6.0
roboos@mentat001> module remove bids-validator
roboos@mentat001> module add bids-validator/1.7.0
roboos@mentat001> bids-validator --version
1.7.0
roboos@mentat001> module remove bids-validator
roboos@mentat001> module add bids-validator/1.8.0
roboos@mentat001> bids-validator --version
1.8.0
roboos@mentat001> module remove bids-validator

That addresses my issue, thanks for installing these and signing up as the future responsible person.