<!--
Thank you for submitting a pull request!
Here's a checklist you might find useful.
* [ ] There is an associated issue that is labeled
'Bug' or 'help wanted' or is in the Community milestone
* [ ] Code is up-to-date with the `master` branch
* [ ] You've successfully run `jake runtests` locally
* [ ] You've signed the CLA
* [ ] There are new or updated unit tests validating the change
Refer to CONTRIBUTING.MD for more details.
https://github.com/Microsoft/TypeScript/blob/master/CONTRIBUTING.md
-->
Fixes#29585.
#29314 and #29385 made it so their respective settings are only recognized when provided to the host as a whole.
This PR makes it so that the relevant settings for the preferences on the file override those of the preferences on the host.
* Add user preference to control renaming through exports
* Only impact renaming
* Update baselines
* Use flag to control all prefix and suffix text and imports
* [WIP] add tests
* Only skip export import specifier with flag
* [WIP] Update tests
* Update test
* Pick up preference from host and update test
* Shorten flag name
* Add missing utility function
* Update comment
* [WIP] rename flag and respond to cr
* [WIP] Add flag for forRelatedSymbol
* Use larger search symbol set for old-style rename
* Respond to CR
* Fix small error
* Fix type mismatch
* Update comment and remove unnecessary exprot
* Respond to CR
As for syntax-only servers, we can't meaningfully report open-file
telemetry for projects with disabled language services.
Hopefully, a deeper fix will follow, but this solves the immediate
problem that VS disables the LS for all projects when it sees a failure
in applyChangedToOpenFiles (because it assumes the server state is
corrupt).
Map Info and sources is not ideal and need to revisited since we need to update mapper and projects correctly
// TODO: lifetime of source project and declaration map
Since it's for telemetry, it prefers to return a stale value rather than
triggering file IO (though it will load the file if not even a stale
value is available).
* Improve error message when scriptInfo is missing in mapTextChangeToCodeEdit
* Include both fileName and path, and use in more places
* Move logErrorForScriptInfoNotFound to editorServices.ts
* Update API