AspNetCore.Docs icon indicating copy to clipboard operation
AspNetCore.Docs copied to clipboard

Blazor project tracking 2022

Open guardrex opened this issue 3 years ago • 2 comments

2022

For the 2021 idea list, UE pass list, and notes, see Blazor project tracking 2021 (dotnet/AspNetCore.Docs #19286).

For the 7.0 tracking issue later

  • Per https://github.com/dotnet/AspNetCore.Docs/pull/25283, remove the remark on DateOnly/TimeOnly and PU cross-link. That should be resolved at 7.0 GA.

Doc ideas

Not ALL of these will be worked. This is an idea list/check list that don't rise to the level of opening an issue at this time.

  • [ ] Firefox debug support per https://github.com/dotnet/AspNetCore.Docs/issues/27411. Check back in 23Q1 on status because there's currently no PU issue to track on.
  • [ ] The state management doc is a bit scatter 🧠 with the new coverage on in-memory state preservation given the introduction is about lost state scenarios. Also, we don't do anything specific for cascading. However, this is a low priority for '22 and can be worked in 23H1 after consulting with the PU. https://github.com/dotnet/AspNetCore.Docs/issues/27296
  • [ ] After .NET 7 releases, it's best to have PU 🐈 look over the SignalR-Blazor enhancements for SignalR config (in the SignalR doc and the WASM/Server Host and Deploy docs) and SignalR client logging (in the Logging doc).
  • [x] Blazor samples link update to http://useiconic.com. https://github.com/dotnet/blazor-samples/issues/51 PR: https://github.com/dotnet/blazor-samples/pull/52
  • [x] Blazor samples JS interop code update: Missing an async modifier. https://github.com/dotnet/blazor-samples/issues/50 PR: https://github.com/dotnet/blazor-samples/pull/52
  • [ ] It would be nice to adopt file-scoped namespaces for 6.0 or later examples and snippet samples. This is very low priority tho! 😄 What might happen is just all new examples get the treatment.
  • [ ] There's about a half-dozen or so cases of using compiler directives around the docs to control code for debug vs. release configs. Confirm that configuration/environment can't manage these cases or that using configuration/environment wouldn't make sense for them.
  • [x] Use no-loc syntax for the Client and Server project mentions of hosted WASM solutions. https://github.com/dotnet/AspNetCore.Docs/pull/27075#issuecomment-1254953624 PR: https://github.com/dotnet/AspNetCore.Docs/pull/27151
  • [x] Currently, docs are mostly consistent on the instance name of an injected NavigationManager as NavigationManager. However, the PU favors Navigation in their examples. BTW, the glob-loc topic uses Nav. Consider making this consistent on Navigation everywhere, including in the snippet sample apps (and other sample apps). https://github.com/dotnet/AspNetCore.Docs/pull/27153
  • [x] Cross-link CSS isolation/collocated JS and controlling <head> content in the Performance doc. https://github.com/dotnet/AspNetCore.Docs/issues/26994 REJECTED because the lazy-loading scenario that would be effective is an advanced scenario that most apps probably won't benefit from very much.
  • [x] Consider making the Lifecycle topic call out that the explanations and diagrams are oversimplifications of what the framework really does, which is too complex to explain/show in the text and diagrams in a simple way. https://github.com/dotnet/AspNetCore.Docs/issues/26989 PR: https://github.com/dotnet/AspNetCore.Docs/pull/27170
  • [ ] Ask Tanay to review the new example at Fundamentals > DI > Utility base component classes to manage a DI scope section.
  • [ ] Port this new section from Add JS interop example back to 6.0, 5.0, and 3.1. Note that requires changes on the dotnet/blazor-samples repo (rename ListItem to ListItem1, place the new ListItem2). I scribbled a note to delete Shared/ListItem.razor and to kill Pages/dependency-injection/Preferences.razor.
  • [x] Moving some components to the main repo and updating route templates so that the sample apps will run. This was started on https://github.com/dotnet/AspNetCore.Docs/pull/26830, and there will be one or a few PRs to finish this task over time. More work on https://github.com/dotnet/AspNetCore.Docs/pull/26879 and https://github.com/dotnet/blazor-samples/pull/38.
  • [ ] Chat with Javier about the WHY aspects on https://github.com/dotnet/AspNetCore.Docs/pull/26620#issuecomment-1205513721. I'd like to know why the RID works with the MSBuild prop (/p:RuntimeIdentifier={RID} but the self-contained setting doesn't (/p:SelfContained=false).
  • [ ] Chat with Tanay about https://docs.microsoft.com/en-us/aspnet/core/blazor/components/dynamiccomponent?view=aspnetcore-6.0 per https://github.com/dotnet/AspNetCore.Docs/pull/26557. Is this the best way to showcase event callbacks with dymanic components?
  • [x] Add a tidbit on logging in WASM's Program.cs to the Logging topic. https://github.com/dotnet/AspNetCore.Docs/pull/26449
  • [x] In JS interop examples, I use the global FN location approach as the quick, simple, cut-'n-paste approach. I think these spots could have a brief NOTE and cross-link to the JS location coverage at <xref:blazor/js-interop/index#location-of-javascript>. https://github.com/dotnet/AspNetCore.Docs/pull/26166
  • [x] Move the Blazor-SignalR tutorial sample apps to the dotnet/blazor-samples repo and cross-link code to the dedicated repo. Kill 🔪 the samps in the main doc set repo. https://github.com/dotnet/AspNetCore.Docs/pull/26117
  • [x] Should we have a 'how to read cookies in code (JS interop)' piece in the JS interop (Call JS from .NET) doc (e.g., https://github.com/dotnet/AspNetCore.Docs/pull/26063#issue-1261857484)? Broadly, would it make sense to have a topic JS interop recipes with common JS interop scenarios? Rejected. I don't think we have time in the forseeable future for this, and there's no indication from the PU that such a topic is needed.
  • [x] Double-check the built-in components list (https://docs.microsoft.com/aspnet/core/blazor/components/built-in-components). Added RouteView on https://github.com/dotnet/AspNetCore.Docs/pull/26100. Opened https://github.com/dotnet/AspNetCore.Docs/issues/26099 to ask about SectionOutlet/SectionContent, but closed it immediately when Mackinnon informed me that they're internal, which I missed because I didn't read the bleed'in code! 🙈😄 I need a vacation! 🏖️
  • [x] Code cross-links to dotnet/blazor-samples repo sample apps. :::code language="csharp" source="~/../blazor-samples/6.0/BlazorSample_Server/ExampleModel.cs" highlight="6"::: https://github.com/dotnet/AspNetCore.Docs/raw/main/aspnetcore/blazor/samples/6.0/BlazorServerDbContextExample.zip Cross-ref: https://github.com/dotnet/AspNetCore.Docs/pull/24883 UPDATE: Moved to the dedicated issue at https://github.com/dotnet/AspNetCore.Docs/issues/26074. Resolved by: https://github.com/dotnet/AspNetCore.Docs/pull/26087
  • [x] Looks like the perf topic sections are too deep to surface content well in the ToC sidebar. UPDATE (5/31): I can't fix this, so I'm marking it off the list. I added a remark on this to my 'Show More' docs issue at https://github.com/MicrosoftDocs/feedback/issues/3770#issuecomment-1142559244.
  • [x] Consider a short focused section on RenderFragment for defining reusable, non-component rendering code in the components topic. It's currently a bit buried in the perf topic. Other docs can cross-link to it for a definition of RenderFragment with an example. Cross-links to and from this section make sense to index the various uses and examples. Besides, the child component section is the first mention of it, and it's not particularly well described at the moment in a general way there. This could be part of any updates for https://github.com/dotnet/AspNetCore.Docs/issues/25822. NOTE: Search out cross-links to re-point. There's one coming up in the Hybrid 'reuse components' topic. https://github.com/dotnet/AspNetCore.Docs/pull/26017
  • [x] Sync/async coverage for JS interop is a bit messy and needs re-org, clean up, and clarifications for IJSInProcessRuntime (3.1 or later)/IJSInProcessObjectReference (5.0 or later). https://github.com/dotnet/AspNetCore.Docs/pull/26101
  • [x] On the diff code blocks, most have a space between the +/- and the line. A few don't ... bring those into alignment with a space. https://github.com/dotnet/AspNetCore.Docs/pull/25983
  • [x] Per guidelines, we're supposed to avoid "log"-based auth session wording (e.g., "log in"/"log out") in favor of "sign"-based terminology (e.g., "sign in"/"sign out"). I've asked DR what he thinks because the PU regularly sends me "log"-based wording in PU content/code samples. We might need a PR to adjust the lingo globally. UPDATE (5/3): The word is given: The PU prefers "log{in|out|into|out of}" wording in framework naming, including in the project templates, so we'll ignore the doc division guidance on this point. The docs can probably just continue with a mix, since these are used interchangeably by the whole industry.
  • [x] There's an "Unhandled Exceptions" folder of docs in my browser. One cross-ref is to some debugging code that Javier recommended to a dev to log some debug details. Check and make sure that that scenario is covered. Check the other docs to see if there's anything useful to add to the docs. UPDATE: Only found a tiny NIT to fix. We have Error Boundaries. We have Steve's alternative global exception handling section (i.e., custom error component as a cascading value). We have good logging coverage in the Logging topic. I think we're good here (sans logging in Program.cs, but I'm going to add a nibblet on that shortly).
  • [x] Consider recasting or providing more explicit details on subdomain multiple WASM app hosting scenario at Hosted deployment with multiple Blazor WebAssembly apps per request at https://github.com/dotnet/AspNetCore.Docs/issues/25723. PR: https://github.com/dotnet/AspNetCore.Docs/pull/25754
  • [x] Make a RexHax™ 🙈 custom logger that deals with log scopes, place it into the dotnet/blazor-samples repo and link to it there. Note to self: It's on the I: drive! 😄 https://github.com/dotnet/AspNetCore.Docs/pull/25705#issuecomment-1106444305 UPDATE: Checking this off here because it's going to be tracked by its own issue at: https://github.com/dotnet/AspNetCore.Docs/issues/25982
  • [x] A number of code examples don't leverage implicit namespaces for .NET 6 or later. I think it's very important to address this before reaching .NET 7, so I've opened https://github.com/dotnet/AspNetCore.Docs/issues/25702 to fix up the examples. https://github.com/dotnet/AspNetCore.Docs/pull/25733 & https://github.com/dotnet/blazor-samples/pull/10 Note: IntelliSense doesn't indicate implicit @using directives in components, so I'll table that aspect for a future VS release that can help identify them.
  • [x] Drop ReferenceParent3 example from the docs sample repo. https://github.com/dotnet/blazor-samples/pull/7
  • [x] Add ".NET MAUI" and "Mac Catalyst" to no-loc metadata. https://github.com/dotnet/AspNetCore.Docs/pull/25384#discussion_r833483829 https://github.com/dotnet/AspNetCore.Docs/pull/25429
  • [x] For all of the 'add a package reference' guidance, use the INCLUDE to explain where the reader can get more info: [!INCLUDE[](~/includes/package-reference.md)]. https://github.com/dotnet/AspNetCore.Docs/pull/25260
  • [x] Walk the main doc set logging topic and identify which scenarios don't work/aren't relevant for Blazor WASM logging and call them out in the Blazor WASM section of the Blazor logging topic. It will be a sister update to the work that's being put in now on https://github.com/dotnet/AspNetCore.Docs/issues/25172. PR: https://github.com/dotnet/AspNetCore.Docs/pull/25705
  • [x] Purge lingering (sneaky 😈) 'Blazor component' naming in the docs. Most of these came in from PU content that I didn't catch on edits 🙈, but it's been dealt with fully in the Blazor docs now. https://github.com/dotnet/AspNetCore.Docs/pull/25118 ... Successful thus far with external doc sets: .NET MAUI docs, .NET docs, and I created a private (hidden) issue for Learn Modules. https://github.com/dotnet/docs/pull/28324 https://github.com/dotnet/maui/issues/4830 This work is on-going as I find and report it to other doc set maintainers.
  • [x] Take a look at https://github.com/dotnet/AspNetCore.Docs/issues/25103 for File Uploads (WebAssembly scenario). https://github.com/dotnet/AspNetCore.Docs/pull/25160
  • [x] Blazor SEO: Perform a meta description and first sentence review on the whole Blazor docs node. Look for opportunities to improve them. https://github.com/dotnet/AspNetCore.Docs/pull/25311
  • [x] For August: Re-assess success for changes on https://github.com/dotnet/AspNetCore.Docs/pull/24878. UPDATE (4/25): I'm checking this off per DR's remark that he's cool with the approaches taken to improve the SEO for the article.
  • [x] See https://github.com/dotnet/AspNetCore.Docs/pull/24868#issuecomment-1029500175 ... We don't want to show an example of using a HeadContent component that adds a global stylesheet from an RCL. It works, but it isn't recommended. It's an advanced scenario that devs can use at their own risk. #25161
  • [x] I had to remove the AOT definition cross-link. It was pointing to our .NET glossary definition, but there are problems with linking that content at the moment. I opened https://github.com/dotnet/docs/issues/27934 to see if updates can be made, but it was ignored by the .NET docs folks. Update (3/9): After looking the guidance over, I'm happy with what we have at this time. "AOT" is described clearly, along with the "hybrid"/"mixed-mode" aspect (without using those terms) (i.e., it still requires the managed DLLs). I'm going to check this item off as a won't fix scenario.
  • [x] Take a look at how the sample is linked into the SignalR-Blazor tutorial and the EF Core doc to react to devs mistakenly thinking that they need it in advance as a prereq. https://github.com/dotnet/AspNetCore.Docs/issues/24670#issuecomment-1016785786 https://github.com/dotnet/AspNetCore.Docs/pull/24684
  • [x] For the DI topic where [Inject] is described: Injected properties are expected to be available, so make them non-nullable. https://github.com/dotnet/aspnetcore/pull/39445#discussion_r787781819 https://github.com/dotnet/AspNetCore.Docs/pull/24685
  • [x] Confirm runtime relinking guidance stating that it's a publish-and-Release config gesture. Building a project-template-based test app produced a 51.5 MB app. Publishing in Debug resulted in a 9.3 MB app without relevant console compiler output. Publishing in Release resulted in a 6.6 MB app with console compiler output that indicated runtime relinking.
  • [ ] When https://github.com/dotnet/docs/issues/27395 is resolved and Mono/WASM MSBuild props are covered, update the cross-links from the targets file to the new official doc. Links can be located on the PR that added them at https://github.com/dotnet/AspNetCore.Docs/pull/24493.
  • [x] It seems like everyplace that we have hosted WASM, we should call out that the project must be run from the Server project. The errors for not doing so can be quite cryptic 😵. For example, the File Uploads topic example throws a "JSON token" error when the solution is run from the client app. It's not at all clear that it was simply run from the wrong project.
  • [x] In the Prerender and Integrate topic, clarify the line that speaks to the dev starting with RP/MVC and then including Blazor Server app in order to render components from pages/views. https://github.com/dotnet/AspNetCore.Docs/issues/23948#issuecomment-974559793 ~Related: I add a HeadOutlet component to the layout at Line 212 for the scenario of an RP/MVC app that embeds components from a hosted WASM app (render-mode="ServerPrerendered") to allow components to control head content. Due to time constraints at the moment, the coverage is going in. When I address this item and touch that line :point_up: also run a quick test and confirm the scenario for Line 212 actually works ... or did I just make up a new Blazor feature all by myself?! 🙈😄~ The last piece was fixed as part of https://github.com/dotnet/AspNetCore.Docs/pull/24548 prompted by a user issue. The first bit is fixed by https://github.com/dotnet/AspNetCore.Docs/pull/24665.
  • [x] InputFile component preview guidance (6.0) is in the new Blazor Images topic and probably should be better cross-linked (https://github.com/dotnet/AspNetCore.Docs/issues/23802). https://github.com/dotnet/AspNetCore.Docs/pull/24666
  • [x] For passing extra params to elements with Action delegates, I whipped up a (contrived) example on https://github.com/dotnet/AspNetCore.Docs/pull/23566#issuecomment-947503152. It's not particularly complicated to enhance the example that appears in the Perf topic. I'm going to merely leave the test case on that PR comment for the time being.
  • [x] Ask RA for an internal issue on pivot search results. The problem is that the whole topic is indexed but the links to the topics don't point to the pivot where the content lives ... the topic loads with whatever default pivot the user has selected earlier (or the default). I think the search results should be by-pivot with a clear pivot indication and with a pivot-specific landing link. This would mean that it's possible for the reader to receive two or more search result links, but the reader would be taken directly to the pivot and not get confused when the land to find no content for what they searched. UPDATE (1/31): Sent an email to the docs team on 1/31/2022 with DR and Artak copied. This is considered 'closed' for Blazor work until they resolve it. In the few spots that we use pivots in Blazor docs, I'll maintain NOTEs where needed to surface alternative pivot coverage.
  • [x] For Blazor AOT, add remark ... https://github.com/dotnet/aspnetcore/issues/37092#issuecomment-930356311 ... also see :point_right: https://github.com/dotnet/aspnetcore/issues/35302 https://github.com/dotnet/AspNetCore.Docs/pull/24686
  • [x] Ping Pranav to take a look at the new guidance at https://docs.microsoft.com/en-us/aspnet/core/blazor/performance?view=aspnetcore-6.0#avoid-recreating-delegates-for-many-repeated-elements-or-components. The pattern was signed off by Artak at https://github.com/dotnet/aspnetcore/issues/17886#issuecomment-566158668 with an update later per https://github.com/dotnet/AspNetCore.Docs/pull/23566.
  • [x] Create an Overview in the Fundamentals node with a bare bones explanation of a component in order to understand fundamental concepts+examples better, orient on any doc consumption features (e.g., use of working examples, sample apps, use of the this keyword, resolve #14216, etc.), and any other prelim remarks before the reader gets into the meat of the coverage. https://github.com/dotnet/AspNetCore.Docs/issues/22230#issuecomment-875910670 https://github.com/dotnet/AspNetCore.Docs/pull/24880
  • [x] JS interop
    • [x] Call JS from .NET doesn't demo cancellation token use with aborting a long-running JS FN. I think a working cut-'n-paste example wouldn't take up much space and would be nice to show. Issue: https://github.com/dotnet/AspNetCore.Docs/issues/25319 PR: https://github.com/dotnet/AspNetCore.Docs/pull/25346
    • [x] The Call .NET from JS topic mentions but doesn't show an example of calling a generic class method ... include one? Cross-ref: InteropComponent.razor, jsinteroptests.js, and GenericType<TValue> Issue: https://github.com/dotnet/AspNetCore.Docs/issues/25450 PR: https://github.com/dotnet/AspNetCore.Docs/pull/25465
    • [x] Is there anything else in the family of JS interop JS function calls that should be mentioned or explained out with examples? Cross-ref: PU Microsoft.JSInterop.ts UPDATE: Let's hold with what we have for additional community feedback and/or PU guidance on any missing scenarios, probably edge scenarios tho given that the most common scenarios should be covered now with the addition of the prior two bullet points.
  • [x] Old sample apps dropped on #23228. Do we want to make the snippet sample apps into running apps and link them in the Blazor docs? Related ?: Whether or not we make snippet samples for download, should sample apps in general be kept/cross-linked in the official MS samples repo for easy download. This was a long-range plan for all ASP.NET Core sample apps AFAIK, but it hasn't taken place due to constant higher-priority work. We could at least make the Blazor Server-EF Core final app and the two Blazor-SignalR tutorial final apps available via that mechanism for easy download. Begins with https://github.com/dotnet/AspNetCore.Docs/pull/24880, but I'll be performing further updates quickly to use the new dotnet/blazor-samples repo.
  • [x] WRT Static files caching behaviors, I think updates have addressed it. https://github.com/dotnet/AspNetCore.Docs/pull/23235) https://github.com/dotnet/AspNetCore.Docs/pull/24807

UE pass tracking

Only includes topics that weren't reached in '21 or new topics added in '21.

  • [ ] Components
    • [ ] Control <head> content
    • [ ] Dynamically-rendered components
  • [x] File downloads topic: Use fully-working examples, place code into snippet sample apps, and see the cross-linked discussion and bits mentioned in https://github.com/dotnet/AspNetCore.Docs/pull/24560#issuecomment-1011301931.
  • [ ] Call a web API from WebAssembly — Although this topic had it's UE pass in '21 on #22410, the web API aspects rely on the main doc set web API article, and churn in the web API doc can break the Blazor experience in this topic.
  • [x] Images topic: Use fully-working examples.
  • [ ] Security and Identity — See :point_right: #20708, #19807, and #19226. I placed an ellipsis in the App component example INCLUDE(s) to cover 6.0 churn. See: https://github.com/dotnet/AspNetCore.Docs/issues/23696. Work https://github.com/dotnet/AspNetCore.Docs/issues/25026 in this node. There are general remarks and some specific items for AAD/AAD B2C and UserManager/SignInManager at #27279.
    • [ ] Overview — Either here or in the Blazor Server Overview: #22405
    • [ ] Blazor Server — https://github.com/dotnet/AspNetCore.Docs/issues/27432
      • [ ] Overview — Review, work was done on :point_right: https://github.com/dotnet/AspNetCore.Docs/pull/20119 and mention https://github.com/dotnet/AspNetCore.Docs/issues/19797#issuecomment-779294104.
      • [ ] Threat mitigation
      • [ ] Additional scenarios — Review, work was done on :point_right: https://github.com/dotnet/AspNetCore.Docs/pull/20119. Also, see :point_right: https://github.com/dotnet/AspNetCore.Docs/issues/22122. Refresh token info request: https://github.com/dotnet/AspNetCore.Docs/issues/26086.
    • [ ] Blazor WebAssembly — See :point_right: #20512 & https://github.com/dotnet/AspNetCore.Docs/issues/21816#issuecomment-803152089. Also, consider surfacing a smidgen of WebAssembly "sandbox" content in a new section with a cross-link or two (e.g., https://webassembly.github.io/spec/core/intro/introduction.html#security-considerations, https://webassembly.org/docs/security/). It would be nice to clarify that WebAssembly (as a non-MS technology) is constantly undergoing security patching, and there is a place (I'll find the link) where devs can see potential security vulnerabilities, work on WebAssembly security, and patches being put into place.
      • [ ] Overview — See :point_right: https://github.com/dotnet/AspNetCore.Docs/issues/21741 (cross-link to an Azure doc from all of our AAD/B2C docs)
      • [ ] Standalone with Authentication library — See :point_right: https://github.com/dotnet/AspNetCore.Docs/issues/21510, https://github.com/dotnet/aspnetcore/issues/30068, https://github.com/dotnet/AspNetCore.Docs/issues/23712
      • [ ] Standalone with Microsoft Accounts
      • [ ] Standalone with AAD
      • [ ] Standalone with AAD B2C — "custom user flows" language https://github.com/dotnet/AspNetCore.Docs/issues/21144. Take a look at signup-signin Azure UI per https://github.com/dotnet/aspnetcore/issues/39401#issuecomment-1009511236. Note to readers that B2C with Graph API isn't supported.
      • [ ] Hosted with AAD — See :point_right: https://github.com/dotnet/AspNetCore.Docs/issues/21983, https://github.com/dotnet/AspNetCore.Docs/issues/26165
      • [ ] Hosted with AAD B2C — "custom user flows" language https://github.com/dotnet/AspNetCore.Docs/issues/21144; see :point_right: https://github.com/dotnet/AspNetCore.Docs/issues/21640. Take a look at signup-signin Azure UI per https://github.com/dotnet/aspnetcore/issues/39401#issuecomment-1009511236. Take a look at an edge case for wanting the id token in spite of the default code flow: https://github.com/dotnet/aspnetcore/issues/39311#issuecomment-1138777859 w/addl discussion at https://github.com/dotnet/aspnetcore/pull/41873 ... I don't think that we'll cover it, but take a look, especially if MS IdP/MSAL/Azure docs cover it and it can be cross-linked (and this assumes that we're even keeping this topic in the first place. It might get the 🔪.) Note to readers that B2C with Graph API isn't supported directly ... the host ASP.NET Core app can expose Graph API via web API calls.
      • [ ] Hosted with Identity Server — See :point_right: https://github.com/dotnet/AspNetCore.Docs/issues/21842 and also see https://github.com/dotnet/AspNetCore.Docs/issues/22753 (Was it just VS not creating the project with the correct Identity config to run OOB when deployed to Azure directly from VS?) Consider splitting out custom domains from IdS, and check on the B1 requirement IdS-only scnearios (it might not be a requirement in that case). See :point_right: https://github.com/dotnet/AspNetCore.Docs/issues/24067#issuecomment-980033383.
      • [ ] Additional scenarios - Look for split-out opportunities. Possibly add an introductory ToC with section descriptions. Consider if the Unauthenticated or unauthorized web API requests in an app with a secure default client section could be better cross-linked/mentioned explicitly in the individual WASM security topics (https://github.com/dotnet/AspNetCore.Docs/issues/22217 and https://github.com/dotnet/AspNetCore.Docs/pull/22220). Consider making an INCLUDE out of the prerendering guidance and shooting a copy of that into the Prerendering and Integration topic (https://github.com/dotnet/AspNetCore.Docs/issues/23441). Check on the "outgoing HttpResponseMessage" language in the API doc, per discussion at #26739 (and respond back on that issue with the final answer from the PU).
      • [ ] AAD groups and roles — https://github.com/dotnet/AspNetCore.Docs/pull/20856; do we need a Blazor Server pivot, or can we cross-link? See :point_right: #22422
      • [ ] Graph API — See :point_right: #22657
    • [ ] Content Security Policy
  • [ ] Debug WebAssembly — Resolve :point_right: #23373 ... and we'll probably need to show full files everywhere we refer to tasks.json/launch.json due to https://github.com/OmniSharp/omnisharp-vscode/issues/4542. See :point_right: https://github.com/dotnet/AspNetCore.Docs/issues/23777
  • [ ] WebAssembly native dependencies
  • [ ] Test components - Specifically, let's consider hosting example component tests for WASM and Server (TestServer). https://github.com/dotnet/AspNetCore.Docs/issues/25263
  • [ ] Progressive Web Applications — See :point_right: https://github.com/dotnet/AspNetCore.Docs/issues/21100
  • [ ] Host and deploy: Apache for hosted WASM/sub-app scenarios might need more work. See 👉 https://github.com/dotnet/AspNetCore.Docs/pull/24519#issuecomment-1008480134.
    • [ ] Overview — Perhaps for Routing, too, but clarify the navigation behavior of NavigationManager.NavigateTo. See :point-right: https://github.com/dotnet/AspNetCore.Docs/pull/22146#issuecomment-827802596.
    • [ ] Blazor Server — See :point_right: https://github.com/dotnet/AspNetCore.Docs/issues/21226
    • [ ] Blazor WebAssembly — See :point_right: https://github.com/dotnet/AspNetCore.Docs/issues/19979 and https://github.com/dotnet/AspNetCore.Docs/issues/21829#issuecomment-803192673 and validate web.config post PR https://github.com/dotnet/AspNetCore.Docs/pull/24950 and in light of discussion on https://stackoverflow.com/a/69888016 and https://stackoverflow.com/a/70967738. Probably add a tagged SO filter link: https://stackoverflow.com/questions/tagged/blazor+iis+compression
    • [ ] WebAssembly deployment layout
  • [ ] Blazor Server and EF Core
  • [ ] External to the Blazor node: Scaffolding topic sections that pertain to Blazor — See :point_right: https://github.com/dotnet/AspNetCore.Docs/issues/8434#issuecomment-808893911

SEPARATE WORK ITEM FOR SECURITY NODE

  • [ ] Consider a topic on Azure Functions with Blazor WASM+AAD/B2C: My understanding is that it was NOT possible ... at least for B2C (perhaps AAD always worked). See https://github.com/dotnet/aspnetcore/issues/35794#issuecomment-908683517. That discussion occurred back in August, 2021, so things may have improved by now for B2C/WASM/AF. IMO, this architecture makes a lot of sense for WASM serverless scenarios. :+1:

UE pass tracking ('23)

New topics added in '22 that probably wouldn't receive a UE pass until '23.

  • Blazor Hybrid
    • Overview
    • Tutorials
      • Overview
      • .NET MAUI
      • Windows Forms
      • WPF
    • Routing and navigation
    • Static files
    • Dev Tools
    • Reuse components
    • Security
      • Overview
      • Security considerations

guardrex avatar Jan 14 '22 13:01 guardrex

Is it yet possible to compile a WASM Blazor app using AOT into pure .wasm files, with no .dll or .bin downloads? If so, is it possible to split these .wasm files into chunks much like a JS SPA app would be? I'd like Blazor to get to a stage where my app is served in several chunks (each a .wasm file with DLL code obfuscated enough to get past firewalls), where you have the chunks split up intelligently for optimal caching. For instance, one chunk could just contain commonly-used DLL code that is likely not to change, such as System.Collections.Generic. Another could contain other .NET framework dependencies for the app. Another could contain Nuget package dependencies, and another could contain the remaining app code (most likely to need regular updates).

jez9999 avatar Oct 20 '22 07:10 jez9999

@jez9999 ... That discussion is taking place on https://github.com/dotnet/aspnetcore/issues/36978. The multipart bundle guidance that we have is at ...

https://learn.microsoft.com/aspnet/core/blazor/host-and-deploy/webassembly-deployment-layout

guardrex avatar Oct 20 '22 08:10 guardrex