Skip to content

Releases: KaliedaRik/Scrawl-canvas

Scrawl-canvas v8.10.0

19 Mar 12:09
Compare
Choose a tag to compare

Breaking changes:

  • getCanvas, getStack - the functionality of these calls have changed to take into account the library.purge functionality in the previous release. The advice on how to add SC to a React build has also changed to take into account React18 dev checks around the useEffect hook.
  • SC no longer adds a color factory (or anything else) to the DOM window object. Any code that relied on these (supposedly secret internal) functionalities will need fixing.

New functionality:

  • The SC observeAndUpdate factory function has been deprecated in favour of a new makeUpdater function. The arguments accepted for both factory functions remain the same.

Improvements:

  • SC tickers can now be tied to a renderAnimation object through a new observer attribute. When the renderAnimation starts/halts, tickers observing that object will also start/halt. SC tweens will also accept the new attribute and pass it on to their ticker when they are initialized
  • The canvas.buildCell function can now take a new willReadFrequently boolean, which defaults to true. All internal Cell wrappers now set this attribute to true, which has boosted rendering speeds by up to 20%.

Bugfixes:

  • A major refactor of the SC core modules, to remove all cyclic dependencies from the build.
  • Fix a makeGroup factory bug so the host attribute in the factory's argument can be a Stack or Cell object in addition to those objects' name String.

Full Changelog: v8.9.10...v8.10.0

Scrawl-canvas v8.9.10

27 Feb 08:16
Compare
Choose a tag to compare

Breaking changes:

None

New functionality:

None

Improvements:

  • Rewrote Demo tests modules-001, modules-002, modules-003, modules-004, modules-005 - modules now take the scrawl object as an argument rather than import Scrawl-canvas directly (to minimise potential library version conflicts)
  • Moved Demo test canvas-057 to modules-006, and modularised code
  • Tweens can now run against (manipulate) animationTicker, filter and world objects

Bugfixes:

  • Fixed keyboardZone bug
  • Fixed tween bug where tween updates were being applied to the group object rather than against the artefact objects contained in the group
  • Fixed drag-drop bug where, when a relatively positioned artefact was dragged, it had its coordinates set to absolute position values on drop

Full Changelog: v8.9.9...v8.9.10

Scrawl-canvas v8.9.9

16 Feb 21:18
Compare
Choose a tag to compare

Breaking changes:

None

New functionality:

None

Improvements:

None

Bugfixes:

  • Fix issues in package.json - main attribute was pointing at the wrong file

Full Changelog: v8.9.8...v8.9.9

Scrawl-canvas v8.9.8

12 Feb 20:56
Compare
Choose a tag to compare

Breaking changes:

None

New functionality:

None

Improvements:

None

Bugfixes:

  • Fix issues in package.json causing bundle failure (Rollup)
  • Fix bug in /factory/filter.js which was erroring in Rollup build

Full Changelog: v8.9.7...v8.9.8

Scrawl-canvas v8.9.7

12 Feb 19:48
Compare
Choose a tag to compare

Breaking changes:

None

New functionality:

Simplified SC Library management by introducing a new library.purge(string) function

  • When combined with recommended name-spacing strategies (place the namespace string at the start of the names of all objects created for that namespace), this function will clear all objects starting with the namespace String from the library by triggering their kill() functionality.
  • Tested in updated demos Canvas-043 and Canvas-046
  • Demos Canvas-001 to Canvas-030 updated to demonstrate the recommended name-spacing strategy

Improvements:

  • Added a new ordered dithering option to the reducePalette filter
  • Expanded the RandomNoise filter so that it can randomize pixels based on the bluenoise and ordered pseudo-random number arrays
  • Added a new demo Filters-028 to test stencil (background) filter functionality

Bugfixes:

  • Small bug that was causing errors if an animated sprite was not played immediately after its creation - fixed
  • Small bug in the Picture entity kill functionality which was also deleting the Picture's Asset (when not requested) - fixed
  • 2 Dependabot security PRs merged

Security

Changelog

Full Changelog: v8.9.6...v8.9.7

Scrawl-canvas v8.9.6

21 Dec 19:53
Compare
Choose a tag to compare

Breaking changes:

None

New functionality:

None

Improvements:

None

Bugfixes:

  • Fix issues affecting package.json

Full Changelog: v8.9.5...v8.9.6

Scrawl-canvas v8.9.5

20 Dec 07:51
Compare
Choose a tag to compare

Breaking changes:

Minor breaking changes to the Reduce Palette filter

New functionality:

None

Improvements:

  • Updated package.json to include "type": "module" attribute

Bugfixes:

  • Minor fixes to the Reduce Palette filter

Full Changelog: v8.9.4...v8.9.5

Scrawl-canvas v8.9.4

19 Nov 12:10
Compare
Choose a tag to compare

Breaking changes:

None

New functionality:

None

Improvements:

  • New color spaces support: OKLAB, OKLCH

Bugfixes:

  • Minor demo updates to accommodate new color spaces

Full Changelog: v8.9.3...v8.9.4

Scrawl-canvas v8.9.3

09 Aug 16:39
Compare
Choose a tag to compare

Breaking changes:

None

New functionality:

  • New tiles filter
  • New newsprint filter
  • New compound filter demos

Improvements:

  • New noTarget attribute for makeRender factory. By default, render objects created with no target Canvas/Stack wrappers will use the SC default clear/compile/show functions to render all Canvas/Stack elements on the page. Setting the noTarget attribute to true will prevent this happening.

Bugfixes:

  • Fix bugs in the blend and compose filters
  • Fix Group.getArtefact()
  • Fix Cell Display cycle rendering to remove unnecessary function calls

Full Changelog: v8.9.2...v8.9.3

Scrawl-canvas v8.9.2

19 Jul 20:00
Compare
Choose a tag to compare

Breaking changes:

None

New functionality:

Artefact attribute order now split into new processingOrder and stampOrder attributes. Artefacts that are used by other artefacts for positional data, and thus need to be calculated first, but also need to display over the top of those other artefacts, can split their ordering values accordingly. Setting order (which is now a pseudo-attribute) will set both new attributes to the supplied value. Getting order will return the stampOrder value

Improvements:

The reduce-palette and corrode filters have been rewritten to make them more efficient, and faster

Bugfixes:

None

Full Changelog: v8.9.1...v8.9.2