Commit Graph

343 Commits

Author SHA1 Message Date
Ajay Bhargav B f1ccf855eb LSP Razor formatting for Razor code block directives (dotnet/aspnetcore-tooling#1573)
LSP Razor formatting for Razor code block directives
- Support for @code/@functions block formatting
    - Except when it contains Markup or other Razor constructs
- Added a RazorFormattingService which is invoked by the RazorFormattingEndpoint.
- Added a custom razor/rangeFormatting command that the server can use to ask the client to format a range of the projected C# or HTML document
- Added a CSharpFormatter and HTMLFormatter that invoke the above mentioned command
- Added FormattingSpan and its corresponding visitor to represent Razor understanding of indentation
- Moved the document mapping code to a separate RazorDocumentMappingService service for ease of use
- Added necessary extension methods for convenience. Some of them were copied from Roslyn
- Some cleanup
- Added a C# test formatter to enable unit testing. Right now it calls Roslyn APIs directly. As far as I've seen its behavior is the same as OmniSharp formatting except it doesn't remove trailing whitespace and empty lines. I am following up with people to understand why that is the case.
Added/updated tests
\n\nCommit migrated from 62051b9ad7
2020-02-13 16:37:15 -08:00
Ajay Bhargav Baaskaran 3bf16941eb Merge branch 'release/3.1'
\n\nCommit migrated from abc26b91c6
2020-02-12 13:11:09 -08:00
Ajay Bhargav Baaskaran ca63634583 unskip test
\n\nCommit migrated from e5c0e3fbb3
2020-02-11 13:00:00 -08:00
Ajay Bhargav Baaskaran e4fb1d44ce Revert "Remove 1.x tests (dotnet/aspnetcore-tooling#1169)"
This reverts commit dotnet/aspnetcore-tooling@bd71bcf87b.
\n\nCommit migrated from 61b1896d00
2020-02-11 13:00:00 -08:00
Ajay Bhargav B 2be31713ce Upgrade roslyn deps to 3.4.0 (dotnet/aspnetcore-tooling#1564)
\n\nCommit migrated from 6cd4f21348
2020-02-10 12:56:51 -08:00
Ryan Brandenburg 718a130b3f Fix # in FilePath (dotnet/aspnetcore-tooling#1553)
Fix # in FilePath
\n\nCommit migrated from d29c3b2f12
2020-02-06 16:44:48 -08:00
Ajay Bhargav B a32887aec4 Sync client settings with LSP server (dotnet/aspnetcore-tooling#1549)
* Sync client settings with LSP server

* feedback

* Skip flaky test https://github.com/dotnet/aspnetcore/issues/18707

* Cleanup

* Make it abstract for consistency
\n\nCommit migrated from 9a05bd16c6
2020-01-30 18:24:32 -08:00
Ryan Brandenburg 07fcf46959 Supply the `PropertyName` for Context TagHelper results. (dotnet/aspnetcore-tooling#1545)
Supply the PropertyName for Context TagHelper results
\n\nCommit migrated from d5b77f46f9
2020-01-28 17:17:47 -08:00
N. Taylor Mullen 3dd1427ad8 Skip Publish_NoBuild_CopiesStaticWebAssetsToDestinationFolder.
- This test has around a pretty high failure rate. Always find myself having to retry builds to work around this. Skipping for now until flakyness can be resolved.

dotnet/aspnetcoredotnet/aspnetcore-tooling#18561
\n\nCommit migrated from 09514f5b4d
2020-01-24 11:45:40 -08:00
N. Taylor Mullen ef4151425a Skip Publish_CopiesStaticWebAssetsToDestinationFolder_PublishSingleFile. (dotnet/aspnetcore-tooling#1532)
This test has around a 50% pass rate. Always find myself having to retry builds to work around this. Skipping for now until flakyness can be resolved.

dotnet/AspNetCoredotnet/aspnetcore-tooling#18543\n\nCommit migrated from 4187049b4f
2020-01-23 13:50:59 -08:00
Kevin Pilch a30ed5c841 Update links for repo moves (dotnet/aspnetcore-tooling#1531)
\n\nCommit migrated from 6b8cdab2f3
2020-01-23 12:20:49 -08:00
Pranav K 3ce497f20d Avoid restoring RID specific packs that don't exist.
\n\nCommit migrated from 1826963086
2020-01-17 10:35:11 -08:00
dotnet-maestro[bot] 4520c6498a [release/3.1] Update dependencies from dotnet/extensions (dotnet/aspnetcore-tooling#1496)
* Update dependencies from https://github.com/dotnet/extensions build 20200115.6

- Microsoft.AspNetCore.BenchmarkRunner.Sources - 3.1.2-servicing.20065.6
- Microsoft.AspNetCore.Testing - 3.1.2-servicing.20065.6
- Microsoft.Extensions.CommandLineUtils.Sources - 3.1.2-servicing.20065.6
- Microsoft.Extensions.NonCapturingTimer.Sources - 3.1.2-servicing.20065.6
- Microsoft.Extensions.HashCodeCombiner.Sources - 3.1.2-servicing.20065.6
- Microsoft.Extensions.Logging - 3.1.2

Dependency coherency updates

- Microsoft.NETCore.App.Runtime.win-x64 - 3.1.2 (parent: Microsoft.Extensions.Logging)
- Microsoft.Extensions.DependencyModel - 3.1.2 (parent: Microsoft.Extensions.Logging)
- Microsoft.NETCore.App.Internal - 3.1.2-servicing.20064.4 (parent: Microsoft.Extensions.Logging)

* Update dependencies from https://github.com/dotnet/extensions build 20200115.7

- Microsoft.AspNetCore.BenchmarkRunner.Sources - 3.1.2-servicing.20065.7
- Microsoft.AspNetCore.Testing - 3.1.2-servicing.20065.7
- Microsoft.Extensions.CommandLineUtils.Sources - 3.1.2-servicing.20065.7
- Microsoft.Extensions.NonCapturingTimer.Sources - 3.1.2-servicing.20065.7
- Microsoft.Extensions.HashCodeCombiner.Sources - 3.1.2-servicing.20065.7
- Microsoft.Extensions.Logging - 3.1.2

Dependency coherency updates

- Microsoft.NETCore.App.Runtime.win-x64 - 3.1.2 (parent: Microsoft.Extensions.Logging)
- Microsoft.Extensions.DependencyModel - 3.1.2 (parent: Microsoft.Extensions.Logging)
- Microsoft.NETCore.App.Internal - 3.1.2-servicing.20064.4 (parent: Microsoft.Extensions.Logging)

* Update dependencies from https://github.com/dotnet/extensions build 20200115.8

- Microsoft.AspNetCore.BenchmarkRunner.Sources - 3.1.2-servicing.20065.8
- Microsoft.AspNetCore.Testing - 3.1.2-servicing.20065.8
- Microsoft.Extensions.CommandLineUtils.Sources - 3.1.2-servicing.20065.8
- Microsoft.Extensions.NonCapturingTimer.Sources - 3.1.2-servicing.20065.8
- Microsoft.Extensions.HashCodeCombiner.Sources - 3.1.2-servicing.20065.8
- Microsoft.Extensions.Logging - 3.1.2

Dependency coherency updates

- Microsoft.NETCore.App.Runtime.win-x64 - 3.1.2 (parent: Microsoft.Extensions.Logging)
- Microsoft.Extensions.DependencyModel - 3.1.2 (parent: Microsoft.Extensions.Logging)
- Microsoft.NETCore.App.Internal - 3.1.2-servicing.20065.7 (parent: Microsoft.Extensions.Logging)

* Update dependencies from https://github.com/dotnet/extensions build 20200115.9

- Microsoft.AspNetCore.BenchmarkRunner.Sources - 3.1.2-servicing.20065.9
- Microsoft.AspNetCore.Testing - 3.1.2-servicing.20065.9
- Microsoft.Extensions.CommandLineUtils.Sources - 3.1.2-servicing.20065.9
- Microsoft.Extensions.NonCapturingTimer.Sources - 3.1.2-servicing.20065.9
- Microsoft.Extensions.HashCodeCombiner.Sources - 3.1.2-servicing.20065.9
- Microsoft.Extensions.Logging - 3.1.2

Dependency coherency updates

- Microsoft.NETCore.App.Runtime.win-x64 - 3.1.2 (parent: Microsoft.Extensions.Logging)
- Microsoft.Extensions.DependencyModel - 3.1.2 (parent: Microsoft.Extensions.Logging)
- Microsoft.NETCore.App.Internal - 3.1.2-servicing.20065.9 (parent: Microsoft.Extensions.Logging)

* Update dependencies from https://github.com/dotnet/extensions build 20200116.2

- Microsoft.AspNetCore.BenchmarkRunner.Sources - 3.1.2-servicing.20066.2
- Microsoft.AspNetCore.Testing - 3.1.2-servicing.20066.2
- Microsoft.Extensions.CommandLineUtils.Sources - 3.1.2-servicing.20066.2
- Microsoft.Extensions.NonCapturingTimer.Sources - 3.1.2-servicing.20066.2
- Microsoft.Extensions.HashCodeCombiner.Sources - 3.1.2-servicing.20066.2
- Microsoft.Extensions.Logging - 3.1.2

Dependency coherency updates

- Microsoft.NETCore.App.Runtime.win-x64 - 3.1.2 (parent: Microsoft.Extensions.Logging)
- Microsoft.Extensions.DependencyModel - 3.1.2 (parent: Microsoft.Extensions.Logging)
- Microsoft.NETCore.App.Internal - 3.1.2-servicing.20066.1 (parent: Microsoft.Extensions.Logging)

* Add System.Text.Json to nuget.config

* Update dependencies from https://github.com/dotnet/extensions build 20200116.3

- Microsoft.AspNetCore.BenchmarkRunner.Sources - 3.1.2-servicing.20066.3
- Microsoft.AspNetCore.Testing - 3.1.2-servicing.20066.3
- Microsoft.Extensions.CommandLineUtils.Sources - 3.1.2-servicing.20066.3
- Microsoft.Extensions.NonCapturingTimer.Sources - 3.1.2-servicing.20066.3
- Microsoft.Extensions.HashCodeCombiner.Sources - 3.1.2-servicing.20066.3
- Microsoft.Extensions.Logging - 3.1.2

Dependency coherency updates

- Microsoft.NETCore.App.Runtime.win-x64 - 3.1.2 (parent: Microsoft.Extensions.Logging)
- Microsoft.Extensions.DependencyModel - 3.1.2 (parent: Microsoft.Extensions.Logging)
- Microsoft.NETCore.App.Internal - 3.1.2-servicing.20066.1 (parent: Microsoft.Extensions.Logging)

* fix nuget.config

* Update dependencies from https://github.com/dotnet/extensions build 20200116.5

- Microsoft.AspNetCore.BenchmarkRunner.Sources - 3.1.2-servicing.20066.5
- Microsoft.AspNetCore.Testing - 3.1.2-servicing.20066.5
- Microsoft.Extensions.CommandLineUtils.Sources - 3.1.2-servicing.20066.5
- Microsoft.Extensions.NonCapturingTimer.Sources - 3.1.2-servicing.20066.5
- Microsoft.Extensions.HashCodeCombiner.Sources - 3.1.2-servicing.20066.5
- Microsoft.Extensions.Logging - 3.1.2

Dependency coherency updates

- Microsoft.NETCore.App.Runtime.win-x64 - 3.1.2 (parent: Microsoft.Extensions.Logging)
- Microsoft.Extensions.DependencyModel - 3.1.2 (parent: Microsoft.Extensions.Logging)
- Microsoft.NETCore.App.Internal - 3.1.2-servicing.20066.6 (parent: Microsoft.Extensions.Logging)

* fixup nuget.config

* Rely on regular restores for RID-specific package restores (dotnet/aspnetcore-tooling#1502)

* Rely on regular restores for RID-specific package restores

* Pin the runtime to a previously shippped version in SDK tests

* Update src/Razor/test/testapps/Directory.Build.targets

Co-authored-by: William Godbe <wigodbe@microsoft.com>
Co-authored-by: Pranav K <prkrishn@hotmail.com>
\n\nCommit migrated from 5fd301284e
2020-01-16 17:55:52 -08:00
Pranav K 427ec8a4c7 Rely on regular restores for RID-specific package restores (dotnet/aspnetcore-tooling#1502)
* Rely on regular restores for RID-specific package restores

* Pin the runtime to a previously shippped version in SDK tests

* Update src/Razor/test/testapps/Directory.Build.targets
\n\nCommit migrated from b0a60a0231
2020-01-16 17:49:21 -08:00
Justin Kotalik 18830cb2fe Update BuildIntrospectionTest.cs\n\nCommit migrated from 6712efc3af 2020-01-15 10:31:41 -08:00
Justin Kotalik 97c847b5f0 Merge branch 'release/3.1'
\n\nCommit migrated from 0ef68536ee
2020-01-15 10:01:46 -08:00
Artak c0bf414494 Merge pull request dotnet/aspnetcore-tooling#1383 from dotnet/javiercn/update-manifest-generation
[StaticWebAssets] Updates manifest generation to allow multiple content roots under the same base path for a single project\n\nCommit migrated from 5e957b4c3b
2020-01-15 09:02:47 -08:00
Artak c2cfbc87ab Merge pull request dotnet/aspnetcore-tooling#1442 from dotnet/javiercn/swa-publish-no-build
[StaticWebAssets][Fixes #AspNetCore/17426] Publish no build doesn't copy static web assets from referenced projects\n\nCommit migrated from 45a6c10276
2020-01-14 18:46:50 -08:00
Artak 631578fd74 Merge pull request dotnet/aspnetcore-tooling#1394 from dotnet/prkrishn/17308
Load the netcoreapp3.1 compiled task when running in Core MSBuild\n\nCommit migrated from a661e043e3
2020-01-14 18:46:22 -08:00
N. Taylor Mullen 8ea0f36d39 Remove Test variant Newtonsoft.Json.
- Our Newtonsoft.Json versions are now aligned.
\n\nCommit migrated from e7a506b1f4
2020-01-14 14:35:13 -08:00
Kevin Pilch 52b9fd85a2 Update links for repo moves/renames (dotnet/aspnetcore-tooling#1474)
\n\nCommit migrated from fae9a5fdbc
2020-01-08 16:51:55 -08:00
Ryan Brandenburg 91efa9310f TagHelper QuickInfo (dotnet/aspnetcore-tooling#1443)
Add Hover support for TagHelpers and Components\n\nCommit migrated from c7815ea4f2
2019-12-13 16:58:27 -08:00
Javier Calvarro Nelson 541323631f [StaticWebAssets] Updates manifest generation to allow multiple content
roots under the same base path for a given project.
\n\nCommit migrated from 5e68cb88e4
2019-12-13 05:30:38 -08:00
Javier Calvarro Nelson 3ff767b3d3 [StaticWebAssets][Fixes #AspNetCore/17426] Publish no build doesn't copy static web assets from referenced projects
\n\nCommit migrated from 6685cd6105
2019-12-10 12:22:09 -08:00
Javier Calvarro Nelson 0c907a8225 [Static web assets][Fixes #AspNetCore/17079] PublishSingleFile results in 404 errors for Nuget components
\n\nCommit migrated from 53dd89a41d
2019-12-05 07:52:49 -08:00
Pranav K 6ec0c445ce Load the netcoreapp3.1 compiled task when running in Core MSBuild
Fixes https://github.com/aspnet/AspNetCore/issues/17308
\n\nCommit migrated from 51e2a0ee64
2019-12-02 10:51:32 -08:00
William Godbe c5fce0fce2 Merge branch 'master' into merge/release/3.1-to-master\n\nCommit migrated from a0b7461a65 2019-11-22 12:53:28 -08:00
William Godbe 9328e4723e Merge branch 'release/3.1' into merge/release/3.0-to-release/3.1\n\nCommit migrated from 7e480a52e3 2019-11-22 11:12:31 -08:00
William Godbe 6942c1c7e3 Switch to Arcade model for PackageIcon (dotnet/aspnetcore-tooling#1325)
* Update dependencies from Arcade
* Switch to dotnet-eng\n\nCommit migrated from e37c190d7d
2019-11-20 19:27:17 -08:00
Ajay Bhargav Baaskaran fefb8a56ae Rename support in VS Code and other fixes (dotnet/aspnetcore-tooling#1336)
* Rename support in VS Code and other fixes

* feedback

* more feedback
\n\nCommit migrated from 5e2a8c7924
2019-11-20 11:05:30 -08:00
dotnet-maestro[bot] da085ad36d [release/3.1] Update dependencies from aspnet/Extensions (dotnet/aspnetcore-tooling#1347)
* Update dependencies from https://github.com/aspnet/Extensions build 20191118.3

- Microsoft.AspNetCore.BenchmarkRunner.Sources - 3.1.0-rtm.19568.3
- Microsoft.AspNetCore.Testing - 3.1.0-rtm.19568.3
- Microsoft.Extensions.CommandLineUtils.Sources - 3.1.0-rtm.19568.3
- Microsoft.Extensions.HashCodeCombiner.Sources - 3.1.0-rtm.19568.3
- Microsoft.Extensions.NonCapturingTimer.Sources - 3.1.0-rtm.19568.3
- Microsoft.Extensions.Logging - 3.1.0

Dependency coherency updates

- Microsoft.NETCore.App.Runtime.win-x64 - 3.1.0 (parent: Microsoft.Extensions.Logging)
- Microsoft.Extensions.DependencyModel - 3.1.0 (parent: Microsoft.Extensions.Logging)
- Microsoft.NETCore.App.Ref - 3.1.0 (parent: Microsoft.Extensions.Logging)

* Update flaky test

* another test
\n\nCommit migrated from b6f8920b2e
2019-11-19 21:28:03 +00:00
Ryan Brandenburg d5bf4f3f93 PR feedback
\n\nCommit migrated from 2c43ce1688
2019-11-15 10:31:46 -08:00
Ryan Brandenburg 075c91176e Razor GoToImplementation
\n\nCommit migrated from 12d1eae488
2019-11-14 14:55:48 -08:00
Ryan Brandenburg db9b8526d9 Go to definition (dotnet/aspnetcore-tooling#1313)
Go to definition
\n\nCommit migrated from 6ad962ea1a
2019-11-13 15:36:20 -08:00
Brennan 6d0088d446 Merge branch 'master' into merge/release/3.1-to-master\n\nCommit migrated from 348db011b7 2019-11-01 09:15:24 -07:00
Pranav K 7f36d6e5f0 Associate inputs and outputs for .Views dll with a set in FastUpToDate check (dotnet/aspnetcore-tooling#1277)
Follow up to https://github.com/dotnet/project-system/issues/5596

FastUpToDateCheck now has a way to associate inputs and outputs using the Set attribute.
This change prevents FastUpToDateCheck from rebuilding a project when a *.cshtml file is
newer than the project's dll output.

Fixes https://github.com/aspnet/AspNetCore/issues/13204\n\nCommit migrated from 2bf9c12490
2019-10-31 12:31:50 -07:00
Brennan 668e7b3051 Merge branch 'master' into merge/release/3.1-to-master\n\nCommit migrated from 94fd1eaa85 2019-10-31 11:58:31 -07:00
N. Taylor Mullen e2dc96c7b9 Fix runtime preventDefault / stopPropagation break.
- The Blazor runtime doesn't support adding attributes prior to any sort of content frames being applied. This change ensures that `ComponentAttributes` (how preventDefault / stopPropagation are represented) are handled like other HTML attributes (applied first).
- Updated existing tests and their baselines.

aspnet/AspNetCoredotnet/aspnetcore-tooling#16611
\n\nCommit migrated from 1513cd2a5b
2019-10-28 12:41:44 -07:00
Pranav K 739f7228aa Merge branch 'master' into merge/release/3.1-to-master\n\nCommit migrated from f088a6e121 2019-10-23 16:30:55 -07:00
dotnet-maestro[bot] 18457ddc85 [release/3.1] Update dependencies from dotnet/arcade (dotnet/aspnetcore-tooling#1257)
* Update dependencies from https://github.com/dotnet/arcade build 20191017.3

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19517.3

* Remove duplicate icon element
\n\nCommit migrated from ce261e9953
2019-10-23 18:12:55 +00:00
N. Taylor Mullen f998cdc5f2 Updated PR with merge conflict resolution changes.
\n\nCommit migrated from 3f8e5452ed
2019-10-18 13:09:14 -07:00
Pranav K 054c1c5e59 Retarget rzc.dll to netcoreapp3.0 (dotnet/aspnetcore-tooling#1253)
Based on the discussions here: https://github.com/aspnet/AspNetCore-Internal/issues/3201#issuecomment-539631557

rzc.dll targeting netcoreapp3.1 causes shared fx version conflicts when consumed as a package in the AspNetCore repo.
A fairly trivial workaround is to have it target it netcoreapp3.0 and allow it to roll-forward to the available shared fx.
This follows csc.dll's behavior, as well as solves the version conflict.

Fixes https://github.com/aspnet/AspNetCore-Internal/issues/3201\n\nCommit migrated from 3807c6a6c1
2019-10-18 11:23:05 -07:00
Ajay Bhargav Baaskaran 7f126d5694 Addressed minor comments
\n\nCommit migrated from c170fd9837
2019-10-18 10:55:45 -07:00
Ajay Bhargav Baaskaran 5badd94182 Add support for PreventDefault and StopPropagation in event handlers
\n\nCommit migrated from ae5be3efc0
2019-10-18 10:55:45 -07:00
N. Taylor Mullen 163c09f984 Add support for partial component class editing -> refresh components.
- We now do aggressive detection on the type of C# class that's being edited. In order to not impact C# scenarios we only do work if C# assets are available to us. Meaning, we inspect the old document and if that document has its' semantic model available we spend cycles to determine if it's a component. In the case that we find a C# component class that wasn't previously caught we enqueue an update.
- Added several tests to ensure we enqueue and that we properly detect component classes.

aspnet/AspNetCoredotnet/aspnetcore-tooling#14646
\n\nCommit migrated from d8b62e121f
2019-10-16 15:10:39 -07:00
Pranav K 82e62cb34f Add a flag to prevent config, json files from being copied to the build output directory (dotnet/aspnetcore-tooling#1240)
Fixes https://github.com/aspnet/AspNetCore/issues/14017\n\nCommit migrated from 8a99b91799
2019-10-16 14:34:59 -07:00
N. Taylor Mullen 49f8ae28cf Add support for using a 3.0 SDK on VS 16.4.
- The 3.0 SDK adds RazorDeclaration files to the compile list if they exist. If a user builds in VS and then does a project level operation (adding a property group or item group to their project file) a design time build will trigger for unrelated reasons and declaration files will be included as part of the C# compilation resulting in duplicate member errors. This change ensures that even if declaration files are added we then remove them to ensure we avoid those declaration additions.
- One unfortunate aspect of this change is that declarations are added to the compile list for a brief moment resulting in errors and then are instantly removed in some situations. I say "some situations" because when this happens it is highly dependent on how / when the project system decides to perform a design time build.

aspnet/AspNetCoredotnet/aspnetcore-tooling#14646
\n\nCommit migrated from b64c9317c4
2019-10-16 13:16:23 -07:00
Ajay Bhargav Baaskaran abef940002 Merge pull request dotnet/aspnetcore-tooling#1221 from dotnet-maestro-bot/merge/release/3.1-preview1-to-release/3.1
[automated] Merge branch 'release/3.1-preview1' => 'release/3.1'\n\nCommit migrated from b19a3f70a7
2019-10-09 13:29:22 -07:00
Ajay Bhargav Baaskaran 4281704bf6 Pass through the correct LangVersion to csc
\n\nCommit migrated from ce09369eb4
2019-10-08 15:55:17 -07:00
Ryan Nowak 73877e9c2f Allow expressions with @bind:event
Fixes aspnet/AspNetCoredotnet/aspnetcore-tooling#13181

The big change here is that we have to allow an HtmlAttributeIRNode to have
a dynamically computed attribute name. This isn't something that exists
anywhere else in the system.
\n\nCommit migrated from 559f0f5e52
2019-10-07 18:08:13 -07:00