>>>>> Mikael Jagan >>>>> on Wed, 21 Jun 2023 12:41:02 -0400 writes:
> Surely this behaviour is just a case of ESS being "too clever", sourcing > *.R files in special way when it detects that a file belongs to a package > (loading dependencies automatically, etc.)? > The function ss() is defined inside of .ess.source(), which is defined here: > https://github.com/emacs-ess/ESS/blob/5c4ae91cefa5c56fd13b204a9a996825af836a67/etc/ESSR/R/.basic.R#L168 > If you think that there is a bug, then you could report it there ... > Mikael Yes. Unfortunately, there are quite a few other of such instances, which are much time consuming to me (notably as ESS/polymode then also again and again tries to gather info about all of the 20'000+ packages in my .libPaths() .. which slows down even opening an existing *.R file sometimes !!) where ESS "takes over" seemlingly almost all of Emacs, including notably often times my *shell* buffer in emacs .. This should *REALLY* be switched to ESS-help (and possibly/ideally github issues for ESS) now, and so I will CC this to ESS-help only -- no longer to R-devel (to which I'll post a pointer to this message on ESS-help). Martin > On 2023-06-21 6:00 am, r-devel-requ...@r-project.org wrote: >> When I run a script foo.R containing some trivial code in my home >> directory, via Emacs/ESS, everything works as expected: R >> starts, and a setwd() command to set the working directory is >> run automatically before the code in the script is run. >> >> But if I copy foo.R to some package/R directory strange >> things happen. When I use Emacs/ESS to run the script >> in its new location, R starts, and setwd() is called to set >> the working directory, but then one or more libraries that the >> package depends on are loaded, even though I am using no >> libraries in foo.R. >> >> Now consider foo.R that contains the following trivial code: >> secsToRDateTime <- function(secs) { >> day2sec <- 60*60*24 >> days <- secs/day2sec >> } >> >> When I try to run this from package/R I get... >> >> Error in ss(file, echo = visibly, local = local, print.eval = output, : >> /tmp/gpstime.R!CuSewT:2:0: unexpected end of input >> 1: secsToRDateTime <- function(secs) { >> ^ >> >> As I said, there are no problems when the script is run from my >> home directory. This suggests that test scripts can no longer be >> tested in a package's R directory? >> >> Is this true? >> >> Thanks, >> Dominick > ______________________________________________ > r-de...@r-project.org mailing list > https://stat.ethz.ch/mailman/listinfo/r-devel ______________________________________________ ESS-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/ess-help