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

Discussion: Standardise the release process #24

Open
matt-oakes opened this issue Apr 6, 2019 · 1 comment
Open

Discussion: Standardise the release process #24

matt-oakes opened this issue Apr 6, 2019 · 1 comment
Labels
discussion Let's talk about stuff

Comments

@matt-oakes
Copy link
Collaborator

We should have a standard process for releasing new versions of modules.

@matt-oakes
Copy link
Collaborator Author

matt-oakes commented Apr 6, 2019

Some of the new Lean Core modules are using the Semantic Release system which @Titozzz set up for the WebView module. This uses the commit message to decide what sort of change was made in that commit and, if needed, release a new version of the library automatically using an NPM job.

Advantages:

  • A new version is released for every commit so master is always available on NPM and users do not need to wait for releases to get the latest feature/bug fix.
  • The plugin automatically comments in related issues to let people know about the new release.
  • Handles incrementing the version number correctly.
  • Can be configured to automatically create the correct Github releases and maintain a useable changelog.
  • As the publishing is done with a bot user, we can keep the number of people who have publish access on NPM to a minimum while allowing people to merge PRs on Github (less risk and better audit trail).

Disadvantages:

  • Requires some set up.
  • Requires that standard commit message styles are followed to work correctly.
  • Assumes that master is always directly usable, which might not be the case for larger modules.

@kelset kelset added the discussion Let's talk about stuff label Apr 29, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
discussion Let's talk about stuff
Projects
None yet
Development

No branches or pull requests

3 participants
@matt-oakes @kelset and others