blockly @ blockly-v10.0.0
integrity
- size
- 2.4 MiB
- downloaded
- last checked
- detected
- raw version: universal archives only
release notes
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 https://github.com/google/blockly/pull/7060
- refactor!: remove deprecated functionality for v10 by @rachel-fenichel in https://github.com/google/blockly/pull/7077
- refactor!: delete debug renderer by @rachel-fenichel in https://github.com/google/blockly/pull/7078
- fix!: re-remove block and workspace drag surfaces by @BeksOmega in https://github.com/google/blockly/pull/7070
- feat!: bubble ownership by @BeksOmega in https://github.com/google/blockly/pull/7071
- fix!: move destroy earlier in the lifecycle by @BeksOmega in https://github.com/google/blockly/pull/7117
- fix!: refactor warning icon by @BeksOmega in https://github.com/google/blockly/pull/7112
- fix!: refactor comment icon by @BeksOmega in https://github.com/google/blockly/pull/7128
- fix!: refactor mutator icon by @BeksOmega in https://github.com/google/blockly/pull/7115
- refactor(generators)!:
CodeGeneratorper-block-type generator function dictionary by @cpcallen in https://github.com/google/blockly/pull/7150 - refactor(generators)!: Pass
thisCodeGeneratorto individual generator functions by @cpcallen in https://github.com/google/blockly/pull/7168 - refactor(build)!: Provide all generator exports when loaded as script by @cpcallen in https://github.com/google/blockly/pull/7169
Deprecations 🧹 - APIs that may be removed in future releases
- refactor(generators): Introduce
JavascriptGeneratorclass,Orderenum by @cpcallen in https://github.com/google/blockly/pull/7153 - fix: remove old icon handling code by @BeksOmega in https://github.com/google/blockly/pull/7141
- refactor(generators): Introduce
DartGeneratorclass,Orderenum by @cpcallen in https://github.com/google/blockly/pull/7160 - refactor(generators): Introduce
PythonGeneratorclass,Orderenum by @cpcallen in https://github.com/google/blockly/pull/7163 - refactor(generators): Introduce
PhpGeneratorclass,Orderenum by @cpcallen in https://github.com/google/blockly/pull/7162 - refactor(generators): Introduce
LuaGeneratorclass,Orderenum by @cpcallen in https://github.com/google/blockly/pull/7161 - fix: input exports by @BeksOmega in https://github.com/google/blockly/pull/7165
New features ✨
- feat: add after queued renders promises to render management by @BeksOmega in https://github.com/google/blockly/pull/6981
- feat: add support for appending custom inputs by @BeksOmega in https://github.com/google/blockly/pull/6990
- feat: Add 'reason' field to move event by @NeilFraser in https://github.com/google/blockly/pull/6996
- feat: break input types into separate classes by @BeksOmega in https://github.com/google/blockly/pull/7019
- feat: add IIcon interface, and related interfaces by @BeksOmega in https://github.com/google/blockly/pull/7054
- feat: Creating structure and providing simple test for Blockly automated functional test by @ericblackmonGoogle in https://github.com/google/blockly/pull/7076
- feat: add implementations for adding, removing, and getting icons by @BeksOmega in https://github.com/google/blockly/pull/7059
- feat: text bubble by @BeksOmega in https://github.com/google/blockly/pull/7080
- feat: add registering and serializing icons by @BeksOmega in https://github.com/google/blockly/pull/7063
- feat: mini workspace bubble by @BeksOmega in https://github.com/google/blockly/pull/7096
- feat: text input bubble by @BeksOmega in https://github.com/google/blockly/pull/7089
- feat: add types for accessing icons. by @BeksOmega in https://github.com/google/blockly/pull/7132
- feat: use new intermediate block change event for field edits, normal block change event for closing editor. #7105 by @johnnesky in https://github.com/google/blockly/pull/7151
Bug fixes 🐛
- fix: allow splicing into shadow block stacks by @maribethb in https://github.com/google/blockly/pull/6939
- fix: remove forced rerender from mutator by @BeksOmega in https://github.com/google/blockly/pull/6918
- fix: collapsed toolbox categories being expanded by @BeksOmega in https://github.com/google/blockly/pull/6942
- fix: disposing during dragging by @BeksOmega in https://github.com/google/blockly/pull/6954
- fix: Fix offset location of connection ripple by @NeilFraser in https://github.com/google/blockly/pull/6973
- fix: Don't truncate text label fields. by @NeilFraser in https://github.com/google/blockly/pull/6979
- fix: do not hide chaff when resizing by @maribethb in https://github.com/google/blockly/pull/6916
- fix: non-printable characters in XML by @BeksOmega in https://github.com/google/blockly/pull/6952
- fix: block_svg disable/enable ops lead to unsync state and render by @dimaaan21 in https://github.com/google/blockly/pull/6989
- fix: rtl field alignment by @maribethb in https://github.com/google/blockly/pull/6991
- fix: insertion markers firing move events by @BeksOmega in https://github.com/google/blockly/pull/7005
- fix: update applyColour documentation by @maribethb in https://github.com/google/blockly/pull/6998
- fix: icons not having their locations updated by @BeksOmega in https://github.com/google/blockly/pull/7012
- fix: Update category.ts to produce valid "aria-level" attributes by @MarkusBordihn in https://github.com/google/blockly/pull/7033
- fix: switch most remaining render calls to queueRender by @BeksOmega in https://github.com/google/blockly/pull/7024
- fix: filter undone event groups before moving them to the redo stack by @ewpatton in https://github.com/google/blockly/pull/7069
- fix: Make props of ConnectionState optional by @m93a in https://github.com/google/blockly/pull/7093
- fix: bubbles not being dragged by @BeksOmega in https://github.com/google/blockly/pull/7088
- fix: work on calling icon hooks by @BeksOmega in https://github.com/google/blockly/pull/7100
- fix: gestures handling icons by @BeksOmega in https://github.com/google/blockly/pull/7101
- fix: collapsing blocks with children with icons by @BeksOmega in https://github.com/google/blockly/pull/7111
- fix: updating icon locations by @BeksOmega in https://github.com/google/blockly/pull/7110
- fix: return annotations by @BeksOmega in https://github.com/google/blockly/pull/7118
- fix: have inputs construct connections by @BeksOmega in https://github.com/google/blockly/pull/7116
- fix(build): Fix path issue on Windows by @cpcallen in https://github.com/google/blockly/pull/7127
- fix: Allow for unattached elements during inject call by @ewpatton in https://github.com/google/blockly/pull/7149
- fix: remove input type from number field by @maribethb in https://github.com/google/blockly/pull/7025
- fix: update disabled status after rendering by @maribethb in https://github.com/google/blockly/pull/7172
- fix: icon exports by @BeksOmega in https://github.com/google/blockly/pull/7159
- fix(tests): Fix compressed mode loading by @cpcallen in https://github.com/google/blockly/pull/7178
- fix(build): Fix GitHub pages & deployment task by @cpcallen in https://github.com/google/blockly/pull/7186
- fix: bubble exports by @BeksOmega in https://github.com/google/blockly/pull/7189
- fix(blocks): Mark previously-
@privatemethods@internalby @cpcallen in https://github.com/google/blockly/pull/7194 - fix(build): Correct typos in PR #7169 by @cpcallen in https://github.com/google/blockly/pull/7197
- fix: properly pass the block to the icon constructor in blockfactory blocks by @BeksOmega in https://github.com/google/blockly/pull/7202
- fix: Utilize getIcon instead of getCommentIcon in tests by @jibranabsarulislam in https://github.com/google/blockly/pull/7200
- fix: export the IIcon and related interfaces by @BeksOmega in https://github.com/google/blockly/pull/7203
- fix(demos): Update BlockFactory generator stub generator by @cpcallen in https://github.com/google/blockly/pull/7211
- fix(demos): Update code demo to use new script import names for generators by @cpcallen in https://github.com/google/blockly/pull/7213
Cleanup ♻️
- refactor: Remove some more uses of AnyDuringMigration. by @gonfunko in https://github.com/google/blockly/pull/6970
- refactor(blocks): Migrate
blocks/lists.jsto TypeScript by @cpcallen in https://github.com/google/blockly/pull/6902 - refactor(blocks): Migrate
blocks/loops.jsto TypeScript by @rachel-fenichel in https://github.com/google/blockly/pull/6957 - refactor(blocks): Migrate
blocks/variables.jsandblocks/variables_dynamic.jsto TypeScript by @rachel-fenichel in https://github.com/google/blockly/pull/7001 - refactor(blocks): Migrate
blocks/text.jsto TypeScript by @rachel-fenichel in https://github.com/google/blockly/pull/6958 - refactor(tests): Update
bootstrap.jsto better support generator chunks by @cpcallen in https://github.com/google/blockly/pull/7171 - refactor(blocks): Migrate
blocks/logic.jsto TypeScript by @cpcallen in https://github.com/google/blockly/pull/7003 - refactor(generators): Restructure generator modules to contain side effects by @cpcallen in https://github.com/google/blockly/pull/7173
- refactor(blocks): Migrate
blocks/procedures.jsto TypeScript by @cpcallen in https://github.com/google/blockly/pull/7192 - refactor(blocks): Migrate
blocks/blocks.jsto TypeScript by @cpcallen in https://github.com/google/blockly/pull/7193 - refactor(tests): Migrate mocha tests from
goog.requiretoimportby @cpcallen in https://github.com/google/blockly/pull/7196
Other changes
- test: icon block hooks by @BeksOmega in https://github.com/google/blockly/pull/7053
- Revert "chore!: remove angle field from core" by @BeksOmega in https://github.com/google/blockly/pull/7158
- Fix: Update browser test to run manually, and move browser test suiteSetup in to a separate function by @ericblackmonGoogle in https://github.com/google/blockly/pull/7138
- release: v10.0.0 by @ericblackmonGoogle in https://github.com/google/blockly/pull/7222
New Contributors
- @dimaaan21 made their first contribution in https://github.com/google/blockly/pull/6989
- @ericblackmonGoogle made their first contribution in https://github.com/google/blockly/pull/7076
- @m93a made their first contribution in https://github.com/google/blockly/pull/7093
- @johnnesky made their first contribution in https://github.com/google/blockly/pull/7151
- @jibranabsarulislam made their first contribution in https://github.com/google/blockly/pull/7200
Full Changelog: https://github.com/google/blockly/compare/blockly-v9.3.3...blockly-v10.0.0
download
unix · zip
curl -fL -o blockly-v10.0.0.zip https://ratatoskr.space/pkg/blockly/blockly-v10.0.0.zip
printf '%s %s\n' '94d60809a31c348d530ea5a4e856c41b9b85249bdc79da6e059e73b4a2a412ba' 'blockly-v10.0.0.zip' | sha256sum -c -
windows · zip
$url = "https://ratatoskr.space/pkg/blockly/blockly-v10.0.0.zip"
$out = "blockly-v10.0.0.zip"
Invoke-WebRequest -Uri $url -OutFile $out
if ((Get-FileHash $out -Algorithm SHA256).Hash.ToLowerInvariant() -ne "94d60809a31c348d530ea5a4e856c41b9b85249bdc79da6e059e73b4a2a412ba") { throw "sha256 mismatch" }
unix · tar.gz
curl -fL -o blockly-v10.0.0.tar.gz https://ratatoskr.space/pkg/blockly/blockly-v10.0.0.tar.gz
printf '%s %s\n' 'beefd5b4f49f02869054a6c79417cb6016a9f239465f4b6a596be525a34241f6' 'blockly-v10.0.0.tar.gz' | sha256sum -c -
windows · tar.gz
$url = "https://ratatoskr.space/pkg/blockly/blockly-v10.0.0.tar.gz"
$out = "blockly-v10.0.0.tar.gz"
Invoke-WebRequest -Uri $url -OutFile $out
if ((Get-FileHash $out -Algorithm SHA256).Hash.ToLowerInvariant() -ne "beefd5b4f49f02869054a6c79417cb6016a9f239465f4b6a596be525a34241f6") { throw "sha256 mismatch" }
download via yggdrasil mesh
unix · zip
curl -fL -o blockly-v10.0.0.zip http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/blockly/blockly-v10.0.0.zip
printf '%s %s\n' '94d60809a31c348d530ea5a4e856c41b9b85249bdc79da6e059e73b4a2a412ba' 'blockly-v10.0.0.zip' | sha256sum -c -
windows · zip
$url = "http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/blockly/blockly-v10.0.0.zip"
$out = "blockly-v10.0.0.zip"
Invoke-WebRequest -Uri $url -OutFile $out
if ((Get-FileHash $out -Algorithm SHA256).Hash.ToLowerInvariant() -ne "94d60809a31c348d530ea5a4e856c41b9b85249bdc79da6e059e73b4a2a412ba") { throw "sha256 mismatch" }
unix · tar.gz
curl -fL -o blockly-v10.0.0.tar.gz http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/blockly/blockly-v10.0.0.tar.gz
printf '%s %s\n' 'beefd5b4f49f02869054a6c79417cb6016a9f239465f4b6a596be525a34241f6' 'blockly-v10.0.0.tar.gz' | sha256sum -c -
windows · tar.gz
$url = "http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/blockly/blockly-v10.0.0.tar.gz"
$out = "blockly-v10.0.0.tar.gz"
Invoke-WebRequest -Uri $url -OutFile $out
if ((Get-FileHash $out -Algorithm SHA256).Hash.ToLowerInvariant() -ne "beefd5b4f49f02869054a6c79417cb6016a9f239465f4b6a596be525a34241f6") { throw "sha256 mismatch" }
| artifact | format | size | hashes |
|---|---|---|---|
| blockly-v10.0.0.zip | zip | 2.4 MiB |
blake3-24 adeba22354ff77f8c95abfedbb41106dd986f1ecd3259b6f
sha256 94d60809a31c348d530ea5a4e856c41b9b85249bdc79da6e059e73b4a2a412ba
sha1 497e1b0149ab55eda6916f653416eb75bc2dbcd5
|
| blockly-v10.0.0.tar.gz | tar.gz | 1.8 MiB |
blake3-24 c7a3c40def66c71f37b5e90c2b1b200d4c31eb48c9d198b7
sha256 beefd5b4f49f02869054a6c79417cb6016a9f239465f4b6a596be525a34241f6
sha1 3bfc4342abeff376fdd1c88f85c5863ec13211ce
|
install
bazel
http_archive(
name = "blockly",
urls = ["https://ratatoskr.space/pkg/blockly/blockly-v10.0.0.tar.gz"],
integrity = "sha256-vu/VtPSfAoaQVKbHlBfLYBap8jlGX0tqWWvlJaNCQfY=",
strip_prefix = "blockly-blockly-v10.0.0",
)
zig
.url = "https://ratatoskr.space/pkg/blockly/blockly-v10.0.0.tar.gz",
install via yggdrasil mesh
bazel
http_archive(
name = "blockly",
urls = ["http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/blockly/blockly-v10.0.0.tar.gz"],
integrity = "sha256-vu/VtPSfAoaQVKbHlBfLYBap8jlGX0tqWWvlJaNCQfY=",
strip_prefix = "blockly-blockly-v10.0.0",
)
zig
.url = "http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/blockly/blockly-v10.0.0.tar.gz",