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
During the development of #77 there were alot of waiting between commits locally because devtools::document() compiles the vendored TA-Lib, which then gets recompiled (again) during R CMD build.
This is (really) tedious, and not necessary.
📋 Possible improvement steps
Run devtools::document() conditional on changes in R/, src/ and/or man-roxygen. This could (probably) be done with git diff --exit-code (source).
Run CMake in configure conditional on built TA-Lib libraries and headers.
Note
Its unclear how 2. will behave on CRAN. A robust approach could possibly be that the conditional checks of TA-Lib are done conditional on NOT being on CRAN via environment variables.
If 2 is implemented, then 1. is redundant to some degree, because devtools::document() is fast enough by itself.
🔨 Plan of attack
The Makefile is already messy as-is. To avoid further mess, a collection of BASH scripts could be used ti achieve it.
📚 What?
During the development of #77 there were alot of waiting between commits locally because
devtools::document()compiles the vendored TA-Lib, which then gets recompiled (again) duringR CMD build.This is (really) tedious, and not necessary.
📋 Possible improvement steps
devtools::document()conditional on changes inR/,src/and/orman-roxygen. This could (probably) be done withgit diff --exit-code(source).CMakeinconfigureconditional on built TA-Lib libraries and headers.Note
Its unclear how 2. will behave on CRAN. A robust approach could possibly be that the conditional checks of TA-Lib are done conditional on NOT being on CRAN via environment variables.
If 2 is implemented, then 1. is redundant to some degree, because
devtools::document()is fast enough by itself.🔨 Plan of attack
The Makefile is already messy as-is. To avoid further mess, a collection of BASH scripts could be used ti achieve it.