diff --git a/AUTHORS.txt b/AUTHORS.txt index 0fb69e6b..223a8c5c 100644 --- a/AUTHORS.txt +++ b/AUTHORS.txt @@ -30,5 +30,6 @@ ppalucky (@ppalucky) immerrr (@immerrr) immerrr@gmail.com Albertas Agejevas (@alga) Savor d'Isavano (@KenetJervet) +Phillip Berndt (@phillipberndt) Note: (@user) means a github user name. diff --git a/README.rst b/README.rst index 5555936c..73b14997 100644 --- a/README.rst +++ b/README.rst @@ -34,7 +34,7 @@ me. Jedi can be used with the following editors: - Vim (jedi-vim_, YouCompleteMe_) -- Emacs (Jedi.el_, elpy_, anaconda-mode_) +- Emacs (Jedi.el_, elpy_, anaconda-mode_, ycmd_) - Sublime Text (SublimeJEDI_ [ST2 + ST3], anaconda_ [only ST3]) - SynWrite_ - TextMate_ (Not sure if it's actually working) @@ -145,6 +145,7 @@ For more detailed information visit the `testing documentation .. _Jedi.el: https://github.com/tkf/emacs-jedi .. _elpy: https://github.com/jorgenschaefer/elpy .. _anaconda-mode: https://github.com/proofit404/anaconda-mode +.. _ycmd: https://github.com/abingham/emacs-ycmd .. _sublimejedi: https://github.com/srusskih/SublimeJEDI .. _anaconda: https://github.com/DamnWidget/anaconda .. _SynWrite: http://uvviewsoft.com/synjedi/ diff --git a/docs/docs/installation.rst b/docs/docs/installation.rst index 6d5fa42c..c6acbe96 100644 --- a/docs/docs/installation.rst +++ b/docs/docs/installation.rst @@ -30,18 +30,20 @@ System-wide installation via a package manager Arch Linux ~~~~~~~~~~ -You can install |jedi| directly from official AUR packages: +You can install |jedi| directly from official Arch Linux packages: -- `python-jedi `__ (Python 3) -- `python2-jedi `__ (Python 2) +- `python-jedi `__ + (Python 3) +- `python2-jedi `__ + (Python 2) The specified Python version just refers to the *runtime environment* for |jedi|. Use the Python 2 version if you're running vim (or whatever editor you use) under Python 2. Otherwise, use the Python 3 version. But whatever version you choose, both are able to complete both Python 2 and 3 *code*. -(There is also a packaged version of the vim plugin available: `vim-jedi at AUR -`__.) +(There is also a packaged version of the vim plugin available: `vim-jedi at +Arch Linux`__.) Debian ~~~~~~ diff --git a/jedi/__init__.py b/jedi/__init__.py index 79025fb1..fc9b4690 100644 --- a/jedi/__init__.py +++ b/jedi/__init__.py @@ -34,7 +34,7 @@ As you see Jedi is pretty simple and allows you to concentrate on writing a good text editor, while still having very good IDE features for Python. """ -__version__ = '0.9.0-alpha0' +__version__ = '0.9.0' from jedi.api import Script, Interpreter, NotFoundError, set_debug_function from jedi.api import preload_module, defined_names, names diff --git a/jedi/api/__init__.py b/jedi/api/__init__.py index 5811cc8f..3e5fb6c4 100644 --- a/jedi/api/__init__.py +++ b/jedi/api/__init__.py @@ -553,7 +553,7 @@ class Interpreter(Script): upper """ - def __init__(self, source, namespaces=[], **kwds): + def __init__(self, source, namespaces, **kwds): """ Parse `source` and mixin interpreted Python objects from `namespaces`. @@ -567,6 +567,10 @@ class Interpreter(Script): If `line` and `column` are None, they are assumed be at the end of `source`. """ + if type(namespaces) is not list or len(namespaces) == 0 or \ + any([type(x) is not dict for x in namespaces]): + raise TypeError("namespaces must be a non-empty list of dict") + super(Interpreter, self).__init__(source, **kwds) self.namespaces = namespaces diff --git a/jedi/utils.py b/jedi/utils.py index 9148c773..6b48ef49 100644 --- a/jedi/utils.py +++ b/jedi/utils.py @@ -108,7 +108,7 @@ def version_info(): Returns a namedtuple of Jedi's version, similar to Python's ``sys.version_info``. """ - Version = namedtuple('Version', 'major, minor, micro, releaselevel, serial') + Version = namedtuple('Version', 'major, minor, micro') from jedi import __version__ tupl = re.findall('[a-z]+|\d+', __version__) return Version(*[x if i == 3 else int(x) for i, x in enumerate(tupl)]) diff --git a/setup.py b/setup.py index b623d22f..85dee723 100755 --- a/setup.py +++ b/setup.py @@ -42,6 +42,7 @@ setup(name='jedi', 'Programming Language :: Python :: 3', 'Programming Language :: Python :: 3.2', 'Programming Language :: Python :: 3.3', + 'Programming Language :: Python :: 3.4', 'Topic :: Software Development :: Libraries :: Python Modules', 'Topic :: Text Editors :: Integrated Development Environments (IDE)', 'Topic :: Utilities',