File Details
2.0.0
- R
- Mar 13, 2026
- 321.37 KB
- 11
- 12.0.1+5
- Retail + 2
File Name
DragonToast-2.0.0.zip
Supported Versions
- 12.0.1
- 12.0.0
- 11.2.7
- 5.5.3
- 5.5.2
- 2.5.5
# DragonToast
## [2.0.0](https://github.com/DragonAddons/DragonToast/tree/2.0.0) (2026-03-13)
[Full Changelog](https://github.com/DragonAddons/DragonToast/compare/1.13.0...2.0.0) [Previous Releases](https://github.com/DragonAddons/DragonToast/releases)
- feat!: codebase-wide refactoring for consistency and maintainability (#127)
* feat!: codebase-wide refactoring for consistency and maintainability
- Extract shared WidgetConstants and LayoutConstants for Options UI
- Deduplicate moneyPatterns across LootListener wrappers
- Split test infrastructure from ToastManager into TestToasts module
- Break up 5 functions exceeding 50-line limit into focused helpers
- Replace repetitive patterns with table-driven loops across 5 files
- Table-driven Config migrations and FormatNumber direct alias
BREAKING CHANGE: ns.ToastManager test functions moved to ns.TestToasts
* fix: address code review findings across listeners, core, and widgets
Bug fixes:
- Fix GetInboxText unpacking in MailListener_Shared (5th return value)
- Fix isSelf default in MessageBridge treating nil as true
- Guard nil schemaVersion in Config migration loop
- Fix MONOCHROME label mismatch in AppearanceTab
Defensive guards:
- Add nil checks before shared module Create() calls in version-specific listeners
- Store addon reference as local upvalue in shared listeners
- Guard ns.TestToasts calls in SlashCommands
- Validate backgroundColor type in Presets
- Normalize Slider initial value to range and step
- Add fallback for WidgetConstants in ScrollFrame
Widget improvements:
- Capture template FontString for SetDisabled in Button
- Add self param to OnLeave in Button
- Use WidgetConstants in Button and Description
- Remove redundant RefreshVisibleWidgets in ProfilesTab
Style consistency:
- Convert dot-style methods to colon syntax in TabGroup, Init
- Reset QueueUtils indices on drain
Meta fixes:
- Fix MD038 trailing spaces in AGENTS.md
- Update Xerrion to DragonAddons in CHANGELOG.md URLs
- Remove machine-specific paths from .luarc.json
- Exclude .types.lua from luacheck
- Document XP fallback pattern as English-only
* fix: address code review findings
- Extract BuildTestLootData/BuildTestStackData to decompose 50+ line functions
- Unify listener factory pattern (Honor/Currency/Reputation use Create method)
- Add type guard in MailListener ProcessSnapshot
- Add PLAYER_UNIT constant in LootListener/MailListener shared modules
- Move SIMPLE_MIGRATIONS to file scope in Config.lua
- Add LibStub silent flag + nil guard in GeneralTab.lua
- Import WidgetConstants in Panel.lua and Header.lua with fallbacks
- Replace em-dashes with regular dashes in MinimapIcon, TestToasts, ElvUISkin
- Fix unused ADDON_NAME in MailListener_TBC, XPListener, MessageBridge
- Add missing EOF newlines in .pkgmeta and .gitignore
- Add .luarc.json and .types.lua to .pkgmeta ignore list
- fix: exclude generate_sound.py from bundling
- fix: add missing currency loot messages (#126)
Fixed toasts never getting show when in groups.
- chore: interface cleanup and pkgmeta maintenance (#125)
- fix: use correct verion tags (#124)
* fix: use correct verion tags
Fixed a long lasting and potentional buggy behaviour in the TOC loading.
* fix: exclude spec files
- feat: add bundled default notification sounds (#122)
- Generate 4 dragon-themed OGG sounds via Python synthesis script
- Dragon Toast: bell chime + dragon rumble + fire sparkle (default)
- Dragon Roar: bold aggressive growl + metallic hit
- Ember Chime: soft warm crystalline chime + gentle pad
- Treasure Drop: ascending metallic coin tones + shimmer
- Register all sounds with LibSharedMedia in new Core/Media.lua
- Update default soundFile from "None" to "Dragon Toast"
- Keep generate_sound.py as reproducible build artifact

