{"push_id":3881491405,"size":1,"distinct_size":1,"ref":"refs/heads/master","head":"ed2100dd05b83835a6a89aa1e1115d6dc86c81f8","before":"d2c904ed68fe26d00eb9db033e0a4f69e59adbc1","commits":[{"sha":"ed2100dd05b83835a6a89aa1e1115d6dc86c81f8","author":{"name":"Stu Hood","email":"bb1f132dcb86bfc59bf4a043a3139a9ac7c0b658@gmail.com"},"message":"Disable symlink checking for uncached Snapshot captures (#8074)\n\n### Problem\r\n\r\nAs described in #7963: when we capture Snapshots synchronously via `Scheduler.capture_snapshots`, we do it without the benefit of caching or invalidation. But we still end up using a symlink-aware codepath, meaning that the restrictions we place on absolute and escaping symlinks are unnecessary. More generally, _all_ awareness of symlinks is unnecessary in that case, as the only reason we track them is to enable correct invalidation of caches.\r\n\r\n### Solution\r\n\r\nAdd a `symlink_aware: bool` flag to `PosixFS`, and use it to prevent a consumer from observing the existence of a symlink via `scandir`. Use the flag while capturing `Snapshots` synchronously in `Scheduler.capture_snapshots`.\r\n\r\nAdditionally, make `Metadata` capture lazy in `scandir`, to avoid actually computing it for directories and links.\r\n\r\n### Result\r\n\r\nFixes #7963 and unblocks #8071.","distinct":true,"url":"https://api.github.com/repos/pantsbuild/pants/commits/ed2100dd05b83835a6a89aa1e1115d6dc86c81f8"}]}
{"actor":{"display_login":"stuhood"}}