From this point on, Straight will *not* download packages from tarballs
by default. There are too many edge cases for this that catch up
beginners who have BSD tar installed and get undecipherable tar errors,
and Straight offers no fallback or easy way to change what tar
executable it uses.
Packages that have already been installed won't be affected until the
next time they are updated/reinstalled.
Users can still opt back into tarballs by adding this to
$DOOMDIR/packages.el:
(setq straight-vc-use-snapshot-installation t)
Amend: 8cdddd87d9Fix: #8530
When default-directory is is located on a remote host, we should search for "rg"
on the remote host. (executable-find) without the optional 't' will
search only on the local host.
Fix: #8525
BREAKING CHANGE: Moves ws-butler, dtrt-indent, and whitespace defaults
out of Doom's core and into a new module. ws-butler is gated behind
+trim and dtrt-indent behind +guess. Users who depend on/like these
packages will need to enable the new module and their respective
flags (which is the default going forward).
This change is motivated by an ongoing effort to slim down Doom's
core (by (re)moving non-essentials from it).
This also addresses an issue where dtrt-indent would vastly increase
load times for some major-modes (e.g. elixir-mode & elm-mode, see #7537)
by restricting it to non-project files and non-read-only buffers AND
excludign those two major modes from indent guessing.
Fix: #8516Fix: #7537
Allows the association of arbitrary envvars or variables with the build
artifacts of a package. If they change, the package is rebuilt on the
next 'doom sync'. This is a temporary measure, which is why this is not
touted as a new feature. It will be replaced in v3.
Yes, yes. I did a stupid here. I depend on the order of a hash table,
and sure enough, that came back to bite me when that changed internally
in Emacs 29. In practice, this meant packages were getting
installed/rebuilt in reverse order, which, besides some odd output
during 'doom sync' for users on 29+, didn't pose any overt issues, but
may have caused strange, inexplicable byte-code warnings/errors.
But, rather than do the smart thing and *not* do this, I do the next
best thing: procrastinate! Because the solution is non-trivial (I don't
control the hash table in question) and this is precisely the sort of
technical debt I've fixed in v3, and I'd really, *really* rather beat my
head on that wall, rather than this one.
Prior to this, we had some rudimentary retry logic for failed git clones
resulting in an empty repo, but it didn't respond to other legit
errors (like connection errors or legit remote failures). This one does,
retrying in more contexts.
Close: #8523
Co-authored-by: NightMachinery <NightMachinery@users.noreply.github.com>
GNAT Project modes (`gpr-mode` and `gpr-ts-mode`) exist to handle .gpr files.
These modes are now used instead of the Ada major mode.
Lines may need to be re-indented when RET is pressed. This is to handle cases
of incomplete syntax and ambiguity in what may be entered when an empty line is
initially indented. Re-indenting after text has been entered corrects
incorrectly guessed initial indentation. To accommodate this scenario, RET is
remapped to `reindent-then-newline-and-indent`.
Also updates documentation to reflect these changes.
While not strictly necessary (because apheleia uses
`provided-mode-derived-p` for its major mode tests), many *-ts-modes
didn't declare themselves children of their base modes until 30.1+.
It's too much hassle to claim either 'SPC b s' or 'SPC f s' for the
saving-without-formatting command (and to justify why one over the
other), so porque no los dos? Plus, I now leave 'C-x C-s' (save-buffer)
alone; principle of least surprise and what not.
Fix: #8460
Ref: https://xkcd.com/1172
BREAKING CHANGE: This finally removes org-roam v1, which has been
deprecated for nearly 5 years (since 5ef733b). Most users should already
be on it. v2 has a migration wizard for anyone still on v1, which will
kick in if it detects a v1 roam db.