AutoFlowResearch / SmartPeak

Fast and Accurate CE-, GC- and LC-MS(/MS) Data Processing
MIT License
43 stars 13 forks source link

[Feature request] for SmartPeakCLI - separate options for individual input / output files #417

Closed buijt closed 2 years ago

buijt commented 3 years ago

From the SmartPeakCLI help message, there is only one input file parameter and only one output file parameter: -l loads the sequence.csv file and searches for all the input files in the same parent directory (parameters, traML, mzML directory, etc.) and -o specifies the directory to write the PivotTable, FeatureDB, and features directory.

I would be gladdened to see if SmartPeakCLI could have individual options for each input file and output filetype:

Options for inputs:

Options for outputs:

Motivation

My highest priority request is to be able to separately specify the input MZML directory and the output features directory through SmartPeakCLI. The CLI assumption that the MZML input directory is found in the parent directory of sequence.csv is causing me some minor troubles with my lab's pipelining architecture. Additionally, this is a feature that is present in the GUI: when running a workflow, a dialog pops up to specify the MZML input directory, features input directory, and features output directory. I would appreciate having the ability to specify a non-default MZML and featureXML directory in the CLI as well.

Another reason is that separated input options would make the CLI more transparent and provide explicit hints in the --help message on acceptable SmartPeak input files. Currently, the most direct way for a user to know what files are potentially accepted to SmartPeak is to read the log messages.

Would these be feasible requests for SmartPeakCLI? Thank you.

bertrandboudaud commented 2 years ago

Hello,

We are working on this feature.

With the next release (should be 1.14.0), SmartPeakGUI will be introduced the user session file: from the GUI, now you will have to select your directory, and not your sequence file anymore. From this directory, the file architecture is constructed from the old file organization model by default, but you can change to point an input file to another file if you want and save your setup in a session file that you can reload after that.

For SmartPeakCLI, with the same release, you will be able to run the workflow from that session file you have created in SmartPeakGUI.

This is one first step to have more flexibility on the input file selection. Based on that work, one of the next steps we are working on now is the possibility to set the input files from the command line, exactly as you describe in your request. so this should come shortly.

Regarding outputs, nothing has been done on that side, but we will try to include it at the same time.

With regards, Bertrand