Skip to content

[release/6.0-rc2] Use minimal APIs for F# project templates#36660

Merged
halter73 merged 9 commits into
release/6.0-rc2from
backport/pr-35833-to-release/6.0-rc2
Sep 20, 2021
Merged

[release/6.0-rc2] Use minimal APIs for F# project templates#36660
halter73 merged 9 commits into
release/6.0-rc2from
backport/pr-35833-to-release/6.0-rc2

Conversation

@github-actions
Copy link
Copy Markdown
Contributor

@github-actions github-actions Bot commented Sep 17, 2021

Backport of #35833 to release/6.0-rc2

/cc @halter73 @vzarytovskii

Customer Impact

This updates two of the F# project templates (dotnet new mvc -lang "F#" and dotnet new webapi -lang "F#") to use the new minimal hosting (WebApplication.CreateBuilder(args) instead of Host.CreateDefaultBuilder(args)). This removes Startup.fs from both project templates and moves the logic that was in Startup.fs to Program.fs.

This is an F# project template change very similar to what we've already done for all the ASP.NET C# project templates. The empty web F# project template (dotnet new web -lang "F#") has also already been updated to minimal APIs.

This brings all the ASP.NET project templates into alignment. The one gap is that the F# webapi project template does not support a -minimal flag yet like the C# version does to uses minimal route handlers instead of controllers.

Regression?

  • Yes
  • No

Risk

  • High
  • Medium
  • Low

This is an F# project template change very similar to what we've already done for all the ASP.NET C# project templates and the empty web F# project template (dotnet new web -lang "F#").

Verification

  • Manual (required)
  • Automated

@github-actions github-actions Bot requested a review from Pilchie as a code owner September 17, 2021 17:16
@ghost ghost added the area-mvc Includes: MVC, Actions and Controllers, Localization, CORS, most templates label Sep 17, 2021
@halter73 halter73 added the Servicing-consider Shiproom approval is required for the issue label Sep 17, 2021
@ghost
Copy link
Copy Markdown

ghost commented Sep 17, 2021

"Hi github-actions[bot]. Please make sure you've updated the PR description to use the Shiproom Template. Also, make sure this PR is not marked as a draft and is ready-to-merge.

To learn more about how to prepare a servicing PR click here.

@halter73 halter73 added Servicing-approved Shiproom has approved the issue and removed Servicing-consider Shiproom approval is required for the issue labels Sep 20, 2021
@halter73 halter73 merged commit 8a1974d into release/6.0-rc2 Sep 20, 2021
@halter73 halter73 deleted the backport/pr-35833-to-release/6.0-rc2 branch September 20, 2021 16:53
dougbu added a commit that referenced this pull request Sep 22, 2021
* [release/6.0-rc2] Update dependencies from dotnet/efcore (#36635)

[release/6.0-rc2] Update dependencies from dotnet/efcore

* [release/6.0-rc2] Handle JsonExceptions in RequestDelegateFactory (#36627)

* Handle JsonExceptions like InvalidDataExceptions in RequestDelegateFactory

* Don't catch InvalidDataExceptions when reading JSON

* [release/6.0-rc2] Update dependencies from dotnet/runtime dotnet/efcore (#36651)

[release/6.0-rc2] Update dependencies from dotnet/runtime dotnet/efcore

* Avoid using invalid content type for ValidationProblemDetails (#36618)

Co-authored-by: Safia Abdalla <safia@microsoft.com>

* Update dependencies from https://github.com/dotnet/efcore build 20210917.6 (#36667)

[release/6.0-rc2] Update dependencies from dotnet/efcore

* Use a fake clock in the test (#36626)

Co-authored-by: Chris R <Tratcher@outlook.com>

* Update dependencies from https://github.com/dotnet/runtime build 20210917.8 (#36675)

[release/6.0-rc2] Update dependencies from dotnet/runtime

* [release/6.0-rc2] Throw for invalid TryParse and BindAsync (#36662)

* Backport of #36628 to release/6.0-rc2
* Throw for invalid TryParse and BindAsync
* nit
* use TypeNameHelper
* nit

Co-authored-by: Brennan <brecon@microsoft.com>

* Update dependencies from https://github.com/dotnet/efcore build 20210917.8 (#36681)

[release/6.0-rc2] Update dependencies from dotnet/efcore

* Revert Enforce WebSockets Transport for Blazor (#36656)

* Revert Enforce WebSockets Transport for Blazor (changes introduced in #34644)
* Updated Release JS Files

* [release/6.0-rc2] Update dependencies from dotnet/runtime dotnet/efcore (#36687)

[release/6.0-rc2] Update dependencies from dotnet/runtime dotnet/efcore

* Update dependencies from https://github.com/dotnet/runtime build 20210917.25 (#36699)

[release/6.0-rc2] Update dependencies from dotnet/runtime

* Update dependencies from https://github.com/dotnet/efcore build 20210917.18 (#36701)

[release/6.0-rc2] Update dependencies from dotnet/efcore

* [release/6.0-rc2] Update dependencies from dotnet/efcore dotnet/runtime (#36706)

[release/6.0-rc2] Update dependencies from dotnet/efcore dotnet/runtime

* [Release/6.0-rc2] Fix and test HttpSys delegation (#36698)

* Out of proc delegation tests
* Troubleshoot IsFeatureSupported
* Fix test
* Fix formatting
* Seperate tests
* Cleanup
* Fix SLN

* Update dependencies from https://github.com/dotnet/efcore build 20210918.7 (#36715)

[release/6.0-rc2] Update dependencies from dotnet/efcore

* Find inherited TryParse and BindAsync (#36694)

Co-authored-by: Brennan <brecon@microsoft.com>

* [release/6.0-rc2] Use minimal APIs for F# project templates (#36660)

* [release/6.0-rc2] Retarget DOTNETHOME when installing x64 on ARM64 (#36695)

* Retarget DOTNETHOME when installing x64 on ARM64

* Make platform comparison case insenstive

* Address feedback

* Install x64 registry keys to different path on ARM64 machine

Co-authored-by: Eric StJohn <ericstj@microsoft.com>

* Pin analyzers that ship in the SDK (#36690) (#36754)

* Pin analyzers that ship in the SDK (#36690)

* Pin analyzers that ship in the SDK

ASP.NET Core produces a few analyzer assemblies that are shipped as part of the .NET SDK. These analyzers are added to web projects targeting 3.1 and newer.
In 6.0, we (unintentionally) bumped the version of Microsoft.CodeAnalysis that these projects referenced to a 4.0 version. This causes warnings when opening
a 3.1 or 5.0 app in VS 2019 as it does not support these versions.

Additionally update the version of Microsoft.CodeAnalysis.* packages used in tests, Razor, and framework analyzers that are only expected to run with VS 2020 to a more recent build. This is largely book-keeping, but allows us
to write a test for file scoped namespaces.

Fixes #36552

* Apply suggestions from code review

* [release/6.0-rc2] Rename and consolidate  "DelegateEndpoint" types (#36578)

* Call AddEndpointsApiExplorer() in controllers Web API template (#36753)

- backport of #36752 to release/6.0-rc2

Co-authored-by: DamianEdwards <damian@damianedwards.com>

* [release/6.0-rc2] Update dependencies from dotnet/efcore dotnet/runtime (#36769)

[release/6.0-rc2] Update dependencies from dotnet/efcore dotnet/runtime

* Update dependencies from https://github.com/dotnet/efcore build 20210920.20 (#36778)

[release/6.0-rc2] Update dependencies from dotnet/efcore

Co-authored-by: dotnet-maestro[bot] <42748379+dotnet-maestro[bot]@users.noreply.github.com>
Co-authored-by: Stephen Halter <halter73@gmail.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Safia Abdalla <safia@microsoft.com>
Co-authored-by: Chris R <Tratcher@outlook.com>
Co-authored-by: Brennan <brecon@microsoft.com>
Co-authored-by: Tanay Parikh <TanayParikh@users.noreply.github.com>
Co-authored-by: Chris Ross <chrross@microsoft.com>
Co-authored-by: Eric StJohn <ericstj@microsoft.com>
Co-authored-by: Pranav K <prkrishn@hotmail.com>
Co-authored-by: DamianEdwards <damian@damianedwards.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area-mvc Includes: MVC, Actions and Controllers, Localization, CORS, most templates Servicing-approved Shiproom has approved the issue

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants