Comments (10)
from rstantools.
@mlysy sorry for the delay in getting back to you. Yes, a pull request would be great! Would it be possible to make a PR that doesn't break the 1.5.0 release? That is, can you submit a PR that adds what you're proposing to the changes we made in the latest release so we don't have to, for example, immediately backtrack to using package.skeleton()
, etc? If that's possible then we would more than welcome a pull request with the vast majority of what you're proposing! Thanks for all the work you've already done on this.
from rstantools.
One question just to clarify: was your proposal to replace the current rstan_package_skeleton
with the contents of rstan_package_skeleton_plus
or to have the _plus
version as a separate function. I assume the former, right?
from rstantools.
@jgabry delighted that you are OK with me submitting a PR!
-
Yes, I did intend for
rstan_package_skeleton
to be overwritten with the current contents of_plus
. -
As for replacing the internal call to
utils::package.skeleton
by one tousethis::create_package
, I am more than happy to do so! One thing though: can I suggest that we stick more closely with the original function signature, namely:rstan_package_skeleton <- function(name, path, code_files, stan_files, ...)
I probably skipped a few args, but the reason I ask is that many people have written package.skeletons and they all require more or less the same inputs. A few examples are found in packages Rcpp, RcppEigen, RcppArmadillo, Rclusterpp, and SimInf. So I and perhaps other useRs expect these functions to work a certain way.
On the other hand, functions with a similar purpose to
package.skeleton
but with very different signatures tend to be named differently. Some examples I'm aware of areusethis::create_package
,devtools::create
andskeletor::skeletor
.Hope I'm not being too nit-picky here...let me know what you think!
from rstantools.
Great! I actually think the best option might be to offer rstan_package_skeleton (with arg names changed back like you say) and also create_rstan_package, which is the same function internally (probably one a wrapper of the other) but with a different signature. That way we cater to both crowds. What do you think?
from rstantools.
I also definitely think we should have the use_rstan function you added
from rstantools.
General comment: given that rstan_package_skeleton
is only used to create packages and not for calling within a package we have a bit more flexibility with making breaking changes if they are substantial improvements.
from rstantools.
I love it! I need to spend the next few days on my day-job but will have the PR ready shortly.
from rstantools.
Awesome. No rush!
from rstantools.
closing this now that #44 is finally merged!
from rstantools.
Related Issues (20)
- GHA failure of new standalone functions checks HOT 1
- Problem with line endings in automatically generated src/ files HOT 1
- Problems with compiling mixutre models on Windows (rstantools 2.3.0) HOT 4
- auto detect need for recompile? HOT 9
- Auto-format Stan models during rstan_config()? HOT 5
- loo_R2 gives different diagnostic than loo()
- Makevars doesn't pass CRAN checks HOT 10
- `No such symbol` error on installing package that uses rstantools HOT 8
- add posterior_epred generic
- include problem with some versions of rstantools 2.x and/or StanHeaders HOT 43
- errors if user model is called base.stan HOT 1
- Are ALL stan models recompiled when a package is updated? HOT 3
- LoadLibrary failure for Prophet on Windows HOT 11
- configure files in packages made with rstan_create_package() produces a note when running R CMD check HOT 3
- switch to github actions for CI
- don't create travis.yml
- Github actions workflow - test against rstan experimental or preview? HOT 2
- Backwards compatibility issue with model names HOT 1
- rstantools cannot find `stan/version.hpp` HOT 6
- R CMD check NOTE about Imports: RcppParallel HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from rstantools.