Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

docs: reorder default plugins list #1650

Merged
merged 1 commit into from Oct 4, 2020
Merged

Conversation

@cassels
Copy link
Contributor

@cassels cassels commented Oct 2, 2020

Summary
Reorder the list of default plugins in the documentation from alphabetical to execution order.

Motivation
The documentation clearly states the four default plugins that are already installed with semantic-release. However their default order of execution is not explicitly stated and when listed in alphabetical order implies the incorrect order.

When a package maintainer needs to configure options on one or more default plugins the documentation states that the plugins property will be overridden instead of merged.

Note: If the plugins option is defined, it overrides the default plugin list, rather than merging with it.

For that reason the maintainer must add all default plugins to the configuration list to modify the configuration of a single plugin. When looking at the documentation it is easy to find the default list of plugins but not so easy to find the default order in which the plugins must be listed. Personally, I made the mistake of assuming the order in which they are listed would be the order in which they would execute and modified my .releaserc to be:

{
  "plugins": [
    ["@semantic-release/commit-analyzer", {
      "releaseRules": [
        {"type": "docs", "scope":"README", "release": "patch"}
      ],
    }],
    "@semantic-release/github",
    "@semantic-release/npm",
    "@semantic-release/release-notes-generator"
  ]
}

Obviously, this changes the behaviour of the default release because @semantic-release/github had switched places with @semantic-release/release-notes-generator.

Solution
This is simply a user vs documentation problem and can be prevented in the future by explicitly stating the order in which plugins are listed. Furthermore, by changing the order from alphabetical to order of execution the user doesn't need to search the codebase to find the correct order.

Reorder the list default plugins from alphabetical to order of execution.
gr2m
gr2m approved these changes Oct 4, 2020
Copy link
Member

@gr2m gr2m left a comment

This is great, thank you!

@gr2m gr2m merged commit 18e35b2 into semantic-release:master Oct 4, 2020
4 checks passed
pull bot added a commit to rikhoffbauer/semantic-release that referenced this issue Oct 4, 2020
Reorder the list default plugins from alphabetical to order of execution.
@semantic-release-bot
Copy link
Collaborator

@semantic-release-bot semantic-release-bot commented Oct 11, 2020

🎉 This PR is included in version 17.2.0 🎉

The release is available on:

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Linked issues

Successfully merging this pull request may close these issues.

None yet

3 participants