Skip to content

Releases: google/blockly

Q1 2022 Patch 2

09 May 16:38
b92cbd3
Compare
Choose a tag to compare

The v8.0.1 patch to NPM did not have the correct files. So we must create a new patch to fix this.

This contains all of the same code as v8.0.1, it just bumps the version number.

Q1 2022 Patch 1

28 Apr 20:38
7eebd78
Compare
Choose a tag to compare

Patch containing:

Q4 2021 Patch 5

28 Apr 22:35
Compare
Choose a tag to compare

Q1 2022 Release (v8.0.0)

31 Mar 16:32
31f5a73
Compare
Choose a tag to compare

New Contributors

What's Changed

⚠ BREAKING CHANGES

  • change paste to return the pasted thing to support keyboard nav (#5996)
  • blocks: ...and rename Blockly.blocks.all (blocks/all.js) to Blockly.libraryBlocks (blocks/blocks.js
    • refactor(blocks): Make loopTypes a Set
  • allows previously internal constants to be configurable (#5897)
    • refactor(blocks): Make loopTypes a Set
  • remove unused constants from internalConstants (#5889)

Features

  • add mocha failure messages to console output (#5984) (7d250fa)
  • Allow developers to set a custom tooltip rendering function. (#5956) (6841ccc)
  • blocks: Export block definitions (#5908) (ffb8907)
  • make mocha fail if it encounters 0 tests (#5981) (0b2bf3a)
  • tests: Add a test to validate scripts/migration/renamings.js (#5980) (3c723f0)
  • tests: Use official semver.org RegExp (#5990) (afc4088)

Bug Fixes

  • Adds check for changedTouches (#5869) (3f4f505)
  • advanced playground and playground to work when hosted (#6021) (364bf14)
  • always rename caller to legal name (#6014) (c430800)
  • blocks: correct the callType_ of procedures_defreturn (#5974) (b34db5b)
  • build: Correctly handle deep export paths in UMD wrapper (#5945) (71ab146)
  • bumping a block after duplicate breaking undo (#5844) (5204569)
  • change getCandidate_ and showInsertionMarker_ to be more dynamic (#5722) (68d8113)
  • change paste to return the pasted thing to support keyboard nav (#5996) (20f1475)
  • Change the truthy tests of width and height in WorkspaceSvg.setCachedParentSvgSize to actual comparisons with null so that zero value can be saved into the cache (#5997) (fec44d9)
  • comments not being restored when dragging (#6011) (85ce3b8)
  • convert the common renderer to an ES6 class (#5978) (c1004be)
  • convert the Workspace class to an ES6 class (#5977) (e2eaebe)
  • custom block context menus (#5976) (8058df2)
  • Don't throw if drag surface is empty. (#5695) (769a25f)
  • export Blockly.Names.NameType and Blockly.Input.Align correctly (#6030) (2c15d00)
  • Export loopTypes from Blockly.blocks.loops (#5900) (4f74210)
  • Export loopTypes from Blockly.blocks.loops (#5900) (74ef1cb)
  • Fix bug where workspace comments could not be created. (#6024) (2cf8eb8)
  • Fix downloading screenshots on the playground. (#6025) (ca6e590)
  • fix keycodes type (#5805) (0a96543)
  • Fixed the label closure on demo/blockfactory (#5833) (e8ea2e9)
  • generators: Fix an operator precedence issue in the math_number_property generators to remove extra parentheses (#5685) (a31003f)
  • incorrect module for event data in renamings database (#6012) (e502eaa)
  • Move @alias onto classes instead of constructors (#6003) (1647a32)
  • move test helpers from samples into core (#5969) (2edd228)
  • move the dropdown div to a namespace instead of a class with only static properties (#5979) (543cb8e)
  • msg imports in type definitions (#5858) (07a75de)
  • opening/closing the mutators (#6000) (243fc52)
  • playground access to Blockly (9e1cda8)
  • playground test blocks, text area listeners, and show/hide buttons (#6015) (7abf3de)
  • procedure param edits breaking undo (#5845) (8a71f87)
  • re-expose HSV_VALUE and HSV_SATURATION as settable properties on Blockly (#5821) (0e5f3ce)
  • re-expose HSV_VALUE and HSV_SATURATION as settable properties on Blockly (#5821) (6fc3316)
  • revert "Delete events should animate when played (#5919)" (#6031) (c4a25eb)
  • revert converting test helpers to es modules (#5982) (01d4597)
  • setting null for a font style on a theme (#5831) (835fb02)
  • tests: Enable --debug for test:compile:advanced; fix some errors (#5959) ([88334be](88334bea8...
Read more

Q4 2021 Patch 4

15 Feb 00:10
e21a8fc
Compare
Choose a tag to compare

Patch release with #5942.

Reverts the last patch release after bugs were reported.

Q4 2021 Patch 3

11 Feb 21:28
caba596
Compare
Choose a tag to compare

Q4 2021 Patch 2

07 Jan 19:47
5a4e30a
Compare
Choose a tag to compare

Q4 2021 Patch 1

15 Dec 22:08
4be7891
Compare
Choose a tag to compare

Patch release containing:

Q4 2021

09 Dec 21:14
02a5712
Compare
Choose a tag to compare

The Q4 2021 Blockly release is here, and it’s a big one. Over the past two quarters we overhauled the core codebase and changed every file in core to use ES6 syntax and Closure modules. The migration touched every file in core but left our external-facing APIs mostly unchanged.

New Contributors

What's Changed

Breaking Changes 🛠

  • Migrate core/renderers/common/marker_svg.js to goog.module syntax by @moniika in #5255
  • Migrate core/events/block_events.js to goog.module syntax by @moniika in #5320
  • Migrate core/procedures.js to goog.module syntax by @gonfunko in #5265
  • Changes Css.register API to accept string param by @DubeySandeep in #5472
  • fix!(blocks): Rename Blockly.Blocks.* modules to Blockly.blocks.* by @cpcallen in #5696
  • chore!: Add deprecation notices to values in blockly.js by @maribethb in #5555

Bug fixes

Cleanup ♻️

Other Changes

Read more

Q3 2021 Beta Release

01 Oct 15:23
1c1918e
Compare
Choose a tag to compare
Q3 2021 Beta Release Pre-release
Pre-release

This quarter the team migrated most of the core library to Closure modules. This is a significant step on our way to migrating fully to TypeScript and leaving Closure behind. The migration touched every file in core, but left our external-facing APIs mostly unchanged. There are some known issues documented in the release post.

API Changes:

  • feat: add support for defining toolboxes using pure json (#5392)
  • Migrate core/events/block_events.js to goog.module syntax (#5320)
  • Migrate core/procedures.js to goog.module syntax (#5265)
  • Migrate core/renderers/common/marker_svg.js to goog.module syntax (#5255)

Issues closed:

  • Problem loading source maps in blockly-webpack sample (#5507)
  • Simplify globalThis export (#5506)
  • how can i change the category arrow color? (#5481)
  • How to limit the workspace can only be extended to the bottom right corner? (#5477)
  • getFastTextWidthWithSizeString says canvasContext is null when called from keyboard nav tests (#5473)
  • For loop error (#5431)
  • Run Generated Code in a Server-side Docker Container (#5411)
  • Empty English strings localized into "" in French (#5399)
  • Blockly field_colour widget changes block color - only in Zelos renderer (#5377)
  • Blocks connected to blocks with multiple connections overlap with each other in Minimalist renderer (#5371)
  • Mocha and generator tests hang (#5345)
  • Bad link to block styles script in guide (#5341)
  • Update Tag module cleanup workflow to add instead of set labels (#5298)
  • Custom generator codelab. Expecting valid order from member and lists_create_with block. (#5291)
  • STATEMENT_PREFIX / STATEMENT_SUFFIX inconsistent (#5268)
  • iOS messages (#5260)
  • Support injecting Blockly into the shadowDom/Web Component (#5230)
  • Could not find "storage.js" (#5215)
  • Build Blockly problem (#5214)
  • Review contents of blockly.js (#5208)
  • Stacks with no next connection overlap statement input in Zelos (#5170)
  • Remove or deprecate exported names ending in _ (#5135)
  • Update exports style in goog.module-migrated files (#5133)
  • Uncaught Error: Language "JavaScript" does not know how to generate code for block type "string_length". (#5113)
  • Closure base.js should not request (non-existent) closure/goog/deps.js (#5103)
  • Change python -> python3 when invoking scripts (#5080)
  • Remove rewrite_polyfills=false (#5039)
  • Mocha tests fail when loading goog.modules (#5030)
  • WARNING: definition of COLOUR_RGB_TOOLTIP in msg/json/sv.json contained a newline character. (#5017)
  • Zoom in/out with CMD on Mac (#4993)
  • Values of fields defined in the toolbox should use the message localization system (#4992)
  • Calling a.setParent(b) without connecting blocks a and b can cause major rendering issues and errors (#4989)
  • Remove themes from core (#4987)
  • Create Github Action to calculate release bundle size delta (#4977)
  • Error to generate blocks on complex input (#4964)
  • Empty comments not saved during serialization (#4960)
  • Scrolling has no effect in the workspace in Safari (#4957)
  • Add a 'Help' button to devsite (#4935)
  • Disabling only one field on a block (#4932)
  • Non autoclosing flyouts do not update zoom level correctly (#4931)
  • Buttons in horiz flyouts are missing vertical padding (#4914)
  • Getters for copy information (#4600)
  • Insertion marker throws unclear error when mutations are badly defined (#4485)
  • Enable stricterMissingRequire in build_tasks (#4457)
  • Fields don't group edits (#4189)
  • Ability to force a line break when inputs are inline (#3804)
  • Highlighted/disabled input statements look overlapped in zelos (#3802)
  • Make a single field uneditable without making the whole block uneditable (#2763)
  • Minimap demo is broken (#2729)
  • Make travis test errors easier to read (#2595)
  • I reference a function without return value (#2033)
  • Hidden statement inputs seem broken (#1967)
  • Code Demo on iOS: Double execution upon tapping run (#1949)
  • Reconsider ordinals in translation (#1657)
  • Typeahead Support for Blockly (#1583)
  • Finalize API for developer variables (#1535)
  • Decide how validators work on variable fields (#1529)
  • Icons aren't visible when the window size is less than 688px. (#1479)
  • Workspace comments (#1476)
  • Permissions framework (#1415)
  • Comment is not works in latest Chrome (#1382)
  • Make horizontal spacing between fields/inputs more consistent (#1347)
  • Allow newlines in field labels (multi-line fields) (#1159)
  • Two ways to create vars mean user can create the same var with different casing (#1115)
  • RFE: Delete variables without creating a new variable field block (#1105)
  • Consider moving all interactions with the block drag surface into the BlockDragger class (#1090)
  • Minimap demo (#924)

Pull Requests:

  • fix: JSDoc generation for modules without classes (#5519)
  • Keyboard nav names (#5517)
  • chore: update dev tools dev dependency (#5516)
  • Merge develop into goog_module (#5514)
  • Remove legacy keyboard nav (#5513)
  • chore: named exports for block* files (#5512)
  • chore: Remove declareLegacyNamespace from block-related files (#5511)
  • fix: enable missingRequire in build_tasks (#5510)
  • chore: remove deprecated functions (#5509)
  • refactor: Remove remaining references to Blockly.* from goog.modules (#5505)
  • Fix goog module jsdoc (#5504)
  • Project cereal goog 2 (#5502)
  • fix: Prevent request of (non-existent) closure/goog/deps.js (#5499)
  • chore: disables caching when running the playground (#5498)
  • chore: remove support for node 10 (#5496)
  • Migrate core/blockly.js to goog.module syntax (#5494)
  • Bump mocha from 8.4.0 to 9.1.1 (#5493)
  • Bump http-server from 0.12.3 to 13.0.2 (#5492)
  • Bump @blockly/dev-tools from 2.6.0 to 2.6.1 (#5490)
  • Migrate selected from Blockly to Blockly.common (#5489)
  • Clean up get/set accessor definitions (#5488)
  • feat: add JSON serialization - goog version (#5487)
  • refactor: Move Blockly.svgResize to Blockly.common (#5485)
  • refactor: move Blockly.deleteBlock out of blockly.js (#5483)
  • refactor: remove unused Blockly.onContextMenu_ (#5480)
  • Make several exported private fields/methods TEST_ONLY (#5479)
  • Bump @blockly/theme-modern from 2.1.22 to 2.1.24 (#5478)
  • refactor: Migrate Blockly.onKeyDown out of blockly.js (#5476)
  • Note Blockly.alert/confirm/prompt/hueToHex/hideChaff migrations in renamings.js (#5475)
  • Remove unused require of Blockly in Blockly.ToolboxCategory (#5474)
  • fix: adds a fix for npm install failing (#5471)
  • Reinstall to update package-lock.json (#5469)
  • test: Changes mocha tests to use node_modules instead of unpkg (#5467)
  • Re-export Blockly.utils.* submodules from Blockly.utils (#5465)
  • Move browser event utils from utils.js to browser_events.js (#5464)
  • Migrate Blockly.hueToHex to Blockly.utils.colour.hueToHex (#5462)
  • Don't monkey-patch Blocky.utils.xml.document in node module (#5461)
  • Migrate hideChaff() from Blockly to WorkspaceSvg (#5460)
  • Migrate core/utils/xml.js to goog.module syntax (#5459)
  • feat: add JSON serialization - goog version (#5458)
  • Move alert/confirm/prompt to a new file, dialog.js (#5457)
  • Migrate core/inject.js to goog_module syntax (#5456)
  • chore: sets polyfill flag to true (#5454)
  • Move bump objects function into a separate module (#5453)
  • Revert inadvertently reverted change to test/deps.js (#5452)
  • Migrate core/global.js to named exports (#5451)
  • Migrate core/touch_gesture.js to goog.module syntax (#5449)
  • Migrate core/msg.js to goog.module syntax (#5448)
  • Bump @blockly/dev-tools from 2.5.4 to 2.6.0 (#5447)
  • Migrate core/utils.js to goog.module syntax (#5446)
  • fix: update code demo to include JSON (#5444)
  • Note behavior of centerOnBlock when block is part of a stack in the JSDoc (#5442)
  • Rename Blockly.utils.IdGenerator to idGenerator and move Blockly.utils.genUid to there (#5441)
  • Migrate tests goog module (#5440)
  • Migrate core/utils/useragent.js to goog.module syntax (#5435)
  • fix: dragging variables from flyout (#5434)
  • fix: loading blocks in RTL (#5433)
  • maxInstance fix (#5430)
  • fix: add missing requires for Blockly.util.object and Blockly.util.Size (#5427)
  • Create scripts/migration/renamings.js to collect information about renamed API entries (#5426)
  • fix: create and delete events, and the trashcan (#5425)
  • fix: serializing edited shadows (#5424)
  • fix: copy paste with json system (#5423)
  • fix: dragging blocks from the flyout that only have XML hooks (#5422)
  • fix: cereal backwards compatibility (#5421)
  • Use Blockly.utils.arrayRemove (#5420)
  • Allow command key zoom on mac devices (#5419)
  • Bump @blockly/dev-tools from 2.5.4 to 2.5.6 (#5417)
  • Bump webdriverio from 7.11.0 to 7.11.1 (#5416)
  • Bump @wdio/selenium-standalone-service from 6.12.1 to 7.10.1 (#5413)
  • Bump webdriverio from 7.6.0 to 7.11.0 (#5412)
  • fix: copy paste w/ JSO hooks (#5410)
  • fix: not being able to specifying variable names in toolbox (#5408)
  • fix: redo disconnect from shadow bug (#5405)
  • Bump webdriverio from 7.6.0 to 7.10.0 (#5403)
  • Renamed Blockly.connectionTypes to Blockly.ConnectionType for consistency (#5402)
  • Renamed Blockly.connectionTypes to Blockly.ConnectionType for consistency. (#5401)
  • fix: project cereal cleanup (#5398)
  • Migrate core/utils/useragent.js to goog.module syntax (#5396)
  • Migrate core/utils/svg.js to goog.module syntax (#5395)
  • Migrate core/utils/global.js to goog.module syntax (#5394)
  • Migrate core/touch.js to goog.module syntax (#5393)
  • feat: add support for defining toolboxes using pure json (#5392)
  • Migrate core/theme/zelos.js to goog.module syntax (#5391)
  • Migrate core/theme/classic.js to goog.module syntax (#5390)
  • Migrate core/renderers/zelos/measurables/row_el...
Read more