Commit Graph

20802 Commits

Author SHA1 Message Date
Safia Abdalla 42ccba7f10
Update Node dependencies for Angular template (#29833) 2021-02-10 11:17:37 -08:00
Pranav K fbdf5c5b1c
Stop building dotnet-watch in AspNetCore (#29722)
* Stop building dotnet-watch in AspNetCore

* PR feedback
2021-02-09 18:43:18 -08:00
Sayed Ibrahim Hashimi 6c22e5a2f4
Update appSettings.json to have a comment for org auth cases (#29610)
* adding comment into appSettings.json for org auth scenarios

* fix to escape url
2021-02-09 18:43:06 -08:00
Chris Ross 9ab6dbd593
Fix Server_RegisterUnavailablePrefix_ThrowsActionableHttpSysException #26156 (#26203) (#29368) 2021-02-09 18:42:22 -08:00
DotNet Bot d17c7b5d3d [internal/release/5.0] Update dependencies from dnceng/internal/dotnet-runtime
- Correct System.Diagnostics.EventLog.Messages workaround for servicing

 - Update tests to expect System.Diagnostics.EventLog.Messages

 - Merge remote-tracking branch 'dnceng/internal/release/5.0' into darc-internal/release/5.0-109c1e6f-a65e-448d-b842-9621f60826f6
2021-01-15 21:57:55 +00:00
dotnet-bot 56200466cc Merge in 'release/5.0' changes 2021-01-15 19:23:52 +00:00
Brennan 264e185bdc
[Java] Catch exceptions from users and change close state correctly (#29249)
* [Java] Catch exceptions from users and change close state correctly

* log

* link
2021-01-15 11:21:48 -08:00
Doug Bunting 940fed892b
Merge branch 'release/5.0' into 'internal/release/5.0' 2021-01-14 14:14:55 -08:00
Pranav K fe37d39281
Produce correct blazor.boot.json when using StaticWebAssetBasePath (#29293) 2021-01-14 13:11:08 -08:00
Matt Mitchell ae430f3dab Merged PR 12027: [internal/release/5.0] Feed update
Feed update
2021-01-14 15:33:07 +00:00
William Godbe fc451917f8
[release/5.0] Don't include RuntimeList.xml in sharedFx archive (#29109)
* Don't include RuntimeList.xml in sharedFx archive

* Don't output RuntimeList.xml to SharedFx dir

* Add comment
2021-01-13 11:34:57 -08:00
William Godbe c63c4b1edf
Change bundle branding from .net core to .net (#28682) 2021-01-13 10:25:57 -08:00
Doug Bunting d546861a00
[release/5.0] Add option to `RazorPageGenerator` for `#line` preprocessor directives (#27765) (#29024)
- cherry-picked from 1a241fcfc2f8 in 'master' branch

- avoid new CS1504 errors because compiler can't find the ErrorPage.cshtml file
  - we override Arcade's `$(MicrosoftCodeAnalysisCSharpVersion)`
- use new option in GeneratePage.ps1 script
  - script also did not know `RazorSyntaxGenerator` had moved to this repo
- reflect latest `RazorSyntaxGenerator` processing
  - run GeneratePage.ps1
  - update README.md

nits:
- quote all paths in GeneratePage.ps1 script
- remove passive voice in README.md
2021-01-13 10:25:45 -08:00
William Godbe 21e56a8174
Include En/US loc resources in bundles (#29066) 2021-01-13 10:25:19 -08:00
Chris Ross 7991a9a2e2
Allow/ignore upgrades with bodies #17081 (#28896) 2021-01-13 10:23:53 -08:00
Artak ece60cc9f5
Added `WebAssembly` capability to Blazor WebAssembly projects (#28714)
## Description

VS has a feature of adding gRPC service reference to a project using UI. Currently that experience has no easy way to differentiate between Blazor Server and Blazor WebAssembly projects. As a result, adding gRPC reference using VS feature adds the wrong gRPC package (Grpc.AspNetCore), instead of adding `Grpc.Net.Client` and `Grpc.Net.Client.Web`, per our documentation. The package which is wrong adds framework reference transitively, which is not supported on WebAssembly.

This change adds a unique WebAssembly capability to all Blazor WebAssembly projects (through the SDK) so VS can build unique experiences those projects and also address that bug.

## Customer Impact
This particular change has no customer impact, but it will enable VS to fix their experience tracked by [this AzDO issue](https://devdiv.visualstudio.com/DevDiv/_workitems/edit/1242008)

## Regression?
- [ ] Yes
- [x] No

## Risk
- [ ] High
- [ ] Medium
- [x] Low

[Justify the selection above]

## Verification
- [ ] Manual (required)
- [ ] Automated

Not applicable as this change has no functional impact. The follow-up change is on the VS side to utilize this change and differentiate projects.

## Packaging changes reviewed?
- [ ] Yes
- [ ] No
- [x] N/A


Addresses https://github.com/dotnet/aspnetcore/issues/28716
2021-01-13 09:01:46 -08:00
Matt Mitchell 1dfd6ce7de
Merge pull request #29250 from dotnet/dougbu/5.0.3
[release/5.0] Rebrand to 5.0.3
2021-01-13 07:17:03 -08:00
Safia Abdalla 50b3190579
Update @azure/msal-browser dependency to v2.8.0 (#29226)
#### Description

This PR updates the version of the MSAL.js dependency that we redistribute in our Authentication.Msal library in response to user requests and recommendation from the MSAL team.

#### Technical Description

This PR contains some code changes in response to some changes in type definition over in MSAL.js:

- https://github.com/AzureAD/microsoft-authentication-library-for-js/pull/2105
- https://github.com/AzureAD/microsoft-authentication-library-for-js/pull/2512

#### Customer Impact

Without these changes, if users want to pick up required bug fixes in the downstream MSAL.js library, they would have to compile their own version of JavaScript dependencies and integrate them into their project.

This PR allows users to consume bug fixes blocking customer login and platform support without having to put in difficult workarounds.

#### Regression?
- [ ] Yes
- [X] No

#### Risk
- [ ] High
- [ ] Medium
- [X] Low

Change contains no breaking changes and was made on recommendation of the MSAL team. Manual verification completed.

#### Verification
- [X] Manual (required)
- [ ] Automated

Verified navigating to the authorized-only fetch data page, logging in, confirming redirect, logging out, logging in again on:
- Azure B2C + Blazor WASM Hosted
- Azure B2C + Blazor Standalone
- Azure AAD + Blazor WASM Hosted
- Azure AAD + Blazor WASM Standalone

#### Packaging changes reviewed?
- [ ] Yes
- [ ] No
- [X] N/A

Addresses https://github.com/dotnet/aspnetcore/issues/29010, https://github.com/dotnet/aspnetcore/issues/28969, https://github.com/dotnet/aspnetcore/issues/28956
2021-01-12 22:52:18 -08:00
Javier Calvarro Nelson 94804f3100
[SPA] Updates outdated npm dependencies (#29234)
## Description

Updates outdated dependencies for the Angular, React and React redux templates.

## Customer Impact

Customers creating new projects get obsolete versions of some javascript dependencies and need to update them manually.

## Regression?
- [ ] Yes
- [X] No

[If yes, specify the version the behavior has regressed from]

## Risk
- [ ] High
- [ ] Medium
- [X] Low

The changes only update dependencies and have been tested manually.

## Verification
- [X] Manual (required)
- [ ] Automated

## Packaging changes reviewed?
- [ ] Yes
- [ ] No
- [X] N/A
2021-01-12 22:43:10 -08:00
dotnet-bot 94bda420a8 Merge in 'release/5.0' changes 2020-12-10 21:52:11 +00:00
Javier Calvarro Nelson b7abe1ed90
[Blazor] Fix publish with different combinations of SWA base paths (#28539)
Description
#28017

In 5.0.1 we fixed a publish scenario where Blazor webassembly wasn't respecting the StaticWebAssetBasePath defined for the project. Unfortunately the logic for handling the path composition was not robust enough and while it fixed the publish output layout, it introduced an integration issue later on at runtime.

The current fix makes the handling of the path more tolerant to initial and final slashes and includes a new end to end test that validates this scenario.

Customer Impact
Customers can't host blazor applications outside the root path (/)

Regression?
Yes. Worked in 3.2

Risk
Low.

We've included additional tests and E2E automation to verify this case.

Validation
 Automated
 Manual
2020-12-10 13:49:49 -08:00
dotnet-bot d873bafc56 Merge in 'release/5.0' changes 2020-12-10 20:05:08 +00:00
William Godbe a8646e3022
Fix .msi names (#28572) 2020-12-10 12:01:51 -08:00
dotnet-bot c26780f2e2 Merge in 'release/5.0' changes 2020-12-10 18:32:59 +00:00
Safia Abdalla f45bf46312
Add error handling for token acquisition in getUser and fix state retrieval (#28498)
* Add error handling for token acquisition in getUser

* Clean up fetching state key from URL
2020-12-10 10:30:23 -08:00
dotnet-bot 6fd0174e84 Merge in 'release/5.0' changes 2020-12-10 17:25:50 +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
Brennan Conroy 8e57b5e3b6 Merged PR 11157: Run callbacks outside of locks 2020-12-10 00:19:53 +00:00
Sourabh Shirhatti e47cbf6de6
[release/5.0] DelegationRule.Dispose() unsets delegation property on the queue (#28514)
* Unset delegation propery from source queue. This removes the process from the target URL group and allows the delegation rule to be added back later on in the processes lifetime

* Add test

* Add disposing pattern

Co-authored-by: Nolan Glore <nglore@microsoft.com>
2020-12-09 13:33:10 -08:00
John Luo 8a3c8653cd
Remove redundant site extension fix (#27855) 2020-12-09 13:11:31 -08:00
Pranav K dbba347f20
Provide a better error message if a blazorwasm app references ASP.NET Core (#28493)
Fixes https://github.com/dotnet/aspnetcore/issues/28478
2020-12-09 13:06:05 -08:00
Sourabh Shirhatti 050c257590
[release/5.0] Fix null ref in UrlGroup.Dispose due to logger not set (#28494)
* Fix null ref in UrlGroup.Dispose due to logger not set

* PR Feedback: make _logger readonly

Co-authored-by: Nolan Glore <nglore@microsoft.com>
2020-12-09 13:00:16 -08:00
Pranav K 894f4cabae
Add JWT and OpendId only if they are needed (#28495)
Remove MicrosoftAspNetCoreAuthenticationJwtBearerPackageVersion and MicrosoftAspNetCoreAuthenticationOpenIdConnectPackageVersion if there are not need eg. user wants only OpenApi.

Co-authored-by: Andrzej Król <andkrul@gmail.com>
2020-12-09 13:00:05 -08:00
Sourabh Shirhatti 9654539fe7
[release/5.0] Don't call HttpCloseUrlGroup if you didn't create it (#28511)
* Add created bool

* Be explicit in setting the flag
2020-12-09 12:59:53 -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
William Godbe a4f30aeec3
Make sure SharedFx & TargetingPack msi names match (#28298)
* Make sure SharedFx & TargetingPack msi names match

* Insert packageVersion into OutputName when available

* Move props around again
2020-12-08 14:14:21 -08:00
William Godbe f17c23bf98
Increase height for longer strings (#28332)
* Increase height for longer strings

* Update thm.xml

* Move fix to Hosting Bundle

* Fixup

* Fixup

* fixup

* Temporarily upload installers

* Fix height
2020-12-08 14:14:10 -08:00
Javier Calvarro Nelson fc93e595ce
[Blazor] Update template to pass in attribute as boolean (#28285)
Description
We introduced a public property as part of #27907 to enable users to opt-in. Turns out that this caused issues since we didn't update the target pack.

As a result, the Razor compiler treats this new property as a regular HTML attribute (of type string) instead of as a boolean.

In turn this causes the template to error at runtime when the application starts.

Customer Impact
Customers using 5.0.1 won't be able to create and run new blazor apps out of the box. They can fix the template code by preceding the true value in the attribute with @ to force the compiler to interpret it as C#. (Which is the same fix we are applying).

Regression?
Yes, 5.0.0. Users were able to create new blazor templates without this issue.

Risk
Low. We've manually validated the fix against a new project from a 5.0.1 template.
2020-12-01 14:40:10 -08:00
dotnet-maestro[bot] d0f09018c0
[release/5.0] Update dependencies from dotnet/efcore dotnet/runtime (#28087)
[release/5.0] Update dependencies from dotnet/efcore dotnet/runtime


 - Merge branch 'release/5.0' into darc-release/5.0-d4478e43-6d04-47a1-8a7c-c6c2dcd90d64

 - Tweak tests

 - Remove Extensions.Internal.Transport from Runtime

- Microsoft.AspNetCore.App.Runtime project does not expect compilation-only references

 - !fixup! Rearrange a `Condition`
- slight change to 49cc13cb5ac6 workaround

 - Do not compile against assemblies with newer assembly versions
- avoid problems with e.g. System.Extensions.DependencyInjection in 5.0.1

 - Revert "Remove package version pinning for ref/ assemblies in servicing (#25851)"
- dotnet/runtime assembly versions are unexpectedly changing in servicing

This reverts commit bfc1ec6792.

 - Update `SharedFxTests` to handle dotnet/runtime version changes
- assemblies with non-0.0 versions end up in Microsoft.AspNetCore.App
- future-proofs these tests because more dotnet/runtime versions may change

 - !fixup! Revert of bfc1ec6792 messed up `RepoTasks`
- need the RTM-versioned packages on all platforms
  - we only target `net472` on Windows
2020-11-30 03:46:55 +00:00
Jan Vorlicek 045882af9d
[release/5.0] Enable MUSL ARM support (#27942)
This change adds support for building MUSL ARM packages of ASP.NET Core.
2020-11-23 11:49:10 -08:00
Brennan 4731c87476
[Java] Don't call onClose when WebSocket connection is not open (#28004) 2020-11-23 11:40:58 -08:00
Brennan af907cdea5
Fix #if for full framework SignalR client (#27999) 2020-11-23 10:30:27 -08:00
Pranav K d9dd46ec8e
Use StaticWebAssetBasePath if specified to calculate blazorwasm publish paths (#27896)
In 3.2, Blazor WebAssembly had a feature which allowed prefix the relative path within the PublishDir
by configuring a StaticWebAssetBasePath property in the project file. As part of migrating to 5.0, this
feature was (accidentally) not brought forward which is remedied by this commit.

* Use StaticWebAssetBasePath to calculate asset base paths
* Add publish tests to verify hosted and standalone scenarios

Fixes https://github.com/dotnet/aspnetcore/issues/27776

Co-authored-by: Artak <34246760+mkArtakMSFT@users.noreply.github.com>
2020-11-20 23:46:31 -08:00
Pranav K 26c2891c60
Default the timezone to UTC if it is not resolved. (#27505)
Browsers may not correctly resolve the machine's timezone in some cases. In the current implementation,
this results in an exception being thrown by .NET Core (WASM). This code defaults the timezone to UTC
when the timezone cannot be resolved.

Fixes https://github.com/dotnet/runtime/issues/44154
Port of https://github.com/dotnet/aspnetcore/pull/27444

Co-authored-by: Artak <34246760+mkArtakMSFT@users.noreply.github.com>
2020-11-20 23:45:49 -08:00
Hao Kung a2c983c1fb
Ship the Identity.Specification.Tests package again (#28024)
Description
This package is a collection of tests which we have shipped which allows customers who have implemented their own identity stores to verify that their stores behave as expected. Our quarantine process introduced some internal dependencies to this package during 5.0, which resulted in us no longer shipping this package.

Customer impact
Customers were relying on using this library to ensure that their implementations worked against our identity manager implementations.

Regression
Yes. Regression from 3.2

Risk
Low. We currently run our CI tests against this package, this just allows customers to once again be able to run our tests on their CI builds.
2020-11-20 15:02:20 -08:00
Javier Calvarro Nelson 6bb4a3f370
[Blazor] Fixes issues with route precedence (#27907)
Description
In 5.0 we introduced two features on Blazor routing that enable users to write routing templates that match paths with variable length segments. These two features are optional parameters {parameter?} and catch all parameters {*catchall}.

Our routing system ordered the routes based on precedence and the (now false) assumption that route templates would only match paths with an equal number of segments.

The implementation that we have worked for naïve scenarios but breaks on more real world scenarios. The change here includes fixes to the way we order the routes in the route table to match the expectations as well as fixes on the route matching algorithm to ensure we match routes with variable number of segments correctly.

Customer Impact
This was reported by customers on #27250

The impact is that a route with {*catchall} will prevent more specific routes like /page/{parameter} from being accessible.

There are no workarounds since precedence is a fundamental behavior of the routing system.

Regression?
No, these Blazor features were initially added in 5.0.

Risk
Low. These two features were just introduced in 5.0 and their usage is not as prevalent as in asp.net core routing. That said, it's important to fix them as otherwise we run the risk of diverting in behavior from asp.net core routing and Blazor routing, which is not something we want to do.

We have functional tests covering the area and we've added a significant amount of unit tests to validate the changes.
2020-11-20 11:43:11 -08:00
Safia Abdalla 222a218187
Bump Selenium dependency versions (#27947) (#28001)
* Bump Selenium dependency versions (#27947)
* Fix up package references for Selenium deps
2020-11-19 17:24:52 -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
Safia Abdalla de177e3a80
Pass file path with runtime version to hash generator (#27835)
Description
This pull request addresses an issue reported by users in #27752 in which the integrity checks that occur in the browser for assemblies loaded by a Blazor WebAssembly application incorrectly fail after a user upgrades their application from one version to another. This occurs because our MSBuild targets don't correctly update the compressed assemblies when a user upgrades, which results in the non-compressed assemblies and integrity hash pointing to the new version but the compressed assembly pointing to the old version which causes an integrity check failure.

Technical Description

The GzipCompression task iterates through a list of provided FilesToCompress and determines whether or not a file needs to be updated by checking to see if the input file is older than the compressed file that already exists in the intermediate output path.

aspnetcore/src/Components/WebAssembly/Sdk/src/GZipCompress.cs

Lines 45 to 50 in 45540f7

 if (File.Exists(outputRelativePath) && File.GetLastWriteTimeUtc(inputPath) < File.GetLastWriteTimeUtc(outputRelativePath)) 
 { 
     // Incrementalism. If input source doesn't exist or it exists and is not newer than the expected output, do nothing. 
     Log.LogMessage(MessageImportance.Low, $"Skipping '{inputPath}' because '{outputRelativePath}' is newer than '{inputPath}'."); 
     return; 
 } 
The outputRelativePath used in the comparison above is a hashed value generated from the the RelativePath which is set to wwwroot/_framework/Microsoft.CSharp.dll for example. If a user changes from version 5.0-rc2 to 5.0 of a package, then the RelativePath will be the same whereas the FullPath will be ~/.nuget/packages/microsoft.netcore.app.runtime.browser-wasm/5.0.0/runtimes/browser-wasm/lib/net5.0/Microsoft.CSharp.dll compared to /Users/captainsafia/.nuget/packages/microsoft.netcore.app.runtime.browser-wasm/5.0.0-rc.2.20475.5/runtimes/browser-wasm/lib/net5.0/Microsoft.CSharp.dll.

By passing the FullPath we are able to account for the package version in the generated output which will cause a unique hash to be generated for different package versions and the File.Exists check in the conditional to fail and result in the new gzipped outputs being generated as expected.

Customer Impact
This bug was reported by multiple customers after the release of .NET 5. The bug makes the upgrade experience between .NET versions a lot rougher since users run into unexpected exceptions in their apps at runtime. Viable workarounds for this include running dotnet clean before building the project after an upgrade.

Regression?
This is not a regression, but the issue is more serious since users are upgrading from Blazor WASM 3.2 to Blazor WASM 5 or from a 5.0 RC to the RTM.

Risk
The risk associated with this change is relatively slim, because:

Manually validation was completed
The behavior implemented in the changeset mimicks what we already do in the Brotli compression
The impact area is only limited to Blazor WASM apps running in development
2020-11-16 22:56:18 -08:00
John Luo 807e8ccd47
Fix API baseline check when building site extensions (#27841)
* Include API files when building site extensions

* Test SiteEx build on PR

* Revert test code

* Disable the check all together

* revert test change
2020-11-15 01:05:55 +00:00