Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Tag snapshot input for association with dep files
Summary: [Doc](https://docs.google.com/document/d/1-zhGPkmt3I2os-kcIaFk9SvT6odt2AJWswSY-J_6AWs/edit?usp=sharing) ### Context We are exploring the integration of the Kotlin Incremental Compiler into Buck for the incremental compilation of Kotlin source files. The goal is to improve build speed by only recompiling modified source files within a target, rather than rebuilding the entire target as is currently done. ### Problem With the incremental compiler enabled, we observed a 14% decrease in LOCAL_DEP_FILE action execution type, compensated by a 10% increase in LOCAL_WORKER execution type ([scuba](https://fburl.com/scuba/buck2_actions_user/amr07tu2)). ### Solution It was discovered that the new library artifact, classpath snapshots (added in D62533759), used by the compiler were not tagged for consideration by dep_files (see [doc](https://www.internalfb.com/intern/staticdocs/buck2/docs/rule_authors/dep_files/)). As a result, every change in a dependency that resulted in a new jar, even if the change itself was filtered out by dep_files, caused a rebuild of the target since the snapshot of the jar was always evaluated as a change in the input. ### This diff Tags snapshot inputs for association with dep files. Reviewed By: IanChilds Differential Revision: D66533725 fbshipit-source-id: 795e793e21f2bfbf71abe0e195d075a2e3ad1586
- Loading branch information