Releases: google/blockly
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
blockly-v10.1.1
What's Changed
Other changes
- Revert "fix: removed X & Y from toolbox.ts and replaced movBy to moveTo" by @BeksOmega in #7375
Full Changelog: blockly-v10.1.0...blockly-v10.1.1
blockly-v10.1.0
What's Changed
Deprecations 🧹 - APIs that may be removed in future releases
New features ✨
- feat: Allow dragging from simple toolbox by @NeilFraser in #7301
- feat: add the ability to toggle scrollbar visibility by @BeksOmega in #7314
- feat: have the trashcan hide scrollbars when the flyout opens by @BeksOmega in #7357
- feat: make field
initView
andinitModel
more accessible by @maribethb in #7345 - feat: Insertion marker json deserialization 7316 by @varshneydevansh in #7364
Bug fixes 🐛
- fix: set flyout visbility on calling setExpanded by @jibranabsarulislam in #7199
- fix(tests): Make test
import
s correct and more consistent by @cpcallen in #7260 - fix: disposing workspace comments. by @johnnesky in #7264
- fix: add compose and decompose errors to mutator icon by @BeksOmega in #7289
- fix(generators): Changes to exports and access controls for TypeScript compatibility by @cpcallen in #7295
- fix: Correct errors in
HSV_SATURATION
,HSV_VALUE
accessors by @cpcallen in #7297 - fix: have icons use the new render management system by @BeksOmega in #7296
- fix: make deserialization use the new render management system by @BeksOmega in #7306
- fix: make insertion markers use new render management system by @BeksOmega in #7307
- fix: remove old
render
method by @BeksOmega in #7308 - fix(blocks): boolean variable block wrong shape for zelos by @zfangqijun in #7335
- fix(build): support running Blocky locally on Windows machines by @abdul-alhasany in #7281
- fix: removed X & Y from toolbox.ts and replaced movBy to moveTo by @varshneydevansh in #7333
- fix: deprecate render functions by @BeksOmega in #7359
- fix: connect animation persisting by @BeksOmega in #7365
New Contributors
- @zfangqijun made their first contribution in #7335
- @abdul-alhasany made their first contribution in #7281
- @varshneydevansh made their first contribution in #7333
Full Changelog: blockly-v10.0.1...blockly-v10.1.0
blockly-v10.0.2
What's Changed
Bug fixes 🐛
- fix(generators): Changes to exports and access controls for TypeScript compatibility by @cpcallen in #7295
- fix: Correct errors in
HSV_SATURATION
,HSV_VALUE
accessors by @cpcallen in #7297
Full Changelog: blockly-v10.0.1...blockly-v10.0.2
blockly-v10.0.1
What's Changed
Deprecations 🧹 - APIs that may be removed in future releases
Full Changelog: blockly-v10.0.0...blockly-v10.0.1
blockly-v10.0.0
Blockly v10 is here! This quarter we’ve edged closer to 100% TypeScript in the core repo: blocks have been converted and generators are not far behind. We’ve also improved performance in multiple scenarios and added APIs to customize Blockly in new ways.
Here are the highlights for this release:
- Added ability to use custom Icons. This included some refactoring and breaking changes to the old APIs; read more in the PRs below.
- Removed the drag surfaces! This greatly improves performance in Chrome. No action needed unless you were doing something special with the drag surfaces (which is rare)
- Removed the debug renderer, which was previously deprecated and moved to the dev-tools plugin
- Changes to generators. Most of the changes were backwards compatible, but if you use Blockly through script tags, be aware that we've added new global variables under the names
javascript
,python
, etc. which may conflict with global variables already in your app. Read more in the linked PRs below. - Added support for custom inputs
- Improved rendering performance and added hooks for managing the render lifecycle
- Improved types for those using TypeScript
What's Changed
Breaking changes 🛠
- feat!: add abstract icon class by @BeksOmega in #7060
- refactor!: remove deprecated functionality for v10 by @rachel-fenichel in #7077
- refactor!: delete debug renderer by @rachel-fenichel in #7078
- fix!: re-remove block and workspace drag surfaces by @BeksOmega in #7070
- feat!: bubble ownership by @BeksOmega in #7071
- fix!: move destroy earlier in the lifecycle by @BeksOmega in #7117
- fix!: refactor warning icon by @BeksOmega in #7112
- fix!: refactor comment icon by @BeksOmega in #7128
- fix!: refactor mutator icon by @BeksOmega in #7115
- refactor(generators)!:
CodeGenerator
per-block-type generator function dictionary by @cpcallen in #7150 - refactor(generators)!: Pass
this
CodeGenerator
to individual generator functions by @cpcallen in #7168 - refactor(build)!: Provide all generator exports when loaded as script by @cpcallen in #7169
Deprecations 🧹 - APIs that may be removed in future releases
- refactor(generators): Introduce
JavascriptGenerator
class,Order
enum by @cpcallen in #7153 - fix: remove old icon handling code by @BeksOmega in #7141
- refactor(generators): Introduce
DartGenerator
class,Order
enum by @cpcallen in #7160 - refactor(generators): Introduce
PythonGenerator
class,Order
enum by @cpcallen in #7163 - refactor(generators): Introduce
PhpGenerator
class,Order
enum by @cpcallen in #7162 - refactor(generators): Introduce
LuaGenerator
class,Order
enum by @cpcallen in #7161 - fix: input exports by @BeksOmega in #7165
New features ✨
- feat: add after queued renders promises to render management by @BeksOmega in #6981
- feat: add support for appending custom inputs by @BeksOmega in #6990
- feat: Add 'reason' field to move event by @NeilFraser in #6996
- feat: break input types into separate classes by @BeksOmega in #7019
- feat: add IIcon interface, and related interfaces by @BeksOmega in #7054
- feat: Creating structure and providing simple test for Blockly automated functional test by @ericblackmonGoogle in #7076
- feat: add implementations for adding, removing, and getting icons by @BeksOmega in #7059
- feat: text bubble by @BeksOmega in #7080
- feat: add registering and serializing icons by @BeksOmega in #7063
- feat: mini workspace bubble by @BeksOmega in #7096
- feat: text input bubble by @BeksOmega in #7089
- feat: add types for accessing icons. by @BeksOmega in #7132
- feat: use new intermediate block change event for field edits, normal block change event for closing editor. #7105 by @johnnesky in #7151
Bug fixes 🐛
- fix: allow splicing into shadow block stacks by @maribethb in #6939
- fix: remove forced rerender from mutator by @BeksOmega in #6918
- fix: collapsed toolbox categories being expanded by @BeksOmega in #6942
- fix: disposing during dragging by @BeksOmega in #6954
- fix: Fix offset location of connection ripple by @NeilFraser in #6973
- fix: Don't truncate text label fields. by @NeilFraser in #6979
- fix: do not hide chaff when resizing by @maribethb in #6916
- fix: non-printable characters in XML by @BeksOmega in #6952
- fix: block_svg disable/enable ops lead to unsync state and render by @dimaaan21 in #6989
- fix: rtl field alignment by @maribethb in #6991
- fix: insertion markers firing move events by @BeksOmega in #7005
- fix: update applyColour documentation by @maribethb in #6998
- fix: icons not having their locations updated by @BeksOmega in #7012
- fix: Update category.ts to produce valid "aria-level" attributes by @MarkusBordihn in #7033
- fix: switch most remaining render calls to queueRender by @BeksOmega in #7024
- fix: filter undone event groups before moving them to the redo stack by @ewpatton in #7069
- fix: Make props of ConnectionState optional by @m93a in #7093
- fix: bubbles not being dragged by @BeksOmega in #7088
- fix: work on calling icon hooks by @BeksOmega in #7100
- fix: gestures handling icons by @BeksOmega in #7101
- fix: collapsing blocks with children with icons by @BeksOmega in #7111
- fix: updating icon locations by @BeksOmega in #7110
- fix: return annotations by @BeksOmega in #7118
- fix: have inputs construct connections by @BeksOmega in #7116
- fix(build): Fix path issue on Windows by @cpcallen in #7127
- fix: Allow for unattached elements during inject call by @ewpatton in #7149
- fix: remove input type from number field by @maribethb in #7025
- fix: update disabled status after rendering by @maribethb in #7172
- fix: icon exports by @BeksOmega in #7159
- fix(tests): Fix compressed mode loading by @cpcallen in #7178
- fix(build): Fix GitHub pages & deployment task by @cpcallen in #7186
- fix: bubble exports by @BeksOmega in #7189
- fix(blocks): Mark previously-
@private
methods@internal
by @cpcallen in #7194 - fix(build): Correct typos in PR #7169 by @cpcallen in #7197
- fix: properly pass the block to the icon constructor in blockfactory blocks by @BeksOmega in #7202
- fix: Utilize getIcon instead of getCommentIcon in tests by @jibranabsarulislam in #7200
- fix: export the IIcon and related interfaces by @BeksOmega in #7203
- fix(demos): Update BlockFactory generator stub generator by @cpcallen in #7211
- fix(demos): Update code demo to use new script import names for generators by @cpcallen in #7213
Cleanup ♻️
- refactor: Remove some more uses of AnyDuringMigration. by @gonfunko in #6970
- refactor(blocks): Migrate
blocks/lists.js
to TypeScript by @cpcallen in #6902 - refactor(blocks): Migrate
blocks/loops.js
to TypeScript by @rachel-fenichel in #6957 - refactor(blocks): Migrate
blocks/variables.js
andblocks/variables_dynamic.js
to TypeScript by @rachel-fenichel in #7001 - refactor(blocks): Migrate
blocks/text.js
to TypeScript by @rachel-fenichel in #6958 - refactor(test...