The idea here is... if a token is currently being refreshed, well then getting a token of those scopes should wait for that to finish.
Core has a really nice `SequencerByKey` for exactly this kind of thing, and so I've stolen that and started to organize the code with a `common` folder.
Oh, I also noticed we were sorting twice and fixed that to only sort once.
ref https://github.com/microsoft/vscode/issues/186693
This PR adds a ton more logging, a consistant format, and fixes the log levels of some.
Additionally, there are two small fixes that I have included:
* we were firing the `_sessionChangeEmitter` twice when a session was removed
* when processing updates from other windows, we returned instead of continued... thus were only processing the first account that was added in another window
* forwarding: add a warning for public ports
A number of users have raised some security concerns about port
forwarding. Forwarded ports are private (requiring auth with the same
GH account that did the forwarding) by default. When making a port
public, show the following dialog:
![](https://memes.peet.io/img/23-09-3f3351c7-cdcd-46e5-9d0f-123e4dda6b3c.png)
* Update extensions/tunnel-forwarding/src/extension.ts
Co-authored-by: Joyce Er <joyce.er@microsoft.com>
---------
Co-authored-by: Joyce Er <joyce.er@microsoft.com>
* Add config for running tsserver on custom node
* log when custom node install is used
* create node version manager
* get node path from node version manager everywhere
* modify prompt
* fix useIpc
* use spawn for custom node and set windowsHide
* detect node
* link memory setting to node setting
* Git - fix stage/unstage selected ranges in nested git repositories
* Remove the submodule check as it is being covered by the repository check
* Pull request feedback
* Experiment with adding ata using `@types` packages shipped in an extension
* Use own file system instead of `https`
* JS/TS type support on web
* Tsconfig needs esModuleInterop not module:nodenext
We actually want webpack to emit commonjs, but need to write ES default
imports to use node-maintainer
* fix package.json indentation
* Adding setting to disable web type acquisition
* Fix merge of yarn lock
* Fixing merge errors
* Fixing errors
* Pick up package externally
* Fixing conflicts
* Bump version
---------
Co-authored-by: Kat Marchán <kzm@zkat.tech>
Co-authored-by: Nathan Shively-Sanders <293473+sandersn@users.noreply.github.com>