Closed guardrex closed 1 year ago
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 ... 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
2022
For the 2021 idea list, UE pass list, and notes, see Blazor project tracking 2021 (dotnet/AspNetCore.Docs #19286).
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.
MutationObserver
pattern where its discussed.<span aria-hidden="true">XXXXX</span><span class="visually-hidden">XXXXX</span>
FileSystem
API use in Blazor apps?testassets
pieces in the framework to see what might be helpful for devs to see in docs. It's a large task tho because there's so much there. This probably can't be worked in 23H1, possibly for 23Q3 tho.QuickGrid
example that opens and closes a detail record component without losing the page and scroll position of the grid. For context, see https://github.com/dotnet/blazor-samples/issues/58.http://useiconic.com
. https://github.com/dotnet/blazor-samples/issues/51 PR: https://github.com/dotnet/blazor-samples/pull/52async
modifier. https://github.com/dotnet/blazor-samples/issues/50 PR: https://github.com/dotnet/blazor-samples/pull/52NavigationManager
asNavigationManager
. However, the PU favorsNavigation
in their examples. BTW, the glob-loc topic usesNav
. Consider making this consistent onNavigation
everywhere, including in the snippet sample apps (and other sample apps). https://github.com/dotnet/AspNetCore.Docs/pull/27153<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.dotnet/blazor-samples
repo (renameListItem
toListItem1
, place the newListItem2
). I scribbled a note to deleteShared/ListItem.razor
and to killPages/dependency-injection/Preferences.razor
. #27517/p:RuntimeIdentifier={RID}
but the self-contained setting doesn't (/p:SelfContained=false
).Program.cs
to the Logging topic. https://github.com/dotnet/AspNetCore.Docs/pull/26449<xref:blazor/js-interop/index#location-of-javascript>
. https://github.com/dotnet/AspNetCore.Docs/pull/26166dotnet/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/26117RouteView
on https://github.com/dotnet/AspNetCore.Docs/pull/26100. Opened https://github.com/dotnet/AspNetCore.Docs/issues/26099 to ask aboutSectionOutlet
/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! 🏖️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/26087RenderFragment
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 ofRenderFragment
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/26017IJSInProcessRuntime
(3.1 or later)/IJSInProcessObjectReference
(5.0 or later). https://github.com/dotnet/AspNetCore.Docs/pull/26101diff
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/25983Program.cs
, but I'm going to add a nibblet on that shortly).dotnet/blazor-samples
repo and link to it there. Note to self: It's on theI:
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@using
directives in components, so I'll table that aspect for a future VS release that can help identify them.ReferenceParent3
example from the docs sample repo. https://github.com/dotnet/blazor-samples/pull/7no-loc
metadata. https://github.com/dotnet/AspNetCore.Docs/pull/25384#discussion_r833483829 https://github.com/dotnet/AspNetCore.Docs/pull/25429[!INCLUDE[](~/includes/package-reference.md)]
. https://github.com/dotnet/AspNetCore.Docs/pull/25260HeadContent
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[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/24685Debug
resulted in a 9.3 MB app without relevant console compiler output. Publishing inRelease
resulted in a 6.6 MB app with console compiler output that indicated runtime relinking.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.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.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/24666Action
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.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/24880InteropComponent.razor
,jsinteroptests.js
, andGenericType<TValue>
Issue: https://github.com/dotnet/AspNetCore.Docs/issues/25450 PR: https://github.com/dotnet/AspNetCore.Docs/pull/25465Microsoft.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.dotnet/blazor-samples
repo.UE pass tracking
Only includes topics that weren't reached in '21 or new topics added in '21.
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 andUserManager
/SignInManager
at #27279.[Authorize]
attribute applied with@attribute
(or in code) to a component that it automatically handles tossing an unauthenticated user to the IdP for sign in. It requires considerably less markup/code to implement than an<AuthorizeView>
for the mere purpose of including a customRedirectToLogin
component in the project for the<NotAuthorized>
render fragment.HttpResponseMessage
" language in the API doc, per discussion at #26739 (and respond back on that issue with the final answer from the PU).tasks.json
/launch.json
due to https://github.com/OmniSharp/omnisharp-vscode/issues/4542. See :point_right: https://github.com/dotnet/AspNetCore.Docs/issues/23777TestServer
). https://github.com/dotnet/AspNetCore.Docs/issues/25263NavigationManager.NavigateTo
. See :point-right: https://github.com/dotnet/AspNetCore.Docs/pull/22146#issuecomment-827802596.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
SEPARATE WORK ITEM FOR SECURITY NODE
UE pass tracking ('23)
New topics added in '22 (or earlier) that haven't had the 🦖 Rex Treatment™ 🦖 (or at least haven't had it for quite a long time ... years) ...