Commit Graph

473 Commits

Author SHA1 Message Date
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
Dimitri Fontaine
6edce206c7 Fix loading of autoloads at init time, I broke that in the refactoring. 2011-10-11 18:02:20 +02:00
Dimitri Fontaine
3c85a01a9b Squash merge branch reload from DarwinAwardWinner, per #434.
That cleans up the code and allow not to depend on the :reload property, and
cater with some edge cases like features currently loaded but no longer
present in the updated package.

Conflicts:
	el-get.el
2011-10-11 10:37:52 +02:00
Dimitri Fontaine
76e8f0a5ae Add some documentation for M-x el-get-reload and the :reload recipe property.
Also bump the minor version number.
2011-10-10 22:24:46 +02:00
Dimitri Fontaine
a7fbd68b70 Fix #434 by having el-get-update call el-get-reload. 2011-10-10 22:06:26 +02:00
Dimitri Fontaine
ff504e2d4d Implement `el-get-reload' with ideas from #434. 2011-10-10 22:04:10 +02:00
Dimitri Fontaine
e6f7a35c41 Fix el-get-install handling of already installed dependencies, per #432. 2011-10-08 21:27:55 +02:00
Dimitri Fontaine
831c55aa27 Update the changelog and el-get-version.
The previous patches are changing the behavior in a user visible way for
recipes.  Update user documentation to reflect the change and upgrade the
minor version number to be able to track this.
2011-10-07 22:57:08 +02:00
Ryan C. Thompson
47970ef7b0 Fix reference to nonexistent variable 2011-10-07 12:46:34 -07:00
Dimitri Fontaine
5bda0cd8ec Have `el-get-init' consider the 'builtin method rather than duplicating code. 2011-10-04 11:53:35 +02:00
Kyle Hargraves
a54ad73fee Add el-get-builtin method, so builtin packages can be "installed" simply 2011-10-03 16:13:07 -05:00
Dimitri Fontaine
d6dc416c74 Fix comments about builtin package inits. 2011-10-02 19:50:17 +02:00
Dimitri Fontaine
9eb20c5d6b Still process recipe's and user's init code for builtin recipes, per #406. 2011-10-02 19:48:21 +02:00
Dimitri Fontaine
5c7f038590 Implement :builtin recipe property and use it for package.rcp, per #406. 2011-10-01 22:31:07 +02:00
Dimitri Fontaine
e8edbf7f40 el-get-version 4.0.2 only includes package.el from Emacs24, as the package recipe. 2011-09-30 20:57:06 +02:00
Dimitri Fontaine
5f5b4132f7 Blind fix bug in el-get-load-package-user-init-file call when el-get-is-lazy. See #405. 2011-09-28 21:16:59 +02:00
Dimitri Fontaine
8876d9ede2 Merge branch 'refactoring'
This refactoring is about cleaning up the code and separating it into
smaller files (think modules).  We begin to change the internal API to
always receive PACKAGE as a symbol, and the main change is how we deal with
the dependencies.

Rather than allow parallel async operations to happen, we solve the
dependencies upfront by doing a topological sort of the :depends we
recursively read in the recipe files.  That allows us to then install only
one package at a time and to avoid initializing the same package twice in
case of multiple reverse depends in the selection.

That in turns allows to simplify the autoload and the main install code a
lot and goes a long way to fix the bug from issue #400 where a package is
said installed but its autoload are not yet available.

The el-get-methods are also splitted each into their own file and the new
function `el-get-register-method' allows to easily add some more privately
if necessary, and should ease contributing new ones too.

This refactoring merge also brings in some test cases.

The main reason why we can merge such a big refactoring now is that the
master's branch targets el-get contributors or elisp hackers that will
handle the breakage.  The el-get-install.el installer file is targeting the
branch "3.stable" where things still work.  This all new setting of the code
is intended for release 4.1, not before.

Conflicts:
	el-get.el
2011-09-23 23:05:02 +02:00
Dimitri Fontaine
f760b1a63a Autoloads fixes. 2011-09-23 14:06:29 +02:00
Dimitri Fontaine
6b6f06567f Fix problems with autoloads.
Note that the new dependencies code ensures that we have only one package
currently installing at any time, so that we don't need timer and defered
autoloads updating anymore.  That simplifies the code a lot, and I think it
fixes issue #400, will check that next.
2011-09-23 11:41:24 +02:00
Dimitri Fontaine
a2202e9212 Use our new dependencies tracking code at init time too. 2011-09-23 11:39:12 +02:00
Dimitri Fontaine
8db0c4d49b Fix the refactoring so that it actually works.
This includes teaching methods that they now work with a symbolp PACKAGE,
some more cleaning up, and some load-path adjustments now that a part of the
code is in a subdirectory (methods).

Also include some of the tests used to convince oneself that the refactoring
didn't break any and all use cases for el-get, with some rough documentation
about how to use them.
2011-09-22 21:48:11 +02:00
Hannu Koivisto
1cbff4af37 Quote arguments when using start-process-shell-command
Fixes installation failure on cases when $HOME contains spaces.

Signed-off-by: Dimitri Fontaine <dim@tapoueh.org>
2011-09-22 17:27:36 +02:00
Dimitri Fontaine
7a4a744d98 Simplify `el-get-install' and dependencies management.
This refactoring branch will need some testing at some point…
2011-09-21 16:06:18 +02:00
Dimitri Fontaine
c273d96fac Get rid of el-get-demand1. 2011-09-20 17:55:14 +02:00
Dimitri Fontaine
0433ca0ce9 Refactoring it all: a beginning. No time for testing yet, just showing ideas. 2011-09-20 15:15:52 +02:00
Julien Danjou
0417d19177 Merge el-get-do-install and el-get-demand1
It's used only once.

Signed-off-by: Julien Danjou <julien@danjou.info>
2011-09-20 10:54:10 +02:00
Dimitri Fontaine
c9a772db9b Adjust the comment version string to 4.0. 2011-09-19 10:55:20 +02:00
Dimitri Fontaine
c269dff963 Update el-get-version to 4.0.0.
This is the first version number of the 4.0 branch, I will update the third
number every once in a while on the road to 4.1 (next stable version).
2011-09-17 21:20:09 +02:00
Dimitri Fontaine
ea8cf2c16e Symbolic commit to open master's branch for 4.0 development. 2011-09-15 22:40:30 +02:00
Dimitri Fontaine
61504f3f8a Prepare 3.1 release.
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.
2011-09-15 22:07:54 +02:00
Dimitri Fontaine
e9baf31d36 Fix a bug in el-get-init-and-install.
We were failing to find the package in the list of packages to init and so
considered them for installation again.  As el-get-install will respect the
current package status, that would result in the package not being
initialized at startup.

Bug found while reading the code to prepare the 3.1 release.
2011-09-15 22:05:03 +02:00
Dimitri Fontaine
e7b9ba829b Fix a bug in el-get-is-lazy case when using el-get-user-package-directory. 2011-09-11 22:48:35 +02:00
Dimitri Fontaine
ee1e1b41fa Code review for el-get-user-package-directory.
That was called el-get-configs-dir, rename to stick to existing emacs
facilities such as user-init-file and user-emacs-directory.  Also move the
loading code into a new function el-get-load-package-user-init-file, so that
it's possible to call it by itself, and so that it can log what happens.
2011-09-11 19:55:09 +02:00
Dimitri Fontaine
05b6435868 Document `el-get-configs-dir' and add a changelog entry. 2011-09-11 18:59:55 +02:00
Saraphim
1eac501e4b Add support for package configs with el-get-configs-dir
Support lazy loading of config files and load all config files before :after

Fixed typo in el-get-configs-dir comment

Add a wrapping function for user init file paths
2011-09-11 17:44:57 +02:00
Dimitri Fontaine
6d86094816 Rename recipe files from *.el to *.rcp, assorted changes. 2011-09-06 21:22:46 +02:00
Dimitri Fontaine
034896645e Fix late night induced bug (forgot to remove a closing paren) 2011-09-04 11:54:52 +02:00
Dimitri Fontaine
4a97ad740f Stop using rather than ... for people whose systems won't default into utf-8. 2011-09-03 21:57:56 +02:00