Skip to content

Migration: signing modules relocated to the phpboyscout/go subgroup

The two standalone signing modules have moved into the phpboyscout/go language subgroup, the shared home for go-tool-base's extracted Go modules:

Before After
gitlab.com/phpboyscout/signing gitlab.com/phpboyscout/go/signing
gitlab.com/phpboyscout/signing-aws-kms gitlab.com/phpboyscout/go/signing-aws-kms

go-tool-base now consumes the relocated modules (go/signing v0.2.0, go/signing-aws-kms v0.2.0). This is a hard cut-over — every internal import was repointed with no compatibility aliases, in keeping with the pre-1.0 policy of preferring a clean break.

gtb CLI users: nothing changes

gtb sign, gtb keys mint, and gtb update behave exactly as before — same flags, config keys, and posture. This migration only affects code that imports the moved Go packages.

What you need to do

If your project imports these modules directly, update the import paths and go.mod requires:

# in your module
go mod edit \
  -droprequire gitlab.com/phpboyscout/signing \
  -droprequire gitlab.com/phpboyscout/signing-aws-kms
go get gitlab.com/phpboyscout/go/[email protected]
go get gitlab.com/phpboyscout/go/[email protected]   # only if you use the KMS backend
# then repoint imports, e.g. with gofmt -r or your editor:
#   gitlab.com/phpboyscout/signing   -> gitlab.com/phpboyscout/go/signing
#   gitlab.com/phpboyscout/signing-aws-kms -> gitlab.com/phpboyscout/go/signing-aws-kms
go mod tidy

GitLab keeps a redirect from the old project paths, so go get on the old import path still resolves for a transition period — but the module's declared path is now the go/ one, so imports must be updated to build.

Why

The relocation is the first step of consolidating go-tool-base's reusable packages into independently versioned modules under a single, recognisable subgroup (gitlab.com/phpboyscout/go/<name>, docs at <name>.go.phpboyscout.uk). See the extraction playbook (docs/development/specs/2026-07-12-go-module-extraction-playbook.md) for the full convention. No functional change accompanies the move.