Commit graph

69 commits

Author SHA1 Message Date
Jimmy Yuen Ho Wong
d3f847eaee Fix broken test due to
GitHub-reference: https://github.com/jwiegley/use-package/issues/850
2020-07-12 15:57:49 -04:00
Ted Zlatanov
8c31c57106 use-package-core.el: use the Emacs set-default function to avoid saving :custom vars twice 2020-06-22 14:24:09 -04:00
John Wiegley
203d15e34e Merge branch 'master' into call-hooks-even-if-no-config 2020-06-18 11:03:35 -07:00
Nahuel Greco
44c837879e typo, should be a vector, not a bytecode object
Solves https://github.com/jwiegley/use-package/issues/842
2020-05-20 13:44:47 -03:00
John Lee
0ec4660f74 Add special value back again, in case needed for backwards compat
I don't know why this special value exists, but perhaps old client code uses it.

The additional `t' in the macro expansion is accidental but not harmful I guess.

Copyright-paperwork-exempt: yes
2020-05-09 23:46:53 +01:00
John Lee
f30d5761af Even when there's no :config, run any pre/post config hooks
i.e., following the existing docs for use-package-inject-hooks, these hooks are
run:

use-package--foo--pre-config-hook
use-package--foo--post-config-hook

This should make config customisations more predictable (for example, spacemacs
uses these hooks extensively to allow 'layers' to be customised).

I got rid of the "special" default value for :config, because it doesn't seem to
be treated any differently than nil.

Fixes https://github.com/jwiegley/use-package/issues/785

Copyright-paperwork-exempt: yes
2020-05-09 23:46:53 +01:00
John Wiegley
8b8522650e Clarify the documentation for :after 2020-03-04 16:29:16 -08:00
Jonas Bernoulli
8c7fa11a3f Fix typos 2019-11-06 13:49:46 +01:00
Radon Rosborough
4c8d5f0b21 Switch from require' to load' + `featurep' 2019-07-15 22:11:13 -07:00
Radon Rosborough
27fd32c47b Use require', not load', when byte-compiling 2019-07-12 08:25:21 -07:00
Vincent Zhang
c297dfdd20 Make custom-face evaluate elisp
Fix https://github.com/jwiegley/use-package/issues/696.

Copyright-paperwork-exempt: yes
2019-05-29 17:42:19 +08:00
Andrew Stribblehill
95f24f9628 Add a line of documentation for (use-pacakage ... :hook)
Copyright-paperwork-exempt: yes
2019-04-04 11:19:52 +02:00
John Wiegley
7e40a9c424 Merge pull request from conao3/fix_default_value
fix gethash default value for use-package-statistics-time
GitHub-reference: https://github.com/jwiegley/use-package/issues/681
2018-11-19 15:50:27 -08:00
Jonas Bernoulli
fc6fef6869 Silence byte-compiler on Emacs 25
Emacs 25 defined a global variable `features', which triggers a
warning "Lexical argument shadows the dynamic variable features".
That's not `use-package's fault, but we should suppress the warning
anyway, so that there is no additional noise that would cause us to
potentially overlook warnings that absolutely have to be addressed.
2018-11-10 18:52:37 +01:00
Alex Branham
bdd7fd3565 Fix use-package-normalize-function 2018-06-13 20:24:09 -05:00
Alex Branham
e2e6f9a44b Enable lexical binding
This supersedes https://github.com/jwiegley/use-package/issues/617 and closes https://github.com/jwiegley/use-package/issues/648
2018-06-13 20:24:09 -05:00
Naoya Yamashita
db35639457 fix gethash default value for use-package-statistics-time
float-time expect list like (HIGH LOW USEC PSEC)
> HIGH has the most significant bits of the seconds, while LOW has the
> least significant 16 bits.  USEC and PSEC are the microsecond and
> picosecond counts.
by `current-time` in editfns.c
2018-05-19 14:21:26 +09:00
Damien Cassou
69a561b86b Fix compile-time warnings due to the statistics-reporting code
The code worked because the file is using dynamic binding.
2018-03-12 08:42:16 +01:00
Damien Cassou
2a47998844 Add missing require
This is used for `hash-table-keys`.

Fix https://github.com/jwiegley/use-package/issues/644.
2018-03-12 08:42:16 +01:00
John Wiegley
cba5a11368 Revert "Fix report" 2018-03-11 21:37:02 -07:00
Damien Cassou
b28efb4847 Fix compile-time warnings due to the statistics-reporting code
The code worked because the file is using dynamic binding.
2018-03-11 13:24:08 +01:00
Damien Cassou
bce655f616 Add missing require
This is used for `hash-table-keys`.

Fix https://github.com/jwiegley/use-package/issues/644.
2018-03-11 13:23:49 +01:00
Damien Cassou
ae22d74a16 Use a tabulated-list to display package configuration statistics
Fix https://github.com/jwiegley/use-package/issues/641
2018-03-08 21:00:31 +01:00
Justin Burkett
46503b194c Fix usage of plist argument in use-package-normalize-plist
Previously the argument was never used.
2018-02-06 12:48:51 -05:00
Justin Burkett
09266283b9 Add use-package-ignore-unknown-keywords option
This option allows use-package to skip over keywords it doesn't recognize.
2018-02-06 11:42:06 -05:00
John Wiegley
ab918196fa Revert "Merge pull request from jabranham/lexical-bindings"
This reverts commit d21787f1d6, reversing
changes made to fd8a3510fd.
GitHub-reference: https://github.com/jwiegley/use-package/issues/617
2018-01-27 14:13:48 -08:00
John Wiegley
566a2ea3a1 Revert "Move variable bindings to the bottom of each file"
This reverts commit c29193bf07.
2018-01-27 14:09:10 -08:00
John Wiegley
c29193bf07 Move variable bindings to the bottom of each file 2018-01-27 14:07:11 -08:00
Alex Branham
4c3abcf4eb Fix byte compiler warnings 2018-01-27 10:19:42 -06:00
Alex Branham
88bcb8b96d Use lexical bindings and remove cl package 2018-01-27 10:01:10 -06:00
Alex Branham
8a6430835f Prefer org-table-align to orgtbl-ctrl-c-ctrl-c
org-table-align is an autoloaded function so the byte compiler can
find it. orgtbl-ctrl-c-ctrl-c isn't so we get a warning about
undefined functions.
2018-01-08 19:21:46 -06:00
John Wiegley
13a9e339f2 Merge pull request from justbur/elisp-cap
Handle automatic macro expansion by elisp-completion-at-point
GitHub-reference: https://github.com/jwiegley/use-package/issues/599
2017-12-26 11:04:41 -08:00
John Wiegley
44cb99fcc7 Merge pull request from nickmccurdy/render-report-table
Render the use-package-report table using Org
GitHub-reference: https://github.com/jwiegley/use-package/issues/592
2017-12-26 11:04:13 -08:00
wouter bolsterlee
1fdfd46fb2 Fix sanity check for correct :custom-face format
Instead of testing the length of each form passed to :custom-face,
the sanity check would test the number of forms passed to :custom-face,
causing it to fail when more than 2 face customisations are used.

Fixes https://github.com/jwiegley/use-package/issues/600.

Copyright-paperwork-exempt: yes
2017-12-20 08:31:56 +01:00
Justin Burkett
9638870f53 Handle automatic macro expansion by elisp-completion-at-point
The function `elisp--local-variables' inserts an unbound variable,
`elisp--witness--lisp', into macro forms to determine the locally bound
variables for `elisp-completion-at-point'. It ends up throwing a lot of errors
since it can occupy the position of a keyword (or look like a second argument to
a keyword that takes one). Deleting it when it's at the top level should be
harmless since there should be no locally bound variables to discover here
anyway.
2017-12-19 22:30:59 -05:00
John Wiegley
13fb5f4f2e Guard a call to display-warning with ignore
Fixes https://github.com/jwiegley/use-package/issues/589
2017-12-17 00:35:01 -08:00
Nick McCurdy
cb15dffbd7 Render the use-package-report table using Org
I noticed that the "Gathering Statistics" instructions for rendering the Org
table could be automated for convenience. Now the table is reformatted
automatically, and you can still manually sort it. I'm not sorting it by default
to maintain the same order of use-package forms for easier troubleshooting.
2017-12-16 14:54:08 -05:00
John Wiegley
2d226310f1 All the second argument in use-package-defaults lists to be a function
Address the question raised in https://github.com/jwiegley/use-package/issues/591
2017-12-15 22:48:42 -08:00
John Wiegley
4aa9b0cd6a Minor simplification of a function 2017-12-10 21:36:41 -08:00
John Wiegley
ec84ed0dfb Fix a scoping issues with multiple occurrences of :bind
Fixes https://github.com/jwiegley/use-package/issues/585
2017-12-09 16:29:11 -08:00
John Wiegley
7e458c640c use-package-normalize/:disabled has the wrong number of arguments 2017-12-08 00:28:14 -08:00
John Wiegley
0068501aa0 Remove several unnecessary calls to `ignore' 2017-12-07 22:40:48 -08:00
John Wiegley
8fefa49d39 Changes to the way auto-deferral is indicated
This change adds a new extension hook `use-package-autoloads/<KEYWORD>` for
specifying exactly which autoloads a keyword should imply. This is the proper
way to indicate autoloads, rather than adding to the `:commands` entry as was
done before.

Further, autoloading now must occur in order to cause implied deferred
loading; if :bind is used with only lambda forms, for example, this will not
cause deferred loading without `:defer t`.
2017-12-07 13:14:32 -08:00
John Wiegley
80e8a599b4 Introduce new customization variable `use-package-merge-key-alist' 2017-12-07 13:13:49 -08:00
John Wiegley
96ecfab9e4 Use cl-gentemp in another place
This avoids "Variable unknown" errors if a byte-compiled init.elc happening to
encounter an error while evaluating an :init or :config block.
2017-12-06 22:52:34 -08:00
John Wiegley
7803571280 Correctly fix the problem of unreferenced symbols after compilation
Fixes https://github.com/jwiegley/use-package/issues/571
2017-12-06 20:59:10 -08:00
John Wiegley
20694696b2 Revert "Pre-expand lexical-let, since otherwise it requires cl to be loaded"
This reverts commit 7cc17cee8f.
2017-12-07 04:53:10 +00:00
John Wiegley
7cc17cee8f Pre-expand lexical-let, since otherwise it requires cl to be loaded
Fixes https://github.com/jwiegley/use-package/issues/571
2017-12-06 16:56:25 -08:00
John Wiegley
71fc224961 Add documentation for `use-package-report' 2017-12-06 11:53:21 -08:00
John Wiegley
beee6b8d4d use-package-defaults predicate must also receive the package name 2017-12-06 10:51:24 -08:00