Henrik Lissner
c7254e7bdc
Major optimization refactor, across the board
...
+ enable lexical-scope everywhere (lexical-binding = t): ~5-10% faster
startup; ~5-20% general boost
+ reduce consing, function calls & garbage collection by preferring
cl-loop & dolist over lambda closures (for mapc[ar], add-hook, and
various cl-lib filter/map/reduce functions) -- where possible
+ prefer functions with dedicated opcodes, like assq (see byte-defop's
in bytecomp.el for more)
+ prefer pcase & cond (faster) over cl-case
+ general refactor for code readability
+ ensure naming & style conventions are adhered to
+ appease byte-compiler by marking unused variables with underscore
+ defer minor mode activation to after-init, emacs-startup or
window-setup hooks; a customization opportunity for users + ensures
custom functionality won't interfere with startup.
2017-06-09 00:47:45 +02:00
Henrik Lissner
a2f14183a1
Fix double package-refresh on first install
2017-06-06 12:01:10 +02:00
Henrik Lissner
27bfa14def
General refactor + cleanup
2017-06-05 14:23:17 +02:00
Henrik Lissner
435fda0f41
Add :ignore & :freeze support to package!
2017-06-05 14:21:07 +02:00
Henrik Lissner
e8a94535da
Fix package update not deleting old folder
2017-06-05 12:35:51 +02:00
Henrik Lissner
1c6ecc660a
Improve package management feedback
...
With quelpa updating fixed, there is a longer delay on package update.
So I added a 'looking for outdated packages...' message, and improved
the formatting of backtraces in debug output.
2017-06-03 21:31:16 +02:00
Henrik Lissner
ca96b0d9c5
Fix wrong-type-argument on quelpa package update
2017-06-03 21:30:41 +02:00
Henrik Lissner
09ec857c60
Fix outdated quelpa package detection
2017-06-03 21:29:33 +02:00
Henrik Lissner
6807a5fda8
Rewrite how doom-update-package updates from ELPA
...
This is an attempt to make package updating atomic. Previously, if
a package failed to update, it would've been deleted.
2017-06-03 21:01:32 +02:00
Henrik Lissner
45627d6ea6
Initialize more state for package management fns
2017-06-03 12:05:43 +02:00
Henrik Lissner
e4a6780775
How did I miss this mistake?! Argh!
...
Must've slipped through during one of a 4am debugging session.
2017-06-03 12:05:43 +02:00
Henrik Lissner
29091c40ad
Refactor doom-refresh-packages (and make it async)
2017-05-28 02:48:20 +02:00
Henrik Lissner
42a63c661b
Use persistent-soft's native TTL expiration
...
Don't need to reinvent the wheel.
2017-05-26 20:22:45 +02:00
Henrik Lissner
8615bf23ca
Move doom/am-i-secure to autoload/debug
2017-05-26 20:22:45 +02:00
Henrik Lissner
2cd0818801
Fix error cascade in doom--condition-case!
2017-05-26 20:22:45 +02:00
Henrik Lissner
5e894027c5
Improve error handling for package management
2017-05-19 22:30:44 +02:00
Henrik Lissner
e678d13ed6
Use HTTPS ELPA sources & verify TLS ( #72 )
2017-05-19 22:30:34 +02:00
Henrik Lissner
323b2f6c2f
Refactor package management: better feedback & bug fixes
2017-05-19 02:57:39 +02:00
Henrik Lissner
ac3e63715d
core/autoload/packages: refactor
2017-05-16 00:49:35 +02:00
Henrik Lissner
1b253f5bad
Turn off nosave-p flag on package-delete
...
Prevents false positives when updating packages
2017-05-15 22:35:57 +02:00
Henrik Lissner
c492379e07
doom-install-package: inherit plist from doom-packages
2017-05-15 20:26:32 +02:00
Henrik Lissner
7f6c38fcb6
Fix package updater unable-to-remove error
2017-05-15 11:09:44 +02:00
Henrik Lissner
7d7ade82b3
Fix doom-update-package errors for unreachable dependencies
2017-05-14 14:37:38 +02:00
Henrik Lissner
25fa4e019c
General refactor & cleanup
...
+ refactor package management
+ core-editor: describe ediff
+ core-popups: alphabetized hack blocks
+ ui/doom-modeline: refactor buffer path fn
+ feature/version-control/+git: autoload magit-blame
2017-05-14 09:56:32 +02:00
Henrik Lissner
49b4b39dfe
autoload/packages: refactor + improve output consistency
2017-04-18 05:45:47 -04:00
Henrik Lissner
4159da2f37
autoload/packages: no-byte-compile = t
2017-04-18 05:44:39 -04:00
Henrik Lissner
8854573d2b
Package management: fix wrong-type-argument errors in error handling
2017-04-18 05:09:15 -04:00
Henrik Lissner
e57ba47c5a
General cleanup + refactor
2017-04-17 16:54:31 -04:00
Henrik Lissner
5ae94b765c
PRAISE BE TO THE BYTE COMPILER FOR THY SHARP QUOTES
2017-04-17 02:17:10 -04:00
Henrik Lissner
3e0f83261b
Colored autoremoval output + use symbol-name for package names
2017-04-16 11:55:04 -04:00
Henrik Lissner
9288b59d91
Remove spacing in package management output
2017-04-16 11:54:22 -04:00
Henrik Lissner
e48c6c5381
ansi-{format,message}! => {format,message}! (to be generalized)
2017-04-15 01:29:24 -04:00
Henrik Lissner
9c647ec636
doom/packages-install: fix format error on skipped packages
2017-04-12 12:06:19 -04:00
Henrik Lissner
e50dabfde4
Replace ansi plugin with internal ansi library
2017-04-12 10:51:29 -04:00
Henrik Lissner
6e6f1a6698
Package management: color-coded feedback to stdout in terminal
2017-04-12 08:53:54 -04:00
Henrik Lissner
0c23ff43a4
Add doom-protected-packages for excluding packages from autoremoval
2017-04-11 08:43:26 -04:00
Henrik Lissner
e3a33f6a9e
Rename doom-protected-packages => doom-core-packages
2017-04-11 08:42:55 -04:00
Henrik Lissner
e0ab05527c
doom-get-missing-packages: update comment string
2017-04-04 22:17:42 -04:00
Henrik Lissner
4b1543e1df
packages: rewrote doom-get-dependencies-for, add doom-get-depending-on
2017-04-04 22:17:33 -04:00
Henrik Lissner
ba9e7a947b
Remove provide's in autoload libraries (unnecessary)
2017-04-04 22:16:39 -04:00
Henrik Lissner
87a93b1d82
Replace doom--version-list-str with package-version-join
2017-04-04 13:16:11 -04:00
Henrik Lissner
e1518e2d27
Fix package-refresh-contents loop bug in package management
2017-04-04 12:29:38 -04:00
Henrik Lissner
06b1a8c928
Reload (via server if noninteractive) after pkg install/update/autoremove
2017-03-25 01:03:40 -04:00
Henrik Lissner
e967412687
Remove possibility of duplicates in package management functions
2017-03-14 15:18:36 -04:00
Henrik Lissner
079be42949
cl-pushnew: use 'eq instead of 'eql
2017-03-05 14:18:35 -05:00
Henrik Lissner
ab07120ea6
Remove doom/reload
...
This command didn't do what was intended, and it would be too much work
to write one that looks for outdated packages and reloads them.
Instead, just restart Emacs for changes to take effect. This is only
necessary if package management is done outside of Emacs. You
(theoretically) don't have to do anything if doing it from the inside.
2017-03-04 00:26:37 -05:00
Henrik Lissner
33c88d4f82
Revert macros to ...! name convention (elisp doesn't like @...)
2017-02-23 00:06:12 -05:00
Henrik Lissner
90d6b33667
Fix doom/delete-package not showing a complete package list on interactive use
2017-02-20 21:30:41 -05:00
Henrik Lissner
25da22e32e
doom-get-packages: delete => delq (faster)
2017-02-20 01:22:22 -05:00
Henrik Lissner
545e2a215c
doom/packages-install: fix quelpa/elpa detection in feedback + mention pinned archives
2017-02-20 01:21:57 -05:00