Skip to content

Commit 976e065

Browse files
committed
fix CI
1 parent 54ea6a8 commit 976e065

2 files changed

Lines changed: 53 additions & 8 deletions

File tree

.github/workflows/pkgdown.yml

Lines changed: 24 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -141,17 +141,37 @@ jobs:
141141
run: |
142142
if (!requireNamespace("BiocManager", quietly = TRUE))
143143
install.packages("BiocManager")
144+
if (!requireNamespace("remotes", quietly = TRUE))
145+
install.packages("remotes")
146+
# smoother (destiny dependency) was archived from CRAN on
147+
# 2025-12-19, so BiocManager::install("destiny") can no longer
148+
# resolve it from PPM. Install the last archived version first.
149+
if (!requireNamespace("smoother", quietly = TRUE))
150+
remotes::install_version(
151+
"smoother", version = "1.3",
152+
repos = "https://cloud.r-project.org",
153+
upgrade = "never"
154+
)
144155
BiocManager::install(
145156
c("ComplexHeatmap", # Module 5 heatmap
146157
"slingshot", # Module 6 principal-curve pseudotime
147158
"destiny", # Module 6 diffusion pseudotime (DPT)
148159
"scater"), # Module 6 SCE helpers / plotting
149160
update = FALSE, ask = FALSE
150161
)
151-
if (!requireNamespace("remotes", quietly = TRUE))
152-
install.packages("remotes")
153-
remotes::install_github("jiadongm/PhiSpace/pkg", upgrade = "never")
154-
remotes::install_github("meiosis97/NeighbourNet", upgrade = "never")
162+
# Use pak for the GitHub installs. The remotes package (>=2.5)
163+
# errors with "can't convert package edgeR with RemoteType
164+
# 'bioconductor' to remote" when a Bioconductor-installed
165+
# transitive dependency is already on the library path; pak
166+
# resolves Bioconductor remotes correctly.
167+
if (!requireNamespace("pak", quietly = TRUE))
168+
install.packages("pak")
169+
pak::pkg_install(
170+
c("github::jiadongm/PhiSpace/pkg",
171+
"github::meiosis97/NeighbourNet"),
172+
ask = FALSE,
173+
upgrade = FALSE
174+
)
155175
shell: Rscript {0}
156176

157177
# Install local package (needed for pkgdown to build reference docs)

vignettes/00_setup.Rmd

Lines changed: 29 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -200,6 +200,22 @@ if (!pkgbuild::has_build_tools(debug = FALSE)) {
200200
if (!requireNamespace("BiocManager", quietly = TRUE)) {
201201
install.packages("BiocManager")
202202
}
203+
if (!requireNamespace("remotes", quietly = TRUE)) {
204+
install.packages("remotes")
205+
}
206+
207+
# `smoother` is a transitive dependency of `destiny` that was archived
208+
# from CRAN on 2025-12-19. BiocManager / install.packages can no longer
209+
# resolve it, so install the last archived version directly before
210+
# pulling destiny.
211+
if (!requireNamespace("smoother", quietly = TRUE)) {
212+
remotes::install_version(
213+
"smoother", version = "1.3",
214+
repos = "https://cloud.r-project.org",
215+
upgrade = "never"
216+
)
217+
}
218+
203219
BiocManager::install(
204220
c("ComplexHeatmap", # Module 5 heatmap
205221
"slingshot", # Module 6 principal-curve pseudotime
@@ -209,11 +225,20 @@ BiocManager::install(
209225
)
210226
211227
# 3. GitHub-only packages — source-only, will trigger compilation.
212-
if (!requireNamespace("remotes", quietly = TRUE)) {
213-
install.packages("remotes")
228+
# We use `pak` rather than `remotes::install_github` because newer
229+
# versions of remotes raise "can't convert package edgeR with
230+
# RemoteType 'bioconductor' to remote" when a Bioconductor-installed
231+
# package (like edgeR) is on the library path. pak handles
232+
# Bioconductor remotes correctly.
233+
if (!requireNamespace("pak", quietly = TRUE)) {
234+
install.packages("pak")
214235
}
215-
remotes::install_github("jiadongm/PhiSpace/pkg", upgrade = "never")
216-
remotes::install_github("meiosis97/NeighbourNet", upgrade = "never")
236+
pak::pkg_install(
237+
c("github::jiadongm/PhiSpace/pkg",
238+
"github::meiosis97/NeighbourNet"),
239+
ask = FALSE,
240+
upgrade = FALSE
241+
)
217242
```
218243

219244
### 3c. Verify every package loaded successfully

0 commit comments

Comments
 (0)