Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[R-package] [ci] Added Windows CI for R package #6

Closed
wants to merge 64 commits into from

Conversation

jameslamb
Copy link
Owner

@jameslamb jameslamb commented Mar 22, 2020

This PR adds CI support for the R package on Windows. It also bumps up the version of R we test against from 3.6.1 to 3.6.3.

As of this PR, the following R CMD check NOTES remain on Windows:

note-1

* checking package dependencies ... NOTE
Packages suggested but not available for checking:
  'ggplot2', 'knitr', 'rmarkdown'

note-2

* checking installed package size ... NOTE
  installed size is  6.9Mb
  sub-directories of 1Mb or more:
    libs   6.3Mb

note-3

* checking compiled code ... NOTE
File 'lightgbm/libs/x64/lib_lightgbm.dll':
  Found no calls to: 'R_registerRoutines', 'R_useDynamicSymbols'

It is good practice to register native routines and to disable symbol
search.

note-4

* checking compiled code ... NOTE
Note: information on .o files for x64 is not available
File 'C:/projects/lightgbm/lightgbm.Rcheck/lightgbm/libs/x64/lib_lightgbm.dll':
  Found 'abort', possibly from 'abort' (C), 'runtime' (Fortran)
Compiled code should not call entry points which might terminate R nor
write to stdout/stderr instead of to the console, nor use Fortran I/O
nor system RNGs. The detected symbols are linked into the code but
might come from libraries and not actually be called.
  • note-1: not relevant for us, won't actually show up on CRAN and we shouldn't incur the extra time to install those packages. CRAN will have all Suggests dependencies available.
  • note-2: only showing up on Windows. Probably some build files not caught by .Rbuildignore. Can be addressed in a follow-up PR.
  • note-3: addressed by [R-package] adding routine registration in R package (fixes #1910) microsoft/LightGBM#2911
  • note-4: Can be addressed in a follow-up PR.

@jameslamb
Copy link
Owner Author

seeing this:

* checking package namespace information ... OK
* checking package dependencies ... ERROR
Packages suggested but not available: 'ggplot2', 'knitr', 'rmarkdown'
The suggested packages are required for a complete check.
Checking can be attempted without them by setting the environment
variable _R_CHECK_FORCE_SUGGESTS_ to a false value.
See section 'The DESCRIPTION file' in the 'Writing R Extensions'
manual.
* DONE
Status: 1 ERROR, 1 NOTE
See
  'C:/projects/lightgbm/lightgbm.Rcheck/00check.log'
for details.
Command exited with code -1

Seems like that check is stricter on Windows than on Linux

@jameslamb
Copy link
Owner Author

Things that I see on Appveyor so far:

* checking whether package 'lightgbm' can be installed ... WARNING
Found the following significant warnings:
  Warning: package 'R6' was built under R version 3.6.3
See 'C:/projects/lightgbm/lightgbm.Rcheck/00install.out' for details.
* checking installed package size ... NOTE
  installed size is  6.9Mb
  sub-directories of 1Mb or more:
    libs   6.3Mb

@jameslamb
Copy link
Owner Author

@jameslamb
Copy link
Owner Author

@jameslamb
Copy link
Owner Author

jameslamb commented Mar 23, 2020

how to remove one item from PATH: https://stackoverflow.com/a/39141462/3986677

to deal with this thing I see on appveyor

* looking to see if a 'data/datalist' file should be added
* building 'lightgbm_2.3.2.tar.gz'
* installing to library 'C:/RLibrary'
* installing *source* package 'lightgbm' ...
** using staged installation
** libs
installing via 'install.libs.R' to C:/RLibrary/00LOCK-lightgbm/00new/lightgbm
CMake Error at C:/Program Files (x86)/CMake/share/cmake-3.16/Modules/CMakeMinGWFindMake.cmake:12 (message):
  sh.exe was found in your PATH, here:
  C:/RLibrary/Rtools/bin/sh.exe
  For MinGW make to work correctly sh.exe must NOT be in your path.
  Run cmake from a shell that does not have sh.exe in your PATH.
  If you want to use a UNIX shell, then use MSYS Makefiles.
Call Stack (most recent call first):
  CMakeLists.txt:7 (PROJECT)
CMake Error: CMAKE_C_COMPILER not set, after EnableLanguage
CMake Error: CMAKE_CXX_COMPILER not set, after EnableLanguage
-- Configuring incomplete, errors occurred!
-- The C compiler identification is GNU 8.1.0
-- The CXX compiler identification is GNU 8.1.0

@jameslamb jameslamb force-pushed the ci/r-windows-ci branch 5 times, most recently from f911585 to 45adca9 Compare March 31, 2020 03:01
@jameslamb jameslamb closed this Apr 4, 2020
@github-actions
Copy link

This pull request has been automatically locked since there has not been any recent activity since it was closed. To start a new related discussion, open a new issue at https://github.com/microsoft/LightGBM/issues including a reference to this.

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Aug 30, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants