Commit graph

5071 commits

Author SHA1 Message Date
Henrik Lissner
e9b13393eb dev(ci): fix commit linter receiving empty summary
split-string is not side-effect free. It changes the match data (it uses
regexp to split strings).
2021-09-30 15:06:34 +02:00
Henrik Lissner
fbfa144347 docs: update doom-theme variable docstring
This variable no longer accepts 'default to load no theme. Set it to nil
instead.

Ref #5535
2021-09-29 18:34:21 +02:00
Henrik Lissner
1cbd1e14e1 dev(ci): fix commit hash length linter
- Now counts and reports all commit references that aren't the correct
  length, not just the first.
- Now reports all incorrect references, not just the first on each line.
2021-09-29 18:26:10 +02:00
Henrik Lissner
731ae806ea perf: pgtk-wait-for-event-timeout = 0.001
Thise should reduce the artificial latency added to window manager
operations (like calls to some of Emacs' frame API, e.g.
make-frame-invisible) on the PGTK build of Emacs. This should mitigate
latency issues with childframes in general and packages that use them,
e.g. lsp-ui and company-box.

There's also a small chance 0.001 is much too low, and may cause
artefacting on especially slow hardware. More testing is needed.
2021-09-29 17:50:30 +02:00
Henrik Lissner
1419b9dc41 feat: add doom/add-directory-as-project command
Will register any arbitrary directory as a projectile project, adding a
.project file to it if necessary.
2021-09-26 14:35:53 +02:00
Henrik Lissner
002711ff9b dev(ci): add pre-push git hook
To complain about lingering fixup/squash commits.
2021-09-26 14:35:53 +02:00
Henrik Lissner
dc3eb8a7cf dev(ci): ignore fixup!/squash!/wip commits
Otherwise the commit linter makes rebasing impossible without
--no-verify, or in magit if the git hooks are installed.
2021-09-26 14:35:53 +02:00
Henrik Lissner
2a0aa3d15b dev(ci): fix scope checker in commit linter
- Linter wasn't failing on any invalid scopes due to logic error.
- Linter was failing to recognize module categories as valid
  scopes (e.g. :lang, :ui, etc).
- Adds 'ci' and 'lib' as valid scopes.
2021-09-24 12:37:50 +02:00
Henrik Lissner
14729d21d1 dev(ci): refactor commit message reader for linter 2021-09-17 09:10:37 +02:00
Henrik Lissner
f80eed41bb dev(ci): fix linter complaining about git Ref lines
Such as Co-authored-by: and Signed-off-by: lines.
2021-09-17 09:10:14 +02:00
Henrik Lissner
5aeefc301b dev(ci): fix linter error on tail-less commit msg
If the commit message lacked the diff post-amble, 'doom ci
hook-commit-msg' would throw an out-of-range error.
2021-09-17 09:05:53 +02:00
Henrik Lissner
b3c01226a1 dev(ci): fix linter warning count 2021-09-17 09:05:42 +02:00
Henrik Lissner
2c5cc752ff fix(lib): preserve package order in after! macro
Prior to this, (after! (a b) ...) would expand to

  (after! b
    (after! a
      ...))

After this, it expands to

  (after! a
    (after! b
      ...))

This fixes load order issues with packages whose deferred configs are
nested, such as org and ob-ditaa.

Ref https://www.reddit.com/r/emacs/comments/pp3sye/hd311nz
2021-09-16 20:20:18 +02:00
Henrik Lissner
650f7a82e3 dev(ci): refactor commit linter
A new approach to make linter rules more flexible.
2021-09-16 20:20:10 +02:00
Henrik Lissner
f2588b0e90 feat(lib): imply &allow-other-keys in fn! macro 2021-09-16 20:20:08 +02:00
Henrik Lissner
aed9d0b7e5 fix: consult--grep call in load-path search commands
doom/help-search-load-path and doom/help-search-loaded-files were broken
by changes to consult--grep's interface upstream.

Ref 7762386e52
2021-09-15 17:47:17 +02:00
Henrik Lissner
dbe604519f bump: :core
Fuco1/smartparens@911cc896a0 -> Fuco1/smartparens@2834c66c4f
bbatsov/projectile@da08a9103b -> bbatsov/projectile@17c152b062
domtronn/all-the-icons.el@9d97c074b0 -> domtronn/all-the-icons.el@c0d288a41f
gilbertw1/better-jumper@411ecdf6e7 -> gilbertw1/better-jumper@7f328a886b
justbur/emacs-which-key@27d9fec33a -> justbur/emacs-which-key@4790a14683
raxod502/straight.el@b45dd00408 -> raxod502/straight.el@45eb6112b2
2021-09-15 17:47:17 +02:00
Itai Y. Efrat
a20cd88e8e refactor!(haskell): remove dante support
BREAKING CHANGE: Now that haskell-language-server is mature there is
little reason not to pick it over dante.
2021-09-15 01:56:26 +03:00
Henrik Lissner
6541ae5135 fix: revert x-select-request-type to default
Its default value is acceptable in 28+ and handles clipboard integration
in PGTK Emacs, so we don't have to.

Thanks to @sei40kr for revealing this fix to me (in #5219).

Fix #5219
2021-09-13 17:26:33 +02:00
Henrik Lissner
48239aeb97 fix(cli): git version check on Windows
Of course Git on Windows produces '2.33.0.windows.2'. Why wouldn't it?
2021-09-11 14:26:45 +02:00
Henrik Lissner
c298dc3ac7 refactor(doom-quit): distinguish flavor text in quit prompts
Makes it easier to tell apart flavor text from the actual prompt.
2021-08-16 15:01:22 -04:00
Henrik Lissner
462bfb9693 fix: doom/reload runs remotely in tramp buffers
When run in a remote buffer, `doom sync` is executed on the remote host,
which is not intended behavior.

Fix #5378
2021-08-14 02:29:46 -04:00
Daanturo
14f9289998
fix: wrong-number-of-args error in doom/reload-env
Close #5368
Ref 9687c04a84
2021-08-12 12:26:56 -04:00
Henrik Lissner
9687c04a84 fix: doom/reload 404ing on executables
Half-reverts c2c6a64, which tried to get doom/reload to regenerate the
envvar file from within Emacs, but running an environment scraper in a
bare environment is really hard to get right. Ideally, your shell config
should set up your environment, but there are too many edge cases or
poor configs in the wild to depend on this.

I've brought back doom/reload-env, but only to reload the envvar file
-- *not* regenerate it. I've given up on trying to do that from within
Emacs.

Fix #5344
Ref c2c6a64118
2021-08-11 01:50:42 -04:00
Henrik Lissner
2c4328ccf0 fix: flipped logic in tramp + projectile advice
Some logic derps from 0b5243c. Also restores
projectile-git-submodule-command in remote buffers (to fix a
wrong-type-argument error waiting to happen).

Ref 0b5243c12c
Ref #5360
2021-08-10 17:32:34 -04:00
Henrik Lissner
0b5243c12c perf: optimize tramp + projectile integration
Reduce how much projectile hits the server in TRAMP buffers by:

- Not looking for fd/fdfind (just use the VCS-specific commands
  projectile provides and assume they're present on the remote).
- Not walking up the directory tree to display the project name in the
  mode line.
- Reducing TRAMP file-cache misses.
- Reducing how chatty tramp is about its connections.

Fix #5360
2021-08-10 17:10:42 -04:00
Henrik Lissner
e76f5388be fix: doom-system-cpus not handling int values
ce31880 did not fix doom-system-cpus on msys2 builds because the
function didn't handle integer return values from any of its code
paths (which formerly returned strings or lists).

Ref ce31880ccc
Fix #5347
2021-08-06 03:44:34 -04:00
Henrik Lissner
1352f8a9aa fix: args-out-of-range when cleaning project cache
Caused when the key of a cached project is an empty string.

Fix #5345
2021-08-06 03:13:36 -04:00
Henrik Lissner
ce31880ccc fix: doom-system-cpus returning 1 on msys2 build
Fix #5347
2021-08-06 03:08:33 -04:00
Henrik Lissner
24866a17ee fix: void-variable arg error from doom/reload
Some leftover code from the doom/reload-env, which was removed in
c2c6a6411.

Ref c2c6a64118
Fix #5344
2021-08-05 12:54:37 -04:00
Henrik Lissner
abc16ef68c refactor(cli): make all searches case-sensitive
This is more predictable, and is safe as a global default in CLI
sessions (but not in interactive ones). This indirectly fixes case
insensitivity in our commit linter rules.
2021-08-05 12:53:20 -04:00
Henrik Lissner
a3f917c42d dev: fix off-by-one for line length rule 2021-08-04 10:46:10 -04:00
Henrik Lissner
045ea7460d nit: revise and reformat code comments 2021-08-04 01:53:12 -04:00
Henrik Lissner
06392a723f refactor: rename orig-fn arg in advice to fn
A minor tweak to our naming conventions for the first argument of an
:around advice.
2021-08-04 01:53:12 -04:00
Henrik Lissner
12732be155 feat: don't delay when opening auto-saved files
If a file has auto-saved data (see auto-save-default), after-find-file
will stop the world for 1 second to tell you about it. Very annoying.
Just log it to *Messages* and open the file immediately.
2021-08-04 01:53:12 -04:00
Henrik Lissner
c2c6a64118 fix: doom/reload now regenerates the envvar file
Removes doom/reload-env, now that it is redundant.
2021-08-03 23:00:43 -04:00
Henrik Lissner
3beff3133f dev: refactor, fix, and add rules to commit linter
- Conform commit linter to 50/72 rule
- Add linter rule for body line length; excludes the footer and lines
  with long URLs.
- Add linter rule for validating scopes are in lexical order.
- Add linter rule for validating footer refs.
  Footer references should reference one thing per line. That thing can
  be one of:
  - An URL.
  - An issue or PR reference (local or remote).
  - A 12-character commit hash (local or remote).
- Extend linter to detect new scopes for docs:
  - Commits of type 'docs' can now use these additional scopes (in
    addition to other possible scopes):
    - docs(install) -> for changes to our installation guide(s). It is
      expected for this to change so often that it has its own scope.
    - docs(X) -> where X is the basename of any org file in docs/*.org.
      e.g.
      - docs(index): ...
      - docs(modules): ...
      - docs(faq): ...
- Modify the scope checker to consider *any* parenthetical scope given
  for bump, revert, merge, module, or release commits to be invalid.
- Update bump commit linter for 12c hashes (see 3bedae38dd).
- Fix language in imperative ref linter warning.

Ref https://discourse.doomemacs.org/how2commit
Ref 3bedae38dd
2021-08-03 23:00:43 -04:00
Henrik Lissner
3bedae38dd dev: transition to 12c long hashes
In bumps, in :pin's, and in our git conventions. We have no rules for
the commit linter for it yet, though.
2021-08-02 22:07:13 -04:00
Henrik Lissner
74f72c15b3 dev: fix commit linter target and lint all commits
- Was formerly processing the internal merge commit, which never conforms
  to our conventions, but is also unrelated to the work at hand.
- Now lints the range of commits applicable to the event, and not just
  the latest commit.
2021-08-02 15:00:53 -04:00
Henrik Lissner
5df31a4895 dev: fix and refactor commit lint rules
- Fix rules that weren't working due to faulty logic.
- Revise linter messages for clarity and concision.
- Use conventional commit nomenclature: summary -> subject
- case-fold-search = nil, to ensure case sensitive searches
- Exclude bump type from length checks
2021-08-01 23:37:36 -04:00
Henrik Lissner
11a0c0cbdb dev: add linter rule for commit capitalization
Bad:  'fix(abc): Prevent freezes'
Good: 'fix(abc): prevent freezes'
2021-08-01 23:37:36 -04:00
Henrik Lissner
5d1d0fc7c9 dev: add linter rule for Refs: in commit footer
+ No colon.
+ One ref per line.

Bad:
  Refs: A B C
  Ref: X Y
  Ref: Z
Good:
  Ref A
  Ref B
  Ref C
  Ref X
  Ref Y
  Ref Z
2021-08-01 23:37:36 -04:00
NightMachinary
a6f365bb3f
fix: doom/move-this-file when directory is the target
* doom/move-this-file now supports moving directly into a directory
* applied requested changes

Close #4861
2021-08-01 15:13:52 -04:00
Henrik Lissner
3d423862d7 dev: add linter rules for module type
Recently added 'module' to our list of git commit types to represent
changes to our module list. These events are important enough to
Doom (and users) to track separately.
2021-08-01 11:43:01 -04:00
Henrik Lissner
345ff621c3 dev: link to gist for commit docs
Until the new docs are up, link to the gist.
2021-08-01 02:03:36 -04:00
Henrik Lissner
0b4e1c30b7 dev: fix commit linter
Forgot to add the new -C/--nocolor option for 'doom sync', and to load
the 'doom ci *' family.
2021-08-01 01:02:51 -04:00
Henrik Lissner
074b9eb0d1 dev: add commit linter workflow
Experimenting with an internal linter. Only trouble is, if Doom's CLI is
ever in a broken state, a contributor will have to know about
--no-verify option for git commit. This can be improved post CLI
rewrite.
2021-07-31 23:51:27 -04:00
Daanturo
bfc12b83b4 Black list XDG_SESSION_TYPE from doom-env
The variable is obsolete once we switch between "x11" and "wayland".
2021-07-30 08:14:48 +07:00
Itai Y. Efrat
ae2a63137a fix: use new commit format in doom/bumpify-diff 2021-07-28 23:57:39 +03:00
Henrik Lissner
33b646826b fix(vertico): add counsel-file-jump analogue
Fix 'SPC f F' / 'C-c f F' for vertico users
2021-07-28 12:54:23 -04:00