"Quicksteps" Evaluation - Dynamic Scheduling: Keep stepping non-animating processes between animation frames, makes "warp" and "turbo mode" largely obsolete for number crunching and improves musical thread synching
Floating point precision random numbers - pick a random float by entering an integer with a decimal point into at least one of the "pick random" reporter's input slots
reduced animation speed from 67 fps to 60 fps
disabled santa hats until next Christmas, still loadable as extension
Notable Fixes:
SciSnap file reader, thanks, Eckart!
fixed Beetle extension for extrusion and scaling, thanks, Bernat and Joan!
handle more cases of circularity in data structures more gracefully, thanks, blockpointstudios, for the report!
fixed #3429: Previously hidden generic WHEN hat blocks reappeared in v10.3
fixed a series of glitches handling customized primitives
"Quicksteps" scheduling runs all non-animating parts of processes at "turbo" speed, and fills up every timeslot in between animation frames with as many "quicksteps" as the processor can handle, but staying true to Snap's concurrency model of atomicity / protected areas. As a result you no longer have to use WARP to speed up any loops that only crunch numbers, they are turbo'ed automatically, while other processes that animate stuff, and other parts of the same process are unaffected and keep running at animation frame speed. I'm joking to myself that Snap's scheduler has transitioned from a "marching" in step model to a "dancing" dynamically model, hence the name "Quicksteps". One caveat: Custom hat blocks (and the generic event / condition hat) will slow down quicksteps, because they need to be double-clocked (in fact, they're also "quickstep"-dancing, but at up to double speed so they can capture changes that occur in those quicksteps). That's why in projects that make use of custom hat blocks it may still make sense to use WARP even outside of animations. Of course, both WARP and TURBO mode are still useful if you want to speed up animations! One of the more dramatic side-effect of quickstepping is that polyphonic music, and music in general, is now significantly more in synch. Here's a quick little Quicksteps Demo Project.
I've reduced the speed of animations from 67 FPS to 60 FPS. 67 FPS was a mistake that occurred somewhere along the past, and never should have been there. At 60 FPS Snap still animates at double the speed of Scratch. But some - especially un-timed - animations would run slightly slower. I hope people aren't going to hate it too much.
picking a RANDOM number now lets you choose floats instead of numbers if you enter a decimal point somewhere. For example, if you want to pick random audio samples, you can now enter "-1.0 to 1.0" instead of "-1 to 0.999".
Wow, not German this time. Not that I complain about German being updated all the time, but I don't usually see any other languages being updated.
And I actually understand everything here, which is also unusual.
EDIT: When I wrote that, I forgot about the "Notable Fixes" section... :~/
Also, there aren't any new blocks.