Commit Graph

19076 Commits

Author SHA1 Message Date
3643c4dadd fix(cli): void-function directory-empty-p error
directory-empty-p was introduced in 28.1, but Doom still supports 27.1,
so 27.x users would see this error when running any bin/doom command
that clones packages.

Fix: #7779
Amend: 1fa8d3a4b9
2024-03-30 11:50:57 -04:00
5f5a163c49 bump: :lang org
bastibe/org-journal@605a7eb984 -> bastibe/org-journal@17b34ce8df
emacs-jupyter/jupyter@da306a6dbd -> emacs-jupyter/jupyter@2059d79b2f
emacs-straight/org-mode@7a6bb0904d -> emacs-straight/org-mode@e9c288dfac
emacsmirror/org-contrib@8fbaceb247 -> emacsmirror/org-contrib@d4056ce5d5
hakimel/reveal.js@16f6633014 -> hakimel/reveal.js@6410c756ea
hniksic/emacs-htmlize@dd27bc3f26 -> hniksic/emacs-htmlize@09d43dfa44
https://repo.or.cz/org-contacts.git@7f03eafaad2e -> https://repo.or.cz/org-contacts.git@6660db078f76
jkitchin/ox-clip@ff117cf3c6 -> jkitchin/ox-clip@a549cc8e17
kaushalmodi/ox-hugo@cb1b6cfd7b -> kaushalmodi/ox-hugo@c4156d9d38
magit/orgit@84bcb5c318 -> magit/orgit@a57beefa24
oer/org-re-reveal@7c39d15b84 -> oer/org-re-reveal@1944ac53d4
org-noter/org-noter@8be3763847 -> org-noter/org-noter@9e4f57957b

Fix: #7776
2024-03-29 23:41:13 -04:00
b01e496405 fix(cli): doom sync: rebuild-all loop
Addresses an edge case where 'doom sync' could fall into an inescapable
'rebuild all packages' loop.

Fix: #7775
2024-03-29 23:41:12 -04:00
65240e9b92 fix(cli): suppress 'checked out X' when X = nil 2024-03-29 12:32:12 -04:00
b533f5496c tweak(corfu): corfu-auto-delay: 0.1 -> 0.18
At 0.1, Corfu pops up too aggressively and too often, even for fast
typists. This is especially disruptive with slow backends that might
block Emacs. I think 0.18-0.24 is the goldilocks zone, so I'll start
with 0.18, and maybe increase it later.
2024-03-28 16:58:28 -04:00
544e579c44 fix(cli): doom upgrade: ensure upgrade remote is deleted
It seems the temporary branch that 'doom upgrade' creates is sometimes
left over after a 'doom upgrade', preventing the next 'git fetch' from
completing.

Ref: #7771
2024-03-28 09:43:43 -04:00
b443371981 fix(cli): doom install: $DOOMDIR templates (part 2)
Caused by a regression originally introduced in b6b755d, but incorrectly
fixed in 89c56a3. Don't code while sleep deprived, kids.

Amend: 89c56a3393
Amend: b6b755dea4
2024-03-28 00:23:17 -04:00
89c56a3393 fix(cli): doom install: $DOOMDIR templates
Caused by a regression introduced in b6b755d.

Amend: b6b755dea4
2024-03-27 17:15:43 -04:00
3f966f49d8 fix(cli): doom upgrade: remove doom-compile-clean call
This function was removed in 63c470b.

Amend: 63c470bff3
2024-03-27 10:27:44 -04:00
d6a3450917 fix(cli): shell-quote-argument: wrong-number-of-args error
shell-quote-argument's second argument was introduced in 29.1. Users on
older versions of Emacs will get an error.

Amend: d5bad5b430
2024-03-27 10:27:05 -04:00
b6b755dea4 fix(cli): doom install: $DOOMDIR paths in output
Close: #7768
Co-authored-by: plajjan <plajjan@users.noreply.github.com>
2024-03-27 09:39:05 -04:00
201051c368 fix(cli): doom sync: suppress rebuild prompt when upgrading
12a765c introduced suppression of package-rebuilding prompts on 'doom
upgrade', but inadvertently reversed the check. This fixes that (and
refactors the if/or tree into a `cond`).

Amend: 12a765c509
2024-03-27 00:26:18 -04:00
aef2b12100 feat(cli): doom upgrade: add -B option
To mirror doom sync's -B option.
2024-03-27 00:26:18 -04:00
d5bad5b430 fix(cli): straight: regurgitate type errors as connection errors
See included comment for explanation.
2024-03-26 22:58:56 -04:00
c0c52f0f61 fix: ensure load-path et co are set on doom/reload
This addresses a number of missing-package errors after running
doom/reload.

Fix: #7764
Fix: #7636
Fix: #7182
2024-03-26 22:25:29 -04:00
12a765c509 feat(cli): doom sync: change -B to suppress rebuilding
Prior to this, -B would suppress the prompt for package rebuilding if
your Emacs version or hostname changed. Now, it fully inhibits
rebuilding in either case.

Fix: #7760
Ref: cff091982e
2024-03-26 21:36:14 -04:00
d256b597f2 bump: :tools magit
alphapapa/magit-todos@1e9acc0ba6 -> alphapapa/magit-todos@332ce763f7
magit/forge@68771ca4d5 -> magit/forge@2a3b41eb62
magit/magit@0963697f24 -> magit/magit@0e8f25a8d8
2024-03-26 12:07:51 -04:00
45fd893074 refactor(ligatures): test for harfbuzz feature
A `harfbuzz` feature was introduced in 3e81655.

Ref: 3e81655b0e
2024-03-26 10:39:59 -04:00
7acfb0c77c nit: minor comment reformatting & revision 2024-03-26 10:39:24 -04:00
639fcc6a2e tweak(emacs-lisp): remove pin truncation
This removes the truncation of `package!` `:pin`s. This was originally
intended to make packages.el files easier to skim, but in hindsight it
didn't really. It served little other purpose but to make it harder for
folks to interact with the :pin string.
2024-03-26 10:30:34 -04:00
90070c639a fix(workspaces): remove ivy integration
Due to upstream changes in ivy-rich, +workspace/switch-to throws a
`wrong-type-argument listp leaf` error. As I plan to phase out Ivy
support (and the Ivy module) in the long term, I'll simply remove
ivy (and ivy-rich) integration in the workspaces module, rather than
update it.

Fix: #7499
Fix: #7173
2024-03-26 10:11:34 -04:00
286be1b249 fix(cli): void-variable doom-profile-env-file-name error
This variable ref snuck into cff0919, but hasn't been introduced yet.

Fix: #7755
Amend: cff091982e
2024-03-24 18:55:43 -04:00
6d682eef85 fix(cli): void-function doom-packages-install error
Function was renamed to doom-packages-ensure in cff0919.

Fix: #7755
Amend: cff091982e
2024-03-24 18:38:18 -04:00
8d50cd8bfb tweak(lib): print!: join (path ...) segments 2024-03-24 18:09:54 -04:00
2df24d29f3 bump: :core
Fuco1/smartparens@0778a8a840 -> Fuco1/smartparens@ddc6233ea6
bbatsov/projectile@e45f0b0cc4 -> bbatsov/projectile@0163b335a1
emacs-compat/compat@eb8fbfa558 -> emacs-compat/compat@8d4e8a3666
emacs-straight/project@10a6b691e3 -> emacs-straight/project@b6989856ab
joddie/pcre2el@018531ba0c -> joddie/pcre2el@380723b270
jscheid/dtrt-indent@0230ec5032 -> jscheid/dtrt-indent@5d1b44f9a1
justbur/emacs-which-key@4d20bc8525 -> justbur/emacs-which-key@96911a1d3f
noctuid/general.el@bda777cd30 -> noctuid/general.el@ced143c30d
radian-software/straight.el@b3760f5829 -> radian-software/straight.el@b1062df10b
rainstormstudio/nerd-icons.el@c6a4acf194 -> rainstormstudio/nerd-icons.el@8095215a50
2024-03-24 18:08:09 -04:00
1462f87623 bump: :tools tree-sitter
emacs-tree-sitter/tree-sitter-langs@20fbbb8573 -> emacs-tree-sitter/tree-sitter-langs@c56cb51104
meain/evil-textobj-tree-sitter@220ceae065 -> meain/evil-textobj-tree-sitter@a19ab9d89a
2024-03-24 18:03:13 -04:00
e24a583d5c tweak: move project-list-file to profile data dir
Ref: doomemacs/core#1
2024-03-24 18:03:13 -04:00
77df11af11 refactor(cli): remove unused cli/help.el
This file was "renamed" to meta.el at some point, but the old file was
forgotten (and unused).
2024-03-24 18:03:13 -04:00
32ef0989ab fix(cli): appease byte-compiler wrt defcli-obsolete! 2024-03-24 18:03:13 -04:00
bfd21edeeb nit: reformat core packages.el 2024-03-24 18:03:13 -04:00
2591201aa1 refactor(cli): rename 'doom purge' -> 'doom gc'
'doom purge' is now deprecated.

Also changes 'doom sync's -p option to --gc. Since GCing causes the loss
of historical data, I'd rather it be a long option to make it a little
harder to do accidentally.
2024-03-24 18:03:13 -04:00
cff091982e fix(cli): rewrite 'doom sync'; deprecate 'doom build'
This changes 'doom sync' to be smarter about responding to changed
package recipes/pins, changes in Emacs version, or instances where the user
has copied a config to a new system.

In all these cases, the user would formerly have to know about a
specific combination of 'doom sync -u' and 'doom build' to ensure Doom
is in a good state. With this change, 'doom sync' handles all these
cases.

Also, 'doom build' is now deprecated (and 'doom sync' now has a
--rebuild option to mimic its old behavior).

Also also, sometimes, a package may silently fail when cloned (which
used to result in an empty repo). Now, if this is detected, cloning will
be re-attempted up to 3 times before aborting with much more visible
error.

Note: these are stopgap solutions, until v3 is finished.
2024-03-24 18:03:12 -04:00
1fa8d3a4b9 fix(cli): retry on failure to clone packages (or abort)
Something often reported are file-missing errors when a package that
should be present isn't. This can easily happen if, say, during a 'doom
sync' or 'doom upgrade' a package fails to clone correctly and the user
misses the errors, then tries to carry on as normal. What's worse is
that Straight leaves behind an empty directory, which it treats as a
sign that the package has been cloned correctly, so it doesn't raise any
fuss over them.

With this change, 'doom sync' (and 'doom upgrade') will now try again,
if the clone process fails the first time (up to 3 times) before
aborting the whole process altogether, which should be loud enough for
users not to miss. Note that these failures at 99.99% because of
network (or upstream downtime) issues.

For now, this does leave Doom in an incomplete state (until you try
again when the connection issue is resolved), but a rollback step will
be added in v3 to prevent this, as well as better error messages (as
well as @doomelpa mirror for packages on less reliable hosts, like
codeberg, savannah, etc).
2024-03-24 18:03:12 -04:00
63c470bff3 refactor!(cli): remove compile and clean commands
BREAKING CHANGE: This removes the 'doom compile' and 'doom clean'
commands, and offers no immediate replacement for them (and no plan to
include one). In the future, byte-compilation of Doom's internals will
be baked into 'doom sync', but until then, Doom is not optimized to take
advantage of byte-compilation, and forcing it provides no benefit.
2024-03-24 18:03:12 -04:00
18c88621a4 refactor(vertico): don't use bind-key
This is the only internal usage of :bind, which I want to avoid, because
it pulls in bind-key, which offers no real benefit over just about any
other key binding function or macro, so I'd rather use what is already
available (like map!).
2024-03-24 18:03:12 -04:00
506192199f docs(docker): use after! & don't recommend use-package! 2024-03-24 18:03:12 -04:00
bbadabda51 feat: allow setting evil states for leader keys
This allows adjusting the evil-states a leader key is active for.
2024-03-22 10:24:21 -04:00
89e6b6849e fix(default): restore accidentally gated keybinds (part 2)
I haven't published support for negated flags (e.g. -eglot) yet; this
snuck into 76b4522.

Amend: 76b452278f
Ref: #7745
2024-03-22 10:09:45 -04:00
76b452278f fix(default): restore accidentally gated keybinds
These were accidentally gated as part of 6949451 (#7002).

Amend: 6949451b00
Close: #7745
Co-authored-by: raszi <raszi@users.noreply.github.com>
2024-03-22 10:08:20 -04:00
cb6e3f0e89 fix(modeline,everywhere): adjust checker -> check
As part of the recent UI bump (665d808d09), the doom-modeline changed
the name of the "checker" segment to "check".

Amend: 665d808d09
2024-03-22 10:07:57 -04:00
665d808d09 bump: :ui
Alexander-Miller/treemacs@df26b6ab9a -> Alexander-Miller/treemacs@8c6df39f01
dgutov/diff-hl@b8b2727a72 -> dgutov/diff-hl@9662083943
doomemacs/themes@ff26f26ea3 -> doomemacs/themes@37d2182f50
jrblevin/deft@28be94d89b -> jrblevin/deft@bb1a16b87c
seagle0128/doom-modeline@bf880ae56f -> seagle0128/doom-modeline@e09b8e989f
2024-03-21 12:02:02 -04:00
a83091469b docs(corfu): debugging cape-dabbrev 2024-03-21 11:29:50 -04:00
2bdeabb0cf refactor(corfu): consolidate +orderless logic without vertico
This tidy ups the corfu module to use the logic when a user enables
corfu +orderless without enabling vertico. Since that's probably a niche
situation, we only specify commit to pin to orderless in the vertico
module so that contributors aren't tripped up with trying to remember to
update orderless in two different code locations. Of course, if this
turns out to be a more popular use-case we can re-evaluate this logic.
2024-03-21 11:29:32 -04:00
d3a00ba6af nit(vertico): fix spelling in some docstrings 2024-03-21 11:29:19 -04:00
222dc47060 feat(vertico): add orderless annotation filtering
Ref: oantolin/orderless#162
2024-03-21 11:29:19 -04:00
cd16150b80 bump: :lang julia
JuliaEditorSupport/julia-emacs@7a8c868e0d -> JuliaEditorSupport/julia-emacs@2dfc869ff6
gcv/julia-snail@d36653bb93 -> gcv/julia-snail@a25ce84748
non-Jedi/eglot-jl@7dc604fe42 -> non-Jedi/eglot-jl@1d9cab6823
2024-03-21 11:27:47 -04:00
367b671134 refactor(lsp): suffix advice & remove redundancy
- Advice functions ought to have a -a suffix.
- `eglot-send-changes-idle-time` is already 0.5 upstream, by default.
2024-03-21 11:27:18 -04:00
d22fa5a670 fix(vertico): consult-dir: don't guess user from containers
The tramp string used to connect to the container uses the first
`container-runtime ps` argument as a username, but the first argument
returned is the container ID, not a username.

Close: #7674
Co-authored-by: bergmannf <bergmannf@users.noreply.github.com>
Co-authored-by: elken <elken@users.noreply.github.com>
2024-03-20 03:09:05 -04:00
73f19acb66 fix(julia): revise julia-snail settings
- julia-snail-multimedia-enable is buffer-local, so setq-default is
  needed.
- julia-snail-popup-display-eval-results is already :command upstream.
- julia-snail will automatically calculate a (reasonable) value for
  julia-snail-popup-display-face in the absence of an explicit setting.
- julia-snail-popup-display-face was filled with references to
  doom-themes symbols that aren't global. It's any wonder they worked
  before this. Besidse, it's best we not couple this module with one
  specific theme (or theme pack in this case).

Close: #7625
Co-authored-by: ngharrison <ngharrison@users.noreply.github.com>
2024-03-20 00:16:29 -04:00
0ea84d1c3b feat(vertico): add consult-yasnippet
Close: #7471
Co-authored-by: LemonBreezes <LemonBreezes@users.noreply.github.com>
2024-03-20 00:16:29 -04:00