Suggestion of updates to the naming convention for Cake Add-ins & Modules (future) #2985
Replies: 3 comments
-
I see the reasoning behind it, but I don't think there's a real chance to make such a switch nowadays, since it would require all addin authors to change their repo & solutions and deprecate NuGet packages. There's no chance to be 100% successful with this, and having half of the addins (which would be a good number) switched to a new system, while the other half is still using old naming conventions would lead to more confusion than it would help. As comparison you can take the numbers of addins updated when we break the addin API version. This is a simple change (update Cake reference) for which we even automatically generate PRs for all addins, but we never got higher than 75% percentages of known addins using latest version (see https://github.com/cake-contrib/Home/blob/master/Audit.md#progress). |
Beta Was this translation helpful? Give feedback.
-
@augustoproiete I have to agree with @pascalberger here. While it would be great to have this, I think it is fair to say that the horse has already bolted out the stable on this one. Rather than introduce a new convention, I think we would continue with the convention that we have in place. |
Beta Was this translation helpful? Give feedback.
-
Also nuget package ids are immutable, changing names of all would result in having hundreds of obsolete packages just sitting there, which would be confusing for users and a support pain for maintainers. |
Beta Was this translation helpful? Give feedback.
-
It might be too late in the game for this and/or might not be worth the effort given the sheer amount of existing add-ins and modules, but thought I would put the suggestion here for discussion just in case:
The naming convention for add-ins is described on PR #1352 which officially documents the convention that have been used for years and can be seen on the many add-ins published on nuget.org.
The convention states that Cake add-ins should be named:
The naming convention for Cake Modules seems to be similar, just appending a
.Module
suffix based on the packages on nuget.org today.Thus, as an example:
Cake.Npm
is meant to be used as#addin
in a Cake scriptCake.Npm.Module
is meant to be used as a#module
in a Cake scriptThis is nice and has been working well for years... I'm thinking it would be niceR if the convention in the future followed a more namespace-like structure with a more clear separation between add-ins and modules, and at the same time grouping the Cake add-ins together, and the Cake Modules together. e.g.
Cake.Addins.xxx
Cake.Modules.xxx
Where
xxx
is a meaningful and unique name that describes what the add-in or module does.Updating the example above:
Cake.Addins.Npm
is meant to be used as#addin
in a Cake scriptCake.Modules.Npm
is meant to be used as a#module
in a Cake scriptThe main advantages I think would be:
Cake.*
to official components only moving foward, and leave the namespacesCake.Addins.*
andCake.Modules.*
open for community contributionsBeta Was this translation helpful? Give feedback.
All reactions