Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
60 changes: 20 additions & 40 deletions .planning/handovers/4.3.0_PLAN.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,27 +22,16 @@ Before touching any feature plan, execute these checks on the current `main` sta

### 0.1 — Workspace `@tsparticles/` deps use `workspace:*`

Run from repo root:
```bash
node -e "
const glob = require('fs').readdirSync;
const dirs = [...require('fs').readFileSync('pnpm-workspace.yaml','utf8').matchAll(/^ - (.+)/gm)].map(m=>m[1]);
const pkgs = dirs.flatMap(d => glob(d, {withFileTypes:true}).filter(e=>e.isDirectory()).map(e=>e.parentPath+'/'+e.name+'/package.json'));
pkgs.push('engine/package.json');
let fail = false;
for (const f of pkgs) {
try {
const p = require(f);
const deps = {...p.dependencies, ...p.devDependencies};
for (const [k,v] of Object.entries(deps))
if (k.startsWith('@tsparticles/') && v !== 'workspace:*')
{ console.log('❌', f, ':', k, v); fail = true; }
} catch { /* skip non-existent */ }
}
if (!fail) console.log('✅ all workspace:*');
"
```
Known root cause: version-bump scripts (e.g. `lerna version`, `nx release version`) sometimes rewrite `workspace:*` → hardcoded version in one or more `package.json` files. In the 4.2.0 release, `cli/utils/eslint-config/package.json` had `@tsparticles/prettier-config` changed to `"4.2.0"` while the lockfile still expected `workspace:*`.
✅ **Risolto nella 4.2.1** — ora automatico via `scripts/post-version-fix.js`.

Il comando `pnpm run version:patch` (e gli altri `version:*`) esegue:
1. `lerna version` (bump versioni, genera commit + tag)
2. `pnpm run postversion:fix` → `scripts/post-version-fix.js`
- ripristina eventuali `workspace:*` riscritti da lerna in versioni hardcoded
- sincronizza la versione del root `package.json` con `engine/package.json`
- se ci sono fix: `git commit --amend --no-edit` + spostamento tag

Nota: il controllo manuale via script non serve più, il fix è automatico nello stesso commit del tag.

### 0.2 — `pnpm run build:ci` passes on clean state

Expand Down Expand Up @@ -93,10 +82,10 @@ Checklist riassuntiva di tutte le attività del piano. Da tenere aggiornata dura
- [ ] Step 5: build + verify
- [ ] Step 6: demo config updated

### Release Gate
- [ ] Step 0.1 — Workspace `@tsparticles/` deps use `workspace:*`
### Release Gate (4.3.0)
- [x] ~~Step 0.1~~ — Workspace `@tsparticles/` deps use `workspace:*` (✅ automatico via `post-version-fix.js` dalla 4.2.1)
- [ ] Step 0.2 — `pnpm run build:ci` passes
- [ ] Root `package.json` version matches packages (sincronizzazione automatica via script, non manuale)
- [x] ~~Root `package.json` version matches packages~~ (✅ automatico via `post-version-fix.js` dalla 4.2.1)
- [ ] Integration tests pass
- [ ] Demo server smoke-tested
```
Expand Down Expand Up @@ -184,10 +173,8 @@ If resources are limited, priority order:

- [ ] **ALL:** `pnpm run build:ci` passes
- [ ] **ALL:** No high-severity open issues targeting 4.3.0
- [ ] **ALL:** Workspace `@tsparticles/` deps use `workspace:*` (re-run Step 0.1 check)
- [ ] **ALL:** Root `package.json` version matches packages — implementata una sincronizzazione automatica (es. script `scripts/sync-root-version.js` chiamato da `version` lifecycle hook o integrato nel comando di version bump)
- [ ] **ALL:** Integration tests pass (see below)
- [ ] **ALL:** Demo server smoke-tested (see below)
- [x] **ALL:** Workspace `@tsparticles/` deps use `workspace:*` — automatico via `scripts/post-version-fix.js` (integrato in tutti i comandi `version:*`, corregge eventuali regressioni dopo lerna version e amenda lo stesso commit)
- [x] **ALL:** Root `package.json` version matches packages — automatico via `scripts/post-version-fix.js` (letto da `engine/package.json`, scritto nel root e incluso nel commit del tag)
- [ ] **ALL:** Integration tests pass (see below)
- [ ] **ALL:** Demo server smoke-tested (see below)

Expand Down Expand Up @@ -356,19 +343,12 @@ Each feature produces its own changelog section:

### Root `package.json` version sync

Il root `package.json` ha un campo `"version"` che spesso rimane indietro rispetto ai package del workspace quando si lancia `lerna version` o un comando simile, perché questi tool aggiornano solo i package figli.

**Task:** Creare uno script (es. `scripts/sync-root-version.js`) che legga la versione da un package del workspace (es. `engine/package.json`) e la scriva nel root `package.json`. Poi agganciarlo al comando di version bump in modo che finisca **nello stesso commit/tag**, ad esempio:

- via `"version"` lifecycle hook nel root `package.json`: `"version": "node scripts/sync-root-version.js && git add package.json"`
- o integrato direttamente nello script che lancia il version bump

Lo script deve:
1. Leggere `engine/package.json` → `version`
2. Leggere `package.json` root → se diverso, sovrascrivere
3. Salvare e loggare il cambio
✅ **Risolto nella 4.2.1** — integrato in `scripts/post-version-fix.js`.

Il `git add package.json` nel lifecycle hook garantisce che la modifica sia inclusa nel commit di version bump, non in un commit separato.
`post-version-fix.js` viene eseguito da `pnpm run postversion:fix` dopo ogni `lerna version`:
1. Legge `engine/package.json` → `version`
2. Se il root `package.json` è diverso, lo sovrascrive
3. `git add -A && git commit --amend --no-edit` lo include nello stesso commit del tag

---

Expand Down
9 changes: 9 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,15 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.

## [4.2.1](https://github.com/tsparticles/tsparticles/compare/v4.2.0...v4.2.1) (2026-06-19)

### Bug Fixes

- fixed docs, fixes [#5862](https://github.com/tsparticles/tsparticles/issues/5862) ([bb0cb44](https://github.com/tsparticles/tsparticles/commit/bb0cb44e380f70f9ef58565123edf072664c6a32))
- fixed some various issues ([678c8b5](https://github.com/tsparticles/tsparticles/commit/678c8b54950b9a23a8b57949fac375b2d0fa9001))
- fixed some various issues ([8534979](https://github.com/tsparticles/tsparticles/commit/85349791a4978f80f98f141a94a403a7e15785c0))
- fixed some versions issues ([0948d06](https://github.com/tsparticles/tsparticles/commit/0948d06b0907aeacde33dd5a12b7438ae2b370a1))

# [4.2.0](https://github.com/tsparticles/tsparticles/compare/v4.1.3...v4.2.0) (2026-06-17)

### Bug Fixes
Expand Down
4 changes: 4 additions & 0 deletions bundles/all/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,10 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.

## [4.2.1](https://github.com/tsparticles/tsparticles/compare/v4.2.0...v4.2.1) (2026-06-19)

**Note:** Version bump only for package @tsparticles/all

# [4.2.0](https://github.com/tsparticles/tsparticles/compare/v4.1.3...v4.2.0) (2026-06-17)

**Note:** Version bump only for package @tsparticles/all
Expand Down
158 changes: 79 additions & 79 deletions bundles/all/package.dist.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@tsparticles/all",
"version": "4.2.0",
"version": "4.2.1",
"description": "All-inclusive tsParticles bundle — all engine packages, plugins, interactions, presets, shapes, updaters, effects, paths, emitters, sounds, and palettes in one dependency. Ready to use components available for React, Vue.js (2.x and 3.x), Angular, Svelte, jQuery, Preact, Riot.js, Inferno.",
"homepage": "https://particles.js.org",
"repository": {
Expand Down Expand Up @@ -105,84 +105,84 @@
"./package.json": "./package.json"
},
"dependencies": {
"@tsparticles/effect-bubble": "4.2.0",
"@tsparticles/effect-filter": "4.2.0",
"@tsparticles/effect-particles": "4.2.0",
"@tsparticles/effect-shadow": "4.2.0",
"@tsparticles/effect-trail": "4.2.0",
"@tsparticles/engine": "4.2.0",
"@tsparticles/interaction-external-cannon": "4.2.0",
"@tsparticles/interaction-external-particle": "4.2.0",
"@tsparticles/interaction-external-pop": "4.2.0",
"@tsparticles/interaction-light": "4.2.0",
"@tsparticles/interaction-particles-repulse": "4.2.0",
"@tsparticles/path-branches": "4.2.0",
"@tsparticles/path-brownian": "4.2.0",
"@tsparticles/path-curl-noise": "4.2.0",
"@tsparticles/path-curves": "4.2.0",
"@tsparticles/path-fractal-noise": "4.2.0",
"@tsparticles/path-grid": "4.2.0",
"@tsparticles/path-levy": "4.2.0",
"@tsparticles/path-perlin-noise": "4.2.0",
"@tsparticles/path-polygon": "4.2.0",
"@tsparticles/path-random": "4.2.0",
"@tsparticles/path-simplex-noise": "4.2.0",
"@tsparticles/path-spiral": "4.2.0",
"@tsparticles/path-svg": "4.2.0",
"@tsparticles/path-zig-zag": "4.2.0",
"@tsparticles/plugin-background-mask": "4.2.0",
"@tsparticles/plugin-canvas-mask": "4.2.0",
"@tsparticles/plugin-easing-back": "4.2.0",
"@tsparticles/plugin-easing-bounce": "4.2.0",
"@tsparticles/plugin-easing-circ": "4.2.0",
"@tsparticles/plugin-easing-cubic": "4.2.0",
"@tsparticles/plugin-easing-elastic": "4.2.0",
"@tsparticles/plugin-easing-expo": "4.2.0",
"@tsparticles/plugin-easing-gaussian": "4.2.0",
"@tsparticles/plugin-easing-linear": "4.2.0",
"@tsparticles/plugin-easing-quart": "4.2.0",
"@tsparticles/plugin-easing-quint": "4.2.0",
"@tsparticles/plugin-easing-sigmoid": "4.2.0",
"@tsparticles/plugin-easing-sine": "4.2.0",
"@tsparticles/plugin-easing-smoothstep": "4.2.0",
"@tsparticles/plugin-emitters-shape-canvas": "4.2.0",
"@tsparticles/plugin-emitters-shape-path": "4.2.0",
"@tsparticles/plugin-emitters-shape-polygon": "4.2.0",
"@tsparticles/plugin-export-image": "4.2.0",
"@tsparticles/plugin-export-json": "4.2.0",
"@tsparticles/plugin-export-video": "4.2.0",
"@tsparticles/plugin-hsv-color": "4.2.0",
"@tsparticles/plugin-hwb-color": "4.2.0",
"@tsparticles/plugin-infection": "4.2.0",
"@tsparticles/plugin-lab-color": "4.2.0",
"@tsparticles/plugin-lch-color": "4.2.0",
"@tsparticles/plugin-manual-particles": "4.2.0",
"@tsparticles/plugin-motion": "4.2.0",
"@tsparticles/plugin-named-color": "4.2.0",
"@tsparticles/plugin-oklab-color": "4.2.0",
"@tsparticles/plugin-oklch-color": "4.2.0",
"@tsparticles/plugin-poisson-disc": "4.2.0",
"@tsparticles/plugin-polygon-mask": "4.2.0",
"@tsparticles/plugin-responsive": "4.2.0",
"@tsparticles/plugin-sounds": "4.2.0",
"@tsparticles/plugin-themes": "4.2.0",
"@tsparticles/plugin-trail": "4.2.0",
"@tsparticles/plugin-zoom": "4.2.0",
"@tsparticles/shape-arrow": "4.2.0",
"@tsparticles/shape-cards": "4.2.0",
"@tsparticles/shape-cog": "4.2.0",
"@tsparticles/shape-heart": "4.2.0",
"@tsparticles/shape-infinity": "4.2.0",
"@tsparticles/shape-matrix": "4.2.0",
"@tsparticles/shape-path": "4.2.0",
"@tsparticles/shape-ribbon": "4.2.0",
"@tsparticles/shape-rounded-polygon": "4.2.0",
"@tsparticles/shape-rounded-rect": "4.2.0",
"@tsparticles/shape-spiral": "4.2.0",
"@tsparticles/shape-squircle": "4.2.0",
"@tsparticles/updater-gradient": "4.2.0",
"@tsparticles/updater-orbit": "4.2.0",
"tsparticles": "4.2.0"
"@tsparticles/effect-bubble": "4.2.1",
"@tsparticles/effect-filter": "4.2.1",
"@tsparticles/effect-particles": "4.2.1",
"@tsparticles/effect-shadow": "4.2.1",
"@tsparticles/effect-trail": "4.2.1",
"@tsparticles/engine": "4.2.1",
"@tsparticles/interaction-external-cannon": "4.2.1",
"@tsparticles/interaction-external-particle": "4.2.1",
"@tsparticles/interaction-external-pop": "4.2.1",
"@tsparticles/interaction-light": "4.2.1",
"@tsparticles/interaction-particles-repulse": "4.2.1",
"@tsparticles/path-branches": "4.2.1",
"@tsparticles/path-brownian": "4.2.1",
"@tsparticles/path-curl-noise": "4.2.1",
"@tsparticles/path-curves": "4.2.1",
"@tsparticles/path-fractal-noise": "4.2.1",
"@tsparticles/path-grid": "4.2.1",
"@tsparticles/path-levy": "4.2.1",
"@tsparticles/path-perlin-noise": "4.2.1",
"@tsparticles/path-polygon": "4.2.1",
"@tsparticles/path-random": "4.2.1",
"@tsparticles/path-simplex-noise": "4.2.1",
"@tsparticles/path-spiral": "4.2.1",
"@tsparticles/path-svg": "4.2.1",
"@tsparticles/path-zig-zag": "4.2.1",
"@tsparticles/plugin-background-mask": "4.2.1",
"@tsparticles/plugin-canvas-mask": "4.2.1",
"@tsparticles/plugin-easing-back": "4.2.1",
"@tsparticles/plugin-easing-bounce": "4.2.1",
"@tsparticles/plugin-easing-circ": "4.2.1",
"@tsparticles/plugin-easing-cubic": "4.2.1",
"@tsparticles/plugin-easing-elastic": "4.2.1",
"@tsparticles/plugin-easing-expo": "4.2.1",
"@tsparticles/plugin-easing-gaussian": "4.2.1",
"@tsparticles/plugin-easing-linear": "4.2.1",
"@tsparticles/plugin-easing-quart": "4.2.1",
"@tsparticles/plugin-easing-quint": "4.2.1",
"@tsparticles/plugin-easing-sigmoid": "4.2.1",
"@tsparticles/plugin-easing-sine": "4.2.1",
"@tsparticles/plugin-easing-smoothstep": "4.2.1",
"@tsparticles/plugin-emitters-shape-canvas": "4.2.1",
"@tsparticles/plugin-emitters-shape-path": "4.2.1",
"@tsparticles/plugin-emitters-shape-polygon": "4.2.1",
"@tsparticles/plugin-export-image": "4.2.1",
"@tsparticles/plugin-export-json": "4.2.1",
"@tsparticles/plugin-export-video": "4.2.1",
"@tsparticles/plugin-hsv-color": "4.2.1",
"@tsparticles/plugin-hwb-color": "4.2.1",
"@tsparticles/plugin-infection": "4.2.1",
"@tsparticles/plugin-lab-color": "4.2.1",
"@tsparticles/plugin-lch-color": "4.2.1",
"@tsparticles/plugin-manual-particles": "4.2.1",
"@tsparticles/plugin-motion": "4.2.1",
"@tsparticles/plugin-named-color": "4.2.1",
"@tsparticles/plugin-oklab-color": "4.2.1",
"@tsparticles/plugin-oklch-color": "4.2.1",
"@tsparticles/plugin-poisson-disc": "4.2.1",
"@tsparticles/plugin-polygon-mask": "4.2.1",
"@tsparticles/plugin-responsive": "4.2.1",
"@tsparticles/plugin-sounds": "4.2.1",
"@tsparticles/plugin-themes": "4.2.1",
"@tsparticles/plugin-trail": "4.2.1",
"@tsparticles/plugin-zoom": "4.2.1",
"@tsparticles/shape-arrow": "4.2.1",
"@tsparticles/shape-cards": "4.2.1",
"@tsparticles/shape-cog": "4.2.1",
"@tsparticles/shape-heart": "4.2.1",
"@tsparticles/shape-infinity": "4.2.1",
"@tsparticles/shape-matrix": "4.2.1",
"@tsparticles/shape-path": "4.2.1",
"@tsparticles/shape-ribbon": "4.2.1",
"@tsparticles/shape-rounded-polygon": "4.2.1",
"@tsparticles/shape-rounded-rect": "4.2.1",
"@tsparticles/shape-spiral": "4.2.1",
"@tsparticles/shape-squircle": "4.2.1",
"@tsparticles/updater-gradient": "4.2.1",
"@tsparticles/updater-orbit": "4.2.1",
"tsparticles": "4.2.1"
},
"publishConfig": {
"access": "public"
Expand Down
2 changes: 1 addition & 1 deletion bundles/all/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@tsparticles/all",
"version": "4.2.0",
"version": "4.2.1",
"description": "All-inclusive tsParticles bundle — all engine packages, plugins, interactions, presets, shapes, updaters, effects, paths, emitters, sounds, and palettes in one dependency. Ready to use components available for React, Vue.js (2.x and 3.x), Angular, Svelte, jQuery, Preact, Riot.js, Inferno.",
"homepage": "https://particles.js.org",
"scripts": {
Expand Down
4 changes: 4 additions & 0 deletions bundles/basic/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,10 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.

## [4.2.1](https://github.com/tsparticles/tsparticles/compare/v4.2.0...v4.2.1) (2026-06-19)

**Note:** Version bump only for package @tsparticles/basic

# [4.2.0](https://github.com/tsparticles/tsparticles/compare/v4.1.3...v4.2.0) (2026-06-17)

**Note:** Version bump only for package @tsparticles/basic
Expand Down
24 changes: 12 additions & 12 deletions bundles/basic/package.dist.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@tsparticles/basic",
"version": "4.2.0",
"version": "4.2.1",
"description": "Basic tsParticles bundle — minimal core engine with only the essential features for fast, lightweight particle animations. Ready to use components available for React, Vue.js (2.x and 3.x), Angular, Svelte, jQuery, Preact, Riot.js, Inferno.",
"homepage": "https://particles.js.org",
"repository": {
Expand Down Expand Up @@ -105,17 +105,17 @@
"./package.json": "./package.json"
},
"dependencies": {
"@tsparticles/engine": "4.2.0",
"@tsparticles/plugin-blend": "4.2.0",
"@tsparticles/plugin-hex-color": "4.2.0",
"@tsparticles/plugin-hsl-color": "4.2.0",
"@tsparticles/plugin-move": "4.2.0",
"@tsparticles/plugin-rgb-color": "4.2.0",
"@tsparticles/shape-circle": "4.2.0",
"@tsparticles/updater-opacity": "4.2.0",
"@tsparticles/updater-out-modes": "4.2.0",
"@tsparticles/updater-paint": "4.2.0",
"@tsparticles/updater-size": "4.2.0"
"@tsparticles/engine": "4.2.1",
"@tsparticles/plugin-blend": "4.2.1",
"@tsparticles/plugin-hex-color": "4.2.1",
"@tsparticles/plugin-hsl-color": "4.2.1",
"@tsparticles/plugin-move": "4.2.1",
"@tsparticles/plugin-rgb-color": "4.2.1",
"@tsparticles/shape-circle": "4.2.1",
"@tsparticles/updater-opacity": "4.2.1",
"@tsparticles/updater-out-modes": "4.2.1",
"@tsparticles/updater-paint": "4.2.1",
"@tsparticles/updater-size": "4.2.1"
},
"publishConfig": {
"access": "public"
Expand Down
2 changes: 1 addition & 1 deletion bundles/basic/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@tsparticles/basic",
"version": "4.2.0",
"version": "4.2.1",
"description": "Basic tsParticles bundle — minimal core engine with only the essential features for fast, lightweight particle animations. Ready to use components available for React, Vue.js (2.x and 3.x), Angular, Svelte, jQuery, Preact, Riot.js, Inferno.",
"homepage": "https://particles.js.org",
"scripts": {
Expand Down
4 changes: 4 additions & 0 deletions bundles/confetti/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,10 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.

## [4.2.1](https://github.com/tsparticles/tsparticles/compare/v4.2.0...v4.2.1) (2026-06-19)

**Note:** Version bump only for package @tsparticles/confetti

# [4.2.0](https://github.com/tsparticles/tsparticles/compare/v4.1.3...v4.2.0) (2026-06-17)

### Bug Fixes
Expand Down
Loading
Loading