mirror of
https://github.com/conventional-commits/conventionalcommits.org.git
synced 2026-03-22 12:44:37 -05:00
CCRFI "Conventional Commits: Request for Implementation" #183
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @mentalisttraceur on GitHub (Aug 22, 2023).
The Conventional Commits community would benefit a lot from mimicking Scheme's "Request for Implementation" (SFRI) process to coordinate common (or nontrivial-to-design-well) extensions.
This would allow us to
So I propose:
requests-for-implementationrepo under theconventional-commitsorg.@mentalisttraceur commented on GitHub (Aug 22, 2023):
Note: lots of technical projects have something like this. A couple examples:
I centered SRFI as the main example because of a key similarity: Scheme's RFIs are optional standardized extensions which keep the core spec minimal, and Conventional Commit's RFI would do the same.
@mentalisttraceur commented on GitHub (Aug 23, 2023):
The current spec seems to suggest just hosting extension specs in our own repos. Here's why I think a
conventional-commits/requests-for-implementationrepo is a worthwhile addition over that:Specifications hosted in the community org are much more likely to keep existing.
Specifications hosted in the community org are much easier to find (both discovering ones you don't know about which might be useful, and ones that you know about but don't know the location of).
I could not ask for a better illustration of these two points than the example extension mentioned in the FAQ,
@jameswomack/conventional-commit-spec, which either no longer exists, never existed, or exists somewhere that I was unable to find.CCRFI-1, that's clearly a "CCRFI". You learn once what a CCRFI is, and then you always recognize/know exactly what it what it is. What's the reference to an extension/proposal in someone's repo?jameswomack/conventional-commit-speccould be almost anything, and needs context to even suspect that it's probably a repo on one of the code hosting websites. Even an explicit URL, without context, is just a URL. Meanwhile, the stringCCRFI-42could show up anywhere, with no context or even in a misleading context, and you could have a great chance of immediately identifying it as a reference to a CCRFI.@damianopetrungaro commented on GitHub (Aug 23, 2023):
I'm not sure I see value in this. Can you elaborate more on a use case you have that would benefit from this?
@mentalisttraceur commented on GitHub (Aug 23, 2023):
@damianopetrungaro probably not until I have recharged from how much effort I've put into very thoroughly covering the value more abstractly.
Hopefully someone else has more reserves of unpaid time/patience/desire/knack for concrete examples, or your mind will start to generate/notice examples now that you have the idea.
@bcoe commented on GitHub (May 2, 2025):
@mentalisttraceur I like the idea of formalizing some process for extensions, so that we can direct people towards it when they have a recommendation like:
type.feature:rather thanfeat:.hotfixtype.One goal of Conventional Commit from the get go, was that it's a pretty simple specification. It was a slightly trimmed down version of the angular commit convention (which was already simple).
Any process we have for extension should be equally lightweight. I do see value in a second repo, just so that people building tools like commit lint can interact with the community, e.g., maybe parsers start supporting
feature:if it becomes popular.Within reason, I'd like to treat the Conventional Commit convention itself as finished at this point.