ワンクリックで
create-new-release
// Create and push a new semver release tag. Asks for release type (patch/minor/major), validates commit exists on remote, bumps version, and pushes the tag.
// Create and push a new semver release tag. Asks for release type (patch/minor/major), validates commit exists on remote, bumps version, and pushes the tag.
Generate C++ header files following Google Style Guide. Use when creating new header files or asking for a header template.
Check C++ naming conventions against Google Style Guide. Use when checking if names follow conventions or when renaming identifiers.
Review C++ code against Google C++ Style Guide. Use when reviewing C++ code, pull requests, or when asked to check code style compliance.
Google C++ Style Guide rules for writing clean, maintainable C++ code. Use when writing C++, reviewing code, discussing naming conventions, formatting, class design, or any C++ best practices. Covers headers, scoping, classes, functions, naming, comments, and formatting.
| name | create-new-release |
| description | Create and push a new semver release tag. Asks for release type (patch/minor/major), validates commit exists on remote, bumps version, and pushes the tag. |
Create and push a new semantic version release tag.
Ask release type: Use AskUserQuestion to ask if this is a patch, minor, or major release.
Fetch latest tags from remote:
git fetch --tags origin
Get the latest semver tag (assumes v prefix like v1.2.3):
git tag --sort=-version:refname -l 'v*' | head -1
Parse and bump version based on user selection:
v1.2.3 → v1.2.4v1.2.3 → v1.3.0v1.2.3 → v2.0.0Verify META.json version matches the new tag:
Read META.json and check that both version and provides.pg_stat_ch.version match the new version (without the v prefix). If they don't match, abort and tell the user to update META.json first — PGXN uses this file for the release version.
Validate current commit exists on remote:
git fetch origin
git branch -r --contains HEAD
If no remote branch contains HEAD, abort with an error asking the user to push their commits first.
Create and push the tag:
git tag -a <new_version> -m "Release <new_version>"
git push origin <new_version>
Report success with the new tag name.
Parse version from tag like v1.2.3:
v prefix. to get major, minor, patch componentsv0.1.0