Skip to content

Release 20.4.0 - #1657

Merged
obiot merged 1 commit into
masterfrom
release/20.4.0
Sep 9, 2026
Merged

Release 20.4.0#1657
obiot merged 1 commit into
masterfrom
release/20.4.0

Conversation

@obiot

@obiot obiot commented Sep 8, 2026

Copy link
Copy Markdown
Member

Stamps the release date on the changelog. packages/melonjs/package.json is already at 20.4.0, so this is the only change the release itself needs.

What 20.4.0 contains

Added — an async option on level.load() / reload() / next() / previous() (#1646); soft transparency for the 3D tier (#1516); distance fog (#1622) with height falloff (#1633); per-vertex mesh colours (#1624); generated normals for lit meshes built without them; the API reference's own visual identity plus a Copy-page control.

Performance — the light block's getUniformBlockIndex memoized per program on WebGL (about 50% less engine CPU per frame), and the 1×1 filler texture no longer re-created every frame on WebGPU (about 17%).

Fixed — 14 entries, including specular highlights under a scaled ancestor (#1636), specular and alpha-map cutouts on whichever tier drew second, ground shadows lost to a batcher switch, floating children ordered by screen position, alpha-cutout meshes vanishing when faded, alpha = 0 painting opaque black, Color.toUint32() returning negative values, four ways a preloaded sound could hang the loading screen, and engine internals leaking into the published types and reference (#1637).

Verification

Full pnpm dist — clean, lint (0 errors, 174 pre-existing warnings), 276 test files / 6742 passing / 9 skipped, build, types, and docs: check-doc-readme passed, typedoc reported 0 errors, and llms.txt regenerated across 445 pages.

After merge

  1. tag 20.4.0 (no v prefix) and push it
  2. dispatch publish.yml with package=melonjspnpm publish-melonjs (tag push alone does not trigger it)

scripts/release.ts creates the GitHub release and titles it v20.4.0 itself. Docs redeploy from the push to master via docs.yml.

🤖 Generated with Claude Code

https://claude.ai/code/session_012Aa37KGXZcnVrbn1yG4j1N

Stamp the release date on the changelog. `packages/melonjs/package.json` is
already at 20.4.0, so this is the only change the release itself needs.

Verified with a full `pnpm dist`: clean, lint (0 errors), 276 test files /
6742 passing, build, types, and docs — check-doc-readme passed, typedoc
reported 0 errors, and llms.txt regenerated over 445 pages.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012Aa37KGXZcnVrbn1yG4j1N
Copilot AI lite review requested due to automatic review settings September 8, 2026 23:44

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

The changelog date is set to a future date relative to the PR’s provided timestamp and should be confirmed/corrected before release.

Once you've addressed the issues Copilot identified, you can request another Copilot review.

Pull request overview

Updates the melonJS package changelog to mark the 20.4.0 entry as released by replacing the “unreleased” marker with a date.

Changes:

  • Stamp a release date for 20.4.0 in the changelog.
File summaries
File Description
packages/melonjs/CHANGELOG.md Replaces the 20.4.0 “unreleased” label with a concrete release date.
Review details
  • Files reviewed: 1/1 changed files
  • Comments generated: 0
  • Review effort level: Lite

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

@obiot
obiot merged commit 5e05310 into master Sep 9, 2026
7 checks passed
@obiot
obiot deleted the release/20.4.0 branch September 9, 2026 00:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants