appium/appium-inspector

browser build doesn't work in Safari

jlipps opened this issue · 3 comments

Some bundled dependency has an invalid regex according to Safari.

Results of my investigation:

  • the dependency which appears to be the problem is normalize-url.
  • normalize-url appears to have received a fix which is published in 7.0.1
  • normalize-url appears in our dep tree in many places, but the most likely dep path for the error to have occurred is: web2driver > webdriver > got > cacheable-request > normalize-url.
  • I tried to submit a PR to cacheable-request with an updated version of normalize-url, but it appears that v7.0.0 of normalize-url was a big breaking change, making the module ESM only. to support it from cacheable-request looks to be a sizable change. I created an issue at the cacheable-request repo to seek further guidance.
  • Even if the cacheable-request step is fixed, it looks like we'd need to trigger updates in got, webdriver, and web2driver. Hoping that would be easier, though I'm not sure how well ESM plays with the build systems for web2driver and the inspector.

As of now, it looks as if there's no path forward to fixing this particular issue.

  • normalize-url 7.0.3 is included in cacheable-request 8.0.1
  • cacheable-request v8 (actually v10) is included in got 12.5.0
  • got 12.5.0 (actually 12.6.1) is included in webdriver 8.10.6

Seems like all that's left is to bump web2driver to this webdriver version or newer. It needs to be webdriver v8, because webdriver v7 is currently still on got 11.

jlipps commented

OK, I'll make a task to update web2driver to latest webdriver