a14c3f1181
Add internal/pyproject package with ReadVersion and WriteVersion for pyproject.toml files. Reads [project].version (PEP 621) first, then falls back to [tool.poetry].version. Section boundaries are detected via TOML's rule that headers always start at the beginning of a line (\n[ pattern), so inline arrays with [ characters don't interfere. Config follows the established multi-value pattern: - python.pyproject_toml: single path (opt-in, no default) - python.pyproject_tomls: list for monorepos (overrides single) - --pyproject flag overrides pyproject_toml and clears pyproject_tomls 100% per-package statement coverage maintained across all 14 packages; FuzzReadVersion and FuzzWriteVersion added per fuzzing guidelines. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
86 lines
2.8 KiB
YAML
86 lines
2.8 KiB
YAML
# .releaser.yml — configuration for git.k3nny.fr/releaser
|
|
# All fields are optional. Uncomment and adjust what you need.
|
|
# CLI flags always take precedence over values set here.
|
|
|
|
git:
|
|
# Prefix prepended to every version tag.
|
|
# tag_prefix: "v"
|
|
|
|
# Regex that identifies release branches. Must contain exactly two capture
|
|
# groups: group 1 = major version, group 2 = minor version.
|
|
# branch_pattern: "^(?:.*/)?release/(\\d+)\\.(\\d+)$"
|
|
|
|
# Template for the version-bump commit message.
|
|
# {version} is replaced with the full tag name (e.g. "v1.2.3").
|
|
# commit_message: "chore(release): {version} [skip ci]"
|
|
|
|
# Override the git commit author. When omitted, releaser reads user.name
|
|
# and user.email from the repository's git config.
|
|
# author_name: ""
|
|
# author_email: ""
|
|
|
|
# Limit which commit types trigger a release (default: fix, feat, breaking).
|
|
# releasable_types:
|
|
# - fix
|
|
# - feat
|
|
# - breaking
|
|
|
|
# Configure which version component each commit type bumps.
|
|
# Valid values: "patch" (default) or "minor".
|
|
# bump_rules:
|
|
# breaking: "minor"
|
|
# feat: "patch"
|
|
# fix: "patch"
|
|
|
|
# maven:
|
|
# Single pom.xml path, relative to the repository root.
|
|
# pom_path: "pom.xml"
|
|
|
|
# Multiple pom.xml paths for multi-module projects (overrides pom_path).
|
|
# pom_paths:
|
|
# - "pom.xml"
|
|
# - "module-a/pom.xml"
|
|
|
|
# node:
|
|
# Single package.json path (node processing is opt-in — no default).
|
|
# package_json: "package.json"
|
|
|
|
# Multiple package.json paths for monorepos (overrides package_json).
|
|
# package_jsons:
|
|
# - "packages/frontend/package.json"
|
|
# - "packages/backend/package.json"
|
|
|
|
# python:
|
|
# Single pyproject.toml path (opt-in — no default).
|
|
# Reads [project].version (PEP 621) first, then [tool.poetry].version.
|
|
# pyproject_toml: "pyproject.toml"
|
|
|
|
# Multiple pyproject.toml paths for monorepos (overrides pyproject_toml).
|
|
# pyproject_tomls:
|
|
# - "pyproject.toml"
|
|
# - "packages/cli/pyproject.toml"
|
|
|
|
# gradle:
|
|
# Single build.gradle or build.gradle.kts path (opt-in — no default).
|
|
# Both Groovy DSL (single-quoted) and Kotlin DSL (double-quoted) are supported.
|
|
# build_file: "build.gradle"
|
|
|
|
# Multiple build files for multi-module projects (overrides build_file).
|
|
# build_files:
|
|
# - "build.gradle"
|
|
# - "module-a/build.gradle"
|
|
# - "module-b/build.gradle"
|
|
|
|
gitlab:
|
|
# GitLab instance URL. Falls back to the CI_SERVER_URL environment variable.
|
|
# url: "https://gitlab.example.com"
|
|
|
|
# Personal or CI access token with api scope.
|
|
# Falls back to the GITLAB_TOKEN environment variable.
|
|
# Tip: never commit a real token here — use the environment variable instead.
|
|
# token: ""
|
|
|
|
# Numeric project ID or "namespace/project" path.
|
|
# Falls back to CI_PROJECT_ID, then CI_PROJECT_PATH environment variables.
|
|
# project: ""
|