mirror of https://github.com/astral-sh/ruff
## Summary Transition to using coarse-grained tracked structs (depends on https://github.com/salsa-rs/salsa/pull/657). For now, this PR doesn't add any `#[tracked]` fields, meaning that any changes cause the entire struct to be invalidated. It also changes `AstNodeRef` to be compared/hashed by pointer address, instead of performing a deep AST comparison. ## Test Plan This yields a 10-15% improvement on my machine (though weirdly some runs were 5-10% without being flagged as inconsistent by criterion, is there some non-determinism involved?). It's possible that some of this is unrelated, I'll try applying the patch to the current salsa version to make sure. --------- Co-authored-by: Micha Reiser <micha@reiser.io> |
||
|---|---|---|
| .. | ||
| module_resolver | ||
| semantic_index | ||
| types | ||
| util | ||
| ast_node_ref.rs | ||
| db.rs | ||
| lib.rs | ||
| lint.rs | ||
| module_name.rs | ||
| node_key.rs | ||
| program.rs | ||
| python_platform.rs | ||
| python_version.rs | ||
| semantic_index.rs | ||
| semantic_model.rs | ||
| site_packages.rs | ||
| stdlib.rs | ||
| suppression.rs | ||
| symbol.rs | ||
| types.rs | ||
| unpack.rs | ||
| visibility_constraints.rs | ||