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
FlakeHell was archived #1817
Comments
@orsinium thanks for working on it! 👍 |
No, thank you for your help with the project. You made it possible in the first place :) |
@Dreamsorcerer awesome! Do you have some time to polish it? |
BTW, today I was contacted by a team that used flakehell and they decided to maintain a fork: https://github.com/flakehell/flakehell So, maybe it will have a second life, we'll see. Anyway, I'll be happy if WPS becomes self-contained in that sense. Or, even better, baseline finally lands into flake8 itself. We already have at least two independent implementations that work, so why not. |
Possibly, yes. But, will need you to take a look and review first. |
I no longer need the baseline functionality, so don't plan to do further development on it. However, the PR is still ready for review, and I'm happy to answer any questions about the code. I think it is good enough for a public release, but with a few ideas that could be implemented to improve future releases (in particular see #1276 (comment) and the disabled |
@Dreamsorcerer thanks a lot for your time and effort! 👍 I am working on another static analysis tool where I consider "baseline" as a core feature. |
I would add that |
I suspect the baseline functionality is still very rudimentary (as in, it will just be too awkward to actually use in a real project with multiple developers). And if they've still not fixed the glaring performance issues, then it would still be totally unusable in my projects (edit: actually, looks like it may have been looked at). I think my closed PR is still much further along with regards to baseline functionality. |
Not sure if I understand what you're talking about. What problems there might be with multiple developers, I can't imagine at all. I personally implemented linters through |
Not if you install plugins. I think the performance issue may have been atleast partially resolved, but to support the granular controls over enabling/disabling error codes (not something we even wanted to use) it was basically rechecking the code several times or something. So, the performance of flake8 is O(n), while the performance of flakehell is more like O(nm), where n is number of files and m is number of plugins (or something along those lines, it's been awhile). On our project flake8 was taking ~2 minutes to run, while flakehell was taking over 30 minutes (I literally gave up and cancelled it after 30 minutes). That included wemake and several other flake8 plugins on ~30k lines of code.
Fair enough. To me, the feature was sufficiently rudimentary that it seemed too cumbersome to use. e.g. Changes frequently result in far too many baseline exceptions reappearing in the output and not being ignored anymore (even from trivial changes). |
Sorry, flakehell was archived. it was my the most mentally difficult project, and I don't maintain it anymore. Probably, the WPS documentation should be adjusted accordingly, removing flakehell references. I don't insist, though :)
Luckily, the documentation already has a great section about
flake8 --diff
which should be enough for most of the cases from the perspective of integrating WPS with a big codebase. Additionally, I can recommend:The text was updated successfully, but these errors were encountered: