Skip to content

Releases: stroexd/GuildMute

v0.5.1

Choose a tag to compare

@github-actions github-actions released this 29 Jun 17:28
8801c2d

GuildMute

v0.5.1 (2026-06-29)

Full Changelog Previous Releases

  • v0.5.1 — WIM whisper fix & guild-change warning
    Co-authored-by: Claude noreply@anthropic.com
  • Merge pull request #1 from stroexd/claude/wim-whisper-guild-change-kdyl7b
    Fix WIM whisper passthrough and stale mute list after guild change
  • Warn instead of clearing mute list on guild change
    Auto-clearing on /gm guild was too destructive — the list may have been
    built up over time via passive learning and manual scans. Instead, print
    how many entries remain from the previous guild and hint at /gm scan
    (to add new members) or /gm clear (to start fresh), leaving the choice
    to the user.
  • Fix WIM whisper passthrough and stale mute list after guild change
    Two issues reported: guild members' whispers still appearing via WIM
    after /gm guild change, and history being empty (nothing was filtered).
    Filter.lua: Insert our ChatFrame_AddMessageEventFilter at position 1 so
    it runs before WIM's filter. WIM redirects whispers to its popup window
    and returns true in its own filter; if it registered before us, our
    filter never ran. Moving to position 1 ensures we suppress the message
    first and WIM never sees it.
    Core.lua: When /gm guild changes to a different guild, clear the mute
    list and hint to run /gm scan. Previously, changing guild left the old
    guild's names in the list while the new guild's members were never added,
    so their whispers passed through unfiltered (explaining the empty history).

v0.5.0

Choose a tag to compare

@github-actions github-actions released this 03 Jun 19:51

GuildMute

v0.5.0 (2026-06-03)

Full Changelog Previous Releases

  • Remove blocked /who auto-scan (protected SendWho)
    SendWho()/C_FriendList.SendWho() is a protected function that only runs
    from a hardware event (keypress/click). The C_Timer-driven auto-scan ran
    outside any hardware event, so on Anniversary realms it triggered
    ADDON_ACTION_BLOCKED: "GuildMute tried to call the protected function
    'SendWho()'".
    Drop the periodic scan entirely: remove StartAutoScan, the
    PLAYER_ENTERING_WORLD trigger, the /gm interval command and the
    scanIntervalMin setting. The roster now fills passively (mouseover/target)
    plus manual /gm scan, which is a hardware event and works. Bump to 0.5.0.
    Co-Authored-By: Claude Opus 4.8 noreply@anthropic.com
  • CI: bump actions/checkout to v5 (Node 24)
    actions/checkout@v4 runs on Node 20, which GitHub is deprecating on the
    runners. v5 runs on Node 24.
    Co-Authored-By: Claude Opus 4.8 noreply@anthropic.com
  • Update README.md
    removed example guild

v0.4.1

Choose a tag to compare

@github-actions github-actions released this 26 Apr 18:44

GuildMute

v0.4.1 (2026-04-26)

Full Changelog Previous Releases

  • Release 0.4.1: wire up CurseForge upload
  • Set CurseForge project ID in TOC
  • Long-form README in HeyListen style; trim CURSEFORGE.md
    README is now the canonical long description (Why, Requirements,
    Installation, Setup with concrete example, Sharing the list across
    characters, full Commands table, Limitations, License, Author) — same
    shape and tone as HeyListen's README.
    CURSEFORGE.md keeps the two summary variants and points the long
    description at README.md so we don't maintain two copies.
  • Add icon, CurseForge listing copy, generate PNGs
    • Media/icon.svg: bronze ring (matches HeyListen for in-house
      consistency), dark crimson disc, parchment speech bubble with three
      dots, diagonal red "no" slash. Reads as "muted chat" at 32px and up.
    • Media/build-icons.sh: SVG -> PNG renderer (reused from HeyListen),
      outputs 32/64/128/256/512.
    • Media/icon-*.png: pre-rendered listing assets.
    • CURSEFORGE.md: short and long summary plus Markdown long-description
      ready to paste into the CurseForge project page.
    • .pkgmeta ignores Media/icon.svg, Media/build-icons.sh, and
      CURSEFORGE.md from the packaged release zip.

v0.4.0

Choose a tag to compare

@github-actions github-actions released this 26 Apr 18:28

GuildMute

v0.4.0 (2026-04-26)

Full Changelog Previous Releases

  • CurseForge release polish: LICENSE, CHANGELOG, .pkgmeta, release workflow
    Brings the project structure in line with HeyListen so a tag push will
    build and release through BigWigsMods/packager.
    • LICENSE (MIT, 2026 Stroe-Spineshatter).
    • CHANGELOG.md covering 0.1.0 through 0.4.0 (Keep a Changelog format).
    • .pkgmeta declaring Ace3 + LibStub externals and ignoring dev-only
      config from the packaged build.
    • .github/workflows/release.yml triggering on v* tags via
      BigWigsMods/packager@v2.
    • TOC: X-License: MIT and X-Website pointing at the repo.
      X-Curse-Project-ID is intentionally omitted; can be added once the
      project exists on CurseForge.
  • Drop hardcoded guild default; align ignore rules with HeyListen (0.4.0)
    • targetGuild no longer defaults to "Dawnwalkers"; user must set it
      with /gm guild on first start. Until set, GuildMute idles
      silently (filter is a no-op, no /who scans run).
    • All targetGuild reads now handle nil cleanly (status, export, etc.).
    • Setting the guild now (re)starts the auto-scan ticker.
    • .gitignore matches HeyListen: .idea/, .vscode/, /dev-link.sh, etc.
      IntelliJ project files and dev-link.sh removed from tracking.
  • In-session history of filtered messages (0.3.0)
    Records what GuildMute hides so you can audit it. Default on.
    • History.lua: ring buffer of 200 entries; in memory only, never
      written to SavedVariables (avoids whisper bodies on disk and
      unbounded growth).
    • Filter.lua records before suppressing; gated to DEFAULT_CHAT_FRAME's
      pass so the per-frame filter loop doesn't double-count.
    • /gm history [N] show last N (default 20) in chat
    • /gm history all read-only viewer in the IO frame
    • /gm history clear|on|off
    • IO:ShowText is the new generic read-only frame helper.
  • Auto-scan and export/import (0.2.0)
    • Periodic /who scan: configurable via /gm interval , default 30,
      0 disables. Restarted on PLAYER_ENTERING_WORLD so login and /reload
      also trigger an initial scan ~5s in. Auto-scans only print when new
      names are found, to avoid chat spam.
    • Export/Import frame (IO.lua): /gm export shows a copyable EditBox
      with the full list and target guild; /gm import takes pasted payload
      and merges into the local list. Lets you carry the same list across
      characters/accounts when multiboxing.
    • Status output now includes the auto-scan interval.
  • Initial commit: GuildMute 0.1.0
    Hides whispers and party/raid chat from members of a target guild
    (default: Dawnwalkers) on TBC Classic Anniversary.
    Builds the mute list via three paths:
    • silent auto-learn from mouseover/target via GetGuildInfo
    • /gm refresh runs /who g-"" and harvests results
    • /gm add for manual entries
      Per-realm SavedVariables; Ace3-based; toggleable filtering.