v0.13.7
errors and warnings / manifest

errors and warnings / manifest / E4005

E4005 error

Conflicting setting between .pkgmeta and wowlua.json in compatibility mode

area
manifest (x4xxx)
fails the build
yes

With "compat": { "pkgmeta": true }, the project's .pkgmeta stays the source of its dependencies and packaging settings, and wowlua.json only adds what is wowlua's own. A setting that both files make is this error, because one of them would be ignored: a dependency's source keys (git, svn, tag, path, install-path, …) for an external that .pkgmeta lists, build.libs-dir, build.exclude (.pkgmeta's ignore), addon.name (package-as) or publish.changelog (manual-changelog).

Keep the setting in .pkgmeta and remove it from wowlua.json. A dependency entry in wowlua.json may still add files, flavors, optional and the other keys that are not about the source.

Example

× fails.pkgmetayaml
package-as: Playground ignore:  - notes
wowlua.jsonjson
{    "package": {        "name": "playground",        "version": "0.1.0",        "wowlua": "^0.13"    },    "flavors": {        "camelot": {}    },    "build": {        "exclude": ["notes/**"]    },    "compat": {        "pkgmeta": true    }}
✓ compiles.pkgmetayaml
package-as: Playground ignore:  - notes
wowlua.jsonjson
{    "package": {        "name": "playground",        "version": "0.1.0",        "wowlua": "^0.13"    },    "flavors": {        "camelot": {}    },    "compat": {        "pkgmeta": true    }}

The compiler reports it like this:

error[E4005]: `build.exclude` (`ignore`) is set by both `.pkgmeta` and wowlua.json
 = in wowlua.json
 = help: with `compat.pkgmeta`, keep it in `.pkgmeta` and remove it from wowlua.json
codemessage
W4333.pkgmeta hg external cannot be converted

Offline

terminal
$ wowlua explain E4005
E4005 (error): Conflicting setting between .pkgmeta and wowlua.json in compatibility mode

source on GitHub ↗