EMS-Changelog

GRIP-EMS v2.1.2

Released May 16, 2026. 8 entries in the author's notes.

Every entry

The author's own words, complete. Long sections are sorted into areas by LazyGrip.

Fixed

2

!EMS1!-prefixed imports no longer return "Unknown format". The dispatch in LegacyImport, ImportPreview, and the internal _PreviewGRIP1 type guard now routes both !EMS1! (v2.1.0+ native) and !GRIP1! (legacy native) through the same preview/commit path. Both encode an identical {format="GRIP-EMS", ...} payload via the same CBOR + Deflate + Base64 pipeline; only the prefix differs.

#

Sequences exported with numeric spell IDs now resolve to the talent-active override variant on import, not the base spell. A new internal helper LI._ResolveOverriddenName wraps C_SpellBook.FindSpellOverrideByID plus C_Spell.GetSpellName and runs at all three import-time numeric resolution sites (LI.ResolveSpell, the /cast numeric path, and the /castsequence numeric list). A Beast Mastery hunter importing a sequence with Steady Shot's base ID (56641) under the Barbed Shot talent now gets /cast Barbed Shot in the macro -- not /cast Steady Shot. Resolution runs at import time; respec after import keeps the macrotext as resolved (re-import to refresh).

#

Changed

1

Support panel Discord label now points at discord.gg/temptingus across all 11 locale files. The button OnClick handler already opened the correct URL; only the visible label was stale (showed discord.gg/grip-ems).

#

Internal -- CVar Manager polish series (G5)

5

Reset to Defaults if-branch ticker now re-checks pin state at every tick, matching the Fix All Critical behavior. Pins added mid-throttle are honored on the next tick instead of being dishonored.

#

Fix All Critical and Reset to Defaults DONE-broadcast surfaces (4 Print + 4 Speech + 4 ReloadGate Notify calls across both if/else branches) now report the per-tick actual change count instead of the click-time intent count. BUSY messages stay on intent since they fire before any filtering.

#

Four per-row single-frame CapturePrevious sites (Fix-All-in-Section inner loop, per-row Fix .func, dropdown .set, EditBox .set) now apply the SetCVar-success gate. cvarPreviousValues no longer records stale values when SetCVar silently no-ops under combat lockdown or for unknown CVars. CapturePrevious migrated to 2-arg form (cvar, prev) everywhere in SettingsPanel.lua.

#

Per-row Fix .func AceConfigRegistry:NotifyChange is now gated on SetCVar success, closing a structural asymmetry vs the dropdown and EditBox sites.

#

Defensive C_Timer guard added on both Fix All Critical and Reset to Defaults tickers.

#

Grab it

Release notes written by Sataana and reproduced here with his permission.