Commit Graph

18336 Commits

Author SHA1 Message Date
Steve Sanderson 03068c9165 Transfer .NET unhandled exceptions to JS via dedicated interop call. Fixes #20280 (#20907) 2020-04-17 07:45:06 +01:00
Steve Sanderson e95264f237 Support overriding how boot resources are loaded. Fixes #5462 2020-04-17 07:45:06 +01:00
Steve Sanderson fcb96b6edd Upgrade all NPM dependencies. Update to use current Emscripten APIs matching newer type definitions. 2020-04-17 07:45:06 +01:00
Pranav K 50a2527ca9
Copy I18N assemblies when running without the linker (#20878)
* Copy I18N assemblies when running without the linker
Fixes https://github.com/dotnet/aspnetcore/issues/20517
2020-04-16 16:52:07 -07:00
dotnet-bot 4f307c40be Merge in 'release/3.1' changes 2020-04-15 19:43:15 +00:00
David Fowler 1b99352ec7
Don't re-use DefaultHttpContext if IHttpContextAccessor is in use (#15049) (#20844)
* Don't re-use DefaultHttpContext if IHttpContextAccessor is in use
- Consumers may still get null or an ODE but will never end up with data from a different request.
- Make sure an ODE is thrown from all properties on HttpContext after the request is over.
2020-04-15 12:41:59 -07:00
Safia Abdalla b2c88e9a23
Add Microsoft.Extensions.Logging namespace to template (#20869)
* Add Microsoft.Extensions.Logging namespace to template
* Update Program.cs
2020-04-15 12:39:32 -07:00
dotnet-bot 12c9727281 Merge in 'release/3.1' changes 2020-04-15 19:27:41 +00:00
Brennan 5353ce9509
Use SemVer1 for SiteExtension (#20839) 2020-04-15 12:26:21 -07:00
Javier Calvarro Nelson ad725861a9
[Blazor][Wasm] Build fixes for incrementalism and PWA (#20861)
* Fixes incrementalism issue caused by a wrong up to date check
* Fixes PWA template on hosted scenario by removing the 'ServiceWorker' from the content itemgroup in all scenarios.
2020-04-15 10:26:00 -07:00
ar0311 4c312e1d51
Fix weather.json (#20769)
Removed "temperatureF" elements from weather.json as WeatherForecast class calculates the Fahrenheit temperature internally from the retrieved Celcius temperature and not from the retrieved json data.
2020-04-15 09:37:33 -07:00
Pranav Krishnamoorthy 23c02ef9a9 Merged PR 7269: Avoid caching JsonSerializer
Avoid caching JsonSerializer
2020-04-14 22:38:24 +00:00
Safia Abdalla d03c3b2a1e
Move auth config options to app settings (#20790)
* Move auth config options to app settings
* Move logging configuration setup to host builder
* Address issues from peer review
2020-04-14 15:29:09 -07:00
dotnet-bot 45a57eac45 Merge in 'release/3.1' changes 2020-04-14 20:46:41 +00:00
BrennanConroy 260de2c10b Add BuildNumber to SiteExtension build 2020-04-14 13:42:25 -07:00
Pranav K 3fbb2f0cd9
Add timezone support (#20493) 2020-04-14 13:37:49 -07:00
dotnet-bot a2428c7175 Merge in 'release/3.1' changes 2020-04-14 20:01:33 +00:00
William Godbe 01429973ee
[release/3.1] Pass access token as query string when running SignalR in the browser (#20466)
* Pass access token as query string when running SignalR in the browser

* WEBASSEMBLY -> BROWSER
2020-04-14 12:59:06 -07:00
dotnet-bot e3bd613f37 Merge in 'release/3.1' changes 2020-04-14 18:01:07 +00:00
William Godbe 8218d6e0e7
Fix various "Type or namespace not found" errors (#20736)
* Add manual packageReferences where needed

* Add more explicit packageRefs

* Fix typo

* undo changes to blazor.server.js

* Fix typo

* Don't gen ref assemblies in CodeCheck
2020-04-14 10:57:26 -07:00
Daniel Roth 468af978a3 Update Blazor WebAssembly survey link for 3.2.0-preview5 2020-04-14 10:11:55 -07:00
Pranav K 9dda113d60 Make Ignitor tests flaky 2020-04-14 09:37:09 -07:00
Pranav K f3a1fb6ad3 Fixups 2020-04-14 09:37:09 -07:00
Safia Abdalla b289633533 Do not override existing web.config during IIS publish 2020-04-14 09:37:09 -07:00
Pranav K 38285eb9ba
Pin shared fx version to 3.1.0 (#20802) 2020-04-14 09:36:40 -07:00
Pranav K 1e70883e87
Create a ref-assembly package for HttpHandler (#20382)
* Create a ref-assembly package for HttpHandler

Fixes #19202
2020-04-13 14:07:15 -07:00
Steve Sanderson 05990683cf
Unconditionally enable razor pages in hosted template. Fixes #20791 (#20792) 2020-04-13 17:53:54 +01:00
Javier Calvarro Nelson 546b52004c
[Blazor][Wasm] Adds HttpMessageHandler to automatically attach tokens to outgoing requests (#20682)
* Adds an authorization handler for integration with HttpClient in different scnearios.
* Adds a message handler to streamline calling protected resources on the same base address.
2020-04-13 04:27:53 -07:00
Pranav K cc0407877f
Merge branch 'blazor-wasm' into blazor-wasm-preview5 2020-04-10 21:49:10 -07:00
Safia Abdalla c4703acfa7
Enable reading and editing from same Configuration object (#20647) 2020-04-10 09:59:05 -07:00
Javier Calvarro Nelson 43bd9dbf3e
[Blazor][Wasm] API review feedback (#20652)
* UserFactory->AccountClaimsPrincipalFactory
* Change constants to static readonly
* Make applicationpaths provider and RemoteAuthenticatorViewCore dependencies internal
* Change collection types, make properties get only where possible
* Change state constraint to extend RemoteAuthenticationState
2020-04-08 16:08:43 -07:00
Javier Calvarro Nelson f34ef732d2
[Blazor][Wasm] Auth cleanups (#20587)
* Avoid using query parameter when passing messages to the error UI.
* Adds an additional parameter to automatically perform the redirect.
* Fix provisioning additional tokens in MACWA.
* Fix create solution with spaces
* Cleanup Msal startup APIs.
* Rename UserFactory -> AccountClaimsPrincipalFactory
2020-04-06 16:07:17 -07:00
Steve Sanderson 3224092fdd
Update ws-proxy sources to match Mono commit c5149e31b4d7c (#20579) 2020-04-06 22:52:14 +01:00
Artak c2afc704a6
Enable doc comments generation (#20564)
Co-authored-by: Pranav K <prkrishn@hotmail.com>
2020-04-06 10:41:28 -07:00
Pranav K 351eba767c
Cleanup Blazor standalone publish output (#20470)
* Remove stray content from Blazor's publish output.
* Introduce BlazorPrunePublishOutput as a way for users to opt-out of this.

Fixes https://github.com/dotnet/aspnetcore/issues/17018
2020-04-06 08:50:27 -07:00
Javier Calvarro Nelson 8232c6a4d8
[Fixes #19644][Blazor] Support brotli compression for framework files (#20363)
* [Blazor] Support brotli compression for framework files
* Adds a new tool to the Blazor.Build package to perform brotli compression.
* Performs brotli compression at publish time
* Centralizes hashing computation in one place and creates hash files for
  performing incremental compilations
2020-04-06 08:29:24 -07:00
Javier Calvarro Nelson fd9c786165
[Blazor] More auth fixes (#20192)
* Introduces customization options for mapping user claims principals.
* Supports login/logout flows extensibility.
* Improves E2E test reliability
* Improves reliability on the AuthenticationService
* Improves the experience by trying to silently log-in users on startup.
* Avoids loading the Blazor application when within a hidden iframe.
2020-04-04 04:06:25 -07:00
Safia Abdalla e67e7a08ca
Remove WebAssemblyLoggerFactory and refactor logging setup (#20432)
**Changes in this PR**
 - Replaces `WebAssemblyLoggerFactory` with `LoggerFactory` from logging extensions package
 - Moves WebAssemblyConsoleLogger and PrependMessageLogger to provider model

Now that we are using the standard `LoggerFactory` support for config options like `SetMinimumLevel` and `AddProvider` is available.

Compared to what is currently in the `blazor-wasm` branch, the changes in this PR add an additional 12 kb to the total compressed size.

Addresses #19737
2020-04-03 10:22:05 -07:00
Pranav K 41a9588353
Move specifying default Blazor linker config to props file (#20458)
Fixes #20443
2020-04-03 09:04:38 -07:00
Pranav K 1b2cb0b93c
Apply suggestions from code review
Co-Authored-By: Steve Sanderson <SteveSandersonMS@users.noreply.github.com>
2020-04-02 15:21:42 -07:00
Pranav K a127eb86da
Fixup 2020-04-02 15:14:48 -07:00
Pranav K 861e88c61b
Fixup tests 2020-04-02 15:14:44 -07:00
Pranav K a7c2d25ffa
Remove constraints on WebAssembly.Build package
Make Blazor-Wasm projects not-packable by default
2020-04-02 15:13:35 -07:00
Pranav K 0c614ff9c7
Fixup 2020-04-02 15:13:34 -07:00
Pranav K a9494214fa
Preserve files being published to the publish root and the wwwroot
Fixes https://github.com/dotnet/aspnetcore/issues/19926
2020-04-02 15:13:33 -07:00
James Newton-King b53179267a Merged PR 6773: Fix routing policy exit destination
**Description**

An infinite loop can happen in routing if there is a catch all route with host name matching.

This problem is caused by the DFA matcher builder giving an incorrect exit destination to policies. Currently the exit destination is the catch all state, so the policy will transition to itself when there is no match. It will run again, transition to itself again, run again, etc. This causes the policy to run forever.

What should happen is the host name policy fails, it transitions to the final state with no candidates, and the route matcher does not match any endpoints. The browser is returned a 404 status.

**Customer Impact**

This problem shows up in this situation:
1. If a customer has configured a catch all route in their app
2. The catch all route has host matching
3. A browser makes a request to the server that matches the catch all route but doesn't match the host name

The route matcher will run forever, using up a threadpool thread. When threadpool threads are exhausted the server will stop responding.

**Regression?**

No.

**Risk**

Medium. The fix is simple but route matching is complex, and routing runs with every request.
2020-04-02 20:30:18 +00:00
Steve Sanderson 113cb5422d
Support JsonStringEnumConverter. Fixes #19086 (#20446)
* Fix serializing enums. Fixes #19086

* Add E2E test
2020-04-02 16:09:34 +01:00
Pranav K dd2f0c9d90
Remove the use of toJavaScriptString (#20260)
* Allow readString to optionally read boolean values as string

Fixes https://github.com/dotnet/aspnetcore/issues/19784
2020-04-02 07:51:57 -07:00
William Godbe 2d6827a678
Always generate checksums as last part of publish job (#20367)
* Always generate checksums as last part of publish job

* Initialize props correctly

* Fix wildcard

* Import Arcade SDK

* Add NoWarn MSB4011

* Make import conditional on GenerateChecksums

* Select specific files to checksum

* Respond to feedback

* AfterTargets -> BeforeTargets
2020-04-01 16:25:37 -07:00
Steve Sanderson ae569e2b48
Add some extra publish integration tests, plus fix publish-from-VS-with-RID (#20410)
* Add detailed integration tests for publishing service workers, assets manifests, and blazor.boot.json
* Fix publishing from VS with non-portable RID
2020-04-01 13:35:30 -07:00
Markus Rodler a8bd551d99
Set crossorigin to anonymous for integrity attribute (#20348)
* Set crossorigin to anonymous for integrity attribute
dotnet/aspnetcore#20305

* Fix formatting of output
dotnet/aspnetcore#20305
2020-04-01 09:53:46 -07:00
Steve Sanderson aeff119dc4
Blazor dev server: serve all files (#20355)
* Serve all files in development. Fixes #19931

* Dev server code tidy
2020-03-31 16:08:22 +01:00
Steve Sanderson 05ee136e87 Rename site.css to app.css. Fixes #19779 2020-03-31 12:31:57 +01:00
Steve Sanderson c877f88026 Add error page to hosted server project. Fixes #19670 2020-03-31 12:31:57 +01:00
Artak 87539a81f9
Removed the `useWebAssemblyDebugging` flag (#20325) 2020-03-30 13:00:09 -07:00
Safia Abdalla cba5387f28
Bring back logic to remove unwanted env variables (#20326) 2020-03-30 12:34:19 -07:00
Pranav K fa2db44d89
Update WebAssemblyHost.cs 2020-03-29 19:08:10 -07:00
Pranav K 248b31e0fb
Load satellite resources before rendering components 2020-03-29 15:20:59 -07:00
John Luo 306ef044cf
Conditionally enable/disable targeting pack tests (#20255) 2020-03-28 18:04:20 -07:00
Pranav K 56b944f46c
Fix missing pdbs in Blazor build (#20257)
* Fix missing pdbs in Blazor build

* Allow tests to run in Debug and Release independent of the configuration test project is built in

Fixes https://github.com/dotnet/aspnetcore/issues/20242
2020-03-28 14:50:11 -07:00
Steve Sanderson c379bae8e9
Fix SWAM hash (#20240) 2020-03-28 17:53:46 +00:00
Brennan 654cf06615
Backport ANCM environment variable additions (#20006) 2020-03-27 10:56:49 -07:00
William Godbe 1040be3588
Include third-party-notices.txt in all packages (#20166)
* Include third-party-notices.txt in all packages

* Fix version test filename
2020-03-27 10:15:32 -07:00
Pranav K 82d05ae785
Add support for loading satellite assemblies (#20033)
* Add support for loading satellite assemblies

Fixes #17016
2020-03-26 13:58:00 -07:00
Pranav K cb6858fe31
Update to using System.Net.Http.Json (#20195) 2020-03-26 10:13:23 -07:00
Javier Calvarro Nelson b0a95d05e0
[Blazor] Auth fixes (#20191)
* Adds MetadataAddress property to OidcProviderOptions.
* Sets defaults for the Msal cache location on the provider initialization.
* Updates the template to avoid redirecting to the login page if the user is already authenticated.
* Fixes startup APIs for AddRemoteAuthentication.
* Fixes TryGetToken for the Blazor MSAL library when the token can't be acquired silently.
2020-03-26 09:07:46 -07:00
Pranav K 263cf0bbd2 Skip flaky test 2020-03-25 15:59:17 -07:00
Pranav K de2fa4c69c Update versions
* Update Blazor version to preview4
* Update ASP.NET Core references to 3.1.3
* Remove DisableImplicitComponentsAnalyzers workaround
2020-03-25 15:59:17 -07:00
Brennan 9514a865ef
[SignalR] Avoid deadlock with closing and user callbacks (#19612) (#19664)
* [SignalR] Avoid deadlock with closing and user callbacks (#19612)

* fb
2020-03-25 13:13:02 -07:00
Steve Sanderson bbe9cca327
Write hash to service worker on publish (#20131)
* Write SWAM version into service worker output

* Update project template

* Add publishing test

* Update src/Components/WebAssembly/Build/src/targets/ServiceWorkerAssetsManifest.targets

Co-Authored-By: Pranav K <prkrishn@hotmail.com>

* Add E2E test for hosted PWA too

* Avoid test clashes

* E2E test fix

* E2E test fix

* E2E test fix

Co-authored-by: Pranav K <prkrishn@hotmail.com>
2020-03-25 20:06:03 +00:00
William Godbe 7bda94ab0a
Update branding to 3.1.4 (#20110)
* Update branding to 3.1.4

* Disable targeting pack tests

* Use 3.1.103 SDK
2020-03-25 09:16:36 -07:00
Pranav K 9f9783c0df
Tweaks for WASM stress runs (#20109)
Prevent interleaved console writes when reporting stats
Do not print browser logs by defualt
2020-03-25 09:04:29 -07:00
Pranav K 47536a3c14
Blazor wasm preview4 (#20117)
* Restore public API contract on WebAssemblyJSRuntime (#19968)

* Shrink icon-512.png (#19999)

* Use custom DebugProxyHost to initialize DebugProxy config (#19980)

Addresses #19909

* Spruce up WebAssemblyHostEnvironment interface and use (#20008)

* Load .dlls/.wasm/.pdb in parallel with dotnet.*.js. Fixes #18898 (#20029)

* Add BaseAddress property to WebAssemblyHostEnvironment (#20019)

- Adds `BaseAddress` to `IWebAssemblyHostEnvironment`
- Uses unmarshalled APIs to extract application host
- Move NavigationManager initialization to startup code
- Fix subdir mapping in ClientSideHostingTest

Addresses #19910

Co-authored-by: Steve Sanderson <SteveSandersonMS@users.noreply.github.com>
Co-authored-by: Safia Abdalla <safia@safia.rocks>
Co-authored-by: Safia Abdalla <safia@microsoft.com>
2020-03-25 01:51:55 +00:00
Pranav K 56d22a817b
Turn on scope validation for service provider in Development (#19908)
* Turn on scope validation for service provider

* Make WebAssemblyJSRuntime interop-specific overloads extension methods
Fixes https://github.com/dotnet/aspnetcore/issues/9365
2020-03-17 10:26:50 -07:00
Pranav K cb293661e1
Make extensions
Make WebAssemblyJSRuntime interop-specific overloads extension methods
2020-03-17 09:49:27 -07:00
Safia Abdalla 49bf3bb738
Resolve issues in Blazor PWA template (#19898) 2020-03-16 16:55:21 -07:00
Pranav K c37f3fefce
Turn on scope validation for service provider
Fixes https://github.com/dotnet/aspnetcore/issues/9365
2020-03-16 16:20:02 -07:00
Safia Abdalla 0582767e67
Fix Blazor icon for PWAs on iOS (#19897)
- Add link reference to Blazor icon in index.html to support icons on iOS
 - Make Blazor icon background white instead of transparent
- Remove deleted projects from solution file

Addresses #19883
2020-03-16 14:20:01 -07:00
Steve Sanderson f1b812e21e
Update ws-proxy code (#19826) 2020-03-13 11:34:09 +00:00
Steve Sanderson 9343d2bca0
Log unhandled exceptions to custom logger (#19606) 2020-03-13 10:40:02 +00:00
Steve Sanderson 2e9bb2ff5f
Debug proxy as external tool (#19767) 2020-03-12 18:42:13 +00:00
Pranav K 147c39289a
Add support for configuration (#19544)
* Add support for configuration

Fixes https://github.com/dotnet/aspnetcore/issues/18675
2020-03-12 11:38:06 -07:00
Artak 0006fdf093
Revert "Remove inspectUri launch setting (#19672)" (#19786)
* Revert "Remove inspectUri launch setting (#19672)"

This reverts commit 9f4904886e.

* React to review feedback
2020-03-12 11:35:44 -07:00
Pranav K 064f1562fa
Remove WebAssembly.JSInterop 2020-03-10 13:57:32 -07:00
Pranav K a0c76e5a4c
Rename WebAssembly.JSInterop -> Microsoft.JSInterop.WebAssembly 2020-03-10 13:42:35 -07:00
Pranav K 6833facda4
Use TargetPath in blazor dev server (#19658)
The linker's changed since the issue report and correctly resolves paths.
However the dev-server was doing weird things to calculate the path to the output.

Fixes https://github.com/dotnet/aspnetcore/issues/18288
2020-03-10 11:06:15 -07:00
Pranav K 4741da1451
Allow BlazorWasm benchmark driver to perform stress runs (#19619)
* Allow BlazorWasm benchmark driver to perform stress runs

Adds an option that allows running the driver in a loop until timeout expires
2020-03-09 15:21:30 -07:00
Daniel Roth 810a9fad0f
Update SurveyPrompt.razor (#19712) 2020-03-09 13:02:50 -07:00
Javier Calvarro Nelson adc81c94de
[Blazor] Fix default value for response type (#19706) 2020-03-09 11:54:51 -07:00
Artak 9f4904886e
Remove inspectUri launch setting (#19672)
* Remove inspectUri launch setting

* Removed inspectUri from launchSettings
2020-03-07 09:50:22 -08:00
Pranav K 247c0ddae9
Make BlazorLinkerDescriptor public (#19649)
This was accidentally made non-public as part of the API review
2020-03-06 10:18:53 -08:00
Pranav K e40fc36783
Update debug proxy to match 5973519784 (#19618) 2020-03-05 15:26:32 -08:00
Pranav K b02978e0d8
React to dotnet.js having a version number (#19603) 2020-03-05 14:36:32 -08:00
msftbot[bot] 28c44ce1c1
[Blazor] API cleanups for the authentication Package (#19601)
* Add missing OIDC provider options

* Convert string to enum

* Revert changes to JS files
2020-03-05 14:47:47 +00:00
msftbot[bot] e5cd390a8c
Update ws-proxy to match Mono commit 4c348d6567f42be (#19600) 2020-03-05 14:46:56 +00:00
Pranav K f4446f373f
Use browser APIs to calculate Blazor's download size (#19547) 2020-03-05 06:38:35 -08:00
Javier Calvarro Nelson e15e1c2415
[Blazor] Fix incrementalism with unlinked files (#19596) 2020-03-05 05:44:08 -08:00
Steve Sanderson 98cd3ab349 Allow loading dlls with arbitrary extensions 2020-03-04 12:30:10 +00:00
Steve Sanderson fee14d8e13 Update debug proxy to match Mono commit b91580bafa7208b4a52d66cfadce070551f1904a 2020-03-03 11:43:55 +00:00
Javier Calvarro Nelson 085f6e1585
[Blazor][Fixes #19503] Exclude gzip files from manifest (#19525)
* Exclude gzip files from manifest
* Add a test to validate the service-worker manifest
2020-03-03 03:41:58 -08:00