Package authors should develop against the version of R that will be available to users when the Bioconductor devel branch becomes the Bioconductor release branch.
R has a ‘.y’ release in x.y.z every year, but Bioconductor has a .y release (where current devel becomes release) every 6 months.
When the next (typically mid-April) .y releases of R and Bioconductor coincide, Bioc-devel is based on R-devel.
When the next (typically mid-October) .y release of Bioconductor corresponds to no change in R’s y, Bioc-devel is based on release R.
This means that, from mid-October through mid-April, Bioconductor developers should be developing against R-devel. From mid-April to mid-October, developers should use R-release (actually, the R snapshot from the R-x-y-branch) for Bioconductor development.
In order to use the
devel version of Bioconductor during the current
release cycle, simply call the function
useDevel() (from the
## In R-3.3 library(BiocInstaller) useDevel() biocValid() # checks for out of date packages biocLite() # (optional) updates out of date packages
After doing this, all packages will be installed from the
(BioC 3.4) repository.
If you also want to work with the
release version of Bioconductor
(3.3), we recommend maintaining two separate installations of R
3.3, one to be used with Bioconductor 3.3 (BioC-release) and the
other to be used with Bioconductor 3.4 (BioC-devel). Run
as described above in this latter installation.
An easy way to do this is to have two separate installations of R-3.3.
A more complicated way is to use the
variable. First, create two separate directories. Suggested directory
names are Linux:
YOUR_NAME to your user name)
Invoke “R for bioc-devel” or “R for bioc-release” from the command line on Linux:
R_LIBS_USER=~/R/x86_64-unknown-linux-gnu-library/3.3-bioc-release R R_LIBS_USER=~/R/x86_64-unknown-linux-gnu-library/3.3-bioc-devel R
Mac OS X:
R_LIBS_USER=~~/Library/R/3.3-bioc-release/library R R_LIBS_USER=~~/Library/R/3.3-bioc-devel/library R
and Windows (assuming that R.exe is in PATH):
cmd /C "set R_LIBS_USER=C:\Users\YOUR_NAME\Documents\R\win-library\3.3-bioc-release && R" cmd /C "set R_LIBS_USER=C:\Users\YOUR_NAME\Documents\R\win-library\3.3-bioc-devel && R"
When correctly configured, R’s
.libPaths() function will return the
devel directory as its first entry. Packages are
installed to that directory, and that is the first place that
library() looks for them.
install.packages() respect this setting;
update.packages() attempts to update packages in the
directory where the current package is installed.
On Linux and Mac OS X, you can create a bash alias to save typing. Add the following to your ~/bash_profile on Linux:
alias Rdevel='R_LIBS_USER=~/R/x86_64-unknown-linux-gnu-library/3.3-bioc-devel R' alias Rrelease='R_LIBS_USER=~/R/x86_64-unknown-linux-gnu-library/3.3-bioc-release R'
or Mac OS X
alias Rdevel='R_LIBS_USER=~/Library/R/3.3-bioc-devel/library R' alias Rrelease='R_LIBS_USER=~/Library/R/3.3-bioc-release/library R'
Invoke R from the command line as
On Windows, create two shortcuts, one for
release and one for
devel (do similar steps for
release) go to My
Computer and navigate to a directory that is in your PATH. Then
right-click and choose New->Shortcut. In the “type the location of
the item” box, put:
cmd /C "set R_LIBS_USER=C:\Users\YOUR_NAME\Documents\R\win-library\3.3-bioc-devel && R"
(again, it’s assumed R.exe is in your PATH) Click “Next”, and in the “Type a name for this shortcut” box, type
Invoke these from the command line as
R_LIBS_USER is an environment variable, its value should be
inherited by any subprocesses started by R, so they should do the
right thing as well.