Release notes:
- v0.24.0-pre1:
- [kpuzzle] `kpuzzle` has been completely overhauled. In particular, `KPuzzle` is now a new, incompatible class, with much better ergonomics and related `KTransformation` and `KState` classes.
- [build] Reduce package size by removing `src`, `docs`, and some of `dist`.
- [twisty] Disable scrubber when you can't scrub.
- v0.24.0-pre2:
- [kpuzzle] Add types and errors to warn on calls resembling the old `KPuzzle` API.
- v0.24.0-pre3:
- [kpuzzle] Update the `@deprecated` syntax for `KPuzzle` so that it's picked up by VSCode.
- [notation] Introduce a quantum move counter and mark all exports to experimental.
- [twisty] Move *all* `three` imports behind a dynamic import.
- This allows 2D players to load using significantly less downloaded code (about half).
- For 3D players, this allows the player UI to show while the 3D visualization
is still loading.
- v0.24.0-pre4:
- [kpuzzle] Speed up transformation application by reducing the optimization to situations where one of the transformations was known to be an identity at construction time.
- v0.24.0-pre5:
- [puzzles] Performance: cache puzzle loader fields.
- [kpuzzle] Performance: Avoid extra identity transformations in `traverseAlg`.
- [twisty] Add a temporary way to skip alg validation.