Summary: the module path is now github.com/glincker/theauth-go/v2. The API is unchanged. Only import paths need to change.
Why
Go requires a module at major version 2 or higher to end its path in /v2. The earlier v2.x tags were published without it, so the Go toolchain could not resolve them and go get github.com/glincker/theauth-go silently returned v1.0.0. Releases from v2.6.0 onward use the correct path.
What you need to do
Rewrite imports in your module (run from the module root, GNU sed shown; on macOS use sed -i ''):
Review the diff before committing: the standalone modules storage/sqlite, mcpresource and audit/sinks/otlp keep their existing paths and must not gain /v2.
Then update the dependency:
Installing
Pseudo-version users
If you pinned a pseudo-version of the old path (for example from a branch or commit), your go.mod still points at github.com/glincker/theauth-go. That path does not receive v2.6.0 or later. Change the imports as above and require the /v2 path.
Directory layout changes (unreleased)
The module root was reorganized before the first /v2 release. No exported
root name was removed or renamed: types moved behind aliases and everything you
import from github.com/glincker/theauth-go/v2 keeps its name and method set.
- Types such as
APIToken, Principal, Report, RevocationEvent and
AuthEvent are aliases of types in internal/ packages. Their printed type
names change (apitokens.APIToken), which only matters if you match on
%T or reflect output.
- Tests no longer live in the root package. Use
go test ./...; the fuzz
targets are in ./integration.
sqlc.yaml is now storage/postgres/sqlc.yaml.
The full move map is in Repository layout. Last modified on October 7, 2026