fix: restore table.getn/setn for Ace2 stack so VanillaGuide loads on 3.3.5 Lua 5.1
release / release (push) Successful in 3s

WoW 3.3.5 Lua 5.1 runtime has table.setn as an error stub ("'setn' is obsolete")
and table.getn missing/erroring. The embedded Ace2 libs (AceLibrary, AceOO, AceEvent,
AceConsole, AceDebug, AceDB, Tablet-2.0) all assign table_setn = table.setn at module
scope when GetBuildInfo() does not start with "2." — causing AceOO-2.0 to crash at
line 546 before any library can register, then cascading to AceConsole/FuBarPlugin.

Add Lua50Compat.lua as the first TOC entry to unconditionally overwrite table.setn
(no-op) and table.getn (returns #t) before any lib loads. Also shims
table.foreach/foreachi in case future libs need them. Verified with LuaJIT 5.1:
AceLibrary + AceOO load cleanly; all other libs stop only at WoW-API boundaries
(not at obsolete-call errors).
This commit is contained in:
2026-05-30 06:57:25 +02:00
parent 42e21fab5d
commit a8ea6429e1
2 changed files with 104 additions and 61 deletions
+62 -61
View File
@@ -1,61 +1,62 @@
## Interface: 30300
## Title: VanillaGuide |cff7fff7f -Ace2-|r |cffff7f7f(CoA)|r
## Notes: Step-by-Step 1-60 Guides (CoA fork: Ascension 3.3.5 port, Joana H/A paths)
## Author: mrmr
## Version: 1.04.2-coa1
## DefaultState: enabled
## LoadOnDemand: 0
## X-Credits: Joana/Mancow and Brian Kopps for the guides. mrmr for the Joana addon. Kira and Cdlp for the Brian Kopps' guide. Velenran for Profession guides. CoA Guild 'Exiles' for the 3.3.5 port.
## X-Category: Quests
## X-Date: 2026-05-11
## X-ReleaseDate: 2012-xx-xx
## X-Email: rsheep@gmail.com
## X-Website: https://git.sub-net.at/Exiles/coa-vanillaguide
## X-Embeds: Ace2, FuBar-Plugin-2.0, Tablet-2.0
## OptionalDeps: Ace2, FuBar, Tablet-2.0
## SavedVariables: VanillaGuideDB
## SavedVariablesPerCharacter: VanillaGuideDBPC
libs\AceLibrary\AceLibrary.lua
libs\AceOO-2.0\AceOO-2.0.lua
libs\AceConsole-2.0\AceConsole-2.0.lua
libs\AceEvent-2.0\AceEvent-2.0.lua
libs\AceAddon-2.0\AceAddon-2.0.lua
libs\AceDB-2.0\AceDB-2.0.lua
libs\AceDebug-2.0\AceDebug-2.0.lua
Core.lua
Settings.lua
GuideTables\001_Introduction.lua
GuideTables\Horde\002_Mulgore.lua
GuideTables\Horde\002_TirisfalGlades.lua
GuideTables\Horde\002_Durotar.lua
GuideTables\Horde\003_Horde_12to20.lua
GuideTables\Horde\003_Horde_20to30.lua
GuideTables\Horde\003_Horde_30to40.lua
GuideTables\Horde\003_Horde_40to50.lua
GuideTables\Horde\003_Horde_50to60.lua
GuideTables\Alliance\002_ElwynnForest.lua
GuideTables\Alliance\002_Teldrassil.lua
GuideTables\Alliance\002_DunMorogh.lua
GuideTables\Alliance\003_Alliance_12to20.lua
GuideTables\Alliance\003_Alliance_20to30.lua
GuideTables\Alliance\003_Alliance_30to40.lua
GuideTables\Alliance\003_Alliance_40to50.lua
GuideTables\Alliance\003_Alliance_50to60.lua
GuideTables\004_Professions.lua
GuideTable.lua
Display.lua
SlashCommands.lua
Frame_MainFrame.lua
Frame_AboutFrame.lua
Frame_SettingsFrame.lua
UI.lua
libs\Tablet-2.0\Tablet-2.0.lua
libs\Dewdrop-2.0\Dewdrop-2.0.lua
libs\FuBarPlugin-2.0\FubarPlugin-2.0.lua
VGuideFu.lua
## Interface: 30300
## Title: VanillaGuide |cff7fff7f -Ace2-|r |cffff7f7f(CoA)|r
## Notes: Step-by-Step 1-60 Guides (CoA fork: Ascension 3.3.5 port, Joana H/A paths)
## Author: mrmr
## Version: 1.04.2-coa1
## DefaultState: enabled
## LoadOnDemand: 0
## X-Credits: Joana/Mancow and Brian Kopps for the guides. mrmr for the Joana addon. Kira and Cdlp for the Brian Kopps' guide. Velenran for Profession guides. CoA Guild 'Exiles' for the 3.3.5 port.
## X-Category: Quests
## X-Date: 2026-05-11
## X-ReleaseDate: 2012-xx-xx
## X-Email: rsheep@gmail.com
## X-Website: https://git.sub-net.at/Exiles/coa-vanillaguide
## X-Embeds: Ace2, FuBar-Plugin-2.0, Tablet-2.0
## OptionalDeps: Ace2, FuBar, Tablet-2.0
## SavedVariables: VanillaGuideDB
## SavedVariablesPerCharacter: VanillaGuideDBPC
Lua50Compat.lua
libs\AceLibrary\AceLibrary.lua
libs\AceOO-2.0\AceOO-2.0.lua
libs\AceConsole-2.0\AceConsole-2.0.lua
libs\AceEvent-2.0\AceEvent-2.0.lua
libs\AceAddon-2.0\AceAddon-2.0.lua
libs\AceDB-2.0\AceDB-2.0.lua
libs\AceDebug-2.0\AceDebug-2.0.lua
Core.lua
Settings.lua
GuideTables\001_Introduction.lua
GuideTables\Horde\002_Mulgore.lua
GuideTables\Horde\002_TirisfalGlades.lua
GuideTables\Horde\002_Durotar.lua
GuideTables\Horde\003_Horde_12to20.lua
GuideTables\Horde\003_Horde_20to30.lua
GuideTables\Horde\003_Horde_30to40.lua
GuideTables\Horde\003_Horde_40to50.lua
GuideTables\Horde\003_Horde_50to60.lua
GuideTables\Alliance\002_ElwynnForest.lua
GuideTables\Alliance\002_Teldrassil.lua
GuideTables\Alliance\002_DunMorogh.lua
GuideTables\Alliance\003_Alliance_12to20.lua
GuideTables\Alliance\003_Alliance_20to30.lua
GuideTables\Alliance\003_Alliance_30to40.lua
GuideTables\Alliance\003_Alliance_40to50.lua
GuideTables\Alliance\003_Alliance_50to60.lua
GuideTables\004_Professions.lua
GuideTable.lua
Display.lua
SlashCommands.lua
Frame_MainFrame.lua
Frame_AboutFrame.lua
Frame_SettingsFrame.lua
UI.lua
libs\Tablet-2.0\Tablet-2.0.lua
libs\Dewdrop-2.0\Dewdrop-2.0.lua
libs\FuBarPlugin-2.0\FubarPlugin-2.0.lua
VGuideFu.lua