Community
Participate
Working Groups
We tried this once before, but now that the platform has some support for plugins being workers we should try again. This would save us a tonne of data cloning, and allow us to directly talk to the Tern server.
I made a branch for the experiment: http://git.eclipse.org/c/orion/org.eclipse.orion.client.git/log/?h=mrennie/jsplugin-worker There are still quite a few rough spots: 1. we can no longer dark launch things (worker don;t have access to localStorage) 2. we can no longer use metrics - the metrics support references ‘window’ which is not accessible from workers 3. consistent load timeouts in target sites 4. The file client does not work properly in a worker
Some cleanup that would need to happen after the merge: 1. merge all of the message files into one (get rid of workermessages 2. get rid of most of the error handling (its 99% worker-based) and replace with platform calls
(In reply to Michael Rennie from comment #2) > Some cleanup that would need to happen after the merge: > > 1. merge all of the message files into one (get rid of workermessages > 2. get rid of most of the error handling (its 99% worker-based) and replace > with platform calls 3. Remove all the worker-based code from the test suites
(In reply to Michael Rennie from comment #2) > Some cleanup that would need to happen after the merge: > > 1. merge all of the message files into one (get rid of workermessages This has been done in: http://git.eclipse.org/c/orion/org.eclipse.orion.client.git/commit/?id=1fb0c60f8f77c680bf4f9ac96e91449c5d22ea30
After we had been running with plugins-as-workers for a week or so, there is just too much 'strangeness' to turn this on in reality. For example: 1. if a plugin stops (the worker dies) Orion is completely hosed 2. there are weird unpredictable lags - like validation support (linting) that would sometimes become completely out of sync with the editor contents 3. We lose dark-launch support - there was just no way to set this in the console to have a plugin-worker be able to honour it. We would likely need a pref UI / something else I am going to close this as wontfix - if, in the future we have worked the kinks out of plugins-as-workers we can reopen.