FeatureIsolationConfig

abstract class FeatureIsolationConfig @Inject constructor(objects: ObjectFactory)(source)

Configures feature module isolation inside the featureIsolation { } block.

aalekh {
featureIsolation {
featurePattern = ":feature:**"
allow(from = ":feature:shared", to = ":feature:*")
}
}

Feature modules matched by featurePattern must not depend on each other, except for pairs explicitly listed via allow.

Constructors

Link copied to clipboard
@Inject
constructor(objects: ObjectFactory)

Properties

Link copied to clipboard
val allowedPairs: ListProperty<String>

Explicitly permitted feature-to-feature dependency pairs.

Link copied to clipboard
val featurePattern: Property<String>

Glob pattern identifying feature modules. No default - must be set explicitly. The rule is inactive if left blank.

Functions

Link copied to clipboard
fun allow(from: String, to: String)

Permits a specific feature-to-feature dependency that would otherwise be a violation.