← Back to home
Comparison · Infra & APIs

checkhelper vs surveytidy

A side-by-side editorial comparison of checkhelper and surveytidy — release velocity, themes, recent moves, and the top alternatives to consider.

Shared themes:r-packages

checkhelper vs surveytidy: at a glance

Featurecheckhelpersurveytidy
SectorInfra & APIsInfra & APIs
Velocity score2.50.0
Sparks · 30d00
Top themesr-packages, cran-compliance, static-analysis, developer-toolssurvey-statistics, tidyverse, dplyr-verbs, metadata-tracking
Last editorial update1h ago48m ago
WebsiteVisit →Visit →

What is checkhelper?

checkhelper grew from a check wrapper into a CRAN pre-submission auditor.

1.0.0 added a whole audit_* family — audit_downloads(), audit_description(), audit_dontrun() and audit_citation() — each parsing package source statically and returning a tibble of hits paired with a suggested fix. The package is now defending that position: 1.0.1 rc1 is a submission candidate answering a CRAN archival notice, after roxygen2 8.x moved DESCRIPTION's RoxygenNote field and broke a find_missing_tags() test fixture.

Read the full checkhelper trajectory →

What is surveytidy?

surveytidy taught every dplyr verb to operate on a whole collection of surveys at once.

surveytidy is the tidyverse-facing half of a two-package survey stack, wrapping survey design objects from surveycore so filter, mutate, select and the rest work on them while carrying variable labels, value labels and a transformation log alongside the data. The May release extended that verb surface to survey_collection, the abstraction surveycore uses to hold several surveys as one object, so a pipeline written once dispatches across every member.

Read the full surveytidy trajectory →

checkhelper vs surveytidy: editorial side-by-side

C
checkhelper
INFRA · APIS
2.5

checkhelper grew from a check wrapper into a CRAN pre-submission auditor.

◆ Current state

1.0.0 added a whole audit_* family — audit_downloads(), audit_description(), audit_dontrun() and audit_citation() — each parsing package source statically and returning a tibble of hits paired with a suggested fix. The package is now defending that position: 1.0.1 rc1 is a submission candidate answering a CRAN archival notice, after roxygen2 8.x moved DESCRIPTION's RoxygenNote field and broke a find_missing_tags() test fixture.

◆ Where it's heading

The design commitment is static analysis — AST walks via getParseData(), line-by-line Rd reading, no eval() and no namespace loading — so the tool can report on a package it never runs. That commitment is what made the roxygen2 8.x break survivable: the audit pipeline itself was verified correct under 8.1.0 and only the test scaffolding had to go, now guarded by a dedicated regression test. fix_globals(write = TRUE) is being sanded down in parallel, no longer flattening per-function grouping comments or writing a degenerate empty globalVariables() shell.

◆ Prediction

The immediate move is the 1.0.1 submission itself, clearing the archival notice. Beyond that, each additional CRAN incoming-check rule remains a candidate for another audit_* function; the open question these notes still leave is whether the family ever gets a single combined entry point.

S
surveytidy
INFRA · APIS
0.0

surveytidy taught every dplyr verb to operate on a whole collection of surveys at once.

◆ Current state

surveytidy is the tidyverse-facing half of a two-package survey stack, wrapping survey design objects from surveycore so filter, mutate, select and the rest work on them while carrying variable labels, value labels and a transformation log alongside the data. The May release extended that verb surface to survey_collection, the abstraction surveycore uses to hold several surveys as one object, so a pipeline written once dispatches across every member.

◆ Where it's heading

The package is being built in two layers that arrive in order: vector-level transformations first, structural dispatch second. The make_* family in 0.4.0 handles the recoding that survey work actually consists of — labelled to factor, multi-level to dichotomous, scale reversal, valence flipping — with value labels propagating automatically. Collection support then applies data-masking, tidyselect, grouping, slicing and collapsing verbs per survey, with joins explicitly refused and a typed message reporting which surveys were skipped. Metadata fidelity is the recurring bug source: labels surviving across(), stale labels left behind by recoding, the transformation log keeping up with what the verbs did.

◆ Prediction

Joins are the one verb family that errors on collections, with users directed to join before constructing the collection, so that restriction is the clearest outstanding gap. The re-export of surveycore's collection constructors suggests the package is positioning itself as the single import users need, which points toward more re-exports as surveycore's stable API settles.

Alternatives to checkhelper and surveytidy

Other Infra & APIs products tracked by Sparkpulse, ranked by recent ship velocity. Each card links to a full editorial trajectory and lets you pivot into a head-to-head comparison with either checkhelper or surveytidy.

See all checkhelper alternatives → · See all surveytidy alternatives →

Recent activity from checkhelper and surveytidy

Latest ship moves from both products, interleaved chronologically. ⚡ = editorial spark.

  1. 1d agocheckhelpercheckhelper 1.0.1 rc1 (CRAN submission candidate)
  2. 2mo agosurveytidymutate() syncs metadata for across() recodes
  3. 3mo agocheckhelperA static audit_* family for CRAN pre-submission checks
  4. 3mo agosurveytidydplyr and tidyr verbs dispatch across survey collections
  5. 5mo agosurveytidyFive label-aware recoding functions for use inside mutate()
  6. 2y agocheckhelperTest fixes for roxygen2 changes
  7. 3y agocheckhelpercheckhelper 0.1.0 - First CRAN Release

Frequently asked questions

What is the difference between checkhelper and surveytidy?

Both compete on the same themes — r-packages — within Infra & APIs. checkhelper is currently shipping more aggressively (velocity 2.5 vs 0.0), with 0 editorial sparks in the last 30 days against 0. See the at-a-glance table above for a side-by-side breakdown of velocity, recent sparks, and editorial themes.

Is checkhelper better than surveytidy?

Sparkpulse doesn't pick a winner — we score release velocity, not feature parity. checkhelper is currently shipping more aggressively (velocity 2.5 vs 0.0), with 0 editorial sparks in the last 30 days against 0. For your specific use case, the alternatives sections above list other Infra & APIs products to evaluate alongside.

What are the best alternatives to checkhelper?

Top checkhelper alternatives in Infra & APIs are ranked by recent ship velocity. Browse the "checkhelper alternatives" section above for the current picks, or visit /alternatives/checkhelper for the full list with editorial commentary on each.

What are the best alternatives to surveytidy?

Top surveytidy alternatives in Infra & APIs are ranked by recent ship velocity. Browse the "surveytidy alternatives" section above for the current picks, or visit /alternatives/surveytidy for the full list with editorial commentary on each.