-
Notifications
You must be signed in to change notification settings - Fork 15
RMassBank development task list
This page is supposed to be a loose collection of development proposals for RMassBank, which will be discussed in an upcoming dev meeting.
Use a h2 tag for every proposal. Descriptions may be as long or short as needed; make subsections with h3 if required.
Over the years we have amassed a lot of codestyle inconsistencies (and some of the things were bad to start with). We should fix bad practices.
- I propose to run
lintr
and fix everything it suggests, with prio 1 to the actual package code (R
directory). - Default
lintr
(and tidyverse, and most of modern R) style is snake_case. However Bioconductor style is camelCase for functions (and CamelCaps for S4 classes) and I suggest we stick with this because all our user-facing functions are camelCase. A lot of internal variables are snake_case or some other inconsistent mess, we should clean those up. - There is https://lcolladotor.github.io/biocthis/reference/bioc_style.html which might work.
An awful lot of RMassBank functionality is a bad implementation of what Tidyverse already does well, very crufty ways of doing the equivalent of mutate
, bind_rows
, map
. We could cut out a lot of code and make the code much more readable if we rewrote the code to use tidyverse functionality.
- The one drawback is that we would add a dependency, since we technically don't yet depend on dplyr and purrr. However these packages are nearly globally installed nowadays.
Old topic, but still not done. We should test more of our code.
- Maybe using doctests to test directly in our examples (https://hughjonesd.github.io/doctest/articles/doctest.html) would make things easier. My reservation is that the package seems to be quite new.
- There is also https://rorynolan.github.io/exampletestr/ but this does a one-time conversion.
Copyright (C) MassBank Consortium 2023
Authors: Michael Stravs, Tobias Schulze