Minor changes:
- Fix for extract (
[
) method, wheredrop
argument must appear at the end. - Migrated
bcbioRNASeq
generator unit test that imports GFF file to longtests, as this can be slow to download from Ensembl FTP server.
Minor changes:
- Updated functional analysis template for potential breaking change with
EnsemblToNcbi
step, which no longer supportsformat
argument.
Major changes:
- We're now enforcing strict camel case for function names.
Minor changes:
- Resaved example
bcb
object. - Renamed
plotGeneSaturation
toplotFeatureSaturation
in QC template. - Renamed
plotGenesDetected
toplotFeaturesDetected
in QC template. - Renamed
plotMeanSD
toplotMeanSd
in QC template. - Renamed
plotPCA
toplotPca
in QC template. - Renamed
plotRRNAMappingRate
toplotRrnaMappingRate
in QC template. - Renamed
plotMA
toplotMa
in DE template. - Renamed
plotDEGPCA
toplotDegPca
in DE template. - Renamed
plotDEGHeatmap
toplotDegHeatmap
in DE template. - Renamed
Ensembl2Ncbi
toEnsemblToNcbi
in FA template.
Minor changes:
- Now requiring R 4.3 / Bioconductor 3.17.
- Reworked internal tximport handling to use new
isTximport
assert check from the goalie package.
Major changes:
bcbioRNASeq
object will now fail validity checks withvalidObject
ifentrezId
is defined in rowData instead of now preferredncbiGeneId
. This breaking change can be resolved usingupdateObject
.- Fixed breaking change in functional analysis R Markdown template, due to new
usage of
ncbiGeneId
instead of legacyentrezId
metadata inGRanges
returned by AcidGenomes package.
Minor changes:
- Resaved example
bcb
object using Bioconductor 3.17 dependencies. - Now classing on
DFrame
andGRanges
instead ofDataFrame
andGenomicRanges
virtual classes internally.
Minor changes:
- Added transcript identifier sanitization support during
tximport
call for kallisto aligned against GENCODE reference. Refer to related Bioconductor issue for details.
Minor changes:
- Updated dependencies to Bioconductor 3.16.
- Migrated
requireNamespaces
import from AcidBase to goalie.
Major changes:
- Reworked functional analysis template.
- Reworked R Markdown templates to use level 2 headers by default instead of level 1, to pass markdownlint-cli checks (from Node; can use koopa to install). Our configuration needs to be updated in AcidMarkdown to reflect this change.
- Updated unit tests to testthat 3 engine.
Minor changes:
- Reworked and resaved example objects.
- Reworked quality control and differential expression R Markdown templates slightly, adding lintr exceptions.
- Switched to using
Map
instead ofmapply
, where applicable. - Now enabling pathview by default in functional analysis template.
- Removed
sessioninfo
as a dependency, switching back to using utilssessionInfo
internally instead. - Included some additional reexports to make the package work with F1000v2 manuscript as best as possible.
Major changes:
- Starting a new release series requiring R 4.2 / Bioconductor 3.15.
- Minor bug fixes to provide compatibilty with Acid Genomics dependencies.
Minor changes:
- Now using
DataFrame
return frommetrics
by default. Hardened calls toggplot
usingas.data.frame
coercion.
Major changes:
- Now requiring R 4.2 / Bioconductor 3.15.
Minor changes:
- Minor S4 class fixes to provide compatiblity with Bioconductor 3.15.
- Relaxed version pins in
DESCRIPTION
file.
Starting a new release series for 2022.
Major changes:
- Package now requires R 4.1+ / Bioconductor 3.14+.
- Package no longer attaches basejump automatically.
Minor changes:
- Removed internal dependencies on
formalsList
parameters defined in basejump, which will be removed in a pending release update.
Minor changes:
- Reworked the default expected file path of
bcbioRNASeq
object (e.g."bcb.rds"
), which has been moved back todata
instead of nested inside ofrds
by date (e.g. YYYY-MM-DD). - Other R Markdown templates, specifically the differential expression and functional analysis templates have also been updated to reflect this change.
- Minimum dependencies have been bumped back to R 4.0 / Bioconductor 3.13 due to current bioconda build issues, which will be resolved in a future update of the package.
Minor changes:
- Updated dependencies to require Bioconductor 3.14.
- Bug fix for assert check failure of tximport list return. The
infReps
slot in list does not return named rows whentxOut
isTRUE
for Bioconductor 3.14 release.
Minor changes:
- Updated dependencies, in particular now requiring fixed version of
DESeqAnalysis that labels genes in
plotVolcano
call as expected. - Updated comments in functional analysis template.
- Added additional suggested packages that are required for R Markdown templates to render when called from a conda environment.
Minor changes:
- Improved R Markdown template support, particularly handling of Entrez identifier mapping in the functional analysis template. Also updated pathview code to timeout on very large pathways, such as general metabolism, which can contain hundreds of genes.
- Updated unit tests against F1000 example dataset.
- Removed usage of magrittr pipe in examples, in favor of base R pipe (4.1+).
- Improved internal package name and version handling.
- Harden internal tximport handling code a bit.
- Main
bcbioRNASeq
importer now supports a very minimal dataset with a single sample, which isn't common.
Maintenance release, incorporating useful changes from the basejump v0.14 release series.
Minor changes:
- Reworked S4 generic imports, migrating some functions to AcidGenerics.
- Reduced the number of dependency packages, since we can offload some of the imports to basejump.
- Switched from cli to AcidCLI (via basejump) internally.
- Note that internal GenomicRanges utilities (e.g.
makeGRangesFromEnsembl
) need to haveignoreVersion = TRUE
defined, since this argument changed by default in AcidGenomes.
Minor changes:
- Bug fix for featureCounts directory structure change in bcbio v1.2.4 release.
- Wrapped DESeq2 normalization calculations (to be defined in
assays
slot) in atryCatch
call, to more gracefully avoid errors on minimal data sets, such as the bcbio-nextgen unit test data.
Minor changes:
- Maintenance release, updating minimum dependency package versions.
Minor changes:
- Hardened plotting functions against bcbioRNASeq objects created with
fast = TRUE
. show
: Added display offast: TRUE
when applicable.- Documentation updates.
Minor changes:
- Decreased R package dependency versions a bit, so we can update the bioconda recipe successfully. Some Bioconductor packages don't have point release updates on bioconda.
Minor changes:
- Maintenance release, updating minimum R dependency to 4.0.
Minor changes:
- Temporarily disabled
plotPCACovariates
, which causing CI checks to error due to a dplyr bug in DEGreport. Will reenable when this gets fixed and is updated on Bioconductor.
Minor changes:
bcbioRNASeq
generator now has improved message support for selected samples. Internally, this is managed by the cli package.updateObject
: Now supportingverbose
argument, which defaults toFALSE
.
Minor changes:
bcbioRNASeq
: Removed now defunctspikeNames
argument. Refer tomakeSummarizedExperiment
documentation and release notes in basejump package for details.
Minor changes:
- Relaxed validity checks against
dataVersions
andprogramsVersions
inmetadata
slot, for compatibility withupdateObject
upgrade path from v0.2.9 objects, which are currently generated by bcbio-nextgen. Thanks @sjmonkley for catching this. See issue #146. - Changed license from MIT to GPL-3.
- Updated documentation.
Major changes:
- Improved internal handling of
bcbioRNASeq
toDGEList
coercion, for handoff to edgeR and limma-voom. Now the code handlescountsFromAbundance
settings more intelligently and informs the user whether downstream edgeR and/or limma-voom handoff is appropriate. - Now exporting
as.DESeqDataSet
,as.DESeqTransform
, andas.DGEList
S4 generic methods, which support arguments. Note that quick coercion using onlyas
(seecoerce
documentation from Bioconductor) does not support arguments.
Minor changes:
- Fixed support for bcbio fastrnaseq pipeline. Thanks to @kokyriakidis for pointing this out. Added code coverage support for an example run produced via this pipeline.
- Updated basejump dependencies, namely renaming bioverbs to AcidGenerics.
- Now using cli package for improved messages.
Minor changes:
- Added support for Bioconductor 3.10.
- Updated internal
DataFrame
validity checks to also check forDFrame
class, which has changed in latest S4Vectors 0.23 release. - Updated basejump dependency versions.
Minor changes:
- Reworked quality control plots to use "labels" instead of "title".
- Updated R Markdown templates and added render code coverage in testthat-extra.
- Updated vignette to use shared bibliography.bib file from basejump.
Minor changes:
bcbioRNASeq
: Internal generator now callsimportSampleData
usingpipeline = "bcbio"
argument, so we don't run into breaking changes when handling user metadata in a future basejump update.- Updated basejump dependency versions.
Minor changes:
- Now requiring R 3.6, as we near a candidate Bioconductor release.
- Updated basejump dependencies.
Major changes:
- Made subsetting factor for extract (
[
) operations. updateObject
: ImprovedrowRanges
handling.
Minor changes:
bcbioRNASeq
generator now captures call usingstandardizeCall
instead ofmatch.call
, and automatically expands all default arguments.- Improved NAMESPACE and basejump dependencies.
- Made vsn and DEGreport packages optional, to reduce the number of dependencies required for installation.
plotPCACovariates
: Reworked internal code to not depend on dplyr.- Removed internal code dependencies on magrittr pipe.
Minor changes:
- Simplified internal object creation in
bcbioRNASeq
,[
, andupdateObject
. - Improved message consistency.
Major changes:
updateObject
: Worked internal approach to be compatible with upcoming Bioconductor 3.10 release. Has to rethink the strategy to handling assays internally, which can no longer be easily coerced from assays slot in thebcbioRNASeq
object, due to changes inShallowSimpleListAssays
handling. This should return an object in exactly the same manner as previous releases.
Major changes:
bcbioRNASeq
: Now supportingfast
argument, which enables the user to skip any internal DESeq2 calculations. This will skip generation ofnormalized
,vst
, andfpkm
matrices. Note that automaticrlog
matrix generation is no longer supported, since it's often too slow, especially for large datasets. If you want to generate rlog counts, simply coerce the bcbioRNASeq object to a DESeqDataSet, then run therlog
function.- Aligned counts are now saved inside the object when a pseudoaligner (e.g.
salmon, kallisto) are used to define the primary
counts
assay. These values are saved in analigned
matrix.
New functions:
pseudoVsAligned
: Visually inspect the correlation of pseudoaligned counts to the aligned counts. Note that default bcbio genomes use legacy UCSC builds, where as the pseudoaligners generate values from newer Ensembl transcript annotations.
Minor changes:
- Updated package dependency versions.
Major changes:
- Initial support for
bcbioRNASeq
toDGEList
(edgeR) object coercion. relativeLogExpression
: Improved internal code, using edgeRcalcNormFactors
approach.
Minor changes:
- Updated basejump dependency to v0.10.11.
- Improved Travis CI docker config to check coverage and lints.
- Improved Bioconductor installation instructions.
Minor changes:
- Added support for size factor adjusted counts as "sf" in
counts
call. - Improved internal trans axis labeling handling for DESeqTransform counts.
plotMeanSD
: Improved default colors. Improved internal non-zero count handling. Reworked plot headers.
Major changes:
- Now pinned to R >= 3.5.
Minor changes:
- Improved Travis CI and AppVeyor CI configuration.
Minor changes:
- S4 generic reexport documentation fixes.
Minor changes:
- Bar plots now show the first sample at the top of the Y axis when
flip = TRUE
. This is more human readable. - Quality control template now uses
bcbiornaseq_file
as main input param. - Bug fix: added back internal
.normalizedTrans
function required for some quality control plots.
Minor changes:
- Tweaks to quality control template.
- Switched Travis CI configuration to use
rnaseq
Docker image.
Minor changes:
- Ensuring that all basejump functions necessary for the quality control template get reexported.
- Renamed R Markdown template files and
travis-render.sh
script into kebab case, rather than snake case. - Documentation improvements (using
inheritParams
).
Moved forked development repository to Acid Genomics.
Major changes:
- Switched unit testing data URL from seq.cloud to acidgenomics.com.
Minor changes:
- Reworked internal reexports for assignment generics. See
counts
for example. - Miscellaneous documentation improvements.
- Switched from
basejump
prefix toacid
, where applicable. - Reexported essential functions from basejump required for QC template to render without basejump being attached.
Minor changes:
- Added additional checks to
bcbioRNASeq
validity method. - Draft update to quality control template, to support parameterized
bcbioRNASeq
object input. This is likely not necessary and will be removed in a future update. - Added additional checks for
bcbioRNASeq
toDESeqDataSet
coercion. - Improved internal
perMillion
argument code handling inside plotting functions:plotMappedReads
,plotTotalReads
. - Removed
reexports.R
. No longer reexportingGene2Symbol
or magrittr pipe.
Major changes:
sampleData
: Moved method support to basejump package.
Minor changes:
- Resaved example data.
- Sample metadata chunk in quality control template now returns
DataFrame
. - Improved some deprecation messages.
- CI configuration improvements.
Minor changes:
- Renamed
plotGene
toplotCounts
, to match consistency in basejump and DESeqAnalysis package updates. - Updated dependencies to provide improved backwards compatibility support for R 3.4 / Bioconductor 3.6.
Minor changes:
- Travis CI build configuration and documentation fixes.
Minor changes:
- Bug fixes for
interestingGroups
handling in plotting functions. Needed to add back aninterestingGroups<-
assignment call to slot the object. - Removed
sanitizeRowData
andsanitizeSampleData
from imports.
Minor changes:
.tximport
: UsemakeNames
to check for valid names internally.- Improved documentation.
- Travis CI configuration fixes to get build checks to pass.
Major changes:
- Overhauled validity method for
bcbioRNASeq
. Improved check steps usingok
method, similar to approach in goalie. - Added back
plotPCACovariates
method support.
Minor changes:
- Updated pkgdown configuration. Removed
alphaSummary
,contrastName
,export
,markdown
,sampleData
,topTables
- goalie package has been updated to support
nullOK
mode where applicable. This is particularly use for formals that useNULL
by default. SeebcbioRNASeq
generator changes, for example. prepareRNASeqTemplate
example is causing build checks to fail, so disable.- Improved CI configuration.
This is the first release that switched over to using goalie for assert checks instead of assertive.
Major changes:
bcbioRNASeq
generator has been overhauled to useassert
for assert checks.
Minor changes:
- Ensure title is quoted in R Markdown.
- Switched to using
validate
in place ofvalidate_that
in validity checks. - Miscellaneous documentation improvements.
- Now using
match.arg
internally to check validity ofcountsFromAbundance
argument passthrough totximport
.
Major changes:
- Added additional improvements to quality control template. Ensuring that setup
chunk never caches. bcbioRNASeq object should be called using
params$object_file
. This convention will be used across all other bcbio R packages. Reworked and simplifiedplotCountsPerGene
section of QC template.
Minor changes:
- Added early return method for objects without modification extract method. Might want to reconsider this approach if the user just wants to reorder samples. We're checking for unmodified return by looking for identical raw counts matrix before and after extraction call.
plotCountsPerBiotype
: Ensurenormalized
argument uses "tpm" first.plotDispEsts
: Switch to usinghasUniqueCols
internally instead ofareSamplesUnique
.
Major changes:
- Improved and simplified quality control template. Removed Dropbox mode (which may be added back in a future update). Identical samples detection is now supported automatically in the plotting functions, which was previously defined in the QC template.
- Improved subset sample handling inside extraction method. Extraction method
now imports useful
relevelRowRanges
andrelevelColData
utilities from basejump.
Minor changes:
- Removed
sampleData<-
reexport. - Documentation fixes and improvements, particularly to the
bcbioRNASeq
generator function. - Reworked internal gffFile handling inside
bcbioRNASeq
generator function. - Simplified passthrough in internal
.new.bcbioRNASeq
call. plot5Prime3PrimeBias
now usescolor
argument instead offill
.plotDispEsts
now checks for duplicate samples and early returns.- Consistently use British spelling variants (colour instead of color) for ggplot2 functions. Our formals will stick with American English though.
plotTotalReads
: Bumped recommended default to 20 million from 10 million.
Minor changes:
- Added additional library loads to
_setup.R
: rmarkdown, basejump, DESeq2. plotGene
: Updated working example.- Improved reexport of
sampleData<-
generic. - Updated Travis CI configuration.
Major changes:
- Splitting out new
DESeqAnalysis
S4 class to a separate package.
Deprecated functions and methods:
- Functions removed from
NAMESPACE
: magrittr pipe (%>%
),DESeqAnalysis
,DESeqResultsTables
,alphaSummary
,contrastName
,export
,markdown
,plotDEGHeatmap
,plotDEGPCA
,plotMA
,plotMeanAverage
,plotVolcano
,topTables
. alphaSummary
: MigratedDESeqDataSet
method to DESeqAnalysis package.
Example data:
- Deleted
deseq
example, which has migrated to DESeqAnalysis package.
Minor changes:
- Reorganized internal assert checks.
- Miscellaneous documentation improvements.
- Improved consistency of global formals (using
getOption
) viaformalsList
global variable.
Major changes:
- Improved validity method for
bcbioRNASeq
S4 class. extract
([
) method: Improved internal handling ofrowRanges
andcolData
. Now usingI
internally for complex S4 columns inmcols
forrowRanges
.- Reworked imports back to basejump instead of attempting to use subpackages: basejump.annotations, basejump.assertions, basejump.classes, basejump.coerion, basejump.developer, basejump.experiment, basejump.generics, basejump.globals, basejump.io, basejump.markdown, basejump.plots, basejump.sanitization. Rethink this approach in a future update.
Minor changes:
- Resaved example
bcb
dataset. - Miscellaneous internal assert check fixes and updates.
- Miscellaneous documentation improvements.
- Added internal
Rle
global variable. May want to avoid this approach becauseRle
is a defined function in S4Vectors, however. - Offloaded some global documentation params to basejump.
- Reworked some global params set by
getOption
in formals.
Development fork of hbc/bcbioRNASeq
. Code development will proceed here on the
fork until a stable release is ready to merge back at official HBC repo, to
avoid any disruption for active RNA-seq experiments.
New S4 classes:
- Added new
DESeqAnalysis
S4 class, which helps containerize up a DESeq2 analysis, often requiring correspondingDESeqDataSet
,DESeqTransform
, andDESeqResults
objects. Note that this class may be defined in a separate package in a future update.
Code migration to basejump:
aggregateReplicates
has moved to basejump, and now works primarily onSummarizedExperiment
method, instead ofbcbioRNASeq
.- Offloaded a number of S4 generics to basejump infrastructure, which are now
defined in the bioverbs package:
alphaSummary
,contrastName
,plot5Prime3PrimeBias
,plotCountDensity
,plotCountsPerGene
,plotDEGHeatmap
,plotDEGPCA
,plotExonicMappingRate
,plotGenderMarkers
,plotGeneSaturation
,plotGenesDetected
,plotIntronicMappingRate
. metrics
method, which returns atbl_df
ofcolData
, has been moved to basejump.plotCorrelationHeatmap
code is now primarily defined in basejump as aSummarizedExperiment
method. bcbioRNASeq now calls this method internally but keeps support fornormalized
counts argument.- Removed
tpm
method support, which is now handled bySummarizedExperiment
method support in basejump.
S4 method reworks:
- Reworked internal code, splitting out S4 methods into internal functions
(e.g.
counts.bcbioRNASeq
). This step is recommended by Bioconductor, and can make troubleshooting easier. export
: Reworked S4 methods forDESeqResults
andDESeqResultsTables
S4 classes.extract
(i.e.[
) method: Switchedtransform
formal torecalculate
. Added additional assert checks. Operation no longer changes the savedversion
of bcbioRNASeq, slotted intometadata
.interestingGroups
formal is now setNULL
instead of missing for plotting functions.markdown
: Initial support of new S4 generic, which returns a markdown table of sample metadata.plot5Prime3PrimeBias
: Added an addition grep matching step to handle differential variations on thex5x3Bias
column incolData
.plotCountDensity
S4 method has been removed. UseplotGeneSaturation
generic withgeom = "density"
argument instead.plotCountsPerBiotype
: New S4 method support, which calls basejumpSummarizedExperiment
method.plotDEGHeatmap
: Draft update ofDESeqResults
method.plotDEGPCA
: Draft update ofDESeqResults
method.plotDispEsts
: Split out and reworked internal method definition.plotGenesDetected
: This code has been moved to basejump and is now defined againstSummarizedExperiment
.plotMA
: Reworked internalDESeqResults
method code. Added draft support for newDESeqAnalysis
S4 class. KeepingplotMeanAverage
reexported, since this function is used in the F1000 workflow paper.plotMappingRate
: Set the default limit back down to 0.7.plotMeanSD
: Reworked internalDESeqDataSet
code. Added additional assert checks and changed the default handling ofvst
andrlog
internal formals.plotPCA
: Draft update ofSummarizedExperiment
. Will offload this code to basejump in a future update. Switchedreturn
argument to supporttibble
and S4DataFrame
-- note change from previous support fordata.frame
.- Deleted
plotPCACovariates
method, since DEGreport is failing. Will add back support for this generic in a future update. plotQC
: Initial method support forbcbioRNASeq
.plotTotalReads
: Reworked and tightened up internal ggplot2 code.plotVolcano
: Draft update toDESeqResults
method. Will rework this code with aDESeqAnalysis
approach in a future update.relativeLogExpression
: Added S4 method support.resultsTables
: Removed this approach to subsettingDESeqResults
. This will be a rework in the upcoming DESeqAnalysis package.sampleData
: Simplified internal code, which takes advantage of updates toSummarizedExperiment
defined in basejump.updateObject
: Reworked internal metadata handling.
Example data reorganization:
- Renamed and simplified example datasets. Now only exporting
bcb
(bcbioRNASeq
) anddeseq
(DESeqDataSet
) examples. bcb_small
,dds_small
,gender_markers
, andres_small
have been removed.- Updated and consolidated corresponding
data-raw/
scripts. - Reworked internal
extdata/bcbio/
example datasets. Testing out both2017-05-23_rnaseq
and2018-03-18_GSE67267-merged
data.
R Markdown templates:
- Stripped down supported R Markdown templates. Currently simplified code base
to support Quality Control markdown (
quality_control
). Differential expression and functional analysis templates have been temporarily removed but will be re-added in the future.
Minor changes:
- Reorganized S4 class definitions and validity checks in
AllClasses.R
. Previously, this code was split out per S4 (e.g.bcbioRNASeq-validity.R
). - Moved S4 coercion methods from
coerce-methods.R
toas-methods.R
. - Added internal assert checks in
assert-internal.R
. - Consolidated internal DESeq2 code into
DESeq2-internal.R
. - Consolidated and defined additional global variables into
globals.R
. - Reorganized internal
.meltCounts
code. - Consolidated global package parameter arguments into
params.R
. bcbio
prefix has been renamed tobasejump
, where applicable. Refer to global function params defined withgetOption
, and internal ggplot2 utility functions, such asbasejump_geom_abline
.- Draft support for
countsFromAbundance
selection in internaltximport
call. This is useful for some transcript-level analyses.
Deprecations:
- Removed defunct
download
function. - New deprecations:
plotCountDensity
,plotPCACovariates
,resultsTables
.
Minor changes:
- Update to support basejump v0.10+ release series.
Major changes:
- Fixed a bug in internal tximport code (refer to
tximport-internal.R
file) where sample names can get associated with the wrong samples in experiments, causing samples with numbers roll over from 1 -> 10. Thanks to Richard from AstraZeneca for catching this.
- Handle correlation of PCA covariates when a numerical covariate has no variation.
- Handle
NA
in ribosomal RNA calculations.
Minor changes:
- Bug fix for
as
coercion method support. Need to ensureexportMethods(coerce)
is included inNAMESPACE
file, otherwisebcbioRNASeq
toDESeqDataSet
coercion usingas(bcb, "DESeqDataSet")
won't work when called from an Rscript without the package library loaded. Thanks @roryk for noticing this. - Only run rRNA plots if rRNA is detected.
Major changes:
- Added
transform = TRUE
argument to[
extraction method, allowing the user to skip automatic DESeq2 transformations, which can be CPU intensive for large datasets. - Switched back to using
plotMA
instead ofplotMeanAverage
. An MA-plot by definition is not a "Mean Average" plot, so this function name is misleading. We will keep theplotMeanAverage
working but it is now soft deprecated. plotGeneSaturation
now supportslabel
argument, similar toplotPCA
.
Minor changes:
- Improved internal handling during
tximport
call to handle transcript version mismatch with tx2gene data.frame. This can result if the bcbio pipeline is using an old genome build. - Ensure
genomeBuild
is detected from AnnotationHubrowRangesMetadata
if applicable, and not leftNULL
in the metadata. - Updated internal code to use
aes
instead ofaes_string
, which uses tidyeval and quasiquotation. plotGene
: reduced the number ofreturn
options to simply "facet" and "wide". Previously, this also supported "grid", "list", and "markdown", but these were removed because they are not frequently used.plotGene
: Switched back to internallapply
call instead of usingBiocParallel::bplapply
. This doesn't always work perfect in an HPC environment (e.g. HMS O2 cluster).- Soft deprecated
plotMeanAverage
in favor ofplotMA
. - All S4 generics with method support are exported for easier lookup in the reference documentation.
- All function reexports have been consolidated in bcbioBase package.
Minor changes:
- Enable support bcbio integration, by modifying
bcbioRNASeq
constructor to work with minimal bcbio test data. - Switched from internal usage of
aes_
in favor of consistent usage ofaes_string
. This will make the transition to ggplot2 v2.3.0 easier in a future update.
Major changes:
aggregateReplicates
support has been added back. This function returns aRangedSummarizedExperiment
instead of abcbioRNASeq
object, containing only an aggregate raw counts matrix in thecounts
slot ofassays
.- The functional analysis R Markdown template has been reworked to use
dds_file
andorganism
as new parameter arguments. We've reduced the number of parameters required here to run clusterProfiler. - Made
alphaSummary
defunct forbcbioRNASeq
object, in favor ofDESeqDataSet
only. This function is only useful when a proper design formula has been defined.
Minor changes:
metrics
now contains an informative error for datasets that were analyzed using thefast-rnaseq
bcbio pipeline.DESeqDataSet
coercion frombcbioRNASeq
object doesn't attempt to runDESeq
command any more, which was unnecessary and improves speed.bcbioSingleCell
constructor now supportscensorSamples
parameter. This is useful for removing known poor quality samples upon loading.- ggplot2 color and fill palettes are now set
NULL
in the quality control functions. This behavior doesn't change the appearance of the plot colors, which will still default toggplot2::scale_colour_hue
orggplot2::scale_fill_hue
. The upcoming ggplot2 v2.3.0 update supports global options for color and fill palettes, so these parameters may be deprecated in a future release. - Reworked the internal code for
topTables
.
Infrastructure changes:
- Added macOS testing to Travis CI build checks.
- Fixed clusterProfiler compilation error on Travis CI by installing
libudunits2-dev
(Linux).
Major changes:
- Now recommending variance stabilizing transformation (
vst
) overrlog
counts by default in plots, where applicable.
Minor changes:
- Tweaked Rory's biotype plots in QC report to match formatting conventions in the package. These plots are now colored.
- Added
plotDEGPCA
to default differential expression R Markdown template. colData
factors are correctly releveled upon object subset with[
. This helps avoid unwanted downstream errors when creating aDESeqDataSet
and running differential expression with DESeq2.- Recommending
facet
return method by default forplotGene
. Updated the working example to reflect this. metrics
now returnsinterestingGroups
column.sample
label has been removed from axis title for QC plot functions.- Now using shared ggplot2 convneience functions from bcbioBase 0.2.10:
bcbio_geom_abline
,bcbio_geom_label
, andbcbio_geom_label_repel
. These are also used by bcbioSingleCell for improved graphical consistency. - Removed unused internal legacy ggplot2 code.
- Increased DEGreport, DESeq2, and tximport dependency requirements.
Minor changes:
- Split out assertive imports so we can pin on bioconda.
- Improved package documentation.
- Improved label consistency in
plotPCA
functions to matchplotMeanAverage
andplotVolcano
. - Improved automatic title labeling in
plotDEGPCA
, matching the other DEG functions. Also added directionality toplotDEGPCA
. - Added
DESeqDataSet
method support toplotCorrelationHeatmap
, using the normalized counts. reusltsTables
now writes local files totempdir
when Dropbox mode is enabled usingdropboxDir
.
Last set of code fixes before F1000v2 resubmission.
Major changes:
- Added
rle
return support forcounts
, which are calculated on the fly. - Added
transgeneNames
andspikeNames
support toloadRNASeq
function. loadRNASeq
now supportsorganism = NULL
again, for datasets with poorly annotated genomes.- Primary
assay
containing raw counts is now namedcounts
instead ofraw
, for consistency with otherSummarizedExperiment
objects (e.g.DESeqDataSet
) and the bcbioSingleCell S4 class definition. - Improved internal code for
plotGene
andplotGenderMarkers
.
Minor changes:
- Improved AppVeyor CI support to test against bioc-devel using R 3.5.
- Improved support and unit testing for
updateObject
method. - DESeq2 normalized counts are always slotted in
assays
, even when rlog and vst transformations are skipped. - Exporting
[[<-
,assays<-
,colData<-
,interestingGroups<-
, andmetadata<-
assignment methods, to avoid unwanted coercion toSummarizedExperiment
. Objects extendingRangedSummarizedExperiment
shouldn't be doing this, so we may need to file a bug report with Bioconductor or check our class definition in the package. - Now importing specific functions from S4Vectors and methods rather than importing everything.
- Switched back to using
stop
,warning
andmessage
rather than the alternate [rlang][] functionsabort
,warn
, andinform
. - Objects with invalid metadata now print which slots are invalid to the console.
Major changes:
bcbioRNASeq
S4 class object is now extendingRangedSummarizedExperiment
instead ofSummarizedExperiment
. Consequently, the row annotations are now stored in therowRanges
slot asGRanges
class, instead of in therowData
slot as aDataFrame
. TherowData
accessor still works and returns a data frame of gene/transcript annotations, but these are now coerced from the internally storedGRanges
. TheGRanges
object is acquired automatically from Ensembl usingbasejump::ensembl
. By default,GRanges
are acquired from Ensembl using AnnotationHub and ensembldb. Legacy GRCh37 genome build is supported using the EnsDb.Hsapiens.v75 package.assays
now only slot matrices. We've moved the tximport data from the now defunctbcbio
slot to assays. This includes thelengths
matrix from tximport. Additionally, we are optionally slotting DESeq2 variance-stabilized counts ("rlog
","vst"
). DESeq2 normalized counts and edgeR TMM counts are calculated on the fly and no longer stored inside thebcbioRNASeq
object.colData
now defaults to returning asdata.frame
instead ofDataFrame
, for easy piping to tidyverse functions.bcbio
slot is now defunct.- FASTA spike-ins (e.g. EGFP, ERCCs) can be defined using the
isSpike
argument during theloadRNASeq
data import step. - Melted counts are now scaled to log2 in the relevant quality control
functions rather than using log10. This applies to
plotCountsPerGene
andplotCountDensity
. Note that we are subsetting the nonzero genes as defined by the raw counts here. - Simplified internal
tximport
code to no longer attempt to strip transcript versions. This is required for working with C. elegans transcripts. - Minimal working example dataset is now derived from GSE65267, which is also used in the F1000 paper.
- Added
as(object, "DESeqDataSet")
coercion method support forbcbioRNASeq
class. This helps us set up the differential expression analysis easily. counts
function now returns DESeq2 normalized counts (normalized = TRUE
) and edgeR TMM counts (normalized = "tmm"
) on the fly, as suggested by the F1000 reviewers.- Design formula can no longer be slotted into
bcbioRNASeq
object, since we're not stashing aDESeqDataSet
any more. - Updated Functional Analysis R Markdown template.
Minor changes:
validObject
is now required for all plotting functions. This check is also called in the R Markdown template. Legacy objects can be updated usingupdateObject
.metrics
now returns columns sorted alphabetically.- Added
contrastName
as a generic function. plotDEGHeatmap
andplotDEGPCA
generics no longer havecounts
defined in the signature. Thecounts
argument is now only defined in the methods.prepareRNASeqTemplate
has been converted from a generic to a standard function.- Improved
metadata
validity checks. plotCorrelationHeatmap
matrix method has been moved to basejump package, for improved consistency with the other heatmap code.plotGenderMarkers
internal code has been reworked to matchplotGene
.- Default
plotMA
appearance has changed, providing a line at the 0 y-intercept, similar toDESeqDataSet
method. - Internal example datasets have been renamed (e.g.
bcb_small
instead ofbcb
). - Added AppVeyor CI support for code testing on Windows.
- Made Travis CI checks stricter, added
BiocCheck
. - Internal
.sampleDirs
code is now exported in bcbioBase as a generic. gene2symbol
andinterestingGroups
method support are now defined forSummarizedExperiment
in the bcbioBase package.
Updating legacy objects (pre v0.2.0):
- Use
updateObject
in combination with therowRanges
argument, which requires aGRanges
object.GRanges
can be obtained from Ensembl using thebasejump::ensembl
function or the ensembldb package.
Deprecations:
bcbio
slot is now defunct, since we have moved all data into theSummarizedExperiment
container.- Deprecated
plot5x3Bias
in favor ofplot5Prime3PrimeBias
. This is less confusing as to what this function plots. flatFiles
has been deprecated in favor ofas(object, "list")
coercion method. See bcbioBase package forSummarizedExperiment
method support.- Defunct:
design
,download
,meltLog10
,txi
. - Legacy
bcbioRNADataSet
method support has been removed.
- Bug fix for
gene2symbol
argument not renaming rows inplotDEGHeatmap
.
- Bug fix for
[
subset method dropping metrics in metadata. - Simplified unit testing for Dropbox mode enabled in
resultsTables
.
- Bug fix for gene-to-symbol mappings in
plotDEGHeatmap
. - Added support for quickly plotting differentially expressed genes (DEG) in
a PCA plot with
plotDEGPCA
. - Added support for Dropbox shared links to
resultsTables
, for use with the Stem Cell Commons database. - Added assert checks internally for all functions.
- Improved internal code for
plotGene
andplotGenderMarkers
to run faster. - Deprecated data frame methods based on metrics for QC functions.
- Import shared dependency functions from bcbioBase instead of basejump.
- Added method support for
selectSamples
. organism
andgenomeBuild
parameters are now user-definable in the mainloadRNASeq
import function.- Fixed gene subsetting method on S4 object, which handles genes using
intersect
in the featureCounts matrix. - Removed internal
aggregateReplicates
code. This needs to be reworked and added back in a future release. - Improve method for handling a missing normalized counts matrix in the assays slot. This can occur when the user opts to skip the CPU-intensive DESeq2 normalizations.
- Improved internal code for the quality control functions. Improved the
if
statements to be more class specific. - Renamed
plotCorrelationHeatmap
transform
argument tonormalized
, for consistency with thecounts
generic. - Added
title
support to plots, where applicable. - Updated internal code for
plotDEGHeatmap
. - Updated internal marker handling code for
plotGenderMarkers
. resulsTables
function now defaults tosummary = TRUE
.
- Migrated all basejump function imports to bcbioBase package.
- Combined examples (
bcb
,dds
,res
, etc.) into a singleexamples
object. This helps avoid accidental use of examplebcb
in an analysis. - Moved ggplot imports from
internal-ggplot.R
to above each function. - Renamed
maxSamples
parameter inloadRNASeq
totransformationLimit
. If there are more samples than this limit, then the DESeq2 transformations will be skipped. In this case,rlog
andvst
will not be slotted intoassays
. - Added a colData sanitization step in
loadRNASeq
to ensure rows are in the same order as the columns in the counts matrix. Otherwise, DESeq will report an error at theDESeqDataSetFromTximport
step. We're also ensuring the factor levels get updated here. - Now using
glimpse
instead ofstr
in examples, where applicable. - Added
colData<-
assignment method support. This requires aDataFrame
class object. Upon assignment, the internal colData atbcbio(object, "DESeqDataSet")
,assays(object)[["rlog"]]
andassays(object)[["vst"]]
are also updated to match. - Initial assignment support for
design
, which will update the internal DESeqDataSet. - Added method support for
gene2symbol
generic, which will now return a 2 columndata.frame
withensgene
andsymbol
columns. This is helpful for downstream gene to symbol mapping operations. - Added working example for
interestingGroups<-
in the documentation. - Added some code to improve factor releveling, where applicable. See
internal-meltLog10.R
for example. - Now explicitly defining the custom color palettes (e.g.
viridis::scale_fill_viridis(discrete = TRUE)
. This makes it clearer to the user in the documentation where these palettes are located. - Improved axis label support in
plotGene
. plotHeatmap
now uses internalgene2symbol
mappings from stashed annotable, instead of always querying Ensembl. The user can define custom mappings with thegene2symbol
argument, if desired.plotPCA
now supports custom color palettes. Theshapes
parameter has been removed because it doesn't work well and is limited to datasets with few samples. This behavior matches the PCA functionality in DESeq2.- Improved internal code for
plotVolcano
. Added support forgene2symbol
argument, like inplotHeatmap
. If left missing, the function will query Ensembl for the gene2symbol mappings. We're now usingdata
instead ofstats
as the main data source. - Improved legibility of subset method code.
- Added some additional reexports, which are used for the package documentation and website.
- Simplified legacy object coercion method code.
- Updated Bioconductor installation method code. We're now using the
dependencies
argument, which allows for automatic install of suggested packages along with imports.
- Updated package imports to match Bioconductor 3.6.
- Added support for interesting groups assignment with
interestingGroups<-
. - Renamed
plotGeneHeatmap
to simplyplotHeatmap
. - Added gender marker support for Homo sapiens.
- Improved support for multiple interesting groups in quality control plots. Now interestingGroups is defined as a column in the metrics data.frame that is used to specify the plot color/fill. This matches the convention in the bcbioSingleCell 0.0.22 update.
- Sample metadata columns are now consistently set as factors.
- Added support for coloring of multiple interesting groups in quality control plots.
- Updated version and author information to match the F1000 Research workflow.
- Added an
f1000v1
branch containing the reproducible code used to generate the figures in our workflow. - Modified
plotMA
to support vertical or horizontal layout return. Also added an argument to remove the color legend, which is typically not that informative. - Added custom color palette support to the quality control functions.
- Upgrading from
bcbioRNADataSet
(< 0.1.0) tobcbioRNASeq
class object is now possible usingas
coercion method. - Object oriented methods are now restricted to use
bcbioRNASeq
object. LegacybcbioRNADataSet
objects must be upgraded tobcbioRNASeq
class.
- Added support for output of unstructured data inside
bcbioRNASeq
S4 object usingflatFiles
function. - Added
bcbioRNASeq
method support forannotable
generic.
- Renamed
bcbioRNADataSet
S4 class tobcbioRNASeq
. This matches the naming conventions in the bcbioSingleCell package. - Renamed
loadRNASeqRun
to simplyloadRNASeq
. - Switched
loadRNASeq
from using S4 dispatch to a standard function. - Added a parameter argument to
loadRNASeq
that enables request of a specific Ensembl release version for gene annotations. - Renamed
interestingGroup
argument in quality control functions tointerestingGroups
for better consistency. - Improved handling of sample metrics in
plotPCACovariates
. - Added functional analysis R Markdown template.
- Offloaded some core functionality shared between bcbioRNASeq and bcbioSingleCell to the basejump package. This included some code to handle sample metadata YAML and file loading. This helps provide a consistent experience across both packages.
- Renamed package from bcbioRnaseq to bcbioRNASeq.
- Improved website appearance.
- Added viridis color palette support to quality control functions.
- Improved subset operations on
bcbioRNADataSet
object. - Fixed setup chunk loading of
bcbioRNADataSet
in differential expression R Markdown template.
- Added S4 methods support for plots, allowing the user to use either
bcbioRNADataSet
or a metricsdata.frame
and manualinteresting_group
declaration for visualization. - Migrated function and variable names from
snake_case
tocamelCase
. - Offloaded small RNA functionality to a separate package named bcbioSmallRNA.
- Reworked R Markdown templates to improve YAML defaults and add more comments.
- Modified default path variables in
setup.R
to use*_dir
instead of*_out
. - Updated NEWS file to use Markdown syntax.
- Slotted
DESeqDataSet
usingdesign = formula(~1)
for quality control. This enables automatic generation ofrlog
andvst
transformed counts. - Documentation fixes and website updates.
- Renamed S4 class from
bcbioRnaDataSet
tobcbioRNADataSet
(case sensitive). - Adjusted the number of exported functions.
- Prepared draft of F1000 workflow document.
- Added Travis CI support for automatic rendering of quality control report.
bcbioRnaDataSet
S4 definition updates.- Updates to
plot_pca
and gene-level heatmaps.
- Simplified count pooling functions.
- Reduced number of exports and improved documentation.
- Draft migration of bcbio run object into S4
bcbioRnaDataSet
. - Created a new variant of
load_run
that saves to S4 object instead of list.
- Reworked and re-organized internal functions.
- Defaulted to loading run using project summary YAML file.
- Initial commit of R Markdown templates (e.g. quality control).
- Added support for dynamic file downloads from HBC website.
- Draft build of website using
pkgdown::build_site
.
- Improved RDAVIDWebService utility functions to work with dplyr 0.6.0.
- Reworked metadata and summary metrics functions to obtain information from
project-summary.yaml
saved in the final run directory.
- Reduced number of depdencies.
- Initial commit of modified volcano plot from CHBUtils package.
- Internal code updates for upcoming dplyr 0.6.0/[tidyeval][] update.
- Updated Ensembl biomaRt annotations to use live site, currently release 88.
- Renamed
import_*
functions toread_*
.
- Consolidated NAMESPACE imports.
- Defaulted to writing count matrices with gzip compression, to save disk space.
- Renamed internal parameters for better readability.
- Improved documentation and consolidate functions by group.
- NAMESPACE simplification using basejump package.
- Reworked handling of plots and tables during knits.
- Initial commit of differential expression and gene set enrichment functions.
- Added bcbio object integrity checks.
- Improved detection and handling of lane split samples.
- Reworked functions to utilize bcbio list object.
- Added plotting functions.
- Start of package development.
- Initial draft release supporting automatic loading of bcbio run data.