aboutsummaryrefslogtreecommitdiff
path: root/chime-debug.el
Commit message (Collapse)AuthorAgeFilesLines
* refactor: clear the rest of the lint backlog and make `make lint' actually workCraig Jennings2026-05-051-6/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Took the package-lint commit's foundation and finished the job. Three groups of changes: 1. **checkdoc** is now clean across all three package files. I worked through every warning: 13 missing-double-space-after-period fixes, 4 message-capitalization fixes, 1 trailing-period-on-error fix, 6 Lisp-symbol-should-be-quoted fixes, and one rephrase from "starts" to the imperative "Log the start of an async check". One `chime-debug.el' docstring also exceeded 80 columns and got split into two lines. 2. **`make lint'** ran elisp-lint but had been silently broken. The shell glob `test-*.el' wasn't expanding (CWD ended up at project root, not tests/), and the noisy validators flagged everything. I rewrote the target to lint package files explicitly via absolute paths, preload chime.el so the byte-compiler sees cross-file symbols when checking chime-debug.el, and disable the validators that conflict with project style or duplicate other lint steps: - `--no-checkdoc' (covered by `eask lint checkdoc') - `--no-package-lint' (covered by `eask lint package'; running it on auxiliary files re-flags them as standalone packages) - `--no-indent-character' (project uses spaces per `.claude/rules/elisp.md'; the validator defaults to tabs) - `--no-fill-column' (project allows up to 80; validator defaults to 70) - `--no-indent' (false-positives on dash threading macros `->'/`->>') The validators-disabled list is documented in the recipe header. 3. **Generated autoload files** (`chime-autoloads.el', `tests/tests-autoloads.el') are now gitignored. `tests/tests-autoloads.el' was tracked from an earlier commit; I removed it from the index. Eask regenerates these on every `eask compile' / `eask install-deps' run, so they don't belong in the tree. Verified: `make compile' clean (with byte-compile-error-on-warn t), `make test-all' green at 677 tests, `eask lint package' clean, `eask lint checkdoc' clean, `make lint' clean. Full lint backlog is now zero across all three checks.
* refactor: clear package-lint warnings for MELPA prepCraig Jennings2026-05-051-13/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I worked through the package-lint backlog and got it to zero. Five changes: 1. Renamed six interactive debug commands from the private `chime--debug-*' prefix to the public `chime-debug-*' form. They were always M-x targets, so the private prefix was just wrong. The autoload cookies stay because public commands SHOULD be autoloaded. README, docstring references in chime.el, and the matching tests follow the rename. 2. Dropped `Version', `Package-Requires', and `Keywords' headers from chime-org-contacts.el. Auxiliary files in a multi-file package shouldn't carry their own metadata — package-lint flags it as an error because the headers have no effect outside the main file. The main file (chime.el) already declares the chime package's metadata. 3. Dropped `Keywords' from chime-debug.el for the same reason. 4. Dropped the auto-loader for the optional chime-org-contacts integration from chime.el. The old code used `with-eval-after-load 'org-capture' to pull the file in, which package-lint flags as a configuration pattern that doesn't belong in a package. Users who want the integration now require it themselves; the README shows both the plain `with-eval-after-load' pattern and the `use-package :after' form. chime-org-contacts.el's internal `with-eval-after-load' went away too — by the time the user has required the file, they've already gated it on org-capture being loaded, so the inner check is redundant. 5. Dropped the redundant `with-eval-after-load' from chime-org-contacts.el's activation block. The setup function still guards on `(boundp 'org-capture-templates)' so it's safe to require either order. Behavioral note: this is a small breaking change for anyone whose config relied on the auto-load. The README change spells out the migration path.
* Decompose chime--debug-notification-filtering into step functionsCraig Jennings2026-04-041-71/+71
| | | | | | | | | The 120-line diagnostic function is now a 30-line coordinator calling four focused helpers: - chime--debug-filter-check-timestamp - chime--debug-filter-check-time-match - chime--debug-filter-check-interval - chime--debug-filter-check-pipeline
* Update README and fix repo references after rename to chimeCraig Jennings2026-02-221-1/+1
| | | | | | | | | Fix backronym to "CHIME Heralds Imminent Modeline Events" across all files. Update GitHub URLs from chime.el to chime. Add documentation for missing customization variables (notification icon, startup delay, modeline lighter, no-events text, tooltip header format, advance notice, tooltip all-day events). Fix test count (505) and default for chime-day-wide-alert-times.
* Update copyright years to 2026 across all source filesCraig Jennings2026-02-171-1/+1
| | | | | Updated 41 files: chime.el, chime-debug.el, chime-org-contacts.el, convert-org-contacts-birthdays.el, and all test/utility files.
* Add notification filtering debugger to chime-debug.elCraig Jennings2026-02-171-0/+124
| | | | | | | Interactive function chime--debug-notification-filtering traces the entire notification pipeline: timestamp recognition, day-wide filtering, interval matching, and notification generation. Helps diagnose why notifications aren't firing for specific events.
* changed repositoriesCraig Jennings2025-11-181-0/+374