RGLab / flowStats

flowStats: algorithms for flow cytometry data analysis using BioConductor tools
15 stars 10 forks source link

workflow class deprecated #26

Closed abbatidanilo closed 5 years ago

abbatidanilo commented 5 years ago

To start the analysis for flowStats from a flowSet, you need to start from a workflow, but the workflow class has been deprecated since a while. See the warning message from the flowCore package: wf <- flowCore::workFlow(fS) 'flowCore::workFlow' is deprecated. Use 'flowWorkspace::GatingSet' instead. Which is the updated pipeline to be used instead of the one depicted in your vignette?

jacobpwagner commented 5 years ago

I recently updated the vignette to reflect the deprecation of the workFlow class: 381d7a29978a73e4cf4a12d67ff28bdc70e3c049

That change isn't in the Bioconductor 3.9 release, however, so you will need to either install the 3.10 development version or install from this repo. I also have not completely finished changing the plotting code over from flowViz to the more actively supported ggcyto, but I will finish that up soon.

The quick answer is that the updated pipeline uses GatingSet instead of workFlow, but the general flow of the analysis remains the same.

abbatidanilo commented 5 years ago

Thanks a lot Jack... I am always scared when I meet such a "deprected" messages... It means "soon or later your code is not going to work anymore"... In this case I think you are not going to change this soon. I'll wait for the next official release. Cheers

jacobpwagner commented 5 years ago

No problem. Just keep in mind that the workFlow class will actually be defunct and unavailable in the Bioconductor 3.10 release, so it may be a good idea to get more familiar with the GatingSet class for this purpose. The flowWorkspace and openCyto vignettes cover how to add compensation, transformation, and gating for GatingSet's in more detail. Feel free to reach out here with issues if any questions arise.

abbatidanilo commented 5 years ago

Hello Jacob, I just updated to bioconductor 3.9 and I tried to install the development version with

 devtools::install_github("RGLab/flowStats")

And I got:

Downloading GitHub repo RGLab/flowStats@master Error in utils::download.file(url, path, method = method, quiet = quiet, : cannot open URL 'https://api.github.com/repos/RGLab/flowStats/tarball/master'

could you please tell which is the right command to install the development version? Otherwise we have a hole between the 3.8 version to the 3.9 in which the workFlow function is deprecated with no way to test your new implementation... thanks!

jacobpwagner commented 5 years ago

@abbatidanilo, our repos follow the convention of calling the main branch "trunk" (typical in svn) rather than "master". devtools::install_github defaults to ref = "master". That explains the error you're getting. If you're going to install flowStats from the GitHub repo, you will also need to do the same for flowCore first due to version dependencies (mainly because of the removal of workFlow). Try this and let me know if you run in to any more issues:

devtools::install_github("RGLab/flowCore", ref = "trunk")
devtools::install_github("RGLab/flowStats", ref = "trunk")
abbatidanilo commented 5 years ago

Hello Jacob It didn't work properly this is what I got:

devtools::install_github("RGLab/flowCore", ref = "trunk") Downloading GitHub repo RGLab/flowCore@trunk √ checking for file 'C:\Users\abbat\AppData\Local\Temp\RtmpK4nsUu\remotes30f839115dbb\RGLab-flowCore-caf6ee4/DESCRIPTION' ...

  • preparing 'flowCore': (757ms) √ checking DESCRIPTION meta-information ...
  • cleaning src
  • checking for LF line-endings in source and make files and shell scripts (952ms)
  • checking for empty or unneeded directories
  • looking to see if a 'data/datalist' file should be added NB: this package now depends on R (>= 3.5.0) WARNING: Added dependency on R >= 3.5.0 because serialized objects in serialize/load version 3 cannot be read in older versions of R. File(s) containing such objects: 'flowCore/tests/testthat/expectResults.rds'
  • building 'flowCore_1.51.7.tar.gz'

devtools::install_github("RGLab/flowStats", ref = "trunk") Downloading GitHub repo RGLab/flowStats@trunk √ checking for file 'C:\Users\abbat\AppData\Local\Temp\RtmpK4nsUu\remotes30f83c1440b4\RGLab-flowStats-14957aa/DESCRIPTION' ...

  • preparing 'flowStats': √ checking DESCRIPTION meta-information ...
  • checking for LF line-endings in source and make files and shell scripts
  • checking for empty or unneeded directories
  • looking to see if a 'data/datalist' file should be added
  • building 'flowStats_3.43.8.tar.gz'

besides I fear I also have to update the openCyto package to the devel version which is also a pain...

gfinak commented 5 years ago

@abbatidanilo, you need to upgrade (in this order):

cytolib
flowCore
ncdfFlow
flowWorkspace
flowStats
CytoML
openCyto

all from ref="trunk"

This "bug" is fixed in the current version, as far as we can tell. Even if it wasn't and were to provide fix for you, it would appear in the development versions and you would still have to update all these packages.