Recommended Tags

Table of Contents

Goals

To have consistency and better discoverability, also to have the correct installation instructions displayed in the NuGet Gallery (compare this NuGet proposal) some tags are recommended for a NuGet package.

Depending on the package type, different tags are suggested:

  • for every package:
    • cake
    • script
    • build
    • cake-build
  • additionally, for an addin:
    • addin
    • cake-addin
  • additionally, for a module:
    • module
    • cake-module
  • additionally, for a recipe:
    • recipe
    • cake-recipe

Additionally, for addins, it is always advised to include an additional tag to describe the addin further. (E.g. add twitter tag to the Cake.Twitter addin.)

Tag delimiter

NuGet specifications require the delimiter of tags to be a space. MsBuild supports the semicolon ; as an additional delimiter (effectively converting all semicolons to spaces during packaging.)

While having comma (,) as a delimiter currently seems to work in the NuGet Gallery, it is not a supported delimiter for tags.

These rules are only applied for project types addin, module and recipe.

Usage

Using this package automatically enables this guideline.

Settings

Opt-Out

It it possible to opt-out of the check for recommended tags by using the CakeContribGuidelinesOmitRecommendedTag setting and setting it's Include to the tag that should not be checked.

(Keep in mind, though, that it is not recommended to opt-out of this feature)

<ItemGroup>
    <CakeContribGuidelinesOmitRecommendedTag Include="script" />
    <CakeContribGuidelinesOmitRecommendedTag Include="build" />
</ItemGroup>
GitHub Discussion