Commit Graph

690 Commits

Author SHA1 Message Date
Ryan Nowak 277e1b4702 Install ASP.NET Core runtime (#1291)
This will make sure the build script includes the ASP.NET Core runtime
when running on local .NET. The effect of this is that our test projects
and apps will 'roll forward' unto the newest runtime without us
hardcoding it.

We can't yet rely on 2.1.3 -  but we can just bump up a version number when it's available.
2018-08-10 20:35:28 -07:00
Ryan Nowak a05cb42845 Reenable markup blocks (#1286)
* Reenable HtmlBlock unit tests

* Add E2E tests for HTML Block cases

* Remove harded GenerateBaselines=true

* Fix #1193

This commit addresses the root cause of #1193. When we merge HTML
text nodes into HTML blocks we need to re-encode any HTML entities that
were encoded eariler.

I did a bit of a deep dive on how HTML encoding is handled in Blazor and
I think this is the best strategy. I think it's valuable that the
BrowserRenderer uses document.createTextNode, which will always encode
the text - this handles dynamic content. We want to keep this in place
to avoid HTML injection attacks.

* Fix #1265 Reenable MarkupBlock

* test cleanup
2018-08-10 16:29:39 -07:00
Steve Sanderson 70a4bf7521 E2E test async robustness tweaks following recent failures 2018-08-09 10:27:40 +01:00
uazo 7d92c07fba fix HtmlBlock codegen (#1209) 2018-08-08 17:46:37 -07:00
Nate McMaster 78045b2177 Automate authenticode code-signing using Roslyn sign tool
* Change project layout to prepare for upcoming Arcade changes
* Add signtool config file to configure OPC, NuGet, and Authenticode signing
* Fix a bug when BaseIntermediateOutputPath is set to an absolute path
2018-08-08 08:52:46 -07:00
Ryouko Konpaku e5ea2526b1 Fix for builds when the assembly has spaces on it's name. 2018-08-08 13:02:21 +01:00
Nate McMaster 22a3fbf861 Use $(TargetDir) instead of $(ProjectDir)$(OutputPath) 2018-08-06 16:48:36 -07:00
Nate McMaster 9672c2cff1 Fix for CI building as 15.7.999999 on VSTS (#1256) 2018-08-06 13:53:06 -07:00
Nate McMaster 7c43ed9cdb Add VSTS build configuration 2018-08-03 15:31:02 -07:00
Nate McMaster 4651d92eed Update KoreBuild and bootstrappers 2018-08-03 15:12:20 -07:00
Steve Sanderson 16d005e00c Fix returning arrays in async JS interop calls. Fixes #1205 2018-07-27 10:11:45 -07:00
Steve Sanderson 4b861929be Temporarily disable HtmlBlockPass for 0.5.1. Will be re-enabled later. 2018-07-27 10:11:31 -07:00
Steve Sanderson 26aa6e838f Auto-remove the AspNetCorePackageVersion attribute from templates 2018-07-25 12:43:40 -07:00
Steve Sanderson a46dd91fd4 Fix server-side template custom restore sources condition 2018-07-25 11:24:07 -07:00
Steve Sanderson 4e892e74da Fix handling nonvoid elements in markup blocks (#1190)
* Fix empty nonvoid elements in markup blocks. Fixes #1186

* Also update another test
2018-07-25 09:53:52 -07:00
Steve Sanderson 0f8fdad593 Further 0.5.0 tweaks (#1191)
* Clarify debug instructions further

* Fix error message

* Add "using Microsoft.JSInterop" in templates

* Clarify template descriptions
2018-07-25 09:33:12 -07:00
Steve Sanderson b5ff6db1d4 Fixes for 0.5.0 (#1183)
* Fix macOS debug launch instructions

* Remove license headers from template files
2018-07-24 16:51:00 -07:00
Steve Sanderson 1236b77dfc Server template tweaks (#1181)
* Add server template projects to Blazor.sln

* Disable linking for server execution

* Minor tweaks to Startup.cs
2018-07-24 12:00:07 -07:00
Steve Sanderson 6929b8c21a Update AssemblyInfo version ranges to allow 0.6.0-* 2018-07-24 08:26:25 -07:00
Steve Sanderson 188f6d0b42 Update version to 0.6.0-preview1-* 2018-07-24 08:17:28 -07:00
Steve Sanderson 4aaeac1e51 preventDefault for form onsubmit handlers. Fixes #951 2018-07-24 08:11:02 -07:00
Daniel Roth 79c60c91af Fixup default value for TemplateBlazorPackageVersion in server-side template 2018-07-23 23:26:20 -07:00
Daniel Roth 214598e579 Update survey link for 0.5.0 2018-07-23 22:11:00 -07:00
Ryan Nowak 65d9499e57 Template updates for 0.5 (#1177)
* Add startup pattern for client-side templates

* Add Server Side Blazor template

* minor feedback

* rename project
2018-07-23 21:54:50 -07:00
Ryan Nowak 8b3f26b962 Fix #1169 ignore DOCTYPE
This change will cause the compiler to ignore <!DOCTYPE ...>
declarations in Blazor components. We don't think there's much useful
Blazor can do with doctype, since we don't generate textual output for
the browser the parse. The sanest thing to do for now is just to skip
over it.
2018-07-23 17:42:47 -07:00
Steve Sanderson d2f74249b1 Fix updating attributes on SVG elements. Fixes #934 and #1114 2018-07-23 16:03:18 -07:00
Steve Sanderson d3f74b9f43 Fix for blazor.config issue reported in #376 2018-07-23 13:30:50 -07:00
Steve Sanderson 0062ce2563 Fix publishing projects with content packages. Fixes #1156 2018-07-23 12:49:08 -07:00
Ryan Nowak 8f072a0711 Add HTML Block rewriting (#1146)
* Add HTML Block rewriter

* Baseline updates

* test gaps

* Update some unit tests to represent same behavior as before

* Define Markup frame type. Tests for rendering markup frames into render tree.

* Support markup frames during diffing (retain, insert, update, delete)

* Support markup blocks on WebAssembly

* Support rendering markup frames with server-side execution too

* Support markup blocks with multiple top-level nodes. Support updating markup dynamically.

* Define MarkupString type as a way to insert dynamic markup without needing custom RenderFragment code

* Remove comment

* CR: Better null value handling
2018-07-23 18:18:07 +01:00
Steve Sanderson 17b55b983a Export Blazor.platform for back-compat. Covers #1157 2018-07-23 10:15:58 -07:00
Steve Sanderson 0e4a657d2e TextDecoder polyfill (#1168)
* Polyfill for TextDecoder

* Move UTF8 decoder logic into a separate file. Don't polyfill globally.

* Workaround issue in UTF8 decoder logic

* Add attribution for fast-text-encoding

* Added TPN for fast-text-encoding
2018-07-23 17:33:39 +01:00
Eilon Lipton ec49a06157 Merge pull request #1162 from eskaufel/master
Update CONTRIBUTING.md
2018-07-20 16:51:59 -07:00
Espen Skaufel 31ade48439 Update CONTRIBUTING.md
Changed CODE_OF_CONDUCT link to relative (absolute link was dead) and changed target branch for aspnet in "Contributing code and content" section to master since the dev branch no longer exist.
2018-07-20 23:50:53 +02:00
Steve Sanderson 41fcf65c05 Run E2E tests for server execution as well as WebAssembly. Fixes several
server-execution bugs uncovered by the E2E tests.
2018-07-19 18:57:17 +01:00
Steve Sanderson 154289ed3d Allow passing DotNetObjectRef to JS in interop calls, and invoking
instance methods on it
2018-07-19 18:57:17 +01:00
Ryan Nowak 38b3051d09 Fix Blazor tooling on 15.8 2018-07-17 15:18:40 -07:00
Eilon Lipton 5a0bad1ec5 Merge pull request #1141 from WaiChungK/patch-1
Update README.md
2018-07-16 22:43:29 -07:00
WaiChungK 3d46d4edff Update README.md 2018-07-17 09:45:32 +08:00
Steve Sanderson 970f591803 Support loading embedded resources for server-side execution too 2018-07-16 13:57:01 +01:00
Ryan Nowak 9778b2054a Add blazor.server.js (#1116)
Adds a server-side flavored blazor script.
2018-07-13 18:01:05 -07:00
Steve Sanderson ad7e98be04 Make index.html static again (#1123)
* Add build command for generating the new boot JSON file

* Remove build command for generating index.html

* Update build targets to generate blazor.boot.json

* Change SPA fallback routing to look for index.html in regular wwwroot. Will need to update setup for published apps later.

* Stop autorebuild when index.html changes, since we no longer 'build' that file

* Update Boot.WebAssembly.ts logic to use boot JSON info on startup

* Restore support for loading CSS/JS from Blazor library projects

* Use new startup script tag in all samples and templates

* Fix MonoSanity sample - it must now be an exe because we use that as the trigger to generate the boot json (not the presence of index.html any more)

* Fix SPA fallback routing for published apps

Because in a previous commit, I changed it to look for index.html inside "wwwroot" instead of "dist" (because we no longer build it). But "wwwroot" doesn't exist for published apps, because static file servers wouldn't understand it.

* CR: Fix path normalization
2018-07-13 09:49:34 +01:00
Steve Sanderson d9aafb05c1 In ws-proxy, don't let the debugger die just because some .pdb doesn't correspond to files we have locally 2018-07-10 13:49:55 +01:00
Steve Sanderson a728b42181 Avoid some ws-proxy crashes 2018-07-10 10:34:06 +01:00
Steve Sanderson 4868cdbfa3 Change BrowserRendererRegistry not to be static, and to scope the BrowserRenderer IDs to each instance
This is to ensure that, in multiuser scenarios, users can't interfere with each other by posting events for somebody else's renderer ID.

TODO: Still need to wire up or replace the temporary static BrowserRendererRegistry.CurrentUserInstance property to provide per-user storage.
2018-07-10 09:56:00 +01:00
Steve Sanderson 767a2373c8 Eliminate ElementRef's static incrementing ID for remote rendering cases
... because it's important not to disclose cross-user state, such as the number of IDs that have been assigned. Plus we don't want to run out of unique IDs, which we could if it's limited by the range of an 'int'.
2018-07-10 09:52:19 +01:00
Steve Sanderson c2f3128ef9 Extremely minor cleanups 2018-07-10 09:52:19 +01:00
Ryan Nowak ee62bd8d45 Add startup for client/mono Blazor
This change adds a host builder, and the startup pattern for client-side
Blazor apps running in mono/wasm. This will help us align better with
server side Blazor.
2018-07-09 11:13:26 -07:00
Joseph Musser ed57767e6a Removed trailing space from template survey link (#1099) 2018-07-09 13:47:07 +01:00
Steve Sanderson 9697525558 Update AppVeyor/Travis configs to run builds for master 2018-07-09 12:40:19 +01:00
Steve Sanderson 7bc67e1481 Simple approach for minifying blazor.*.js on release builds. Fixes #1003
Later we might want to emit both min and non-min variants of the file, when there is some way for developers to control which one they use
2018-07-09 11:04:14 +01:00