From Thomas.Petzoldt at TU-Dresden.de  Mon Jun 11 22:23:34 2007
From: Thomas.Petzoldt at TU-Dresden.de (Thomas Petzoldt)
Date: Mon, 11 Jun 2007 22:23:34 +0200
Subject: [Rd] package check note: no visible global function definition
 (in functions using Tcl/Tk)
In-Reply-To: <m2abv6v3ba.fsf@ziti.local>
References: <466D5A0F.2090907@tu-dresden.de>	<Pine.LNX.4.64.0706111638530.22283@gannet.stats.ox.ac.uk>
	<m2abv6v3ba.fsf@ziti.local>
Message-ID: <466DAF46.6010902@TU-Dresden.de>

Dear Prof.Ripley, Dear Seth,

thank you both, including tcltk in Depends as suggested by Prof. Ripley 
immediately helped to silence the tcltk NOTEs, but Seth is also right. 
It is in fact not the ultimate solution for the Suggests case, that I 
intentionally used like in Seth's code example.

Thomas


Seth Falcon wrote:
> Prof Brian Ripley <ripley at stats.ox.ac.uk> writes:
> 
>> It seems that is happens if package tcltk is missing from the Depends: 
>> list in the DESCRIPTION file.  I just tested with Amelia and homals and 
>> that solved the various warnings in both cases.
> 
> Adding tcltk to Depends may not always be the desried solution.  If
> tcltk is already in Suggests, for example, and the intention is to
> optionally provide GUI features, then the code may be correct as-is.
> That is, codetools will issue the NOTEs if you have a function that
> looks like:
> 
>    f <- function() {
>      if (require("tckltk")) {
>              someTckltkFunctionHere()
>      } else
>              otherwiseFunction()
>      }
>    }
> 
> There are a number of packages in the BioC repository that provide
> such optional features (not just for tcltk) and it would be nice to
> have a way of declaring the use such that the NOTE is silenced.
> 
> [Note 1: I don't have any ideas at the moment for how this could
> work.]
> 
> [Note 2: Despite the false-positives, I've already caught a handful of
> bugs by reading over these NOTEs and think they provide a lot of value
> to the check process]
> 
> + seth
>



[Rd] package check note: no visible global function definition (in functions using Tcl/Tk)
Thomas Petzoldt