Fixes#173707
We previously converted the TS Server log from a simple string to an object. However there were a few cases where this object was incorrectly being converted into a UI string, resulting in `[Object object]`
* Unfreeze Git Commit Message grammar II
Before this change, the upstream for the VSCode Git grammar was dead.
Also, the test setup for that project has been EOL since 2014, so even
just running the tests was difficult.
The replacement grammar, unlike the current grammar:
* Has a vscode-tmgrammar-test test suite that is runnable and passing
and that will run in CI for any PRs (in the upstream project)
* Has diff highlighting for Swedish as well as English (#133888)
* Highlights touched files both in Swedish and in English
Fixes#133888Fixes#168847
Ref: <https://github.com/walles/git-commit-message-plus>
And for the record, I was the one setting up the new Git Commit Message
project. And it was fun!
* Remedy review feedback
Retain the line-too-long subject line highlighting. Improved to
highlight only the too-long part, but same idea still.
Special case English language file operations keywords and retain the
previous classification of those. But fallback to op-and-filename
classification when that fails (like it will for Swedish git for
example).
* Update colorize test result
* Update script and cgmanifest
---------
Co-authored-by: Alex Ross <alros@microsoft.com>
There's a bug on the TS Server side that causes it to traverse out of the project root when checking for directories like `node_modules`. On web this ends up being super slow because it goes to the network
This fix blocks those reads
* strings: use more comprehensive ansi escape code regex
The ansi escape remover only recognized a few codes, and only a
subset of their syntax. Be more comprehensive, and add tests.
Fixes#153648
* address pr comment
When opening a file, we pass TS Server a project root to prevent it from scanning too many files. On web, we need to pass the transformed project root, not the original uri
This PR also removes some confusingly duplicated methods and renames them to make their behavior more clear
Let 3rd matching group be an end
Previously, the first and third group was
defined as beginning. This is not
true as the first group of the regular
expression is the beginning of the math
inline markdown expression and the third
group the _end_. Once the third group is
correctly assigned, its language scope can
be changed accordingly.
* Improve GHES flow
It's clear to me now that a lot of users of the GHES flow have auth behind a VPN. Something that we cannot support in the OAuth flow because we require making a request to vscode.dev who makes a request to the GHES instance.
In light of this, we will remove the OAuth flow for GHES. Fear not, though... because both the Device Code Flow and the PAT flow are there and the PAT flow has been improved in 1.75... so in conclusion, I think GHES is handled as best we can with this PR.
Additionally, there is some "Hosted GitHub Enterprise" scenarios popping up, and this future proofs that by allowing "Hosted GitHub Enterprise" experiences to go through the OAuth flow because we know for a fact that they will be accessible from vscode.dev.
Fixes#169619
Fixes https://github.com/microsoft/vscode-internalbacklog/issues/3398
* Use api. sub domain and update telemetry logic
This makes us set the `localResourceRoots` when the simple browser is reloaded. In codespaces when switching from stable to insiders, this reload can change the extensionUrl, so we can't use the old local resource roots