File Details
NE Stats v1.1.1
- R
- Jun 28, 2026
- 121.54 KB
- 48
- 12.1.0
- Retail
File Name
NE-Stats-v1.1.1.zip
Supported Versions
- 12.1.0
NE Stats v1.1.1
Changes since v1.1.0.
Merged pull requests
#62 fix(ci): read CurseForge metadata from a file to avoid semicolon mangling
Problem
The Release On Master Push workflow failed at Upload to CurseForge with:
{"errorCode":1002,"errorMessage":"Error in field `metadata`:\nInvalid JSON."}
Root cause
The metadata JSON is built correctly by jq (valid), but it is passed to curl inline:
-F "metadata=$metadata"
curl's -F parses ; in the field value as form-field parameters (;type=, ;filename=). The auto-generated changelog contains semicolons (e.g. "no errors; entering...", "LuaFileSystem; incompatible..."), so curl splits the value at the first ; and CurseForge receives truncated/invalid JSON.
Confirmed by replaying the exact v1.1.0 release notes through the same -F form against httpbin: the received metadata field is corrupted.
Fix
Write the metadata to a file and have curl read the field value from the file:
jq -n ... > "$metadata_file"
-F "metadata=<$metadata_file;type=application/json"
-F "name=<file" reads the value from the file content and does not scan it for ;/@/</newlines, so the changelog can contain anything. Also sets the part content type to application/json. Applied to both tag-release.yml and release.yml (identical step).
Releasing 1.1.0
The v1.1.0 GitHub release (auto-generated, which never reached CurseForge) has been deleted; the v1.1.0 tag is kept. Merging this PR re-runs the pipeline: the release no longer exists, the tag is reused (no new tag push), and the fixed CurseForge upload runs. Net result: 1.1.0 published to CurseForge, no version change.
#63 chore: refresh WoW API docs (build 12.0.7.68256)
Automated WoW API doc refresh from Gethe/wow-ui-source (live). Does not touch ZhuraStats.toc, so no release is cut.
#64 chore: refresh WoW API docs (build 12.0.7.68256)
Automated WoW API doc refresh from Gethe/wow-ui-source (live). Does not touch ZhuraStats.toc, so no release is cut.
#65 chore: refresh WoW API docs (build 12.0.7.68275)
Automated WoW API doc refresh from Gethe/wow-ui-source (live). Does not touch ZhuraStats.toc, so no release is cut.
#66 chore: refresh WoW API docs (build 12.0.7.68275)
Automated WoW API doc refresh from Gethe/wow-ui-source (live). Does not touch ZhuraStats.toc, so no release is cut.
#67 chore: refresh WoW API docs (build 12.0.7.68275)
Automated WoW API doc refresh from Gethe/wow-ui-source (live). Does not touch ZhuraStats.toc, so no release is cut.
#68 chore: refresh WoW API docs (build 12.0.7.68275)
Automated WoW API doc refresh from Gethe/wow-ui-source (live). Does not touch ZhuraStats.toc, so no release is cut.
#69 chore: update stat priority data (archon.gg) -> v1.1.1
Automated stat priority update from archon.gg. Auto-merged by workflow.
Included commits
- 82adcdb fix(ci): read CurseForge metadata from a file to avoid semicolon mangling
- fc939de Merge pull request #62 from zhuravlevkk/fix/curseforge-metadata-json
- 565c836 chore: refresh WoW API docs (build 12.0.7.68256)
- ed6e991 chore: refresh WoW API docs (build 12.0.7.68256)
- ab4ab53 chore: refresh WoW API docs (build 12.0.7.68275)
- a4afc14 chore: refresh WoW API docs (build 12.0.7.68275)
- 22c16f1 chore: refresh WoW API docs (build 12.0.7.68275)
- 8ec52ab chore: refresh WoW API docs (build 12.0.7.68275)
- 002f6fd chore: update stat priority data (archon.gg) -> v1.1.1