dotnet / dotnet/templating

Allow share template name for different languages

Open
#5,358 11 comments 7 reactions 0 assignees View on GitHub
area: CLI Priority:1 triage:transfer-to-sdk triaged
Dominant language
No language data
Stars
1.7k
Forks
399
Avg merge
3d 5h
Merged PRs (30d)
39

Description

### Is your feature request related to a problem? Please describe.
I writing templates for F* language which provide exporting to F#. I want make consuming F* programs in .NET ecosystem to be as easy as possible. So I create template https://github.com/kant2002/fstarmsbuildsdk and by mistake do not change short template for template, but do change
1. Package identity
2. Language

Currently when I run `dotnet new console --lang F*` I receive following error message
```
Unable to resolve the template, the following installed templates are conflicting:
Identity Template Name Short Name Language Author Package

------------------------ ------------- ---------- -------- ------------- --------------------------------------------
FStarLang.Common.Console Console App console F* Andrii Kur... FStarLang.DotNet.Common.ProjectTemplates.1.0
Microsoft.Common.Console Console App console C#,F#,VB Microsoft

Uninstall the template packages containing the templates to keep only one template from the list or add the template options which differentiate the template to run.
```

### Describe the solution you'd like
Would be good that package resolution would take into account switch `--lang` here and resolve template not only on short name, but on short name + language.

### Additional context
Other languages which may benefit from this
- C compiler for .NET https://github.com/fornever/cesium
- Zig probably https://github.com/vezel-dev/zig-sdk
- IronXXX family.
- Pascal.ABC http://pascalabc.net/en/

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.