Snap

a visual programming language inspired by Scratch

AGPL-3.0 License

Stars
1.5K
Committers
103

Bot releases are hidden (Show)

Snap - v9.0.14

Published by jmoenig 11 months ago

9.0.14:

  • Notable Fixes:
    • fixed 'distribution' and 'uniques' list selectors support for nested atomic lists
  • Translation Updates:
    • Spanish, thanks, David Martín!
    • Chinese, thanks, moodykeke!
Snap - fixed word-sentences library

Published by jmoenig 11 months ago

9.0.13:

  • Notable Fixes:
    • fixed word-sentences library
Snap - v9.0.12

Published by jmoenig 11 months ago

9.0.12:

  • Notable Fixes:
    • fixed loading the "Words, sentences" library
    • fixed importing data into single-palette mode projects (avoid garbling the palette)
    • fixed some broken file references in the pwa cache
  • Library Updates:
    • added 3 minimal library variants "Just Words", "Replace Letters" and "Just Bars"
Snap - v9.0.11

Published by jmoenig 12 months ago

9.0.11:

  • Notable Fixes:
    • fixed global color sensing - workaround for Chrome v119's canvas clipping bug - used in pipette tool in paint editors, color input slots and color sensing primitives
  • Translation Updates:
    • Italian, thanks, Stefano!
    • Spanish (libraries), thanks, Victoria and Mary!
Snap - v9.0.10

Published by jmoenig 12 months ago

9.0.10:

  • Notable Fixes:
    • fixed localizing blocks search and keyboard entry, thanks, Oliver, for the bug report!
Snap - v9.0.9

Published by jmoenig 12 months ago

9.0.9:

  • Notable Fixes:
    • fixed localizing relabelled primitive blocks
  • Translation Updates:
    • Spanish, thanks, David Martín!
Snap - v9.0.8

Published by jmoenig 12 months ago

9.0.8:

  • Notable Fixes:
    • SPLIT now observes the preference setting for case-sensitivity
    • fixed a typo in 'noDefaultCat' configuration setting, thanks, Emmanuel, for the report!
  • Translation Updates:
    • Brazilian Portuguese, thanks, Ville Medeiro!
Snap - v9.0.7

Published by jmoenig about 1 year ago

9.0.7:

  • Translation Updates:
    • Chinese, thanks, moodykeke!
Snap - v9.0.6

Published by jmoenig about 1 year ago

9.0.6:

  • Notable Fixes:
    • fixed #3252 - local return glitch
    • fixed #3248 - names of easing functions are swapped ("-"in"/"-"out")
Snap - v9.0.5

Published by jmoenig about 1 year ago

  • Notable Changes:
    • MQTT extension update, thanks, Xavier and Simon!
Snap - v9.0.4

Published by cycomachead about 1 year ago

9.0.4:

  • Notable Changes:
    • Emergency Patch for BJC Projects.
    • The recent cache busting in #3238 is incompatible with BJC
Snap - v9.0.3

Published by jmoenig about 1 year ago

9.0.3:

  • Notable Changes:
    • do not cache remote requests, thanks, Michael!
  • Translation Updates:
    • new Tigrinya translation, yay! Thanks, Tesfaldet Negash and Heran Sium!
    • Catalan, thanks, Joan!
Snap - v9.0.2

Published by jmoenig about 1 year ago

  • Notable Fixes:
    • fixed #3239 (a context serialization glitch)
Snap - v9.0.1

Published by jmoenig over 1 year ago

9.0.1:

  • Notable Fixes:
    • fixed "play sound until done" blocking glitch
Snap - v9.0.0

Published by jmoenig over 1 year ago

9.0.0:

  • New Features:
    • new "this" reporter for introspection offering access to "script", "caller", "continuation" and "inputs", enabling programs to access their dynamic scope and runtime call-stack
    • "call" is now hyperized and accepts a list/table etc. of rings as procedure input, returns a list/table etc. of applying all arguments to each ring. Currently constrained to primitive data (text, number, Boolean) inputs, albeit in any dimension (e.g. lists of lists of data)
    • new "extent" selector in the "(attribute) OF (object)" reporter's dropdown menu returns a list if width-height coordinates
    • new "uniques" selector in list properties reporter's dropdown, answers a new list containing the source list's unique values based on equality (i.e. a set)
    • new "sorted" and "shuffled" selectors in list properties reporter's dropdown
    • new "stage", "agent" and "script" selectors in "is a?" reporter's dropdown
    • new "case sensitivity" preference setting
    • new "case sensitivity" selector to the setting blocks' dropdowns
    • new dropdown menu with "length", "lower case" and "upper case" selectors in the "length of text" reporter
    • new option to make individual input slots in custom blocks "static", i.e. irreplaceable by reporters
    • new option to specify a "separator" (infix) label for variadic input slots inside custom blocks
    • new "replaceables" selector in block-attributes dropdown, manages whether inputs slots are static
    • new "separators" selector in block-attributes dropdown, manages infix-separators for variadic input slots
    • new "comment" selector in block-attributes dropdown, accesses cutom block definitions' help text, i.e. comments attached to the prototype hat
    • new context comments preserve ring comments and hat block comments in the evaluator for later introspection
    • new "generate puzzle" feature - single click Parson's Puzzle generator for educators
    • new "solutions" selector in the "my (attributes)" reporter, answers a dictionary of a puzzle sprite's solution scripts tagged by their comments, if any
    • new "Tiles" library, divides the stage into sub-regions in each of which to perform an action
    • new "Arcs" library, turns sprites by a delta of degrees moving them at a given radius
    • new "Sarron" and "Aleassa" costume series, thanks, Meghan and Brian!
    • new Armenian translation, yay! Thanks to the contributors!
    • new embedding configuration options: noSpriteEdits
    • Expanded the #open: URL scheme to accept image URLs.
    • new "ide_translation_dict", "ide_set_translation_dict(data)" and "txt_export(txt, name)" extension primitives
    • new "hideDefaultCat" configuration setting, lets you hide the default built-in category buttons
  • Notable Changes:
    • IF is now variadic and expandable with "else if" cases
    • explicit variadic input list visuals
    • "this script" reporter has been morphed into the new general "this" introspection/self reflection reporter
    • RUN/CC and CALL/CC primitives have been deprecated and removed from the palette, will still be present and work in existing projects
    • changed the first input slot of the "reshape" block from "list" type to "any" type
    • changed JOIN, APPEND and COMBINATIONS to show "with" infix label in between inputs, and to collapse from 2 inputs directly to "input list" case, same as +, min, AND etc. (monadic uses in existing projects will not change)
    • dragging blocks and scripts out of balloons and watchers now only includes the surrounding ring if it has formal parameters
    • changed the semantics of empty list-type slots to return a new empty list instead of "nothing"
    • improved browser resource management for graphics and sounds
    • changed long-form input dialog setting's behavior to automatically expand / collapse slot type view
    • made "distribution" list selector case-sensitivity setting aware and optimized for atomic data
    • slightly optimized pen drawing performance when WARPed
    • removed multibranched conditional library (cases.xml), because IF is now variadic
    • removed the "remove duplicates" reporter from the "list utilities" libraries because it is now a primitive
    • updated audio comp library with a faster (hyper) version of the "Hz for secs" reporter
    • updated animation library with a faster (hyper) version of "glide" and added "steps" selector to the "animate" command
    • new "fade-in" block in the audio comp library lets you reduce audible "clicks" in sounds computed from raw samples
    • messages and identifying sprites, costumes and sounds by their names is now case-insensitive by default (e.g. in "object", "broadcast", "of" blocks)
    • translations now use abstract block specs
    • updated the strings library for and with the new case sensitivity and lower case primitives
    • generated JSON strings are now (somewhat) pretty printed (with newlines and indentations)
    • increased arrows heads size for variadic inputs and dropdown menus
    • confined the red drop-target halo of multi-slots to the boundaries of its arrows / arity controls
  • Notable Fixes:
    • fixed #3154 (let "this script" capture variables in rings)
    • catch misspelled or non-existing translation keys in urls and elsewhere, thanks, Joan!
    • fixed a bug that led to the default input of "When I am clicked" not being translated
    • fixed serializing complex inputs to contexts (procedure objects)
    • fixed dragging blocks, costumes and sounds out of table views
    • fixed #3207 (initial arrow head orientation for long form input slot dialog)
    • fixed a number/text type glitch in the "(ray length) TO (sprite)" reporter for hyperized angular offsets
    • fixed #3180 (preserve zero values in blockified lists instead of turning them into empty slots)
    • fixed stopping ASK prompter under certain race conditions
    • fixed MAP, KEEP, FIND and COMBINE primitives to work with JS-funargs
    • fixed assigning same costume names to recurrent video snaps
    • fixed sound naming rules for same-named imports
    • fixed preserving embedded scripts when collapsing variadic c-slots
    • fixed preserving embedded scripts when relabelling blocks with variadic c-slots
    • improved sensing precision when clicking on variadic slot arrows
    • fixed JIT-compiling variadic Boolean infix ops (AND, OR)
    • fixed identity case for COMBINATIONS
    • fixed occasional costume reference error for computed, non-wardrobe costumes in sprite-duplicates
    • fixed the "stage size" reporter in the "Getters and setters" library
    • fixed accessing negative indices in linked lists
  • Documentation Updates:
    • extended API documentation for "noSpriteEdits" and "hideDefaultCat" configurations
    • updated CONTRIBUTING.MD for the new underscore-placeholder notation for block input slot translations
  • Translation Updates:
    • German
    • Greek, thanks, HM100!
    • Armenian, thanks to the contributors!
Snap - v8.2.3

Published by jmoenig over 1 year ago

  • Notable Fixes:
    • fixed blocks search for scenes, thanks, @gigamonkey for the report!
Snap - v8.2.2

Published by jmoenig over 1 year ago

  • Notable Fixes:
    • fixed "letter random of text" selector
    • fixed "insert thing at random of list" selector
    • fixed "replace item random of list with thing" selector
    • fixed #3193 (invoking the scenes menu inside a custom block editor)
Snap - v8.2.1

Published by jmoenig over 1 year ago

  • Notable Fixes:
    • fixed #3190 - unable to search blocks in the stage
    • fixed finding blocks by typing their infix or collapse variants (e.g. "and", "or", "sum", "product" etc.)
    • fixed #3191 - keep certain warning dialogs open when switching scenes
Snap - v8.2.0

Published by jmoenig over 1 year ago

  • New Features:
    • AND / OR are now variadic (and hyper!), thanks, Dan, for the suggestion
    • all comparison operators are now variadic
    • new "distribution" selector in the list attribute reporter's dropdown menu
  • Notable Changes:
    • removed variadic reporters library (because the primitives are now variadic)
    • MQTT library update, thanks, Simon and Xavier
  • Notable Fixes:
    • fixed "rename" and "rename all" for custom block formal parameters
    • fixed accessing random list elements
    • TuneScope hotfix, thanks, Harsh, Glen & team!
    • fixed including hidden variables when exporting blocks
    • fixed #3183 - determining the length of huge strings fails
  • Translation Updates:
    • German
    • Catalan, thanks, Joan!
Snap - v8.1.6

Published by jmoenig over 1 year ago

8.1.6:

  • Notable Fixes:
    • fixed playing back a list of samples "until done", thanks for the report, @mjguzdial!
    • fixed messed up stage layout when switching back from presentation to edit mode on small displays, thanks for the report, Eckart!
    • fixed scaling down large stage sizes in presentation mode on small screens
  • Documentation Updates:
    • updated API documentation for onload() configuration callback option