API Changes

We will try minimize API changes between versions and keep backward compatibility, but if a function in the API was introduced with a bug, it's probable that its behavior will change in the next Aseprite release.

Deprecated should be avoided because might be removed in future versions of Aseprite.

Detect available API

You can use app.apiVersion:

if app.apiVersion == nil then
  -- First scripting API available
  app.alert("This is Aseprite v1.2.10-beta1 or v1.2.10-beta2")
elseif app.apiVersion == 1 then
  -- Second revision of the scripting API
  app.alert("This is Aseprite v1.2.10-beta3")
else
  -- Future versions will be 2, 3, etc.
end

v1.3.7

v1.3.3

v1.3-rc7

v1.3-rc5

v1.3-rc4

v1.3-rc3

v1.3-rc2

v1.3-rc1

v1.2.40 & v1.3-beta21

v1.2.36

v1.2.35

  • app.apiVersion is 18
  • Now Dialog() returns nil if we are running in -batch mode
  • New Cel.frame/Cel.frameNumber setters
  • Comparing Layers with Sprites just return false #3218

v1.2.33

  • app.apiVersion is 17
  • New Color{ index }
  • Now Color.index returns an integer instead of a number

v1.2.31

v1.2.30

v1.2.28

v1.2.26

v1.2.22

  • app.apiVersion is 12
  • New app.command.CanvasSize() params (ui and bounds)
  • Fixed crash undoing Sprite:newCel() in background layer
  • Fixed Dialog onclose event, now it's called when we close the app and the dialog is still opened #28
  • API changes:
    • You must use Dialog:newrow{ always=true } to activate the automatic "newrow" (Dialog:newrow{ always } cannot be used)
    • You must use ColorSpace{ sRGB=true } to create an sRGB color space (ColorSpace{ sRGB } cannot be used)
    • Now app.command.SetInkType{ type=... } works

v1.2.19

v1.2.18

v1.2.17

v1.2.16.3

v1.2.16

v1.2.15

v1.2.14

v1.2.13

v1.2.10

v1.2.10-beta4

v1.2.10-beta3

v1.2.10-beta2

  • app
    • app.apiVersion didn't exist (is nil)