Re: [R-pkg-devel] Getting a package ready for CRAN - some questions

2016-06-01 Thread Henrik Bengtsson
If it's not feasible to create a fast vignette or to avoid downloading
files, an alternative is to pre-generate the vignette and include it
as a static PDF/HTML vignette, cf.
https://cran.r-project.org/package=R.rsp.  If it's a LaTeX-based
vignette (e.g. Sweave/knitr), you could pre-generate the LaTeX
document and any figures and the use a plain-LaTeX vignette to include
it in the package (also supported by the R.rsp package).  For
reproducibility, I would include the root/source vignette in the
package as well, e.g. in inst/full-vignettes/ with instructions and/or
a function on how to rebuild it.

I second Hadley's recommendation on adjusting it such that you don't
depend on deprecated/archived CRAN packages (unless there is a plan
for that package to reappear on CRAN any time soon).


Berry, it sounds like you're caching computational expensive results
on file such that succeeding runs will load the cached results instead
of redoing them from scratch each time.  This sounds like a perfectly
fine solution to me.  To me it would be fine to also include that
cached file in the package itself (e.g. inst/cache/) so that it is
picked up also the first time the vignette is built.  You can make it
conditional on a system environment variable such that it is possible
to build it completely from scratch, e.g.

if (Sys.getenv("_R_VIGNETTE_FULL_") != "TRUE") {
  # Load cached data here
}

Some may argue that you're package is not fully tested this way, but
that depends on how well your package tests/ are written.  I tend to
look at examples() and vignettes as demos, and tests/ as actually
tests.  All should of course pass R CMD check and run, but the tests/
are what really test the package.

/Henrik

On Wed, Jun 1, 2016 at 2:01 AM, Berry Boessenkool
<berryboessenk...@hotmail.com> wrote:
>
> Regarding data in vignettes:
>
> In one of my vignettes I have a simulation that takes too much computing time.
> The code is excluded from being executed when building the vignette, but if 
> it's run manually, it saves the result as an Rdata file (in the folder 
> "vignettes").
> The next (executed) block of code then loads this small file and visualizes 
> it.
> https://cran.r-project.org/web/packages/extremeStat/vignettes/extremeStat.html#truncation-effect
>
> I'm absolutely NOT sure if this is good practice, but it worked well for me...
>
> Berry
>
> PS: If I'm doing stupid stuff, feel free to tell me...
>
>
>
>
>> From: h.wick...@gmail.com
>> Date: Tue, 31 May 2016 13:21:42 -0400
>> To: roy.mendelss...@noaa.gov
>> CC: r-package-devel@r-project.org
>> Subject: Re: [R-pkg-devel] Getting a package ready for CRAN - some questions
>>
>> On Mon, May 30, 2016 at 7:10 PM, Roy Mendelssohn - NOAA Federal
>> <roy.mendelss...@noaa.gov> wrote:
>> > Hi All:
>> >
>> > I am in the midst of some minor revisions to my xtractomatic package, 
>> > which up till now has only been on github.  Since ncdf4 for Windows is now 
>> > available from CRAN  (and many thanks to whomever is responsible for that) 
>> > I thought I would try to get it into CRAN.  Some questions:
>> >
>> > 1.  The vignette uses a lot of packages that the main code does not - I 
>> > put those in the DESCRIPTION file, under  “Suggests”, is this correct?
>>
>> Yes.
>>
>> > 2. The vignette uses ggfortify, which was in CRAN for 3.2.x, but is not in 
>> > CRAN for 3.3.x.  Do I assume then that a submission will fail, or will the 
>> > submission work but just without the vignette?  Or can I include in the 
>> > vignette the command to install from github  (using devtools), and then 
>> > that will build?
>>
>> You definitely do not want to install packages when running a vignette.
>>
>> Given that ggfortify has been archived
>> (https://cran.r-project.org/web/packages/ggfortify/index.html), I'd
>> recommend using a different package (maybe broom?).
>>
>> > 3. On a remote build, my vignette is likely to fail to build.  That is 
>> > because the vignette downloads a large amount of data in many requests, 
>> > and if for any reason any one of the downloads fail or times out, the 
>> > vignette build will fail.  As above, will this cause the entire submission 
>> > to fail, or just the vignette to fail?  And is there anyway to provide a 
>> > pre-built vignette in the submission?
>>
>> You shouldn't be downloading data in a vignette. Can you make a
>> separate data package that just bundles the data?
>>
>> Hadley
>>
>> --
>> http://hadley.nz
>>
>> __
>> R-package-devel@r-project.org mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-package-devel
>
> [[alternative HTML version deleted]]
>
>
> __
> R-package-devel@r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-package-devel

__
R-package-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-package-devel

Re: [R-pkg-devel] Getting a package ready for CRAN - some questions

2016-05-31 Thread Hadley Wickham
On Mon, May 30, 2016 at 7:10 PM, Roy Mendelssohn - NOAA Federal
 wrote:
> Hi All:
>
> I am in the midst of some minor revisions to my xtractomatic package, which 
> up till now has only been on github.  Since ncdf4 for Windows is now 
> available from CRAN  (and many thanks to whomever is responsible for that) I 
> thought I would try to get it into CRAN.  Some questions:
>
> 1.  The vignette uses a lot of packages that the main code does not - I put 
> those in the DESCRIPTION file, under  “Suggests”, is this correct?

Yes.

> 2. The vignette uses ggfortify, which was in CRAN for 3.2.x, but is not in 
> CRAN for 3.3.x.  Do I assume then that a submission will fail, or will the 
> submission work but just without the vignette?  Or can I include in the 
> vignette the command to install from github  (using devtools), and then that 
> will build?

You definitely do not want to install packages when running a vignette.

Given that ggfortify has been archived
(https://cran.r-project.org/web/packages/ggfortify/index.html), I'd
recommend using a different package (maybe broom?).

> 3. On a remote build, my vignette is likely to fail to build.  That is 
> because the vignette downloads a large amount of data in many requests, and 
> if for any reason any one of the downloads fail or times out, the vignette 
> build will fail.  As above, will this cause the entire submission to fail, or 
> just the vignette to fail?  And is there anyway to provide a pre-built 
> vignette in the submission?

You shouldn't be downloading data in a vignette. Can you make a
separate data package that just bundles the data?

Hadley

-- 
http://hadley.nz

__
R-package-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-package-devel

[R-pkg-devel] Getting a package ready for CRAN - some questions

2016-05-31 Thread Roy Mendelssohn - NOAA Federal
Hi All:

I am in the midst of some minor revisions to my xtractomatic package, which up 
till now has only been on github.  Since ncdf4 for Windows is now available 
from CRAN  (and many thanks to whomever is responsible for that) I thought I 
would try to get it into CRAN.  Some questions:

1.  The vignette uses a lot of packages that the main code does not - I put 
those in the DESCRIPTION file, under  “Suggests”, is this correct?

2. The vignette uses ggfortify, which was in CRAN for 3.2.x, but is not in CRAN 
for 3.3.x.  Do I assume then that a submission will fail, or will the 
submission work but just without the vignette?  Or can I include in the 
vignette the command to install from github  (using devtools), and then that 
will build?

3. On a remote build, my vignette is likely to fail to build.  That is because 
the vignette downloads a large amount of data in many requests, and if for any 
reason any one of the downloads fail or times out, the vignette build will 
fail.  As above, will this cause the entire submission to fail, or just the 
vignette to fail?  And is there anyway to provide a pre-built vignette in the 
submission?

I am asking all of this so I am certain of the answers.  I know the CRAN team 
does a lot of work, and the more I can be certain that my submission will work 
the easier it will be for everybody.

Thanks,

-Roy



**
"The contents of this message do not reflect any position of the U.S. 
Government or NOAA."
**
Roy Mendelssohn
Supervisory Operations Research Analyst
NOAA/NMFS
Environmental Research Division
Southwest Fisheries Science Center
***Note new address and phone***
110 Shaffer Road
Santa Cruz, CA 95060
Phone: (831)-420-3666
Fax: (831) 420-3980
e-mail: roy.mendelss...@noaa.gov www: http://www.pfeg.noaa.gov/

"Old age and treachery will overcome youth and skill."
"From those who have been given much, much will be expected" 
"the arc of the moral universe is long, but it bends toward justice" -MLK Jr.

__
R-package-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-package-devel