Subject: 23.0.91; solar.el: solar seasons variable should not be a constant
From: Teemu Likonen <[email-masked]>
To: [email-masked]
Cc: [email-masked]
Date: Sun, 31 May 2009 16:58:26 +0300

This commit made solar-?-hemi-seasons constants:

    commit 7ac202f6ec47df634066e61cc4cf17705257d9dc
    Author: Glenn Morris <[email-masked]>
    Date:   2008-03-15 02:55:06 +0000

        (solar-n-hemi-seasons, solar-s-hemi-seasons): Make constants.
        (solar-sunrise-sunset): Rename some local variables for clarity.
        (sunrise-sunset): Use zerop.
        (solar-mean-equinoxes/solstices): Doc fix.

What is the rationale for that? They were defvars before.

As the doc of "defconst" says "The intent is that neither programs nor
users should ever change this value." Having solar seasons constants is
not sensible because it's very useful to localize the solar seasons'
names, and I'm trying to do exactly that with my Finnish localized
holidays:

    http://www.emacswiki.org/emacs/suomalainen-kalenteri.el

Yes, I can localize solar season by putting this in my ~/.emacs:

    (eval-after-load 'solar
      '(setq solar-n-hemi-seasons '("Kevätpäiväntasaus" "Kesäpäivänseisaus"
                                    "Syyspäiväntasaus" "Talvipäivänseisaus")
             solar-s-hemi-seasons '("Syyspäiväntasaus" "Talvipäivänseisaus"
                                    "Kevätpäiväntasaus" "Kesäpäivänseisaus")))

But this is not nice and it's difficult for external packages to
localize those variables.

I'd suggest making them defvas again (or defcustoms).