Skip to content

Conversation

@mikeharv
Copy link
Contributor

@mikeharv mikeharv commented Jan 6, 2026

Now that we have completely unforked and removed support for CDO Blockly #70175, referring to the single remaining support version as "Google Blockly" has become redundant. Furthermore, Blockly now lives at Raspberry Pi Foundation, not Google, as of November.

This PR aims to clarify and simplify things in that regard, although there will still be more work to do.
Despite the large number of files changed, this is mostly straight forward:

  • Many references to "Google Blockly" will now just refer to "Blockly"
  • The "Google Blockly Wrapper" will now be the "Blockly Wrapper"
  • Some references to CDO Blockly compatible sources (e.g. old XML that still needs to be supported) will be relabeled as "legacy"
  • Imported blockly/core instances will change from GoogleBlockly to BlocklyCore. (Note that Blockly still refers to the wrapper instance in most places, so that name is not readily available.
  • Utils at customBlocks/googleBlockly/ will be moved up a level to customBlocks/. (The sibling customBlocks/cdoBlockly directory of utils has already been deleted.)
  • The wrapper's .version property (value 'Google') has been removed. Small changes were also made in a couple of places that made decisions based on that value. These are tagged in line.

Follow-up work

Privacy

Security

Caching

PR Creation Checklist:

  • Tests provide adequate coverage
  • Privacy impacts have been documented
  • Security impacts have been documented
  • Code is well-commented
  • New features are translatable or updates will not break translations
  • Relevant documentation has been added or updated
  • User impact is well-understood and desirable
  • Follow-up work items (including potential tech debt) are tracked and linked

@mikeharv mikeharv changed the title Mike/rename google blockly [Blockly] Remove references to Google Jan 7, 2026
}
textBlocks = Blockly.Xml.domToText(xml);
}
textBlocks = Blockly.cdoUtils.getCode(Blockly.mainBlockSpace);
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This can be greatly simplified now that we do not need the entire else clause. This logic was necessary with the fork because invisible procedure blocks were present on the main workspace, which could potentially pollute the saved toolbox blocks. Now that these blocks are on the hidden workspace, we can simplify get the XML code for the main workspace.

* object without affecting apps code.
* This wrapper will contain all of our customizations to Google Blockly.
* See also ./cdoBlocklyWrapper.js
* Wrapper class for https://github.com/RaspberryPiFoundation/blockly
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There are lots of links to github.com/google/blockly in our repo, all of which redirect correctly to /RaspberryPiFoundation/. I only updated a few here that are for live documentation. Most of these links are permalinks to specific code for reference so I did not update them.

afterEach(() => {
// Reset Blockly for other tests.
Blockly = cdoBlockly; // eslint-disable-line no-global-assign
Blockly = globalBlockly; // eslint-disable-line no-global-assign
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This may not actually be needed, but I didn't confirm yet. The reset was necessary when tests would alternate between levels that used different versions of Blockly. I found lots of little things like this that can potentially be further cleaned up, but I didn't want to expand the scope of this PR too greatly.

simulateDrag: function() {
if (
window.Blockly &&
Blockly.version === "Google" &&
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This change was important to make sure we can continue to use pointer events for simulated block drags in UI tests.

@mikeharv mikeharv marked this pull request as ready for review January 7, 2026 14:15
@mikeharv mikeharv requested a review from a team January 7, 2026 16:04
Copy link
Contributor

@hannahbergam hannahbergam left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I did a skim, but trust that our build would help catch any naming issues! This is so exciting!

@mikeharv mikeharv merged commit 4c0c278 into staging Jan 7, 2026
6 checks passed
@mikeharv mikeharv deleted the mike/rename-google-blockly branch January 7, 2026 17:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants