From pgilbert902 at gmail.com  Fri Sep 13 17:42:28 2013
From: pgilbert902 at gmail.com (Paul Gilbert)
Date: Fri, 13 Sep 2013 11:42:28 -0400
Subject: [Rd] declaring package dependencies
In-Reply-To: <21043.10494.783658.895362@max.nulle.part>
References: <5231C3E3.3050007@yorku.ca> <5231FBD9.6050802@gmail.com>
	<523305BB.7090802@yorku.ca> <52331857.8090904@gmail.com>
	<21043.7886.743370.944182@max.nulle.part>
	<52332351.4070001@gmail.com>
	<21043.10494.783658.895362@max.nulle.part>
Message-ID: <52333264.10602@gmail.com>



On 13-09-13 11:02 AM, Dirk Eddelbuettel wrote:
>
> On 13 September 2013 at 10:38, Duncan Murdoch wrote:
> | On 13/09/2013 10:18 AM, Dirk Eddelbuettel wrote:
> | > On 13 September 2013 at 09:51, Duncan Murdoch wrote:
> | > | Changes are generally announced in the NEWS.Rd file long before release,
> | > | but R-devel is an unreleased version, so you won't see the news until it
> | > | is there.  Announcing things that nobody can try leads to fewer useful
> | > | comments than putting them into R-devel where at least people can see
> | > | what is really happening.
> | >
> | > That comment makes sense _in theory_.
> | >
> | > Yet _in practice_ it does not as many of us have been shot down by tests in
> | > R-devel which had been implemented within a 48 hour window of the package
> | > submission.
> |
> | It sounds as though you are talking about CRAN here, not R.  I can't
> | speak for CRAN.
>
> Hah :) -- in practive you actually do as the service you built to create RSS
> summaries of R NEWS changes (ie R Core) is one good way to learn about CRAN
> changes as the CRAN folks use the R Core access to R itself (via R CMD check)
> to effect change.
>
> And yes: we all want change for the better.
>
> But we also want a more grown-up process.
>
> | > Absent a time machine or psychic powers, I do not see how package developers
> | > can reasonably be expected to cope with this.
> |
> | I'm a CRAN user as a package developer, and I do get emails about
> | changes, but I don't find them overwhelming, and I don't recall
> | receiving any that were irrational.  Generally the package is improved
> | when I follow their advice.  It has happened that I have been slower
> | than they liked in responding, but the world didn't end.
>
> Of course they improve. The long arc of history points to progress. Packages
> are better than they used to be (cf NAMESPACE discussion). Nobody disputes
> that.
>
> But what we take excpetion with is the _process_ and the matter in which
> changes are (NOT REALLY) communicated, or even announced with a windows.
>
> | I imagine Rcpp pushes the limits more than my packages do, but I think
> | most developers can cope.  After all, the number of packages on CRAN is
> | increasing, not decreasing.
>
> It's not so much Rcpp itself or my 20-ish packages but the fact that we (as
> in the Rcpp authors) now stand behind an API that also has to accomodate
> changes in R CMD check. Case in point is current (unannounced) change that
> makes all Depends: Rcpp become Imports: Rcpp because of the NAMESPACE checks.

I am a bit confused by this Dirk, so maybe I am missing something. I 
think this is still a "Note" in R-devel so you do have some time to make 
the change, at least several months, maybe more. It is not quite what I 
think of as an "announcement", more like a shot across the bow, but it 
is also not "unannounced".

More importantly, I don't think that the requirement is necessarily to 
change Depends: Rcpp to Imports: Rcpp, the requirement is to put 
imports(Rcpp) in the NAMESPACE file. I think this is so that the package 
continues to work even if the user does something with the search path. 
The decision to change Depends: Rcpp to Imports: Rcpp really depends on 
whether the package author wants Rcpp functions to be available directly 
by users without them needing to specifically attach Rcpp. They are 
available with Depends but with Imports they are just used internally in 
the package.

So, one of us is confused. Usually it is me.
Paul
>
> Yet I cannot really talk to 135 packages using Rcpp as I have CRAN Policy
> document to point to.
>
> Dirk
>



[Rd] declaring package dependencies
Paul Gilbert