← Back to home
Comparison · Infra & APIs

gh vs testdat

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

gh vs testdat: at a glance

Featureghtestdat
SectorInfra & APIsInfra & APIs
Velocity score2.50.0
Sparks · 30d00
Top themesgithub-api, http-client, pagination, token-handlingdata-validation, unit-testing, testthat, tidyselect
Last editorial update5d ago1h ago
WebsiteVisit →Visit →

What is gh?

gh spent its last two releases making failures and interruptions recoverable.

The GitHub API client rebuilt on httr2 in 1.4.0, then took a security-driven breaking change in 1.5.0: response headers are no longer stored in returned objects, because they can carry sensitive information. The 1.6.0 release made interrupted pagination recoverable and downgraded personal access token format validation from an error to a warning.

Read the full gh trajectory →

What is testdat?

Unit testing for datasets, built on testthat and now bending to its next release.

testdat applies the testthat idiom to data rather than code: expectations that assert properties of a data frame, run as a suite, with results exportable to Excel. Recent releases have been about correctness and upstream compatibility. Expectations are now constructed via new_expectation() ahead of testthat 3.3.0, and expect_base() errors on a missing variable instead of silently passing.

Read the full testdat trajectory →

gh vs testdat: editorial side-by-side

G
gh
INFRA · APIS
2.5

gh spent its last two releases making failures and interruptions recoverable.

◆ Current state

The GitHub API client rebuilt on httr2 in 1.4.0, then took a security-driven breaking change in 1.5.0: response headers are no longer stored in returned objects, because they can carry sensitive information. The 1.6.0 release made interrupted pagination recoverable and downgraded personal access token format validation from an error to a warning.

◆ Where it's heading

The direction is tolerance for partial and unusual outcomes rather than new endpoint coverage. Interrupting a paginated call now raises a classed condition carrying the records already fetched; a 304 Not Modified returns an empty response with headers intact instead of erroring; an unrecognised token format warns and proceeds. A fake_github_app() built on webfakes ships for testing, and is offered to other package authors.

◆ Prediction

Token format handling is now configurable rather than fixed, so the next likely work is following GitHub's credential formats as they change, not expanding the client surface.

T
testdat
INFRA · APIS
0.0

Unit testing for datasets, built on testthat and now bending to its next release.

◆ Current state

testdat applies the testthat idiom to data rather than code: expectations that assert properties of a data frame, run as a suite, with results exportable to Excel. Recent releases have been about correctness and upstream compatibility. Expectations are now constructed via new_expectation() ahead of testthat 3.3.0, and expect_base() errors on a missing variable instead of silently passing.

◆ Where it's heading

The package reached its shape early and has spent the years since sanding it. The design decisions worth noting are all in the past: the move to tidyselect at 0.3.0, the test data pipe at 0.4.0, and the failure messages at 0.4.1 that name which variable failed rather than just reporting a count. Since then activity is sparse and reactive, tracking testthat and R-devel. The two 0.4.3 and 0.4.4 tags arriving ninety minutes apart on the same day is the signature of a release caught by an upstream deadline.

◆ Prediction

The immediate work is finishing the testthat 3.3.0 adaptation. Beyond that the notes give no evidence of new expectation families; the package looks maintained rather than developed.

Alternatives to gh and testdat

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 gh or testdat.

See all gh alternatives → · See all testdat alternatives →

Recent activity from gh and testdat

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

  1. 1mo agoghPagination progress bar reports true record counts
  2. 2mo agoghInterrupted pagination keeps its partial results
  3. 9mo agotestdatExpectations rebuilt on new_expectation() for testthat 3.3.0
  4. 9mo agotestdatexpect_base() errors on a missing variable instead of passing
  5. 1y agoghResponse headers dropped from results after a security advisory
  6. 2y agoghPagination helpers repaired and atomic file writes
  7. 2y agotestdatGrouped data frames ungrouped before testing
  8. 3y agoghClient rebuilt on httr2 with rate-limit controls
  9. 3y agoghLower-case methods and richer error conditions
  10. 3y agotestdatFailure messages name the failing variable; expect_depends() added
  11. 4y agotestdatTest data pipe lets expectations sit inline in a chain
  12. 4y agotestdatCRAN release moves variable selection to tidyselect

Frequently asked questions

What is the difference between gh and testdat?

They serve adjacent needs but don't currently overlap on shipped themes. gh 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 gh better than testdat?

Sparkpulse doesn't pick a winner — we score release velocity, not feature parity. gh 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 gh?

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

What are the best alternatives to testdat?

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