Commit Graph

572 Commits

Author SHA1 Message Date
DotNet Bot 324cf99ce3 Merged PR 12929: [internal/release/5.0] Update dependencies from dnceng/internal/dotnet-runtime
This pull request updates the following dependencies

[marker]: <> (Begin:d7d10d70-26ab-4663-2902-08d89c6af29b)
## From https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- **Subscription**: d7d10d70-26ab-4663-2902-08d89c6af29b
- **Build**: 20210216.14
- **Date Produced**: 2/16/2021 11:36 PM
- **Commit**: f27d33729518f5aa478aa818b7b4f54a4d50bef1
- **Branch**: refs/heads/internal/release/5.0

[DependencyUpdate]: <> (Begin)

- **Updates**:
  - **System.Drawing.Common**: [from 5.0.2 to 5.0.2][1]
  - **Microsoft.NETCore.App.Internal**: [from 5.0.4-servicing.21116.6 to 5.0.4-servicing.21116.14][1]
  - **Microsoft.NETCore.App.Runtime.win-x64**: [from 5.0.4 to 5.0.4][1]
  - **Microsoft.NETCore.BrowserDebugHost.Transport**: [from 5.0.4-servicing.21116.6 to 5.0.4-servicing.21116.14][1]
  - **System.Text.Encodings.Web**: [from 5.0.0 to 5.0.1][2]

[1]: https://dev.azure.com/dnceng/internal/_git/dotnet-runtime/branches?baseVersion=GC10fccb8&targetVersion=GCf27d337&_a=files
[2]: https://dev.azure.com/dnceng/internal/_git/dotnet-runtime/branches?baseVersion=GCcf258a1&targetVersion=GCf27d337&_a=files

[DependencyUpdate]: <> (End)

[marker]: <> (End:d7d10d70-26ab-4663-2902-08d89c6af29b)
2021-02-17 20:43:45 +00:00
Steve Sanderson 1d2877ed33
Restore Razor v3 whitespace behavior when langversion < 5. Fixes #28085 (#28191)
* Add legacy 3.1 fork of the whitespace tests, with baselines based on 5.0 behavior

* Remove non-applicable Legacy_3_1_WhiteSpace_WithPreserveWhitespace test

* Set the legacy tests to run with RazorLanguageVersion.Version_3_0

* Add legacy fork of the whitespace pass

* Consolidate both versions of whitespace pass and show it doesn't affect the baselines

* Revert BOM change

* Fix test
2020-12-10 09:23:28 -08:00
Pranav K 78d44383c8
Allow RazorTagHelper task to be invoked by MSBuild targets that do not specify ToolExe (#28416)
The RazorTagHelper task in the SDK is invoked by targets outside the SDK.
Consequently, any new requirements on the tasks need to be compatible with these versions.

In 5.0, we changed the task to expect the path to be passed in by the ToolExe property. This changes allows
using dotnet.exe from the ambient PATH to be used instead (the previous behavior)
2020-12-08 14:17:29 -08:00
Pranav K f1ed2df88f
Include .Views.dll from single file in .NET Core 3.1 apps (#27897)
For 5.0, we made a change to exclude .Views.dll from the single file bundle as a reaction
to changes in bundling. However the SDK change also applied to .NET 3.1 apps. This change
limits the exclusion to 5.0 and newer apps.

Fixes https://github.com/dotnet/aspnetcore/issues/27831
2020-11-19 11:41:00 -08:00
Doug Bunting 415875625c
[release/5.0] Update API baseline files (#27653)
* Move all PublicAPI.Unshipped.txt files to PublicAPI.Shipped.txt
- we have now shipped this API surface

* Add eng/PublicAPI.empty.txt file
- make it easier to add new implementation projects

* Add missing public API baseline files
- #26784 part 1/2
- a few unexpected files turned up missing beyond the #26784 list&hellip;

* Reference Microsoft.CodeAnalysis.PublicApiAnalyzers more often
- #27484 part 2/2
- emit errors when API baseline files are missing
- update categorization of some projects
  - specification tests are not implementation projects
    - but _were_ project reference providers (keep that)
  - correct `$(IsTestAssetProject)` setting for Razor shims et cetera
  - correct `$(IsSampleProject)` setting for casing of some Sample directories
  - Microsoft.AspNetCore.Analyzer.Testing should be treated as test asset
- add `$(AddPublicApiAnalyzers)` property to support overrides
  - e.g. for `msbuild` task projects and tools

nit:
- remove useless `$(IsTestProject)` setting in a specification test project
- wrap some long `Condition`s

* Do not run public API analyzer in `RazorCoreCompile` target

* Remove old `$(EnableApiCheck)` settings
- property does nothing
- also remove a dangling ApiCheck comment
2020-11-12 10:28:52 -08:00
Doug Bunting 352ad1a980
Rebrand and update for 5.0.1 (#27406)
* Move to 5.0.1 versions

* Move to GA .NET SDK
- required for some tests to pass

* Remove feeds that won't be needed after 5.0.0 is GA

* Cherry-pick `$(CrossgenOutput)` and Directory.Build.*.in changes from master
- [master] Update dependencies from dotnet/runtime dotnet/efcore (#26788)
    - 219ecd688012
- when project template tests run test assets, need latest shared Fx bits
- hit `BadImageFormatException`s otherwise
    - test projects build against uploaded packages
    - those packages reference the 5.0.1 shared framework
    - the ASP.NET parts of the 5.0.1 shared Fx are `crossgen`ed to target Windows

- Use runtime and ref/ assemblies matching repo in Helix testing
    - add Directory.Build.*.in files based on project template test infrastructure
    - use files as import boundary where the project doesn't create its own Directory.Build.* files
    - ensure `dotnet-watch` tests also use the latest runtime and ref/ assemblies

- Extend Helix Directory.Build.* workarounds
    - generate Directory.Build.* files when restoring any projects
    - include generated files in Helix runs needing the latest runtime
    - copy generated files when testing `dotnet-watch` locally
    - include generated content in Microsoft.NET.Sdk.BlazorWebAssembly.IntegrationTests test assets
        - remove duplicate settings from existing Directory.Build.* files
    - ensure shared framework and targeting packs are laid out under .dotnet/ before test assets restore

- Disable `crossgen` when building for Helix runs
    - make `$(CrossgenOutput)` property override-able
    - use override in CI jobs that submit to other platforms
        - for now, leave the ARM64 Helix jobs alone (build on Ubuntu, run in Debian)

* Correct an `$(IsTestAssetProject)` setting
- affected projects are all test assets or provide test support
- without this, a number of the projects are incorrectly marked as shipping

* Baseline released 5.0.0 packages
- this is a complete rewrite of eng/Baseline.xml
  - based on the 5.0.0 MergedManifest.xml file

* Add 5.0.0 PackageOverrides.txt and PlatformManifest.txt files
- need consistent versions when servicing targeting packs

Co-authored-by: dotnet-maestro[bot] <42748379+dotnet-maestro[bot]@users.noreply.github.com>
2020-11-10 09:51:47 -08:00
Javier Calvarro Nelson dd2754c2c9
Fix up to date check (#26891)
Description
We had support for the UpToDateCheck in Visual Studio with CSS isolation but the target was not being run at design time. This change introduces a new target that runs at design time and makes sure the UpToDateCheckInput and UpToDateCheckBuilt ItemGroups are populated.

Customer Impact
When using CSS isolation from within Visual Studio, a change in a scoped CSS file is not picked up and the project is not rebuilt as a result.
Regression?
No. This feature was introduced in 5.0.

Risk
Low. The new target we added only runs as part of Visual Studio builds.

Fixes
#26843
2020-10-14 22:29:45 -07:00
Pranav K a6f667bbb3
Add SkipAnalyzers=true to component declaration compilation (#25736)
* Update to latest SDK

* React to platform compatibility analyzer warnings
* React to new warnings
* Add platform compatibility attributes

* Add SkipAnalyzers=true to component declaration compilation
Fixes https://github.com/dotnet/aspnetcore/issues/25365

* Update eng/Version.Details.xml

* Update Versions.props

* Update Version.Details.xml

* Update Versions.props

* Update Version.Details.xml
2020-09-14 12:41:37 -07:00
Pranav K ab5dfe5374
Allow dotnet-watch to look for changes to .razor.css files (#25792)
Fixes https://github.com/dotnet/aspnetcore/issues/25483
2020-09-13 14:46:47 -07:00
Pranav K 5aa4a7cd41
Avoid using PATH to find dotnet.exe in RazorSDK tasks (#25750)
This pattern is pretty identical to what we have in other SDKs. It allows
using the SDK when dotnet isn't in the path such as the https://github.com/dotnet/aspnetcore/issues/25746.

Fixes #14432
2020-09-10 16:30:55 -07:00
Pranav K 690c717314
Update to latest SDK (#25421)
* React to platform compatibility analyzer warnings
* React to new warnings
* Add platform compatibility attributes
2020-09-10 15:12:17 -07:00
Kevin Pilch 3692e122ff
Add Public API baselines for Razor (#25637) 2020-09-10 13:27:09 -07:00
Brennan 2fb2055d1e
Quarantine BundlesScopedCssFiles_UpdatesBundleWhenContentsChange (#25656) 2020-09-06 11:52:39 -07:00
Javier Calvarro Nelson 3d38d397ae
[Blazor] CSS isolation follow-ups (#25565)
This change includes several improvements to CSS isolation that we have gathered from validation and usage feedback.

We have switched from producing a single scoped CSS bundle file for the entire application with all the scoped css files from the current project, referenced projects and package projects to producing one bundle per referenced project/package and to include those bundles into an "application" bundle throught CSS @import statements.

We have cleaned up the bundle names to make them more unique by including the project name on them and we have also cleaned up the bundle extensions.

We have decided to put the individual bundles generated for the project scoped css assets into the static web assets base path of the project, so that when developers reference assets from their scoped css files (like using the CSS url function) the path they use matches what they have inside their library wwwroot folder.

We have decided to put the application bundle on the root path of the application provided that the developer has not overriden the default StaticWebAssetsBasePath.

This is so that the bundle location is consistent across templates, and can be found at ProjectName.styles.css independent of whether the app is a blazor webassembly app or a server side blazor app.

For cases where the default StaticWebAssetBasePath has been overriden, the value is respected and the bundle is placed at $(StaticWebAssetBasePath)/ProjectName.styles.css.

Packaged razor class libraries with scoped css files now package a "project" bundle instead of the individual files.
2020-09-04 10:54:44 -07:00
Doug Bunting 7579b300f7
Mark some projects as non-packable or non-shippable (#25468)
- used `$(IsTestAssetProject)` in src/Razor/test; slightly more correct
  - we don't have a special category for test infrastructure projects
2020-08-31 22:46:53 -07:00
Doug Bunting 1f84e28882
Use `$(TargetFrameworkIdentifier)` and `$(TargetFrameworkVersion)` consistently (#25428)
- always use `$([MSBuild]::VersionXYZ(...))` for version checks
- use `$(NETCoreAppFrameworkIdentifier)` where it's available
- move `$(KnownAppHostPackOrFrameworkReferenceTfm)` setting to Directory.Build.props
  - use it to correct `@(KnownFrameworkReference)` updates
  - metadata of those items still uses `netcoreapp5.0`
  - see also https://github.com/dotnet/efcore/pull/22279#discussion_r478674176

nits:
- do not assume `$(TargetFrameworkVersion)` starts with a 'v'; valid w/o it
- add `$(_IsMicrosoftNETCoreApp20OrOlder)` property in OpenAPI targets file
  - evaluate the `Condition` once instead of three times
2020-08-31 11:36:19 -07:00
Artak f891c2b15d
Merge pull request #25256 from dotnet/prkrishn/dotnet-watch
Allow dotnet watch to refresh on changes to .razor files in reference…
2020-08-28 20:23:59 -07:00
Pranav K f733fe9967
Update src/Razor/Microsoft.NET.Sdk.Razor/src/build/netstandard2.0/Sdk.Razor.CurrentVersion.targets 2020-08-28 14:09:11 -07:00
Artak 4df35c7540
Merge pull request #25292 from dotnet/razor_source_generators
Pass generators to CSC during component discovery
2020-08-28 11:32:30 -07:00
Steve Sanderson d793f473c4
Support pseudoelements in CSS scoping (#25270)
* Support pseudoelements in CSS scoping. Fixes #25268

* CR: More test cases

* Another pseudoelement case

* Case insensitivity for single-colon pseudoelements

Not that anybody should ever want to do this

* Avoid an allocation
2020-08-28 08:37:37 -07:00
Steve Sanderson ebaaa0f01d
Fix minimized attributes when using 5.0 SDK with 3.x target (#25307)
* Write minimized attribute values explicitly for older language version

* Add tests

* Add baselines for new tests
2020-08-28 08:37:30 -07:00
William Godbe ce058f639c
Add net461 TFM to netstandard2.0 projects (#25094)
* Add net461 TFM to netstandard2.0 projects

* Fix a couple of errors

* Fix some errors

* Get rid of Sockets reference

* Respond to feedback

* net461 -> property

* Fixup clientSample

* Remove net461 from analyzers/razor

* Remove net461 from test projects

* Feedback

* Add net461 test configs

* Remove some incompatible test configs

* Fix test
2020-08-27 16:05:40 -07:00
Chris Sienkiewicz aa51b8c1d1 Remove unsupported SkipAnalyzers param 2020-08-27 15:57:56 -07:00
Chris Sienkiewicz 866df807a8 Disable compiler warnings during component discovery phase 2020-08-27 15:57:33 -07:00
Chris Sienkiewicz d9590840d9 Pass generators to CSC during component discovery 2020-08-26 18:08:24 -07:00
Pranav K 28e18c3058
Allow dotnet watch to refresh on changes to .razor files in referenced projects
dotnet-watch expects full paths to files to watch in all added items. For files in the current project, this
happens to work. However this does not work very well for files in referenced projects. Using the FullPath metadata
does not work during global evaluation, but we're able to do this in a target.

This change adds extensibility to the dotnet-watch tool that allows calling a target as part of "watch" evaluation.

Fixes https://github.com/dotnet/aspnetcore/issues/22219
2020-08-25 16:03:32 -07:00
Steve Sanderson a9b596e091
Prevent @import in scoped CSS (#25196)
* Reject @import rules in scoped CSS files

* CR feedback: Use SourceText

* CR feedback: Another test case

* Use same file reading mechanism as "generate" command
2020-08-25 09:28:14 -07:00
Steve Sanderson faf1d80af1
Follow-ups from PR 23385 (#24834)
* Make preservewhitespace use FileScopedSinglyOccurring

* Design-time experience for boolean directive tokens

* Update baselines
2020-08-24 14:02:21 +01:00
Pranav K 134850b4a2
Update rzc to ne5.0 (#25111) 2020-08-22 02:44:08 +00:00
Pranav K 3e8c5c48f0
Add support for views + SingleFileExe (#24925)
* Add support for views + SingleFileExe
2020-08-20 19:46:58 -07:00
Brennan df04381411
Quarantine flaky Razor Integration tests (#25043) 2020-08-19 14:34:12 -07:00
Martin Costello b22512de0e
Right-size Lists when created (#23714)
Create new instances of List<T> with an appropriate capacity for the items that will be added.
Use Array.Empty<T>() where appropriate, rather than create an empty list and then return it.
2020-08-19 09:45:52 -07:00
Pranav K 2f0cf8d3e9
Add support for views + SingleFileExe 2020-08-18 17:52:37 -07:00
Pranav Krishnamoorthy 4e57d1b041
Merged PR 9371: Revive support for globalization and localization in Blazor WASM
Revive support for globalization and localization in Blazor WASM

* Load icu and timezone data files
* Unskip tests

Fixes https://github.com/dotnet/aspnetcore/issues/24174
Fixes https://github.com/dotnet/aspnetcore/issues/22975
Fixes https://github.com/dotnet/aspnetcore/issues/23260
2020-08-17 09:02:18 -07:00
Pranav K 8e5533f2a3
Use BlazorWebAssemblySDK (#24371)
* Use BlazorWebAssemblySDK

* Update projects to use the BlazorSDK
* Remove tasks and targets from RazorSDK
* Remove workarounds from BlazorSDK

* Fixup

* Fixup
2020-08-11 17:29:01 +00:00
Pranav K 059e2fdc49
Remove Internal.AspNetCore.Analyzers (#24693)
* Remove Internal.AspNetCore.Analyzers

This resolves build flakiness caused by referencing the analyzer:

```
2020-08-07T21:22:39.1149296Z ##[error].dotnet\sdk\5.0.100-rc.1.20379.10\Microsoft.Common.CurrentVersion.targets(4188,5): error MSB3026: (NETCORE_ENGINEERING_TELEMETRY=Build)
Could not copy "F:\workspace\_work\1\s\artifacts\obj\Internal.AspNetCore.Analyzers\Release\netstandard1.3\Internal.AspNetCore.Analyzers.dll"
to "F:\workspace\_work\1\s\artifacts\bin\Internal.AspNetCore.Analyzers\Release\netstandard1.3\Internal.AspNetCore.Analyzers.dll". Beginning retry 1 in 1000ms.
The process cannot access the file 'F:\workspace\_work\1\s\artifacts\bin\Internal.AspNetCore.Analyzers\Release\netstandard1.3\Internal.AspNetCore.Analyzers.dll' because it is being used by another process.
```

The analyzer checks if pubternal types are being exposed in public APIs. We no longer author pubternal types, so this is no longer a concern.

* Remove DisablePubternalApiCheck
2020-08-11 03:08:55 +00:00
Eric Erhardt d25a7658c8
Remove LinkerWorkaround.xml (#24748)
* Remove LinkerWorkaround.xml

The workaround file is no longer needed, now that the underlying bugs are fixed in the dotnet/runtime libraries.

Fix #23262

* Also remove LinkerWorkaround from Components/WebAssembly
2020-08-10 18:59:59 +00:00
dotnet-maestro[bot] f52077f599
[master] Update dependencies from dotnet/runtime dotnet/efcore (#24496)
* React to SDK changes

* Skip instead of quar

* Rely on transitive Microsoft.Bcl.AsyncInterfaces since it's now part of DependencyInjection.
    - This was introduced as part of: https://github.com/dotnet/runtime/pull/40189
    - Prior to this we'd get version conflicts for our referenced Bcl.AsyncInterfaces.

* Update global.json
    - move to RC1 SDK

* React to runtime nullability changes with DataAnnotations.
    - ValidationResult was updated to declare its nullability: a9009db46e (diff-8e86bc8fee3eb0242c5b8368dfabe065)

* Stop using HttpRequestMessage.Properties in favor of non-obsoleted HttpRequestMessage.Options.
    - Introduced in 3eda592cf4

* Stop using more HttpRequestMessage.Properties in Component's web assembly project.
    - Introduced in dotnet/runtime@3eda592

* Update dependencies from https://github.com/dotnet/runtime build 20200804.16

System.ComponentModel.Annotations , System.Diagnostics.DiagnosticSource , System.Diagnostics.EventLog , Microsoft.Extensions.Logging , Microsoft.Extensions.Logging.Abstractions , Microsoft.Extensions.Logging.Configuration , Microsoft.Extensions.Logging.Console , Microsoft.Extensions.Logging.Debug , Microsoft.Extensions.Logging.EventLog , Microsoft.Extensions.Logging.EventSource , Microsoft.Extensions.Logging.TraceSource , Microsoft.Extensions.Options , Microsoft.Extensions.Options.ConfigurationExtensions , Microsoft.Extensions.Options.DataAnnotations , Microsoft.Extensions.Primitives , Microsoft.Extensions.Internal.Transport , Microsoft.Extensions.Http , Microsoft.Extensions.Hosting , Microsoft.Extensions.Caching.Abstractions , Microsoft.Extensions.Caching.Memory , Microsoft.Extensions.Configuration , Microsoft.Extensions.Configuration.Abstractions , Microsoft.Extensions.Configuration.Binder , Microsoft.Extensions.Configuration.CommandLine , Microsoft.Extensions.Configuration.EnvironmentVariables , Microsoft.Extensions.Configuration.FileExtensions , Microsoft.Extensions.Configuration.Ini , Microsoft.Extensions.Configuration.Json , Microsoft.Extensions.Configuration.UserSecrets , Microsoft.Extensions.Configuration.Xml , Microsoft.Extensions.DependencyInjection , Microsoft.Extensions.DependencyInjection.Abstractions , Microsoft.Extensions.DependencyModel , Microsoft.Extensions.FileProviders.Abstractions , Microsoft.Extensions.FileProviders.Composite , Microsoft.Extensions.FileProviders.Physical , Microsoft.Extensions.FileSystemGlobbing , Microsoft.Extensions.HostFactoryResolver.Sources , Microsoft.Extensions.Hosting.Abstractions , Microsoft.NETCore.App.Runtime.win-x64 , Microsoft.NETCore.Platforms , Microsoft.Win32.Registry , Microsoft.Win32.SystemEvents , Microsoft.NETCore.App.Internal , Microsoft.NETCore.App.Ref , System.Drawing.Common , System.Text.Encodings.Web , System.Text.Json , System.Threading.Channels , System.Windows.Extensions , System.ServiceProcess.ServiceController , System.Security.Principal.Windows , System.IO.Pipelines , System.Net.Http.Json , System.Net.Http.WinHttpHandler , System.Net.WebSockets.WebSocketProtocol , System.Reflection.Metadata , System.Resources.Extensions , System.Runtime.CompilerServices.Unsafe , System.Security.AccessControl , System.Security.Cryptography.Cng , System.Security.Cryptography.Pkcs , System.Security.Cryptography.Xml , System.Security.Permissions
 From Version 5.0.0-rc.1.20370.4 -> To Version 5.0.0-rc.1.20404.16

* Ignitor to 5.0

* Constants

* Update dependencies from https://github.com/dotnet/efcore build 20200805.3

Microsoft.EntityFrameworkCore.Tools , Microsoft.EntityFrameworkCore.SqlServer , dotnet-ef , Microsoft.EntityFrameworkCore , Microsoft.EntityFrameworkCore.Relational , Microsoft.EntityFrameworkCore.Sqlite , Microsoft.EntityFrameworkCore.InMemory
 From Version 5.0.0-rc.1.20372.13 -> To Version 5.0.0-rc.1.20405.3

Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
Co-authored-by: Pranav K <prkrishn@hotmail.com>
Co-authored-by: wtgodbe <wigodbe@microsoft.com>
Co-authored-by: N. Taylor Mullen <nimullen@microsoft.com>
Co-authored-by: Justin Kotalik <jukotali@microsoft.com>
2020-08-05 18:42:25 -07:00
Tanay Parikh 29ceed2b2a
Razor TagHelperDescriptor Hashing (#24551)
* Razor TagHelperDescriptor Hashing and Caching

1/2 PRs for https://github.com/dotnet/aspnetcore/issues/23170

The other PR will be in aspnetcore-tooling to utilize these changes.

https://github.com/dotnet/aspnetcore-tooling/pull/2307
2020-08-04 13:06:42 -07:00
Doug Bunting e13368391b
Keep `@(Reference)` metadata when creating `@(ProjectReference)` items (#21567)
- #20818, fix e.g. references to Microsoft.Web.Xdt.Extensions in our packages
- make `@(Reference)` items much more broadly applicable
- emit an error when `@(ProjectReference)` is used instead of `@(Reference)`
    - then get rid of the errors (!!)
- rename a couple of projects to match their assembly names
    - then regenerate the `@(ProjectReferenceProvider)` items
- switch intersection approach from Exclude / Exclude to Copy / Update / Copy

Projects of particular interest:
- src/DefaultBuilder/src/Microsoft.AspNetCore.csproj
    - honouring metadata left e.g. Microsoft.AspNetCore.Components.WebAssembly.DevServer package unchanged
    - removed redundant metadata after that confirmation
- src/Razor/tools/Microsoft.AspNetCore.Razor.Internal.Transport/
    - content of this package unchanged but metadata avoids extra work
    - add a comment about the extra work
- src/SiteExtensions/LoggingAggregate/src/Microsoft.AspNetCore.AzureAppServices.SiteExtension/
    - success! removes Microsoft.Web.Xdt.Extensions dependency from the package
- src/SiteExtensions/Runtime/Microsoft.AspNetCore.Runtime.SiteExtension.pkgproj
    - add a `Condition` to avoid an ordering issue I hit here
- src/Tools/Extensions.ApiDescription.Server/src/
    - avoid errors the new build ordering and timing caused

Separately, up the timeout in the `<DownloadFile />` task
- hit repeated timeouts downloading dotnet-runtime-5.0.0-rc.1.20370.4-win-x64.zip

nits:
- remove dupe `@(Reference)` item in Microsoft.AspNetCore.Components.WebAssembly.DevServer.csproj
- remove useless `%(ProjectReference.IsImplicitlyDefined)` metadata as well as its misspellings
- remove extra spaces from ProjectReferences.props
- clean up a few comments in ResolveReferences.targets

* !fixup! Correct other references to renamed projects
2020-08-04 10:05:55 -07:00
Pranav K f495fcb151
Avoid doing unncecessary work when generating component declaration files. (#24445)
The output of the declaration file for Razor components are unaffected by all inputs other than the input .razor file.
Consequently we can avoid regenerating these files if the output is newer than the input. This is the same heuristic we apply to Blazor WebAsssembly's
compression artifacts.

This PR combines these two improvements for a ~90ms (10%) improvement in the inner loop.

```
       17 ms  GenerateBlazorWebAssemblyBootJson          1 calls
       22 ms  Copy                                       8 calls
       39 ms  ProcessFrameworkReferences                 1 calls
       40 ms  RazorTagHelper                             1 calls
       51 ms  ResolveAssemblyReference                   1 calls
       70 ms  GetFileHash                                1 calls
       80 ms  RazorGenerate                              2 calls
      111 ms  Csc                                        2 calls

      Time Elapsed 00:00:00.95
```

```
       17 ms  GenerateBlazorWebAssemblyBootJson          1 calls
       21 ms  Copy                                       8 calls
       37 ms  ProcessFrameworkReferences                 1 calls
       51 ms  ResolveAssemblyReference                   1 calls
       70 ms  Csc                                        1 calls
       72 ms  GetFileHash                                1 calls
       79 ms  RazorGenerate                              2 calls

Time Elapsed 00:00:00.86
```

In after: Csc calls reduced to one, RazorTagHelper call removed.
2020-07-31 20:40:52 +00:00
Safia Abdalla d6ed98044d
Merge branch 'master' into merge/release/5.0-preview8-to-master 2020-07-30 10:54:18 -07:00
Steve Sanderson 5e49fc336e
In CSS scoping, support ::deep alongside other combinators (#24376) 2020-07-29 14:49:50 +01:00
Javier Calvarro Nelson 3cf39cf7e1
Update the templates CSS to leverage CSS isolation (#24380)
* Template changes

* Template changes + scope computation update

* Template updates

* tmp

* Fix style path

* Webassembly template changes

* Update tests

* Undo blazor.server.js changes

* WebAssembly cleanups

* Undo unwanted change

* Undo another unwanted change

* Fix server-side login combinator

* update tests, switch from app to div id=app
2020-07-28 15:29:57 -07:00
Tanay Parikh ed9925d21f Merge branch 'merge/release/5.0-preview8-to-master' of https://github.com/dotnet-maestro-bot/AspNetCore into merge/release/5.0-preview8-to-master 2020-07-27 09:31:46 -07:00
Steve Sanderson eb8764e80f
CSS scoping deep combinators (#24289)
* Support deep combinators with CSS scoping

* Update CSS scope computation
2020-07-24 14:51:30 -07:00
Javier Calvarro Nelson b326be1710
[Blazor] Wires up CSS isolation (#24221) (#24271)
* Wires up CSS isolation on the build.
* Transforms the css files during build.
* Bundles all scopes css into a single file and exposes it on _framework/scoped.styles.cs
* Packs pre-processed files as static web assets.
2020-07-24 08:42:35 -07:00
Javier Calvarro Nelson 3a819929a7
[Blazor] Wires up CSS isolation (#24221)
* Wires up CSS isolation on the build.
* Transforms the css files during build.
* Bundles all scopes css into a single file and exposes it on _framework/scoped.styles.cs
* Packs pre-processed files as static web assets.
2020-07-24 09:02:36 +02:00
Doug Bunting fb28ce3ec2
Simplify ref/ assembly generation (#24136)
* Simplify ref/ assembly generation
    - followup 1/2 for 5266918ed2
    - correct the Razor.Tools project
      - `%(Reference.Version)` metadata does not bleed through into `@(PackageReference)` items
      - much more work to do so than to add this special case
      - remove `$(Razor_NewtonsoftJsonPackageVersion)`
    - remove RTMVersions project and use RepoTasks instead
      - make it an error if RepoTasks is not restored before anything else builds
- add items and properties for System.Security.AccessControl

nits:
- remove invalid (ignored) metadata in Directory.Build.props and AzureAppServices.SiteExtension project
- improve / extend a couple of comments
- move `@(Reference)` items together in Microsoft.AspNetCore.Razor.Tools
2020-07-21 15:21:30 -07:00
Safia Abdalla 537ab96eb2
Merge branch 'master' into merge/release/5.0-preview8-to-master 2020-07-21 01:40:02 +00:00