Back to all reviewers

Isolate test dependencies

docker/compose
Based on 2 comments
Other

Keep test dependencies separate from production code dependencies to avoid polluting the main module. Use separate modules for test code when test-specific dependencies would otherwise be included in the main module's dependency tree.

Testing Other

Reviewer Prompt

Keep test dependencies separate from production code dependencies to avoid polluting the main module. Use separate modules for test code when test-specific dependencies would otherwise be included in the main module’s dependency tree.

This prevents test libraries from becoming transitive dependencies for consumers of your module and maintains a cleaner separation between production and test concerns.

Example approach:

// Create separate go.mod for e2e tests
// e2e/go.mod
module github.com/docker/compose/v2/e2e

require (
    github.com/cucumber/godog v0.12.5
    github.com/docker/compose/v2 v0.0.0
)

replace github.com/docker/compose/v2 => ../

This pattern allows test-specific dependencies like testing frameworks, mocking libraries, or specialized test utilities to remain isolated from the main codebase while still allowing tests to import and test the production code.

2
Comments Analyzed
Other
Primary Language
Testing
Category

Source Discussions