Read Paradox Database Files
Overview
Provides a simple and efficient way to read data from Paradox database files (.db) directly into R as modern 'tibble' data frames. It uses the underlying 'pxlib' C library to handle the low-level file format details and provides a clean, user-friendly R interface.
Major changes
- Complete rewrite of the C backend: removed all write functionality, making the library read-only. Removed dead write-code including
PX_create_file,PX_put_record,PX_update_record,PX_delete_record,PX_pack, and all encoding write functions. - Removed GSF (GNOME Structured File) and memprof support.
- Removed
paradox-gsf.h,paradox-mp.h,px_encode.c/h,px_memprof.c.
Bug fixes
- Fixed uninitialized memory access in
get_px_head()that caused a segfault with-O2 + LTOwhen opening encrypted files. - Added missing
#include "paradox.h"in 5.cfiles (paradox.c,px_io.c,px_head.c,px_misc.c,px_memory.c).
Show all changes in 0.3.0Hide the rest of the changes in 0.3.0
- Fixed buffer overflow in
px_passwd_checksum()for passwords > 255 chars. find_blob_file()now normalises paths with forward slashes to ensure consistentexpect_equal()comparisons on Windows UCRT.- Fixed 238 Valgrind errors (uninitialised reads) in
get_px_head()and_px_get_data_blob(): replacedret < 0checks with exact-size comparisons (ret != sizeof(...)) afterread()calls to detect short/truncated reads from corrupted files.
Documentation
- README.Rmd: removed all runnable code examples, now links to vignette.
- Vignette: now contains all usage examples previously in README (magick plot, encrypted files, encoding override, advanced workflow).
New tests
test-encryption.R: Full encryption workflow tests.test-find_blob_file.R: BLOB file auto-detection tests.test-recode_if_needed.R: Encoding conversion tests.test-px_close_file.R: Error handling for file close operations.test-corrupted_file.R: Handling of non-Paradox files.test-missing_blob.R: Behavior when BLOB file is missing.test-password_edge_cases.R: Password validation edge cases.test-encoding_edge_cases.R: Invalid encoding handling.test-path_edge_cases.R: Path validation edge cases.
From NEWS.md in the release
Install
Health
- OK13 OK2026-09-08
- ERROR12 OK, 1 ERROR2026-09-07
- OK13 OK2026-08-05
- NOTE12 OK, 1 NOTE2026-08-01
- OK14 OK2026-03-10
Documentation
- Help pages
- 6 (1 internal)includes a package overview page
- Examples that run
- 100%4 run in a plain check
- Exported functions with examples
- 80%
- Documented parameters
- 100%
- Return-value docs
- 100%
- Help pages citing references
- 0%
Downloads
Repository
- PRs merged (all time)
- 0%
- Median days to close, 50 most recently updated closed issues
- not measured
- Median days to close, 50 most recently updated closed PRs
- 58
Stars over time
PRs over time
Commits over time
3 development-tooling and community-health practices detected across 3 families in the upstream repository
Checks run against github.com/celebithil/rparadox on 2026-10-18.
Dependencies
Code & Tests
People & History
Package metadata
- First published
- 2025-09-16
- Total releases
- 7 / 1 yrs
- License
- GPL (>= 2) OSI
- Minimum R
- ≥ 3.5.0
- Download size
- 437 KB
Cite
Cite this package
Run in R for the authors' preferred citation:
citation("Rparadox")This package has no citation file, so citation() returns this entry built from DESCRIPTION.
Cite the R Observatory
For a number measured here: a download total, a coverage figure, an archival date.
From data release v2026-10-20, which the citation names so these numbers can be found later. More on citing and the projects behind them.