Skip to content

chore(release): 19.3.0#1438

Merged
obiot merged 3 commits intomasterfrom
chore/release-19.3.0
May 8, 2026
Merged

chore(release): 19.3.0#1438
obiot merged 3 commits intomasterfrom
chore/release-19.3.0

Conversation

@obiot
Copy link
Copy Markdown
Member

@obiot obiot commented May 8, 2026

Summary

Release prep for melonJS 19.3.0.

  • Stamp the CHANGELOG date (_unreleased__2026-05-08_).
  • Refresh the CodeAndWeb tool icons (TexturePacker / SpriteIlluminator / PhysicsEditor) with the official SVG originals extracted from codeandweb.com — fixes the white-halo artifact on dark backgrounds. Sized at 112×112 to match the previous PNG dimensions.

Headlines for 19.3.0

  • Lighting overhaulLight2d is now a first-class world Renderable; lights render inside the camera's post-effect FBO bracket; multi-light works on both Canvas and WebGL.
  • Normal-map sprite lighting (closes Add normal map support for sprite lighting (SpriteIlluminator) #1416) via a dedicated LitQuadBatcher with up to 8 concurrent lights and configurable ambient.
  • Procedural Light2d (closes Light2d: WebGL-native rendering via custom shader (replace offscreen canvas) #1430) — WebGL renders lights via a shared RadialGradientEffect shader; Canvas keeps a WeakMap gradient cache. No per-light textures.
  • Container clipping fix (closes clipRect: potential issues with transformed containers and scissor state cleanup #1349) — coord-space + matrix-aware AABB + flush-ordering in restore(). New Clipping example.
  • Latent bug sweep caught along the way: setMask(Rect|RoundRect) X/Y swap, WebGL vertex-attribute leak between batchers, gl.useProgram leak after setLightUniforms, stale custom shader after setBatcher, blitTexture texture-unit cache desync, scrolling-camera light cutout misalignment, stale Light2d gradient on property change.
  • Breaking: Light2d is now centered on its pos (anchorPoint = (0.5, 0.5)) — pre-19.3 callers that passed top-left coords need to add radiusX/radiusY (new Light2d(x + r, y + r, r)).

Test plan

  • pnpm vitest run — 2933 tests pass.
  • pnpm dist — clean + test + build + doc, 0 errors.
  • pnpm lint — 0 errors.
  • README icons render at the same visual size as before.

🤖 Generated with Claude Code

obiot and others added 2 commits May 8, 2026 15:47
Replace the rasterized PNG versions of the TexturePacker / SpriteIlluminator /
PhysicsEditor icons with the official SVG originals extracted from
codeandweb.com. The PNGs had a visible white halo on dark backgrounds caused
by raster anti-aliasing of the brand's deliberate outer ring; the vector
versions render the ring as a crisp 3px line at any size. Sized at 112×112
to match the original PNG dimensions.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Copilot AI review requested due to automatic review settings May 8, 2026 08:08
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Release preparation for melonJS 19.3.0, updating release metadata and refreshing vendor/tool branding assets used in the repository documentation.

Changes:

  • Stamped the 19.3.0 CHANGELOG entry date (_unreleased__2026-05-08_).
  • Updated README tool badges to use new CodeAndWeb SVG icons (TexturePacker / SpriteIlluminator / PhysicsEditor).
  • Added the corresponding SVG icon assets under media/icons/.

Reviewed changes

Copilot reviewed 2 out of 8 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
README.md Switches CodeAndWeb tool badge images from PNG to local SVG assets.
packages/melonjs/CHANGELOG.md Marks 19.3.0 as released with the release date.
media/icons/texturepacker.svg Adds refreshed TexturePacker SVG icon.
media/icons/spriteilluminator.svg Adds refreshed SpriteIlluminator SVG icon.
media/icons/physicseditor.svg Adds refreshed PhysicsEditor SVG icon.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread README.md Outdated
Comment on lines +127 to +129
[![TexturePacker](media/icons/texturepacker.svg "TexturePacker")](https://www.codeandweb.com/texturepacker)
[![SpriteIlluminator](media/icons/spriteilluminator.svg "SpriteIlluminator")](https://www.codeandweb.com/spriteilluminator)
[![PhysicsEditor](media/icons/physicseditor.svg "PhysicsEditor")](https://www.codeandweb.com/physicseditor)
Address Copilot review on #1438. The melonjs package's `files`
whitelist (packages/melonjs/package.json) does not include `media/`,
so relative `media/icons/*.svg` paths would 404 when the README is
rendered from the npm tarball (e.g. on npmjs.com). Switch to
`https://github.com/melonjs/melonJS/raw/master/media/icons/*.svg`,
matching the convention already used by the banner image at the top
of the same file.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@obiot obiot merged commit 58a0050 into master May 8, 2026
8 of 9 checks passed
@obiot obiot deleted the chore/release-19.3.0 branch May 8, 2026 08:24
obiot added a commit that referenced this pull request May 11, 2026
Adds the official Capacitor wordmark next to Cordova in the
README's Tools integration row, linking to capacitorjs.com.

Source: capacitorjs.com header logo (252x48 PNG with transparent
background). Saved locally under media/icons/ so the README renders
correctly from the npm tarball — same convention as the
codeandweb.com SVGs added in #1438.

No vector source exists; Ionic doesn't publish Capacitor as an SVG.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
obiot added a commit that referenced this pull request May 11, 2026
* docs(readme): add Capacitor to the Tools integration row

Adds the official Capacitor wordmark next to Cordova in the
README's Tools integration row, linking to capacitorjs.com.

Source: capacitorjs.com header logo (252x48 PNG with transparent
background). Saved locally under media/icons/ so the README renders
correctly from the npm tarball — same convention as the
codeandweb.com SVGs added in #1438.

No vector source exists; Ionic doesn't publish Capacitor as an SVG.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

* ci: nudge — extend main.yml comment to trigger CI on PR #1442

---------

Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

2 participants