mirror of
https://github.com/astral-sh/ruff.git
synced 2025-07-24 05:26:23 +00:00
![]() ## Summary For formatter instabilities, the message we get look something like this: ```text Unstable formatting /home/konsti/ruff/target/checkouts/deepmodeling:dpdispatcher/dpdispatcher/slurm.py @@ -47,9 +47,9 @@ - script_header_dict["slurm_partition_line"] = ( - NOT_YET_IMPLEMENTED_ExprJoinedStr - ) + script_header_dict[ + "slurm_partition_line" + ] = NOT_YET_IMPLEMENTED_ExprJoinedStr Unstable formatting /home/konsti/ruff/target/checkouts/deepmodeling:dpdispatcher/dpdispatcher/pbs.py @@ -26,9 +26,9 @@ - pbs_script_header_dict["select_node_line"] += ( - NOT_YET_IMPLEMENTED_ExprJoinedStr - ) + pbs_script_header_dict[ + "select_node_line" + ] += NOT_YET_IMPLEMENTED_ExprJoinedStr ``` For ruff crashes. you don't even get that but just the file that crashed it. To extract the actual bug, you'd need to manually remove parts of the file, rerun to see if the bug still occurs (and revert if it doesn't) until you have a minimal example. With this script, you run ```shell cargo run --bin ruff_shrinking -- target/checkouts/deepmodeling:dpdispatcher/dpdispatcher/slurm.py target/minirepo/code.py "Unstable formatting" "target/debug/ruff_dev format-dev --stability-check target/minirepo" ``` and get ```python class Slurm(): def gen_script_header(self, job): if resources.queue_name != "": script_header_dict["slurm_partition_line"] = f"#SBATCH --partition {resources.queue_name}" ``` which is an nice minimal example. I've been using this script and it would be easier for me if this were part of main. The main disadvantage to merging is that it adds additional dependencies. ## Test Plan I've been using this for a number of minimization. This is an internal helper script you only run manually. I could add a test that minimizes a rule violation if required. --------- Co-authored-by: Micha Reiser <micha@reiser.io> |
||
---|---|---|
.. | ||
src | ||
Cargo.toml |