Releases: keaven/gsDesign
gsDesign 3.8.0
New features
gsBoundSummary()now displays calendar time forgsNBobjects from the gsDesignNB package when analysis times are provided (@keaven, #229, #233).
Improvements
plotgsPower()now useslinewidthinstead of deprecatedsizeaesthetic forgeom_line()calls, avoiding ggplot2 (>= 3.4.0) warnings (@nanxstats, #217).
Bug fixes
sfXG3()now correctly reports its name as "Xi-Gallo, method 3" instead of "Xi-Gallo, method 1" (@DMuriuki, #223).- Fixed base plotting for conditional power (
plottype = 4) so labels passed totext()match the plotted points. This prevents r-devel (R 4.6.0) truncation warnings and keeps vdiffr snapshots bitwise reproducible across R versions (@nanxstats, #231).
Testing
- Added independent unit tests for
sfXG1(),sfXG2(), andsfXG3()(@DMuriuki, #223). - Added independent unit tests for
toBinomialExact()andxtable()(@DMuriuki, #224). - Updated
as_gt()snapshot tests for gt 1.1.0 compatibility (@nanxstats, #221). - Snapshot files are now included in the built package to satisfy testthat (>= 3.3.0) requirements (@jdblischak, #227).
- Reduced visual regression test output verbosity by wrapping base graphics plotting expressions in
capture.output()(@nanxstats, #217).
Documentation
nNormal()now links tovignette("nNormal")in its See Also section for the full derivation and examples (@keaven, #220).
Maintenance
- Added
workflow_dispatchtrigger toR CMD checkworkflow for easier testing on forks (@jdblischak, #225).
gsDesign 3.7.0
Breaking changes
-
hGraph()has been formally removed from gsDesign (@nanxstats, #215). It was soft-deprecated in gsDesign 3.4.0 and moved to gMCPLite. UsegMCPLite::hGraph()instead.This change also preemptively fixes an
R CMD checkissue with ggplot2 (>= 4.0.0) that would otherwise require declaring MASS as an explicit dependency (tidyverse/ggplot2#6578).
Testing
gsDesign 3.6.9
Documentation
- Added new vignette
vignette("binomialTwoSample")for binomial two-arm trial design and analysis (@keaven, #202). Covers superiority, non-inferiority, and super-superiority designs using risk-difference methods. Includes sample size calculations, power analysis, and protocol wording with both asymptotic approximations and simulation approaches.
New features
- New function
binomialPowerTable()generates power tables across control rates and treatment effects. Supports both analytical calculations and fast simulation for exact results.
gsDesign 3.6.8
Bug fixes
gsBoundSummary()(as updated in gsDesign 3.6.6) did not consider spending time for alternate alpha levels when thealphaargument was specified. This issue has been resolved;lsTimeandusTimeare now correctly used for updated bounds with these alternate alpha levels (@keaven, #203).
Testing
Documentation
- Switched the pkgdown math renderer from KaTeX to MathJaX for improved compatibility, as the MathJaX support was improved in pkgdown 2.1.2 (@nanxstats, #200).
- Added Research Organization Registry (ROR) ID to
DESCRIPTION(@jdblischak, #201).
gsDesign 3.6.7
Improvements
- All plots in vignettes are now generated by the native SVG device for sharper appearance and fewer package dependencies (@nanxstats, #188).
Testing
gsDesign 3.6.6
New features
gsBoundSummary()gains a new argumentalphato assemble a summary table with multiple efficacy boundaries (@keaven, #183).
Testing
- Add essential unit tests for
gsSurvCalendar()(@keaven, #178). - Refactor graphical tests with
vdiffr::expect_doppelganger()(@nanxstats, #176). - Use
CODECOV_TOKENto fix code coverage uploads (@jdblischak, #179).
Documentation
- Add more details to the parameter
rfor controlling numerical integration grid points (@nanxstats, #181).
gsDesign 3.6.5
Improvements
-
toInteger()(introduced in gsDesign 3.5.0) is updated to match broader, non-gsDesign conventions for deriving integer sample size and event counts (@keaven, #172).This update may result in different outputs compared to previous versions. Users who use this function should review the updated function documentation (
?toInteger) andvignette("toInteger")for details.
Testing
Documentation
- Add the
cphrole to theAuthors@Rfield following best practices (@nanxstats, #166).
gsDesign 3.6.4
Improvements
We have made the spending function summary output more readable and informative.
- Text summaries for spending functions with multiple parameters are now properly formatted. For instance,
a b = 0.5 1.5is now displayed asa = 0.5, b = 1.5(@jdblischak, #162). - The
summary()method forsfLDOF()no longer includes the redundantnone = 1in its output (@jdblischak, #159).
Documentation
- Added a note about using a positive scalar for
sfuparinsfLDOF()to create a generalized O'Brien-Fleming spending function (@keaven, 52cc711, 99996b). - Improved math rendering in our pkgdown site vignettes by switching to KaTeX, which is now supported in pkgdown 2.1.0 (@nanxstats, #161).
- Standardized vignette titles and headings by using h2 as the base level and adopting sentence case throughout (@nanxstats, #158).
gsDesign 3.6.3
New features
- Implemented conditional error spending functions
sfXG1(),sfXG2(), andsfXG3()based on Xi and Gallo (2019). Seevignette("ConditionalErrorSpending")for details and reproduced examples from the literature (@keaven, #147. Thanks, @xidongdxi, for comments on vignette).
Improvements
Testing
- Added independent testing for
gsSurvCalendar()(@myeongjong, #144). - Expanded test coverage for
gsBinomialExact()(@menglu2, #143).
gsDesign 3.6.2
Documentation
- Add new vignette on conditional power and conditional error, see
vignette("ConditionalPowerPlot")
(beb2957, 727fe20, 57394fe). - Fix roxygen2 warning and use magrittr pipes in vignette for consistency (#131).
Testing
- Move independently programmed functions for validation as standard test helper files (#130).