emacs-ess / ESS

Emacs Speaks Statistics: ESS
https://ess.r-project.org/
GNU General Public License v3.0
623 stars 162 forks source link

Which version should I install? #1268

Closed AntonioFasano closed 9 months ago

AntonioFasano commented 10 months ago

TL;DR

Which is the ESS version to install for the average user?

MELPA stable

Normally, I tend to install packages from MELPA stable, unless there is a killer development feature suggesting otherwise. However:

  1. MELPA stable provides version 18.10.2, whose source links to the GitHub commit 0728c6fdf8e13f10ee50b27fb3f39e7c229f05b1, which is 6 years old and does not build on recent Emacs versions.

  2. The official ESS page on r-project.org provides again ESS 18.10.2, labelled as latest released version. This is basically the same as MELPA stable, so the same issues apply.

Dev versions?

At this point, I think I am only left to choose the development version, and the official ESS page links to GitHub master branch zip.

A convenient way could be to use the standard MELPA archive, supposed to target bleeding-edge releases. Indeed, it links to the GitHub commit 3691ecc, which is 2 weeks old. This one is basically the GitHub master branch. However, I see that GitHub commits happen every couple of months or so. Are they bug fixes or new experimental features? The latter seems suggested by the fact that there is no development branch on GitHub.

Normally, teams not using dedicated development branches use the release feature to publish what they consider usable in production. In the case of github.com/emacs-ess/ESS/releases, it lists only two S-mode packages, which probably are there for historical reasons.

Tag system

Luckily, there is a convenient Tag section, where the latest tag provided is ESSRv1.8, published November 2022. This seems perfect for me, but the official ESS pages writes:

In principle, on GitHub, you can download every released version of ESS via their tags. However, inconsistencies (of tags and the released archives (zip, tar.gz) have been observed, and we do not recommend using github to get ESS releases now!

At this point, your help is really appreciated.

P.S. A side note: MELPA provides dependencies, GitHub does not and there is no ess-pkg.el with the package description. One can refer to MELPA dependencies, but standard and stable have different requirements. Do we have to (manually or automatically) parse .el files, or there is a better way?

rsparapa commented 10 months ago

We have just made a new release 24.01.0. In my testing, I prefer it to the previous release. And we are recommending it for the average user.

AntonioFasano commented 9 months ago

Thank you.
At this point, I understand the best reference is the GitHub Tags page.
Still, I have some doubts about the future releases.
Until now, versions were named like ESSRv1.8, while now we have v24.01.0. I can't infer any relevant difference from the archive content. Is it simply a new naming convention, or there is more I should know?

rsparapa commented 9 months ago

No. The ESSR package has that versioning convention. That’s a helper package for ESS. ESS version numbers are YY.MM.micro — Rodney Sparapani, Associate Professor of Biostatistics Vice President of the Wisconsin Chapter of the ASA Institute for Health and Equity, Division of Biostatistics Medical College of Wisconsin, Milwaukee Campus

On Feb 2, 2024, at 10:56 AM, Antonio @.***> wrote:

 ATTENTION: This email originated from a sender outside of MCW. Use caution when clicking on links or opening attachments.


Thank you. At this point, I understand the best reference is the GitHub Tags page. Still, I have some doubts about the future releases. Until now, versions were named like ESSRv1.8, while now we have v24.01.0. I can't infer any relevant difference from the archive content. Is it simply a new naming convention, or there is more I should know?

— Reply to this email directly, view it on GitHubhttps://urldefense.com/v3/__https://github.com/emacs-ess/ESS/issues/1268*issuecomment-1924452597__;Iw!!H8mHWRdzp34!-pEXR-ORBtj_5-LaCmZZCy4hW2KVjBg1SXfI_c_g5zjG5IM-H1j7K2IN-emQE8VT-ew6fXgpiq8pcCiyI1HjyQnI$, or unsubscribehttps://urldefense.com/v3/__https://github.com/notifications/unsubscribe-auth/ABVJ2IEL7H3KOHLIBYTOVFTYRUVSPAVCNFSM6AAAAABBLT6KZGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSMRUGQ2TENJZG4__;!!H8mHWRdzp34!-pEXR-ORBtj_5-LaCmZZCy4hW2KVjBg1SXfI_c_g5zjG5IM-H1j7K2IN-emQE8VT-ew6fXgpiq8pcCiyI6HaX4vp$. You are receiving this because you commented.Message ID: @.***>

AntonioFasano commented 9 months ago

Rodney, I did not realise that 24.01.0 is on MELPA Stable too.
That is big news for the community!

mmaechler commented 9 months ago

Well, it is even on ELPA (in section 'gnu'), i.e., the very standard & default emacs package repos. Users don't even have to switch using MELPA or MELPA stable explicitly, but can M-x install-package [Enter] ess [Enter] and be done. BTW: It is now ess 24.01.1 (or ELPA 24.1.1 (no "0")), fixing the nasty issue #1276

rsparapa commented 9 months ago

M-x package-install [Enter] ess [Enter]