-
Notifications
You must be signed in to change notification settings - Fork 1.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Cleanups, fixes, and speedups for the depscanner #13021
Cleanups, fixes, and speedups for the depscanner #13021
Commits on Mar 28, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 458827a - Browse repository at this point
Copy the full SHA 458827aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 2812b21 - Browse repository at this point
Copy the full SHA 2812b21View commit details -
Configuration menu - View commit details
-
Copy full SHA for 875a9b7 - Browse repository at this point
Copy the full SHA 875a9b7View commit details -
Configuration menu - View commit details
-
Copy full SHA for 934c907 - Browse repository at this point
Copy the full SHA 934c907View commit details
Commits on Mar 29, 2024
-
scripts/depscan: combine pickle and JSON data into a single file
We don't need to write and pass two separate files to the depscanner, I've used the pickle because the pickle serializer/deserializer should be faster than JSON, thought I haven't tested.
Configuration menu - View commit details
-
Copy full SHA for fae1363 - Browse repository at this point
Copy the full SHA fae1363View commit details -
scripts/depscan: pick language once, at configure time
We already have to decide whether to scan a file at configure time, so we don't want to have to do it again at compile time, every time the depscan rule is run. We can do this by saving and passing the language to use in the pickle, so depscan doesn't have to re-calculate it. As an added bonus, this removes an import from depscan
Configuration menu - View commit details
-
Copy full SHA for 433117f - Browse repository at this point
Copy the full SHA 433117fView commit details -
scripts/depscan: remove unnecessary function
This basically existed for an assert which we don't need, as mypy would catch that issue for us anyway. Removing the function entirely has some small performance advantages
Configuration menu - View commit details
-
Copy full SHA for 3e9021a - Browse repository at this point
Copy the full SHA 3e9021aView commit details -
backend/ninja: don't rewrite the pickle data if it hasn't changed
Which prevents spurious rebuilds of dyndeps
Configuration menu - View commit details
-
Copy full SHA for 2f8d51c - Browse repository at this point
Copy the full SHA 2f8d51cView commit details -
backend/ninja: Don't run -t cleandead when using dyndeps
There's a known ninja bug (ninja-build/ninja#1952) that running this with dyndeps will result in Ninja deleting implicit outputs from the dyndeps, leading to pointless rebuilds. For reference, this is what CMake does as well.
Configuration menu - View commit details
-
Copy full SHA for 2171a01 - Browse repository at this point
Copy the full SHA 2171a01View commit details