Skip to content

Conversation

@YuliiaKovalova
Copy link
Member

@YuliiaKovalova YuliiaKovalova commented Jun 28, 2023

Summary

The Template Engine team has introduced a special template for simplifying the packaging process.
The changes describe how to work with it.

partially fixes dotnet/templating#5507


Internal previews

📄 File 🔗 Preview link
docs/core/tutorials/cli-templates-create-item-template.md Tutorial: Create an item template
docs/core/tutorials/cli-templates-create-project-template.md Create a project template for dotnet new
docs/core/tutorials/cli-templates-create-template-package.md Tutorial: Create a template package

Copy link
Member

@vlada-shubina vlada-shubina left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I suggest we add a couple of paragraphs describing:

and briefly describe how to disable all tasks, or localization only.

@vlada-shubina vlada-shubina marked this pull request as ready for review July 11, 2023 11:42
@vlada-shubina vlada-shubina requested a review from tdykstra as a code owner July 11, 2023 11:42
@vlada-shubina
Copy link
Member

@tdykstra could you please review and advise whether we can make this article available now or after .NET 8?

The PR streamlines this tutorial, by using additional package templating team provides, however it is not part of .NET SDK.
This package (https://www.nuget.org/packages/Microsoft.TemplateEngine.Authoring.Templates) is currently in preview until .NET 8 is released, however fully usable.
We would like to get the feedback whilst in preview to address it in time.

@baronfel fyi

@vlada-shubina vlada-shubina requested a review from baronfel July 11, 2023 11:45
@vlada-shubina vlada-shubina force-pushed the dev/ykovalova/update_template_package_documentation branch 2 times, most recently from b547d3e to edd6153 Compare July 11, 2023 12:08
@vlada-shubina vlada-shubina force-pushed the dev/ykovalova/update_template_package_documentation branch from edd6153 to e4cdf11 Compare July 11, 2023 12:12
@BillWagner BillWagner modified the milestones: June 2023, July 2023 Jul 11, 2023
Copy link
Contributor

@tdykstra tdykstra left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, aside from some minor notes and suggestions.

@tdykstra
Copy link
Contributor

@tdykstra could you please review and advise whether we can make this article available now or after .NET 8?

We would have to keep the .NET 7 version available. We can do that by using zone pivots. Specifically, dotnet-preview-version zone pivot ID in zone-pivot-groups.yml gives you a choice between .NET 6, 7, and 8. You could have one block for both 6 and 7, and one for 8. For an example that shows 6 and 7 as choices, see https://github.com/dotnet/docs/blob/main/docs/core/tutorials/with-visual-studio.md The contributor guide article is here. Or if you prefer, I can add the .NET 7 version after this PR is ready to merge.

@vlada-shubina vlada-shubina force-pushed the dev/ykovalova/update_template_package_documentation branch from 5c5b6c8 to cfa877f Compare July 13, 2023 10:32
@vlada-shubina vlada-shubina force-pushed the dev/ykovalova/update_template_package_documentation branch from cfa877f to e757ee1 Compare July 13, 2023 10:46
@vlada-shubina
Copy link
Member

vlada-shubina commented Jul 13, 2023

@tdykstra could you please review and advise whether we can make this article available now or after .NET 8?

We would have to keep the .NET 7 version available. We can do that by using zone pivots. Specifically, dotnet-preview-version zone pivot ID in zone-pivot-groups.yml gives you a choice between .NET 6, 7, and 8. You could have one block for both 6 and 7, and one for 8. For an example that shows 6 and 7 as choices, see https://github.com/dotnet/docs/blob/main/docs/core/tutorials/with-visual-studio.md The contributor guide article is here. Or if you prefer, I can add the .NET 7 version after this PR is ready to merge.

That is a great feature!

I applied it to the article, here are some concerns:

  • this is 3 parts tutorial, with pivot applied only to last one, is it ok?
  • in first part we have a prerequisite: .NET SDK 7.0.100 or a later version.
  • .NET 7 and .NET 6 text is identical, i haven't found any pivot which has just .NET 8 and .NET 7
  • i kept the .NET 7/.NET 6 untouched, only changed one link

In general, .NET 8 way may be used also with earlier version of SDK - the template suggested to be used is compatible with previous versions, but not sure to which extend, like EOL versions like .NET 5 won't work well. Do you think it is worth to put the note about it?

@vlada-shubina
Copy link
Member

@tdykstra the warning in the build seems unrelated, can it be rerun somehow?

@vlada-shubina vlada-shubina force-pushed the dev/ykovalova/update_template_package_documentation branch from dde7d66 to 35b2dc6 Compare July 13, 2023 11:46
@tdykstra
Copy link
Contributor

@tdykstra the warning in the build seems unrelated, can it be rerun somehow?

The unrelated warning will be fixed in ~15 minutes and we can then close-reopen the PR to get a clean build. I fixed the build suggestion that was related.

@tdykstra
Copy link
Contributor

@tdykstra could you please review and advise whether we can make this article available now or after .NET 8?

We would have to keep the .NET 7 version available. We can do that by using zone pivots. Specifically, dotnet-preview-version zone pivot ID in zone-pivot-groups.yml gives you a choice between .NET 6, 7, and 8. You could have one block for both 6 and 7, and one for 8. For an example that shows 6 and 7 as choices, see https://github.com/dotnet/docs/blob/main/docs/core/tutorials/with-visual-studio.md The contributor guide article is here. Or if you prefer, I can add the .NET 7 version after this PR is ready to merge.

That is a great feature!

I applied it to the article, here are some concerns:

  • this is 3 parts tutorial, with pivot applied only to last one, is it ok?
  • in first part we have a prerequisite: .NET SDK 7.0.100 or a later version.
  • .NET 7 and .NET 6 text is identical, i haven't found any pivot which has just .NET 8 and .NET 7
  • i kept the .NET 7/.NET 6 untouched, only changed one link

In general, .NET 8 way may be used also with earlier version of SDK - the template suggested to be used is compatible with previous versions, but not sure to which extend, like EOL versions like .NET 5 won't work well. Do you think it is worth to put the note about it?

I think it's good as-is for now. At 8 GA we'll change the pivot group to eliminate "Preview", and when 6 goes out of support we'll update the pivot group or create a new one with only 7 and 8.

Copy link
Contributor

@tdykstra tdykstra left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approved when one outstanding suggestion is addressed.

@tdykstra
Copy link
Contributor

Closing and reopening to trigger build.

@tdykstra tdykstra closed this Jul 13, 2023
@tdykstra tdykstra reopened this Jul 13, 2023
@tdykstra
Copy link
Contributor

.NET 8 way may be used also with earlier version of SDK - the template suggested to be used is compatible with previous versions, but not sure to which extend, like EOL versions like .NET 5 won't work well. Do you think it is worth to put the note about it?

I missed addressing this -- Yes I think a note explaining that the .NET 8 way is compatible with earlier in-support versions (or just specify 6 and 7) would be helpful.

@vlada-shubina
Copy link
Member

.NET 8 way may be used also with earlier version of SDK - the template suggested to be used is compatible with previous versions, but not sure to which extend, like EOL versions like .NET 5 won't work well. Do you think it is worth to put the note about it?

I missed addressing this -- Yes I think a note explaining that the .NET 8 way is compatible with earlier in-support versions (or just specify 6 and 7) would be helpful.

just noticed that project file in the template has net8.0 framework, so using the same template without modifying framework is not possible. So, for simplicity, let's keep new approach for .NET 8 only.

@tdykstra tdykstra merged commit 8cbddbb into dotnet:main Jul 14, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

create new tutorial on how to create the templates on learn.microsoft.com

5 participants