Guild Shopping List

An addon to create guild shopping lists from the major professions excluding; gathering and first aid.
Back to Files

GuildShoppingList-v0.9.0

File nameGuildShoppingList-GuildShoppingList-v0.9.0.zip
Uploader
PmptastyPmptasty
Uploaded
Oct 7, 2026
Downloads
32
Size
55.6 KB
Flavors
MoP ClassicClassic TBCClassic
File ID
9092163
Type
R
Release
Supported game versions
  • 5.5.4
  • 4.4.2
  • 3.4.5
  • 2.5.6
  • 1.15.9

What's new

Guild Shopping List

[v0.9.0] (2026-10-07) -- final release

Retirement (TOGBankClassic GSL-MERGE D8)

  • GuildShoppingList is retired. Its features (the shopping list, list setup for the GM / officers / [GSL] member, and the Reagent Tracker) are now in TOG Bank (TOGBankClassic) v1.7.0, released 2026-09-26.
  • New one-time-per-session chat notice on PLAYER_ENTERING_WORLD (GSLPrintRetirementNotice in GSLUtilities.lua). It tells players to keep GuildShoppingList enabled until the guild master, an officer or the [GSL] member has logged in once with both addons on. TOG Bank's migration reads GuildShoppingList_SavedItems and GuildShoppingList_Config.GatherStartDate / GatherEndDate, and the client only loads those while this addon is enabled. The wording changes depending on whether TOGBankClassic is loaded (C_AddOns.IsAddOnLoaded, falling back to the bare global). On Wrath and Cataclysm, where TOG Bank does not ship, it says only that the addon is retired and keeps working.

Packaging

  • LibDBIcon-1.0 is now a required CurseForge dependency (libdbicon-1-0 in .pkgmeta, LibDBIcon-1.0 in every TOC's ## Dependencies). The embedded Libs/LibDBIcon-1.0 copy is deleted. This also fixes a load error. The embedded LibDataBroker-1.1 was removed in v0.7.2 (aad001f), but GSLCore.lua still error()s at load when LibDataBroker-1.1 is missing. So since v0.7.2 the addon only loaded when some other addon happened to supply LibDataBroker-1.1. The standalone LibDBIcon-1.0 loads it through its own embeds, so the dependency covers both libraries.
  • GuildShoppingList_BCC.toc renamed to GuildShoppingList_TBC.toc. _BCC is not a suffix any client recognises (only the legacy hyphenated -BCC, itself dropped in Anniversary 2.5.5), so TBC / Anniversary clients had been loading the Vanilla manifest and flagging the addon out of date.
  • GuildShoppingList_Mists.toc: Interface 50503 -> 50504.
  • Every TOC title now uses the fleet brand colour: |cffFF8000Guild Shopping List|r.
  • .pkgmeta: the **/*.ps1 / **/*.bat / **/*.sh ignores became *.ps1 etc. With **/, a root-level file never matched. Removed the dot-entries (.git/, .github/, .vscode/, .luarc.json, .markdownlint*), which the packager prunes anyway. Removed all comments. Added Tests.

Fixed

  • /gslhelp listed /gslrequest, which was never registered as a slash command (GSLUtilities.lua). It now lists /gslvcheck and /gsldebug, the two registered commands it had been leaving out.
  • When the GSL player picked a new gather date, the calendar called GSL:RequestGSLData(). That asks the guild for data newer than the GSL player's own, so nobody answered and the new dates never reached members. It now stamps GuildShoppingList_GSLDataSyncTimestamp with time() and calls GSL:ShareShoppingList() (GuildShoppingList.lua, updateCalendar; this was docs/Review.md second pass #1).
  • The GSL player / gather-range header never refreshed after a sync. GSLComs.lua calls the global UpdateGSLPlayerText, but GuildShoppingList.lua declared it local, so the global was always nil and the if UpdateGSLPlayerText then guard skipped it. It is now a global. Found by the new coms_spec.
  • The minimap button position and the "You" reagent counts were lost on every reload. GuildShoppingListDB (where LibDBIcon saves the button) and GuildShoppingList_ReagentData were never in ## SavedVariables. Both are now in all five TOCs, and GuildShoppingListDB.minimap is re-defaulted in the ADDON_LOADED handler, after saved variables load (this was docs/Review.md second pass #10).
  • The recipe-suggestion list listened to GLOBAL_MOUSE_DOWN (every click in the game) permanently. It now registers only while the list is showing (docs/Review.md second pass #8).
  • The quantity-edit and clear-data popups were rebuilt on every click. Both are now defined once; the row being edited is passed through StaticPopup_Show's data argument (second pass #9).
  • GetTotalItemCount dropped the bank whenever it was closed, despite a comment promising a cache. For the GSL player it now adds GuildShoppingList_GSLBankCache when the bank is closed. For anyone else that cache holds the GSL player's synced bank, not their own, so it is never used for them; the comment now says so (second pass #2). A new saved variable, GuildShoppingList_GSLBankCacheOwner, records whose bank the cache holds. It is set when the GSL player scans their bank, when a sync arrives (to the sender) and by the legacy BankCache migration, and cleared by /gslclear. The cache is counted only when its owner is this character. Without it, a character that had just taken over the [GSL] role would count the previous GSL player's bank as its own until it opened its bank.
  • ScanAndSaveReagents did one full bag scan per reagent. It now takes one snapshot and looks each reagent up in it (second pass #7).
  • Removed the dead GSL_SHARE prefix registration in GSLComs.lua. AceComm's RegisterComm registers the two prefixes actually used, GSLShare and GSLRequest (second pass #3). Removed the no-op GuildShoppingList_GSLDataSyncTimestamp = ... or nil in GSLCore.lua (second pass #6).
  • Removed the selectedRecipe local in GuildShoppingList.lua. It was written in three places and never read.
  • The CurseForge description and README now list every game version the addon ships a TOC for (Classic Era, TBC / Anniversary, Wrath, Cataclysm, Mists), instead of Classic Era only. README's Interface number 11507 is corrected to 11509.

Development

  • Offline unit-test suite on the shared WoWAPITesting harness (Tests/, .busted, .luacheckrc).

[v0.8.3] (2026-07-22)

  • Fixed: the addon no longer errors on login after the latest Classic Era client update. The update removed several legacy global API functions the addon called directly — GetAddOnMetadata, GetItemInfo, and RegisterAddonMessagePrefix, which moved into the C_AddOns / C_Item / C_ChatInfo namespaces. GetAddOnMetadata threw a nil-call error in the main chunk at load, taking the whole addon down before its window, reagent tracker, or guild sync could run.
  • The addon now prefers the namespaced calls with a fallback to the old globals, so it loads and runs on the updated Classic Era client while remaining compatible with older clients. No change to how the addon is used.

[v0.8.2] (2025-11-26)

  • Added a Miscellaneous list so items that don't belong to a crafting profession (E'kko's turn-ins and other guild sundries) can be tracked alongside the profession shopping lists.

[v0.8.1] (2025-11-19)

  • Version display: the addon now shows its running version, so guild members can confirm they're all on the same build.
  • Removed the "please /reload" nag that printed after a sync — syncing no longer requires a reload.

[v0.8.0] (2025-11-19)

  • More compact Reagent Tracker layout — the tracker window is tighter and easier to keep on screen while gathering.
  • The gather date buttons are now hidden for non-GSL players — only the designated GSL player sets the gather window; everyone else just reads it.

[v0.7.5] (2025-11-02)

  • Reagent Tracker "needed" totals now account for items you've already made, so the tracker counts down as you craft rather than always showing the full requirement.

[v0.7.4] (2025-11-02)

  • "Needed" reagent calculations account for already-made items in the main list (the tracker follow-up shipped in v0.7.5).
  • Smoother tracker window dragging.

[v0.7.3] (2025-11-01)

  • Fixed the item edit box.
  • Fixed the gather date range for non-GSL players (they now read the shared range from cache correctly).

[v0.7.2] (2025-10-10)

  • Reworked the date picker: the old date dropdown is now a proper date picker / calendar, and the GSL player's display shows the full gather date range with a tooltip.
  • Tracker window now sorts entries ascending.
  • Ace3 and VersionCheck-1.0 are now external dependencies (pulled by CurseForge) instead of being bundled in the addon.
  • Testing-version handling reworked so pre-release builds no longer flag the whole guild with a mismatched version.

[v0.7.0] (2025-09-19)

  • Major refactor of the codebase.
  • VersionCheck (VC) integration fully working — the addon reports its version to the guild and the debug flag persists in SavedVariables.

Releases prior to v0.7.0 (the v0.4.x–v0.6.x series) pre-date this changelog.

This mod has no additional files