Major changes:
Minor changes:
import
: Reworked GAF file method to simply import as a 17 column
data.frame
. Refer to the Gene Ontology website for details on the GAF
file format, which is basically a TSV files with commented lines beginning
with "!"
.getGAF
function doesn't work on
most of the GAF files available from the Gene Ontology website currently.
It only works reliably with the Homo sapiens protein annotations, which
isn't general enough for our needs currently.Minor changes:
import
: Added support for Gene Ontology (GO) annotation files (GAF).
Useful for importing data from the Gene Ontology Annotation (GOA) database.import
.Major changes:
export
now supports list
and S4Vectors List
, for recursive export
of supported objects. We may use this method in for other classes, such
as SummarizedExperiment
in AcidExperiment package in a future update.export
: GRangesList
export method now inherits from List
, and writes
each object in list as a separate file to disk, rather than grouping in a
data.frame
coercion step first.Minor changes:
export
: GRangesList
method is now defined and split out from data.frame
method, to handle edge case of undesirable column name coercion.Major changes:
import
now supports import of JSON and YAML lines via textConnection
.
This is very useful for importing return from CLI tools, such as aws
.Minor changes:
import
: Now using read_yaml
internally instead of yaml.load_file
from
the yaml package.Minor changes:
import
: Improved edge case handling of datasets with invalid names.as.data.frame
: Improved internal coercion code for Matrix
and IRanges
.as.DataFrame
: Ensure we set optional = TRUE
internally during
as.data.frame
call.New functions:
fillLines
: Utility function for fixing malformed CSV and TSV files.unfactorize
: New generic function that intelligently converts a factor
back to its original atomic data type.Major changes:
import
and export
generics are now defined in AcidGenerics rather
than extending from BiocIO. This helps simplify the methods, removing options
that we never use.cacheURL
to cacheUrl
.getJSON
to getJson
.getURLDirList
to getUrlDirList
.pipetteTestsURL
to pipetteTestsUrl
.removeNA
to removeNa
.sanitizeNA
to sanitizeNa
.Major changes:
getURLDirList
: Entirely reworked internal code to no longer depend on RCurl
package. Added support for HTTP(S) servers, which has been tested to work
for Ensembl and NCBI.import
: Now supports textConnection
class for primary con
argument
instead of always using character
representing a file path. This is
incredibly useful for reformatting a malformed delimited file on a remote
server prior to import, which can help eliminate our reliance on readr or
data.table as alternative engines to handle malformed files.transmit
: Reworked internal code to no longer depend on RCurl.Minor changes:
export
: Now supports GRangesList
, which first coerces to data.frame
.
This class includes "group"
and "groupName"
as the first columns upon
export.getURLDirList
: Tighten up assert checks to intentionally error if input
does not contain an FTP server URL.Major changes:
packageDependencies
from AcidDevTools,
decided to revert the changes introduced in 0.12.0 back to making more heavy
dependencies optional. We are now no longer requiring BiocFileCache,
data.table, digest, httr2, readr, and rtracklayer to be installed. This
helps speed up attachment of the package, where it is most commonly used to
simply import and export CSV files as the primary utility.Minor changes:
getURLDirList
: Need to move isAnExistingURL
assert check down, to not
break Ensembl FTP server checks in AcidGenomes makeGRangesFromEnsembl
.Minor changes:
as.DataFrame
: Fixed support for nesting of DFrame
objects.droplevels2
: Ensure that original class and object metadata are preserved.Major changes:
Suggests
to Imports
(see DESCRIPTION
and IMPORTS
files) to avoid issues with missing
dependencies in some commonly used Acid Genomics software. Here we are now
requiring BiocFileCache, data.table, digest, httr2, jsonlite, readr,
rtracklayer, and yaml as standard packages in pipette, so that they get
automatically installed. This change only applies when managing dependencies
using R directly and doesn't affect bioconda recipes.isAnExistingURL
instead of
simply isAURL
. This new function available in the goalie package actively
checks to see if the URL exists and is active. Note that for FTP directories,
such as with the transmit
function, the isAnExistingURL
check only works
if there is a trailing slash.Minor changes:
"rest.ensembl.org"
),
as this has recently been flaky and can cause build checks to time out.isAnExistingURL
to check.Minor changes:
import
: Disabled lazy
loading mode for readr. Enabling this makes it
basically impossible to suppress warnings when parsing malformed files, such
as in the MGI
function of AcidGenomes.Minor changes:
getJSON
: Improved code coverage for parsing of Ensembl REST API.Major changes:
import
and export
are now prefixed with Pipette
, to
avoid unwanted collisions with other classes defined in Bioconductor packages.import
: Added support for MAF files.import
: Added support for BAM, CRAM, and SAM files. Note that CRAM files
must be able to resolve the corresponding reference genome.import
: Added support for BCF and VCF files. Note that these files currently
require corresponding CSI index files, which can be generated using htslib.import
calls (i.e. automatic decompression
of compressed files, such as gz
or xz
) are now automatically cleaned
up. This change should only affect temporary files. If you notice any issues
with this, please file a bug report!getJSON
: Reworked to use httr2 instead of deprecated httr package.Major changes:
import
: Improved support for FASTA files. The function will now
intentionally error on any warnings, which can occur if the moleculeType
argument is not set correctly. For example, we're defaulting to DNA input
here, but that is not always the case. miRBase FASTA files are in RNA format,
so use moleculeType
argument here to set "RNA"
instead of "DNA"
. We've
also added amino acid support via "AA"
argument, which passes to Biostrings
package in a similar method for DNA and RNA. Note that for miRBase FASTA
files, we now attempt to get metadata from the FASTA identifiers, which are
defined as a DataFrame
slotted into metadata
as attributes
.Minor changes:
import
: Updated data.table
engine settings to use header = "auto"
when
colnames
argument is declared as TRUE
. This will attempt to handle
malformed columns, similar to readr/vroom approach.grepl
wrapper
functions, such as isMatchingFixed
and isMatchingRegex
, which improves
code legibility.Minor changes:
DataFrame
to DFrame
; GenomicRanges
to
GRanges
; and IntegerRanges
to IRanges
.Minor changes:
import
and export
now support overriding default quote handling with the
quote
argument. Changing this is not recommended by default, but is useful
for some edge cases with annoying gene metadata files from Ensembl. Who
decided that B"
is an acceptable gene name?Minor changes:
import
: Switched default quoting for delim file using base engine. Also
removed empty string assert checks, which can be problematic for some data
types returned by readr and data.table engines.Minor changes:
naStrings
handling, which improves automatic
sanitization of some malformed gene CSV files on the Ensembl FTP server.Minor changes:
initDir
and pasteURL
from AcidBase.pattern
documentation for getURLDirList
.Minor changes:
as.DataFrame
: Reworked the list
and SimpleList
methods:
We removed the option to set row.names
for list
and SimpleList
methods. Instead, row names will get defined automatically when the first
element in the list is named.
list
method now checks for length mismatched input at the start of the
function. This should also be handled in the downstream DataFrame
generator step, but we can set a custom error message instead.new
internally with listData
and nrows
defined,
which is faster and less problematic then attempting to construct a matrix
(via cbind
) and then coerce to DataFrame
instead.Our list
method now attempts to reorder named elements when possible.
decode
: The internal code for DataFrame
method has been simplified, due to
rework of our internal as.DataFrame
method code. Note that list elements
are now unname during the decoding step, but has no effect on row name
handling.
droplevels2
: Hardened DataFrame
method to properly coerce DataFrame
to SimpleList
before proceeding. Using as
method with "List"
class
does not currently unclass DataFrame
as expected.Minor changes:
requireNamespaces
import in NAMESPACE from AcidBase to goalie.Minor changes:
factorize
: Bug fix to ensure that logical
columns are not coerced to
factor, as these are expected to have repeated values.Major changes:
import
: Added support for import of gene cluster text (GCT) file format.
Currently can set return
parameter to import as a matrix
(default) or
data.frame
with Name
and Description
columns retained.Major changes:
export
and import
. Note that file
is intentionally not supported in favor of
con
, which is the preferred convention used in BiocIO.missing
instead of
using missingOrNULL
, which can cause unwanted inheritance issues that
collide with BiocIO package.export
now supports any type of atomic
vector.Minor changes:
factorize
: Improved handling of DataFrame
input that contains complex
S4 columns, such as CharacterList
.Major changes:
factorize
: Reworked internal method to only coerce columns with repeated
values to factor. Now uses anyDuplicated
internally to check for which
columns to factorize.Minor changes:
import
: Hardened the internal readr engine to use base make.names
for
column name repair for delimited file import (e.g. CSV, TSV). This also
eliminates unwanted CLI messages about name repair when using readr.Minor changes:
export
: Bug fix to provide compatibility in Matrix
method for export of
sparse matrices without dimnames (e.g. row and/or column names). Hit this
edge case in the update of example data in our Chromium package.Minor changes:
Minor changes:
atomize
: Hardened edge cases of empty DataFrame
and GRanges
input.
Also improved code coverage to test handling of these edge case events, which
can occur when exporting metadata from SummarizedExperiment
in upstream
AcidExperiment and bcbioRNASeq packages for objects with minimal metadata.Minor changes:
Minor changes:
import
: Added support for Open Biomedical Ontologies (OBO) format.
This uses ontologyIndex internally. See also BiocSet for alterative import
method that uses es_set
and other accessor functions.Major changes:
"engine"
.as_tibble
and as.data.table
, to remove
strong dependencies on data.table and tibble packages.as
coercion support in favor of simply using as.DataFrame
S4
generic approach, to avoid potential conflicts with Bioconductor.as.DataFrame
: Reduced the number of supported classes, removing support of
non-Bioconductor classes, specifically data.table
and tbl_df
.column_to_rownames
, getURL
, rbindlist
,
rownames_to_columns
, and tibble
.Minor changes:
droplevels2
instead of droplevels
, to
avoid method conflict with new Bioconductor 3.15 update.requireNamespaces
calls are now wrapped by assert
.deprecated.R
: sanitizeColData
, sanitizeRowData
,
sanitizeRowRanges
, and writeCounts
.Major changes:
export
, import
: Switched to recommended new BiocIO generic approaches,
which are now used in multiple Bioconductor packages, notably rtracklayer.export
, import
: Switched back to readr as default engine from data.table.
The data.table fread
and fwrite
functions have been shown to generate
stack imbalances in some edge cases that readr handles better.export
: Current default recommended method now dispatches on "object"
,
"con"
, and "format"
arguments. Previous methods that dispatch using
"format"
, "dir"
, "ext"
, and/or "file"
(adapted from the conventions
used in rio package) arguments are soft deprecated, but should still currently
work. If you encounter any breaking changes here, please file an issue!import
: Current default recommended method now dispatches on "con"
,
"format"
, and "text"
arguments. We have defined our methods to simply
handle the "con"
argument as a file path. Note that the "text"
argument
can be useful for passing in raw lines of a particular file format, but we
are not currently supporting that edge case in any of our import methods yet.
Such functionality may be added in a future update.export
data.frame
/ DataFrame
methods now attempt to coerce nested
list
columns to vector
via toString
internally when possible.Minor changes:
import
: Added rownameCol
argument for import of delimited files, such
as CSV, TSV, and Excel. This is a non-breaking change that enables the
user to manually define the rowname column upon import, which can be useful
when working with files from public databases such as GEO.Major changes:
bapply
import from AcidBase to goalie.Major changes:
import
: Added support for FASTA and FASTQ files, which are loaded via
Biostrings package internally. Refer to readDNAStringSet
for details.import
: Improved makeNames
consistency for methods that import
two-dimension arrays (e.g. data.frame
).Minor changes:
stop
internally, now using abort
, which supports stylized
messages (via cli package).transmit
: Hardened working example against NCBI FTP server failure.import
and export
functions.Minor changes:
sanitizeNA()
: Reworked internal call to use factor
instead of as.factor
followed by a separate levels
call. This can result in an unwanted value
swap for factors with a single value. Added code coverage to check for this.Minor changes:
localOrRemoteFile
: Improved handling of URLs without a file extension.import
/export
: Simplified the appearance of file variables, making them
easier to copy directly from the console for debugging.Minor changes:
import
: Ensure that data.table
engine always interprets empty strings
(""
) as NA
. The fread
function is opinionated about this and doesn't
currently respect ""
input as an NA
string.decode
/encode
: Ensure we're not dropping metadata here.Major changes:
import
now uses S4 methods based on the file
argument, which can be
manually overridden with the format
argument (e.g. "csv" for a CSV file).import
and export
now support engine
argument for methods dispatching
on character
and data.frame
. Currently "base" (base R), "data.table",
"readr", and "vroom" are supported.Minor changes:
import
: Added support for removeBlank
and stripWhitespace
for import
of source code lines (LinesFile
).import
: Improved import handling of source code lines using data.table.Minor changes:
decode
/ encode
: Reworked internal code slightly to provide compatibility
with S4Vectors update in Bioconductor 3.13.Major changes:
as.DataFrame
: Updated list
to DataFrame
coercion support that is
compatible with Bioconductor 3.13 release update.cacheURL
: Now using tools::R_user_dir
instead of
rappdirs::user_cache_dir
internally. This matches the conventions used in
Bioconductor 3.13 (e.g. AnnotationHub and BiocFileCache).Minor changes:
Minor changes:
cacheURL
now internally calls BiocFileCache and rappdirs as suggested
packages, rather than direct imports. This helps keep the package a bit
lighter and improve loading times, as BiocFileCache currently calls a number
of heavy dependencies, including dplyr.md5
and sha256
now call digest
internally as
a suggested package, rather than a direct import.Major changes:
import
and
export
functions.Minor changes:
import
and export
of delimited files.read.table
and write.table
instead of read.csv
and write.csv
for CSV files.read_delim
and write_delim
, similar
to the update for base engine.Minor changes:
import
: Hardened importer against unexpected mismatch when user attempts
to manually define column names via colnames
argument. Some importers
such as vroom
are currently too liberal about mismatches.Minor changes:
seqnames
as a reexport, which is defined in GenomeInfoDb via
GenomicRanges.Minor changes:
as.DataFrame
: Restrict list-based coercion to list
and SimpleList
(instead of List
virtual class).Minor changes:
CompressedGRangesList
from GenomicRanges as a reexport.Minor changes:
Minor changes:
naStrings
to include "-"
, "_"
, and " "
.Minor changes:
Minor changes:
AtomicList
virtual class.Annotated
, Factor
,
Factor
, LLint
, and RectangularData
classes.Minor changes:
CharacterList
, FactorList
,
IntegerList
, LogicalList
, NumericList
, RleList
.Minor changes:
New functions:
md5
and sha256
functions, that use the digest package internally.
Previously these were defined in the AcidGenomes package, but have migrated
here for file management consistency.Major changes:
cacheURL
: Fix bug that resulted in different remote URLs with the same
base name being cached as the same object internally by BiocFileCache. Now
URLs should always be cached uniquely.Minor changes:
droplevels
method for DataFrame
.Minor changes:
cacheURL
: Improved message. Now only showing when file gets cached into
package cache via BiocFileCache. Now defaults to caching into BiocFileCache
directory instead of pipette.rbindlist
function from data.table.matchRowNameColumn
to matchRownameColumn
(note case).Minor changes:
naStrings
: Now including lowercase NA
variants, which are seen in some
files on RefSeq FTP server.sanitizeNA
: Updated to also match lowercase NA
patterns.Major changes:
import
: Improved internal engine support for plain text delimited (e.g.
CSV, TSV) files and source code lines. The vroom engine remains enabled by
default but data.table, readr, and base R are consistently supported for
import of either delimited files or source code lines.export
: Added supported for base R export of CSV and TSV files. Internal
engine consistency has been improved for character
and matrix
/data.frame
methods. Note that character
method currently falls back to using
readr's write_lines
function instead of attempting to use the vroom
package by default.Minor changes:
getURLDirList
now returns sorted.url.exists
function from RCurl, for convenience.Minor changes:
Minor changes:
export
: Improved internal file name handling for CLI messages.import
: Improved internal bcbio counts importer code to use default TSV
method, rather than relying on data.table fread
function manually.vroom::vroom_lines
internally, and export
character method will conditionally switch to using
base writeLines
if the readr package is not installed.readMM
and writeMM
as imports.fread
and fwrite
as imports.export
: Bug fix for handling of GZ file name extension for character
method.vroom_lines
error import error of bcbio log:
Unnamed col_types must have the same length as col_names
.import
/export
of tx2gene file handling for pending
AcidGenomes package update.import
: Hardened against makeNames
usage on objects that don't support
names assignment.Minor changes:
export
: Added option to intentionally not export column and/or rownames
for matrix
, data.frame
, and DataFrame
classes.New functions:
download
, which acts as a hardened wrapper for utils::download.file
.
Annoying, download.file
returns status codes but does not intentionally
error on any unsuccessful downloads. Our wrapper ensures that R always errors
on any file download issue. It also sets a longer timeout internally, to
avoid any potential issues with the timeout
option being defined in
Rprofile
.Minor changes:
export
: Added append
option for character
method. Also relaxed checks
on character
method, allowing for exporting of empty vectors.Minor changes:
transmit
: Added download
argument support, to optionally return matching
URLs without downloading. This is useful for handing off to cacheURL
function for caching files inside of packages with BiocFileCache.Minor changes:
write_*
functions,
including write_lines
and write_csv
, the path
argument has been renamed
to file
. Now requiring readr v1.4+ in pipette.New functions:
transmit
here from basejump.New functions:
getURLDirList
: Migrated this function from previous definition in basejump,
so we can inherit inside new AcidGenomes package.Minor changes:
cacheURL
: Added package
argument, so other packages that use this
function will automatically inherit the current package, as expected.New functions:
cacheURL
: Utility function for easy package file caching using BiocFileCache
package internally.Minor changes:
Minor changes:
sanitizeNA
: Added support for "N/A" string, which is present in some Excel
spreadsheets.Minor changes:
export
: Now dropping non-atomic columns (e.g. Entrez ID list column) from
data frames automatically prior to export. Previously, the allAreAtomic
assert check was called automatically and would error on non-atomics.Minor changes:
import
: Improved messages to always resolve full path to import directory.Minor changes:
export
: Ensuring that full directory path is always resolved in message.toString
handling.Minor changes:
import
.Minor changes:
Minor changes:
export
: Improved messaages to include full output path.Minor changes:
import
Hardened Excel input to intentionally error on any warnings returned
by internal read_excel
call, which is too liberal in coercing data types,
in my opinion.import
: Switched XLS parser from gdata (no longer updated) back to readxl,
which is more actively developed.import
: Added makeNames
argument, to override default internal handling.
This allows the user to apply snake case and/or camel case formatting
automatically with this argument.Minor changes:
import
: Added support for skip
argument, which allows the user to skip
a certain number of lines in the input.import
and export
of source code lines now uses readr package internally
(read_lines
and write_lines
) instead of base readLines
and writeLines
.Minor changes:
import
: Now setting delim internally for vroom
import call, to handle
single column data frame import. Otherwise vroom will warn about failing
to detect expected delimiter.Major changes:
import
and export
functions now default to using vroom engine instead
of data.table. Internally, these now call vroom
and vroom_write
.
We noticed that the data.table fwrite
function in particular can have issues
writing many files on AWS EC2 instances, resulting in a stack imbalance.
The vroom package seems to be more stable currently.Minor changes:
loadData
, saveData
: Switched to using cli_alert
instead of cli_text
internally for status messages.Minor changes:
import
: Bug fix for format
argument erroring on some supported file types.Minor changes:
droplevels
: Ensuring S4 generic variant defined in S4Vectors package gets
reexported and masks base S3 generic. This helps avoid a C stack usage
issue that has popped up in the latest version of R.import
: Fix for importing JSON files without extension. Can now declare
using the format
argument. This fix was needed to import GitHub JSON URLs
inside new installGitHub
function defined in bb8 package.Minor changes:
coerce
method is reexported -- thanks @dpryan79 for catching
this issue in basejump.Major changes:
export
: Reworked internal methods to use new compress
and decompress
functions defined in acidbase package.localOrRemoteFile
: Reworked to use new decompress
defined in acidbase
internally, with improved tempfile
handling.atomize
, coerceToList
, droplevels
, decode
,
encode
, factorize
, matchRowNameColumn
, and metadata2
.Minor changes:
Minor changes:
import
: Added metadata
parameter option and improved internal tryCatch
handling if call capture fails. This can be the case when nesting the function
inside another function, which can cause standardizeCall
to fail. Note that
match.call
doesn't have this problem but doesn't consistently expand the
call with default formals as well.Minor changes:
export
: Removed internal dependencies on as_tibble
and as.data.table
calls. The tibble package recently changed the default row name handling
behavior in as_tibble
, which broke the code here. I reworked the internal
code to only use base R approaches, so changes in the tidyverse no longer
affect the package.Minor changes:
Minor changes:
metadata2
function.Minor changes:
New functions:
getURLDirList
: Return a simple character vector of files and subdirectories
in a remote directory. Intended for use with FTP servers.getURL
function from RCurl.Minor changes:
import
: Default format
argument has been renamed from "none" to "auto".localOrRemoteFile
: Improved handling for remote URLs without a file
extension.pasteURL
: Now smartly strips trailing slashes prior to internal paste call.naStrings
: Reverted back to including only "NA" and "NULL", instead of
including empty space strings. This results in unwanted messages regarding
strip whitespace from data.table fread
function.Major changes:
Added back internal support for readr package instead of data.table for
import
and export
functions. We have observed stack imbalance and segfault
memory dump issues with the latest data.table release (v1.12.4) on multi-core
Azure VMs. The engine can now be changed using global options:
import: acid.import.engine
("data.table" or "readr").
acid.export.engine
("data.table" or "readr").This new addition is experimental and may be dropped in a future release. We find that readr currently works more reliably for export in some cases for large CSV files, but data.table is generally faster and more robust for data import of CSV and TSV files. We're intentionally keeping this functions simple and not providing a user-facing argument for selecting the internal engine.
Minor changes:
compressExtPattern
, extPattern
, rdataExtPattern
, rdataLoadError
.naStrings
to include empty whitespace.Minor changes:
rownames = FALSE
.Major changes:
import
: Improved metadata stash approach inside S4 (metadata
) and S3
(attributes
) return objects. Previously, import metadata was stashed inside
"brio", but this has been renamed to "import". Metadata is no longer stashed
inside R data objects loaded via import
. Simplified the internal code inside
import
to only stash the call
, whereas importer metadata is now handled
by an internal .defineImportMetadata
function.Minor changes:
export
: Improved default extension documentation and internal argument
matching via match.arg
. For matrix
files exported simply with dir
argument, this will default to CSV format. For sparse Matrix
files exported
simply with dir
argument, this will default to MTX format.Minor changes:
import
: Improved internal arguments passed to data.table::fread
.Major changes:
export
: Reworked internal code to call data.table::fwrite
directly, rather
than having to pass to brio::export
. Added support for bz2
output for
matrix
and sparseMatrix
classes.Minor changes:
import
: Don't attempt to slot attributes for atomic vector return. This
applies to source code lines and helps avoid valid name issues when assigning
these values to colnames or rownames. I came across this issue while updating
the Chromium package to assign names from 10X Genomics sidecar files.Minor changes:
import
documentation, for clarity.import
: Added format
and setclass
arguments.data.table::fread
for import of bcbio count matrix. Previously,
was using readr::read_tsv
.Minor changes:
url
calls to import
, localOrRemoteFile
, and
loadRemoteData
.Minor changes:
Minor changes:
import
: Bug fix for invalid objects (e.g. S4 objects that inherit
SummarizedExperiment
) not returning silently. Had to convert the try
call to a tryCatch
call to avoid errors popping up during name checks.import
: Now suppressing partial match of 'OS' to 'OS.type'
warning for
import of XLS files, which is a bug in gdata package.Bumped version number to reflect changes in basejump dependencies.
Minor changes:
Minor changes:
Minor changes:
factorize
: Tightened up method support. Now exporting DataFrame
only.acid.data.frame
global option support.sanitizeNA
: Improved factor return.Major changes:
loadData
, loadDataAsName
, and loadRemoteData
now support overwrite
argument. The default behavior of these functions has changed to allow
overwriting into the environment by default, matching the base load
function
conventions. If this behavior is undesired, set
options(acid.overwrite = FALSE)
and this will be inherited in all calls.acid.export.overwrite
and acid.save.overwrite
to simply use
acid.overwrite
global for IO functions. This was modified now that
loadData
also supports the overwrite
argument.Major changes:
import
: Removed Google Sheets support. The googlesheets
R package is
currently too buggy, and the replacement googlesheets4
package isn't stable.
This functionality may be added back in a future update.Introducing breaking changes to export
method. Now using object
instead of
x
as the primary argument, and defaulting to the use of ext
and dir
instead of recommending the use of file
, as is the convention in the brio
package. This makes interactive file export quicker and more intuitive,
involving less repetitive variable declarations.
Minor changes:
Minor changes:
Minor changes:
export()
always works
on data.frame
method.Minor changes:
import
: Added GRP file support for GSEA.import
: Improved Google Sheet import support, using new googlesheets4
package from tidyverse.New functions:
sanitizePercent
here from basejump package.Major changes:
options
.
This applies in particular to the loadData
and saveData
functions, where
the dir
argument can be set globally for an interactive session using this
parameter.New functions:
removeNA
and sanitizeNA
from basejump here, so these
functions can be imported in freerange package.Minor changes:
Minor changes:
localOrRemoteFile
: Improved error message for Windows users when tempfile
can't be removed successfully. This can happen on systems when the user is
not running as Administrator, but doesn't happen on macOS or Linux.Minor changes:
import
: Added initial rownames
and colnames
parameter support for
data.frame
import. I strongly recommend leaving these enabled by default.
However, these are useful in some edge cases when loading data from remote
servers (e.g. WormBase).export
: Removed ...
passthrough for data.frame
method.Minor changes:
import
: Switched to using gdata::read.xls
to import legacy XLS binary
files. readxl::read_excel
doesn't work consistently for some files and
returns libxls
error. In the meantime, use gdata package, which is slow
but works.validObject
check in import
call.Minor changes:
localOrRemoteFile
: Binary file extension pattern matching bug fix. Applies
to files downloaded on Windows. If download.file
is not called with mode
wb
(write binary) for files on Windows, decompression will fail.Major changes:
loadData
and saveData
now support list
argument, supporting a character
vector of object names. This allows for programmatic use of the functions
with standard evaluation. For reference, this approach is inspired by the
method defined in save
.Minor changes:
import
: Data provenance metadata is now slotted into attributes
for S3
return (e.g. data.frame
) and metadata
for S4 return (e.g. DataFrame
).Minor changes:
export
: Tightened up the method support, removing the ANY
method. Now
we're explicitly exporting data.frame
, DataFrame
, matrix
, and GRanges
methods. This also has the added benefit of making the documentation more
readable.New functions:
fileExt
: An improved variation on tools::file_ext
.Minor changes:
basenameSansExt
: Tightened up this function to return NA
on match failure.
This behaves simiarly to the new fileExt
function.sanitizeColData
,
sanitizeRowData
, sanitizeRowRanges
, since these functions are still in use
by bcbioRNASeq v0.2.9.Minor changes:
This release helps ensure backward compatibility with R 3.4.
Minor changes:
transmit
: Need to wrap isMatchingRegex
in all
for
backward compatibility with R 3.4.New functions:
These functions have been migrated from basejump here to brio, since they deal specifically with file input/output:
atomize
.decode
.encode
.factorize
.Removed functions:
sanitizeColData
and sanitizeRowData
. May need to add back in a
future release, but removed for time being.Minor changes:
realpath
: Removed unnecessary assert check using allHaveAccess
, since
normalizePath
already checks for this when mustWork = TRUE
.Minor changes:
Minor changes:
extPattern
to inherit compressExtPattern
.import
regarding compressed file handling.imports.R
file.sanitizeColData
and sanitizeRowData
to take advantage of exported
atomize
function.Minor changes:
import
regarding supported file formats.pasteURL
.Initial release. Migrated input-output (IO) functions from basejump.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.