Is there an existing issue for this?
Describe the problem
Look at the picture above. I am able to access stuff from the network module right in the feature module . This in my opinion is a breach of engineering practices where in the scope of a component should only be limited to what it needs .
Perhaps we should address the dependencies mentioned as "apis" in core:data build file , and look into making them "implementation" ?
This decision of making use of apis in core:data has been done intentionally though , but can you please present an argument against what i have suggested ?
Describe the solution
dependencies {
implementation(projects.core.common)
implementation(projects.core.database)
implementation(projects.core.datastore)
implementation(projects.core.network)
implementation(projects.core.analytics)
implementation(projects.core.notifications)
testImplementation(libs.kotlinx.coroutines.test)
testImplementation(libs.kotlinx.serialization.json)
testImplementation(projects.core.datastoreTest)
testImplementation(projects.core.testing)
}
In my opinion this is how the core:data should look like
Additional context
Code of Conduct
Is there an existing issue for this?
Describe the problem
Look at the picture above. I am able to access stuff from the network module right in the feature module . This in my opinion is a breach of engineering practices where in the scope of a component should only be limited to what it needs .
Perhaps we should address the dependencies mentioned as "apis" in core:data build file , and look into making them "implementation" ?
This decision of making use of apis in core:data has been done intentionally though , but can you please present an argument against what i have suggested ?
Describe the solution
In my opinion this is how the core:data should look like
Additional context
Code of Conduct