feat(canola-git): emit cache update event and keep raw path statuses #53

Merged
barrettruth merged 2 commits from feat/canola-git-update into main 2026-04-22 17:08:36 +00:00
barrettruth commented 2026-04-22 16:36:33 +00:00

Problem

Advanced canola-git recipes had no git-specific update hook, and the cache only retained the aggregated first-level status data needed for the built-in column. That made it awkward to react to git refreshes or inspect raw per-path porcelain state for custom recipes.

Solution

Emit a CanolaGitUpdate user autocmd after each canola-git cache refresh, with a small payload containing the refreshed directory, repo root, and refresh reason. Expand _cache[dir] to retain raw per-path status data alongside the existing aggregated status table, keep get_status() behavior unchanged, and document concise recipes for the new event and advanced cache inspection.

## Problem Advanced canola-git recipes had no git-specific update hook, and the cache only retained the aggregated first-level status data needed for the built-in column. That made it awkward to react to git refreshes or inspect raw per-path porcelain state for custom recipes. ## Solution Emit a `CanolaGitUpdate` user autocmd after each canola-git cache refresh, with a small payload containing the refreshed directory, repo root, and refresh reason. Expand `_cache[dir]` to retain raw per-path status data alongside the existing aggregated status table, keep `get_status()` behavior unchanged, and document concise recipes for the new event and advanced cache inspection.
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
barrettruth/canola-collection!53
No description provided.