Separate samples subproject (#10829)Also see the discussion in https://github.com/gradle/gradle-private/issues/1663Previously, `integTest` subproject runs 15 mins, now we split it into 3 jobs: `integTest`/`integTest_2`/`integTest_3`. However, the one containing sample tests is still too slow.The average build time of that job is 10 minutes. This PR separates the `samples` project so that we can further optimise the build structure (e.g. `samples_2`/`samples_3`).
Deprecated `force` on first-level dependenciesThis commit deprecates using `force` in favor of using thenew "strictly" behavior. The "force" flag is still usedinternally, in particular in case of virtual platforms, butits usage should be discouraged as we have a solution whichis better now.
Change `ProjectComponentIdentifier` and `ProjectComponentSelector` implementations to carry enough information to report the correct display name and project name. Change more places to delegate to the `BuildState` for a particular build to determine these values for a given project, rather than duplicating the logic to calculate these things.