<feed xmlns='http://www.w3.org/2005/Atom'>
<title>chime/tests, branch main</title>
<subtitle>Emacs chimes, notifications, and modeline reminders so you don't miss events
</subtitle>
<id>https://git.cjennings.net/chime/atom?h=main</id>
<link rel='self' href='https://git.cjennings.net/chime/atom?h=main'/>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/chime/'/>
<updated>2026-04-04T22:05:49+00:00</updated>
<entry>
<title>Consolidate Makefiles and update TESTING.org</title>
<updated>2026-04-04T22:05:49+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-04-04T22:05:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/chime/commit/?id=b2b7f2468154435a28a174f5ec31e19e20fe44d2'/>
<id>urn:sha1:b2b7f2468154435a28a174f5ec31e19e20fe44d2</id>
<content type='text'>
Root Makefile now delegates to tests/Makefile. Fixed stale
UNIT_TESTS/INTEGRATION_TESTS definitions, added test-name target,
switched to per-file test execution for better isolation.
</content>
</entry>
<entry>
<title>Add tests for chime-environment-regex</title>
<updated>2026-04-04T20:30:30+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-04-04T20:30:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/chime/commit/?id=1a788069b757c823012fc1135511a7af4b026437'/>
<id>urn:sha1:1a788069b757c823012fc1135511a7af4b026437</id>
<content type='text'>
Verify the regex matches all default variable names, picks up
additional user-configured regexes, and handles empty additional list.
</content>
</entry>
<entry>
<title>Remove unused chime--today function</title>
<updated>2026-04-04T20:20:41+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-04-04T20:20:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/chime/commit/?id=dfef5a4bb5afe6420f92ecaa43759086286285f0'/>
<id>urn:sha1:dfef5a4bb5afe6420f92ecaa43759086286285f0</id>
<content type='text'>
Defined and tested but never called from any production code.
</content>
</entry>
<entry>
<title>Bundle multiple day-wide events into a single notification</title>
<updated>2026-04-04T20:15:25+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-04-04T20:15:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/chime/commit/?id=4c9730a6e88f1f0173d9712311f65f348d211f4e'/>
<id>urn:sha1:4c9730a6e88f1f0173d9712311f65f348d211f4e</id>
<content type='text'>
When all-day event alert times trigger, multiple events (overdue tasks,
birthdays, holidays) previously fired individual notifications — one
sound and one popup each. With 8-10 events this was overwhelming.

Now multiple day-wide events are bundled into a single notification
with all messages joined by newlines. Single events still notify
normally without bundling.
</content>
</entry>
<entry>
<title>Restructure README and address review comments</title>
<updated>2026-04-04T20:06:06+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-04-04T20:06:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/chime/commit/?id=1067005467d66bbaae5853d2cacda749fb72cbcc'/>
<id>urn:sha1:1067005467d66bbaae5853d2cacda749fb72cbcc</id>
<content type='text'>
- Remove About section (merged into intro)
- Rename Credits to History, fold Migration under it
- Fold Manual Check and Known Limitations under Usage
- Fold Full Example Configuration under Configuration
- Add straight.el and quelpa install methods
- Move requirements into Installation with auto-deps note
- Add notification daemon check to troubleshooting
- Add Development subsection with clone/lint/issues info
- Add LICENSE file (GPL-3.0)
- Update nav bar to match new structure
- Fix startup integration test for new modeline error state
</content>
</entry>
<entry>
<title>Show modeline icon immediately on chime-mode enable</title>
<updated>2026-04-04T19:11:48+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-04-04T19:11:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/chime/commit/?id=ffc9707790a3dff195bd827c17039faf0dcf44b0'/>
<id>urn:sha1:ffc9707790a3dff195bd827c17039faf0dcf44b0</id>
<content type='text'>
Previously chime-modeline-string was nil until the first async check
completed (~10-15 seconds after startup). Now the icon appears
instantly with a "waiting for first event check" tooltip.

On validation or async failure, the icon stays visible and the
tooltip updates to show the error state instead of going blank.
</content>
</entry>
<entry>
<title>Remove dead code and reduce default tooltip lookahead to 1 week</title>
<updated>2026-04-04T18:32:47+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-04-04T18:32:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/chime/commit/?id=f550d134f4a1ad30c425285c4d390f7277cbee32'/>
<id>urn:sha1:f550d134f4a1ad30c425285c4d390f7277cbee32</id>
<content type='text'>
Remove chime--agenda-buffer-name (unused variable) and
chime--extract-birthday-year (superseded by chime--parse-birthday).

Reduce chime-tooltip-lookahead-hours from 8760 (1 year) to 168
(1 week). The 1-year default caused org-agenda-list to scan a
365-day span every check cycle, which is slow for large org
collections. The tooltip only shows 5 events, so a week is
sufficient for most users.
</content>
</entry>
<entry>
<title>Nil chime--timer after cancellation in chime--stop</title>
<updated>2026-04-04T18:27:30+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-04-04T18:27:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/chime/commit/?id=6d133a26f905cf38595599eb3271563911762e2b'/>
<id>urn:sha1:6d133a26f905cf38595599eb3271563911762e2b</id>
<content type='text'>
The timer variable was left pointing at a cancelled timer object.
Now set to nil so state accurately reflects no active timer.
</content>
</entry>
<entry>
<title>Fix file headers: correct copyright years, add missing header</title>
<updated>2026-04-04T18:13:08+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-04-04T18:13:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/chime/commit/?id=39989d8b826a03e304e40032aecc33de24f4227e'/>
<id>urn:sha1:39989d8b826a03e304e40032aecc33de24f4227e</id>
<content type='text'>
New files created in 2026 should have Copyright (C) 2026, not 2024-2026.
Add standard copyright/license header to test-bootstrap.el.
</content>
</entry>
<entry>
<title>Extract test boilerplate into shared test-bootstrap.el</title>
<updated>2026-04-04T18:05:01+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-04-04T18:05:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/chime/commit/?id=6f32d5c8a32f78786a612d0105a32d6856fd87ea'/>
<id>urn:sha1:6f32d5c8a32f78786a612d0105a32d6856fd87ea</id>
<content type='text'>
All 50 test files that load chime.el repeated the same 8-line
initialization block (package-initialize, ert, dash, alert, async,
org-agenda, chime load). Replace with a single require of
test-bootstrap.el.

Also fix test-make-upcoming-item name collision between
test-chime-make-tooltip.el and test-chime--deduplicate-events-by-title.el.
</content>
</entry>
</feed>
