Repository navigation
v2.8.5
EasyFish
v2.8.5 (2026-09-24)
Full Changelog Previous Releases
- Cut the status window's work ~15x and stop creating empty spots
Measured with a new harness that runs the whole addon in Lua 5.1 against
a simulated WoW API (tests/). With a large history the once-a-second
status refresh took 0.29 ms and allocated 28 KB; it now takes 0.02 ms
and 1.7 KB, and no longer grows with history size.- NS.Memo caches values that only change when something happens; every
game event, slash command and settings change bumps NS.gen, and a
map change also recomputes. Used for the materials line (15 KB per
refresh on its own), pools in the zone (scanned every spot on every
map), chests here, and the top-fish rows (prices and icons included;
rows whose item info the game hasn't loaded yet are retried rather
than cached blank). - Bug: the pool line looked up "the spot here" with a function that
creates a spot when there is none, so until the first cast of a
session the dashboard saved an empty spot wherever you walked (5 of
the 10 spots in real saved data). Looking never creates a spot now,
and never-fished spots are pruned on load.
tests/test_core.py (23 behaviour tests), tests/smoke.py (every command,
settings tab and handler, surfacing errors pcall would hide) and
tests/perf.py; excluded from the packaged addon.
Co-Authored-By: Claude Opus 5.5 noreply@anthropic.com
- NS.Memo caches values that only change when something happens; every