* Add support for having channels in SimpleWorker
* Extract text model syncing code to a separate file
* Use a channel to do text model syncing for the language detection worker
* Simplify code
* Remove unused method
* Move OutputLinkComputer worker off editor worker
* Move TextMateTokenizationWorker off editor worker
* Simplify code
* Adopt channels for the host object
* More adopting channels for the host object
* More adopting channels for the host object
* More adopting channels for the host object
* Remove host object support from SimpleWorker
* Use the IEditorWorkerService, avoid starting a separate worker
* Bring the amd module id, the esm location and the worker label in a single type
* Improve typings
* SImplify worker creation pattern
* Enforce that all proxied methods start with `$` or `on`
* Adopt native proxy support
* Simplify code
* Simplify code
* Reintroduce a different standalone / workbench editor worker service
* Fix some always true/false errors in codebase
Testing out latest TS nightly that can identify when an expression is always true/false. This caught a few likely coding mistakes in our codebase
Unsure about the intent in some of these cases but I've tried my best to understand them. Pinging relevant code owners for the confusing cases
* Bump TS version
* Fix unreachable in build scripts
* Bump versions
* restore intent
* Revert package.json change
* Fixing a few new layer checker errors
These are global in node now
* Skip lib check in integration project
* One more skiplibcheck
* More skip lib
---------
Co-authored-by: Benjamin Pasero <benjamin.pasero@gmail.com>
Resubmission of #157532 with the following changes:
- Use `eslint-plugin-local` instead of `yarn` link to run our plugins
- Move our plugins to a top level `.eslintplugin` dir (as required by `eslint-plugin-local`)
- Update all names to `local/`
* Run our custom eslint rules using ts-node
Use `ts-node` to run our custom eslint rules. This lets us delete the pre-compiled js. It also means you can don't have to compile the rules while editing them
As part of this change, I've also switched us to using an eslint plugin instead of a rulesDir. This is now the preferred way to ship custom rules
* Fix two more disables
* Move ts-node to project root
* Enable transpileOnly