IDEMSInternational / R-Instat

A statistics software package powered by R
http://r-instat.org/
GNU General Public License v3.0
38 stars 103 forks source link

Produce an installer for R 4.1.3 that includes all the packages #9173

Open rdstern opened 5 days ago

rdstern commented 5 days ago

@N-thony and @ChrisMarsh82 I am releived that the latest installer now seems almost ok, and for any machine. It now seems to work for those - and they are quickly becomeing more - who have never had R or R-Instat earleir. And it seems ok also for those who are upgrading.

I note that it has substantial improvements including:

a) Better recovery from crash or even from users forgetting to save their previous work. b) Complete separation of R, and R-packages, from R installed with RStudio. c) Addition of CRAN, and now also github packages, without Admin level.

However, the most recent version of 0.7.21 omits some R packages, where the most recent updates need R Version 4.20, so later than Version 4.1.3 that is the last version that works on 32 bit machines.

What was disappointing in the recent release is that these packages were simply omitted, with no warning, or information to us. One such package is GGally. This does not need R>3.60, but the latest version of some of the packages it installs does. What was disappointing is that we had to find and report the lack of GGally - rather than you. When a set of packages is omitted from an installation I assume you must have got some error messages. My main concern here is what else is missing that we have yet to find. (It was by change that a participant wanted to add a graph to correlations and that gave an error of the lack of GGally.)

Please could you improve the installation procedure, so it installs all the packages, as before, but limited to the latest versions that will run on R 4.1.3.

a) @dannyparsons has done some "research" that is also pointing us in the right direction. Here is what we have done: a) He found that the piping was the only reason that ggstats now says it needs version 4.2. However piping was introduced into R in 4.1 and so he wrote to the author of ggstats on github. He has replied and will make a fix - maybe he has already, so perhaps we could now use his github version? Note he is also the author, I think of broom.helpers. b) Now the bad news: I checked the first 10 packages alphabetically, in our list in 0.7.20. Three of those are missing in 0.7.21! So clearly quite a lot of packages are missing in 0.7.21. c) And the good news. The latest MASS package needs R Version 4.4. But it is included in 0.7.21! And it seems to have included version 7.3.58.3, which is the latest version that only needs our version of R! I suspect that happened reasonably automatically with your current installer. d) So I wonder if the installer automatically adjusts all the packages we list explicitely for the version of R, but leaves them out if a dependancy needs R greater than 4.1.3? So do you ask explicitely for broom.helpers and ggstats as packages we need? If not, then could you upgrade them so they are asked for explicitely? e) Howver there may still be others? Do we ask for gtsummary explicitely, because that is going to be useful later. It says it needs Version 4,2 and is missing from the list in our version 0.7.21? (I don't know how much we need it yet.)

In the longer term I hope we can go further, when making an installation. Ideally there would be a report, each time, of all the packages that have been updated since the last release. (This would help the testing (which we don't do yet!)

rdstern commented 3 days ago

@dannyparsons has been doing a bit of investigating! I asked whether an installation as though the date were earleir, might be one way. That's because @N-thony your first 0.7.21, was earlier in September and appears to have all the packages. At least it has more than your latest installation. Danny writes:

"Yes basically installing the versions from that previous date should work.

Antoine and @ChrisMarsh82 should be about to check this and work it out quite easily.

Some packages will just be excluded because of their dependencies but the latest version of the package itself could be fine. Like GGally

It should be easy to install a specific package version but I can't remember how to. Chris should be able to find out easily."

I hope you can resolve this easily, so a new version can be tested in Eswatini later this week. @jkmusyoka has reported one problem already, on their machines - and not on his, which is from Tutorial 1, so needs to be resolved.

This also emphasises that, once you have a working version, we should move, as quickly as possible to our frozen 32 bit version. This problem is likely to get worse.

By the way I wonder if this link helps? There is a groundhog package that sounds relevant, and some others?