stan-dev / stan-dev/rstan

Bioconductor banocc package - rstan error in Windows

Open
#983 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
R
Stars
1.1k
Forks
266
Avg merge
2h 56m
Merged PRs (30d)
1

Description

Summary:

Encountering rstan error in Bioconductor build of package 'banocc' in the Bioconductor Windows Platform

Description:

Hi Stan devs. I maintain the banocc package on Bioconductor which depends on rstan. My package started failing a check on their Windows server riesling1 recently, and it seems to be related to when the model gets compiled when building the vignette (line 138). The banocc package hasn't changed recently (and successfully passed all of Bioc's checks in the past), so our best guess is that some rstan dependency got updated on their system in a way that causes the check to fail. We encountered the RMU bug when trying to replicate the issue on our own Windows system but we're not sure if that's related (though riesling1 does indeed have withr 2.4.3). Does anyone have ideas on how to solve this issue?

Reproducible Steps:

You can see the error in https://www.bioconductor.org/checkResults/3.15/bioc-LATEST/banocc/riesling1-buildsrc.html

SUMMARY:
Package: banocc
Version: 1.19.0
Command: chmod a+r banocc -R && D:\biocbuild\bbs-3.15-bioc\R\bin\R.exe CMD build --keep-empty-dirs --no-resave-data banocc
StartedAt: 2021-12-20 16:25:13 -0500 (Mon, 20 Dec 2021)
EndedAt: 2021-12-20 16:26:12 -0500 (Mon, 20 Dec 2021)
EllapsedTime: 58.6 seconds
RetCode: 1
Status: ERROR
PackageFile: None
PackageFileSize: NA

DETAILS:

##############################################################################
##############################################################################

Running command:
chmod a+r banocc -R && D:\biocbuild\bbs-3.15-bioc\R\bin\R.exe CMD build --keep-empty-dirs --no-resave-data banocc

##############################################################################
##############################################################################

  • checking for file 'banocc/DESCRIPTION' ... OK
  • preparing 'banocc':
  • checking DESCRIPTION meta-information ... OK
  • installing the package to build vignettes
  • creating vignettes ... ERROR
    --- re-building 'banocc-vignette.Rmd' using rmarkdown
    DIAGNOSTIC(S) FROM PARSER:
    Info: integer division implicitly rounds to integer. Found int division: P * P - 1 / 2
    Positive values rounded down, negative values rounded up or down in platform-dependent way.

make cmd is
make -f "D:/biocbuild/bbs-3.15-bioc/R/etc/x64/Makeconf" -f "D:/biocbuild/bbs-3.15-bioc/R/share/make/winshlib.mk" CXX='$(CXX14) $(CXX14STD)' CXXFLAGS='$(CXX14FLAGS)' CXXPICFLAGS='$(CXX14PICFLAGS)' SHLIB_LDFLAGS='$(SHLIB_CXX14LDFLAGS)' SHLIB_LD='$(SHLIB_CXX14LD)' SHLIB="file40e840152fe5.dll" WIN=64 TCLBIN=64 OBJECTS="file40e840152fe5.o"

make would use
if test "zfile40e840152fe5.o" != "z"; then
if test -e "file40e840152fe5-win.def"; then
echo "C:/rtools40/mingw64/bin/"g++ -shared -s -static-libgcc -o file40e840152fe5.dll file40e840152fe5-win.def file40e840152fe5.o -L"C:/extsoft/lib/x64" -L"C:/extsoft/lib" -L"D:/biocbuild/bbs-3.15-bioc/R/bin/x64" -lR ;
"C:/rtools40/mingw64/bin/"g++ -shared -s -static-libgcc -o file40e840152fe5.dll file40e840152fe5-win.def file40e840152fe5.o -L"C:/extsoft/lib/x64" -L"C:/extsoft/lib" -L"D:/biocbuild/bbs-3.15-bioc/R/bin/x64" -lR ;
else
echo EXPORTS > tmp.def;
"C:/rtools40/mingw64/bin/"nm file40e840152fe5.o | sed -n 's/^.* [BCDRT] / /p' | sed -e '/[.]refptr[.]/d' -e '/[.]weak[.]/d' | sed 's/[^ ][^ ]*/"&"/g' >> tmp.def;
echo "C:/rtools40/mingw64/bin/"g++ -shared -s -static-libgcc -o file40e840152fe5.dll tmp.def file40e840152fe5.o -L"C:/extsoft/lib/x64" -L"C:/extsoft/lib" -L"D:/biocbuild/bbs-3.15-bioc/R/bin/x64" -lR ;
"C:/rtools40/mingw64/bin/"g++ -shared -s -static-libgcc -o file40e840152fe5.dll tmp.def file40e840152fe5.o -L"C:/extsoft/lib/x64" -L"C:/extsoft/lib" -L"D:/biocbuild/bbs-3.15-bioc/R/bin/x64" -lR ;
rm -f tmp.def;
fi
fi
Quitting from lines 138-142 (banocc-vignette.Rmd)
Quitting from lines 138-142 (banocc-vignette.Rmd)
Error: processing vignette 'banocc-vignette.Rmd' failed with diagnostics:
invalid connection
--- failed re-building 'banocc-vignette.Rmd'

SUMMARY: processing the following file failed:
'banocc-vignette.Rmd'

Error: Vignette re-building failed.
Execution halted

Expected Output:

If applicable, the output you expected from RStan.

RStan Version:

The version of RStan you are running (e.g., from packageVersion("rstan"))
I think they are running 2.4.3

R Version:

The version of R you are running (e.g., from R.version.string)

Operating System:

Windows at the Bioconductor riesling1 server

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the Bioconductor riesling1 build log and the banocc-vignette.Rmd section at lines 138-142, where the Windows vignette rebuild fails. Reproduce the rstan compilation on the stated Windows environment and compare the parser diagnostics, make command, and invalid-connection error. Done means identifying a reproducible cause and confirming a resolution for the vignette build.

Written by the indexing model from the issue text.

Assessment

Tech stack
r
Domain
build-system
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.