Complete module release documentation
This commit is contained in:
@@ -21,6 +21,17 @@ if err != nil {
|
||||
fmt.Println(result.Version, result.Commit)
|
||||
```
|
||||
|
||||
Set `ReleaseRequest.ModuleDir` to select a nested module using a
|
||||
repository-relative physical directory; omission or `.` selects the root
|
||||
module. ReleaseKit reads that module's committed `go.mod` and returns its
|
||||
physical `ModuleDir`, declared `ModulePath`, semantic `Version`, and complete
|
||||
`Tag` in the candidate and result. A physical `/v2` directory is removed from
|
||||
the tag prefix only when the declared module path also ends in `/v2`. For
|
||||
example, both `integrations/core/v2` and `integrations/core` can declare
|
||||
`example.com/project/integrations/core/v2` and use the tag
|
||||
`integrations/core/v2.1.0`. The release note lives under the physical module at
|
||||
`<module>/docs/releases/<version>.md`.
|
||||
|
||||
The repository must have a clean index and worktree on `main`, and the selected
|
||||
version must be stable `vMAJOR.MINOR.PATCH`. The committed
|
||||
`docs/releases/<version>.md` note must have a first Markdown H1 containing the
|
||||
@@ -79,7 +90,19 @@ standard suite, selected vet/format/distribution checks, or Markdown navigation
|
||||
checks in `AdditionalChecks` or profile `checks`. Keep release-note rules and
|
||||
consumer-specific assertions—such as tests of maintained examples—in those
|
||||
product-owned checks.
|
||||
ReleaseKit calls `AdditionalChecks` once after shared validation when supplied.
|
||||
The `Candidate` supplies both `RepositoryDir` and `ModuleDir`, plus the declared
|
||||
`ModulePath`, semantic `Version`, and full `Tag`; use its module directory for
|
||||
module-local product checks. ReleaseKit calls `AdditionalChecks` once after
|
||||
shared validation when supplied.
|
||||
|
||||
`ValidationSpec.SharedFiles` adds committed, repository-relative files to
|
||||
ReleaseKit's optional file checks without enabling any checks. A nil slice
|
||||
selects the optional defaults `COPYRIGHT`, `LICENSE`, and
|
||||
`docs/oss/attribution.md`, when present; a non-nil empty slice selects none.
|
||||
Explicit files replace those defaults, must exist even when file checks are
|
||||
disabled, and may be in another module. Combined inputs are deduplicated by
|
||||
repository-relative path.
|
||||
|
||||
It does not download a different toolchain automatically. If race prerequisites
|
||||
are unavailable, the `go-test` check fails rather than being skipped; a selected
|
||||
full-vet failure is reported as `go-vet`. The suite uses the Go host target,
|
||||
|
||||
Reference in New Issue
Block a user