-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
Autofix errors from extended ecosystem checks #4523
Comments
We could run this script before each release to check if we did not introduce regressions. |
I would like to work on
|
The main problem is that this is a 53GB directory from 3k git clones which is too much for e.g. github action runners, and i expect this to grow with growing adoption of ruff and better scraping scripts. So i can run this locally, but it's not feasible to automate this (yet). What i would do (low prio) is the following:
|
Recently via pypi I downloaded 23k latest source code archives of this projects(quite old list)(https://github.com/Silentsoul04/hoply/blob/9786f4c120fde6e48b26c7b85e42ed219fefe3dc/examples/pypi/top25k.txt) - links.txt. This method is faster to use and takes a lot of less disk space(22 350 packages with total size 19,7 GB), but I'm unable to easily update package versions Quite strange, that with |
That's really cool! do you have a script how you ran that?
The vast majority of the panics in the OP were from failed f-string fixes. We have since disabled this kind of f-string fixes (e.g. #4488). I'll close this issue since it has become quite outdated. We should instead create new issues for specific bugs (such as https://github.com/astral-sh/ruff/issues?q=is%3Aissue+is%3Aopen+label%3Afuzzer are). |
I created tool automatically download packages, unpack it, deduplicate etc. - https://github.com/qarmin/download_python_repos/ (it was created just for my internal purposes, so it may be quite hard to use) Almost 2 millions of random files from packages are available here - https://github.com/qarmin/Automated-Fuzzer/releases and are used in ci to find regressions |
I wrote a script that tries to
--select ALL --fix
against a large number of repositories (#4326). Currently, it's ~3k repositories, even though a good fraction of those is forks.Each entry is an autofix failure with the rules causing it, that means e.g.
ruff --select COM812,Q000,RUF001,UP009,UP025 --fix third_party/python/idna/idna/uts46data.py
in bolucat/Firefox will fail and print an error.Each entry needs to be minimized to the specific rule and snippet that causes the failure and reported as an issue; I did this for the f-string failures (all fixed by #4487 and #4488) and for three of the ones below (#4519, #4520, #4522). I normally start by bisecting the rule codes until only one remains, then i look up what the code does and try to minimizing the file contents by removing regions that are likely unrelated to the rule until i finally play around with the remaining for to get the most minimal reproduction.
The text was updated successfully, but these errors were encountered: