Summary
Two non-test files re-export testify/mock types in public packages, forcing every consumer of loader or script to pull testify into their dependency graph:
platform/script/loader/mock.go — MockLoader, NewMockLoaderWithContent
platform/script/mocks.go — MockCompiler, MockExecutableContent
A consumer importing only the production API gets testify and objx as transitive deps for free (see go.mod // indirect lines).
Proposal
Move these into *_test.go files in the same package (preferred — they look like internal testing aids that don't need to be public) or to a loadertest / scripttest subpackage that consumers can opt into.
Same review for engines/mocks/ (the evaluator.go / evaluatorResponse.go mocks) — confirm they're only used by tests, then move them.
Files
platform/script/loader/mock.go
platform/script/mocks.go
engines/mocks/
go.mod (testify should become a test dependency only — verify by go mod why github.com/stretchr/testify after)
This is a breaking-change candidate for v1; deletes exported types.
Summary
Two non-test files re-export
testify/mocktypes in public packages, forcing every consumer ofloaderorscriptto pull testify into their dependency graph:platform/script/loader/mock.go—MockLoader,NewMockLoaderWithContentplatform/script/mocks.go—MockCompiler,MockExecutableContentA consumer importing only the production API gets
testifyandobjxas transitive deps for free (seego.mod// indirectlines).Proposal
Move these into
*_test.gofiles in the same package (preferred — they look like internal testing aids that don't need to be public) or to aloadertest/scripttestsubpackage that consumers can opt into.Same review for
engines/mocks/(theevaluator.go/evaluatorResponse.gomocks) — confirm they're only used by tests, then move them.Files
platform/script/loader/mock.goplatform/script/mocks.goengines/mocks/go.mod(testify should become a test dependency only — verify bygo mod why github.com/stretchr/testifyafter)This is a breaking-change candidate for v1; deletes exported types.