elpy icon indicating copy to clipboard operation
elpy copied to clipboard

Disconnect between Package-Requires line in elpy.el and elpy-pkg.el

Open doolio opened this issue 4 years ago • 2 comments

The elpy.el file contains the lines:

;; Version: 1.35.0
;; Package-Requires: ((company "0.9.10") (emacs "24.4") (highlight-indentation "0.7.0") (pyvenv "1.20") (yasnippet "0.13.0") (s "1.12.0"))

My understanding is that this Package-Requires line specifies the minimum version of each dependency required by this package.

However, I note the elpy-pkg.el is as follows:

(define-package "elpy" "1.35.0"
                "Emacs Python Development Environment"
                '((company "0.9.2")
                  (emacs "24.4")
                  (highlight-indentation "0.5.0")
                  (pyvenv "1.3")
                  (yasnippet "0.8.0")
                  (s "1.11.0"))
                )

Is there a disconnect here between these files?

doolio avatar Dec 27 '20 16:12 doolio

@doolio, good find! The MELPA tarball also has this discrepancy: https://melpa.org/packages/elpy-20201115.1811.tar Also, I just noticed that Debian's Emacs packaging, using dh-elpa, is also trusting elpy-pkg.el and exporting the wrong depencies to dpkg/apt. @galaunay, many MELPA packages use MELPA's server-side foo-pkg.el-generating functionality to keep dependencies up-to-date from Package-Requires in foo.el, and dh-elpa also has this capability, so I'd recommend reducing the maintenance burden by dropping elpy-pkg.el from the repo and activating the MELPA autogeneration of this file.

Alternatively, it could be automatically regenerated using a release script, pre-tag hook on the local git repo, or possibly a github release hook.

sten0 avatar Dec 27 '20 20:12 sten0

The Cask file may also need to be reviewed ...

doolio avatar Dec 27 '20 20:12 doolio