rcdf 0.1.6
Security fixes
-
generate_pw(): switched from Mersenne Twister to a cryptographically secure RNG (openssl::rand_bytes). -
write_parquet(): DuckDB errors no longer leak raw encryption key material in messages. -
write_rcdf_parquet(): plaintext temp table is now always removed after a shared-connection write. -
write_rcdf_as(): replacedeval(parse())dispatch with a safe named-list of function references. -
hex_to_raw(): added strict input validation (type, length, character set).
Performance enhancements
-
write_parquet()/write_rcdf_parquet(): removedhttpfsoverhead; shared DuckDB connection across writes; default compression changed tozstd. -
read_rcdf(): newlazy = TRUEoption for DuckDB-backed lazy reads;n_threadsfor parallel I/O; duplicatePRAGMAcalls deduplicated per connection. -
add_metadata(): label assignment vectorised with batch update. -
open_duckdb_connection(): no longer forces single-threaded mode.
Bug fixes
-
collect.rcdf_tbl_db(): fixed infinite-dispatch recursion;NULLmetadata no longer causes an error. -
read_parquet(): unencrypted early-return path now correctly appliesmetadataandas_arrow_table. -
normalize_key_value(): hex keys no longer misidentified as base-64.
rcdf 0.1.5
CRAN release: 2026-03-07
Feature and update
- Added
encrypt_value()anddecrypt_value()functions, respectively, to encrypt and decrypt string using RSA. - Changed “dot env” (
.env) reader fromread_env()toread_dot_env().
Bug fix
- Fixed bugs not returning metadata attributes using either
read_rcdf()andget_rcdf_metadata().
rcdf 0.1.4
CRAN release: 2026-03-03
Features
- Added
get_attr()to retrieve attribute/s from RCDF object. - Added
read_parquet_tbl()to read encrypted Parquet file and return as lazy data from DuckDB connection.
Breaking change
- Removed
pre_collectargument inread_rcdf()
rcdf 0.1.3
CRAN release: 2026-02-12
- Added
merge_rcdf()function to combine multiple RCDF files with different encryption keys into one. - Updated
read_rcdf()to allow reading of multiple RCDF file with different encryption keys. - Added
pre_collectargument toread_rcdf()to allow lazy loading the RCDF object.