Skip to content

update: update thiserror requirement from 1.0 to 2.0 #36

update: update thiserror requirement from 1.0 to 2.0

update: update thiserror requirement from 1.0 to 2.0 #36

Workflow file for this run

name: PR title
on:
pull_request:
types: [opened, synchronize, reopened, edited]
jobs:
title_cc_validation:
name: Conventional commits validation
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Check PR title
env:
PR_TITLE: ${{ github.event.pull_request.title }}
run: |
# If this step fails, please expand this step for more information.
#
# You will need to revise this pull request's title to
# match the "summary" (first) line of a Conventional Commit message.
# This enables us to automatically generate a meaningful changelog.
#
# The summary line (and thus the PR title) must have this exact format
# (including punctuation):
#
# type: description
#
# `type` describes the nature of changes you are making. This project
# requires the type to be one of these exact names:
#
# * fix
# * feat (will cause a minor version bump)
# * chore (will be omitted from changelog)
#
# NOTE: Conventional Commits also defines a `(scope)` parameter
# which can define a sub-area within the project where the change was
# made. This project is configured to disallow the use of `scope`.
#
# `description` is a short human-readable summary of the changes being made.
#
# This project enforces a few rules over and above the Conventional
# Commits definition of `description`:
#
# * The `description` must be non-empty.
# * The `description` must start with a capital letter or number.
# (Do not start `description` with a lower-case word.)
# * The `description` must not end with a period.
#
# This project does not currently enforce the following items, but
# we ask that you observe the following preferences in `description`:
#
# * The entire description should be written and capitalized as
# an English-language sentence, except (as noted earlier) that
# the trailing period must be omitted.
# * Any acronyms such as JSON or YAML should be capitalized as per
# commonusage in English-language sentences.
#
# After you edit the PR title, this task will run again and the
# warning should go away if you have made acceptable changes.
#
# For more information on Conventional Commits, please see:
#
# https://www.conventionalcommits.org/en/v1.0.0/
#
# ------------ (end of message) ------------
if echo "$PR_TITLE" | grep -E '^chore(\(.*\))?: release '; then
echo "Exception / OK: chore release pattern"
exit 0;
fi
if echo "$PR_TITLE" | grep -E '^chore(\(deps\))?: bump '; then
echo "Exception / OK: Dependabot update pattern"
exit 0;
fi
if echo "$PR_TITLE" | grep -E '^update: update '; then
echo "Exception / OK: Dependabot update pattern"
exit 0;
fi
echo "Installing commitlint-rs. Please wait 30-40 seconds ..."
cargo install --quiet commitlint-rs
set -e
echo  
echo  
echo --- commitlint results for PR title \"$PR_TITLE\" ---
echo  
echo "$PR_TITLE" | commitlint -g .commitlintrc.yml
echo "✅ PR title matches all enforced rules."