Skip to content

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:

lua
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.14 ​

  • app.apiVersion is 33
  • Added Dialog:separator() more in line with other widgets #4989 (thanks to @MapleGecko)
  • Added uuid field to layers #5033
  • Added os.rename() and os.remove() functions
  • Added fitCriteria parameter to app.command.ChangePixelFormat command #4781
  • Fixed cel.image:clear() cannot be undone #5015
  • Fixed regression overwriting path specified in Dialog:file{filename} #5061

v1.3.13 ​

  • app.apiVersion is 32
  • New app.clipboard API #2073
  • New beforesitechange event #4785
  • New plugin.version and plugin.displayName properties #4904
  • Don't allow to set invalid pixel ratios for sprites #3285
  • Fixed Image:drawImage() when BlendMode.SRC is used #5001

v1.3.11 ​

v1.3.11-beta1 ​

  • app.apiVersion is 30
  • Added GraphicsContext for images: Image.context property #4330
  • Added ui/flatten/filename parameters to app.command.DuplicateSprite command #4755

v1.3.10 ​

  • app.apiVersion is 30
  • Added app.editor.zoom/scroll properties #4722
  • New option (Dialog:show{ hand=true }) to enable Hand tool in the active editor with a modal dialog (thanks to @lampysprites)

v1.3.9.2 ​

  • app.apiVersion is 29
  • New app.fgTile/bgTile properties to get/set the foreground/background tile #4403
  • Added Site.tilemapMode property
  • Added x and y params to app.command.Paste()
  • Fixed app.command.Cut/Paste in -batch mode #4354
  • Fixed app.command.Cancel() command when used from scripts
  • Fixed default color/bgColor params in app.useTool()

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)