Skip to content

Commit

Permalink
Prepare 3.1 release.
Browse files Browse the repository at this point in the history
Some bugs are blocking users in 2.stable and the code diverted enough to
warrant releasing 3.1 rather than spending time fixing 2.stable.  Also, it's
been a long time without release and we have some excellent new
features (dependency support, el-get-list-packages, etc).

The el-get recipe is already refering to the 3.stable branch, that will be
created from this commit.
  • Loading branch information
dimitri committed Sep 15, 2011
1 parent e9baf31 commit 61504f3
Show file tree
Hide file tree
Showing 3 changed files with 32 additions and 56 deletions.
60 changes: 15 additions & 45 deletions README.asciidoc
Original file line number Diff line number Diff line change
Expand Up @@ -277,28 +277,22 @@ M-x el-get-describe::
website, description, installation method, full recipe, and buttons to
easily install, update or remove the package.

M-x el-get-sync::

Synchronously install any "required" package and init any "installed" one.
M-x el-get-install::
+
Will prompt for a package name, with completion, then install it. It will
only propose packages that are not already +installed+. Any package that
you have a recipe for is a candidate.
+
Please note that when installing a package that is not in your
+el-get-sources+ or your +el-get+ call means that it will not be initialized
for you automatically at emacs startup. You get a +WARNING+ message when
that's the case.

M-x el-get-cd::

Will prompt for an +installed+ package name, with completion, then open
its directory with dired.

M-x el-get-install::

Will prompt for a package name, with completion, then install it. It
will only propose packages that are not already +installed+. Any
package that you have a recipe for is a candidate.

Please note that when installing a package that is not in your
+el-get-sources+ or your +el-get+ call means that it will not be
initialized for you automatically at emacs startup. You get a +WARNING+
message when that's the case.

C-h e runs the command view-echo-area-messages.

M-x el-get-update::

Will prompt for an installed package name, with completion, then update
Expand Down Expand Up @@ -368,11 +362,6 @@ el-get-extra-packages (&rest packages)::
((verbiste "installed")
(package "installed"))

== Internals

TODO: explain the symlinks in +~/.emacs.d/el-get+. For now, read the source
and try it out.

== Extending it

Please see the documentation for the +el-get-methods+ and provide a patch!
Expand All @@ -382,12 +371,11 @@ using copy paste. Here's the patch: https://github.com/dimitri/el-get/commit/63e

== Upgrade Notes

=== Upgrading to 3.0
=== Upgrading to 3.1

Please remind that +3.0+ is a development branch. A change has been
included so that +el-get-sources+ is now only another source for recipes,
and +(el-get '...)+ will now only install and initialize known "required"
and "installed" packages.
A change has been included so that +el-get-sources+ is now only another
source for recipes, and +(el-get '...)+ will now only install and initialize
known "required" and "installed" packages.

The documentation has been updated to detail the new setup.

Expand All @@ -396,22 +384,4 @@ want in your setup, here's how to get them out of the way:

M-: (el-get-save-package-status "package-name-here" "removed")

=== Upgrading to 1.1

==== Package Status

+el-get+ will now save some package status information into the file
+el-get-status-file+, it's a property list of the package symbol and its
status. The status is set to "required" when you enter +el-get-install+ and
is changed to +installed+ upon successful completion of the installation,
including the build.

Now, if you +el-get-install+ an already installed package, this is an
error. If the status is "required", a previous install failed, you have to
+el-get-remove+ the package before continuing. If the status is "installed",
well, the package is known installed.

To reinit the status file you might need to execute the following code:

(mapc (lambda (p) (el-get-save-package-status p "installed"))
(el-get-package-name-list))
Please review documentation section 'Advanced setup with local recipes'.
26 changes: 16 additions & 10 deletions el-get.el
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,9 @@
;; Copyright (C) 2010 Dimitri Fontaine
;;
;; Author: Dimitri Fontaine <[email protected]>
;; URL: https://www.emacswiki.org/emacs/el-get.el
;; Version: 2.2
;; URL: https://www.emacswiki.org/emacs/el-get
;; GIT: https://github.com/dimitri/el-get
;; Version: 3.1
;; Created: 2010-06-17
;; Keywords: emacs package elisp install elpa git git-svn bzr cvs svn darcs hg
;; apt-get fink pacman http http-tar emacswiki
Expand All @@ -29,16 +30,17 @@

;;; Change Log:
;;
;; 3.0 - WIP - Get a fix
;; 3.1 - 2011-09-15 - Get a fix
;;
;; - support fo package dependencies
;; - support for package dependencies
;; - rely on package status for `el-get' to install and init them
;; - M-x el-get-list-packages
;; - support for :branch in git
;; - new recipes, galore
;; - bug fixes, byte compiling, windows compatibility, etc
;; - recipe files are now *.rcp rather than *.el (el still supported)
;; - el-get-user-package-directory allows to setup init-<package>.el files
;; - remove M-x el-get-sync, now obsolete
;;
;; 2.2 - 2011-05-26 - Fix the merge
;;
Expand Down Expand Up @@ -139,6 +141,7 @@
;; - implement el-get-rmdir

;;; Code:

(require 'dired)
(require 'package nil t) ; that's ELPA, but you can use el-get to install it
(require 'cl) ; needed for `remove-duplicates'
Expand Down Expand Up @@ -532,6 +535,7 @@ being sent to the underlying shell."
)
))


;;
;; Support for tracking package states
;;
Expand Down Expand Up @@ -579,6 +583,7 @@ for reasons described in INFO."
(el-get-set-package-state package `(error ,info)))
(add-hook 'el-get-post-error-hooks 'el-get-mark-failed)


;;
;; "Fuzzy" data structure handling
;;
Expand Down Expand Up @@ -627,6 +632,8 @@ returning a list that contains it (and only it)."
)
;;; END "Fuzzy" data structure support



(defun el-get-source-name (source)
"Return the package name (stringp) given an `el-get-sources'
entry."
Expand Down Expand Up @@ -943,6 +950,9 @@ platforms where this recipe should apply"
,el-get-build-recipe-body))))))


;;
;; Some tools
;;
(defun el-get-flatten (arg)
"Return a version of ARG as a one-level list
Expand Down Expand Up @@ -1079,6 +1089,7 @@ are now installed"
install DEPENDENCY, with error information DATA"
(el-get-mark-failed package (list dependency data)))


(defun el-get-install (package)
"Cause the named PACKAGE to be installed after all of its
dependencies (if any).
Expand Down Expand Up @@ -1130,12 +1141,12 @@ PACKAGE may be either a string or the corresponding symbol."
((debug error)
(el-get-installation-failed package err)))))


(defun el-get-installation-failed (package signal-data)
"Run all the failure hooks for PACKAGE and `signal' the car and cdr of SIGNAL-DATA."
(run-hook-with-args 'el-get-post-error-hooks package signal-data)
(signal (car signal-data) (cdr signal-data)))


;;
;; call-process-list utility
;;
Expand Down Expand Up @@ -3094,11 +3105,6 @@ entry which is not a symbol and is not already a known recipe."
(el-get-write-recipe r dir)))
(dired dir))

(defun el-get-sync ()
"M-x el-get-sync will synchronously install and init your el-get packages"
(interactive)
(el-get 'sync))

;;
;; notify user with emacs notifications API (new in 24)
;;
Expand Down
2 changes: 1 addition & 1 deletion recipes/el-get.rcp
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
:website "https://github.com/dimitri/el-get#readme"
:description "Manage the external elisp bits and pieces you depend upon."
:type git
:branch "2.stable"
:branch "3.stable"
:url "https://github.com/dimitri/el-get.git"
:features el-get
:load "el-get.el"
Expand Down

0 comments on commit 61504f3

Please sign in to comment.