devalias.net icon indicating copy to clipboard operation
devalias.net copied to clipboard

[DeepDive] Versions, Changelog, Releases (Semantic Versioning, Conventional Commits, Conventional Changelog, etc)

Open 0xdevalias opened this issue 4 years ago • 0 comments

Semantic Versioning (SemVer)

  • https://semver.org/

Conventional Commits

  • https://www.conventionalcommits.org/
    • https://www.conventionalcommits.org/en/v1.0.0/#about
    • https://www.conventionalcommits.org/en/v1.0.0/#tooling-for-conventional-commits

Semantic Release

  • https://semantic-release.gitbook.io/semantic-release/
    • Fully automated version management and package publishing

    • semantic-release automates the whole package release workflow including: determining the next version number, generating the release notes and publishing the package.

  • https://github.com/semantic-release
    • https://github.com/semantic-release/semantic-release
    • https://github.com/semantic-release/cli
    • https://github.com/semantic-release/github
    • https://github.com/semantic-release/git
    • https://github.com/semantic-release/changelog
    • https://github.com/semantic-release/release-notes-generator
    • https://github.com/semantic-release/commit-analyzer

Conventional Changelog

  • https://github.com/conventional-changelog
    • https://github.com/conventional-changelog/conventional-changelog
      • Generate changelogs and release notes from a project's commit messages and metadata.

    • https://github.com/conventional-changelog/standard-version
      • Automate versioning and CHANGELOG generation, with semver.org and conventionalcommits.org

Commitlint

  • https://commitlint.js.org/#/
  • https://github.com/conventional-changelog/commitlint
    • Lint commit messages

Commitizen

  • https://github.com/commitizen
    • https://github.com/commitizen/cz-cli
      • When you commit with Commitizen, you'll be prompted to fill out any required commit fields at commit time. No more waiting until later for a git commit hook to run and reject your commit (though that can still be helpful). No more digging through CONTRIBUTING.md to find what the preferred format is. Get instant feedback on your commit message formatting and be prompted for required fields.

      • https://github.com/commitizen/cz-cli#making-your-repo-commitizen-friendly
  • https://github.com/commitizen/cz-conventional-changelog
    • Part of the commitizen family. Prompts for conventional changelog standard.

Lerna

  • https://lerna.js.org/
  • https://github.com/lerna
    • https://github.com/lerna/lerna
      • A tool for managing JavaScript projects with multiple packages.

    • https://github.com/lerna/lerna-changelog
      • PR-based changelog generator with monorepo support

GitHub Issues Style Guides

  • https://robinpowered.com/blog/best-practice-system-for-organizing-and-tagging-github-issues/
    • eg. https://github.com/IBM-Watson/design-guide/wiki/Issue-Label-Style-Guide

Unsorted

Releasing

  • http://netflix.github.io/unleash/
    • Professionally publish your JavaScript modules in one keystroke

    • https://github.com/netflix/unleash
  • https://bumped.github.io/
    • Bumped is a release system that make it easy to perform actions before and after releasing a new version of your software.

    • https://github.com/bumped/bumped

0xdevalias avatar May 12 '20 06:05 0xdevalias