emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Strange requirement...


From: Richard Stallman
Subject: Re: Strange requirement...
Date: Tue, 25 Jul 2006 18:15:38 -0400

    The last sentence of the :package-version description states:

       Packages that use the `:package-version' keyword must also update
    the `customize-package-emacs-version-alist' variable.

Ok, now I see the issue.  It looks like the code was designed to assume
that :package-version will only be used for packages released in Emacs.
But clearly we should generalize it, so I wrote this patch for the code.
I will update the manual too.


*** cus-edit.el 17 Jul 2006 18:04:31 -0400      1.297
--- cus-edit.el 25 Jul 2006 15:35:01 -0400      
***************
*** 1087,1104 ****
  ;; Packages will update this variable, so make it available.
  ;;;###autoload
  (defvar customize-package-emacs-version-alist nil
!   "Alist mapping versions of Emacs to versions of a package.
! These package versions are listed in the :package-version
! keyword used in `defcustom', `defgroup', and `defface'. Its
! elements look like this:
  
       (PACKAGE (PVERSION . EVERSION)...)
  
! For each PACKAGE, which is a symbol, there are one or more
! elements that contain a package version PVERSION with an
! associated Emacs version EVERSION.  These versions are strings.
! For example, the MH-E package updates this alist with the
! following:
  
       (add-to-list 'customize-package-emacs-version-alist
                    '(MH-E (\"6.0\" . \"22.1\") (\"6.1\" . \"22.1\")
--- 1087,1110 ----
  ;; Packages will update this variable, so make it available.
  ;;;###autoload
  (defvar customize-package-emacs-version-alist nil
!   "Alist mapping versions of a package to Emacs versions.
! We use this for packages that have their own names, but are released
! as part of Emacs itself.
! 
! Each elements looks like this:
  
       (PACKAGE (PVERSION . EVERSION)...)
  
! Here PACKAGE is the name of a package, as a symbol.  After
! PACKAGE come one or more elements, each associating a
! package version PVERSION with the first Emacs version
! EVERSION in which it (or a subsequent version of PACKAGE)
! was first released.  Both PVERSION and EVERSION are strings.
! PVERSION should be a string that this package used in
! the :package-version keyword for `defcustom', `defgroup',
! and `defface'.
! 
! For example, the MH-E package updates this alist as follows:
  
       (add-to-list 'customize-package-emacs-version-alist
                    '(MH-E (\"6.0\" . \"22.1\") (\"6.1\" . \"22.1\")
***************
*** 1173,1183 ****
             since-version))))
  
  (defun customize-package-emacs-version (symbol package-version)
!   "Return Emacs version of SYMBOL.
! PACKAGE-VERSION has the form (PACKAGE . VERSION).  The VERSION of
! PACKAGE is looked up in the associated list
  `customize-package-emacs-version-alist' to find the version of
! Emacs that is associated with it."
    (let (package-versions emacs-version)
      ;; Use message instead of error since we want user to be able to
      ;; see the rest of the symbols even if a package author has
--- 1179,1188 ----
             since-version))))
  
  (defun customize-package-emacs-version (symbol package-version)
!   "Return the Emacs version in which SYMBOL's meaning last changed.
! PACKAGE-VERSION has the form (PACKAGE . VERSION).  We use
  `customize-package-emacs-version-alist' to find the version of
! Emacs that is associated with version VERSION of PACKAGE."
    (let (package-versions emacs-version)
      ;; Use message instead of error since we want user to be able to
      ;; see the rest of the symbols even if a package author has
***************
*** 1193,1201 ****
                        (cdr package-version)
                        "customize-package-emacs-version-alist")))
            (t
!            (message "Package %s neglected to update %s"
                      (car package-version)
!                     "customize-package-emacs-version-alist")))
      emacs-version))
  
  (defun customize-version-lessp (version1 version2)
--- 1198,1206 ----
                        (cdr package-version)
                        "customize-package-emacs-version-alist")))
            (t
!            (message "Package %s version %s lists no corresponding Emacs 
version"
                      (car package-version)
!                     (cdr package-version))))
      emacs-version))
  
  (defun customize-version-lessp (version1 version2)




reply via email to

[Prev in Thread] Current Thread [Next in Thread]