v0.13.7
errors and warnings / manifest

errors and warnings / manifest / W4030

W4030 warning

Unsupported packager keyword

area
manifest (x4xxx)
fails the build
with --deny-warnings

A Lua or XML file of a converted packager project (compat.packager-keywords) uses the BigWigs packager's @localization(…)@ keyword, which the packager replaces with translations from CurseForge's localization tool. wowlua does not fetch them and leaves the line unchanged, so it stays a comment and the translations are missing.

If the package has the translations as files, compat.localization names them, {locale} standing for the keyword's locale, and the build puts each locale's file in place of its keyword. Or move the translations to wowlua:locale, or write the strings into the file.

With the translations in the package (locales/enUS.lua):

Example

× failswowlua.jsonjson
{    "package": {        "name": "playground",        "version": "0.1.0",        "wowlua": "^0.13"    },    "flavors": {        "camelot": {}    },    "compat": {        "packager-keywords": true    }}
src/main.lualua
local L = {}--@localization(locale="enUS", format="lua_additive_table")@print(L)
✓ compileswowlua.jsonjson
{    "package": {        "name": "playground",        "version": "0.1.0",        "wowlua": "^0.13"    },    "flavors": {        "camelot": {}    },    "compat": {        "packager-keywords": true    }}
src/main.lualua
local L = {}L["Hello"] = "Hello"print(L)
✓ compileswowlua.jsonjson
{    "package": {        "name": "playground",        "version": "0.1.0",        "wowlua": "^0.13"    },    "flavors": {        "camelot": {}    },    "compat": {        "packager-keywords": true,        "localization": "locales/{locale}.lua"    }}
src/main.lualua
local L = {}--@localization(locale="enUS", format="lua_additive_table")@print(L)
locales/enUS.lualua
L["Hello"] = "Hello"

The compiler reports it like this:

warning[W4030]: `@localization(…)@` is not supported; the line is left unchanged
 = in src/main.lua
 = help: set `compat.localization` to the package's locale files, or use `wowlua:locale`
codemessage
W4031Packager @retail@ blocks left as written in a multi-version build
E4335Packager @version-…@ blocks in a multi-version build

Offline

terminal
$ wowlua explain W4030
W4030 (warning): Unsupported packager keyword

source on GitHub ↗