Skip to content
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

Refactoring with Jedi ? #2388

Open
Nodd opened this issue May 1, 2015 · 2 comments
Open

Refactoring with Jedi ? #2388

Nodd opened this issue May 1, 2015 · 2 comments

Comments

@Nodd
Copy link
Contributor

Nodd commented May 1, 2015

I just saw this in gmane.comp.python.code-quality:

Hi!

This is an announcement to make you consider using Jedi as a static
analysis library for your own stuff. If you want to build a
refactoring or a linter library for Python you should just be using
Jedi, it's doing all the work for you.

I have recently released Jedi 0.9.0. This release marks a change in
the way how Jedi is structured. In the past Jedi had one objective
only: Autocompletion.

Now Jedi is a general purpose, high quality static analysis engine.
The static analysis capabilities are really good, but it's hard to
describe what it does exactly. It's better than any other static
analysis engine out there for sure.

Jedi's parser is built on the lib2to3 and therefore is able to create
a "round-trip" representation of source code. After parsing and
modifications to the syntax tree, Jedi echos the exact same source
tree with the changes included, which is neat for refactoring.
The parser also has built-in error recovery as well as support for
different Python versions (Python version is a param).

Jedi has become quite powerful. If you're considering Jedi, I'm very
happy to get you started. Let's talk!

https://github.com/davidhalter/jedi/

~ Dave

First, we should test that Jedi 0.9 is still coimpatible.
Second, the refactoring abilities are very interesting ! I want that !

@ccordoba12
Copy link
Member

@blink1073?

@blink1073
Copy link
Contributor

I've been following the Jedi refactoring updates.
It supports:

  • rename
  • extract variable
  • inline variable

http://jedi.readthedocs.org/en/latest/docs/development.html#module-jedi.refactoring

It does look interesting, but not something I've got the time or inclination to work on any time soon.

@ccordoba12 ccordoba12 added this to the wishlist milestone Jul 14, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants