Commit Graph

290 Commits

Author SHA1 Message Date
wtgodbe 371f2c246b Switch to embedded package icon
\n\nCommit migrated from fba50fdcd4
2019-10-02 12:56:34 -07:00
wtgodbe 3ce7953fec One more missed convention location
\n\nCommit migrated from 1e6b4887c4
2019-10-02 12:33:27 -07:00
wtgodbe 7a61205024 Add workaround to one more project
\n\nCommit migrated from 381138fc72
2019-10-02 12:21:01 -07:00
wtgodbe 1d789575ae Embedded resource convention workaround
\n\nCommit migrated from 6e6faf5aaa
2019-10-02 12:17:01 -07:00
Ajay Bhargav Baaskaran ef8830ffec Update baselines to unbreak tests (dotnet/aspnetcore-tooling#1184)
\n\nCommit migrated from 0d1e0d6eba
2019-10-01 13:59:41 -07:00
N. Taylor Mullen 1e9c0f01af Add Blazor partial class support in Visual Studio. (dotnet/aspnetcore-tooling#1182)
- No longer mark declaration files as single file generators. Prior to this we relied on SingleFileGenerators to dynamically update the declaration files when .razor files changed. However, to make partial classes work we can no longer depend on declaration files being available because their existence causes us to have to mangle class names for opened documents; otherwise you get two files with same name and result in ambiguous definition errors.
- Stopped including declaration files as part of the users compilation. This was intended to make the design time experience operate more similar to how Blazor apps function at runtime (directly access each component instead of their declarations). We now rely on the background code generation effort built from the find all references work to supply users with strongly typed component names.
- Stop mangling class names for Visual Studio. Razor.VSCode has its own set of configurations which i'm not addressing as part of this changeset.
- Start generating components with the partial modifier to their class name to enable partial class support.
- Updated existing tests to expect partial modifier.

aspnet/AspNetCoredotnet/aspnetcore-tooling#5487\n\nCommit migrated from 73858cdd37
2019-10-01 13:59:33 -07:00
Ajay Bhargav Baaskaran 3dcc779659 Prefer child content over a matching component (dotnet/aspnetcore-tooling#1180)
* Prefer child content over a matching component

* feedback
\n\nCommit migrated from 9c83a09944
2019-09-27 14:27:10 -07:00
Ajay Bhargav Baaskaran 39d8e322d1 Fix misc attribute content sometimes getting ignored (dotnet/aspnetcore-tooling#1176)
\n\nCommit migrated from 8108f50021
2019-09-27 14:22:21 -07:00
Ryan Brandenburg 287b183189 Responding to Pranav's feedback
\n\nCommit migrated from 353a27828e
2019-09-26 13:58:03 -07:00
Ryan Brandenburg eda9503177 RazorSDK doesn't overwrite ErrorLog
\n\nCommit migrated from aed7bc8ec6
2019-09-26 13:58:03 -07:00
Ajay Bhargav Baaskaran c05fca5137 Remove 1.x tests (dotnet/aspnetcore-tooling#1169)
\n\nCommit migrated from bd71bcf87b
2019-09-25 10:50:13 -07:00
Javier Calvarro Nelson f6c5aa73c1 Capture process dumps for child dotnet processes (dotnet/aspnetcore-tooling#1170)
\n\nCommit migrated from e283d0be15
2019-09-25 18:11:35 +02:00
N. Taylor Mullen d0d09a2c61 Merge branch 'nimullen/13494.prereq' into release/3.1
\n\nCommit migrated from e980416506
2019-09-20 11:46:12 -07:00
N. Taylor Mullen 5bb36d86f1 Integrate Razor VSCode extension functional tests into src/Razor.
- Added the `.vscode-test` to `.gitignore` because that's the VSCode folder that gets created when dynamically downloading VSCode for CI purposes.
- Migrated functional tests to use the non-deprecated VSCode functional testing APIs. This involved creating a runTest file to control downloading VSCode and passing in appropriate parameters as well as creating an index that discovers tests that should be run.
- Changed functional tests to operate on the existing Razor testapps (instead of the old ones).
- Updated the "default" completion tests to be latest Razor/Blazor.
- Added VSCode launch configurations to enable easy debugging via F5.

aspnet/AspNetCoredotnet/aspnetcore-tooling#13494
\n\nCommit migrated from 66e4e8a169
2019-09-20 11:44:08 -07:00
N. Taylor Mullen 66f2aac299 Integrate Razor LanguageServer (without plugin) into src/Razor.
- Added tests for both the language server and the common language server projects.
- Updated publish MSBuild bits to publish to `artifacts/LanguageServer/$(Configuration)/TFM`
- Updated the language server to be netcoreapp3.0

aspnet/AspNetCoredotnet/aspnetcore-tooling#13494
\n\nCommit migrated from 984c638b37
2019-09-20 11:44:08 -07:00
Javier Calvarro Nelson dfbb36ee10 [Infrastructure] Fix invalid variable names
ProcDumpPath -> ProcDumpToolPath
_BuildConfiguration -> _BuildConfig\n\nCommit migrated from f283e4a7c0
2019-09-20 11:09:22 +02:00
Javier Calvarro Nelson bcd542a1bb [Infrastructure] Install procdump and capture dumps on build hangs (dotnet/aspnetcore-tooling#1146)
* Captures process dumps when the build hangs.
* Captures process dumps when a child process hangs inside a test.
\n\nCommit migrated from a9b7e24791
2019-09-19 18:36:02 +02:00
John Luo a2081d584f Fix razor tool assembly path (dotnet/aspnetcore-tooling#1138)
\n\nCommit migrated from 88cd749f38
2019-09-15 08:05:47 -07:00
Doug Bunting 51ec2760aa Merge branch 'release/3.1' into merge/release/3.0-to-release/3.1\n\nCommit migrated from 683059f2cb 2019-09-14 17:12:43 -07:00
dotnet-maestro[bot] 901f8aa76d [release/3.0] Update dependencies from aspnet/Extensions (dotnet/aspnetcore-tooling#1132)
* Update dependencies from https://github.com/aspnet/Extensions build 20190913.2

- Microsoft.AspNetCore.BenchmarkRunner.Sources - 3.0.0-rc2.19463.2
- Microsoft.AspNetCore.Testing - 3.0.0-rc2.19463.2
- Microsoft.Extensions.CommandLineUtils.Sources - 3.0.0-rc2.19463.2
- Microsoft.Extensions.HashCodeCombiner.Sources - 3.0.0-rc2.19463.2
- Microsoft.Extensions.NonCapturingTimer.Sources - 3.0.0-rc2.19463.2
- Microsoft.Extensions.Logging - 3.0.0-rc2.19463.2

Dependency coherency updates

- System.Diagnostics.DiagnosticSource - 4.6.0 (parent: Microsoft.NETCore.App.Runtime.win-x64)
- Microsoft.NETCore.App.Runtime.win-x64 - 3.0.0 (parent: Microsoft.Extensions.Logging)
- System.Reflection.Metadata - 1.7.0 (parent: Microsoft.NETCore.App.Runtime.win-x64)
- System.Text.Encodings.Web - 4.6.0 (parent: Microsoft.NETCore.App.Runtime.win-x64)
- Microsoft.Extensions.DependencyModel - 3.0.0 (parent: Microsoft.Extensions.Logging)
- Microsoft.NETCore.App.Ref - 3.0.0 (parent: Microsoft.Extensions.Logging)
- Microsoft.NETCore.Platforms - 3.0.0 (parent: Microsoft.NETCore.App.Runtime.win-x64)

* Update dependencies from https://github.com/aspnet/Extensions build 20190913.3

- Microsoft.AspNetCore.BenchmarkRunner.Sources - 3.0.0-rc2.19463.3
- Microsoft.AspNetCore.Testing - 3.0.0-rc2.19463.3
- Microsoft.Extensions.CommandLineUtils.Sources - 3.0.0-rc2.19463.3
- Microsoft.Extensions.HashCodeCombiner.Sources - 3.0.0-rc2.19463.3
- Microsoft.Extensions.NonCapturingTimer.Sources - 3.0.0-rc2.19463.3
- Microsoft.Extensions.Logging - 3.0.0

Dependency coherency updates

- System.Diagnostics.DiagnosticSource - 4.6.0 (parent: Microsoft.NETCore.App.Runtime.win-x64)
- Microsoft.NETCore.App.Runtime.win-x64 - 3.0.0 (parent: Microsoft.Extensions.Logging)
- System.Reflection.Metadata - 1.7.0 (parent: Microsoft.NETCore.App.Runtime.win-x64)
- System.Text.Encodings.Web - 4.6.0 (parent: Microsoft.NETCore.App.Runtime.win-x64)
- Microsoft.Extensions.DependencyModel - 3.0.0 (parent: Microsoft.Extensions.Logging)
- Microsoft.NETCore.App.Ref - 3.0.0 (parent: Microsoft.Extensions.Logging)
- Microsoft.NETCore.Platforms - 3.0.0 (parent: Microsoft.NETCore.App.Runtime.win-x64)

* Update dependencies from https://github.com/aspnet/Extensions build 20190913.5

- Microsoft.AspNetCore.BenchmarkRunner.Sources - 3.0.0-rc2.19463.5
- Microsoft.AspNetCore.Testing - 3.0.0-rc2.19463.5
- Microsoft.Extensions.CommandLineUtils.Sources - 3.0.0-rc2.19463.5
- Microsoft.Extensions.HashCodeCombiner.Sources - 3.0.0-rc2.19463.5
- Microsoft.Extensions.NonCapturingTimer.Sources - 3.0.0-rc2.19463.5
- Microsoft.Extensions.Logging - 3.0.0

Dependency coherency updates

- System.Diagnostics.DiagnosticSource - 4.6.0 (parent: Microsoft.NETCore.App.Runtime.win-x64)
- Microsoft.NETCore.App.Runtime.win-x64 - 3.0.0 (parent: Microsoft.Extensions.Logging)
- System.Reflection.Metadata - 1.7.0 (parent: Microsoft.NETCore.App.Runtime.win-x64)
- System.Text.Encodings.Web - 4.6.0 (parent: Microsoft.NETCore.App.Runtime.win-x64)
- Microsoft.Extensions.DependencyModel - 3.0.0 (parent: Microsoft.Extensions.Logging)
- Microsoft.NETCore.App.Ref - 3.0.0 (parent: Microsoft.Extensions.Logging)
- Microsoft.NETCore.Platforms - 3.0.0 (parent: Microsoft.NETCore.App.Runtime.win-x64)
- Microsoft.Net.Compilers.Toolset - 3.3.1-beta4-19462-11 (parent: Microsoft.Extensions.Logging)

* Restore test projects prior to running SDK tests (dotnet/aspnetcore-tooling#1078)

* Fix 3.0 tests
\n\nCommit migrated from eaf897c542
2019-09-14 19:38:15 +00:00
John Luo 1606d9b0d3 Support netcoreapp3.1 TFM (dotnet/aspnetcore-tooling#1122)
* Support netcoreapp3.1 TFM

* Update branding to preview1

* Skip failing 1.1 test
\n\nCommit migrated from 133b252f09
2019-09-12 22:02:18 -07:00
Ajay Bhargav Baaskaran 61726ae9df Restore test projects prior to running SDK tests (dotnet/aspnetcore-tooling#1078)
\n\nCommit migrated from e6bb507271
2019-09-10 17:45:59 -07:00
John Luo d5c2d17c11 Merge pull request dotnet/aspnetcore-tooling#983 from aspnet/johluo/sdk
Update SDK to preview 8\n\nCommit migrated from 62d5ccbd6a
2019-08-21 15:42:29 -07:00
= 5f7c8d9d74 Apply fix for NuGet warning
\n\nCommit migrated from fb3187b34f
2019-08-21 13:30:21 -07:00
Kevin Pilch ad0cf9c6e7 Merge pull request dotnet/aspnetcore-tooling#974 from nguerrera/link-views
Pass views assembly to linker\n\nCommit migrated from ddb72ebdb1
2019-08-20 13:58:59 -07:00
Ryan Nowak cb35a0aa40 Reaction to API review changes
This change updates the snapshot of components APIs used in compiler
tests and updates the tests to react tot hose changes.
\n\nCommit migrated from c8cc588bca
2019-08-20 08:20:36 -07:00
Nick Guerrera e18cc9a776 Pass views assembly to linker
1. Re-schedule target to run before linker
2. Add additional linker input item
\n\nCommit migrated from 88b5f29a63
2019-08-18 23:29:50 -07:00
Ajay Bhargav Baaskaran 2873952822 Set LangVersion the same way as roslyn (dotnet/aspnetcore-tooling#979)
* Set LangVersion the same way as roslyn

* Update commit link
\n\nCommit migrated from b82d4f9583
2019-08-15 15:27:12 -07:00
N. Taylor Mullen f3536ca403 Revert "Fix: dotnet/aspnetcore-tooling#11197 automatic backing-field for @ref (dotnet/aspnetcore-tooling#707)"
This reverts commit dadf9fa.
\n\nCommit migrated from afddfcb49e
2019-08-15 14:35:26 -07:00
N. Taylor Mullen 9584c7e34f Revert "Fix a bug with ref and declaration phase"
This reverts commit dotnet/aspnetcore-tooling@09b50151ef.

# Conflicts:
#	src/Razor/test/RazorLanguage.Test/IntegrationTests/ComponentDeclarationIntegrationTest.cs
\n\nCommit migrated from c0e934ed7c
2019-08-15 14:35:26 -07:00
dotnet-maestro[bot] 781743fa30 [release/3.0] Update dependencies from aspnet/Extensions (dotnet/aspnetcore-tooling#975)
* Update dependencies from https://github.com/aspnet/Extensions build 20190815.2

- Microsoft.AspNetCore.BenchmarkRunner.Sources - 3.0.0-preview9.19415.2
- Microsoft.AspNetCore.Testing - 3.0.0-preview9.19415.2
- Microsoft.Extensions.CommandLineUtils.Sources - 3.0.0-preview9.19415.2
- Microsoft.Extensions.HashCodeCombiner.Sources - 3.0.0-preview9.19415.2
- Microsoft.Extensions.NonCapturingTimer.Sources - 3.0.0-preview9.19415.2
- Microsoft.Extensions.Logging - 3.0.0-preview9.19415.2

Dependency coherency updates

- Microsoft.NETCore.App.Runtime.win-x64 - 3.0.0-preview9-19414-17 (parent: Microsoft.Extensions.Logging)
- Microsoft.Extensions.DependencyModel - 3.0.0-preview9-19414-17 (parent: Microsoft.Extensions.Logging)
- Microsoft.NETCore.App.Ref - 3.0.0-preview9-19414-17 (parent: Microsoft.Extensions.Logging)
- Microsoft.Net.Compilers.Toolset - 3.3.0-beta3-19415-01 (parent: Microsoft.Extensions.Logging)

* Update dependencies from https://github.com/aspnet/Extensions build 20190814.4

- Microsoft.AspNetCore.BenchmarkRunner.Sources - 3.0.0-preview9.19414.4
- Microsoft.AspNetCore.Testing - 3.0.0-preview9.19414.4
- Microsoft.Extensions.CommandLineUtils.Sources - 3.0.0-preview9.19414.4
- Microsoft.Extensions.HashCodeCombiner.Sources - 3.0.0-preview9.19414.4
- Microsoft.Extensions.NonCapturingTimer.Sources - 3.0.0-preview9.19414.4
- Microsoft.Extensions.Logging - 3.0.0-preview9.19414.4

* Update dependencies from https://github.com/aspnet/Extensions build 20190815.2

- Microsoft.AspNetCore.BenchmarkRunner.Sources - 3.0.0-preview9.19415.2
- Microsoft.AspNetCore.Testing - 3.0.0-preview9.19415.2
- Microsoft.Extensions.CommandLineUtils.Sources - 3.0.0-preview9.19415.2
- Microsoft.Extensions.HashCodeCombiner.Sources - 3.0.0-preview9.19415.2
- Microsoft.Extensions.NonCapturingTimer.Sources - 3.0.0-preview9.19415.2
- Microsoft.Extensions.Logging - 3.0.0-preview9.19415.2

* React to namespace removal
\n\nCommit migrated from 543a1ae2a3
2019-08-15 20:12:47 +00:00
Pranav K 778246c674 Add tooling support for TypeScript files to RazorSDK (dotnet/aspnetcore-tooling#971)
Fixes https://github.com/aspnet/AspNetCore/issues/12840\n\nCommit migrated from 304cafcffe
2019-08-14 14:22:46 -07:00
Javier Calvarro Nelson 70268e7c82 [Blazor][Fixes dotnet/aspnetcore-tooling#12933] Remove the need for a custom property when resolving static web assets from referenced projects
* Removes the need for a custom property when resolving static web assets from referenced projects
* Rolls in several improvements suggested by the MSBuild folks to improve performance.\n\nCommit migrated from 5335245b08
2019-08-14 15:59:44 +02:00
Pranav K 2317fc9687 Fixup tests
\n\nCommit migrated from 5707808e9f
2019-08-13 12:39:55 -07:00
Pranav K 80d6dfea89 Give "builder" a less discoverable name
Fixes https://github.com/aspnet/AspNetCore/issues/12991
\n\nCommit migrated from 7e974693b6
2019-08-13 12:39:55 -07:00
Pranav K 32196f8023 Use globally qualified type name when generating TypeInference (dotnet/aspnetcore-tooling#946)
The code-generated TypeInference type resides in a custom namespace.
Any types that it refers to in user code must be qualified using the "global::" prefix
to avoid type \ namespace conflicts.

Fixes https://github.com/aspnet/AspNetCore/issues/12116\n\nCommit migrated from f0e09e4a97
2019-08-13 12:35:37 -07:00
Ajay Bhargav Baaskaran 7e8807ae64 Print warning when reference assembly is not found (dotnet/aspnetcore-tooling#953)
* Print warning when reference assembly is not found

* Added test
\n\nCommit migrated from d8a5e39739
2019-08-12 21:30:22 -07:00
Ajay Bhargav Baaskaran 2abbff5b3b Don't coalesce <option> tag in ComponentMarkupBlockPass
\n\nCommit migrated from 728a7230b0
2019-08-12 09:10:09 -07:00
Ajay Bhargav Baaskaran 7fc5972613 Fix @inject intellisense (dotnet/aspnetcore-tooling#949)
* Fix @inject intellisense

* update
\n\nCommit migrated from d953ec40c3
2019-08-09 13:13:18 -07:00
N. Taylor Mullen 88a002a918 Enable Component parameter delegates to not require @() at design time.
- The core issue is that the Razor parser splits attribute values based on whitespace. Therefore, when it encounters `@onclick="() => Foo()"` it breaks it into three different tokens based on the spaces involved. This separation results in multiple adjacent classified spans for C# which is currently unsupported by WTE due to multiple seams overlapping. All that being said we have the opportunity to be smarter when generating attribute values that we feel can be simplified or collapsed; because of this in this PR I changed the `TagHelperBlockRewriter` phase to understand "simple" collapsible blocks and to then collapse them. In the future a goal would be to take a collapsing approach to all potential attributes and then to re-inspect each token individually at higher layers in order to decouple our TagHelper phases from what the parser initially parses.
- Added an integration and parser test to validate the new functionality. Most of the testing is from the fact that no other tests had to change because of this (it doesn't break anything).
- Added a new SyntaxNode method `GetTokens` that flattens a node into only its token representation.

aspnet/AspNetCoredotnet/aspnetcore-tooling#11826
\n\nCommit migrated from 80f1bc76a4
2019-08-07 10:57:52 -07:00
Pranav K 56a440ec9d Make launchSettings.json a content item that does not get copied to b… (dotnet/aspnetcore-tooling#928)
* Make launchSettings.json a content item that does not get copied to build or publish directory

Fixes https://github.com/aspnet/AspNetCore/issues/12841

\n\nCommit migrated from d0dc8140e2
2019-08-06 13:00:16 -07:00
Pranav K 2699268bc3 Prevent StackOverflows when assemblies have recursive references (dotnet/aspnetcore-tooling#901)
* Prevent StackOverflows when assemblies have recursive references

https://github.com/aspnet/AspNetCore/issues/12693

\n\nCommit migrated from 43776c1864
2019-08-05 09:19:26 -07:00
Ryan Nowak 7312e7cc38 Move RenderTreeBuilder to another castle
Don't even try to review this xD

This change moves RenderTreeBuilder to the .Rendering namespace and then
updates literally every component baseline.
\n\nCommit migrated from aa8624f46e
2019-08-04 20:43:21 -07:00
Pranav K f31e951f5d Fixup test
\n\nCommit migrated from 5eb86992f4
2019-08-03 17:29:13 -07:00
Pranav K a202e6cfa6 Update
\n\nCommit migrated from 98d9bda3a2
2019-08-03 16:59:08 -07:00
N. Taylor Mullen e2d476cc6f Associate C# version with each Razor extension version.
- Roslyn now default to 8.0 C# so it's no longer specified in a users project file. Because of this restriction we can no longer see the projects `LangVersion` when generating Razor files. Meaning, we can't conditionally generate C# 8.0 aware code because our Razor default is not C# 8.0. Therefore, when we detect that the C# lang version hasn't been provided we don't set a C# version and instead rely on what the default configuration for the Razor project is. In practice this looks like:
  - MVC1.X = C# 7.3
  - MVC2.X = C# 7.3
  - MVC Latest = C# 8.0
- I thought about adding a feature flags variant for `RazorCodeGenerationOptions` but decided not to since C# features are all configurable options that are based on more than just the `RazorLangVersion`.
- Added integration tests to ensure that command line builds with implicit `LangVersion`s result in proper C# nullability handling.

aspnet/AspNetCoredotnet/aspnetcore-tooling#12594
\n\nCommit migrated from f039aa9354
2019-08-02 17:14:10 -07:00
Pranav K 9d594e41c5 Make launchSettings.json a content item that does not get copied to build or publish directory
Fixes https://github.com/aspnet/AspNetCore/issues/12841
\n\nCommit migrated from 34628d3066
2019-08-02 12:15:23 -07:00
Ajay Bhargav Baaskaran 6ad8b96f3e Don't fail the build on warnings (dotnet/aspnetcore-tooling#922)
* Don't fail the build on warnings

* update

* update
\n\nCommit migrated from 450a780f40
2019-08-01 13:16:33 -07:00
N. Taylor Mullen ccf56256d9 Add support for non-numeric CSharpLanguageVersions.
- We would default to improper C# language versions when given non-numeric `LangVersion`s. For instance when given `CSharpLanguageVersion.Latest` we'd default to 7.3 which was inconsistent with how the rest of the C# world functioned.
- Added a test.

aspnet/AspNetCoredotnet/aspnetcore-tooling#11139
\n\nCommit migrated from a08d0b0673
2019-07-31 11:06:52 -07:00
N. Taylor Mullen 5ea6ba40cd Update Roslyn dependencies to align with SDK and VS.
- Updated instances of our code to no longer use reference type checks on `ISymbol`s. This was a new restriction added by Roslyn [here](https://github.com/dotnet/roslyn-analyzers/issues/2084). We also have a follow up AspNetCore issue [here](https://github.com/aspnet/AspNetCore/issues/12747) to bring these level of changes to AspNetCore.
- Had to pin `Microsoft.CodeAnalysis.Analyzers` in our VSIX projects in order to workaround version conflicts of `Microsoft.CodeAnalysis.Analyzers`. The version conflict is introduced from our dependency on `Microsoft.VisualStudio.ProjectSystem.Managed.VS`. It transitively depends on `Microsoft.CodeAnalysis.Analyzers` `2.6.3` where as our latest Roslyn bits transitively depend on `Microsoft.CodeAnlalysis.Analyzers` `2.9.4`. Tried updating to the latest, private, `Microsoft.VisualStudio.ProjectSystem.Managed.VS` but it also had the version conflict.
- Pinned our runtime bits to the latest public Roslyn NuGet package and pinned our tooling bits to the latest private NuGet package (both are compatible flavors of 3.3.0).
\n\nCommit migrated from 83d5e2c36f
2019-07-31 10:52:21 -07:00