MassBank / RMassBank

Playground for experiments on the official http://bioconductor.org/packages/devel/bioc/html/RMassBank.html
Other
12 stars 15 forks source link

Implement a version control of the settings file #321

Open tsufz opened 1 year ago

tsufz commented 1 year ago

I sometimes observe that the users use legacy settings files. I suggest implementing a version control in the read settings function. I did this in my MZquant package. The version in which the changes are made is hard-coded in the current settings file and the check function. What do you think about?

meowcat commented 1 year ago

What is your suggested action for legacy settings? 1) stop("please update your settings to version $newestversion") 2) keep supporting them?

tsufz commented 1 year ago

This is in the terms of backward compatibility. This maybe depends on the extent of the changes made. If we do something substantial new, I am against supporting of legacy structures to keep efforts and code slim. In case of minor changes, it may be worth to think about a support of legacy settings without new functionalities. Something like:

  1. stop("please update your settings to version $newestversion") in case of major changes
  2. warning("Settings was updated to map new functions. The version of your settings is still supported. To use the new function update to $newestversion, please").