Sourcery 2.0 - Continuous code review to make your code more maintainable

Sourcery makes sure all of your code is following best practices from standard Pythonic rules to issues that pop up during code reviews. Add to your IDE to get instant feedback, use the CLI to review existing code, or integrate it into your CI.

Add a comment

Replies

Best
Hey Product Hunt 👋 - , , and I are back and we’re very excited to be sharing the new version of with you all. Sourcery sits in the background while you work analyzing your code, finding problems, and suggesting improvements to make sure it’s following best practices. You can think of it as the first layer of code review, catching mistakes before a human reviewer needs to take a look. As always - Sourcery runs fully locally, so your code is private. Here’s what’s new: 1. Extend Sourcery to handle your best practices. You shouldn’t have to make the same comment more than one time in a code review. When you see issues coming up frequently you can create a Sourcery rule, and these issues will get caught for your whole team before the code is merged. 2. Leverage Pre-Built Rulesets. We’ve taken the Google Python Style Guide and made it available as a (). Pick and choose the rules that make sense for you (and customize them how you want) or add in the full ruleset. 3. CLI for bulk review. We’ve extended the to make it more powerful (and much quicker) for reviewing multiple files, or your entire repo. With a single command you can scan hundreds of files, identify common issues, and make bulk changes to improve your code. 4. Review every commit with Sourcery in CI. Let Sourcery handle the first layer of your code reviews by . Sourcery is easily configurable to run only on changed code to help cut down on noise from legacy code. Anyone can start using Sourcery for free, and teams coming through ProductHunt with promo code PRODUCTHUNT2022 can use the full team version (includes full use in CI or as a pre—commit hook - see more details at ) for free for 2 months.
I use sorcery everyday for the last 2 years. I love combining it with GitHub Copilot to really speed up my development process! For example CoPilot generates code, then Sourcery improves it and fits it into our style guides. Finally there is nothing quite as satisfying as using the CLI to refactor a huge out-of-date repo.
Thanks ! That's really cool how you use Sourcery and CoPilot together 🚀
Congrats on the launch
thank you!
Thanks a lot.
Congrats on the launch
thank you! Let us know what you think about the new version :)
Love the progress, team Sourcery! Excited for our engineering team to test this out 🚀
thank you! Let us know what you think :)
We have been using Sourcery for more than a year now. Our team is able to find some really good and time saving optimisations using this. I would recommend this.
Thanks Pranav, really glad Sourcery is helpful for you
Love it! Also, I'm a bit curious: Do you use Sourcery for Sourcery’s code?
we do! We make sure all our code is following our core rules (standard Python best practices) and then we've built out a bunch of additional rules to tackle things like making sure certain sections of our codebase are following the boundarires we want in our monorepo, making sure we're not using/extending deprecated classes in any way, enforcing that we use helper functions when we can, etc. Basically anytime something comes up more than once during a code review we try to turn it into a rule for ourselves in Sourcery Each of us has it in our IDE (including in Vim) and then we also have it built into our IDE.
... makes total sense, thanks for sharing these insights!
Love the product and the team. Our team has been using it for quite some time. I'm especially excited about the best practices and rulesets.
Thanks !
Sourcery is an absolute gem in this area. I'm using it since the beginning and I will tell you, there is no better solution than that. It is in my must-have plugins for every IDE I'm using. Godspeed Sourcery 👍🚀
Thanks for the great comments !
Great stuff and very exciting updates!
This is a really gret tool! It really helped me to make my code more efficient .
123
Next