<feed xmlns='http://www.w3.org/2005/Atom'>
<title>chime/tests/test-chime-time-utilities.el, branch v0.7.0</title>
<subtitle>Emacs chimes, notifications, and modeline reminders so you don't miss events
</subtitle>
<id>https://git.cjennings.net/chime/atom?h=v0.7.0</id>
<link rel='self' href='https://git.cjennings.net/chime/atom?h=v0.7.0'/>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/chime/'/>
<updated>2026-04-22T14:43:02+00:00</updated>
<entry>
<title>refactor: move 12 internal helpers from chime- to chime-- prefix</title>
<updated>2026-04-22T14:43:02+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-04-22T14:43:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/chime/commit/?id=74ca4e066bc41ce0a6e94e2d4bc0c838df45a838'/>
<id>urn:sha1:74ca4e066bc41ce0a6e94e2d4bc0c838df45a838</id>
<content type='text'>
Before MELPA submission, tighten the public API surface. Single-dash chime-foo is the convention for user-facing commands and predicates that external code can bind. Anything that is not meant to be bound externally should use the double-dash chime--foo prefix so byte-compile warnings, docstrings, and MELPA package inspection all point in the same direction.

Twelve helpers in chime.el had single-dash names but no user-facing role. They are not mentioned in README, they carry no interactive declaration, and their docstrings do not promise a behavior contract. Rename them: chime-get-minutes-into-day, chime-get-hours-minutes-from-time, chime-set-hours-minutes-for-time, chime-current-time-matches-time-of-day-string, chime-current-time-is-day-wide-time, chime-day-wide-notifications, chime-display-as-day-wide-event, chime-event-has-any-day-wide-timestamp, chime-event-within-advance-notice-window, chime-event-has-any-passed-time, chime-event-is-today, chime-environment-regex.

The public API surface is now intentional. It covers chime-mode, chime-validate-configuration, chime-refresh-modeline, chime-done-keywords-predicate, and the chime-debug-* interactive commands in chime-debug.el.

Breaking change. No alias shims because there are no downstream users yet.
</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>
<entry>
<title>Add 94 tests across 10 new test files and fix 2 bugs</title>
<updated>2026-04-04T17:40:27+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-04-04T17:40:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/chime/commit/?id=69c8deb2d7821c78475dcbb08458df6b0e56d559'/>
<id>urn:sha1:69c8deb2d7821c78475dcbb08458df6b0e56d559</id>
<content type='text'>
New test coverage for previously untested functions:
- filter-day-wide-events, time utilities, day-wide time matching
- make-tooltip, event-is-today, get-tags, done-keywords-predicate
- extract-title, propertize-modeline-string, warn-persistent-failures
- log-silently

Bug fixes discovered by new tests:
- Fix pluralization in no-events tooltip ("1 hours" -&gt; "1 hour", etc.)
- Fix chime--get-tags returning ("") instead of nil for untagged headings
</content>
</entry>
</feed>
