Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

@rive-app/canvas-lite

rive-app153.9kMIT2.27.1TypeScript support: included

A lite version of Rive's canvas based web api.

rive, animation

readme

npm

Rive

A lite high-level Rive API using CanvasRenderingContext2D. Please see https://rive.app/community/doc/canvas-vs-webgl/docanjXoQ1uT for a list of all the available web runtimes and their details.

Canvas Lite

npm install @rive-app/canvas-lite

An easy-to-use high-level Rive API using a backing CanvasRenderingContext2D renderer. This lets Rive use the browser's native high-level vector graphics renderer. Some benefits of this package:

  • Extremely small download size
  • Great for displaying many animated canvases concurrently on the screen. This is ideal for when you want to render lists or grids of Rive animations on the screen, as there is no context limit by the browser (as opposed to WebGL)
  • Support for simple vector graphics animations, raster, and mesh deformations
  • Requests the Web Assembly (WASM) backing dependency for you

Getting Started

Why Lite?

The current @rive-app/canvas dependency supports all Rive features and contains the necessary backing dependencies to render those graphics. This lite version has the same API, but does not compile and build with certain dependencies in order to keep the package size as small as possible.

At this time, this lite version of @rive-app/canvas-lite will not render Rive Text onto the canvas or play Rive Audio. Note however, that even if your Rive file may include Rive Text components, rendering the graphic should not cause any app errors, or cease to render. The same is true for playing audio.

changelog

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog and this project adheres to Semantic Versioning.

2.27.0

Fixed

  • libraries: serialize library artboards as local artboards #9324

Commits

  • refactor: Work out low level barriers at the RenderContext level e929b59
  • docs: update community links b95afe8
  • remove cache for build js 752de29
  • fix: data converter range mapper argument order 94a6092
  • fix: access enums data ba0d064
  • fix: stroke effects not updating with text modifiers b37a672
  • refactor(renderer): pulled out decodeImage from context helper and made it platform decode 523c6c8
  • fix: contour bugs with new RectanglesToContour 0f626e5
  • fix crash if operation stack is 0 in a malformed formula 27e5c84
  • Make RectanglesToContour more memory efficient (particularly for re-runs). b4ed26e
  • adds a text listener silver d99f4f5
  • fix coverage reports f081b93
  • refactor(renderer): Consolidate MSAA depth/stencil settings d2ef4dd
  • log error with missing components 6c38d65

2.26.9 - 2025-04-11

Commits

2.26.8 - 2025-04-09

Commits

  • chore: tag 2.26.8 1c2423a
  • Fix GL buffer race condition cffce0b
  • Fix rendering corruption from nested clipIDs 32f2d67
  • add support for joystick time based dependents ff0c058
  • Switch image textures to premultiplied alpha c459f8b
  • rive-runtime pull silver rivs 80d698b
  • Fix glfw working path afebe86
  • Fix Rive-runtime tests 682230d
  • Nnnn conditionnally export images and artboards 0d551eb
  • Component Lists (Dart) 609752c
  • check for msbuild so we know if we need to load the vs environment 7560c2d
  • Update ANGLE_shader_pixel_local_storage usage 400a833
  • Libraries 8283125

2.26.7 - 2025-04-03

Commits

  • chore: tag 2.26.7 44e5ccd
  • feat: return string reference from vm instance runtime name 6aa5884
  • Listener Silver and How to make a Silver f9e160d
  • Revisit numeric stability for colordodge and colorburn d980de4
  • Nnnn viewmodel runtime updates 04d0289
  • Nnnn data bind fixes 9 e465dd2
  • Silvers 7516a96
  • Remove a spurious print from WebGPU mipmap generation b785d37
  • Make elastic scroll properties bindable bc7cb6f
  • More WebGPU fixups c150414
  • Nnnn data bind mode design 9d22aa4
  • Implement mipmaps in WebGPU 1e21d48

2.26.6 - 2025-03-28

Commits

  • chore: tag 2.26.6 a11796d
  • Fix for layoutstyle dirt continually being added in nested artboards 2b374ed
  • Improve numeric stability of blend modes 7d66f8d
  • Fix Layout issue with image when N-slice applied 6ac3ea6
  • Accept a raw VkImageView in the Vulkan renderTarget b77de73
  • Only call gms_build_registry() once 8635692
  • Overhaul Vulkan synchronization 13803e1
  • Begin rework of Vulkan synchronization 527c69a

2.26.5 - 2025-03-24

Commits

  • chore: tag 2.26.5 b81ee8c
  • resolve frame on draw 5ad1b6c
  • More cleanups for Vulkan bootstrapping 7f5399a
  • Reduce the # of arguments required for Vulkan context creation 96606a3
  • Supporting binding of Layout enums 6000648
  • editor: fix using feather with opacity in a text modifier 367a56a
  • Nnnn data bind fixes 8 62f9a5e
  • More Build Options 7d3b400
  • define rive::math::pi to be the same as m_pi 3465b89
  • fix lists and viewmodel instances f2d2199
  • Nnnn data bind tests 31ae52a
  • add support for replacing view model instances and improve memory man… b9bd47b
  • fix: include artboard data bindings when cloning an artboard instance f565d1d
  • Fix layout isDisplayHidden check in CPP c2cadaa
  • Split up subpass from resource allocation for draw. Move draw limit check to before resource allocation occurs (and can fail) f5195eb
  • Vulkan - Atlas texture barrier fix 491e34a
  • make slicer width and height bindable 47f78fe
  • n-slicing: update path when removing n-slicing b647e7b
  • Layout Direction Left/Right Logical Properties 35989f0
  • clear bindable property when used 65a4bc7
  • runtime golden: add support for databinding aad74ec
  • fix warnings reported by a client 7aadd46
  • Fix bit rotting in WebGPU ae0af10
  • editor+runtime: text follow path orient, strength, and trim path props 645bcd6
  • Nnnn data binding api part 2 f058ef4
  • fix: inner feather did not update when path changed c71f7b4
  • Layout Direction 25600e7
  • Remove stray depth res creation cf7b1ef
  • update range mapper c2c0427
  • editor+runtime: expose Shape length via databinding 0afd743
  • core_generator: avoid empty switch statements c46b014
  • fix dat converter formula crash e902a2d
  • Add RenderText to rive_native a9b4dfb
  • Tighter RHI integration, extra build options 5768eae
  • testing check 8b77f22
  • do not delete data context from state machine instance 24a0319
  • delete instances when objects are destructed a89bfad
  • Custom property group fe7b8a8
  • Renderer depth stencil resource 145d113
  • send runtime size report to supabase fb81e5f
  • editor+runtime: support text follow path with position 2115445
  • Implement the feather atlas on Vulkan 43ef634
  • fixed for unreal dbe1500
  • Rhi feather ca4ddfc

2.26.4 - 2025-02-28

Commits

  • chore: tag 2.26.4 3cd7b0b
  • invalidate stroke effects when path changes d3ec52e
  • testing codecov 8291c08
  • Move curve softening math for feathers to the GPU 5601f68
  • Adding more layout unit tests 8f22fd8
  • test actual amplitude computation f8fe65e
  • Infra fixups ea2d457
  • Report runtime test coverage 916df5e
  • Rename gold/ to zzzgold/ dfabbe0
  • Move feather join tessellation to the draw shader bba50d6
  • Nnnn listeners export fixes a2c2410
  • editor+runtime: allow setting tolerance to path measure 48033a2
  • resort glyphs to compensate core text auto sorting 779f0c7
  • Simplify the GMs registry d298bc0
  • Unify Vulkan descriptor set layouts 7b6597f
  • use quadToCubic instead of quadTo afc73ee
  • runtime: text follow path using text modifiers 20efb55
  • Gm no static registry d1c7f32
  • Fix Layout Style CPP callbacks 8648138
  • cherry pick stack vector use in vulkan impl f3fc3bc
  • add converters support in conditions state machines be9e356
  • Change Scroll DraggableProxy to use drawProxy e8ad32b
  • Turn off android file logging by default 73f6164
  • Renderer shader hotloading 9d21d1e
  • Fix a crash on Galaxy A10 (Mali-G71) e2fc399
  • Math formula converter e63796c
  • skip draw calls if artboard has been deleted 6148920
  • Fix up android browserstack gms 53d5f01
  • runtime: refactor text.buildRenderStyles 658390b
  • Nnnn duplicate state layers 55be6b0
  • Nnnn apply target to source on change 5b60eef
  • Convert the feather texture to a texture1d array 84a1061
  • feat: add webgl2 fallback wasm 00bf54c
  • Nnnn add blend mode text support 428c237
  • Fix layout update on font load a7fd388

2.26.3 - 2025-02-17

Commits

  • chore: tag 2.26.3 ccd1fa9
  • Only use GL_R32F for the atlas if EXT_float_blend is supported 6740fb7

2.26.2 - 2025-02-15

Commits

  • chore: tag 2.26.2 9e93415
  • fix dash with world path a162559
  • Add RenderPath::addRawPath 623cde3
  • only cleanup rive file if an instance of the file has been loaded 31944b1
  • add support for paths as holes 351e8b7
  • Revert checks when using percent margin 7ea17e5
  • add support for negative corner radius 12084bd
  • invalidate parent paint when dash is invalidated 0166094
  • Update premake to use latest patched Yoga 9e02015
  • make decodeFont and decodeAudio non virtual 8216582
  • Use hardware textureGather on hlsl eeec66c

2.26.1 - 2025-02-11

Commits

  • chore: tag 2.26.1 b95ac36
  • Draw large feathers at lower resolution cbc7e66

2.26.0 - 2025-02-11

Commits

  • chore: tag 2.26.0 53a3706
  • Fix Yoga crash with percent margin 7aaccaf
  • Make the segmentation of feathered curves more uniform 599f3c2
  • Add some .rivs with feathering to golden tests d69c474
  • add support for non exportable view model instances e8d69a0
  • Nnnn feather fixes 2 60ab2bc
  • Implement a feather atlas for msaa 0934ed7
  • change lerp 5dc8ea2
  • Update layout display before propagating to children 66fc897
  • Nnnn data bind fixes 5 9ceb6c9
  • Delete the draw cache 8d89434
  • remove custom device pixel ratio 488c4e9
  • Fix NestedArtboardLeaf render when parent is a group 9edc36e
  • add support for uint properties 6b811a2
  • Adapt ScrollConstraint to work with NestedArtboardLayouts fbfb052
  • Foreground fill fix e750efc
  • fix backwards path with multiple segments 1f7d8d6
  • fix gap in trim paths 0731cc9
  • Fix MSAA stencil settings for clockwise paths 8f6767a
  • use clockwise flag at runtime 8674d5b
  • Fix webgpu defines for image meshes b4c0c22
  • Simplify the feather integral calculations 02a7f5b
  • Improve feathered curve chopping e4655df
  • extend string converter 1cd9bee
  • Update to 5 5 8b45668
  • Nnnn fix js memory leak 2 e13ae01
  • run code generators to fix outdated values 24083c0
  • fix sync with state machine triggers 6961eb3
  • Improve layout display change handling d799963
  • add support to round decimals in to string converter 8e4e39b
  • Fix feathered corners 9bd4cc6
  • Implementing ScrollPercent and ScrollIndex properties 54cf936
  • Remove Skia from android runtime 8cb1c6c
  • Turn storage buffers back on for Android ANGLE 38e656d
  • Player mouse events 312cde2
  • add time based converter interpolator 0f67412
  • make opacity bindable 8888dc8
  • fix bad property in animation at load 5831a06
  • Fix for Windows android builds. d85ba0e
  • Get hug working with text autoHeight b074534
  • change inherit blend mode default value to 127 eba94e3
  • Nnnn feather fixes 583325f
  • Nnnn fix invalid viewmodel properties df7b8cd
  • use transition only when it has been selected aad4b69
  • add support to disable layers in state machines 33de4d3
  • resize canvas when visible 55e8cc3
  • check whether state can change before evaluating conditions 085a75d
  • Which way is up? e0ba592
  • Editor + Runtime Feathers! 0d94e21
  • Fix the notorious pnglibconf.h error for v2 bb9fd3b

2.25.7 - 2025-01-27

Commits

2.25.6 - 2025-01-24

Commits

  • chore: tag 2.25.6 254b8a8
  • update version 6f56d08
  • update submodule 09bb67a
  • Propagate layout's display to children in runtime 3d72627
  • editor+runtime: fix slow hit-testing 974c871
  • Fix more bit rotting in webgpu_player 28b9a36
  • Work around Android GL driver bugs that surfaced with the feather change 4da0ca1
  • Require Android NDK r27c from premake f3ea5a7
  • Add an android_api option for premake ed98921
  • Converter inspectors Part 1 1d15fb0
  • feather v1 e09ce3a
  • Update the atan2 definition in shaders 53a0c4d
  • Nnnn add extra functionality to string converter a105c3e
  • add atan2 5d5b660
  • Fix layout animation repeat eeb74d5
  • initial work for testing data binding in the editor af9a1f3
  • only reset state change on new frame 487a8f2
  • export data enum names 8d0dee9
  • Vulkan Support ! 005d0c8
  • use triggers per state machine layer 447fcfe
  • More Android GL fixes 0b0477a
  • add more arithmetic operations a7aec29
  • Fix premake tag 6809244

2.25.4 - 2025-01-14

Fixed

  • fix crash calling delete on offscreen canvas #382

Commits

  • chore: tag 2.25.4 d287dec
  • Runtime fix for image scale with mesh 9511360
  • editor+runtime: fix text hit-testing on a locally transformed text 5ec2d7a
  • Reduce the number of GradientSpans f16d673
  • Update webgpu/glsl permutation #defines to "true" 6476d8b
  • Delete the simple gradient texture transfer d1c16ea
  • Security warnings 8f84708
  • add histogram arg to check golds to pass thru to diff.py 05ad8f2
  • move advanced call after update 8b29800
  • Reset scroll constraint when state machine not running 2f8a762

2.25.3 - 2024-12-24

Commits

  • chore: tag 2.25.3 33215f3
  • Merge path_utils.hpp and eval_cubic.hpp into the core runtime 7d9839b
  • Ensure child layouts mark dirty when flex direction changes 4119aee
  • Fix straight lines being detected as cusps 07d25f4
  • Add FillRule::clockwise to the runtime fce78ad
  • add bind once support 150ac04
  • do not use frameOrigin to validate if artboard has its origin translated f860745
  • editor: minor text fixes fce3945
  • Replace Swiftshader with Nvidia gpu runner 7e07b9f
  • improve error reporting if exe in deploy script does not exist f6776b6
  • Set supportsRasterOrdering in the webgpu backend 900e120
  • editor: allow hit testing over text and text runs d221331
  • rename property to avoid conflict with code generation 52b62a9

2.25.2 - 2024-12-17

Commits

  • chore: tag 2.25.2 9e8c50c
  • do not exclude proxies from drawables list 2c7bedb
  • Scripting begins! bcddcd6
  • GL MSAA tweaks 1f8f6ac
  • More android tuning for PowerVR 67b9730
  • Work around gradient sync issues on Oppo Reno 3 Pro 353a88e

2.25.1 - 2024-12-13

Commits

  • chore: tag 2.25.1 97b914b
  • fix artboard origin offset 6990ba0
  • Convert unity builds to use build_rive.sh 95b463b
  • Tag custom premake builds on v5.0.0-beta3 903837f
  • Fix layout display issues 87e5ace
  • Add visionOS and tvOS support to Apple runtime 6e6c5a6
  • fix triggers reset ed12347
  • Prevent negative layout size 8e579e6
  • Nnnn use advance and apply in js runtime e5cbb51
  • add data binding blend states support fec7d19
  • Nnnn instance data converters part 3 c4094a4

2.25.0 - 2024-12-11

Commits

  • chore: tag 2.25.0 6e748fd
  • Nnnn fix js runtime listeners check ffe2b72
  • added missing_goldens and missing_candidates to diff.py result f2862ca

2.24.1 - 2024-12-11

Commits

  • chore: tag 2.24.1 c2292e7
  • call delete methods on cleanup 0cc2564
  • Nnnn system data enums part 3 3fd3825
  • diff.py updates de52e49
  • Allow $JAVA_HOME without java installed in deploy_tests.py c8b5d31

2.24.0 - 2024-12-10

Commits

  • chore: tag 2.24.0 e9fd61a
  • call syncStyleChanges on update f3dad6c
  • Override layoutcomponent x/y using layoutX/Y 4d22301
  • Nnnn data bind fixes part 3 44cbbab
  • Instance data converters when attached to data binding objects 6b7b0e0
  • Snap verycomplexgrad gm stops to pixel boundaries f8a670b
  • ScrollBar constraint autosize toggle 0402232
  • Don't use GL_PIXEL_UNPACK_BUFFER 2ce84e1
  • Add "no_rive_jpeg" and "no_rive_png" build options 2d24da1
  • Improve scroll time precision on web 2af3d4a
  • Scroll fixes bfbd505
  • re add clean to diff 0030752
  • do not break when component is found 97dd12b
  • Add yoga renames to non-v2 lua build scripts 27b1cc2
  • Fix integer precision issues with pathID in vertex shaders 6c95555
  • use draw proxy for scroll bar draggables d779b42
  • GL fixes for Imagination PowerVR GPUs f422181
  • Fix scrollbar thumb offset de3ed1a
  • Sort by % diff pixels in diff.py when histogram is equal d93862d
  • fix sorting hittable components b7ac41e
  • fix crash when dividing by 0 afa4319
  • Nnnn scrolling override poc part 2 6c3957b
  • Small Scroll fixes 6f021c1
  • Make scroll physics core objects 8994905
  • made compatable with python 9_9 39315d5
  • diff.py: don't count identicals as differences c1b772c
  • added some changes to make building easier for unreal be92419
  • use actual sizes for calculating position offset 9a64a15
  • skip object on animation reset if it is null d6b1a38
  • remove letter spacing subtraction c3cab24
  • fix fatal warnings compiler flag to use latest version b576768
  • Draggables (aka scrolling) c8aaac2
  • Nnnn data bind fixes part 2 7597a9b
  • make nested animation properties bindable 02f3c3d
  • Layout display & animation duration keyable 699c53f
  • Add Android Gold checks 5216d40

2.23.11 - 2024-11-27

Commits

  • chore: tag 2.23.11 d8f45bc
  • Re-upload webgl texture data if context changes. a76c5aa
  • Support supplying mobile fallback fonts by style with caching b0b8382
  • fixed url for canddiates and goldens in not pack mode 50e5f75
  • Fix flicker on webgl2 runtime 84a6e9b
  • treat remapped animations as always settled 1d31192
  • update measure function to use its text wrap and max size 01c8bc6
  • add support for standalone custom properties to bind values to 11392cd
  • Dx11 support 9031503
  • support wrapping text in auto width inside a layout f200b48
  • fixed workflow stuff df9e923
  • updates to diff.py 442fd8f

2.23.10 - 2024-11-21

Merged

  • bug: check for animator before running animator.stop #378

Commits

2.23.9 - 2024-11-21

Commits

  • chore: tag 2.23.9 91ce4bf
  • fix for incorrect android build option 7f68602
  • Switch from preferLowPowerToHighPerformance to powerPreference 219dd45
  • Update linear animation advanceAndApply to return if more animation remains 6180cc0
  • Add check to TextModifierGroup to prevent out of bounds access 1b07a2e
  • editor: update the repeat limit for n-slicing afb039c
  • CoreText fallback shaper ex 137ed73
  • image diff hiistogram mode 2375384
  • feat: expose hit test to runtimes 1682660
  • Fixup android_gms_browserstack 3e048e4
  • Nnnn range data converter 4cf0b41
  • Normalize GM tests ed4feae
  • Rename USING_DEPTH_STENCIL to RENDERING_MODE_MSAA 28e9f3c
  • Fix invalid memory access 82de4ad
  • Fix clip planes on S22/Xclipse/ANGLE 8c0b53c
  • Add an android_gms job to browserstack 9dda5c8
  • editor: be more mindful of sending dirt recursively when n-slicing f7b5a23
  • Fix NestedAnimation skipping export too late f13a928

2.23.8 - 2024-11-15

Commits

  • chore: tag 2.23.8 9900b9d
  • Dart bump to 3.5.0 e942590
  • Nnnn joystick not advancing 256f69c
  • Add a skeleton workflow for android gms on browserstack 2e4dde2
  • Render gms to the screen when the test app is launched without a harness 19345b2
  • return keep going when a state machine has changed its state 891de52

2.23.7 - 2024-11-14

Commits

  • chore: tag 2.23.7 087e7f4
  • accept constraints without targets b0c82e9

2.23.6 - 2024-11-13

Commits

  • chore: tag 2.23.6 0b685c7
  • Work around Galaxy S22 compiler bugs a8e812b
  • invert order of advance between parent and child 25bd2da
  • Prevent NestedArtboard advance when not playing ac99796
  • Rhi typeless uav support 14aae87
  • Remove web console spam 2245c55

2.23.5 - 2024-11-12

Commits

  • chore: tag 2.23.5 e357815
  • new arithmetic data converter that uses a viewmodel as input 4760ce0
  • Unreal build use build rive.sh d011659
  • default data converters runtime 77506e1
  • LayoutComponent updates properly when scaleType changes a29740e
  • fix data enum importer 8cf5f53
  • Fix marking nested artboard layout dirty 3f0b159
  • add feather property 332d4d9
  • Pass scaleType down to sizeable children 4ec459b
  • don't expose yoga includes 2b61bf0
  • Nnnn render update fixes ef56e95
  • editor and runtime: fix vector n-slicer hit area d19e19a
  • Rename "atlas" -> "coverage" in the clockwise shader 2b97cb3
  • Fix bidi 8b171cc
  • conditionnally add dirt and advance 4592ea6
  • Updates to AdvanceFlags a8533d1
  • Add AdvanceFlags a61e482
  • Fix for layout shape paint bug 3ffb67a
  • editor and runtime: allow vertices in a vector nslicer to be out of bounds 9138225
  • add data bind support for vertex properties 4fc1131
  • Nnnn merge fills and strokes 37478e7
  • Use renderImage size to scale images in layouts 4b88f4f
  • editor: NSlicer should not clamp children f933f68
  • web: decode image on demand, not render eaa5ae8
  • Working on option C for update cycle 1a877b8

2.23.4 - 2024-11-05

Commits

  • chore: tag 2.23.4 52a43b2
  • Layout Fixes 85f3ba1
  • Use imageAsset size for layout 99eb5ae
  • Fix inconsistent layout overflow behavior 207bbd1
  • Artboard object validation f3d7484
  • search for ios sysroot only when necessary aa6b70e

2.23.3 - 2024-11-01

Commits

  • chore: tag 2.23.3 a435dfb
  • refactor: remove undefined for get artboard width and height 6b49f3f
  • runtime: add support for gradients in vector n-slicer 6baef86
  • Add an experimental "clockwiseAtomic" rendering mode 2b824d7

2.23.2 - 2024-11-01

Commits

  • chore: tag 2.23.2 b6fa9d2
  • chore: wasm expanded error messages 0d113ce

2.23.1 - 2024-11-01

Commits

  • chore: tag 2.23.1 781cfb4
  • TypeScript missing layout type declarations 4756b75
  • Ensure LayoutComponent doesnt try to access bg path if layout not compiled in 5b0fb1e
  • Updating to latest harfbuzz for coretext issue 176a24c

2.23.0 - 2024-10-31

Merged

  • chore: tag 2.22.0 #372

Commits

  • chore: tag 2.23.0 9531669
  • feat: add responsive layout properties and other fixes e9364ca
  • add viewmodel and data enum system core objects 0f38187
  • editor: bug fixes for image n-slicing 39c7e39
  • Nnnn fix layout hittest order d3624f3
  • editor: vector n-slicer should clamp all shapes contained bacab18
  • fix for image_diff not correctly outputting newline in status file 93b28a1
  • Expose RenderContext methods for allocating tessellation vertices 41edba5

2.22.0 - 2024-10-30

Commits

  • chore: tag 2.22.0 dd1acc1
  • feat: add runtime layout fit type for ios, android, web 7e555bb
  • Make build script work on mac a2836ae
  • fix for imagediff avrg being wrong b5a6323

2.21.7 - 2024-10-29

Commits

  • chore: tag 2.21.7 3482d32
  • Fix resources getting deleted prematurely in vkutil::ResourcePool b2b910b
  • Upgrade legacy artboards to work with layouts 90dec32
  • Layout fractional sizes & flexBasis 48eb586
  • imagediff -> opencv 3b0d06c
  • Fix crash on controlSize when image not yet available 61f1f7c
  • Fix layout size propagation 98180b8
  • Fix for layouts alignment bug when created with fill type 1bb93d9
  • Call updateLayoutBounds on NestedArtboardLayout 2da0f02
  • editor: support vector n-slicing in runtime 25b9319
  • Nnnn text alignment and fit dd778a3
  • hierarchical updates to layout ee83d7d
  • Do not load files with invalid paint mutators. c97600b
  • testing animation smoothing 0773a72
  • NestedArtboardLayout marks its parent artboard layoutNodeDirty 507580b
  • Nnnn system data enums 9a34d99
  • LayoutComponent clip defaults to false. c52014a
  • Add AdvancingComponent & animate flag to advance() 9e03bb5
  • use worldBounds for hittesting 8c711a6
  • Deterministic lite rtti 0944238
  • audio engine: fix order of uninit of context and engine 3e57e8e
  • reset effects when path changes f3c317f
  • Add a clockwise fill experiment 779dfce
  • Batch interior triangulation draws 99c580f
  • Fix layout animation runtime ff2973b

2.21.6 - 2024-10-15

Commits

  • chore: tag 2.21.6 3d8c81a
  • Make layout position type and scale type keyable dc4ed3c
  • Improve batching for interior triangulation draws 0807424
  • Unreal Runtime into Mono d5590d9
  • Fix runtime joystick with layout position 7837780
  • add bones and joystick bindable properties 6c4de3f
  • fix missing data bind path crash 088da28
  • Drop the ColumnLimit to 80 for clang-format 6a08a8f
  • add support for listeners on layout components 58f66ff
  • Optimize atomic rendering for input attachments c53b66b
  • Prep for rhi 3042d4a
  • Nnnn fix databind state machine shared data context 84e58b3
  • Implement isHidden in DrawableProxy 4f2ebca
  • use shared data context between artboard and state machine d6a7da3
  • Fix Apple runtime crashes on Macs with non-Apple-Silicon GPUs e7dc892
  • Drag and drop into layouts without Cmd modifier dca198c
  • Layout misc fixes df3d71d
  • Download python-ply inside of premake 0a429da
  • enable all viewmodels as source for a condition f24231e
  • Calculate LOD ahead of time for image paints 8249f08
  • Premultiply clear colors 4dbec87
  • add enum bind core property 0bfd6fc
  • Rename InterlockMode::depthStencil to InterlockMode::msaa 7ee3b0f
  • add missing dirty flags 8473774
  • Fix layout animation not cascading 8e25224

2.21.5 - 2024-10-02

Commits

  • chore: tag 2.21.5 35a620d
  • fix uninitialized font features 2a15ba7
  • add text bindable properties 7b190d2
  • added #ifdef where it was missing 8ffb7d7

2.21.4 - 2024-10-01

Commits

  • chore: tag 2.21.4 ef2138a
  • apt install python3-ply 855d356
  • Clone draw for cache optimizations 209fdcf
  • Fix layout drag/drop offset 332c739
  • fix text origin offset 6c6da44
  • change dash formula precision b39c47f
  • add bindable layout properties bfa9c99
  • add new properties to data bind e31c4ff
  • Layout text size fix 1b63b5d
  • Add linux build step for rive_native changes ecfb8a0

2.21.3 - 2024-09-23

Fixed

  • advance iterator until distance does not equal 0 #8164

Commits

2.21.2 - 2024-09-20

Commits

  • chore: tag 2.21.2 1794f74
  • Dashing (through the snow) 033672c
  • Update player to run without the python server 12b6f54
  • Rename gpuAtomicResolve -> atomicResolve, et. al. 9aa2941
  • Overhaul Vulkan synchronization aa03eb3
  • Remove Skia from ios_tests and quit building it on many runners 7a15466
  • Nnnn data context fixes fce9bb5
  • Colinear and bounds ffi 6b2dfa8

2.21.1 - 2024-09-17

Commits

  • chore: tag 2.21.1 9ab43ef
  • add support for elastic interpolation ec68c1d
  • editor: Stage UI for N-Slicing dbbc1cc
  • Add contour measure to Rive Native 5ccc8d5
  • adding length getter to dash path effect 7011fea
  • Add NestedArtboardLayout hug 12ffd5a
  • Initial refactor to simplfigy class structure edbce23
  • d3d11 simplifications e03e06f
  • Optimize draw to avoid creating when clip is empty 45109b7

2.21.0 - 2024-09-13

Commits

  • chore: tag 2.21.0 5fe0aa1
  • feat: web nested text runs bbd3415
  • Updates to layout hug e3a66c1
  • revisit sync between flutter and c++ runtime 2c22da4

2.20.2 - 2024-09-12

Commits

  • chore: tag 2.20.2 c821ea2
  • Fix intrinsically sizeable bug 73d0744
  • bump premake db37894
  • Fix default target id for ListenerAlignTarget abff70b
  • Add fallback font support for iOS and macOS 9c668be

2.20.1 - 2024-09-10

Merged

  • Fixed rive-cpp to rive-runtime #367

Fixed

  • Dance around a driver issue that generates garbage pixels #7423

Commits

  • chore: tag 2.20.1 ddbf59e
  • Fix dstreadshuffle gm 5685bac
  • add fixes and code improvements 6e683b4
  • Next set skia strip bd34bcd
  • Fix startup freeze on certain Macs cef0b02
  • skia removal 04378e0
  • add viewmodel trigger support for c++ runtime 079468b
  • add text vertical alignment 609d6cd
  • Port to remove skia 9599c59
  • SkChop party! mandoline and cubicpaths 8a5d84c
  • pass wrap separately to support alignments 9a59693
  • removed skia from a few gms 5a56b0e
  • Remove skia from labyrinth gm aec4b42
  • Remove skia dependencies from strokedlines 25c76e7
  • Add android unit tests and remove running tests in platform testing bda1b38
  • Implement keystrokes for the player test 9210373
  • rename ios and android tools to tests 395fd11
  • Add a mechanism to skip flaky golden tests 712cf6e
  • Fix glmsaa on Desktop GL drivers fd90a29
  • Update RiveRenderBuffer to support multiple maps per frame fd93520
  • inputs ref state machines and components ref artboards 516bbdf
  • fix playback mode and other small fixes 0922dd8
  • docs: update links 9e10cae
  • Add data converters to flutter runtime fd6ff86
  • Opensource (tools) tests as part of runtime 45e6540
  • 8020 text fit to box 759713f
  • Fix dash increment 7af4040
  • Fixing tool drawing f4f8019
  • Fix WASM submodule yaml script to use correct branch and repo 6284221
  • Update submodule_check.yaml 8f4a6ea
  • Update submodule_check.yaml cde090e
  • Add submodules again feb9d00
  • Remove submodules 15d4cd9
  • Update submodule_check.yaml 17bf8ca
  • Update .gitmodules bd0b77e
  • Update .gitmodules b14206a
  • Update submodule_check.yaml 1008e71
  • Update submodule_check.yaml ff521f0
  • Tooling tweaks 3d5a316
  • Better support for BGRA in D3D 887e77a
  • Namespace corrections to rive instead of gpu a0d37e0
  • Parallelize SPIRV compilation f836caa
  • Add a "player" app to the tools 6edb9d7
  • Unlink skia from goldens 3621bd6
  • Rename to remove unneeded pls in variable names 93b7d09
  • Support Vulkan on Android fb4c788
  • Change class names to strip PLS 504f418
  • Convert rive-cpp to rive-runtime for runtime_wasm a78d3e3
  • Layout joysticks runtime 2746206
  • runtime: add tiling to n-slicing 5185a21
  • Revive the WebGL backend 45760de
  • Nnnn data binding editor native runtime 6bd3173
  • fix for syntax issue 9fb5748
  • windows editor: fix format check and use raster ordering disabled ae9f820
  • Fix viewer tess builds 8767874
  • Update rive cpp for submodules fd4d8ad
  • mark dirty when constraint changes 518494d
  • Fix Android goldens 03b5241
  • Improve Vulkan loading and organization f58a1e7
  • Add webp decoder. ad61939
  • iOS images unpremult SIMD support ad0f6a8

2.20.0 - 2024-08-20

Fixed

  • fix hovered state of group listeners #7838

Commits

  • chore: tag 2.20.0 9677ba8
  • add arithmetic operation and group converters dc326a8
  • editor: setting up the update callbacks for n-slicing 8aae14a
  • Fix for bug in Runtime LayoutComponent proxy a845058
  • Use artboard properties as transition conditions 989c2f7
  • Init NestedAnimation's nestedArtboard as nullptr 3d8a511
  • added some simple windows build scripts to make building on windows from powershell or command prompt easier 9da17d4
  • editor: nine-slicing core data type definitions 2b463b6
  • Update version to macosx 11 for runtime. 86d0a9e
  • feat: add nested text run getters and setters in Unity c5ddfb5
  • add two data converters 9bc6ea7

2.19.7 - 2024-08-09

Commits

  • chore: tag 2.19.7 12eab45
  • added a blt command for render targets that do not support VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT 8e884d5
  • Better premake support for Visual Studio 10f8181
  • Add Xcode support to build_rive.sh 0076aa5
  • Added support for xcode builds 17b85dc
  • Add width/height overrides for NestedArtboardLayout fbb7a53
  • refactor conditions cea2df5
  • Fix layout shape hug in CPP 2ff19ff
  • Add a premake message when Xcode command line tools isn't installed ef75208
  • add data converter and data types for conversion 44b164b
  • add listener actions support for databind 8b0b239
  • Fix alignment when flex wrap enabled 98844f6
  • Buildsystem fixes for build_rive.sh and PLS shaders d72fea6
  • add click event support f926888
  • Improve layout animation b1ef533

2.19.6 - 2024-07-27

Commits

  • chore: tag 2.19.6 c74c5a7
  • Simple procedural text rendering API 0ca3dd8
  • Add a test for nested events triggering listener in parent 70513cd
  • Fix for nested events in CPP 3f0f52f
  • Add a build_rive.sh script to unify the premake5 build process f0a38ea
  • viewmodel transitions runtime e6a9401
  • Implement layout scale type in CPP runtime a4f5b39

2.19.5 - 2024-07-25

Fixed

  • skip custom events when creating hitshapes #7651

Commits

  • chore: tag 2.19.5 e5afac9
  • Make an HBFont from a CTFontRef. 24cd21b
  • Nested artboard types: node, leaf, layout 011f67f
  • Fix: canvas's context2d property update timing 0509735
  • Xxxx improve hittest performance 4de4f7f
  • Makeshadersinpremake 581863f
  • Layout drawable 60d7e46
  • add bindable properties for state machines 215b81f
  • fix spilled time for animations with speed applied to them 2101454
  • update data bind mode to flags 2cad929
  • Only set Core Audio session category for iOS targets 57aed5a
  • Run tests, bench, gms, & goldens on a physical Pixel 8 on CI 1c92a83
  • Set audio to mix on for iOS (simulator) and Catalyst 0aee2fc
  • Vulkan! bd2869b

2.19.4 - 2024-07-16

Fixed

  • Fix crash when skinnable isn’t found. #7317

Commits

2.19.3 - 2024-07-10

Commits

  • chore: tag 2.19.3 60ffb77
  • change how forAll iterates over children caacb99
  • Fix jpeg and png decode overflows and error handling. cf8d1c2

2.19.2 - 2024-07-05

Fixed

  • add missing validations #7531

Commits

2.19.1 - 2024-07-03

Fixed

  • disable fallback font during artboard rendering #7479

Commits

  • chore: tag 2.19.1 7020b01
  • use varuint for writing/reading objectid, total properties and property key in animation reset 79fab15
  • Xxxx transitions with base virtual animation e39f0ca
  • Layout bitfield to props with keying 68818df

2.19.0 - 2024-06-28

Commits

  • chore: tag 2.19.0 92dffd6
  • Miscellaneous Layout UX Fixes a13658d
  • Add yoga to thumbnail generator build 530b19e
  • change how viewmodel instances target their viewmodel f4b4723
  • Xxxx databinding add boolean 6d5cd89
  • Xxxx data binding data context eba2028
  • Animation for Layouts 7e10a4b
  • chore: community contribution wasm refactor nested module fa1319e
  • Renames for Yoga and libjpeg 2890cdf
  • Update LayoutComponentStyle bitfields to be compatible with older C++ versions 00af817
  • databinding 2acc463

2.18.0 - 2024-06-18

Commits

  • chore: tag 2.18.0 f787a83
  • Remove redundant "BreakBeforeBraces" in runtime_wasm/.clang-format 55691eb
  • Optimize image encoding/decoding in debug builds 4939500
  • Replace computeIntrinsicSize with measureLayout df9107b
  • Yoga layout runtimes 6a27ab6
  • Nested linear animations report events up to parent artboards 294546f
  • more renames for harfbuzz 4a2ee4c

2.17.3 - 2024-06-08

Commits

  • chore: tag 2.17.3 df65156
  • mark shape as dirty after flagged as target 758f278
  • don’t defer updates when a shape/path is used for hit detect aee181f
  • Get rid of MetricsPath. e105f85

2.17.2 - 2024-06-07

Commits

  • chore: tag 2.17.2 c5f9a58
  • fix bounds calculation ahead of time c4b8395

2.17.1 - 2024-06-06

Commits

2.17.0 - 2024-06-05

Commits

2.16.0 - 2024-05-27

Fixed

  • fix for unexpected triggered events #7226
  • use world bounds for coarse grained collision test #7286
  • check before using artboard #7261

Commits

  • chore: tag 2.16.0 5025113
  • Use unique_ptr in import stack. 734470c
  • Xxxx expose rive file to js api 005e68f
  • Fail early with bad blend modes. 06db3db
  • Fix warnings about invalid toolsets 6037650
  • validating core objects property keys on load 87069a5
  • Make ContourMeasure more robust 911ea4c
  • initialize seed with chrono 7fd2ab0
  • Simple libjpeg e3e7266
  • 7261 crash on state machine names 488eefb

2.15.6 - 2024-05-10

Commits

2.15.5 - 2024-05-09

Fixed

  • Fix an assert in contour_measure.cpp #7210

Commits

  • chore: tag 2.15.5 85a1e05
  • remove harfbuzz flag b462cef
  • Don't defer path update if Shape has a dependent skin 7a70b1f
  • Add strokes, gradients, and blend modes to path_fuzz dfcb2e3

2.15.4 - 2024-05-08

Commits

  • chore: tag 2.15.4 70e26b2
  • Wasm fallback and min safari version 4e47118

2.15.3 - 2024-05-08

Commits

  • chore: tag 2.15.3 bab22e6
  • Add a "path_fuzz" mode to the PLS fuzzer 8d2a799
  • Fix ios analyzer 104f088
  • Add static/dynamic runtime config based on actual target config. dd97a36
  • fix state machine advanceAndApply d747731
  • Xxxx support target align from position 3f2bab1
  • Handle NaN in PLS paths and transforms 3bd7b0b

2.15.2 - 2024-04-30

Commits

2.15.1 - 2024-04-30

Fixed

  • fix follow path not working with path as target and shape with 0 opacity #7155

Commits

  • chore: tag 2.15.1 7a30128
  • GameKit on Windows dcf28ad
  • add resize observer for rive instances 1904dfa
  • initialize audio manager only if an instance needs it 759dc45

2.15.0 - 2024-04-24

Commits

  • chore: tag 2.15.0 f69b6d3
  • fix version numbers 97ff287
  • Pushing merge, resolved using upstream.\n\n message=feat: add wasm audio out of band d169023

2.14.4 - 2024-04-23

Commits

  • chore: tag 2.14.4 c0faf89
  • Fix audio instances 79aa41d
  • add out of band audio support ios - abstracted audio! 924b938
  • Xxxx randomization updates part 2 433965d
  • Xxxx support random transitions 66a1d4d
  • support randomizing transitions 0868fb3

2.14.3 - 2024-04-18

Commits

  • chore: tag 2.14.3 4c1d046
  • propagate volume to nested artboards 9268272

2.14.2 - 2024-04-17

Commits

  • chore: tag 2.14.2 afb1465
  • update listener to use pointerdown 91a1b90
  • update audio manager to also listen to user interaction bf18c67
  • Stop audio in iOS when backgrounded. 9345879
  • add audio manager to handle audio context in browser 9aa89a0

2.14.1 - 2024-04-11

Commits

2.14.0 - 2024-04-10

Commits

2.13.2 - 2024-04-09

Merged

  • update version manually to 2.13.1 #353

Commits

  • chore: tag 2.13.2 f6be9f7
  • Fix WASM audio MP3 0db549c
  • chore: tag 2.12.2 ade65fc
  • negative speed fix 789cbe7
  • feat: add APIs to configure Rive Listener setup for allowing touch scroll behavior on the canvas 7488d1c

2.13.0 - 2024-04-08

Commits

2.12.2 - 2024-04-08

Fixed

  • treat cubic curve as quad when control point equals endpoint #6969

Commits

  • chore: tag 2.12.2 ade65fc
  • negative speed fix 789cbe7
  • feat: add APIs to configure Rive Listener setup for allowing touch scroll behavior on the canvas 7488d1c
  • Audio asset volume + VU e1011f4

2.12.1 - 2024-03-29

Commits

  • chore: tag 2.12.1 baeb09c
  • Export proxy and testing at runtime. 22eea55
  • Export audio clip 41ba537
  • propagate parent input change to nested input 72096d2

2.12.0 - 2024-03-27

Commits

2.11.0 - 2024-03-19

Commits

  • chore: tag 2.11.0 f256e80
  • Fix checkout of rive-pls in rive-wasm 5fba0aa
  • Add a @rive-app/webgl2 package that uses PLS 98b3cd4
  • remove stale examples from rive-wasm 172f212
  • Fix flush() to balance clear() in parcel_example 58b88f0
  • Move cleaning up renderer into its own API outside of cleanup 9318ac6
  • Remove the Queue from Metal PLS 3dfe454
  • support for interrupting transitions on state change e825a13
  • Update README.md 0ec0835
  • chore: update README 54a4bd9

2.10.4 - 2024-03-11

Commits

  • chore: tag 2.10.4 f6e2211
  • Unity webgl! e3c0033
  • Always decode 3 or 4 channel PNG images. f23e5f3
  • Upgrade rive_wasm to the new premake system 4c4b5b4
  • Generate WASM sizes only when necesary a20794b
  • slim down harfbuzz 55ddabd
  • Implement an MSAA fallback for PLS 2e787a1

2.10.3 - 2024-02-26

Commits

  • chore: tag 2.10.3 f58c17a
  • trigger change when text modifier updates e5c0750
  • add support for text feature in runtime 62f995d

2.10.2 - 2024-02-21

Commits

  • chore: tag 2.10.2 e8c4dfd
  • sort hit shapes when draw order changes and stop propagation on hit s… c377c99
  • Updating harfbuzz to 8.3.0 8165f23
  • Unity compute bounds 4c7ed1e
  • Fix path for downstream runtime. 21105bd
  • Fix downstream cpp tests 4a39e95
  • Single test script for windows and mac. d5a58bb
  • Fix tests to use harfbuzz renames. 7a63a40
  • make a change to force a mono flush f7a048f
  • Audio out of band in Unity! 65f2cef
  • Audio for Unity ec73b95
  • fix cast e1e4d96
  • Add audio preview generator. a322457

2.10.1 - 2024-02-08

Commits

  • chore: tag 2.10.1 52fca8d
  • text modifier length calculation fix 4228eb0

2.10.0 - 2024-02-05

Commits

  • chore: tag 2.10.0 d386ef6
  • Rework text/event count/at. 94dab1f
  • fix ./build_viewer.sh run 7a2fc03
  • Update goldens 02dadf3
  • apply current state update before changing states ea2a2f4
  • Clean up emscripten build a69f708
  • make sure we force embedded assets when exporting for cloud renderer … 9915108
  • Fix GL rendering with URP. 3778cd3
  • Unity with new Premake scripts! 776f931
  • Unity Android & C# style updates 3bca997
  • fix listener resolving to different event e08a6c4
  • Tests use new premake system 7c57d54
  • fix viewer build 77695f6
  • Lua formatter d5ffcb9
  • Reorganize premake dc9c662
  • Build Android deps with audio cbc5cee
  • PLS external framebuffer optimizations bf25bfa
  • Properly generate an android_ndk toolset c472135
  • Audio engine 2a644b8
  • poc for adding "flush" 3b48f12
  • IntersectionBoard optimizations 0332745
  • IntersectionBoard cleanups 13dfbd0

2.9.3 - 2024-01-18

Fixed

  • fix elastic interpolator crash with period 0 #6422

Commits

  • chore: tag 2.9.3 5de8515
  • Unify storage buffers for atomic mode and normal 07055fe
  • default to skia branch for commit hash in cache helper 88846e5
  • Implement re-ordering for PLS atomic draws 391108d

2.9.2 - 2024-01-08

Commits

  • chore: tag 2.9.2 7d028e9
  • add optional param for method resizeDrawingSurfaceToCanvas f251f5e
  • add support for self clipping shape b3f9097
  • clone metrics path when a path is added 40a2201
  • Defer PLS writes to GPU resources until flush a6c451d

2.9.1 - 2024-01-03

Commits

  • chore: tag 2.9.1 73780e2
  • Fix: Include types declaration in webgl advanced packages d356ab5
  • Refactor PLSRenderer into draw objects cd59415
  • Convert RenderPath/CommandPath and RenderPaint to refcounted objects 1dffe23
  • Delete the Vec2D default constructor efc3bd5

2.9.0 - 2023-12-21

Commits

  • chore: tag 2.9.0 11ed0c3
  • use skia directly from skia repository for recorder c7b8ff3
  • feat: only use webgl instead of webgl2 in iOS browsers to try and prevent crashing on iOS Safari 35df9e0
  • add support for svg export 63bb2f6
  • fix off color interpolation e2da9c7

2.8.3 - 2023-12-15

Commits

  • chore: tag 2.8.3 b6e3d60
  • fix: add back in the image texture delete action af46a7b

2.8.2 - 2023-12-15

Commits

  • chore: tag 2.8.2 02e4a80
  • remove optional chaining added in renderer.js bb3ba22

2.8.1 - 2023-12-15

Commits

  • chore: tag 2.8.1 dc898a0
  • Adding more proxy checks on rendering mesh and stop drawing images if we cant render it 4acd184

2.8.0 - 2023-12-15

Commits

  • chore: tag 2.8.0 96f4c2a
  • fix: revert image texture destructor for testing binding issues 8c7b72c

2.7.9 - 2023-12-15

Commits

  • chore: tag 2.7.9 efb2e47
  • fix: try wrapping the webgl context as a proxy and erroring out early if context is lost df1977e

2.7.8 - 2023-12-14

Commits

2.7.7 - 2023-12-11

Commits

  • chore: tag 2.7.7 70a9564
  • Add a "lite_rtti" utility and use it with Render objects a94902e
  • fix: exaggerate pointer exit listener on mouseout to account for hitareas too close to the artboard border b831f39
  • Make tess compile again 64c935e
  • Ios out of band b3fa7de

2.7.6 - 2023-11-30

Commits

  • chore: tag 2.7.6 7c93bc0
  • skip constraints in editor when target is collapsed 1468503

2.7.5 - 2023-11-29

Commits

  • chore: tag 2.7.5 ced1772
  • ignore paths that are inactive in solos when calculating hit test d1ad646
  • generate drawing rules in the correct order fc49a2d
  • Xxxx hidden paths runtime render fixes solos da6146d

2.7.4 - 2023-11-21

Commits

  • chore: tag 2.7.4 0cdde88
  • tendon crash fix 529e597
  • patch: Only clean up the Renderer object if it is a CanvasRenderer, as WebGL Renderer does not need to be deleted 2df6145
  • Disable d3d blend state during PLS flush 33e5609
  • add clipResult enum and render clips to copy the editor behavior b8c029c
  • Unity da338c3

2.7.3 - 2023-11-09

Commits

  • chore: tag 2.7.3 f6e5255
  • Delete assets after artboards to fix race condition with FileAssetReferencers. f7e6924

2.7.2 - 2023-11-08

Commits

  • chore: tag 2.7.2 9fd1e94
  • Fix validation for listeners to validate with nested inputs 3062170

2.7.1 - 2023-11-07

Fixed

  • Fix follow path 6070 #6070

Commits

  • chore: tag 2.7.1 1319fa9
  • Add types for ImageAsset and FontAsset 9e54b20
  • compute parameters when cubic values change bddcd7b
  • fix: Made default and copy constructors explicit. 37aef15
  • Fix: change cdnUuid export type from boolean to string 506e2e7
  • add support for rendering static scene 9f527b2

2.7.0 - 2023-10-26

Commits

  • chore: tag 2.7.0 6f053d9
  • Outofbandcache 0bef370
  • Fix for FollowPathConstraint position at distance multiples of 100% 2fef572
  • Apply NestedInput initial values 61ed529
  • feat: add neostream events sample 5047460
  • Elastic easing 4afb492
  • Add options to build with rtti and exceptions d9ca38d
  • Fix clang format error 0de34e9
  • fix version merge conflict 694e8c3
  • merge conflicts... 3046c92
  • add isCollapsed validation on nested artboard advance method 4b44437
  • Fixed clang check. 9bc2f99

2.6.1 - 2023-10-19

Commits

  • chore: tag 2.6.1 e137799
  • Add a canvas-lite and canvas-advanced-lite package for the web runtime f5da1b4
  • Show NestedInputs in the Inputs panel of the parent artboard 67fb4b5
  • Move vello e3ed3fc
  • Added by-name instantiation. fd7c440
  • add ability to attach callbacks when resolving file asset listeners 575845a
  • patch up division by zero issue on normalizing Length 9f516f2
  • Android Out of Band Assets 0dbf437
  • Removed single-threaded counter. aa6b968
  • Removed Cargo workspace dependencies. d37449a
  • Fission the CG and Skia renderers 4911796
  • Nested Inputs 012c8dc
  • Add support to Listeners for events from nested artboards 7c83e01
  • Added a Rust runtime. ed539e8

2.6.0 - 2023-10-10

Commits

  • chore: tag 2.6.0 a884bca
  • feat: add count and query APIs for events and text runs at the Artboard level, and expose in WASM 9d6316f

2.5.0 - 2023-10-06

Fixed

  • separate animation and state machines initialization #4983

Commits

  • chore: tag 2.5.0 4a014ba
  • Add out of band loading to rive-wasm 0eaf42d

2.4.4 - 2023-10-03

Fixed

  • 6041 follow path with 0 opacity #6041

Commits

  • chore: tag 2.4.4 8eee059
  • Add a math::round_up_to_multiple_of<N>() utility a210381
  • Clamping color stops. eb0e47e
  • Add a WebGPU mode that uses EXT_shader_pixel_local_storage f942f41
  • update runtime with file asset cdn information 553ce90
  • Add volume level support and clean up the music player project da5a497

2.4.3 - 2023-09-20

Commits

  • chore: tag 2.4.3 136c105
  • patch: add URL sanitization on open URL events c4accb9

2.4.2 - 2023-09-19

Commits

  • chore: tag 2.4.2 a5aa9f4
  • Fix issue with timeline events on first frame 127a7d4

2.4.1 - 2023-09-18

Commits

  • chore: tag 2.4.1 e6c9e8e
  • patch: specifically add changelog at project root level before releaseit commits b62d01e
  • Event fixes 5284de1
  • Bump the iOS minimum version to 13 on native builds 524177f

2.4.0 - 2023-09-12

Fixed

  • Read passed any empty runs when iterating glyphs. #5973

Commits

  • chore: tag 2.4.0 68b6d7d
  • feature: Add high-level API support for manually subscribing to Rive Events 3479035
  • add artboards shapes to updates when RenderOpacity has dirt 28d4378
  • Don't apply id keyframes when mix value is 0 a5f3094
  • Timeline Events for runtime 019d8a7

2.3.1 - 2023-09-06

Commits

  • chore: tag 2.3.1 4e6e933
  • Fix a regression in WASM image meshes e909f91

2.3.0 - 2023-09-01

Commits

  • chore: tag 2.3.0 541fd78
  • Fix keepGoing when a work area is used. 9eb468b
  • Make Mat2D constructors constexpr d655bb8
  • Fixed runtime to compile with gcc. 5ce034d
  • Allow setting text to completely empty. 28fe4b9
  • Make RenderBuffer mappable 9ae1356
  • Add a macro to create bitsets from enums 282ba71
  • Add some joystick flag tests. 56a6d85
  • Delete the copy constructor from Mat2D ed0b0d9

2.2.2 - 2023-08-26

Commits

  • chore: tag 2.2.2 766038d
  • Treat all Constraints and ClippingShapes differently than children when propagating collapse 499bcae

2.2.1 - 2023-08-25

Commits

  • chore: tag 2.2.1 a9100e2
  • Improve collapse propagation for solo. d02fb10
  • early out of advance if we are not going to keep goign 8db282a
  • Don't collapse child constraints of Solos 91000a1
  • patch: fix the version for emsdk download 741e252
  • Fix follow path contention with MetricsPath 22994d1
  • Events API for WASM d93b18a
  • Choose events to fire on State and Transition start/end. 079f744
  • Added a Vello back-end with a custom winit viewer. 71ee3d0

2.2.0 - 2023-08-17

Commits

  • chore: tag 2.2.0 d1dc3f5
  • feature: wrap renderer in a Proxy to expose Canvas2d context 780e9a5
  • Implement drawImage() in PLS d47e6de
  • Event triggering 2d34998

2.1.5 - 2023-08-14

Commits

  • chore: tag 2.1.5 71a0361
  • Fix issue with nested artboards not updating follow path constraints. 3f09529

2.1.4 - 2023-08-11

Commits

  • chore: tag 2.1.4 7d56931
  • fix: move up one directory before release-it commits and pushes and tags bea14ed

2.1.3 - 2023-08-10

Commits

  • chore: tag 2.1.3 da97468
  • patch: provide a backup source to load WASM from in case unpkg goes down 1e016e4
  • Add rive::math::msb() 98c7c90
  • Add a Bitmap::detachBytes method a3576f4
  • Letter spacing! 1310202
  • Run editor tests on hosted runner. 4863d33

2.1.2 - 2023-08-05

Commits

  • chore: tag 2.1.2 ec3d979
  • fix leak in move operator= on SimpleArray f5fde28
  • Make rive_decoders compile on Windows bad4e70

2.1.1 - 2023-08-03

Fixed

  • Clipping and baseline #5732

Commits

  • chore: tag 2.1.1 e1fc83e
  • Enable animation for Text Run style prop 5602552
  • Lift tess decoders into a static lib 88c6213

2.1.0 - 2023-07-31

Commits

  • chore: tag 2.1.0 24c3146
  • Fix crash when no Follow path target specified da74f29
  • feature: Adding high-level API for querying a text run from an artboard 98585ab
  • Update text render styles when origin changes. 7b51fa8
  • Text fixes b486eda
  • Add originX and originY support to images cbd2840
  • Fix text alignment in cpp based runtimes 1039cba
  • Replace broken hero image on runtime READMEs f8d4ea8
  • Build with rive_text from Android Studio 7e70479
  • update thumbnailer for text 43ac9de

2.0.0 - 2023-07-26

Commits

  • chore: tag 2.0.0 93b51e9
  • build wasm text! 41a9102
  • Adding run targeting to text value ranges! b9dbd47
  • Follow path distance support all values & fix scaling issue. 2d699cf
  • Rive Text for iOS and Android! d139aa1
  • Fix small bugs caught by JC (and Alex). 9eb46a4

1.2.4 - 2023-07-22

Commits

  • chore: tag 1.2.4 fbb6b46
  • Add dependencies folder to wasm gitignore 245afe2
  • temporarily stripping text capability 58ca638
  • FollowPathConstraint to extend TransformSpaceConstraint 3eb2072
  • Fix conflict. 877a91f
  • merge conflicts... 0c46ba0
  • Don't use the '-g' buildoption in premake c14ddd4
  • Fixing modifier ranges not updating on the right frame. 7273e1a

1.2.3 - 2023-07-19

Commits

  • chore: tag 1.2.3 b693cd0
  • Deprecating 'unsubscribe' in favor of 'off' in JS API b9cb46a

1.2.2 - 2023-07-19

Commits

  • chore: tag 1.2.2 4240298
  • Fix dependency order issues for Follow Path 2e7add2
  • Baseline Origin 3116f9b
  • Add option to quantize time to whole frames of framerate. a1394cf
  • Follow path should respect constrained component rotation if orient is off f9edab7
  • feature: Add onAdvance hook into render loop to report advancing has occurred b55e640
  • Code generator fixes alternative 60f0a9f
  • Adding target origin to transform constraint. 0693364
  • Stop automatically pruning empty segments in RawPath 7a97a03
  • Line Height & Paragraph Spacing 385b582
  • Runtime modifiers 9bb60e9
  • Get more compiling on MSVC 17baa4e
  • Swap propertyKeys between follow path and text core defs f9ff1c8
  • Fix conflicting core key ids and set follow path offset to default false 52234f0
  • Follow Path Constraint (Editor & CPP Runtime) 7813939
  • Adding origin to text. 11f11e8
  • Add CMake support for building Android and Catch2 Tests 0d40a56
  • Increases the margin for the approx call to some of the wangs formula… c670345
  • Runtime ellipsis ef7dedf
  • fix viewer build 7d2b93d

1.2.1 - 2023-06-26

Commits

1.2.0 - 2023-06-09

Commits

  • chore: tag 1.2.0 a64baf9
  • fix: set fetch depth to 0 to grab tags ed12c69
  • Feature: Add drawImage API to CanvasRenderer on low-level runtime and fix types 031424b

1.1.10 - 2023-06-07

Commits

  • chore: tag 1.1.10 4b8904b
  • fix for loop over animatables without changing typescript target f44df26
  • Make sure Animator.add() is iterating only on own properties 9dd2826
  • add back old changelog, add deprecated note b0a15a3
  • docs: add changelog step into release-it workflow f1ef10e

1.1.9 - 2023-05-24

Commits

  • chore: tag 1.1.9 7d50049
  • patch: bump cpp for further joystick support 275c81a

1.1.8 - 2023-05-22

Commits

  • chore: tag 1.1.8 d19e74f
  • chore: bump rive-cpp for latest joystick updates 72cf5e4

1.1.7 - 2023-05-18

Commits

  • chore: tag 1.1.7 368bec0
  • feature: bump cpp to support joysticks 5a58786

1.1.6 - 2023-05-12

Commits

1.1.5 - 2023-05-02

Commits

  • chore: tag 1.1.5 adb5f90
  • add test to detect listeners cleaned up on canvas after stop() is called ecb71f5
  • add tests b62ddf0
  • Ensure Rive listeners are setup when the play() method is called and torn down on stop() 5cec907

1.1.4 - 2023-04-20

Commits

  • chore: tag 1.1.4 43f9186
  • feature: Add high-level check if a state machine has listeners 8f3ffa4
  • feature: Add Rive parameter to disable listeners from being setup on the canvas 3b2419e

1.1.3 - 2023-04-14

Commits

  • chore: tag 1.1.3 6275ebe
  • fix: bump cpp for path composer patch 6f8f435

1.1.2 - 2023-04-12

Commits

1.1.1 - 2023-04-06

Commits

  • chore: tag 1.1.1 1df4d3d
  • patch: bump cpp dependency for direct blend state changes 7a0e13f