Releases: google/blockly
blockly-v10.4.1
What's Changed
Bug Fixes
- fix: connection previewer disposing too early by @BeksOmega in #7859
Other changes
- release: v10.4.1 by @maribethb in #7860
Full Changelog: blockly-v10.4.0...blockly-v10.4.1
blockly-v10.4.0
Blockly v10.4.0
- This release contains mostly bug fixes and improvements!
- New feature: custom connection previewers allow you to change how pending connections are visualized to users. Check out the documentation to learn more.
- Note if you use TypeScript: we now export the
JavascriptGenerator
(and similiar for other languages) class in TypeScript, complete with its accurate typings. We were not previously exporting this class in our TS definition files, so it wasn't accessible from TS code at all. Do note that we are still exporting the instance of those classes (javascriptGenerator
and friends) typed asany
so as not to introduce breaking type changes. You'll get accurate typings for the instances as well coming in v11!
What's Changed
New features ✨
- feat: add muted option by @truongductri01 in #7714
- feat: add connection previewers by @BeksOmega in #7825
- feat: make grid options togglable by @BeksOmega in #7828
Bug fixes 🐛
- fix: Remove double spaces in translation instructions. by @NeilFraser in #7704
- fix: updated mocha tests to display error messages by @btw17 in #7706
- fix: prevent flyout block highlighting during workspace drag by @neerajkumarc in #7720
- fix: prevent console logging duplicate deprecation warnings by @ebrahim95 in #7733
- fix: triggering flyout show from field render causing infinite loop by @BeksOmega in #7784
- fix: cancelling all renders on triggering queued renders by @BeksOmega in #7787
- fix: first block dragged from flyout will have same id by @maribethb in #7788
- fix: prevent block change event firing if editing is cancelled by using keypress by @ebrahim95 in #7794
- fix: shadow blocks with variable fields are allowed to be deserialized from XML by @ebrahim95 in #7802
- fix: manually add typings for generator classes by @maribethb in #7824
- fix: destroy connection highlight when the connection is disposed by @BeksOmega in #7830
- fix: fix reference docs toc generation by @maribethb in #7832
- fix: insertion marker previewer finding wrong connection for different conn counts by @BeksOmega in #7833
- fix: disposing of connection previewer by @BeksOmega in #7834
New Contributors
- @neerajkumarc made their first contribution in #7720
- @ebrahim95 made their first contribution in #7733
Full Changelog: blockly-v10.3.1...blockly-v10.4.0
blockly-v10.3.1
What's Changed
Bug fixes 🐛
- fix: triggering flyout show from field render causing infinite loop by @BeksOmega in #7784
- fix: cancelling all renders on triggering queued renders by @BeksOmega in #7787
- fix: first block dragged from flyout will have same id by @maribethb in #7788
Full Changelog: blockly-v10.3.0...blockly-v10.3.1
blockly-v11.0.0-beta.1
This is the second in what we expect will be a series of beta releases for the future v11 of Blockly. See information about the Blockly v11 Beta Program.
Highlights in v11.0.0-beta.1
The only new change in -beta.1
is a fix for an issue reported about the new generator type declarations in -beta.0
. Thanks to @clementcontet for spotting and reporting this error!
What's Changed
Bug fixes 🐛
Full Changelog: blockly-v11.0.0-beta.0...blockly-v11.0.0-beta.1
blockly-v11.0.0-beta.0
This is the first in what we expect will be a series of beta releases for the future v11 of Blockly.
Blockly v11 Beta Program
We have a fairly large backlog of breaking changes that we've been holding on to, and we are planning to publish a series of betas ad hoc as those changes are finished and ready for you to test. We want to get these out to you as soon as possible, for two reasons:
- So that you can prepare modifications to your projects as required in response to the breaking changes we're planning to include in v11.
- So that you can give us early feedback about issues you encounter. We're interested in reports of any kind of bug, of course, but we're especially interested in hearing if a breaking change we're planning for v11 turns out to create intractable difficulties in upgrading your project(s).
It is quite likely that work on Blockly v10, including backwards-compatible bug fixes and/or new features, will continue in parallel with work on the less backwards-compatible changes we're planning for v11. We expect that in most cases each v11 beta will be up-to-date with all the latest v10 updates, but we can't make any such guarantees. As such, you should continue using v10 in production, since bugs will get fixed in v10 first, and v11 will probably introduce exciting new bugs—though with your help we hope to fix most of them before v11.0.0 is officially released.
Highlights in v11.0.0-beta.0
The only breaking change in this release is that we're finally publishing accurate TypeScript typings for the generators! 🎉
The generators were migrated to TypeScript in v10.3.0, concluding our work to migrate the core Blockly codebase from JavaScript to TypeScript. The new TypeScript implementation is (intended to be) functionally the same but a change in published typings is likely to break existing projects; to avoid this we opted to continued to publish the same hand-written .d.ts
files for the generator entrypoints (e.g. blockly/javascript
) that we have been using until now.
Previously the dartGenerator
, luaGenerator
, javascriptGenerator
, phpGenerator
, and pythonGenerator
exports (from the blockly/dart
, blockly/lua
, blockly/javascript
, blockly/php
and blockly/python
entrypoints respectively) were being typed any
.
(In hindsight we should probably have declared them as unknown
, obliging TS developers to use explicit casts.) Now their types are correct. There is no change to their runtime behaviour, but developers who have written code in TypeScript that manipulates generators (adding custom block generator functions, for example) may find they need to correct type errors in their code in order for it to compile correctly with Blockly v11.
Notably, block generator functions to be installed in the javascriptGenerator.forBlock
dictionary should be typed
(block: Blockly.Block, generator: javascript.JavascriptGenerator) => [string, javascript.Order] | string | null
—and similarly for each of the other four languages we support.
Note that in most cases the return type for any particular generator function can be either [string, javascriptOrder]
(for expression blocks), string
(for statement blocks), or null
(for blocks that do not directly emit code).
What's Changed
Breaking changes 🛠
Bug fixes 🐛
- fix: Remove double spaces in translation instructions. by @NeilFraser in #7704
- fix: updated mocha tests to display error messages by @btw17 in #7706
- fix: prevent flyout block highlighting during workspace drag by @neerajkumarc in #7720
New Contributors
- @neerajkumarc made their first contribution in #7720
Full Changelog: blockly-v10.3.0...blockly-v11.0.0-beta.0
blockly-v10.3.0
What's Changed
New features ✨
- feat: add tooltip support for icons by @BeksOmega in #7608
- feat: add css classes to icons by @Asymtode712 in #7626
- feat: added intermediate event change by @truongductri01 in #7671
- feat: make fields and icons optionally clickable in flyouts by @maribethb in #7672
Bug fixes 🐛
- fix(build): Fix broken npm install of Closure Compiler by @cpcallen in #7547
- fix(build): Fix sourcemaps, re-update metadata by @cpcallen in #7550
- fix: style attribute for xml in ws factory by @maribethb in #7554
- fix: include loaders in gh-pages commits by @rachel-fenichel in #7559
- fix: missing loaders for appengine deployment by @rachel-fenichel in #7560
- fix: comment change event fires block change event by @treypisano in #7505
- fix: color field sizing being incorrect by @BeksOmega in #7566
- fix: colour from colour picker not being updated by @BeksOmega in #7584
- fix: recreate dropdown div by @potaracom in #7572
- fix: bring block to front when icon clicked by @0scvr in #7590
- fix(generators): Modify type signature of
forBlock
by @cpcallen in #7555 - fix: text join block warning when using block-plus-minus plugin by @HadyBazzi in #7598
- fix: widget positioning by @BeksOmega in #7507
- fix: Can mutate blocks in readOnly workspace by @Apoorvgarg-creator in #7622
- fix: flyout id is different than first placed block by @treypisano in #7618
- fix: prevent crash when clicking on a field to delete a block by @Apoorvgarg-creator in #7621
- fix: Shadow block dropdown gets color of parent category by @Apoorvgarg-creator in #7628
- fix: shadows in insertion markers being displayed as shadows by @BeksOmega in #7609
- fix: make autoclose toggleable for flyouts by @BeksOmega in #7634
- fix: blocks being dragged behind toolbox (re-re-add drag surface) by @BeksOmega in #7619
- fix: update setShadow TSDoc for Block and BlockSvg by @systemc12ashe in #7639
- fix: disabled render status after serialization by @maribethb in #7650
- fix(generators): Improve consistency of migrated language generators by @cpcallen in #7662
- fix: trashcan flyout opening on drag by @BeksOmega in #7691
- fix: mutator coordinates not respecting flyout by @BeksOmega in #7690
- fix: reenable showing empty flyouts by @BeksOmega in #7695
Cleanup ♻️
- refactor(generators): Migrate JavaScript generators to TypeScript by @cpcallen in #7602
- refactor(generators): Migrate Python generators to TypeScript by @cpcallen in #7617
- refactor(generators): Migrate Dart generators to TypeScript by @cpcallen in #7646
- refactor(generators): Migrate Lua generators to TypeScript by @btw17 in #7654
- refactor(generators): Migrate PHP generators to TypeScript by @cpcallen in #7647
Reverted changes ⎌
- revert: "chore: Renable macos-latest build (#7640)" by @maribethb in #7692
- revert: "chore(deps): Bump jsdom from 22.1.0 to 23.0.0" by @BeksOmega in #7694
Other changes
- correcting typo from 'codefor' to 'code for' by @goldenkairos in #7549
- Throw an error for undefined messages in block definitions by @0scvr in #7591
- Release dummy wheel listener on workspace dispose by @ananta in #7693
- release: v10.3.0 by @BeksOmega in #7702
New Contributors
- @SunMoon97 made their first contribution in #7548
- @treypisano made their first contribution in #7505
- @goldenkairos made their first contribution in #7549
- @potaracom made their first contribution in #7572
- @0scvr made their first contribution in #7590
- @HadyBazzi made their first contribution in #7598
- @Asymtode712 made their first contribution in #7626
- @systemc12ashe made their first contribution in #7639
- @alicialics made their first contribution in #7640
- @truongductri01 made their first contribution in #7671
- @ananta made their first contribution in #7693
Full Changelog: blockly-v10.2.2...blockly-v10.3.0
blockly-v10.2.2
What's Changed
Other changes
- fix: colour from colour picker not being updated by @BeksOmega in #7584
- release: v10.2.2 by @BeksOmega in #7585
Full Changelog: blockly-v10.2.1...blockly-v10.2.2
blockly-v10.2.1
What's Changed
- fix: color field sizing being incorrect by @BeksOmega in #7566
Other changes
- release: v10.2.1 by @rachel-fenichel in #7567
Full Changelog: blockly-v10.2.0...blockly-v10.2.1
blockly-v10.1.3
This patch release rolls back a change to the serialization of insertion markers. The change set blocks to be insertion markers after their extra state was loaded, rather than before.
The issue was reported in google/blockly-samples#1856 and this release rolls back the change. We will roll this change forward at our next breaking release.
What's Changed
Other changes
Revert "fix: insertion marker's next blocks become real block (#7384)"
Revert "feat: Insertion marker json deserialization 7316 ( #7364 )" "
Full Changelog: blockly-v10.1.0...blockly-v10.1.3
blockly-v10.1.2
What's Changed
Bug fixes 🐛
- fix: insertion marker's next blocks are real blocks by @HollowMan6 in #7384
New Contributors
- @HollowMan6 made their first contribution in #7384
Full Changelog: blockly-v10.1.1...blockly-v10.1.2