Skip to content

fix: resolve BiocCheck NOTEs and add working local CI via Podman - #42

Merged
gladkia merged 8 commits into
masterfrom
fix/local-ci-and-bioc-notes
May 1, 2026
Merged

fix: resolve BiocCheck NOTEs and add working local CI via Podman#42
gladkia merged 8 commits into
masterfrom
fix/local-ci-and-bioc-notes

Conversation

@gladkia

@gladkia gladkia commented Apr 30, 2026

Copy link
Copy Markdown
Owner

Summary

  • LICENSE: replaced full MIT text with DCF stub — fixes License stub is invalid DCF NOTE
  • R/igvR.R: added MotifDb:: and seqLogo:: namespace qualifiers — fixes no visible binding NOTE
  • R/genomeSpec.R + test: updated stale S3 URL to igv.org/genomes/genomes.json (old bucket returns 403)
  • Containerfile: overhauled with layered dependency install; adds GitHub fallback for Bioc 3.23 devel repo instability; adds randomcoloR and igvShiny for complete test coverage
  • run_local_ci.R: removed hardcoded .libPaths() override that caused library(igvR) to fail in container
  • makefile: added test-podman target for headless unit tests

Test plan

  • make check-podman — 0 ERRORs, 0 WARNINGs, 0 NOTEs
  • make test-podman — all tests in test_Tracks.R and test_genomeSpec.R pass
  • Bioconductor CI builds pass

gladkia added 2 commits April 30, 2026 21:00
- LICENSE: replace full MIT text with DCF stub (required by R CHECK)
- R/igvR.R: qualify MotifDb::MotifDb and seqLogo::seqLogo to fix
  'no visible binding' NOTE
- R/genomeSpec.R, test_genomeSpec.R: update S3 URL to igv.org/genomes
  (old S3 bucket now returns 403)
- Containerfile: layered dep install with remotes+GitHub fallback for
  Bioc 3.23 devel repo instability; adds randomcoloR and igvShiny
- run_local_ci.R: remove hardcoded .libPaths() override that hid
  installed packages
- makefile: add test-podman target for headless unit tests in container

@gemini-code-assist gemini-code-assist Bot 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.

Code Review

This pull request refactors the containerized build environment by introducing a layered Containerfile with dependency fallbacks and a new local CI script. It also updates the IGV genome metadata URL, adds explicit namespace qualifiers for MotifDb and seqLogo, and simplifies the license file. Feedback identifies a typo in the makefile test target and recommends enabling dependency resolution during the local package installation in the container to ensure runtime stability.

Comment thread makefile

test-podman:
podman run --rm -v $$(pwd):/pkg -w /pkg igvr-test-env /bin/bash -c \
"for x in inst/unitTests/test_Tracks.R inst/unitTests/test_genomeSpec.R; do echo '=============='; echo \$$x; Rscript \$$x; done"

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

high

The file inst/unitTests/test_Tracks.R does not exist in the repository. Based on the existing test files, this appears to be a typo for inst/unitTests/test_igvR.R.

	  "for x in inst/unitTests/test_igvR.R inst/unitTests/test_genomeSpec.R; do echo '=============='; echo \$$x; Rscript \$$x; done"

Comment thread Containerfile Outdated
COPY . /tmp/igvR_source

# Install igvR itself (remotes respects R's full libPaths, finds BiocManager-installed deps)
RUN Rscript -e "remotes::install_local('/tmp/igvR_source', dependencies=FALSE, upgrade='never')"

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

medium

Using dependencies=FALSE when installing the local package is risky as it requires all dependencies to be manually maintained in the Containerfile. If a new dependency is added to the DESCRIPTION file, the container build will succeed but the package may fail at runtime. Consider using dependencies=TRUE to ensure all required packages are present.

RUN Rscript -e "remotes::install_local('/tmp/igvR_source', dependencies=TRUE, upgrade='never')"

@gladkia

gladkia commented Apr 30, 2026

Copy link
Copy Markdown
Owner Author

Thanks for the review. Applied fix for the dependencies=FALSE concern — changed to dependencies=TRUE, upgrade='never' in the install_local call.

Regarding test_Tracks.R: the file exists at inst/unitTests/test_Tracks.R (18KB, 10 tests passing). We explicitly excluded test_igvR.R because it calls igvR() unconditionally at top-level and tries to open a browser (xdg-open not found in headless container).

gladkia added 5 commits April 30, 2026 22:20
Adapted from igvShiny. Runs on Ubuntu/macOS/Windows against Bioc 3.22.
Windows marked continue-on-error (Rsamtools linker issues on Windows).
Cache keys updated to RELEASE_3_22-r-4.5.
- DESCRIPTION: replace Author/Maintainer with Authors@R [cre]
- UCSCBedGraphQuantitativeTrack.R: use is() instead of class() ==
- igvR.R: add @return to enableMotifLogoPopups
- CI: skip pre-existing examples and version-num BiocCheck checks
@gladkia
gladkia merged commit ad6dd7e into master May 1, 2026
6 checks passed
@gladkia
gladkia deleted the fix/local-ci-and-bioc-notes branch May 1, 2026 09:11
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.

1 participant