dotnet / aspnetcore

ASP.NET Core is a cross-platform .NET framework for building modern cloud-based web applications on Windows, Mac, or Linux.
https://asp.net
MIT License
35.37k stars 9.99k forks source link

Change the order of the project templates so they show up in VS grouped together #9460

Closed danroth27 closed 5 years ago

danroth27 commented 5 years ago

The Blazor client-side and server-side templates should show up in VS grouped together. Currently the Blazor server-side template shows up further down the list.

blazor templates

Eilon commented 5 years ago

Preview4?

danroth27 commented 5 years ago

Whoops - should be Preview5.

@mkArtakMSFT

mkArtakMSFT commented 5 years ago

After some back and forth on this we've decided to stick to the following order:

Template Current order Preferred order
EmptyWeb-CSharp 100 100
EmptyWeb-FSharp 100 100
WebApi-Csharp 200 200
WebApi-Fsharp 200 200
Worker-Csharp 302 300
RazorPagesWeb-Csharp 300 400
StarterWeb-Csharp 300 400
GrpcService 303 500
RazorComponentsWeb-Csharp 304 600
BlazorHosted-Csharp 300 600
BlazorStandalone-Csharp 300 600
RazorClassLibrary-Csharp 305 700
Angular 310 800
React 315 800
ReactRedux 320 800
Eilon commented 5 years ago

Naive here, but what happens when multiple items are at the same order? Random? Alphabetical?

mkArtakMSFT commented 5 years ago

Alphabetica (according to @danroth27) as well as what we can see currently in VS.

Eilon commented 5 years ago

Is that acceptable? It'll vary based on loc, which I don't think we want to depend on. I would think we want to have a completely explicit order.

mkArtakMSFT commented 5 years ago

Just saw this after merging. Two points:

  1. same ids were used and it used to be fine.
  2. If this is indeed a concern, I absolutely can diff those manually too.

@danroth27 ?

danroth27 commented 5 years ago

I think @Eilon has a good point about localization. We want a stable ordering across languages. Let's make the full ordering explicit.

mkArtakMSFT commented 5 years ago

Sure, will do that now

mkArtakMSFT commented 5 years ago

The final list will look like:

Template Current order Preferred order
EmptyWeb-CSharp 100 100
EmptyWeb-FSharp 100 101
WebApi-Csharp 200 200
WebApi-Fsharp 200 201
Worker-Csharp 302 300
RazorPagesWeb-Csharp 300 400
StarterWeb-Csharp 300 410
GrpcService 303 500
RazorComponentsWeb-Csharp 304 600
BlazorHosted-Csharp 300 610
BlazorStandalone-Csharp 300 620
RazorClassLibrary-Csharp 305 700
Angular 310 800
React 315 810
ReactRedux 320 820