Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

⏱️ Call to action: Help shape the future for ASP.NET Core #26625

Closed
mkArtakMSFT opened this issue Oct 5, 2020 · 89 comments
Closed

⏱️ Call to action: Help shape the future for ASP.NET Core #26625

mkArtakMSFT opened this issue Oct 5, 2020 · 89 comments
Milestone

Comments

@mkArtakMSFT
Copy link
Member

mkArtakMSFT commented Oct 5, 2020

Hi. Thanks for stopping by.

We're actively working on .NET 6 planning and we would like your help with this.
In the next few weeks we are going to scan through all the issues in our backlog and identify candidates for .NET 6. To make a decision whether an issue is a good candidate or not for the upcoming release, we also look into the number of upvotes 👍 (and other reactions). To help us prioritize the issues the community feels are most important, please find the issues you want to see resolved and upvote 👍 them.

⚠️ Please don't add descriptions of what you want to see as comments in this issue. Simply find an existing of file a new issue and upvote it

@mkArtakMSFT mkArtakMSFT added this to the Discussions milestone Oct 5, 2020
@mkArtakMSFT mkArtakMSFT pinned this issue Oct 5, 2020
@mkArtakMSFT mkArtakMSFT changed the title Call to action: Help shape the future for ASP.NET Core ⏱️ Call to action: Help shape the future for ASP.NET Core Oct 5, 2020
@boukenka
Copy link

boukenka commented Oct 6, 2020

AoT compilation #5466

@boukenka
Copy link

boukenka commented Oct 6, 2020

SVG Support in Blazor #18271

@Julien-Marpault
Copy link

HTML Autofocus supprt in Blazor WASM

@Julien-Marpault
Copy link

Projet Reload on save with Kestrel like IIS Express does.

@glararan
Copy link

glararan commented Oct 6, 2020

#26091 Download compressed resources by default

@199621616
Copy link

MobileBlazorbindings in the experiment has got a good response. We hope that it can become a formal project of Microsoft as soon as possible, and can provide complete functions, so that users can focus on their own business logic, especially the hybrid applications. It seems to have a chance to surpass electron, more streamlined but more powerful.

@rogihee
Copy link
Contributor

rogihee commented Oct 6, 2020

Editor & debugger improvements and Hot Reload (Edit & Continue) : #5456

@expcat
Copy link

expcat commented Oct 6, 2020

#11558
Streaming API support to MVC
Example: #4833 (comment)

public class MyStreamingApi : Controller
{
     [HttpGet("/tweets")]
     [Streaming]
     public async IAsyncEnumerable<Tweet> Get()
     {
         while (var tweet = await GetOneTweet())
         { 
             yield return tweet;
         }
     }
}

@mkArtakMSFT
Copy link
Member Author

All this is great, folks. Please make sure to upvote on the related issues, rather than linking issues here. That's what we're going to look at after all.

@expcat
Copy link

expcat commented Oct 6, 2020

@mkArtakMSFT #11558 is locked, we can't to upvote.

@papyr
Copy link

papyr commented Oct 6, 2020

Feature Request: Drop-in component for ASP Identity Administration, Portals, UI, SSO, Claims, AD-Sync, Token, Multi.Tenant Management so that the Visual Studio templates don't require commercial licensed 3rd party components.

I have been watching/waiting few yrs. patiently, however some recent changes have forced me to request -- Microsoft revisit this for their developer community, keeping in mind some of the pricing out there compares to the salaries of 10 to 15 developers in Bangladesh, Vietnam, India, Philippines etc.

Core & Basic need, yet very complex and critical.

There's a void in .NET native drop-in solution, unlike the Java, PHP Stacks etc, where there are many native drop in Identity Administration & Management Frameworks options that are leveraged across all their platforms seamlessly by developers, for e.g. the J2EE Pluggable Identity Management Framework or JSR 168 or JSR 286 or JSR-351 or JSR-375.

Why is this important? because using Java or PHP, it has allowed easy, clear, core and basic functionalities in those native stacks. As a result if you look JSR 168 or JSR 286 or JSR-351 or JSR-375 Multi-tenants, Group to roles, or to claims vice versa is so easy vs. NET , mobile devices, portals, they all work seamlessly and cohesively with security fixes managed by either IBM or SalesForce or Oracle or Red Hat etc. This is enables developer to be productive right out of the gate.

In .Net there is void/very limited support, always requiring a combination of 3rd parties as a barrier to entry & adoption of ASP app. This is non-trivial for developers and security vulnerability that requires the attention of Microsoft Experts.

Example: We have private information sharing site non OSS for the community almost free (pay if you want), and when we started with web forms, then Simple Membership, the Identity, Identity 2 ASP MVC we had implement much of it on top of these from scratch, when we moved to .NET Core it was another effort. Besides the development there was a lot of confusion on the internal concepts and how they now meant new things. Roles, Claims, Federation, SAML then SAML 2.0 and then Open ID 2.

Describe the solution you'd like

  • A drop-in is extensible solution that supports ASP Identity eco-system, Administration, UI, SSO, Token, Multi-tenant Management
  • A configuration section to turn on-off the various features.
  • Embedded into VS Templates (remove Identity Server, use native MS option etc.)
  • Allow-Easy AD Active Directory Integration
  • User Defined/Created Fields UDF from the Admin level Support.
  • The current options and the pricing eliminate many of the existing applications from continuing usage on the .NET stack without extensive retooling or completely abandoning the MS framework.
  • SAML2/CAS per @tbonham
  • Allow template option Configuration.MultiTenancy.IsEnabled = true; Global DataFilter for Tenant entities

Its high time MS address this core gate-keeping feature!!

@papyr
Copy link

papyr commented Oct 6, 2020

  • Controller/API DDOS throttling support
  • Login Controller/API Captcha Anti Spambot support
  • Timeouts are easily by passed using Singal-R and there's no way to force anonymous connections to disconnect
  • No way to handle anonymous chats on public website. For e.g. if Web User is Surfing/browsing for help or FAQ on product/chat on ASP website with SignalR, we have to create a duct-taped solution for this, there is no way to identify them uniquely to create a chat stream/session unless they login.

@mkArtakMSFT
Copy link
Member Author

@mkArtakMSFT #11558 is locked, we can't to upvote.

@expcat I've reopened it!

@mkArtakMSFT
Copy link
Member Author

@papyr please upvote to the related issues and if you can't find such, create new issues for each one separately. That way we can actually track these requests. Otherwise many asks will be lost / forgotten.

@gulshan
Copy link

gulshan commented Oct 6, 2020

Built-in admin panel template and Vue integration.

@papyr
Copy link

papyr commented Oct 6, 2020

@mrkarMSFT thanks for the idea 👍 but they keep closing my feature requests and locking them, so its not able to upvote!

Can you please unlock 26594 to allow voting on the feature please!

@papyr
Copy link

papyr commented Oct 6, 2020

Built-in admin panel template and Vue integration.

Do you mean Like Skoruba.Admin then upvote #26594

@mnmr
Copy link

mnmr commented Oct 6, 2020

RFC 7692 (WebSocket per-message compression) for SignalR. It seems this depends on runtime#20004 but it seems relevant in this context. There was an old issue referencing this, but it is now closed and I could find no equivalent open issue here, so I am recommending that people upvote on the runtime issue.

@3GDXC
Copy link

3GDXC commented Oct 6, 2020

blazor wasm-to-wasm interop without javascript (WASI) [https://github.com/WebAssembly/interface-types/blob/master/proposals/interface-types/Explainer.md]

@3GDXC
Copy link

3GDXC commented Oct 6, 2020

please provide a way to improve the user experience for blazor wasm load progress, progress bar and/or filename currently downloading.

@3GDXC
Copy link

3GDXC commented Oct 6, 2020

project template blazor server/wasm using fast (components) as a user interface as quick start/example

@3GDXC
Copy link

3GDXC commented Oct 6, 2020

please add support for sftp

@seangwright
Copy link
Contributor

"Proposal: View Component Slots" is locked

Provide a built-in or otherwise framework supplied mechanism for View Components, when rendered via a tag helper, to render user-supplied child content that can be injected into the View Component's view template in pre-defined locations

#4901

@saint4eva
Copy link

In-house (Microsoft made) identity server and other security modules

@valeriob
Copy link

valeriob commented Oct 7, 2020

I can't find an issue regarding fast dev loop in general that is not mentioning blazor, I would like the whole dev experience would be much faster

@mrpmorris
Copy link

Might it be a good idea to create a new call to action with comments disabled?
@mkArtakMSFT

@ElderJames
Copy link
Contributor

Static site generator #26929

@danroth27
Copy link
Member

@mrpmorris If you're in an environment where files with "dll" extensions are simply blocked, then we've provided manual steps for changing the extension. We haven't identified any additional work in this area currently. If you think we need to do more, please file an issue with your suggestion and we'll take a look.

@perleon-dev
Copy link

perleon-dev commented Oct 16, 2020

Good morning, I hope I am not mistaken but I have noticed that the Timer () is
slows down when you switch tabs in the browser.
Make a basic example of the possible problems and this is my repository link (https://github.com/PercyLeon123/Cronometro).
To detail what happened, carry out some tests and record it.

Basic and simple example, slows down 10 minutes https://youtu.be/jHLVCSGXPMs
Example with more code, it slows down 1 minute and 50 seconds https://youtu.be/YhEVTVB2ai0
if you do not change the tab the timer does not slow down https://youtu.be/2NI0NhRLdFY

In the description I detail what happened. I'm Percy León from Lima-Peru
Contact me Linkedin
Greetings!

@mkArtakMSFT
Copy link
Member Author

Thanks for reporting this, @PercyLeon123.
Can you please file a new issue to track this separately.

@RehanSaeed
Copy link
Contributor

RehanSaeed commented Oct 17, 2020

Most of the feature requests seem to be Blazor related. While this is understandable due to it being a new technology, with respect to my fellow Blazor devs there are still those of us who don't use Blazor for various reasons that are not important. I hope that development time is not biased too much in favour of that technology to the detriment of core ASP.NET features that would help everyone due to their being core features. Here are the top features according to upvotes:

You can see a full list of non-Blazor issues here.

@tbonham
Copy link

tbonham commented Oct 17, 2020

Feature Request: Drop-in component for ASP Identity Administration, Portals, UI, SSO, Claims, AD-Sync, Token, Multi.Tenant Management so that the Visual Studio templates don't require commercial licensed 3rd party components.

I have been watching/waiting few yrs. patiently, however some recent changes have forced me to request -- Microsoft revisit this for their developer community, keeping in mind some of the pricing out there compares to the salaries of 10 to 15 developers in Bangladesh, Vietnam, India, Philippines etc.

Core & Basic need, yet very complex and critical.

There's a void in .NET native drop-in solution, unlike the Java, PHP Stacks etc, where there are many native drop in Identity Administration & Management Frameworks options that are leveraged across all their platforms seamlessly by developers, for e.g. the J2EE Pluggable Identity Management Framework or JSR 168 or JSR 286 or JSR-351 or JSR-375.

Why is this important? because using Java or PHP, it has allowed easy, clear, core and basic functionalities in those native stacks. As a result if you look JSR 168 or JSR 286 or JSR-351 or JSR-375 Multi-tenants, Group to roles, or to claims vice versa is so easy vs. NET , mobile devices, portals, they all work seamlessly and cohesively with security fixes managed by either IBM or SalesForce or Oracle or Red Hat etc. This is enables developer to be productive right out of the gate.

In .Net there is void/very limited support, always requiring a combination of 3rd parties as a barrier to entry & adoption of ASP app. This is non-trivial for developers and security vulnerability that requires the attention of Microsoft Experts.

Example: We have private information sharing site non OSS for the community almost free (pay if you want), and when we started with web forms, then Simple Membership, the Identity, Identity 2 ASP MVC we had implement much of it on top of these from scratch, when we moved to .NET Core it was another effort. Besides the development there was a lot of confusion on the internal concepts and how they now meant new things. Roles, Claims, Federation, SAML then SAML 2.0 and then Open ID 2.

Describe the solution you'd like

  • A drop-in is extensible solution that supports ASP Identity eco-system, Administration, UI, SSO, Token, Multi-tenant Management
  • A configuration section to turn on-off the various features.
  • Embedded into VS Templates (remove Identity Server, use native MS option etc.)
  • Allow-Easy AD Active Directory Integration
  • User Defined/Created Fields UDF from the Admin level Support.
  • The current options and the pricing eliminate many of the existing applications from continuing usage on the .NET stack without extensive retooling or completely abandoning the MS framework.

Its high time MS address this core gate-keeping feature!!

We need SAML2 and CAS add to.

@papyr
Copy link

papyr commented Oct 17, 2020

Auto Upgrade option PartialViews to ViewComponents Lots of legacy code is hung in the partials, we need to port that to the new ViewComponents or TagHelpers apps

@YohanSciubukgian
Copy link

YohanSciubukgian commented Oct 18, 2020

Concurrent frameworks can support a wider range of architectures (this list might not be exhaustive):

  • NodeJs support : x86 / x64 / arm32 / arm64 / ppc64le / ppc64be / x390x
  • OpenJDK support : x86 / x64 / arm32 / arm64 / ppc32 / ppc64le / s390x / sparcv9
  • AspNet core support : x86 / x64 / arm32 / arm64

please add support to more architectures.

@richlander
Copy link
Member

Thanks for the feedback @YohanSciubukgian. Our plan is to support most/all mainline OSes and chip combinations. We now have that. At present, the only one we're really missing is Linux x86 (32-bit). That comes up quite seldom. The additional ones that you've mentioned come up even less. The community is free to add the more niche configurations that you'd mention, but I'm doubtful that will happen. They don't, AFAICT, have any practical commercial value.

Personally, I'd much rather we added support for FreeBSD (on x64) than PPC. I suspect that would benefit an order of magnitude more users (if not much more).

Also note that we're currently putting a fair bit of effort into supporting Apple Silicon and Arm64 (generally). Just supporting new chips takes a lot of investment. Context: dotnet/runtime#43313 and https://devblogs.microsoft.com/dotnet/arm64-performance-in-net-5/. It is much better to focus on doing a great job for mainline chips and leave the legacy/hobbyist chips for other platforms to support.

There is a company working on MIPS support for .NET Core currently: dotnet/runtime#38069.

This HN post is super related: https://news.ycombinator.com/item?id=24640545.

@YohanSciubukgian
Copy link

Thanks for the feedback @YohanSciubukgian. Our plan is to support most/all mainline OSes and chip combinations. We now have that. At present, the only one we're really missing is Linux x86 (32-bit). That comes up quite seldom. The additional ones that you've mentioned come up even less. The community is free to add the more niche configurations that you'd mention, but I'm doubtful that will happen. They don't, AFAICT, have any practical commercial value.

Personally, I'd much rather we added support for FreeBSD (on x64) than PPC. I suspect that would benefit an order of magnitude more users (if not much more).

Also note that we're currently putting a fair bit of effort into supporting Apple Silicon and Arm64 (generally). Just supporting new chips takes a lot of investment. Context: dotnet/runtime#43313 and https://devblogs.microsoft.com/dotnet/arm64-performance-in-net-5/. It is much better to focus on doing a great job for mainline chips and leave the legacy/hobbyist chips for other platforms to support.

There is a company working on MIPS support for .NET Core currently: dotnet/runtime#38069.

This HN post is super related: https://news.ycombinator.com/item?id=24640545.

Thanks for your answer. I don't know if it's possible but as you had merged mono in dotnet/runtime repo for .net 5, I had in mind to expose existing architectures initially developped for mono but with official Microsoft support.

@richlander
Copy link
Member

Great question. The Mono in dotnet/runtime is targeted at Android, iOS, and wasm.

@Julien-Marpault
Copy link

Built in Identity Server #27053

@kursatarslan
Copy link

IdentityServer Token Manager

@mahdisml
Copy link

WebSocket performance improvement

@ivanivanyuk1993
Copy link

ivanivanyuk1993 commented Oct 22, 2020

Multithreading in web assembly
dotnet/runtime#40619

@daniel-p-tech
Copy link

JS isolation improvement - Colocate CS, CSS and JS files

#26145

@davidfowl
Copy link
Member

@mahdisml please file an issue with relevant details.

@saifurrehmanx
Copy link

Enterprise UI Components for Blazor

@mrlife
Copy link
Contributor

mrlife commented Oct 27, 2020

Publish Blazor Server or WASM to iOS/Android #27252

@mkArtakMSFT
Copy link
Member Author

mkArtakMSFT commented Oct 27, 2020

I can't find an issue regarding fast dev loop in general that is not mentioning blazor, I would like the whole dev experience would be much faster

@valeriob, here you go: #18486

@VenkateshSrini
Copy link

Compensating transactions are a very tricky part of micro services development. Can we come up with some sort of high level framework that will facilitate it. The lower level implementation say for example an implementation with redis or RabbitMQ can then be provided my community to augment it.

@Asyvix
Copy link

Asyvix commented Oct 30, 2020

better startup structure. now "ConfigureServices" and "Configure" is complicate for new asp.net developer.

@mrlife
Copy link
Contributor

mrlife commented Oct 30, 2020

Blazor InputSelect support for multiple attribute. #5519

@mikeandersun
Copy link

Decuple the SignInManager and UserManager in Identity.
#22597

@osintsevvladimir
Copy link

Dynamically creating and adding components.
Angular ComponentFactoryResolver alternative.

@Component({
 selector: 'app-root',
 template: `
 <template #parent></template>
 <button (click)="createChild()">Create Child</button> 
 `,
})
export class ParentComponent {
 @ViewChild('parent', { read: ViewContainerRef }) container;

 constructor(private resolver: ComponentFactoryResolver) {}

 createChild() {
 this.container.clear();
 const factory: ComponentFactory = this.resolver.resolveComponentFactory(ChildComponent);
 this.componentRef: ComponentRef = this.container.createComponent(factory);
 }
}

@dotnet dotnet locked as too heated and limited conversation to collaborators Nov 4, 2020
@mkArtakMSFT mkArtakMSFT unpinned this issue Nov 16, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests