Skip to content

Conversation

xuatz
Copy link
Contributor

@xuatz xuatz commented Jan 26, 2022

Summary of change

Added a github action/workflow that will validate if the PR title follows conventional commits

Details

If the PR title does not comply, this helpful failure message will appear.

image

Step 1 of X to using standard-version

This is step one of the transition towards eventually adopting standard-version to automate semantic version bumping and changelog updates. But even if standard-version is not used, conventional-commits is also a nice standard to adopt to make reading git history slightly more pleasant.

Before officially adopting standard-version tho, the following should also be true:

  • all the other projects should also adopt conventional-commits have this workflow (potentially could be solved with a monorepo structure, this makes docker-compose.yml easier too perhaps)
  • there should be an equivalent for standard-version for other packages in other languages
  • there should be a a custom script prepared to monkey patch any other part of the repo that needs version bumping but is not handled by standard-version

Documentation changes

Updated CONTRIBUTING.md to give a heads up about conventional commits

Checklist for important updates

  • Changelog has been updated
  • frontendDriverInterfaceSupported.json file has been updated (if needed)
    • Along with the associated array in lib/ts/version.ts
  • Changes to the version if needed
    • In package.json
    • In package-lock.json
    • In lib/ts/version.ts
  • Had run npm run build-pretty
  • Had installed and ran the pre-commit hook
  • Issue this PR against the latest non released version branch.
    • To know which one it is, run find the latest released tag (git tag) in the format vX.Y.Z, and then find the latest branch (git branch --all) whose X.Y is greater than the latest released tag.
    • If no such branch exists, then create one from the latest released branch.
  • If added a new recipe interface, then make sure that the implementation of it uses NON arrow functions only (like someFunc: function () {..}).
  • If I added a new recipe, I also added the recipe entry point into the size-limit section of package.json with the size limit set to the current size rounded up.

@xuatz xuatz force-pushed the ci/add-lint-pr-title branch 2 times, most recently from 80ab2e9 to 75c90be Compare January 26, 2022 12:37
@xuatz xuatz changed the base branch from master to 0.18 January 26, 2022 12:41
@xuatz xuatz force-pushed the ci/add-lint-pr-title branch from 68e2ee1 to 34b3956 Compare January 26, 2022 12:45
@xuatz xuatz changed the title ci: add lint-pr-title.yml workflow ci: add lint-pr-title.yml workflow 123 Jan 26, 2022
@xuatz xuatz changed the title ci: add lint-pr-title.yml workflow 123 ci: add lint-pr-title.yml workflow Jan 26, 2022
@xuatz xuatz force-pushed the ci/add-lint-pr-title branch from 34b3956 to ef627ce Compare January 26, 2022 12:51
@xuatz xuatz marked this pull request as ready for review January 26, 2022 12:52
@rishabhpoddar
Copy link
Contributor

rishabhpoddar commented Jan 27, 2022

hey @xuatz thanks for this PR. I'll keep this open for now until a similar PR has been made for all other repos we have:

  • supertokens-core
  • supertokens-plugin-interface
  • supertokens-mysql-plugin
  • supertokens-postgresql-plugin
  • supertokens-mongodb-plugin
  • supertokens-node
  • supertokens-python
  • supertokens-golang
  • supertokens-react-native
  • supertokens-website

@porcellus
Copy link
Collaborator

We may also want to consider something like this: https://changie.dev/

@xuatz
Copy link
Contributor Author

xuatz commented Jan 27, 2022

We may also want to consider something like this: https://changie.dev/

Looks good! This solves the problem of looking for standard-version equivalent in other languages!

Btw while talking about releasing changelogs in sibling repos, i was thinking, does supertokens have plans to one day move to a monorepo structure?

@rishabhpoddar
Copy link
Contributor

Btw while talking about releasing changelogs in sibling repos, i was thinking, does supertokens have plans to one day move to a monorepo structure?

I don't think so. The dev process for different languages can be quite different.

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

Successfully merging this pull request may close these issues.

3 participants