Age | Commit message (Collapse) | Author |
|
Problem: Error for Python exception does not show useful info.
Solution: Show the last line instead of the first one. (Ben Jackson,
closes #4381)
|
|
Problem: Python: error message for failing import is incorrect.
Solution: Adjust how modules are loaded. (Ozaki Kiichi, closes #3162)
|
|
Problem: Attribute "width" missing from python window attribute list.
Solution: Add the item. (Ken Takata) Order the list like the items are used
in the WindowAttr() function.
|
|
Problem: Python None cannot be converted to a Vim type.
Solution: Convert it to v:none. (Ken Takata)
|
|
Problem: Test 86 and 87 fail with some version of Python.
Solution: Unify "can't" and "cannot". Unify quotes.
|
|
Problem: string() with repeated argument does not give a result usable by
eval().
Solution: Refactor echo_striong and tv2string(), moving the common part to
echo_string_core(). (Ken Takata)
|
|
Problem: Tests involving Python are flaky.
Solution: Set the pt_auto field. Add tests. (Nikolai Pavlov)
|
|
Problem: No "closed", "errors" and "encoding" attribute on Python output.
Solution: Add attributes and more tests. (Roland Puntaier, closes #622)
|
|
Problem: Python: turns partial into simple funcref.
Solution: Use partials like partials. (Nikolai Pavlov, closes #734)
|
|
Problem: Python None value can't be converted to a Vim value.
Solution: Just use zero. (Damien)
|
|
Problem: Python interface can produce error "vim.message' object has no
attribute 'isatty'".
Solution: Add dummy isatty(), readable(), etc. (closes #464)
|
|
Problem: Python tests fail.
Solution: Change "then" to "than" in more places. (Dominique Pelle, Taro
Muraoka)
|
|
Problem: Python: Cannot iterate over options.
Solution: Add options iterator. (ZyX)
|
|
Problem: Python: slices with steps are not supported.
Solution: Support slices in Python vim.List. (ZyX)
|
|
Problem: Python: When vim.eval() encounters a Vim error, a try/catch in the
Python code doesn't catch it. (Yggdroot Chen)
Solution: Throw exceptions on errors in vim.eval(). (ZyX)
|
|
Problem: Python: interrupt not being properly discarded. (Yggdroot Chen)
Solution: Discard interrupt in VimTryEnd. (ZyX)
|
|
Problem: Crash when using invalid key in Python dictionary.
Solution: Check for object to be NULL. Add tests. (ZyX)
|
|
Problem: Python: non-import errors not handled correctly.
Solution: Let non-ImportError exceptions pass the finder. (ZyX)
|
|
Problem: Python: WindowSetattr() missing support for NUMBER_UNSIGNED.
Solution: Add NUMBER_UNSIGNED, add more tests. Various fixes. (ZyX)
|
|
Problem: Various Python problems.
Solution: Fix VimTryEnd. Crash with debug build and PYTHONDUMPREFS=1. Memory
leaks in StringToLine(), BufferMark() and convert_dl. (ZyX)
|
|
Problem: Python: use of numbers not consistent.
Solution: Add support for Number protocol. (ZyX)
|
|
Problem: Python: Exception messages are not clear.
Solution: Make exception messages more verbose. (ZyX)
|
|
Problem: Inconsistent string conversion.
Solution: Use 'encoding' instead of utf-8. Use METH_O in place of
METH_VARARGS where appropriate. (ZyX)
|
|
Problem: Python: duplicate code.
Solution: Share code between OutputWrite() and OutputWritelines(). (ZyX)
|
|
Problem: Python 2 tests don't have the same output everywhere.
Solution: Make the Python 2 tests more portable. (ZyX)
|
|
Problem: Python 2: loading modules doesn't work well.
Solution: Fix the code. Add more tests. (ZyX)
|
|
Problem: Loading Python modules is not tested.
Solution: Enable commented-out tests, add missing files. (ZyX)
|
|
Problem: Python: a few more memory problems.
Solution: Add and remove Py_XDECREF(). (ZyX)
|
|
Problem: Python: Changing directory with os.chdir() causes problems for
Vim's notion of directories.
Solution: Add vim.chdir() and vim.fchdir(). (ZyX)
|
|
Problem: Python: popitem() was not defined in a standard way.
Solution: Remove the argument from popitem(). (ZyX)
|
|
Problem: Tests 86 and 87 fail on MS-Windows. (Ken Takata)
Solution: Fix platform-specific stuff. (ZyX)
|
|
Problem: Test 86 fails.
Solution: Comment out the parts that don't work. Make it pass on 32 bit
systems.
|
|
Problem: Python: Script is auto-loaded on function creation.
Solution: Python patch 27. (ZyX)
|
|
Problem: Python: Insufficient exception and error testing.
Solution: Python patch 25. (ZyX)
|
|
Problem: Python: Function is not standard.
Solution: Python patch 22: make Function subclassable. (ZyX)
|
|
Problem: Python: List is not standard.
Solution: Python patch 21: Add standard methods and fields. (ZyX)
|
|
Problem: Python: Dictionary is not standard.
Solution: Python patch 20: Add standard methods and fields. (ZyX)
|
|
Problem: Python: not enough compatibilty.
Solution: Python patch 16: Make OutputWritelines support any sequence object
(ZyX) Note: tests fail
|
|
Problem: Can't build without the +autocmd feature. (Elimar Riesebieter)
Solution: Fix use of buf and curbuf.
|
|
Problem: Python: dir() does not work properly.
Solution: Python patch 8. Add __dir__ method to all objects with custom
tp_getattr supplemented by __members__ attribute for at least
python-2* versions. __members__ is not mentioned in python-3*
dir() output even if it is accessible. (ZyX)
|
|
Problem: Python: No {Buffer,TabPage,Window}.valid attributes.
Solution: Python patch 5: add .valid (ZyX)
|
|
Problem: Python: can't assign to vim.Buffer.name.
Solution: Python patch 3. (ZyX)
|
|
Problem: No error when option could not be set.
Solution: Report an error. (ZyX)
|
|
Problem: Python interface does not compile with Python 2.2
Solution: Fix thread issues and True/False. (ZyX)
|
|
Problem: Vim and Python exceptions are different.
Solution: Make Vim exceptions be Python exceptions. (ZyX)
|
|
Problem: Python: Can't check types of what is returned by bindeval().
Solution: Add vim.List, vim.Dictionary and vim.Function types. (ZyX)
|
|
Problem: Python: not so easy to access tab pages.
Solution: Add window.tabpage, make window.number work with non-current tab
pages. (ZyX)
|
|
Problem: Setting curbuf without curwin causes trouble.
Solution: Add switch_buffer() and restore_buffer(). Block autocommands to
avoid trouble.
|
|
Problem: Python tests are not portable.
Solution: Use shiftwidth instead of iminsert. (ZyX)
|
|
Problem: Python: Not enough tests.
Solution: Add tests for vim.{current,window*,tabpage*}. (ZyX)
|