BREAKING CHANGE: This removes the phpactor.el package in favor of LSP
support via lsp-mode/eglot. Use `+lsp` with the `:lang php` module
instead (with one of the supported LSP servers).
This was done because phpactor.el is on the way out of maintainership,
is redundant with pre-existing phpactor support in lsp-mode/eglot (or
the other, possibly superior LSP servers), and to simplify modules for
whom LSP/Eglot is *the* way to get these features.
Avoid installing a newer (or older) and possibly incompatible copy of
seq.
Also, seq would get installed along with its unit tests, and Emacs will
hang trying to natively compile them, so...
This issue seems to come up a lot, and I've been unable to reproduce it,
but at the very least I can disable the lsp-terraform client for folks
that don't need it.
Fix: #7713
Ref: emacs-lsp/lsp-mode#3577
- Ensures `org-plantuml-jar-path` is less likely to be overwritten if the
user changes it.
- Sets `org-plantuml-jar-path` and `plantuml-default-exec-mode` after
calling `plantuml-download-jar`, so things Just Work™️ without
needing the user to know to update these variables.
Close: #7992
‘go-remove-unused-imports’ is an obsolete command (as of 1.7.0); set
‘gofmt-command’ to goimports instead, or use LSP and gopls’s "Organize
Imports" code action.
Ref: dominikh/go-mode.el@166dfb1e09
BREAKING CHANGE: Removes go-guru from the Go module. It has been
deprecated upstream in favor of gopls, the official Go LSP server.
Close: #7995
Ref: golang/go/issues/65880
Co-authored-by: Henrik Lissner <git@henrik.io>
Otherwise, each time `+workspace-save` is called, all prior saved
workspaces would be deleted from `+workspaces-data-file` before
inserting the new one.
While I don't intend to respect `evil-disable-insert-state-bindings`
everywhere, exhaustively (such as org's rebinding of return or tab), I
will do it for non-essential keybinds that have a high likeliness of
overwriting navigation commands (like meta keys).
This was an elusive bug caused by two upstream behaviors:
1. `kill-buffer` will silently refuse to kill a buffer if there is a
thread associated with it.
2. `global-diff-hl-mode` activates `diff-hl-mode` in *most* buffers,
even invisible ones. This calls `diff-hl-update` each time
it does. This isn't a problem *unless* you have `diff-hl-update-async`
enabled, because it creates a thread every time `diff-hl-update` is
called. That means for every buffer -- real or transient -- you have
a new thread queued.
And this caused two main issues:
1. Temporary buffers are often opened and closed very rapidly (often
faster than the thread can complete), so they weren't getting cleaned
up. I hope you weren't too attached to your memory, because you'll
have a lot of buried buffers to feed before long!
2. In cases where `diff-hl-update` simply takes a long time, multiple
calls to it would queue more threads. When Emacs eventually yields
the CPU to them, you'll get random,
impossible-to-predict-or-track-down freezes. Joy!
This may very well be enough reason to disable `diff-hl-update-async` by
default, but I didn't want to give up on it *just* yet, despite how
inelegant this solution is...
Fix: #7954Fix: #7991
- Remove +dired--suppress-hooks-in-previews-a, because Dirvish already
does this.
- Exploit dirvish-preview-environment instead of hardcoding the
enable-local-variables let-binding for the child process. Its defaults
are more reasonable.
BREAKING CHANGE: Removes magit-todos from the magit module. I've always
thought my choice to include it as a 'reasonable default' in this module
was a bit dubious. Given how trivial the config is, I leave it to users
to install if they want it, instead.
Prior to this, I used window-width to determine whether file details
should be hidden, but there was a jarring delay on `dirvish-setup-hook`
that made the effect look awful (especially when walking up and down
file trees).
This changes `dirvish-hide-details` to accept a list of contexts where
it should be enabled, which I think is more elegant. Of course,
`dirvish-hide-details` will fall back on old behavior if set to `t` or
`nil`.
I'll consider upstreaming it later (and perhaps doing similar for
`dirvish-hide-cursor`).
Ref: #6760
Currently, setting `dirvish-use-mode-line` to nil blanks out the
mode-line, and setting it to `t` makes Dirvish use its own mode-line. To
get the default mode-line, `dirvish-mode-line-format` needs to be set to
nil, but even then Dirvish will prepend a bar to the default-mode-line
so it can control its height, which I think is a confusing chain of
causes and effects.
This changes the behavior such that `dirvish-use-mode-line` controls
whether `dirvish-mode-line-format` will be used or not. I'll upstream
this to hlissner/dirvish later.
Fix: #8000