If config.editor does not have a value, which is the default, pywikibot falls back to using an internal editor, and fails.
In pywikibot/editor.py TextEditor.edit(), pywikibot.ui.editText() is invoked.
Many scripts use TextEditor:
replace.py
selflink.py
upload.py
catall.py
spamremove.py
solve_disambiguation.py
unlink.py
blockpageschecker.py
editarticle.py
The easiest way to show the problem is with the script editarticle.py
$ python pwb.py editarticle -family:wikipedia -lang:en -p "Test page"
Could not load GUI modules: No module named gui
Nothing changed
The module gui from compat was not ported to core.
http://git.wikimedia.org/history/pywikibot%2Fcompat.git/master/gui.py
Version: core-(2.0)
Severity: major
See Also:
https://bugzilla.wikimedia.org/show_bug.cgi?id=60042