Skip to content

Fix 0.5.0 release blockers from the release review - #64

Merged
DougManuel merged 3 commits into
devfrom
v05-release-fixes
Sep 27, 2026
Merged

DougManuel merged 3 commits into
devfrom
v05-release-fixes

Conversation

@DougManuel

Copy link
Copy Markdown
Collaborator

Summary

Fixes from an external review of the release candidate (PR #63 at c69d626). The review recommended holding the release for two blockers and three smaller items. Each finding was reproduced before it was fixed; each fix is test-first where it changes behaviour.

1. Formula variables silently wrong on the legacy path (blocker). When any variable forces the legacy generator (an unsupported feature such as a lognormal distribution, validate = FALSE, or the other legacy triggers), the legacy generator ignored mockFormula. Reproduced with default validation on: z = x * 2 matched on 0 of 200 rows; with DerivedVar:: notation z vanished. create_mock_data() now stops and names the formula variables, mirroring the survival guard (ADR D10). The check runs before the legacy derived-variable exclusion, which would otherwise hide DerivedVar:: rows, and scopes mockFormula to the requested databaseStart the way the v0.4 adapter does. Test: the legacy generator stops on formula metadata instead of generating wrong values, which was RED on all three legacy routes and keeps a v0.4-path control. (fe4a739)

2. GitHub installs had no help pages (blocker). .gitignore excluded man/*.Rd, so the repository held no Rd files, and a fresh install reported no help for any function. CI hid it by running roxygen2 first. The 61 Rd files are now tracked. Verified by cloning this branch, building, installing into an empty library: 62 help topics, including create_mock_data, mock_spec_survival and generate_survival_dates. (a2d8225)

3. Smaller items (b803718):

Verification (local, R 4.4.2, macOS 27.0)

  • Full suite: FAIL 0 | ERROR 0 | WARN 35 | SKIP 3 | PASS 949 (+5 expectations)
  • Fresh install from a clone of this branch: help pages present (above)
  • R CMD check --as-cran and pkgdown: running; results to follow in a comment

After this merges into dev, release PR #63 picks it up; rerun its checks before merging and tagging.

🤖 Generated with Claude Code

Found in the 0.5.0 release review. When any variable forces the legacy
path (an unsupported feature, validate = FALSE, and the other legacy
triggers), the legacy generator ignored mockFormula: z = x * 2 came back as
unrelated random values (0 of 200 rows matched), or vanished entirely with
DerivedVar:: notation, with default validation on. create_mock_data() now
stops and names the formula variables, mirroring the survival guard (ADR
v05-survival-dates D10). The check runs before the legacy derived-variable
exclusion, which would otherwise hide DerivedVar:: rows, and scopes
mockFormula to the requested databaseStart the same way the v0.4 adapter
does. Both guards share one description of when the legacy path is used.
)

height's high-garbage range had an infinite upper bound, (2.1;inf], so
sampling produced NaN in the packaged example's default output. The range
is now (2.1;2.5] (one cell, changed through read.csv/write.csv), and a
contract test pins that the example produces no NaN. Closes #60.

README: the minimal-example output showed three columns from the legacy
path; it is regenerated by running the code (five representative columns,
with a note on the missing codes it shows). The two other README outputs
were regenerated too and still match. Closes #49.

NEWS: the fixture-corrections entry no longer says survival dates stay off
the v0.4 pipeline, and mentions the height range; a Breaking changes entry
records the new formula legacy guard.
Found in the 0.5.0 release review. .gitignore excluded man/*.Rd, so the
repository held no Rd files: installing from GitHub gave "No man pages
found" and no help for any function, including create_mock_data() and
mock_spec_survival(). CI hid this because it runs roxygen2 before checking.
The 61 generated Rd files are now tracked, as is usual for R packages;
regenerate them with devtools::document() when roxygen comments change.
Copilot AI lite review requested due to automatic review settings September 27, 2026 13:31

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@DougManuel
DougManuel merged commit f8d012a into dev Sep 27, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants