-
Is it a necessary dependency? |
Beta Was this translation helpful? Give feedback.
Replies: 3 comments 1 reply
-
By making the profiler UI a simple web page, we get a lot of advantages:
The obvious drawback is that you need an internet connection for your first capture. The next captures won't need internet because the web app will be cached in a service worker cache. |
Beta Was this translation helpful? Give feedback.
-
-"the page has no special privileges, which improves the security" -"we can deploy new versions much faster" -"we use the web in a more common way, which is more performant" |
Beta Was this translation helpful? Give feedback.
-
Let me try to explain more. The tools inside the devtools toolbox are written in HTML/JavaScript nowadays (they used to be developed with XUL a long time ago). That's usually not the same type of javascript code running in webpages. For example there was a concept called "javascript modules", that's now slowly removed in favor of the standard ESM (but that wasn't existing before). By moving the UI out of Firefox to a separate webpage, we're using the web in the usual way, like normal webdevelopers do, and we can leverage all the tools that the web developers use and develop. This also has the indirect advantage that we can give early feedback to firefox engineers about some problems with the web, or give them some insights when needed, because we're web developers developing a complex application inside Mozilla. About the security: by being inside a normal webpage, we leverage all the security that comes for granted when using the web: a sandbox protecting your system from evil code. When running inside Firefox, this sandbox doesn't exist. This is just another level of protection. I hope this is clearer! Keep the questions coming :-) |
Beta Was this translation helpful? Give feedback.
By making the profiler UI a simple web page, we get a lot of advantages:
The obvious drawback is that you need an internet connection for your first capture. The next captures won't need internet because the web app will be cached in a service worker cache.