doomemacs/lisp
Henrik Lissner 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
..
cli fix(cli): retry on failure to clone packages (or abort) 2024-03-24 18:03:12 -04:00
lib refactor(lib): doom-region-end: extract marker 2024-03-11 03:59:37 -04:00
demos.org refactor(emacs-lisp): elisp-demos: reorganize Doom demos 2024-02-04 17:54:29 -05:00
doom-cli.el fix(cli): silence output from site-lisp 2024-03-11 03:59:37 -04:00
doom-editor.el fix: save-place: don't move point more than once 2024-03-13 01:00:38 -04:00
doom-keybinds.el feat: allow setting evil states for leader keys 2024-03-22 10:24:21 -04:00
doom-lib.el nit: revise and reformat comments 2024-03-11 00:53:44 -04:00
doom-modules.el fix: void-variable doom-modules-load-path error 2024-02-06 23:59:30 -05:00
doom-packages.el nit: general reformatting & minor comment revision 2023-09-11 23:56:21 +02:00
doom-profiles.el refactor: s/doom-modules-dirs/doom-module-load-path/ 2024-02-05 17:21:20 -05:00
doom-projects.el refactor!: deprecate IS-* OS constants 2024-02-04 17:54:29 -05:00
doom-start.el fix: doom-incremental-first-idle-timer: type error when nil (part 2) 2024-03-11 03:59:37 -04:00
doom-ui.el refactor: inline doom--make-font-specs 2024-03-19 20:47:21 -04:00
doom.el tweak: enable startup optimizations in debug mode 2024-03-19 21:42:09 -04:00
init.el fix: add :depth field to modules 2022-09-24 18:46:21 +02:00
packages.el refactor: remove explain-pause-mode 2024-03-11 00:53:44 -04:00