Hello Block Builders!
We'll be releasing Blockly v11.0.0 very soon!
If you'd like to help test this new release, you can do so by pulling
develop, testing on the hosted
playground, or by using our most recent beta version on
npm. If you use Blockly with plugins, we do not have beta versions of plugins available. However, you can download the blockly-samples repository, checkout the
rc/v11.0.0 branch, and npm link plugins you use into your app.
If you use Blockly with a build tool, especially one other than Closure Compiler or Webpack, we are particularly interested in your feedback! Some packaging changes may have impacted how your build tool ingests our package.
This is a major release, so there are some breaking changes you should be aware of. These include:
- If you install Blockly through npm, we now provide an `exports` clause to explicitly declare what you can import from our package.
- Your build tooling may now throw an error if you deep import from our package such as `import 'blockly/core/some/file/name.js'`,
which has never been supported by Blockly but may have been made possible by your build tools.
- We now provide Blockly as an esmodule if you use Blockly through `import` statements in JS.
- `import Blockly from 'blockly/core'`
has never been supported by Blockly, but your build tool may have "helpfully" made this work previously. Due to this change, your build tooling may no longer behave that way.
- You should `import * as Blockly from 'blockly/core'` instead.
- Note that `<script type="module">` in HTML files is not yet a supported method to load Blockly.
- Calling statementToCode or valueToCode on inputs that don't exist will now throw an error instead of returning an empty string.
- This will make it easier to spot errors due to incorrect input names in block-code generator functions, but may expose previously silent issues with existing code.
This release also comes with many new features and bug fixes! A full list will be provided at the time of the release, but here's a preview:
- Custom workspace comment behavior and appearance
- Custom draggable behavior
- More consistent undo/redo behavior for disabled blocks
- Keyboard navigation of flyout buttons
- More accurate Generator typings
If you find any problems with this beta, you can send feedback to us through the forum or by creating an
issue on GitHub.
Here's a full list of the breaking changes in this release you should be aware of. You can find more information about each one in the PR description.
Best,
Maribeth