Elements, Safer Input, and Automatic Updates
This release introduces Automation Bridge HTTP API v2 and Python wrapper 3.0, with safer element input and easier future upgrades.
What’s new
- Passing an
Elementtoclick(), or twoElementobjects todrag(), now verifies their runtime identities. If an element ID has been reused, the wrapper raisesengine.StaleElementErrorinstead of sending input to the wrong element. key()now accepts normalized names such asM,SPACE,KEY_ENTER, and{KEY_ESCAPE}. Unsupported names fail before input is queued.type_text()now always treats braces and other characters as literal UTF-8 text.project.update_automation_bridge()can update the project to the latest stable release or an explicitly pinned version. It updatesgame.project, fetches dependencies through Defold, replaces the complete project-root Python wrapper, and rolls back on failure.- A Python migration guide is now included with the wrapper.
Migration from 2.0.x
Extension 2.1.0 and Python wrapper 3.0 must be updated together. Wrapper 3.0 communicates only with HTTP API v2.
| 2.0.x | 2.1.0 |
|---|---|
/automation-bridge/v1 |
/automation-bridge/v2 |
/nodes and /node |
/elements and /element |
Response fields nodes and node |
elements and element |
Capabilities nodes and node |
elements and element |
Element IDs beginning with n: |
Element IDs beginning with e: |
automation_bridge.nodes |
automation_bridge.elements; preferably use engine.Element and engine.Bounds |
The documented high-level Python helpers—including element(), elements(), maybe_element(), element_by_id(), click(), drag(), and type_text()—retain their names.
For the initial upgrade, replace the complete Python wrapper directory instead of merging files, restart Python, and follow automation-bridge-python/MIGRATION.md. Future upgrades can use project.update_automation_bridge().