v2.0.0
2.0.0 (2026-03-04)
Bug Fixes
-
add Scratch zoom controls conditionally (6a7e36d)
-
Add support for flyout labels with status indicators (#212) (665d196)
-
add support for Scratch-style block comments (#83) (8902091)
-
address minor feedback from automated review (9971b64)
-
allow focusing fields in the flyout on mobile (#184) (6c9d3a6)
-
allow Scratch-style zoom controls as separate SVGs (99a40ab)
-
allow specifying the function to be used for prompting about variable creation/edits (#106) (4cfe66f)
-
build: don't externalize Blockly (for now) (375ccd4)
-
delete context menu to display the correct number of blocks (#127) (a65d24a)
-
deps: after installing deps, replace Blockly v11 with v12 RC (677ff6f)
-
deps: clone Blockly RC over HTTP instead of SSH (8a861f0)
-
deps: update Blockly to 12.4.1 and update its plugins (f2e698a)
-
deps: use Blockly 12 beta instead of RC (92a8a01)
-
deps: use blockly 12.3 beta (76981e1)
-
display icons in the toolbox for extension categories (#47) (b53eadd)
-
don't include Blockly RC source in npm package (21b15d1)
-
don't show global/local options when renaming a variable (#123) (22a6b73)
-
don't show scope options when renaming a variable from the variable getter context menu (#139) (375e56d)
-
don't warn about procedure references when moving the definition on the workspace (#131) (cda58cc)
-
enable dragging arguments out of procedure blocks (#119) (0ca0620)
-
Export colours. (7c346fa)
-
Export Scratch messages. (09326a1)
-
fix a crash when adding a broadcast message (#150) (8e165ce)
-
fix alignment of "define" text baseline on custom blocks (#220) (cc4d9f9)
-
fix bug that caused the number/string input in the custom block editor to have square corners (#213) (c3ee958)
-
fix bug that could cause duplicated procedure argument blocks to create more duplicates on drag (#217) (6a1c8a9)
-
fix bug that could cause the wrong toolbox category to appear selected (#232) (ec918e2)
-
fix bug that could clear the values of procedure block caller arguments (#247) (611e440)
-
fix bug that prevented modal dialogs from appearing on mobile (#183) (37e0f10)
-
fix bug that prevented moving block comments (#248) (dc17159)
-
fix bug that prevented showing the contextual menu on blocks (#176) (2e98ff1)
-
fix deserialization of local/cloud variables (#245) (09bb237)
-
fix ephemeral focus handling for
FieldAngleandFieldNote(#244) (8b758db) -
fix positioning of block comments in RTL mode (#249) (9f1da96)
-
fix positioning of categories when scrolling via the toolbox (#186) (6d14530)
-
fix the colors of the angle picker dropdown (#179) (59896d2)
-
fixed bug where broadcast messages would appear in the variable dropdown list (#124) (b1e67f6)
-
hide disable and inline inputs contextual menu items (#35) (c548298)
-
improve positioning of newly created procedure blocks (#121) (84a9e5b)
-
improve reliability of block value reporting (#77) (cb5b068)
-
improve styling, especially in high contrast mode (#246) (abd9a40)
-
make Duplicate context menu item duplicate subsequent blocks (#250) (3a43e6b)
-
make FieldNumber a subclass of FieldTextInput (#214) (3ae2235)
-
make input connection highlight larger to ensure it's distinct from the input itself (0a946b9)
-
make insertion markers reflect the actual size of the block (#251) (c824cc1)
-
match Scratch behaviors around dragging and connection stickiness (#80) (fd1bc58)
-
modernize and reenable the colour slider field (#42) (4f97982)
-
more closely align flyout layout with Scratch (#45) (49663ed)
-
new beta release for better Blockly v12 beta compatibility (127ac8b)
-
prefer input shape for connection hints (e161897)
-
prevent deleting procedure definition blocks with references by dragging to the flyout (#120) (fa9367d)
-
prevent dragging blocks into the slot occupied by the procedure definition block's example caller block (#118) (453ffa9)
-
prevent toolbox categories from becoming unselected (#233) (af66069)
-
reenable support for checkboxes in the flyout (#43) (e603c67)
-
reenable support for dragging blocks between sprites (#130) (3d8b998)
-
remove underscore from a few createProcedureDefCallback calls (#40) (4e794f6)
-
rename mouseDownWrapper fields for Blockly v12 compatibility (adaf531)
-
render the procedure definition block like Scratch (#115) (2a543f5)
-
resolve error when adding the stop block to the workspace (#56) (f3e059c)
-
select new variable blocks' monitor checkboxes after creation (#140) (3811d93)
-
show connection highlights for boolean inputs (#181) (303611a)
-
show non-Boolean connection hints (d4a9ff5)
-
show the name of the list in the list getter block context menu (#132) (eb839fc)
-
update the flyout for compatibility with the new flyout API (#209) (7ce9991)
-
use browserEvents.bind instead of direct binding (b2a5d2c)
-
feat(build)!: modernize build output (a2aff29)
-
fix!: bump to v2.0 to reflect Blockly un-forking (899a981)
Features
- add a block inflater that supports recycling (#207) (0701679)
- add bubbles/icons for block flyout checkboxes (#208) (39b2162)
- add custom Scratch variable model and creation event classes (#86) (2598ede)
- clean up and export Scratch's variables.js (#88) (5c1acfe)
- readd support for the custom Data toolbox category (#87) (dcfbf39)
- reenable Scratch's FieldVariable subclass (#91) (7c891e3)
Reverts
BREAKING CHANGES
- code depending on this package must now understand ESM
- scratch-blocks is no longer a divergent fork of
Blockly, and instead depends on Blockly as a regular node_modules
dependency.
Thanks, @gonfunko and everyone else at Google who helped with this
effort!