Skip to content

Refactor/fixes - #710

Merged
timcadman merged 7 commits into
v7.0-devfrom
refactor/fixes
Oct 15, 2026
Merged

timcadman merged 7 commits into
v7.0-devfrom
refactor/fixes

Conversation

@timcadman

@timcadman timcadman commented Sep 22, 2026 •

Copy link
Copy Markdown
Contributor

Background

Fixes found in a full review of the v7.0 refactor (batches 1–10): a data leak, behaviour that changed relative to 6.3.5, and small doc and code errors.

What's changed

  • ds.asList data leak: asListDS returned the converted object to the client. It is now an assign function. It was an aggregate only to work around an old repository quirk with lists; tests confirm lists now assign correctly on Opal and Armadillo.
  • NULL objects: .loadServersideObject now errors on a NULL object ("is NULL") for every function, including ds.class, which used to return "NULL". Deliberate breaking change: NULL objects only arise from mistakes such as a typo in ds.make.
  • Class rules restored to 6.3.5 behaviour:
    • meanDS/varDS accept logical, so an all-NA column no longer breaks the call.
    • corDS/covDS accept factors again (correlated on level codes).
    • glm/glmSLMA/glmer/lmer/gamlss accept data.frame or list, not matrix, matching what the model functions accept.
    • lengthDS/dimDS accept any class.
    • meanSdGpDS accepts a numeric grouping variable.
  • Behaviour restored:
    • ds.cor/ds.cov ignore y (with a warning) when x is a matrix or data.frame.
    • ds.changeRefGroup treats a numeric ref as a level name again.
    • BooleDS accepts "TRUE"/"FALSE"/"NA" as V2.
    • levelsDS checks the privacy level first.
  • ds.mdPattern combine: pools columns by variable name, not position. md.pattern orders columns by missingness, which differs between studies, so variables could be mixed.
  • seqDS: from/to/by/length.out are converted with as.numeric instead of being looked up as object names.
  • glmChecks, ds.table: restore the user's warn option on exit. This fix was on 6.3.x but never ported to v7.

@timcadman
timcadman changed the base branch from v6.3.6-dev to v7.0-dev September 25, 2026 15:45
@timcadman
timcadman marked this pull request as ready for review October 13, 2026 14:48
@github-actions

github-actions Bot commented Oct 13, 2026 •

Copy link
Copy Markdown
⏳ 4 of 5 checks reported so far
CheckResult
Devtools checks✅ passed
Code quality✅ 0 new findings (package total: 2016)
Armadillo unit tests✅ [ FAIL 0 | WARN 0 | SKIP 27 | PASS 12397 ]
Opal unit tests✅ [ FAIL 0 | WARN 0 | SKIP 27 | PASS 11960 ]
Test coverageℹ️ no coverable lines changed (project: 68.9%)

Tested against dsBase versions:
Armadillo: 7.0.0.9000
Opal: 7.0.0.9000

Logs: Devtools checks · Code quality · Armadillo unit tests · Opal unit tests · Codecov

Comment thread R/ds.asList.R Fixed
Comment thread R/ds.table.R Fixed
Comment thread R/glmChecks.R Fixed
@codecov-commenter

codecov-commenter commented Oct 13, 2026 •

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 68.93%. Comparing base (52c57bf) to head (00b02f6).

Additional details and impacted files
@@             Coverage Diff              @@
##           v7.0-dev     #710      +/-   ##
============================================
+ Coverage     68.64%   68.93%   +0.29%     
============================================
  Files           142      142              
  Lines          5785     5788       +3     
============================================
+ Hits           3971     3990      +19     
+ Misses         1814     1798      -16     
Flag Coverage Δ
armadillo-arg 21.02% <ø> (+0.26%) ⬆️
armadillo-misc 15.65% <ø> (+<0.01%) ⬆️
armadillo-perf-1 9.29% <ø> (+0.01%) ⬆️
armadillo-perf-2 17.82% <ø> (-0.01%) ⬇️
armadillo-perf-3 16.15% <ø> (+0.06%) ⬆️
armadillo-smk-1 35.03% <ø> (+0.03%) ⬆️
armadillo-smk-2 39.72% <ø> (+0.30%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@StuartWheater StuartWheater left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  • Changes appear consistent
    • The CRAN were very particular about error/warning production and required changes around suppressing error messages. I don't think there changes will be a problem.

@timcadman
timcadman merged commit 903426d into v7.0-dev Oct 15, 2026
22 of 23 checks passed
@timcadman
timcadman deleted the refactor/fixes branch October 15, 2026 10:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

4 participants