A set of patches for R-0.50-a1 is now available as ftp://stat.auckland.ac.nz/pub/R/R-0.50-a1.patch1.gz The patches mainly fix problems reported since R-0.50-a1 but some older problems are also fixed. Here is the list of changes. Ross o Many subsetting and mutation problems with the new "expression" type have now been fixed. o When ask=T is set in par() the user is instructed "Press <Return> for next plot:" rather than asked "Next Plot?" o The infinite recursion observed by in Kurt Hornik in: R> test2 function (x) { attr(x, "call") <- sys.call() x } R> test2(x) Error: stack overflow has been cured. There may be one or two more of these. All the xxxx<- functions should be checked. o Patches from Benjamin Bolker to cure some line type problems has been applied. o Fixed the t(table(0)) problem (1-d arrays not quite handled right). o Changed naming back so that pow_dd etc are available. o Patches to barplot and text from Kurt Hornik. o When x was a data frame, mode(x) <- "character" x caused a crash. This was because a class of "data.frame" was being attached to a character vector. Now only lists can become data frames. o There is now a -gdb option to the R front end as well as -xxgdb. o Documentation of NChisquare fixed. o Definition of S_alloc fixed. o Changed the names of seeds_in and seeds_out to seed_in and seed_out as per Kurt's request. o "unlist(c(2))" fixed. o "data.frame(x=2)" fixed. o Bug in do_title fixed. o Scoping for subset methods by forcing an eval of the args on entry fixed (bug reported by Patric Lindsay). o subsetting of data frames fixed . o Misc problems in Rdoc.sty reported by Kurt Hornik fixed. o Permissions in the data subdir for quakes and sunspots fixed. o Segfault in dimnames mutation R> x <- 1:5 R> dimnames(x)[1,2] <- NULL fixed. o It was observed that > D(expression(z * (log(z) /z)), "z") returns (log(z)/z) + z * (1/z/z - log(z)/z^2) This is exactly what S-Pus produces. o Added the option -B 8192 to m4 in the etc/doc2* files to keep m4 happy. o New functions "as.ordered", "data.class" and "scale" from, Kurt Hornik added. =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- r-devel mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html Send "info", "help", or "[un]subscribe" (in the "body", not the subject !) To: r-devel-request@stat.math.ethz.ch =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Ross Ihaka <ihaka@stat.auckland.ac.nz> writes:> > A set of patches for R-0.50-a1 is now available as > ftp://stat.auckland.ac.nz/pub/R/R-0.50-a1.patch1.gz > The patches mainly fix problems reported since R-0.50-a1 but some > older problems are also fixed...> o It was observed that > > D(expression(z * (log(z) /z)), "z") > returns > (log(z)/z) + z * (1/z/z - log(z)/z^2) > This is exactly what S-Pus produces.Heyheyheyheeeyyy, no need to resort to name calling, next thing, you'll be talking about Windoze, HP-SUX, and Slowlaris! ;)> o New functions "as.ordered", "data.class" and "scale" from, Kurt > Hornik added.[The end] Hmm. The "move .RData before writing to it" fix didn't seem to make it. It's a one-liner (in the most primitive version), and really quite important. Actually, the problem is worse than I thought initially: .RData can get zapped to a zero-length file whenever you destroy the xterm window containing R, not only on system shutdown. This happens on both of my Linux boxes, but it's probably a quite generic race condition. -- O__ ---- Peter Dalgaard Blegdamsvej 3 c/ /'_ --- Dept. of Biostatistics 2200 Cph. N (*) \(*) -- University of Copenhagen Denmark Ph: (+45) 35327918 ~~~~~~~~~~ - (p.dalgaard@biostat.ku.dk) FAX: (+45) 35327907 =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- r-devel mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html Send "info", "help", or "[un]subscribe" (in the "body", not the subject !) To: r-devel-request@stat.math.ethz.ch =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Martin Maechler
1997-Aug-05 10:44 UTC
R-alpha: Version 0.50-a1 patches -- New and old bugs..
Thank you ! ~~~~~~~~~~~ The new patches (which incidentally make 0.50-a1 into 0.50-a2 IF you run ./configure) really do quite a few good things. A few comments. 1) I had to do the following to make things compile and link properly in appl/cpoly.c : line 42 : OUT-commented (pow_di) otherwise compiler barfed about redefined pow_di [Solaris 2.5, Sun cc] 2) In order for 'legend' and 'barplot' to work I had to edit src/library/base/funs/legend: Last line: replace 'text=' by 'labels=' [reflect change of text(...)] NOTE: After applying the patch, I recommend the following make clean configure make make install make tests install-latex install-help install-html --------------------- Further notes: 3) Whereas unlist(1), unlist(c(2)), etc. work, the two unlist problems that Kurt reported about, especially l.ex <- list(a = list(1:5, LETTERS[1:5]), b = "Z", c = NA) unlist(l.ex) #-- still in 0.50-a2 ##- INTERNAL ERROR: ans_nnames = 10 ans_length = 12 ##- Error: incorrect names vector length still exist. {Nobody claimed otherwise} 4) The parser problem reported by Patrick Lindsey remains : ##- From: Patrick Lindsey <plindsey@luc.ac.be> ##- Date: Tue, 29 Jul 1997 11:28:50 +0200 (MET DST) ##- To: r-devel@stat.math.ethz.ch (R list) ##- Subject: R-alpha: Bugs in R-0.50-a1. ##- ##- Problems in R but not in S: ##- --------------------------- ##- 2) Problem with the parser: When a function contains a condition ##- between brackets the closing bracket must be adjacent to the last item ##- in R but not in S. Here is an example: ##- S> new <- function (x,y,z,k) { ##- S+ message <- list(x,y,a=if(z) k ##- S+ ) ##- S+ message ##- S+ } ##- S> ##- --- ##- R> new <- function (x,y,z,k) { ##- R+ message <- list(x,y,a=if(z) k ##- R+ ) ##- ) ##- ^ ##- Error: syntax error ##- R> ##- This occurs in R-0.49 and in R-0.50-a1, R-0.50-a2 new <- function (x,y,z,k) { message <- list(x,y, a=if(z) k ) } --------------------------------------------------------------------------- I think I found one NEW bug (a1 -> a2): ====== options(digits = ...) fails to work AT ALL in a 'local environment' which makes even my tst2() function 'fail' : p0 <- (0:2)/1000 ; p <- p0 + 1e-10 p ## Fails in 0.50-a2, (NOT in 0.50-a1, I think): for(d in 1:20) { options(digits=d); cat(d,": ", p,";\t",p0, " ");print(p)} options(digits=7) ## Now,the print(.) at least works: for(d in 1:20) { options(digits=d); cat(d,": ", p,";",p0, " ");print(p,dig=d)} ##-- The following does not work as it should in R (0.50-a1, maybe earlier) tst <- function(x=pi, dig =3) {.Options$digits <- as.integer(dig); print(x);x} tst() tst(dig = 12) ##-- This should do the same; works as expected in S & R-0.50-a1, NOT in -a2: tst2 <- function(x=pi, dig =3) { oo <- options(digits=dig); on.exit(options(oo)); print(x);x} tst2() tst2(dig = 12) =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- r-devel mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html Send "info", "help", or "[un]subscribe" (in the "body", not the subject !) To: r-devel-request@stat.math.ethz.ch =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
>>>>> Ross Ihaka writes:> A set of patches for R-0.50-a1 is now available as > ftp://stat.auckland.ac.nz/pub/R/R-0.50-a1.patch1.gz > The patches mainly fix problems reported since R-0.50-a1 but some > older problems are also fixed.> ...> o New functions "as.ordered", "data.class" and "scale" from, Kurt > Hornik added.Almost. `scale' seems to be missing ... -k =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- r-devel mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html Send "info", "help", or "[un]subscribe" (in the "body", not the subject !) To: r-devel-request@stat.math.ethz.ch =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-