Граф коммитов

15516 Коммитов

Автор SHA1 Сообщение Дата
David Wengier f9e09f5bbb
[main] Update dependencies from dotnet/source-build-reference-packages (#10858)
This pull request updates the following dependencies

[marker]: <> (Begin:011df26a-fbd1-45b0-94b9-08db3601dcca)
## From https://github.com/dotnet/source-build-reference-packages
- **Subscription**: 011df26a-fbd1-45b0-94b9-08db3601dcca
- **Build**: 20240905.1
- **Date Produced**: September 5, 2024 10:13:43 PM UTC
- **Commit**: ad3c9aa85596f42c6a483233c50fab8cee8c412a
- **Branch**: refs/heads/main

[DependencyUpdate]: <> (Begin)

- **Updates**:
-
**Microsoft.SourceBuild.Intermediate.source-build-reference-packages**:
[from 10.0.0-alpha.1.24428.1 to 10.0.0-alpha.1.24455.1][1]

[1]:
6bcf90f99d...ad3c9aa855

[DependencyUpdate]: <> (End)


[marker]: <> (End:011df26a-fbd1-45b0-94b9-08db3601dcca)
2024-09-10 14:05:01 +10:00
Dustin Campbell 29c73023e7
Remove IDocumentMappingService.GetLanguageKind(...) and make it an extension method on RazorCodeDocument (#10851)
For a long while, the `GetLanguageKind(...)` method that determines
whether an index into a document falls within Razor, C# or HTML has been
a bit of a wart on the `IDocumentMappingService`. It really isn't part
of document mapping, and its implementation is completely distinct. In
fact, making the actual change is quite simple, so why hadn't it been
done yet? The answer is mocking.

There are several tests that mock
`IDocumentMappingService.GetLanguageKind(...)` to lie about test inputs.
In my not-so-humble opinion, this represents an abuse of mocking.
Instead of setting up tests to have the necessary inputs that ensure
`GetLanguageKind(...)` would return a real and correct result, the
inputs would often be garbage and an `IDocumentMappingService` mock
would lie about the `GetLanguageKind(...)` result at a particular
location. This makes moving `GetLanguageKind(...)` off of
`IDocumentMappingService` a much larger change than it needs to be. This
is why there are substantial test changes in this PR.

Don't misunderstand me as a mocking hater! Mocking libraries are
definitely useful! In fact, there are new mocks used in this very PR!
However, mocks should be used judiciously and thoughtfully, and in this
case, a mock was used to write lazy tests.

Fixes https://github.com/dotnet/razor/issues/8774
2024-09-09 16:21:28 -07:00
dotnet-maestro[bot] baabd8de45 Update dependencies from https://github.com/dotnet/source-build-reference-packages build 20240905.1
Microsoft.SourceBuild.Intermediate.source-build-reference-packages
 From Version 10.0.0-alpha.1.24428.1 -> To Version 10.0.0-alpha.1.24455.1
2024-09-09 12:43:40 +00:00
David Wengier 308833d8b8
Remove unused private members (#10848)
A clean error list is a good error list.
2024-09-09 18:58:19 +10:00
David Wengier d1857851fb PR Feedback 2024-09-09 14:19:52 +10:00
David Wengier b0cd007c25
Remove flaky test (#10854)
This keeps failing, and formatting it doesn't add any value to our
integration tests IMO
2024-09-09 11:05:24 +10:00
David Wengier 6186646fac Remove flaky test 2024-09-08 08:32:20 +10:00
Alex Gavrilov e9cd0b2e2e
OnAutoInsert Cohosting Tests (#10829)
* OnAutoInsert Cohosting Tests

* Fixing C# case (and correcting others)

All text should already be in the document/buffer when OnAutoInsert is being executed. Tigger character is not being added to the buffer, it should already be in the buffer.

* PR feedback

Switching to applying edit instead of verifying edit contents and range. Switching from Theories to separate Facts where input was complex. Other misc cleanup.

* Fixing options source and adding options tests

* Tests for all options

* Switching to use TestCode class

* Create options object for cohost OnAutoInsert to combined individual options passed to the remove service.

* More PR feedback

* Switching to nested RazorFormattingOptions
2024-09-06 22:31:13 +00:00
Dustin Campbell 5105d1b960 Update GetLanguageKind(...) tests and move to Workspaces.Test 2024-09-06 15:07:51 -07:00
Dustin Campbell ed8e62b920 Remove IDocumentMappingService.GetLanguageKind(...) 2024-09-06 15:01:01 -07:00
Dustin Campbell ae81c663bd Fix up tests that mocked IDocumentMappingService.GetLanguageKind(...) 2024-09-06 15:00:52 -07:00
Dustin Campbell f575ad02ca Add and use RazorCodeDocument.GetLanguageKind(...) extension method 2024-09-06 11:14:58 -07:00
Dustin Campbell e8eede823a Move GetLanguageKind(...) implementation methods to a helper class 2024-09-06 10:49:53 -07:00
David Wengier cc5b5a54ec One more, after the merge 2024-09-06 17:13:58 +10:00
David Wengier 9386c8c975 Merge remote-tracking branch 'upstream/main' into MinFix 2024-09-06 17:08:07 +10:00
David Wengier 07e138222c
Cohost Spell Check (#10825)
Needs https://github.com/dotnet/roslyn/pull/74978
Fixes https://github.com/dotnet/razor/issues/10746
Part of https://github.com/dotnet/razor/issues/9519
2024-09-06 16:05:27 +10:00
David Wengier daa1f0183c Suppress 2024-09-06 15:50:29 +10:00
David Wengier b0d5d3e4a9 Dial diagnosis up to warning 2024-09-06 15:50:23 +10:00
David Wengier 34421760e7 Remove unused private members 2024-09-06 15:49:49 +10:00
dotnet bot 9678b91d4d
Merge release/dev17.12 to main (#10847)
This is an automatically generated pull request from release/dev17.12
into main.


Once all conflicts are resolved and all the tests pass, you are free to
merge the pull request. 🐯

## Troubleshooting conflicts

### Identify authors of changes which introduced merge conflicts
Scroll to the bottom, then for each file containing conflicts copy its
path into the following searches:
- https://github.com/dotnet/razor/find/release/dev17.12
- https://github.com/dotnet/razor/find/main

Usually the most recent change to a file between the two branches is
considered to have introduced the conflicts, but sometimes it will be
necessary to look for the conflicting lines and check the blame in each
branch. Generally the author whose change introduced the conflicts
should pull down this PR, fix the conflicts locally, then push up a
commit resolving the conflicts.

### Resolve merge conflicts using your local repo
Sometimes merge conflicts may be present on GitHub but merging locally
will work without conflicts. This is due to differences between the
merge algorithm used in local git versus the one used by GitHub.
``` bash
git fetch --all
git checkout -t upstream/merges/release/dev17.12-to-main
git reset --hard upstream/main
git merge upstream/release/dev17.12
# Fix merge conflicts
git commit
git push upstream merges/release/dev17.12-to-main --force
```
2024-09-05 20:30:39 -07:00
David Wengier a3ee54d9a5 Merge remote-tracking branch 'upstream/main' into CohostSpellCheck
# Conflicts:
#	eng/targets/Services.props
#	src/Razor/src/Microsoft.CodeAnalysis.Razor.Workspaces/Remote/RazorServices.cs
2024-09-06 13:28:23 +10:00
David Wengier 49e727b90e
Cohost Go To Implementation (#10824)
Needs https://github.com/dotnet/roslyn/pull/74978
Fixes https://github.com/dotnet/razor/issues/10695
Part of https://github.com/dotnet/razor/issues/9519

Pretty straightforward. A tiny bit of code moved to be shared with Go To
Def, but that's it.
2024-09-06 13:24:56 +10:00
David Wengier 70f110d19d Fix test
This should have been fixed with #10807 but without the Roslyn bump I guess I didn't realise. Oops!
2024-09-06 12:30:04 +10:00
David Wengier f7681c2f19 Fix build 2024-09-06 12:09:16 +10:00
David Wengier 054f9ee41e Merge remote-tracking branch 'upstream/main' into CohostGoToImplementation
# Conflicts:
#	eng/targets/Services.props
2024-09-06 11:53:30 +10:00
David Wengier 6e121618bb Bump to real Roslyn version 2024-09-06 11:52:14 +10:00
David Wengier b69b08cbe3 PR Feedback 2024-09-06 11:51:32 +10:00
David Wengier d37da8b3de Bump to real Roslyn version 2024-09-06 11:51:26 +10:00
dotnet bot 459e9d6d9e
Merge release/dev17.12 to main (#10841)
This is an automatically generated pull request from release/dev17.12
into main.


Once all conflicts are resolved and all the tests pass, you are free to
merge the pull request. 🐯

## Troubleshooting conflicts

### Identify authors of changes which introduced merge conflicts
Scroll to the bottom, then for each file containing conflicts copy its
path into the following searches:
- https://github.com/dotnet/razor/find/release/dev17.12
- https://github.com/dotnet/razor/find/main

Usually the most recent change to a file between the two branches is
considered to have introduced the conflicts, but sometimes it will be
necessary to look for the conflicting lines and check the blame in each
branch. Generally the author whose change introduced the conflicts
should pull down this PR, fix the conflicts locally, then push up a
commit resolving the conflicts.

### Resolve merge conflicts using your local repo
Sometimes merge conflicts may be present on GitHub but merging locally
will work without conflicts. This is due to differences between the
merge algorithm used in local git versus the one used by GitHub.
``` bash
git fetch --all
git checkout -t upstream/merges/release/dev17.12-to-main
git reset --hard upstream/main
git merge upstream/release/dev17.12
# Fix merge conflicts
git commit
git push upstream merges/release/dev17.12-to-main --force
```
2024-09-05 17:36:35 -07:00
Jared Parsons fdda4bbae9
CodeQL suppressions (#10845) 2024-09-05 22:42:30 +00:00
Jan Jones dde7fe8c2f
Ensure type arguments are `global::` qualified (#10834)
* Add a test

* Use fully globally qualified type name

* Update baselines

* Fix delegates and child content

* Update baselines

* Fix other child content scenarios

* Update baselines

* Encapsulate shared code
2024-09-05 09:28:48 +02:00
David Wengier 9b339ba27c
Cohost formatting (#10822)
Fixes https://github.com/dotnet/razor/issues/10743
Part of https://github.com/dotnet/razor/issues/9519

Brings formatting to cohosting. Relatively simple because of previous
PRs. Have left sharing full test coverage of the formatting engine for
later
2024-09-05 14:28:23 +10:00
David Wengier e0b2935d30 PR Feedback 2024-09-05 14:01:52 +10:00
dotnet bot c5b9ab8160
Merge release/dev17.11 to release/dev17.12 (#10840)
This is an automatically generated pull request from release/dev17.11
into release/dev17.12.


Once all conflicts are resolved and all the tests pass, you are free to
merge the pull request. 🐯

## Troubleshooting conflicts

### Identify authors of changes which introduced merge conflicts
Scroll to the bottom, then for each file containing conflicts copy its
path into the following searches:
- https://github.com/dotnet/razor/find/release/dev17.11
- https://github.com/dotnet/razor/find/release/dev17.12

Usually the most recent change to a file between the two branches is
considered to have introduced the conflicts, but sometimes it will be
necessary to look for the conflicting lines and check the blame in each
branch. Generally the author whose change introduced the conflicts
should pull down this PR, fix the conflicts locally, then push up a
commit resolving the conflicts.

### Resolve merge conflicts using your local repo
Sometimes merge conflicts may be present on GitHub but merging locally
will work without conflicts. This is due to differences between the
merge algorithm used in local git versus the one used by GitHub.
``` bash
git fetch --all
git checkout -t upstream/merges/release/dev17.11-to-release/dev17.12
git reset --hard upstream/release/dev17.12
git merge upstream/release/dev17.11
# Fix merge conflicts
git commit
git push upstream merges/release/dev17.11-to-release/dev17.12 --force
```
2024-09-04 20:54:40 -07:00
David Wengier 4dcc2c4f4d Merge remote-tracking branch 'upstream/main' into CohostSpellCheck 2024-09-05 13:29:48 +10:00
David Wengier b7cd05e453 Remove unused parameter 2024-09-05 13:15:10 +10:00
David Wengier d87ad016dd Move initialization logic 2024-09-05 13:09:33 +10:00
David Wengier a795f32f17 Merge remote-tracking branch 'upstream/main' into CohostFormatting
# Conflicts:
#	src/Razor/src/Microsoft.CodeAnalysis.Razor.Workspaces/Formatting/RazorFormattingService.cs
2024-09-05 12:20:13 +10:00
David Wengier 7d8be8e167 Most PR feedback 2024-09-05 12:12:55 +10:00
David Wengier fbf8c8ef4d
Remove some things from `IProjectSnapshot` for cohostings benefit (#10831)
Chris found these to be problematic in his branch where he enabled the
source generator, but fortunately they're simply unnecessary in
cohosting.
2024-09-05 10:16:54 +10:00
dotnet bot d6f6a52861
Merge release/dev17.10 to release/dev17.11 (#10833)
This is an automatically generated pull request from release/dev17.10
into release/dev17.11.


Once all conflicts are resolved and all the tests pass, you are free to
merge the pull request. 🐯

## Troubleshooting conflicts

### Identify authors of changes which introduced merge conflicts
Scroll to the bottom, then for each file containing conflicts copy its
path into the following searches:
- https://github.com/dotnet/razor/find/release/dev17.10
- https://github.com/dotnet/razor/find/release/dev17.11

Usually the most recent change to a file between the two branches is
considered to have introduced the conflicts, but sometimes it will be
necessary to look for the conflicting lines and check the blame in each
branch. Generally the author whose change introduced the conflicts
should pull down this PR, fix the conflicts locally, then push up a
commit resolving the conflicts.

### Resolve merge conflicts using your local repo
Sometimes merge conflicts may be present on GitHub but merging locally
will work without conflicts. This is due to differences between the
merge algorithm used in local git versus the one used by GitHub.
``` bash
git fetch --all
git checkout -t upstream/merges/release/dev17.10-to-release/dev17.11
git reset --hard upstream/release/dev17.11
git merge upstream/release/dev17.10
# Fix merge conflicts
git commit
git push upstream merges/release/dev17.10-to-release/dev17.11 --force
```
2024-09-04 16:04:26 -07:00
David Wengier 42cc39e4a9 PR Feedback 2024-09-05 08:34:32 +10:00
David Wengier 6718dbcb40
[main] Update dependencies from dotnet/source-build-reference-packages (#10562)
This pull request updates the following dependencies

[marker]: <> (Begin:011df26a-fbd1-45b0-94b9-08db3601dcca)
## From https://github.com/dotnet/source-build-reference-packages
- **Subscription**: 011df26a-fbd1-45b0-94b9-08db3601dcca
- **Build**: 20240828.1
- **Date Produced**: August 28, 2024 4:47:08 PM UTC
- **Commit**: 6bcf90f99d13da86c5e9753a6f34b6484673d0a0
- **Branch**: refs/heads/main

[DependencyUpdate]: <> (Begin)

- **Updates**:
-
**Microsoft.SourceBuild.Intermediate.source-build-reference-packages**:
[from 10.0.0-alpha.1.24421.1 to 10.0.0-alpha.1.24428.1][10]

[10]:
bdd698774d...6bcf90f99d

[DependencyUpdate]: <> (End)


[marker]: <> (End:011df26a-fbd1-45b0-94b9-08db3601dcca)
2024-09-05 07:59:52 +10:00
Jordi Ramos 148d71a9a3
Fix LF line-ending auto format bug (#10802)
* Implemented a line normalization function that prevents the language server from sending /r to LF line ending docs

* check if indentation location has been processed

* added LF line ending document to all previous razor formatting test cases

* skipping some LF line ending formatting tests. Created an issue to track the progress
2024-09-04 14:43:47 -07:00
dotnet bot 1d04db3d31
Merge release/dev17.11 to release/dev17.12 (#10832)
This is an automatically generated pull request from release/dev17.11
into release/dev17.12.


Once all conflicts are resolved and all the tests pass, you are free to
merge the pull request. 🐯

## Troubleshooting conflicts

### Identify authors of changes which introduced merge conflicts
Scroll to the bottom, then for each file containing conflicts copy its
path into the following searches:
- https://github.com/dotnet/razor/find/release/dev17.11
- https://github.com/dotnet/razor/find/release/dev17.12

Usually the most recent change to a file between the two branches is
considered to have introduced the conflicts, but sometimes it will be
necessary to look for the conflicting lines and check the blame in each
branch. Generally the author whose change introduced the conflicts
should pull down this PR, fix the conflicts locally, then push up a
commit resolving the conflicts.

### Resolve merge conflicts using your local repo
Sometimes merge conflicts may be present on GitHub but merging locally
will work without conflicts. This is due to differences between the
merge algorithm used in local git versus the one used by GitHub.
``` bash
git fetch --all
git checkout -t upstream/merges/release/dev17.11-to-release/dev17.12
git reset --hard upstream/release/dev17.12
git merge upstream/release/dev17.11
# Fix merge conflicts
git commit
git push upstream merges/release/dev17.11-to-release/dev17.12 --force
```
2024-09-04 14:39:13 -07:00
David Wengier 460ae5b1a4
Merge branch 'main' into darc-main-a925341a-a0ef-49f7-bc6e-6525c5d13555 2024-09-05 07:29:55 +10:00
David Wengier 976f723840
Merge branch 'release/dev17.12' into merges/release/dev17.11-to-release/dev17.12 2024-09-05 07:01:28 +10:00
David Wengier cb2fd72b5f
Merge branch 'release/dev17.11' into merges/release/dev17.10-to-release/dev17.11 2024-09-05 06:58:43 +10:00
dotnet-maestro[bot] de7eddc0e9
Update dependencies from https://github.com/dotnet/arcade build 20240903.1 (#10835)
Microsoft.SourceBuild.Intermediate.arcade , Microsoft.DotNet.Arcade.Sdk
 From Version 9.0.0-beta.24429.5 -> To Version 9.0.0-beta.24453.1

Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
2024-09-04 12:33:30 -07:00
Dustin Campbell 90b1855f86
Change RazorSyntaxTree.Diagnostics from an IReadOnlyList<RazorDiagnostic> to an ImmutableArray<RazorDiagnostic> (#10797)
This pull request represents several changes with the ultimate goal of
exposing `RazorSyntaxTree.Diagnostics` as an
`ImmutableArray<RazorDiagnostic>` rather than an
`IReadOnlyList<RazorDiagnostic>`:

- Clean up `RazorSyntaxTree` and get rid of `DefaultRazorSyntaxTree`.
- Add `(Drain)ToImmutableOrdered*` methods to `PooledArrayBuilder<T>`.
Note that this change also includes a refactoring to the various unit
tests for ordering to share test data that I've isolated to a single
commit.
- Clean up and improve `ErrorSink` to no longer greedily create a new
`List<T>` before any errors are encountered.
- Clean up `ParserContext` and make it used pooled collections.
- Use pooled collections when computing and caching the result of
`RazorSyntaxTree.Diagnostics`.
2024-09-04 08:41:16 -07:00