You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Refresh cran-comments.md and rename release checklist for v2.7.1
cran-comments.md: list every fix in this bug-fix release, document the
two non-blocking NOTEs from R CMD check --as-cran (CRAN incoming
feasibility + future file timestamps), and enumerate the test
environments hit so far (local macOS + GH Actions matrix).
release-checklist-v2.7.0.md -> release-checklist-v2.7.1.md, fully
rewritten for this release. Tracks done-vs-pending across version
metadata, NEWS, docs, validation, and the still-pending win-builder /
revdep / CI matrix steps.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
**Date:** 2026-04-27 | **Maintainer:** John Ehrlinger <john.ehrlinger@gmail.com>
3
+
4
+
---
5
+
6
+
## What Changed Since 2.7.0
7
+
8
+
Bug-fix release. See `NEWS.md` for the user-facing change log.
9
+
10
+
| Area | Fix |
11
+
|------|-----|
12
+
|`gg_partial_rfsrc.R`| Pass `partial.type = "surv"` (default) to `partial.rfsrc()` for survival forests; without it the C-level prediction routine aborted on a zero-length comparison and the survival vignette's partial-dependence chunks rendered empty. New `partial.type` argument accepts `"surv"` / `"chf"` / `"mort"`. |
13
+
|`gg_partial_rfsrc.R`| Reshape multi-`partial.time` results to long form so each `(x, time)` pair is one row (was crashing on the `time` column assignment when yhat came back as a matrix). |
14
+
|`plot.gg_partial.R`| Survival layout: predictor on x-axis, one curve per time point coloured by `Time`. Group/colour by full-precision time so distinct horizons that round to the same display value never collapse. Y-axis label adapts to `partial.type`. |
15
+
|`plot.gg_vimp.R`| Merge the duplicate "VIMP > 0" / "positive" legends by sharing a title across both `fill` and `color` aesthetics. |
16
+
|`R/ggrandomforests.news.R`| Read `NEWS.md` (the canonical change log) instead of the legacy hand-maintained `inst/NEWS`, which had silently drifted to v2.4.0 across three releases. `inst/NEWS` removed. |
17
+
|`R/calc_roc.R`, `R/plot.gg_roc.R`| Replace U+2212 Unicode minus with ASCII `-` so the PDF manual builds under standard LaTeX (CRAN's incoming pipeline). |
18
+
|`tests/testthat/test_plot_layer_data.R`| New regression suite using `ggplot2::layer_data()` to verify each `plot.gg_*()` method renders non-empty layers across all forest families; locks in the `partial.type` y-label dispatch and the merged-legend behaviour. |
19
+
20
+
---
21
+
22
+
## Pre-Release Checklist
23
+
24
+
### 1. Version & Metadata
25
+
-[x] Bump `Version:` in `DESCRIPTION` from `2.7.0.9001` → `2.7.1`
26
+
-[x] Update `Date:` in `DESCRIPTION` to `2026-04-27`
27
+
-[x] Confirm `RoxygenNote:` matches the installed roxygen2 version (`roxygen2::roxygenise()` ran clean)
28
+
29
+
### 2. NEWS.md
30
+
-[x] Add `ggRandomForests v2.7.1` section at the top of `NEWS.md`
31
+
-[x] Keep entries user-facing (each bullet says **what was wrong** and **what changed**)
32
+
33
+
### 3. Documentation
34
+
-[x]`roxygen2::roxygenise(".")` ran with zero warnings; all Rd files regenerate cleanly
35
+
-[x] Spot-checked the new `plot.gg_partial_rfsrc` and `gg_partial_rfsrc` help pages
36
+
37
+
### 4. Test Suite
38
+
-[x] Full local testthat run: 0 failures / 0 errors / 0 warnings
39
+
-[x] New `test_plot_layer_data.R` covers every `plot.gg_*()` method
40
+
-[x] New `plot.gg_vimp` legend test uses synthetic data (deterministic across CI platforms)
41
+
42
+
### 5. Validation
43
+
-[x]`R CMD check --as-cran` on macOS R 4.5.3: **0 errors | 0 warnings | 2 NOTEs** (incoming-feasibility + future-timestamps; both informational, neither actionable)
44
+
-[x]`urlchecker::url_check()`: 0 broken URLs
45
+
-[x]`spelling::spell_check_package()`: only domain-jargon items (rfsrc, VIMP, Ishwaran, etc.); no genuine typos
46
+
-[ ]`devtools::check_win_devel()` and `check_win_release()` — submit before tagging
47
+
-[ ]`revdepcheck::revdep_check()` — confirm 0 reverse deps still pass (ggRandomForests has none on CRAN, but run for completeness)
48
+
-[ ] All GitHub Actions matrix jobs green on the head commit (R-CMD-check standard / release / devel + windows + macos + lint)
49
+
50
+
### 6. CRAN comments
51
+
-[x] Update `cran-comments.md` with the actual environments tested and the disposition of NOTEs
52
+
53
+
### 7. Tag & Submit
54
+
-[ ]`git tag -a v2.7.1 -m "v2.7.1: bug-fix release"` and `git push origin v2.7.1`
55
+
-[ ] Upload tarball at https://cran.r-project.org/submit.html (or `devtools::submit_cran()`)
56
+
-[ ] Reply to CRAN's confirmation email within 24 h
57
+
58
+
### 8. After Acceptance
59
+
-[ ] Bump `DESCRIPTION` to `2.7.1.9000` and add a `v2.7.2 (in development)` placeholder at the top of `NEWS.md`
60
+
-[ ]`pkgdown` site rebuild fires automatically on tag push (existing GH Action) — verify https://ehrlinger.github.io/ggRandomForests/ shows v2.7.1 in the navbar
0 commit comments