[BUG]: The release version doesn't include locales
maqjav opened this issue · 9 comments
WoW client
WoW Retail
What happened?
Hello!
I downloaded the ZIP released in github and curseforge, and the latest version doesn't include localizations, the LUA file is empty.
do
local L = lib.countryLocalizedNames;
if LOCALE_deDE then
elseif LOCALE_esES then
elseif LOCALE_esMX then
elseif LOCALE_frFR then
elseif LOCALE_itIT then
elseif LOCALE_koKR then
elseif (LOCALE_ptBR or LOCALE_ptPT) then
elseif LOCALE_ruRU then
elseif LOCALE_zhCN then
elseif LOCALE_zhTW then
end
end
Cheers.
Lua Error Message?
No response
Other addons?
No response
Apparently the version r36 is still crashing.
This is the new log:
2x ...RareScanner/ExternalLibs/LibTime-1.0-36/LibTime-1.0.lua:98: attempt to index field 'countryLocalizedNames' (a nil value)
[string "@RareScanner/ExternalLibs/LibTime-1.0-36/LibTime-1.0.lua"]:98: in function `?'
[string "@RareScanner/ExternalLibs/LibTime-1.0-36/LibTime-1.0.lua"]:127: in function <...RareScanner/ExternalLibs/LibTime-1.0/LibTime-1.0.lua:125>
[string "=[C]"]: ?
I don't know if maybe these users have several addons with the same library and something is messed up.
I could reproduce the error installing Broker_Everything 4.5.10 and RareScanner (and loading the game in spanish).
I guess that the old code in Broker_Everything is still setting countryLocalizedNames to nil, so you have to take into account that if other addons are using the same library, the problem will show up.
In the meantime I'm going to add a fix to the library in my addon so I can release a working version, otherwise users are going to be very mad ;)
EDIT: I attached my fix, but I'm sure you can do it better (LibTime-1.0.lua.zip) ;)
I also added the spanish translations to your site so you can add them if you want.
That depends on the localization page on curseforge.
113 Entries and 0% translated into other languages.
:-/
Maybe it doesn't use the english values by default?
I'm getting a report of someone playing in french that is getting this error:
6x ...RareScanner/ExternalLibs/LibTime-1.0-35/LibTime-1.0.lua:94: attempt to index field 'countryLocalizedNames' (a nil value)
[string "@RareScanner/ExternalLibs/LibTime-1.0-35/LibTime-1.0.lua"]:94: in function `?'
[string "@RareScanner/ExternalLibs/LibTime-1.0-35/LibTime-1.0.lua"]:127: in function <...RareScanner/ExternalLibs/LibTime-1.0/LibTime-1.0.lua:125>
[string "=[C]"]: ?
He says that replacing the library included in my addon with the library included in Broker_Everything, that apparently includes all the traslations, fixes the issue.
You can read the whole thread here.
Cheers.
I see the problem in event execution. The code around line 94 should only be executed one time. I don't know why event VARIABLES_LOADED is trigger multible. I move the part to PLAYER_LOGIN and remove the "lib.countryLocalizedNames = nil". That should avoid the error.
I see no reason to copy&paste the version from Broker_Everything. It does not contains localized county names too. Or do you have another source of Broker_Everything? Offical sources are Github, Curseforge, WoWInterface and Wago.io.
Some years ago i've found modified versions on korean websites with completed korean localization and added it to my version of Broker_Everything. ;-)
Hello!
Great! I will give it a shot.
The version of Broker_Everything published in Curseforge includes translations in german, french, russian, korean and chinesse (it's missing spanish, italian and portuguese). And the idea of replacing my version with that one is because the user that plays in french that reported the error confirms that with those strings it works.
My addon doesn't use those translations at all, but I assume that like the game is loading my version (because RareScanner comes after Broker), the user might be getting the error because Broker_Everything probably requires them.
Cheers
I haven't developed a library before so I'm not sure how they instantiate, but maybe like this user has 2 addons that includes the library, is it possible that each addon triggers that event?, once with Broker_Everything, and once with RareScanner, finding the nil table in my case because Broker_Everything set it to nil before.
Your change should work anyway ;)