eclipsesource/tabris-js

Cannot use Chrome DevTools to debug a Tabris.js app

Closed this issue · 3 comments

Problem description

When using latest Chrome (83.0.4103.61) and Tabris.js (3.5.0) and trying to connect the debugger to a running Tabris.js app as described in the documentation:

To connect the Chrome DevTools to a Tabris.js app on the default port 9090, the following URL should be entered:

devtools://devtools/bundled/inspector.html?experiments=true&v8only=true&ws=<device-ip>:9090
(https://docs.tabris.com/latest/debug.html)

Exchange with the IP of your Android device.

... Chrome shows an empty page instead of the inspector UI. Following error is output to the console:

Uncaught (in promise) TypeError: Cannot assign to read only property 'length' of object '#<Storage>'
    at SettingsStorage.setPreference [as _setCallback] (host.js:106)
    at SettingsStorage.set (common.js:330)
    at VersionController._migrateSettingsFromLocalStorage (common.js:429)
    at VersionController._updateVersionFrom11To12 (common.js:396)
    at VersionController.updateVersion (common.js:366)
    at MainImpl._createSettings (main.js:37)
    at MainImpl._gotPreferences (main.js:34)
    at InspectorFrontendHostStub.getPreferences (host.js:105)
    at MainImpl._loaded (main.js:32)

Environment

  • Tabris.js version: 3.5.0
  • Device: ASUS X01BDA
  • OS: Android 9
mpost commented

Thanks for bringing it up. It works as expected in VSC and WebStorm. The chrome devtools have been tested as well. We will look into it.

Workaround: in chrome developer console goto Application, right click on local storage and clear.
Side effect: you loose your settings of cdt like breakpoints, etc.

The workaround is valid 👍