aboutsummaryrefslogtreecommitdiff
path: root/modules/selection-framework.el
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2026-05-10 14:04:22 -0500
committerCraig Jennings <c@cjennings.net>2026-05-10 14:04:22 -0500
commiteae551736264f4c44496d010d063c446c75159d6 (patch)
tree809bb8907b68ac102bec3d40c7c4c2d0a5567860 /modules/selection-framework.el
parentebfb6e7028c04e4a1d86b11f51a3f62a20fb0d9b (diff)
downloaddotemacs-eae551736264f4c44496d010d063c446c75159d6.tar.gz
dotemacs-eae551736264f4c44496d010d063c446c75159d6.zip
refactor(system-lib): extract cj/executable-find-or-warn from mail-config
Phase 2 of utility-consolidation, first commit per the spec's recommended order. `cj/mail--executable-or-warn' was the right pattern -- check executable-find, return the path, otherwise emit a clear `display-warning' naming the feature -- but it was trapped in mail-config and only mail callers benefited. Lift it into `cj/executable-find-or-warn' in system-lib.el with one new argument: an optional GROUP symbol that flows through to `display-warning' (defaulting to `cj/system-lib') so per-feature warning filters keep working. Mail callers pass `mail-config' explicitly. Migrate `cj/mail--mbsync-command' and `cj/mail-configure-smtpmail' to the new helper. Drop the local definition. Add `(require \='system-lib)' to mail-config.el per the spec's Phase 2 exit criterion ("consumer modules explicitly require system-lib"). Five Normal/Boundary tests cover the four return-shape cases (program found / program missing / warning content / default vs explicit group). Other consumers (prog-*.el, dirvish-config.el, browser-config.el) still call `executable-find' directly. Migrating them is a follow-up commit, audited per call site -- the spec flags some `:if' silent checks as intentional and they should NOT switch to the warning helper.
Diffstat (limited to 'modules/selection-framework.el')
0 files changed, 0 insertions, 0 deletions