| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Consolidated cj/log-silently function to system-lib.el as the canonical
location for low-level utility functions. This fixes 4 failing tests in
video-audio-recording that couldn't find the function.
Changes:
- Move cj/log-silently to system-lib.el (from system-utils.el)
- Remove duplicate definition from org-agenda-config-debug.el
- Remove duplicate definition from system-utils.el
- Add (require 'system-lib) to all modules using cj/log-silently:
- video-audio-recording.el
- org-agenda-config-debug.el
- media-utils.el (also removed declare-function)
- elfeed-config.el (replaced system-utils with system-lib)
- wrap-up.el
Test Results:
- Before: 112/113 passing (4 video-audio-recording tests failing)
- After: 113/113 passing ✓
All tests now pass with zero failures.
Fixes TODO #809-895 (move cj/log-silently to system-lib.el)
|
|
|
Introduce a new `system-lib.el` module providing low-level system
utility functions, including function `cj/executable-exists-p` to
check for the availability of programs in PATH. Integrate this
library in `init.el`.
test(system): Add unit tests for executable check function
Create comprehensive unit tests for `cj/executable-exists-p` in
`system-lib.el`, ensuring coverage of normal, boundary and error
scenarios.
|