Commit Graph

2105 Commits

Author SHA1 Message Date
Ryan Nowak 81904f579a Add definitions for Document Services
This change adds mock ups of the interfaces that we've been designing as
part of Razor FAR as well as the implementations. This isn't wired up to
anything yet in this PR, but the basic functionality here is stable
enough for us to stabilize and review.

For now we have the interface definitions in the Razor codebase until a
build of Roslyn is available with these definitions + IVT for us to use
them.
2018-10-22 20:47:31 -07:00
Ryan Nowak baa71375d0
Add and process notifications for Imports (#2656)
This builds support for tracking the effect of changes to imports on
other documents, and completes our model for being able to keep
generated code up to date.
2018-10-19 21:39:43 -07:00
N. Taylor Mullen 333989af7a Update to use latest completion APIs 2018-10-19 15:10:19 -07:00
N. Taylor Mullen c371fa29fe Make it so the RazorDirectiveCompletionProvider doesn't load extra assemblies in C#.
- Added a layer of indirection to allow for proper Lazy loading of Razor and future async completion specific assemblies.
2018-10-19 15:10:19 -07:00
Ryan Nowak 04eb1e677c Update deps and fix VSIX signing
So, it turns out the VSSDK added a feature that lets us suppress
assemblies brought in by package references. YAY!
2018-10-18 14:20:08 -07:00
Ryan Nowak 4927525519 Fix a bug in the span mapping code
This wasn't quite doing the right thing, and it's simpler than we make
it to be.
2018-10-18 13:46:24 -07:00
Ryan Nowak bafe1b27ff Add line numbers for design time directives
Addresses a blocking issue for FAR of types when used in user-code in a
directive. The FAR infrastructure is skipping over the directive code
because it's mapped to `#hidden`. As you can see in the code, the token
provided by the user is already included in the projection mappings.

I think we didn't do this before because we didn't expect this code to
need line numbers - it's not really debuggable, and design-time codegen
doesn't happen when you build the project.

I think it's OK for now that we don't line-map (or include) directives
based on view imports. If you trigger FAR on an `@inject ...` in an
import for instance, you'll find the reference for the view import file.
That seems pretty good, and the only cases I can really imagine it being
broken would be for go-to-definition (within a Razor view). Lets revisit
in the future based on feedback.
2018-10-18 13:46:24 -07:00
Ryan Nowak edd1ba4698 Update VS dependencies 2018-10-16 17:58:03 -07:00
N. Taylor Mullen f835291cb6 Allow identical DocumentSnapshot sources to trigger output changes.
- Prior to this project changes would trigger re-parses which would then be thrown away because source versions were identical.
- Added test to verify new SetOutput behavior.

aspnet/Razor.VSCode#184
2018-10-16 16:09:17 -07:00
Nate McMaster 71ed050fa4
Merge branch 'release/2.2' 2018-10-04 16:05:50 -07:00
Nate McMaster 82276ece2f
Use the Microsoft400 code-signing cert for the Razor VSIX assembly 2018-10-04 14:50:26 -07:00
Ryan Nowak fb9a02ef5a Merge branch 'release/2.2' 2018-10-01 17:05:44 -07:00
Ryan Nowak 5aad6c7b42 Revert "Update dependencies.props"
This reverts commit f463325e9a.

Temporarily reverting this to see if it unbreaks the build.
2018-10-01 13:00:44 -07:00
Ryan Nowak f425134ffe Fix #2265 - Port Blazor testing improvements
The Blazor test infrastructure made a copy of the code in Razor and then
added some more features. This change backports the features needed for
the style of test we're using in Blazor.

I updated the MVC integration tests to use the new style, but I think
there's limited value in trying to rev all of the old tests.

One feature in particular that I removed from the old infrastructure was
the automatic inference of imports based on the file system. This
feature was wierd and doesn't parallel how these features work in
actuality. It's easy and more natural to test imports in new style
tests.
2018-10-01 13:00:44 -07:00
ASP.NET CI f463325e9a Update dependencies.props
[auto-updated: dependencies]
2018-09-30 12:28:07 -07:00
ASP.NET CI 7d09cd2972 Update dependencies.props
[auto-updated: dependencies]
2018-09-30 12:25:31 -07:00
Nate McMaster 119eb0dae7
Add missing package version variable 2018-09-28 18:03:10 -07:00
Nate McMaster ada2b17160
automated: merge branch release/2.2 2018-09-28 17:27:35 -07:00
Nate McMaster 864a17c9a5
automated: bulk infrastructure updates. Update bootstrapper scripts and remove unnecessary signing properties 2018-09-28 17:10:38 -07:00
Ajay Bhargav Baaskaran dc70687f0e Test tag helper directives correctly 2018-09-27 16:37:28 -07:00
Ajay Bhargav Baaskaran 93e7e735a4 Test Directives correctly 2018-09-27 15:47:21 -07:00
Eilon Lipton 538153f311
Update LICENSE.txt 2018-09-27 15:21:53 -07:00
Nate McMaster e4ebae107c
Fix the path to SignedPackageFile items and include the VSIX .dll in code signing 2018-09-26 15:19:28 -07:00
Ryan Nowak 7a52baf18f Fix #2054 - make TagHelperResolutionResult internal
This type isn't used by WTE anymore.
2018-09-24 10:35:17 -07:00
ASP.NET CI ecbaf35d2f Update dependencies.props
[auto-updated: dependencies]
2018-09-23 19:27:51 +00:00
ASP.NET CI 3f916e5f28 Update dependencies.props
[auto-updated: dependencies]
2018-09-23 12:25:05 -07:00
N. Taylor Mullen d54ffabd26 Update LanguageServer IVT. 2018-09-21 12:51:36 -07:00
Pranav K a898f98a7f Print an error when using Razor build with an older version of the Sdk 2018-09-20 13:14:06 -07:00
Pranav K f70df60435 Move RazorGenerate and RazorTagHelper tasks in to the Sdk
Loading multiple versions of a task assembly result results in MSBuild on .NET Core to fail.
Addressing this by moving the tasks in to the Sdk and renaming it. This should avoid
immediate issues for a 2.1 and 2.2 project co-existing and future proofs 2.2 and later.

Fixes https://github.com/aspnet/Razor/issues/2553
2018-09-19 10:09:56 -07:00
N. Taylor Mullen 2b1bdb7342 Move RazorCompletionFactsService to CodeAnalysis.Workspaces.Razor.
- Also updated workspaces test project to also compile for netcoreapp2.2.
2018-09-18 17:34:45 -07:00
Pranav K 7144add4ad
Check for ITagHelper in tag helper feature provider (#2602)
Fixes #2482
2018-09-18 16:52:34 -07:00
Pranav K fc86cc3ca1 Allow Invoke \ InvokeAsync methods for a ViewComponent to be defined in base types
Fixes https://github.com/aspnet/Mvc/issues/8397
2018-09-18 13:38:48 -07:00
Ryan Nowak 060698a52f Update to use non-capturing timer 2018-09-17 11:08:06 -07:00
ASP.NET CI b20921741c Update dependencies.props
[auto-updated: dependencies]
2018-09-16 19:26:41 +00:00
ASP.NET CI 2bf00ff9a6 Update dependencies.props
[auto-updated: dependencies]
2018-09-16 12:24:47 -07:00
Ben Adams 5e083c371b Don't capture asynclocals onto Timer 2018-09-13 17:28:30 -07:00
Ryan Nowak 40080f3637 add issue numbers 2018-09-13 16:04:17 -07:00
Ryan Nowak 8d537a3c43 Add Issue numbers 2018-09-13 16:03:36 -07:00
Ryan Nowak 1e8e541f65 Clean up timeout reporting
This was sometimes reporting a null when the timeout takes place. We
need to throw with a timeout for real
2018-09-13 15:40:37 -07:00
Ryan Nowak b67fa0664d Check for spans that are missing from output 2018-09-13 14:51:46 -07:00
N. Taylor Mullen d2d84d00f5 Allow GeneratedCodeContainer to accept initial output. 2018-09-10 16:14:25 -07:00
N. Taylor Mullen da935bfa95 Generated document output persists result to generated code container.
- Prior to this we had a `BackgroundDocumentGenerator` that would constantly be updating generated code containers. With this changes we've changed the details in how a `GeneratedCodeContainer` can be mutated. It can now be touched from any thread and is updated when an underlying `DocumentSnapshot` has available content. However, if a generated output comes through that's older then the last seen output we no-op.
- Removed `BackgroundDocumentGenerator` SetOutput logic.
- Updated tests to react to new behavior of `GetGeneratedOutputAsync`.
- Added new test to verify getting generated output results in the setting of the host documents output.
2018-09-10 15:24:35 -07:00
Ajay Bhargav Baaskaran f93f67a53a
Better logging to help debug test failure (#2576) 2018-09-10 14:17:53 -07:00
Ajay Bhargav Baaskaran 96709c4d77
Actually verify classified spans (#2575) 2018-09-10 10:48:47 -07:00
ASP.NET CI 3bcfa1c87a Update dependencies.props
[auto-updated: dependencies]
2018-09-09 19:27:24 +00:00
ASP.NET CI 51868b4dc0 Update dependencies.props
[auto-updated: dependencies]
2018-09-09 12:26:19 -07:00
N. Taylor Mullen e8f8727193 Merge branch 'release/2.2'
# Conflicts:
#	build/dependencies.props
#	korebuild-lock.txt
#	version.props
2018-09-05 17:24:25 -07:00
N. Taylor Mullen 3a281b8f58 Allow TagHelpers to occur after unclosed C# blocks without assert failures.
- This scenario wasn't considered previously.

#2566
2018-09-05 17:22:17 -07:00
ASP.NET CI 3a8eab1bb6 Update dependencies.props
[auto-updated: dependencies]
2018-09-05 23:57:54 +00:00
ASP.NET CI 45adbe5f7c
Update branding to 2.2.0-preview3 2018-09-05 16:35:54 -07:00