<feed xmlns='http://www.w3.org/2005/Atom'>
<title>emacs-wttrin, branch v0.3.0</title>
<subtitle>Emacs frontend for Igor Chubin's wttr.in weather service
</subtitle>
<id>https://git.cjennings.net/emacs-wttrin/atom?h=v0.3.0</id>
<link rel='self' href='https://git.cjennings.net/emacs-wttrin/atom?h=v0.3.0'/>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/emacs-wttrin/'/>
<updated>2026-04-04T19:17:23+00:00</updated>
<entry>
<title>bump version to 0.3.0</title>
<updated>2026-04-04T19:17:23+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-04-04T19:17:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/emacs-wttrin/commit/?id=a77a7b86f45ae96ff1802ea6f8b87dafd46b17b0'/>
<id>urn:sha1:a77a7b86f45ae96ff1802ea6f8b87dafd46b17b0</id>
<content type='text'>
Dynamic mode-line tooltip, staleness dimming, location casing fix,
debug guard refactor, expanded test suite (307 tests), and multiple
bug fixes since 0.2.3.
</content>
</entry>
<entry>
<title>fix: clean byte-compilation warnings</title>
<updated>2026-04-04T19:14:39+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-04-04T19:14:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/emacs-wttrin/commit/?id=88a66244fd613662ee7d5d3a0ad4394cfafdb521'/>
<id>urn:sha1:88a66244fd613662ee7d5d3a0ad4394cfafdb521</id>
<content type='text'>
Move define-obsolete-variable-alias before its referent defcustom to
fix "alias should be declared before its referent" warning. Add
defvar for wttrin--force-refresh in wttrin-debug.el so the
byte-compiler knows the dynamic variable is intentional.
</content>
</entry>
<entry>
<title>doc: note wttr.in update frequency in refresh interval docstrings</title>
<updated>2026-04-04T19:07:29+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-04-04T19:07:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/emacs-wttrin/commit/?id=583ba34888e1c82da1f2bffbc913477c2e6a6df6'/>
<id>urn:sha1:583ba34888e1c82da1f2bffbc913477c2e6a6df6</id>
<content type='text'>
wttr.in updates its data roughly every 10 minutes (max-age=600).
Add a note to both refresh interval defcustoms so users know not
to poll more aggressively than the service can provide.
</content>
</entry>
<entry>
<title>doc: tighten README prose, remove AI writing patterns</title>
<updated>2026-04-04T18:51:16+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-04-04T18:51:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/emacs-wttrin/commit/?id=faddcefa98c41356d8fd66d561f1e45453b19d05'/>
<id>urn:sha1:faddcefa98c41356d8fd66d561f1e45453b19d05</id>
<content type='text'>
Rewrite sections that read like generated text: replace clinical
descriptions with conversational language matching the existing
voice, cut padding phrases ("proactively", "several aspects",
"what's happening"), and trim the debug section down to essentials.
</content>
</entry>
<entry>
<title>doc: update README with missing features, fix stale content</title>
<updated>2026-04-04T18:47:54+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-04-04T18:47:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/emacs-wttrin/commit/?id=c856f697718a3a0a92dbf84a913d56a4ce9c4944'/>
<id>urn:sha1:c856f697718a3a0a92dbf84a913d56a4ce9c4944</id>
<content type='text'>
Add: staleness display in weather buffer, stale mode-line dimming,
wttrin-clear-cache command, wttrin-mode-line-startup-delay option,
minimum Emacs version (24.4).

Fix: font height default was listed as 110 (actually 130), debug
output example didn't match current log format, manual debug setup
section was a duplicate of the use-package section.
</content>
</entry>
<entry>
<title>doc: improve source comments for senior developer audience</title>
<updated>2026-04-04T18:38:57+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-04-04T18:38:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/emacs-wttrin/commit/?id=8f89387201ed0cc7ddc5a758079a52a2ce12fe68'/>
<id>urn:sha1:8f89387201ed0cc7ddc5a758079a52a2ce12fe68</id>
<content type='text'>
Remove obvious comments that restate what the code does ("save debug
data if enabled", "temporarily allow editing", "align buffer to top").
Add comments explaining non-obvious decisions: why risky-local-variable
is needed, why user-agent is curl, what wttr.in format codes mean,
what the emoji extraction regex matches, and why after-init-time
matters. Fix stale docstrings that no longer match the no-op stub
pattern.
</content>
</entry>
<entry>
<title>fix: debug-wttrin-show-raw serves cached data instead of fetching</title>
<updated>2026-04-04T18:27:39+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-04-04T18:27:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/emacs-wttrin/commit/?id=0bbed459fb60f1b9ebe0e137527aa44b75c4835e'/>
<id>urn:sha1:0bbed459fb60f1b9ebe0e137527aa44b75c4835e</id>
<content type='text'>
A debug command should show what the API currently returns, not a
cached copy. Bind wttrin--force-refresh to t so the fetch always
bypasses the cache.
</content>
</entry>
<entry>
<title>fix: emoji dimming can disagree with tooltip staleness</title>
<updated>2026-04-04T18:26:10+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-04-04T18:26:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/emacs-wttrin/commit/?id=de99a2930bbe65d7c2ea04656caa18823068c182'/>
<id>urn:sha1:de99a2930bbe65d7c2ea04656caa18823068c182</id>
<content type='text'>
The emoji face (dimmed/normal) was frozen at the last update-display
call, but the tooltip computes staleness dynamically. Between
refreshes, data could cross the stale threshold — tooltip says "Stale"
while the emoji is still normal.

Track the rendered staleness state. When the tooltip detects a
transition, trigger a re-render so the emoji dimming matches.
</content>
</entry>
<entry>
<title>fix: cache timestamp reflects request time, not response time</title>
<updated>2026-04-04T18:24:01+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-04-04T18:24:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/emacs-wttrin/commit/?id=752e2f825b1ee3eb513e27f2c03bcaef30eec767'/>
<id>urn:sha1:752e2f825b1ee3eb513e27f2c03bcaef30eec767</id>
<content type='text'>
float-time was captured in the outer let* before the async fetch.
The callback used this stale value, making cache entries appear
slightly older than they are. Move the float-time call into the
callback so the timestamp reflects when the data actually arrived.
</content>
</entry>
<entry>
<title>fix: validate-weather-data corrupts match data</title>
<updated>2026-04-04T18:21:46+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-04-04T18:21:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/emacs-wttrin/commit/?id=821c7c1ded6bef400dcfda9aec27832f116ce369'/>
<id>urn:sha1:821c7c1ded6bef400dcfda9aec27832f116ce369</id>
<content type='text'>
string-match modifies global match data as a side effect. A predicate
should not do this. Use string-match-p instead.
</content>
</entry>
</feed>
