Tool for Diagnosis of Tables Joins and Complementary Join Features
Overview
Tool for diagnosing table joins. It combines the speed of `collapse` and `data.table`, the flexibility of `dplyr`, and the diagnosis and features of the `merge` command in `Stata`.
Breaking Changes
- **Minimum R version:** Now requires R ≥ 4.2.0 (previously R ≥ 2.10.0) due to use of native pipe operator (
|>) introduced in R 4.1.0 and uses the pipe placeholder syntax added in R 4.2.0. Users on R 4.0.x must upgrade to use this version. - **Default verbosity:**
possible_ids.verbosedefault changed fromTRUEtoFALSEto reduce console output by default.
New Features
- **Variable class validation:** New internal function
check_var_class()validates that join (by) variables have supported classes (character, integer, numeric, factor, logical, Date, POSIXct, fs_path). Warns users when unsupported classes (e.g., list, complex, raw) are detected and suggests coercion. - **Variable filtering helper:** New
filter_vars()function simplifies inclusion/exclusion of variables based on names or classes inpossible_ids()and related functions. - **Test data helper:** New
make_test_data()function provides standardized test datasets to improve test maintainability.
Improvements
- **Zero-row input handling:**
check_xy()now detects and reports when input tables have zero rows (previously would silently proceed). - **Enhanced
byexpression support:** Improved handling ofbyexpressions (e.g.,"x == y"). Temporary keys are now created only when necessary, and original column names are preserved when possible, reducing unnecessary data.table modifications. - **CI/CD updates:** GitHub Actions workflow upgraded from
upload-artifact@v3tov4for better compatibility.
Show all changes in 0.3.0Hide the rest of the changes in 0.3.0
- **Dependencies:** Added
gluepackage to Imports for improved string interpolation in messages.
Bug Fixes
- **Test suite improvements:** Rewrote and expanded test coverage in
test-checks.Rto use helper data and explicit expectations. Added error tests for unsupportedbyvariable types and formats. - **Documentation updates:** Added complete documentation for
check_var_class(),filter_vars(), and other internal helpers. Updatedman/possible_ids.Rdto reflect new default parameter values. - **Code formatting:** Minor formatting improvements throughout codebase for consistency.
From NEWS.md in the release
Install
Health
- OK13 OK2026-08-05
- NOTE12 OK, 1 NOTE2026-08-01
- OK14 OK2026-03-10
Documentation
- Help pages
- 48 (32 internal)includes a package overview page
- Examples that run
- 56%18 run in a plain check · 14 never run
- Exported functions with examples
- 100%
- Documented parameters
- 92%
- Return-value docs
- 100%
- Help pages citing references
- 0%
Downloads
Repository
- PRs merged (all time)
- 85%
- Median days to close, 50 most recently updated closed issues
- 19
- Median days to close, 50 most recently updated closed PRs
- 4
Stars over time
Forks over time
Releases over time
Issues over time
PRs over time
10 development-tooling and community-health practices detected across 5 families in the upstream repository
Checks run against github.com/randrescastaneda/joyn on 2026-10-21.
The R CMD check workflow runs on Linux, macOS and Windows, and on R-devel
GitHub Pages site last deployed 2025-12-03 · The repository has a site deploy workflow
pkgdown site last built 2025-12-03, before release 0.3.0 (2025-12-04)
Show all practicesHide 1 practice
Dependencies
Installing joyn adds 7 packages (6 with compiled code, 10 MB of source tarballs). Heaviest: data.table 5.7 MB, Rcpp 1.8 MB, collapse 1.4 MB.
Code & Tests
People & History
Pick two releases to compare their code metrics.
- RR 4.6.0 released · 2026-04-24
- 0.3.0Latest
- RR 4.5.0 released · 2025-04-11
- 0.2.42024-12-14 · diff ↗
- 0.2.32024-08-21 · diff ↗
- 0.2.2
- RR 4.4.0 released · 2024-04-24
- 0.2.02024-03-30 · diff ↗ ·
added 11 exports
full_join, get_joyn_options, inner_join, is_balanced, joyn, joyn_msg, joyn_report, left_join, rename_to_valid, right_join, set_joyn_options - RR 4.3.0 released · 2023-04-21
- RR 4.2.0 released · 2022-04-22
- 0.1.4
- RR 4.1.0 released · 2021-05-18
- 0.1.32021-04-28 · diff ↗ ·
added 11 exports
freq_table, is_id, possible_ids, x1, x2, x3, x4, y1, y2, y3, y4 - 0.0.12021-04-02
- RR 4.0.0 released · 2020-04-24
Package metadata
- First published
- 2021-04-02
- Total releases
- 8 / 5 yrs
- License
- MIT + file LICENSE OSI
- Minimum R
- ≥ 4.2.0
- Download size
- 508 KB
Cite
Cite this package
Run in R for the authors' preferred citation:
citation("joyn")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-23, which the citation names so these numbers can be found later. More on citing and the projects behind them.