From roger at ysidro.econ.uiuc.edu  Wed Aug 27 14:50:21 2003
From: roger at ysidro.econ.uiuc.edu (Roger Koenker)
Date: Wed Aug 27 20:45:13 2003
Subject: [Rd] Re: setClass question
In-Reply-To: <3F4A847F.BEBEA38A@research.bell-labs.com>
Message-ID: <Pine.SOL.4.30.0308271339040.12078-100000@ysidro.econ.uiuc.edu>

I've now rerun R CMD check SparseM on today's R-devel and I'm happy to
report that things look much better after the changes made last night.

I now get:

* checking for missing documentation entries ... WARNING
Undocumented code objects:
  %x% as.matrix diag diag<- diff t
Undocumented S4 methods:
  \S4method{coerce}{vector,matrix.diag.csr}
  \S4method{diff}{matrix.csr}
All user-level objects in a package (including S4 classes and methods)

Obviously the S4methods are items I should deal with...I'm still
uncertain what to do about the Undocumented code objects.

url:	www.econ.uiuc.edu/~roger/my.html	Roger Koenker
email	rkoenker@uiuc.edu			Department of Economics
vox: 	217-333-4558				University of Illinois
fax:   	217-244-6678				Champaign, IL 61820

On Mon, 25 Aug 2003, John Chambers wrote:

> Seems that methods are being attributed a bit strangely in undoc().
> Here's what I get with, I think, current r-devel and SparseM.
>
> R> library(tools)
> R> undoc("methods")
> R> library(SparseM)
> [1] "SparseM library loaded"
> R> undoc("SparseM")
> Undocumented code objects:
>   %x% as.matrix diag diag<- diff t
> Undocumented S4 methods:
>   \S4method{initialize}{traceable} \S4method{initialize}{signature}
>   \S4method{initialize}{environment}
> R> undoc("methods")
> Undocumented S4 methods:
>   \S4method{initialize}{matrix.csr} \S4method{initialize}{matrix.coo}
> Warning message:
> package:methods is required by package:SparseM (still attached) in:
> detach(pos = pos)
>
> Notice that methods for initialize() seem to be cross-attributed to
> "methods" and "SparseM".  (And despite the message, there IS
> documentation for both  method?initialize("traceable") and
> method?initialize("matrix.csr"), but of course in the other package.)
>
> If it's relevant, after the undoc("methods"), the order of the search
> list has been altered, with methods in position 2 (maybe related to the
> warning message when it was detached from its previous position?).
>
> The "Undocumented code objects" messages are "real", but not your
> fault--we'll have to figure what to do about them.  You created methods
> for "diag" (I assume), which is a non-generic in base.  The result is to
> create a generic version of diag(), which is assigned in your package.
> (In general, with namespaces, I don't think it's possible to assign the
> generic back into the original package, even just into the exported
> environment.)
>
> R> find("diag")
> [1] "package:SparseM" "package:base"
>
> This creates a formal "conflict" but in my understanding not one that
> should be reported, nor should you be expected to document the function
> diag(), as opposed to methods created for it.
>
> [Just got back to e-mail after 3 days away.  Will look at this and your
> other mail, probably not until tomorrow.]
>
> Thanks,
>  John
>
> Roger Koenker wrote:
> >
> > I have another S4 methods query -- this time about undocumented objects:
> > I'm now getting the following warning from R CMD check SparseM:
> >
> > * checking for missing documentation entries ... WARNING
> > Undocumented code objects:
> >   %x% as.matrix diag diag<- diff t
> > Undocumented S4 methods:
> >   \S4method{coerce}{ANY,array} \S4method{coerce}{ANY,call}
> >   \S4method{coerce}{ANY,character} \S4method{coerce}{ANY,complex}
> >   \S4method{coerce}{ANY,environment} \S4method{coerce}{ANY,expression}
> >   \S4method{coerce}{ANY,function} \S4method{coerce}{ANY,integer}
> >   \S4method{coerce}{ANY,list} \S4method{coerce}{ANY,logical}
> >   \S4method{coerce}{ANY,matrix} \S4method{coerce}{ANY,name}
> >   \S4method{coerce}{ANY,numeric} \S4method{coerce}{ANY,single}
> >   \S4method{coerce}{ANY,ts} \S4method{coerce}{ANY,vector}
> >   \S4method{coerce}{ANY,NULL}
> >   \S4method{coerce}{vector,matrix.diag.csr}
> >   \S4method{diff}{matrix.csr} \S4method{initialize}{traceable}
> >   \S4method{initialize}{signature} \S4method{initialize}{environment}
> >
> > A couple of these are directly related to the package, but the rest
> > seem to be items that I wouldn't have thought that I should be responsible
> > for documenting.  I'm wondering whether the coerce items are related to
> > my earlier query.  Even supposing that they were due to some blunder
> > of mine, I'm still puzzled by the initialize items which were present
> > even before I began to mess with my new setClass strategy.  Again,
> > many thanks for any suggestions.
> >
> > url:    www.econ.uiuc.edu/~roger/my.html        Roger Koenker
> > email   rkoenker@uiuc.edu                       Department of Economics
> > vox:    217-333-4558                            University of Illinois
> > fax:    217-244-6678                            Champaign, IL 61820
> >
> > ______________________________________________
> > R-devel@stat.math.ethz.ch mailing list
> > https://www.stat.math.ethz.ch/mailman/listinfo/r-devel
>
> --
> John M. Chambers                  jmc@bell-labs.com
> Bell Labs, Lucent Technologies    office: (908)582-2681
> 700 Mountain Avenue, Room 2C-282  fax:    (908)582-3340
> Murray Hill, NJ  07974            web: http://www.cs.bell-labs.com/~jmc
>


[Rd] Re: setClass question
Roger Koenker