Skip to content

Releases: jmoenig/Snap

v10.2.5

14 Nov 10:35
Compare
Choose a tag to compare

10.2.5:

  • Notable Fixes:
    • fixed "reshape" to let a zero dimension consistenly refer to the available leaf count, e.g. reshape (['foo', 'bar'], 0) => ['foo', 'bar']
    • fixed an error when referencing a renamed or nonexisting input slot in a slot-menu-event hat block

v10.2.4

12 Nov 18:10
Compare
Choose a tag to compare

10.2.4:

  • Notable Fixes:
    • fixed a variadic input slot arrow layout bug

v10.2.3

12 Nov 12:37
Compare
Choose a tag to compare

10.2.3:

  • New Features:
    • expose a copy of the custom block as "caller" to input slot reaction scripts inside custom block definitions
    • new "input slots" menu option for custom block input slots
    • new "expand (input) to (n) slots" command in the metaprogramming library
  • Notable Changes:
    • automatically add a dropdown menu to any custom block input slot whose definition has a slot menu event hat block for it
    • tweaked variadic input slot arrows layout
  • Notable Fixes:
    • fixed input names when querying a custom block definition that has no function body script
    • hide variadic input arrows in case the number of slots is fixed
    • expand variadic inputs to their initial slots amount (if any is specified) when restoring them (i.e. when removing an embedded reporter block)
  • Note to overeager enthusiasts and online geniuses (tm):
    • Please, oh please, use metaprogramming capabilities and variadic inputs wisely, if at all. They can be powerful abstractions, but there ain't not free lunch, they come with costs in expressivity and comprehensibility. Remember that naming things (and choosing distinct names) is a great strategy when communicating with fellow humans. It's sure nice to be revered by your peers for your inconceivable brilliance, but so much nicer to be understood. Never forget that among humans expressive is better than impressive, straight ist better than crooked, flat is better than nested, named is better than anonymous and explicit is better than implicit. Also remember that the one you're most likely talking to is your future you. Be nice to them!

v10.2.2

10 Nov 17:12
Compare
Choose a tag to compare

10.2.2:

  • Notable Changes:
    • changed wording for "when slot ... gets ..." hat block to "when slot ... signals ..."
  • Translation Updates:
    • German

v10.2.1

10 Nov 14:14
Compare
Choose a tag to compare

10.2.1:

  • Notable Changes:
    • deprecated "expand (input) to (n) slots" command, because "set slot ... to ..." can now do this by passing a list as value
    • merged both custom block slot event hat blocks into one "when slot ... gets ..."
  • Translation Updates:
    • German

v10.2.0

08 Nov 14:12
Compare
Choose a tag to compare

10.2.0:

  • New Features:
    1. Block instance scripting
      • dynamic (scriptable) drop down menus for custom block input slots
      • new "scripted" menu option for custom block input slots
      • new "When slot (slot) menu clicked" hat block for use inside custom block editors, has to report a list of drop-down menu items
      • metaprogramming support for scriptable input slot menus
      • custom block instance scripting support
      • new "When slot (slot) edited" hat block for use inside custom block editors
      • new "set slot (slot) to ..." commmand block for use inside custom block editors in "when (slot) edited" hatted scripts
      • new "expand (input) to (n) slots" command block for use inside custom block editors in "when (slot) edited" hatted scripts
    2. OOP
      • new "Sprite Method API" library for teaching OOP with dot notation
      • OOP library: updated "field ... of (obj)" reporter with a new dynamic dropdown and automatic input slot variadicity
    3. Block instance variables for sprite-local custom blocks
  • Notable Changes:
    • simplified evaluation of generic "When ..." hat blocks, removed time-slice threshold for predicates
    • changed "my (attribute)" primitive to report an empty list instead of an empty (scalar) value in case of no existing block, costumes, etc.
  • Notable Fixes:
    • added the "Outlines and Halos" library to the libraries browser
  • Translation Updates:
    • German

v10.1.9

28 Oct 16:04
Compare
Choose a tag to compare

10.1.9:

  • Notable Changes:
    • adjusted push-button outlines for bright gui theme

v10.1.8

22 Oct 11:16
Compare
Choose a tag to compare

10.1.8:

  • Notable Fixes:
    • updated the text costumes library with a special case for a space character
    • updated BLE library for Morphic scheduling, thanks, Bernat!

v10.1.7

19 Oct 12:11
Compare
Choose a tag to compare

10.1.7:

  • Notable Fixes:
    • fixed a BlockSymbolMorph getRenderColor() null case glitch

v10.1.6

18 Oct 12:54
Compare
Choose a tag to compare

10.1.6:

  • Notable Fixes:
    • fixed #3409 - do not remove custom blocks referenced in customized primitives as "unused"