fabric.js v5.0.0 Release Notes

    • ๐Ÿ›  fix(fabric.Canvas): unflag contextLost after a full re-render #7646
    • ๐Ÿ’ฅ BREAKING: remove 4.x deprecated code #7630
    • feat(fabric.StaticCanvas, fabric.Canvas): limit breaking changes #7627
    • feat(animation): animations registry #7528
    • ๐Ÿ“„ docs(): Remove not working badges #7623
    • ๐Ÿ“ฆ ci(): add auto-changelog package to quickly draft a changelog #7615
    • ๐Ÿ’ฅ feat(fabric.EraserBrush): added eraser property to Object instead of attaching to clipPath, remove hacky getClipPath/setClipPath #7470, see BREAKING comments.
    • ๐Ÿ‘ feat(fabric.EraserBrush): support inverted option to undo erasing #7470
    • ๐Ÿ›  fix(fabric.EraserBrush): fix doubling opaic objects while erasing #7445 #7470
    • ๐Ÿ’ฅ BREAKING: fabric.EraserBrush: The Eraser object is now a subclass of Group. This means that loading from JSON will break between versions. ๐Ÿ›ฐ Use this code to transform your json payload to the new version.
    • feat(fabric.Canvas): fire an extra mouse up for the original control of the initial target #7612
    • ๐Ÿ›  fix(fabric.Object) bounding box display with skewY when outside group #7611
    • ๐Ÿ›  fix(fabric.text) fix rtl/ltr performance issues #7610
    • ๐Ÿ›  fix(event.js) Prevent dividing by 0 in for touch gestures #7607
    • feat(): drop:before event #7442
    • ci(): Add codeql analysis step #7588
    • โšก๏ธ security(): update onchange to solve security issue #7591
    • ๐Ÿ’ฅ BREAKING: fix(): MAJOR prevent render canvas with quality less than 100% #7537
    • ๐Ÿ“„ docs(): fix broken link #7579
    • ๐Ÿ’ฅ BREAKING: Deps(): MAJOR update to jsdom 19 node 14 #7587
    • ๐Ÿ›  Fix(): JSDOM transative vulnerability #7510
    • ๐Ÿ›  fix(fabric.parser): attempt to resolve some issues with regexp #7520
    • ๐Ÿ›  fix(fabric.IText) fix for possible error on copy paste #7526
    • ๐Ÿ›  fix(fabric.Path): Path Distance Measurement Inconsistency #7511
    • ๐Ÿ›  Fix(fabric.Text): Avoid reiterating measurements when width is 0 and measure also empty lines for consistency. #7497
    • ๐Ÿ›  fix(fabric.Object): stroke bounding box #7478
    • ๐Ÿ›  fix(fabric.StaticCanvas): error of changing read-only style field #7462
    • ๐Ÿ›  fix(fabric.Path): setting path during runtime #7141
    • โšก๏ธ chore() update canvas to 2.8.0 #7415
    • ๐Ÿ›  fix(fabric.Group) realizeTransfrom should be working when called with NO parent transform #7413
    • ๐Ÿ›  fix(fabric.Object) Fix control flip and control box #7412
    • feat(fabric.Text): added pathAlign property for text on path #7362
    • ๐Ÿ“„ docs(): Create SECURITY.md #7405
    • ๐Ÿ“„ docs(): Clarify viewport transformations doc #7401
    • ๐Ÿ“„ docs(): specify default value and docs for enablePointerEvents #7386
    • feat(fabric.PencilBrush): add an option to draw a straight line while pressing a key #7034