feat(gradle): release v1.6.0 — Gradle build file version bump
Add internal/gradle package with ReadVersion and WriteVersion for build.gradle (Groovy DSL, single-quoted) and build.gradle.kts (Kotlin DSL, double-quoted). Quote style is preserved on write. regexp.QuoteMeta ensures version strings with dots or special characters are safe. Config follows the established multi-value pattern: - gradle.build_file: single path (opt-in, no default) - gradle.build_files: list for multi-module projects (overrides build_file) - --gradle flag overrides build_file and clears build_files 100% per-package statement coverage maintained across all 13 packages; FuzzReadVersion and FuzzWriteVersion added per fuzzing guidelines. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -3,6 +3,23 @@ title: Changelog
|
||||
weight: 50
|
||||
---
|
||||
|
||||
## v1.6.0 — 2026-07-11
|
||||
|
||||
### Added
|
||||
|
||||
- **Gradle support** — opt-in via `gradle.build_file` (single path) or `gradle.build_files` (list, overrides single); supports both Groovy DSL (`version = '1.2.3'`) and Kotlin DSL (`version = "1.2.3"`); original quote style preserved on write; `--gradle <path>` CLI flag for one-off overrides
|
||||
|
||||
## v1.5.1 — 2026-07-11
|
||||
|
||||
### Added
|
||||
|
||||
- **Documentation site** — Hugo + Geekdoc; installation, CLI reference, configuration, CI integration, and changelog pages; deployed to `gh-pages` via Gitea CI on push to `main`
|
||||
- **`FuzzUpdate`** in `internal/changelog` and **`FuzzWriteVersion`** in `internal/node` — complete fuzz coverage for all file-rewriting packages
|
||||
|
||||
### Changed
|
||||
|
||||
- **CLAUDE.md** — fuzzing completeness guidelines with authoritative table
|
||||
|
||||
## v1.5.0 — 2026-07-11
|
||||
|
||||
### Added
|
||||
|
||||
@@ -45,6 +45,14 @@ node: # opt-in — omit section t
|
||||
# - "packages/frontend/package.json"
|
||||
# - "packages/backend/package.json"
|
||||
|
||||
gradle: # opt-in — omit section to skip
|
||||
# build_file: "build.gradle" # Groovy or Kotlin DSL; single path
|
||||
|
||||
# Multi-module: list overrides build_file.
|
||||
# build_files:
|
||||
# - "build.gradle"
|
||||
# - "module-a/build.gradle"
|
||||
|
||||
gitlab:
|
||||
url: "https://gitlab.example.com" # or env CI_SERVER_URL
|
||||
token: "" # prefer env GITLAB_TOKEN
|
||||
@@ -119,3 +127,24 @@ node:
|
||||
- "packages/frontend/package.json"
|
||||
- "packages/backend/package.json"
|
||||
```
|
||||
|
||||
## Gradle support
|
||||
|
||||
The `gradle` section is opt-in — if omitted, no build file is touched. Both Groovy DSL (`version = '1.2.3'`) and Kotlin DSL (`version = "1.2.3"`) are supported; the original quote style is preserved on write.
|
||||
|
||||
```yaml
|
||||
gradle:
|
||||
build_file: "build.gradle"
|
||||
```
|
||||
|
||||
Use `build_files` for multi-module projects:
|
||||
|
||||
```yaml
|
||||
gradle:
|
||||
build_files:
|
||||
- "build.gradle"
|
||||
- "module-a/build.gradle"
|
||||
- "module-b/build.gradle"
|
||||
```
|
||||
|
||||
The `--gradle <path>` CLI flag sets a single build file path and clears `build_files`.
|
||||
|
||||
@@ -39,6 +39,7 @@ releaser --verbose --dry-run
|
||||
| `--branch-pattern <regex>` | `^(?:.*/)?release/(\d+)\.(\d+)$` | Override branch pattern (two capture groups: major, minor) |
|
||||
| `--tag-prefix <prefix>` | `""` | Prefix for version tags (e.g. `v` → `v1.2.3`) |
|
||||
| `--pom <path>` | `pom.xml` | Path to pom.xml relative to repo root |
|
||||
| `--gradle <path>` | — | Override `gradle.build_file` from config |
|
||||
| `--changelog-file <path>` | `CHANGELOG.md` | Path to changelog file |
|
||||
| `--release-env-file <path>` | `release.env` | Path for dotenv artifact; pass `""` to disable |
|
||||
| `--no-commit` | false | Update version files but stop before committing |
|
||||
|
||||
Reference in New Issue
Block a user