Repository navigation
chore(deps): update dependency pixi.js to v8.22.0 - #50
Open
renovate[bot] wants to merge 1 commit into
Open
renovate[bot] wants to merge 1 commit into
renovate[bot] wants to merge 1 commit into
Conversation
renovate
Bot
force-pushed
the
renovate/pixijs-monorepo
branch
from
July 3, 2025 18:55
1cbe8f4 to
2cd8e7b
Compare
renovate
Bot
force-pushed
the
renovate/pixijs-monorepo
branch
from
August 5, 2025 10:33
2cd8e7b to
662d359
Compare
renovate
Bot
force-pushed
the
renovate/pixijs-monorepo
branch
from
September 6, 2025 15:56
662d359 to
895c42b
Compare
renovate
Bot
force-pushed
the
renovate/pixijs-monorepo
branch
from
September 10, 2025 09:04
895c42b to
35a4246
Compare
renovate
Bot
force-pushed
the
renovate/pixijs-monorepo
branch
from
October 7, 2025 01:52
35a4246 to
329827f
Compare
renovate
Bot
force-pushed
the
renovate/pixijs-monorepo
branch
from
November 10, 2025 10:47
329827f to
853091c
Compare
renovate
Bot
force-pushed
the
renovate/pixijs-monorepo
branch
from
November 18, 2025 09:59
853091c to
5ad1754
Compare
renovate
Bot
force-pushed
the
renovate/pixijs-monorepo
branch
from
November 20, 2025 13:55
5ad1754 to
fe78011
Compare
renovate
Bot
force-pushed
the
renovate/pixijs-monorepo
branch
from
January 5, 2026 11:43
fe78011 to
208ebf8
Compare
renovate
Bot
force-pushed
the
renovate/pixijs-monorepo
branch
from
January 19, 2026 18:46
208ebf8 to
209a383
Compare
renovate
Bot
force-pushed
the
renovate/pixijs-monorepo
branch
from
February 3, 2026 16:58
209a383 to
d098c87
Compare
renovate
Bot
force-pushed
the
renovate/pixijs-monorepo
branch
from
March 9, 2026 18:11
d098c87 to
91fb932
Compare
renovate
Bot
force-pushed
the
renovate/pixijs-monorepo
branch
from
March 16, 2026 09:51
91fb932 to
1ca7609
Compare
renovate
Bot
force-pushed
the
renovate/pixijs-monorepo
branch
from
April 1, 2026 17:46
1ca7609 to
f714486
Compare
renovate
Bot
force-pushed
the
renovate/pixijs-monorepo
branch
from
April 14, 2026 17:42
f714486 to
02f7f83
Compare
renovate
Bot
force-pushed
the
renovate/pixijs-monorepo
branch
from
April 14, 2026 21:33
02f7f83 to
03c6441
Compare
renovate
Bot
force-pushed
the
renovate/pixijs-monorepo
branch
from
April 29, 2026 20:28
03c6441 to
98021fe
Compare
renovate
Bot
force-pushed
the
renovate/pixijs-monorepo
branch
from
May 12, 2026 10:40
98021fe to
3681a49
Compare
renovate
Bot
force-pushed
the
renovate/pixijs-monorepo
branch
from
June 4, 2026 08:47
3681a49 to
7eee9b8
Compare
renovate
Bot
force-pushed
the
renovate/pixijs-monorepo
branch
from
July 12, 2026 10:46
7eee9b8 to
1189a65
Compare
renovate
Bot
force-pushed
the
renovate/pixijs-monorepo
branch
2 times, most recently
from
August 20, 2026 22:03
0bd6950 to
c6ce636
Compare
renovate
Bot
force-pushed
the
renovate/pixijs-monorepo
branch
from
August 26, 2026 10:59
c6ce636 to
e53cd49
Compare
renovate
Bot
force-pushed
the
renovate/pixijs-monorepo
branch
from
August 26, 2026 22:00
e53cd49 to
d94b871
Compare
renovate
Bot
force-pushed
the
renovate/pixijs-monorepo
branch
from
September 17, 2026 16:59
d94b871 to
6a7ceb7
Compare
renovate
Bot
force-pushed
the
renovate/pixijs-monorepo
branch
2 times, most recently
from
October 1, 2026 13:12
fdc2677 to
ed3f65e
Compare
renovate
Bot
force-pushed
the
renovate/pixijs-monorepo
branch
from
October 2, 2026 02:27
ed3f65e to
92ce162
Compare
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Note
This PR body was truncated due to platform limits.
This PR contains the following updates:
8.10.1→8.22.0Release Notes
pixijs/pixijs (pixi.js)
v8.22.0Compare Source
💾 Download
Installation:
Development Build:
Production Build:
Documentation:
Changed
🚨 Behavior Change
activateOnTabis left at its default oftrue. This restores the documented default, which regressed in v8.14.0. To keep Tab from activating it:accessibleTextnow applies to the defaultbuttontype and to accessible elements recycled from the pool.🎁 Added
contextmenuandcontextmenucaptureevents, also available as theoncontextmenuhandler property. The event is aFederatedPointerEventthat PixiJS hit-tests and propagates likepointerdown, andeventFeatures.clickgates it.transientrenderer option (WebGPU, withantialias) discards the canvas's multisample depth/stencil buffer at the end of each pass, and its color buffer too on GPUs that aren't tile-based.🐛 Fixed
🧹 Chores
New Contributors
v8.21.0Compare Source
💾 Download
Installation:
Development Build:
Production Build:
Documentation:
Changed
🚨 Behavior Change
Matrix.decompose()andsetFromMatrix()(plusreparentChild(),reparentChildAt()andreplaceChild()) now turn a mirrored matrix into a realrotation, zeroskewand a negativescale.x. Previously they returnedrotation = 0with a nonzeroskew. Rendering is identical; only the values you read back change. The flip always lands onscale.x, so ascale(1, -1)matrix now givesscale (-1, 1)withrotation = -π. Re-check any flip detection or tweens that start from decomposed values.🎁 Added
@webgpu/typesfor you. On TypeScript 6 and 7, which include WebGPU types built in, remove@webgpu/typesfromcompilerOptions.typesand use@types/webin place of the"dom"lib, since some releases leave out parts such asGPUTextureUsage. See the new TypeScript guide.{ "compilerOptions": { "lib": ["esnext"], "types": ["@types/web"] } }ExtensionType.WebGLLoader,ExtensionType.WebGPULoaderandExtensionType.CanvasLoaderextensions register an asyncload()hook that the matching renderer awaits duringinit(), before it creates its systems and pipes. Plugins canimport()backend-only code this way, so each backend stays in its own chunk and only the active one loads. Loaders are deduplicated bynameand are skipped whenskipExtensionImportsistrue.Geometrygains anindexCountproperty (also a constructor option), the index-buffer counterpart toinstanceCount. Several geometries can share one index buffer while each draws only its first N indices. Changing it never re-uploads anything. The default0draws the whole buffer, and an explicitsizeon the draw call still takes precedence.renderer.renderTarget.isFrontFaceInverted()replaces thefrontFaceInvertedgetter, which is now deprecated. Pass a target andflipYto get the winding for a target before you bind it, so 3D pipelines can pick a projection first.flipYdefaults tofalse, matchingbind().TexturePoolandCanvasPoolnow size pooled textures to the screen instead of always rounding up to a power of two, which saves a lot of GPU memory on fullscreen filters (a 1170x2532 phone used to get 2048x4096 textures). Requests larger than every screen still round up to a power of two.getOptimalTexture()andcreateTexture()now take aTexturePoolRequestobject with per-requestformatandscaleMode; the positional signatures still work but are deprecated.🐛 Fixed
🧹 Chores
New Contributors
v8.20.1Compare Source
💾 Download
Installation:
Development Build:
Production Build:
Documentation:
Changed
🐛 Fixed
TextStyleon destroy by @qiao-coding in #12159🧹 Chores
@xmldom/xmldomto 0.8.15 by @Zyie in #12162npm warn deprecated @xmldom/xmldom@0.8.14warning printed when installingpixi.js.New Contributors
Full Changelog: pixijs/pixijs@v8.20.0...v8.20.1
v8.20.0Compare Source
💾 Download
Installation:
Development Build:
Production Build:
Documentation:
Changed
🚨 Behavior Change
StructsAndGroups.isUniformis replaced byaccessMode, which also describes storage buffers. This one fails quietly; the old property readsundefinedrather than throwing.ParticleContainerignored the tint and alpha of any ancestor render group, staying fully opaque while everything else faded. Particles now inherit both, so scenes with aParticleContainerunder a tinted or faded render group will look different. Remove any manual compensation you added.State.clockwiseFrontFacereached the WebGPU pipeline as a cull mode rather than a winding, so@builtin(front_facing)in WGSL reported the opposite ofgl_FrontFacingin GLSL. Which triangles survive culling is unchanged, but WGSL shaders branching onfront_facingwithclockwiseFrontFace: truenow take the other branch; revert any workaround that inverted it.strokeContainssplit the stroke width on the squared width and ignored winding order, so at the defaultalignment: 0.5the hit area was ~41% wider than the drawn line, and at alignment 0 or 1 it sat on the opposite side of the edge. Hit testing now matches what's drawn.containsRecttested the right and bottom edges with a strict<, so identical rectangles reportedfalse. Identical rects, and any rect flush against the container's right or bottom edge, now returntrue. Code using it as a strict-interior test, or branching onfalseto mean "partially outside", now takes the other branch.🎁 Added
RenderOptions.flipYinverts a render's Y orientation, flipping the projection and the winding/cull inversion together. That lets you capture a scene into a texture in screen orientation, which is what 3D geometry UVs expect, without a per-material flip at sample time and with back-face culling still correct. Absent orfalseis a no-op on both backends.🐛 Fixed
🧹 Chores
New Contributors
Full Changelog: pixijs/pixijs@v8.19.0...v8.20.0
v8.19.0Compare Source
💾 Download
Installation:
Development Build:
Production Build:
Documentation:
Changed
🚨 Behavior Change
Container.updateTransform({ scaleX: 0, scaleY: 0 })previously coerced a zero scale to1(the code usedopts.scaleX || 1), so passing0left the container at full size. It now applies zero scale literally, matchingscale.set(0, 0). If you relied onupdateTransformignoring a zero scale, stop passing0when you mean full scale.ParticleContainernow respects the blend mode inherited from its ancestors. Previously the render pipe read the container's own localblendModeinstead of the resolvedgroupBlendMode, so setting e.g.stage.blendMode = 'add'had no effect on particles. Particles nested under a parent with a non-default blend mode will now render differently (e.g. additive brightening) where they were silently ignored before. AblendModeset directly on theParticleContaineris unchanged.FillPatterngains atextureSpaceoption ('global' | 'local'), while fixing several long-standing pattern/gradient sizing bugs.textureSpacedefaults to'global', so patterns now tile continuously across adjacent shapes instead of remapping per shape;setTransform(matrix)now applies the matrix you pass directly (it previously inverted and rescaled it by the texture size); andtextureSpace: 'local'radial gradients now scale to the gradient's outer radius. Existing pattern fills and local radial gradients can render differently.If you hand-compensated for the old
setTransformbehavior (pre-inverting or scaling by texture size), remove that compensation. The legacy positionalnew FillPattern(texture, repetition)form still works.🎁 Added
pixi.js/html-sourcesubpath renders live DOM elements into PixiJS textures while the element stays fully interactive in the browser (inputs editable, links clickable, CSS animations running). UseHTMLSourcefor a live element orElementImageSourcefor an immutable snapshot. The element must be a direct child of the Pixi canvas. Importing the subpath also registers a lowest-priorityTexture.fromfallback for generic HTML elements, so it cannot affect apps that don't import it.transientflag so the WebGPU backend can discard the MSAA buffer at the end of a render pass (storeOp: 'discard') instead of writing it back to memory, and keep MSAA contents in tile memory on TBDR mobile GPUs whereGPUTextureUsage.TRANSIENT_ATTACHMENTis available. This cuts memory bandwidth for single-pass MSAA render targets. Only set it on antialiased textures that follow a single-pass-then-discard pattern; a laterloadOp: 'load'on a transient attachment yields undefined contents. Default isfalse, so existing code is unaffected. A WebGPU-onlyrenderer.device.extensions.transientAttachmentprobe reports device support.🐛 Fixed
🧹 Chores
skills/in the published npm package, available atnode_modules/pixi.js/skills/after install.New Contributors
Full Changelog: pixijs/pixijs@v8.18.1...v8.19.0
v8.18.1Compare Source
💾 Download
Installation:
Development Build:
Production Build:
Documentation:
Changed
🐛 Fixed
Application.domContainerRootin Node.js by @UlyssesZh in #12017v8.18.0Compare Source
💾 Download
Installation:
Development Build:
Production Build:
Documentation:
Changed
🚨 Behavior Change
text.widthand word wrap returning incorrect values by @Zyie in #12007Text/HTMLText/BitmapTextwithwordWrap: trueand non-leftalign(center/right/justify) now return the true rendered width fromtext.widthinstead of reportingwordWrapWidth. If you relied ontext.width === wordWrapWidthfor layout, usewordWrapWidthdirectly or wrap the text in a sized container.🎁 Added
graphicsContextToSvg()for Graphics → SVG export by @GoodBoyDigital in #11989graphicsContextToSvg(source, precision?), a pure function that serializes aGraphicsorGraphicsContextto a self-contained SVG string. Supports rects, circles, ellipses, rounded rects, polygons, bezier/quadratic/arc paths, strokes, holes (viafill-rule="evenodd"), and linear/radial gradients.setMask()gains achanneloption ('red' | 'alpha') to pick which texture channel drives visibility, matching how design tools like Figma apply PNG masks. Default remains'red'.preferenceto accept an array of renderer types by @Zyie in #11963autoDetectRendererandApplication.initnow accept an array of renderer names forpreference, letting you restrict the fallback chain (e.g. disable WebGPU entirely) rather than only reorder it. A newRendererPreferencetype is exported.app.domContainerRootby @carlos22 in #11974Applicationexposes a read-onlydomContainerRootgetter returning theHTMLDivElementthat wraps allDOMContainerelements, so apps can add CSS classes, inline styles, or customize the DOM overlay root.widthoption toMeshRopeby @mehmetcanakbay in #11990MeshRopenow accepts an explicitwidthfor rope thickness, decoupling it from the texture's height. Omittingwidthpreserves the previoustexture.heightdefault.renderer.generateTexture()accepts adefaultAnchoroption that's forwarded onto the producedTexture.RenderTexture.create()also gains atextureOptionsparameter to pass through fields likedefaultAnchorto the underlyingTexture.🐛 Fixed
_applyMipRangefor single-mip textures (iOS 18.0–18.1) by @GoodBoyDigital in #11985TextureMatrixwhen pooled textures reuse the same reference by @GoodBoyDigital in #11997GraphicsPath.transform()switch statement by @Zyie in #11996text.widthand word wrap returning incorrect values by @Zyie in #12007<characters inparseTaggedTextby @glennflanagan in #11972CanvasFilterSystemto the filters module by @Zyie in #12014SplitTextbaseline mismatch whentagStylesused withlineHeightby @Zyie in #12008TilingSprite.tilePositiondivided by resolution when using Canvas renderer by @Zyie in #11957CanvasFilterSystemto filters module by @Zyie in #12014🧹 Chores
@xmldom/xmldomto 0.8.12 by @Zyie in #12016New Contributors
v8.17.1Compare Source
💾 Download
Installation:
Development Build:
Production Build:
Documentation:
Changed
🐛 Fixed
@0.75x) by @Zyie in #11960🧹 Chores
v8.17.0Compare Source
💾 Download
Installation:
Development Build:
Production Build:
Documentation:
Changed
🚨 Behavior Change
BlurFilternow uses an optimized halving strength scheme by default, which changes visual output compared to previous versions. Setlegacy: trueto restore the old behavior.align: 'justify'now useswordWrapWidthfor width calculation instead ofmaxLineWidth, matching CSS behavior. The last line is no longer stretched.breakWords: trueinHTMLTextnow correctly uses CSSword-break: break-wordinstead ofbreak-allto match behavior of other text renderers.🎁 Added
SplitTextnow supportstagStyles, so styled runs (e.g.<red>Hello</red> <blue>World</blue>) are correctly split into per-characterTextobjects with individual styles preserved.whiteSpacemodes (normal,pre,nowrap,pre-line,pre-wrap) with proper space/newline collapsingalign: 'justify'by distributing extra word spacingbluranddistanceproportionally to font sizexAdvancenow uses true advance width frommeasureText()instead of bounding-box widthfontScalein dynamic bitmap fontsConfiguration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.