Org upkeep (.github#1): Go 1.27.1, Rust 1.98.1, goreleaser pin, core v0.1.5, JSON logs off a terminal, control-plane lint - #130
Merged
Merged
Conversation
core v0.1.5 requires golang.org/x/crypto v0.56.0, which lifts control-plane's direct requirement.
Onboard the family config (vk-sandbox's .golangci.yml, plus one goconst exclusion for gateway/mock's fixture strings) and fix the 10 findings it surfaces: one shared "status" JSON key constant, an exitAfterDefer restructure in main, four govet shadow sites (reuse the outer err where sequential control flow makes it equivalent, rename the shutdown-log err to avoid racing the outer named return), and two nolint annotations (argon2 key length is bounds-checked; cookie Secure follows CP_COOKIE_SECURE by design).
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Implements the per-repo part of cocoonstack/.github#1: revive default rules, nolintlint, Go 1.27.1, the pinned tool versions, projecteru2/core v0.1.5 and JSON log records when stderr is not a terminal (only the sections that apply here).
Commits
Notes
.golangci.yml(one extra exclusion:goconstunderinternal/gateway/mock/, fixture strings), amake linttarget that loops linux/darwin over./...and--build-tags integration ./internal/integration, and CI runs it. The 17 findings are fixed in the same commit; the two cookiegosechits arenolinted becauseSecurefollows the documentedCP_COOKIE_SECURE(default unchanged), and the argon2 key length is bounded two lines above its cast.run()'s shutdown closure keeps its ownshutdownErr: it runs concurrently withListenAndServe, so reusing the named return would race.rust-versionand the Dockerfile base (digest fromcrane digest rust:1.98.1) move together.JSON logs off a terminal
control-plane: stderr to a file gives{"level":"info","func":"main.run",...}; underscript -qthe console line has ANSI colour codes.Gates
Run with
GOWORK=offagainst the pinned golangci-lint v2.13.2 (built with go1.27.1):gofumpt v0.12.0 / goimports v0.50.0 are held until the next golangci-lint release vendors them (see the issue).