Commit Graph

610 Commits

Author SHA1 Message Date
Dan Katz
53a135ad84 Simplify the patch to a single function since there's no known use for
the more general internal version.
2013-04-26 17:57:55 -04:00
Dan Katz
3dc440aa77 Ensure that el-get-cleanup preserves el-get.
Split the package removal logic into a dangerous internal function
which removes everything, and a user-friendly external
function (el-get-cleanup) which ensures that el-get doesn't get nuked.
2013-04-23 08:51:10 -04:00
Carlos A. Rocha
a4387d7727 Fix el-get-update-all for elpa packages
el-get-update-all overrode package-refresh-contents using flet to
avoid triggering a full refresh of all elpa packages when updating
each elpa package. The use of flet was incorrect, and the overridden
function was specified with different arguments, causing an error.
2013-04-11 01:27:47 -04:00
Victor Deryagin
0a202ea35d changed mentions of 'README.asciidoc' to 'README.md' in source files 2013-04-01 15:46:34 +03:00
Dimitri Fontaine
529a2e1f9a Add some sanity checks in el-get-remove and el-get-rmdir, fixing #944. 2012-12-03 15:45:21 +01:00
Daniel Szmulewicz
7ba81d6bf0 el-get-cleanup function 2012-09-28 23:17:58 +02:00
Keshav Kini
f1b0293549 Use trailing space with yes-or-no-p
The documentation of the built-in function yes-or-no-p says that the
argument "should end in a space".
2012-09-14 22:05:08 +08:00
Takafumi Arakaki
848c90a518 Clear status cache before init/install/update, etc.
The cache is cleared before running these functions *interactively*:

* el-get-init
* el-get-install
* el-get-reload
* el-get-update
* el-get-remove
2012-09-03 18:03:07 +02:00
Dimitri Fontaine
642ad14315 Release 4.1. 2012-08-28 23:07:48 +02:00
Dimitri Fontaine
3e5fed5585 Some editing of the changelog, release is Real Soon Now 2012-08-15 17:02:49 +02:00
Dimitri Fontaine
4b85baa9a1 Remove el-get 'wait that's been broken for a long time already, fixes #758.
The use case for el-get 'wait is very thin (setup file only), and fixing it
would be hard enough that we're not going to work on it. If you want to wait
until the packages are installed, just use 'sync.

One reason why fixing that situation is not easy is that some error cases
that happen at install time are not catched by El-Get code, so there's no
place where to set the package status as "failed" or something equivalent.
We wouls still have some "required" packages left, and if we don't count
them in the progress information we hang up completely.

This commit also refresh the test/README content to cope with the recent
status.old backup file, and in passing reformat the file as Markdown.
2012-07-30 19:22:30 +02:00
Dimitri Fontaine
db6a5596fc Fix el-get-init command. 2012-07-23 23:33:51 +02:00
Ryan C. Thompson
8ec40d632d Fix error in "(el-get 'wait ...)"
This prevents an error, but wait mode is still broken because it
doesn't actually wait until everything is done.
2012-07-23 23:25:33 +02:00
Dimitri Fontaine
a8ae68fce8 Fix #656, the provided test case now passes. 2012-07-17 15:09:56 +02:00
Ryan C. Thompson
5dfadefedd Add support for update hooks
Previously we had install hooks but no update hooks.
2012-06-18 16:32:47 -07:00
Ryan C. Thompson
82681cbbff Fix #619 after merging #660
Convert el-get-checksum to new el-get-with-status-sources usage
2012-06-03 07:53:55 -07:00
Ryan C. Thompson
16518d9d6c Fix #592 after merging #660 2012-06-03 07:53:55 -07:00
Ryan C. Thompson
c3c07e7169 Fix #583 after merging #660 2012-06-03 07:53:55 -07:00
Ryan C. Thompson
bdc2cb2aa6 Fix #303 after merging #660 2012-06-03 07:53:55 -07:00
Ryan Thompson
bcce1646bf Merge pull request #660 from DarwinAwardWinner/update-status-recipes
Auto-update status recipes when el-get-sources has changed
2012-06-02 20:51:08 -07:00
Ryan C. Thompson
ca85d4fc30 Merge branch 'emacs-version-check'
This adds the ability for recipes to specify a required minimum emacs
version. Attempting to install such a recipe in a lower version of
emacs will result in an error.
2012-05-28 13:52:46 -07:00
Ryan C. Thompson
619941cb31 Fix cedet recipe
This includes a fix to "el-get-reload" that ignores errors during
reloading package files, because CEDET raises errors if you try to
reload it. If a file raises an error during reloading, we issue a
warning telling the user that they might have to restart emacs to
finish the update.

Recipe fixes based on https://github.com/dimitri/el-get/pull/748
2012-05-27 12:43:07 -07:00
Ryan C. Thompson
df560dbf63 Better docstring for auto-update-cached-recipes 2012-05-06 01:51:19 -07:00
Ryan C. Thompson
25fa9aa4fa Minimize whitespace changes in el-get-init relative to master 2012-05-06 01:51:18 -07:00
Ryan C. Thompson
a31554e42c Make regular el-get-sources available to post-init hooks
This is critical because installation dependency chaining happens via
a post-init hook. This is done by putting the call to post-init-hooks
outside the "el-get-with-status-sources" block.
2012-05-06 01:51:18 -07:00
Ryan C. Thompson
66ac07520f Small but tricky fixes 2012-05-06 01:51:18 -07:00
Ryan C. Thompson
d4892a1e64 Refactoring 2012-05-06 01:48:05 -07:00
Ryan C. Thompson
24ea4be1a5 Auto-update recipes before init
Should fix #659.
2012-05-06 01:48:04 -07:00
Ryan C. Thompson
f1868c87c8 Fix el-get-init
It was missing a call to "el-get-with-status-sources"
2012-05-06 01:48:04 -07:00
Ryan Thompson
c32bd0aca8 Merge pull request #664 from DarwinAwardWinner/misc-fixes
Misc fixes
2012-05-06 01:37:10 -07:00
Ryan Thompson
2f3097a6fb Merge pull request #657 from DarwinAwardWinner/code-cleanup
Simplify "el-get-install" and other fixes
2012-05-06 01:34:50 -07:00
Ryan C. Thompson
a4907dd796 Check package's required emacs version before installing or initializing
Fixes #730.
2012-05-06 00:56:10 -07:00
Ryan C. Thompson
1cbad77d34 Minor fix to el-get-remove.
Fixes failure in test #650.
2012-03-30 11:29:38 -07:00
Ryan C. Thompson
cb787b2a7a Always print with "print-level" and "print-length" nil
This prevents Emacs from inserting "..." in place of very deep or long
data structures, which could corrupt the status file in some cases.
This is done by defining a wrapper function "el-get-print-to-string",
which el-get should use for all "critical" stringification tasks.

As noted in #689.
2012-03-29 14:52:43 -07:00
Ryan C. Thompson
9b0f44bc44 Make el-get-remove more error-tolerant.
It should now manage to remove just about any package, regardless of
its current status.

Fixes #683.
2012-03-24 15:46:06 -07:00
Ryan C. Thompson
ed43345a81 Prevent el-get-update-all from hammering ELPA servers
Add some code to make sure "package-refresh-contents" is only run once
per call to "el-get-update-all", instead of once for each ELPA
package.
2012-03-13 10:45:20 -07:00
Ryan C. Thompson
c786602b10 Use el-get-verbose-message in "el-get-do-install" 2012-03-10 11:47:46 -08:00
Ryan C. Thompson
76456a830e Fix prompt for "el-get-reload" 2012-03-10 10:45:35 -08:00
Ryan C. Thompson
db41a56818 Simplify "el-get-install"
Now "el-get-install" simply dispatches to
"el-get-install-next-packages" instead of duplicating some of its work
for the first package on the dependency list.

There should be no change in functionality or interface.
2012-03-09 17:18:37 -08:00
Ryan Thompson
5481256566 Merge pull request #651 from DarwinAwardWinner/remove-from-status-dynamic
Use dynamic binding to force usage of status recipes
2012-03-08 14:54:59 -08:00
Ryan C. Thompson
2fcdcefc79 Improve docstrings and comments 2012-03-08 14:12:06 -08:00
Ryan C. Thompson
aa076d23a8 Update el-get-(remove|reload|checksum) to use "el-get-with-status-recipes" 2012-03-08 13:03:05 -08:00
Ryan C. Thompson
a5d36d9d6d Handle changing dependencies when updating packages 2012-03-08 11:59:10 -08:00
Ryan C. Thompson
69a201e3b8 Move post-install-hook running into el-get-post-install-build 2012-03-07 18:23:32 -08:00
Ryan C. Thompson
d8cd22d213 Make el-get-post-update more like el-get-post-install
Credit to Sébastien Gross for the autoloads fix.
2012-03-07 18:23:32 -08:00
Ryan C. Thompson
7914199310 Reinstall on update if recipe type has changed
Fixes #642.
2012-03-06 10:07:43 -08:00
Ryan C. Thompson
0e36fdaf4e Fix string/symbol confusion 2012-03-06 01:52:31 -08:00
Ryan C. Thompson
b96ae5bbb9 Remove reference to removed function
Also, require a package's directory to exist before considering it
installed.
2012-03-06 01:11:55 -08:00
Dimitri Fontaine
c51609718e Add recipe into the status file and use that at init time, to fix #553. 2012-03-05 18:51:33 +01:00
Ryan Thompson
e5f02aa0ea Merge pull request #621 from tkf/ask-el-get-update-all
Add yes-or-no prompt to el-get-update-all
2012-03-02 15:08:36 -08:00
Ryan C. Thompson
9ff04b3810 Ensure el-get-checksum returns the checksum
Previously it copied it to the kill-ring, but sometimes did not return
it to the caller.
2012-02-29 14:21:01 -08:00
Takafumi Arakaki
f5c8cc4dd2 Add optional no-prompt argument to el-get-update-all
as @DarwinAwardWinner suggested
2012-02-29 18:09:04 +01:00
Takafumi Arakaki
bc9d2e4e01 Add note on el-get-update-all prompt to change log 2012-02-29 17:14:55 +01:00
Takafumi Arakaki
6e1ebccaac Add yes-or-no prompt to el-get-update-all 2012-02-29 14:50:27 +01:00
Ryan C. Thompson
b0ba0acebb Merge branch 'cvs-proxy' 2012-02-28 18:23:01 -08:00
Ryan C. Thompson
7235faa793 Add CVS proxy note to change log 2012-02-28 18:22:15 -08:00
Ryan C. Thompson
63d0771d1c Add verbose message in "el-get-eval-after-load" 2012-02-24 17:56:36 -08:00
Ryan C. Thompson
7cd20512cf Give "eval-after-load" a string
In my testing, "eval-after-load" only works when its first argument is
a string.
2012-02-24 17:55:57 -08:00
Ryan Thompson
0da6fd9299 Merge pull request #582 from DarwinAwardWinner/recipe-auto-lambda
Don't require "lambda ()" in post-init and similar. (plus lazy loading fixes)
2012-02-24 12:04:54 -08:00
Ryan C. Thompson
112a6c2e38 Merge branch 'lazy-fix' into recipe-auto-lambda
Conflicts:
	el-get.el
	recipes/clevercss.rcp
	recipes/coffee-mode.rcp
	recipes/full-ack.rcp
	recipes/mustache-mode.rcp
	recipes/n3-mode.rcp
	recipes/pylookup.rcp
	recipes/rhtml-mode.rcp
	recipes/sauron.rcp
	recipes/yaml-mode.rcp
2012-02-23 15:05:49 -08:00
Ryan C. Thompson
b5c74fc807 Merge branch 'code-cleanup' 2012-02-23 14:46:10 -08:00
Ryan C. Thompson
03e6785586 Fixes to make the test pass 2012-02-23 14:40:45 -08:00
Ryan C. Thompson
6a4ee8340c Use "el-get-lazy-funcall" in "el-get-init" 2012-02-23 14:22:18 -08:00
Ryan C. Thompson
b3f5de42b9 Add functions el-get-eval-after-load and el-get-lazy-funcall
Neither one is used yet
2012-02-23 14:21:38 -08:00
Ryan C. Thompson
ca7702984a Allow :lazy property to always override "el-get-is-lazy"
Specifically, if "el-get-is-lazy" is non-nil, A recipe can override it
with ":lazy nil".
2012-02-23 13:52:45 -08:00
Ryan C. Thompson
c9944fda61 Move file-local variables to dir-local variables 2012-02-23 13:18:48 -08:00
Ryan C. Thompson
6f60c5ba4e Do quote-stripping using eval, not cdr 2012-02-22 15:01:05 -08:00
Ryan C. Thompson
9d51738a20 Improve messages in "el-get-run-package-support"
Now printed lisp forms are put inside `quotes'.
2012-02-22 15:00:51 -08:00
Ryan C. Thompson
db2d2187f0 Rewrite el-get-funcall to expect only function or single lisp form
As discussed in
https://github.com/dimitri/el-get/pull/582#issuecomment-4081824

Since the lisp-form is now recommended and functions are deprecated,
rename "el-get-funcall" to el-get-run-package-support, and change
other terms in documentation and comments from "function" to form.
When it gets a function (anything callable), it gives a deprecation
warning that, when practical, tells the user how to modify the recipe
to use a lisp form instead of a function.

Also, now ":post-init 'FORM" is equivalent to ":post-init FORM",
because any top-level quoting is stripped from FORM (with a warning)
before evaluating it.
2012-02-22 13:41:49 -08:00
Ryan C. Thompson
981c4bfb27 Fix check for callability
It no longer throws errors.
2012-02-22 13:41:49 -08:00
Ryan C. Thompson
b52326c065 For :post-init single-funcall case, also allow macros and other callables 2012-02-22 13:41:49 -08:00
Ryan C. Thompson
cbd502de8a Add github & emacsmirror methods to Change Log 2012-02-21 15:02:26 -08:00
Ryan C. Thompson
1914009917 Code cleanup. 2012-02-20 13:11:10 -08:00
Ryan C. Thompson
a240fd3759 Remove redundant call to "el-get-install-next-packages" 2012-02-20 12:58:45 -08:00
Ryan C. Thompson
daf8c74686 Fix for installing packages with already-installed dependencies 2012-02-20 12:45:54 -08:00
Ryan C. Thompson
fe2916e05c Auto-prepend "lambda ()" to :post-init and similar 2012-02-20 00:24:58 -08:00
Dimitri Fontaine
a6315b0ecc Update the changelog. 2012-02-18 22:03:19 +01:00
Dimitri Fontaine
3164fa3a81 Improve el-get-version to report the current short sha1 from git, and to kill-new the version string. 2012-02-18 21:46:32 +01:00
Dimitri Fontaine
dac6acc5cd Document the new feature in the History part of el-get.el 2012-02-18 21:34:24 +01:00
Ryan C. Thompson
94dc2908e2 Set "default-directory" to package directory during init
This allows recipes to avoid using the "pdir" variable, which is
arguably an implementation detail.
2012-02-13 21:03:06 -08:00
Ryan C. Thompson
771d5cddba Add docs for ":shallow" 2012-02-12 12:59:14 -08:00
Ryan C. Thompson
a30a6c50b3 Document :checkout in change log 2012-02-12 02:47:23 -08:00
Ryan C. Thompson
8befd64d6c Bump version to 4.0.7 2012-02-12 02:41:20 -08:00
Ryan C. Thompson
2880f5bcc5 Add el-get-checksum to documentation 2012-02-12 02:29:31 -08:00
Ryan C. Thompson
bc3e74b4ef Add el-get-self-checksum function 2012-02-12 02:29:31 -08:00
Ryan C. Thompson
6b82a812f8 Document el-get-reinstall in change log 2012-01-29 22:11:44 -08:00
Ryan C. Thompson
32244ea299 Add command "el-get-reinstall" 2012-01-14 16:14:53 -08:00
Ryan C. Thompson
08c3c77b49 Aggressively clear out stale packages before installing 2011-12-01 21:15:12 +08:00
jsvnm
1ab26a856f in el-get-funcall, let was missing a pair of parentheses. pdir was not set. 2011-11-30 17:58:26 +02:00
Julien Danjou
0adecb615c Handle ELPA load-path too
Actually, ELPA will only set load-path way later after reading init.el,
which breaks everything that depends on an ELPA package and is loaded just
after el-get, at init time.

Signed-off-by: Julien Danjou <julien@danjou.info>
2011-11-23 09:45:07 +01:00
Dimitri Fontaine
d718e5843d Review latest el-get checksum changes. 2011-10-31 10:58:12 +01:00
Gergely Risko
a2b8a24e25 Checksum support fixups.
Report successful checksum verification.  Deny updating of a package
with a checksum property.
2011-10-31 10:41:25 +01:00
Dimitri Fontaine
03130507ab Call it 4.0.6 now. 2011-10-28 18:04:38 +02:00
Dimitri Fontaine
b36ca061bb Cleanup, commited too fast. 2011-10-28 18:04:00 +02:00
Dimitri Fontaine
6e4f4007ea Review the :checksum patch, implement M-x el-get-checksum. 2011-10-28 18:02:38 +02:00
Gergely Risko
90a86c4d3e Added framework for :checksum support. 2011-10-27 18:27:10 +02:00
Julien Danjou
07ce22d5a5 Always call :post-init after init, even if lazy
Fixes #451

Signed-off-by: Julien Danjou <julien@danjou.info>
2011-10-20 14:47:04 +02:00
Julien Danjou
491ed855ba Add missing autoload flags for interactive functions
Signed-off-by: Julien Danjou <julien@danjou.info>
2011-10-14 16:30:16 +02:00
Dimitri Fontaine
5bbb9c8fdc Forgot to remove the old `el-get-reload' implementation when merging the reload branch... 2011-10-12 21:08:38 +02:00
Dimitri Fontaine
06e4016669 Fix a bug with package init and dependencies.
The init step was skipped for already installed packages that need some
other package to be installed or initialized first.
2011-10-11 20:27:01 +02:00