python-devtools
Rope
python-devtools | Rope | |
---|---|---|
5 | 22 | |
947 | 1,839 | |
- | 0.8% | |
4.7 | 9.3 | |
14 days ago | 2 days ago | |
Python | Python | |
MIT License | GNU Lesser General Public License v3.0 only |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
python-devtools
-
Your favourite "less-known" Python features?
Check out devtools, it’s even more powerful
-
What are your bad python habits?
There’s also debug() from python-devtools that is an easy improvement over print() that doesn't involve changing your workflow.
- Printstack
-
Icecream: Never use print() to debug again in Python
__builtins__['debug'] = debug
(see https://github.com/samuelcolvin/python-devtools#usage-withou...)
This would work with icecream too.
The second advantage of not needing the import is that CI fails if you forget to remove all debug() commands.
Rope
-
In neovim ,how to do refactoring python code?
Hi, maintainer of rope here. There are a number of different options to use rope in Vim/Neovim, we've documented them in this page https://github.com/python-rope/rope/wiki/Rope-in-Vim-or-Neovim
-
Open Source Python libraries/projects that need contributions?
If you're looking for something with a bigger codebase, then the rope library in which pylsp-rope is based on is also welcoming of contributions.
-
Completion and auto imports
I think rope is the standard for refactoring, and should provide autoimports soon, though pyright might also be good for that.
-
NVIM: More complete autocomplete
rope
-
Making Python Code Idiomatic by Automatic Refactoring Non-Idiomatic Python Code with Pythonic Idioms
If you are interested in discussing this or have ideas you want to sketch out, meet me at rope's GitHub Discussion.
-
What motivates you writing open source software?
However, my biggest and most popular open source project is one that I don't originally write, but rather I inherited a popular project that has been abandoned by their original author/maintainers. I use Python a lot, so I wanted to contribute to the community in a significant way, so unlike my other projects I do take the time promoting this project as well. I felt it's more like a community service for this project.
-
What are some interesting open source projects to contribute code to?
I am the maintainer rope and pylsp-rope. They are libraries for automated Python refactoring and to do that from any LSP-capable editors. We are always welcoming contributors of all levels.
-
Why IDEs are Important
Rope has first class support for Vim and it can do a move refactoring, among other refactorings. From this, this feature is available from python-mode and ropevim.
-
Visual Studio Code is designed to fracture
rope
-
Why did you switch from another language to Rust? Do you regret not learning it earlier?
Okay this depends: if your code is static: perfectly possible for example with https://github.com/python-rope/rope (used for example by VS Code). If it's dynamic / generated via metaprogramming: I never tried it but I can't imagine that it'd work there, yes. However java tooling also can't do that because it simply doesn't support metaprogramming in any noteworthy way.
What are some alternatives?
ray - Debug with Ray to fix problems faster
Bowler - Safe code refactoring for modern Python.
snoop - A powerful set of Python debugging tools, based on PySnooper
RedBaron - Bottom-up approach to refactoring in python
icecream - 🍦 Never use print() to debug again.
python-lsp-server - Fork of the python-language-server project, maintained by the Spyder IDE team and the community
snoop - Snoop — инструмент разведки на основе открытых данных (OSINT world)
jedi - Awesome autocompletion, static analysis and refactoring library for python
PySnooper - Never use print for debugging again
Pylint - It's not just a linter that annoys you!
pdbpp - pdb++, a drop-in replacement for pdb (the Python debugger)
Python-mode - Vim python-mode. PyLint, Rope, Pydoc, breakpoints from box.