Repository 'msnbase_readmsdata'
hg clone https://toolshed.g2.bx.psu.edu/repos/lecorguille/msnbase_readmsdata

Changeset 18:35b6fe4d481c (2025-02-03)
Previous changeset 17:6de175c1f6ef (2024-07-15)
Commit message:
planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
modified:
lib.r
macros_xcms.xml
msnbase_readmsdata.r
msnbase_readmsdata.xml
b
diff -r 6de175c1f6ef -r 35b6fe4d481c lib.r
--- a/lib.r Mon Jul 15 16:03:15 2024 +0000
+++ b/lib.r Mon Feb 03 14:49:24 2025 +0000
[
b'@@ -1,461 +1,470 @@\n-#@authors ABiMS TEAM, Y. Guitton\n+# @authors ABiMS TEAM, Y. Guitton\n # lib.r for Galaxy Workflow4Metabolomics xcms tools\n \n-#@author G. Le Corguille\n+# @author G. Le Corguille\n # solve an issue with batch if arguments are logical TRUE/FALSE\n parseCommandArgs <- function(...) {\n-  args <- batch::parseCommandArgs(...)\n-  for (key in names(args)) {\n-    if (args[key] %in% c("TRUE", "FALSE"))\n-      args[key] <- as.logical(args[key])\n-  }\n-  return(args)\n+    args <- batch::parseCommandArgs(...)\n+    for (key in names(args)) {\n+        if (args[key] %in% c("TRUE", "FALSE")) {\n+            args[key] <- as.logical(args[key])\n+        }\n+    }\n+    return(args)\n }\n \n-#@author G. Le Corguille\n+# @author G. Le Corguille\n # This function will\n # - load the packages\n # - display the sessionInfo\n loadAndDisplayPackages <- function(pkgs) {\n-  for (pkg in pkgs) suppressPackageStartupMessages(stopifnot(library(pkg, quietly = TRUE, logical.return = TRUE, character.only = TRUE)))\n+    for (pkg in pkgs) suppressPackageStartupMessages(stopifnot(library(pkg, quietly = TRUE, logical.return = TRUE, character.only = TRUE)))\n \n-  sessioninfo <- sessionInfo()\n-  cat(sessioninfo$R.version$version.string, "\\n")\n-  cat("Main packages:\\n")\n-  for (pkg in names(sessioninfo$otherPkgs)) {\n-    cat(paste(pkg, packageVersion(pkg)), "\\t")\n-  }\n-  cat("\\n")\n-  cat("Other loaded packages:\\n")\n-  for (pkg in names(sessioninfo$loadedOnly)) {\n-    cat(paste(pkg, packageVersion(pkg)), "\\t")\n-  }\n-  cat("\\n")\n+    sessioninfo <- sessionInfo()\n+    cat(sessioninfo$R.version$version.string, "\\n")\n+    cat("Main packages:\\n")\n+    for (pkg in names(sessioninfo$otherPkgs)) {\n+        cat(paste(pkg, packageVersion(pkg)), "\\t")\n+    }\n+    cat("\\n")\n+    cat("Other loaded packages:\\n")\n+    for (pkg in names(sessioninfo$loadedOnly)) {\n+        cat(paste(pkg, packageVersion(pkg)), "\\t")\n+    }\n+    cat("\\n")\n }\n \n-#@author G. Le Corguille\n+# @author G. Le Corguille\n # This function merge several chromBPI or chromTIC into one.\n mergeChrom <- function(chrom_merged, chrom) {\n-  if (is.null(chrom_merged)) return(NULL)\n-  chrom_merged@.Data <- cbind(chrom_merged@.Data, chrom@.Data)\n-  return(chrom_merged)\n+    if (is.null(chrom_merged)) {\n+        return(NULL)\n+    }\n+    chrom_merged@.Data <- cbind(chrom_merged@.Data, chrom@.Data)\n+    return(chrom_merged)\n }\n \n-#@author G. Le Corguille\n+# @author G. Le Corguille\n # This function merge several xdata into one.\n mergeXData <- function(args) {\n-  chromTIC <- NULL\n-  chromBPI <- NULL\n-  chromTIC_adjusted <- NULL\n-  chromBPI_adjusted <- NULL\n-  md5sumList <- NULL\n-  for (image in args$images) {\n+    chromTIC <- NULL\n+    chromBPI <- NULL\n+    chromTIC_adjusted <- NULL\n+    chromBPI_adjusted <- NULL\n+    md5sumList <- NULL\n+    for (image in args$images) {\n+        load(image)\n+        # Handle infiles\n+        if (!exists("singlefile")) singlefile <- NULL\n+        if (!exists("zipfile")) zipfile <- NULL\n+        rawFilePath <- retrieveRawfileInTheWorkingDir(singlefile, zipfile, args)\n+        zipfile <- rawFilePath$zipfile\n+        singlefile <- rawFilePath$singlefile\n \n-    load(image)\n-    # Handle infiles\n-    if (!exists("singlefile")) singlefile <- NULL\n-    if (!exists("zipfile")) zipfile <- NULL\n-    rawFilePath <- retrieveRawfileInTheWorkingDir(singlefile, zipfile, args)\n-    zipfile <- rawFilePath$zipfile\n-    singlefile <- rawFilePath$singlefile\n+        if (exists("raw_data")) xdata <- raw_data\n+        if (!exists("xdata")) stop("\\n\\nERROR: The RData doesn\'t contain any object called \'xdata\'. This RData should have been created by an old version of XMCS 2.*")\n \n-    if (exists("raw_data")) xdata <- raw_data\n-    if (!exists("xdata")) stop("\\n\\nERROR: The RData doesn\'t contain any object called \'xdata\'. This RData should have been created by an old version of XMCS 2.*")\n-\n-    cat(sampleNamesList$sampleNamesOrigin, "\\n")\n+        cat(sampleNamesList$sampleNamesOrigin, "\\n")\n \n-    if (!exists("xdata_m'..b'ngs(try(file.link(singlefile_galaxyPath, singlefile_sampleName), silent = TRUE))) {\n+                file.copy(singlefile_galaxyPath, singlefile_sampleName)\n+            }\n+            files <- c(files, singlefile_sampleName)\n+        }\n     }\n-  }\n-  # zipfile\n-  if (!is.null(zipfile) && (zipfile != "")) {\n-    if (!file.exists(zipfile)) {\n-      error_message <- paste("Cannot access the Zip file:", zipfile, ". Please, contact your administrator ... if you have one!")\n-      print(error_message)\n-      stop(error_message)\n-    }\n-    suppressWarnings(unzip(zipfile, unzip = "unzip"))\n+    # zipfile\n+    if (!is.null(zipfile) && (zipfile != "")) {\n+        if (!file.exists(zipfile)) {\n+            error_message <- paste("Cannot access the Zip file:", zipfile, ". Please, contact your administrator ... if you have one!")\n+            print(error_message)\n+            stop(error_message)\n+        }\n+        suppressWarnings(unzip(zipfile, unzip = "unzip"))\n \n-    #get the directory name\n-    suppressWarnings(filesInZip <- unzip(zipfile, list = TRUE))\n-    directories <- unique(unlist(lapply(strsplit(filesInZip$Name, "/"), function(x) x[1])))\n-    directories <- directories[!(directories %in% c("__MACOSX")) & file.info(directories)$isdir]\n-    directory <- "."\n-    if (length(directories) == 1) directory <- directories\n+        # get the directory name\n+        suppressWarnings(filesInZip <- unzip(zipfile, list = TRUE))\n+        directories <- unique(unlist(lapply(strsplit(filesInZip$Name, "/"), function(x) x[1])))\n+        directories <- directories[!(directories %in% c("__MACOSX")) & file.info(directories)$isdir]\n+        directory <- "."\n+        if (length(directories) == 1) directory <- directories\n \n-    cat("files_root_directory\\t", directory, "\\n")\n+        cat("files_root_directory\\t", directory, "\\n")\n \n-    filepattern <- c("[Cc][Dd][Ff]", "[Nn][Cc]", "([Mm][Zz])?[Xx][Mm][Ll]", "[Mm][Zz][Dd][Aa][Tt][Aa]", "[Mm][Zz][Mm][Ll]")\n-    filepattern <- paste(paste("\\\\.", filepattern, "$", sep = ""), collapse = "|")\n-    info <- file.info(directory)\n-    listed <- list.files(directory[info$isdir], pattern = filepattern, recursive = TRUE, full.names = TRUE)\n-    files <- c(directory[!info$isdir], listed)\n-    exists <- file.exists(files)\n-    files <- files[exists]\n-\n-  }\n-  return(list(zipfile = zipfile, singlefile = singlefile, files = files))\n+        filepattern <- c("[Cc][Dd][Ff]", "[Nn][Cc]", "([Mm][Zz])?[Xx][Mm][Ll]", "[Mm][Zz][Dd][Aa][Tt][Aa]", "[Mm][Zz][Mm][Ll]")\n+        filepattern <- paste(paste("\\\\.", filepattern, "$", sep = ""), collapse = "|")\n+        info <- file.info(directory)\n+        listed <- list.files(directory[info$isdir], pattern = filepattern, recursive = TRUE, full.names = TRUE)\n+        files <- c(directory[!info$isdir], listed)\n+        exists <- file.exists(files)\n+        files <- files[exists]\n+    }\n+    return(list(zipfile = zipfile, singlefile = singlefile, files = files))\n }\n \n \n # This function retrieve a xset like object\n-#@author Gildas Le Corguille lecorguille@sb-roscoff.fr\n+# @author Gildas Le Corguille lecorguille@sb-roscoff.fr\n getxcmsSetObject <- function(xobject) {\n-  # XCMS 1.x\n-  if (class(xobject) == "xcmsSet")\n-    return(xobject)\n-  # XCMS 3.x\n-  if (class(xobject) == "XCMSnExp") {\n-    # Get the legacy xcmsSet object\n-    suppressWarnings(xset <- as(xobject, "xcmsSet"))\n-    if (!is.null(xset@phenoData$sample_group))\n-      sampclass(xset) <- xset@phenoData$sample_group\n-    else\n-      sampclass(xset) <- "."\n-    return(xset)\n-  }\n+    # XCMS 1.x\n+    if (class(xobject) == "xcmsSet") {\n+        return(xobject)\n+    }\n+    # XCMS 3.x\n+    if (class(xobject) == "XCMSnExp") {\n+        # Get the legacy xcmsSet object\n+        suppressWarnings(xset <- as(xobject, "xcmsSet"))\n+        if (!is.null(xset@phenoData$sample_group)) {\n+            sampclass(xset) <- xset@phenoData$sample_group\n+        } else {\n+            sampclass(xset) <- "."\n+        }\n+        return(xset)\n+    }\n }\n'
b
diff -r 6de175c1f6ef -r 35b6fe4d481c macros_xcms.xml
--- a/macros_xcms.xml Mon Jul 15 16:03:15 2024 +0000
+++ b/macros_xcms.xml Mon Feb 03 14:49:24 2025 +0000
b
@@ -2,7 +2,7 @@
 <macros>
 
     <token name="@TOOL_VERSION@">3.12.0</token>
-    <token name="@VERSION_SUFFIX@">1</token>
+    <token name="@VERSION_SUFFIX@">3</token>
     <token name="@PROFILE@">21.09</token>
     <xml name="requirements">
         <requirements>
b
diff -r 6de175c1f6ef -r 35b6fe4d481c msnbase_readmsdata.r
--- a/msnbase_readmsdata.r Mon Jul 15 16:03:15 2024 +0000
+++ b/msnbase_readmsdata.r Mon Feb 03 14:49:24 2025 +0000
[
@@ -9,11 +9,11 @@
 # ----- PACKAGE -----
 cat("\tSESSION INFO\n")
 
-#Import the different functions
+# Import the different functions
 source_local <- function(fname) {
-  argv <- commandArgs(trailingOnly = FALSE)
-  base_dir <- dirname(substring(argv[grep("--file=", argv)], 8))
-  source(paste(base_dir, fname, sep = "/"))
+    argv <- commandArgs(trailingOnly = FALSE)
+    base_dir <- dirname(substring(argv[grep("--file=", argv)], 8))
+    source(paste(base_dir, fname, sep = "/"))
 }
 source_local("lib.r")
 
@@ -24,7 +24,7 @@
 
 # ----- ARGUMENTS -----
 cat("\tARGUMENTS INFO\n")
-args <- parseCommandArgs(evaluate = FALSE) #interpretation of arguments given in command line as an R list of objects
+args <- parseCommandArgs(evaluate = FALSE) # interpretation of arguments given in command line as an R list of objects
 write.table(as.matrix(args), col.names = FALSE, quote = FALSE, sep = "\t")
 
 cat("\n\n")
@@ -83,8 +83,8 @@
 print(raw_data@phenoData@data)
 cat("\n\n")
 
-#saving R data in .Rdata file to save the variables used in the present tool
-objects2save <- c("raw_data", "zipfile", "singlefile", "md5sumList", "sampleNamesList") #, "chromTIC", "chromBPI")
+# saving R data in .Rdata file to save the variables used in the present tool
+objects2save <- c("raw_data", "zipfile", "singlefile", "md5sumList", "sampleNamesList") # , "chromTIC", "chromBPI")
 save(list = objects2save[objects2save %in% ls()], file = "readmsdata.RData")
 
 
b
diff -r 6de175c1f6ef -r 35b6fe4d481c msnbase_readmsdata.xml
--- a/msnbase_readmsdata.xml Mon Jul 15 16:03:15 2024 +0000
+++ b/msnbase_readmsdata.xml Mon Feb 03 14:49:24 2025 +0000
[
@@ -1,4 +1,4 @@
-<tool id="msnbase_readmsdata" name="MSnbase readMSData" version="@WRAPPER_VERSION@+galaxy2">
+<tool id="msnbase_readmsdata" name="MSnbase readMSData" version="@WRAPPER_VERSION@+galaxy3">
     <description>Imports mass-spectrometry data files</description>
 
     <macros>
@@ -7,10 +7,14 @@
     </macros>
 
     <expand macro="requirements"/>
+    <required_files>
+        <include path="msnbase_readmsdata.r" />
+        <include path="lib.r" />
+    </required_files>
     <expand macro="stdio"/>
 
     <command><![CDATA[
-        @COMMAND_RSCRIPT@/msnbase_readmsdata.r
+        @COMMAND_RSCRIPT@msnbase_readmsdata.r
 
         #if $input.is_of_type("mzxml") or $input.is_of_type("mzml") or $input.is_of_type("mzdata") or $input.is_of_type("netcdf"):
             #if $os.path.islink(str($input))