OfflineIMAP me dice que SQLite no está instalado, aunque sí lo está

OfflineIMAP me dice que SQLite no está instalado, aunque sí lo está

Cada vez que ejecuto OfflineIMAP v6.5.3.1 aparece un error para cada carpeta (es decir, etiqueta y carpeta en Gmail) que me dice que hubo un problema y luego, inmediatamente después, me dice:

SQLite backend chosen, but no sqlite python bindings available. Please install.

Esto sucede para cada carpeta/etiqueta, por lo que es una lista de errores larga.

¿Qué está causando esto? Estoy en Mac OS X 10.7 y lo instalé sqlite, brew install sqlitetambién lo intenté pip install pysqlite. Por supuesto, tengo instalados Python 2.7 y Python 3 ( brew install python python3). Entonces se accede a Python 2.7 usando pythony a Python 3 usando python3. ¿Crees que ese es quizás el problema?

Se agradece cualquier ayuda. :)

PD: Es el único error que me da, así que parece que mi archivo de configuración está bien.

EDITAR: Lista de módulos de Python:

altgraph (0.7.1)
argparse (1.2.1)
bdist-mpkg (0.4.4)
bonjour-py (0.3)
eventlet (0.13.0)
greenlet (0.4.1)
include-server (3.1-toolwhip.1)
localtunnel (0.6.1)
macholib (1.3)
modulegraph (0.8.1)
numpy (1.5.1)
pip (1.4)
py2app (0.5.3)
pyobjc-core (2.3.2a0)
pyobjc-framework-AddressBook (2.3.2a0)
pyobjc-framework-AppleScriptKit (2.3.2a0)
pyobjc-framework-AppleScriptObjC (2.3.2a0)
pyobjc-framework-Automator (2.3.2a0)
pyobjc-framework-CalendarStore (2.3.2a0)
pyobjc-framework-CFNetwork (2.3.2a0)
pyobjc-framework-Cocoa (2.3.2a0)
pyobjc-framework-Collaboration (2.3.2a0)
pyobjc-framework-CoreData (2.3.2a0)
pyobjc-framework-CoreLocation (2.3.2a0)
pyobjc-framework-CoreText (2.3.2a0)
pyobjc-framework-DictionaryServices (2.3.2a0)
pyobjc-framework-ExceptionHandling (2.3.2a0)
pyobjc-framework-FSEvents (2.3.2a0)
pyobjc-framework-InputMethodKit (2.3.2a0)
pyobjc-framework-InstallerPlugins (2.3.2a0)
pyobjc-framework-InstantMessage (2.3.2a0)
pyobjc-framework-InterfaceBuilderKit (2.3.2a0)
pyobjc-framework-LatentSemanticMapping (2.3.2a0)
pyobjc-framework-LaunchServices (2.3.2a0)
pyobjc-framework-Message (2.3.2a0)
pyobjc-framework-OpenDirectory (2.3.2a0)
pyobjc-framework-PreferencePanes (2.3.2a0)
pyobjc-framework-PubSub (2.3.2a0)
pyobjc-framework-QTKit (2.3.2a0)
pyobjc-framework-Quartz (2.3.2a0)
pyobjc-framework-ScreenSaver (2.3.2a0)
pyobjc-framework-ScriptingBridge (2.3.2a0)
pyobjc-framework-SearchKit (2.3.2a0)
pyobjc-framework-ServerNotification (2.3.2a0)
pyobjc-framework-ServiceManagement (2.3.2a0)
pyobjc-framework-SyncServices (2.3.2a0)
pyobjc-framework-SystemConfiguration (2.3.2a0)
pyobjc-framework-WebKit (2.3.2a0)
pyobjc-framework-XgridFoundation (2.3.2a0)
pyOpenSSL (0.12)
PyRSS2Gen (1.0.0)
pysqlite (2.6.3)
python-dateutil (1.5)
requests (1.2.3)
Warning: cannot find svn location for setuptools==0.6c12dev-r85381
setuptools (0.6c12dev-r85381)
Twisted (11.0.0)
vboxapi (1.0)
wsgiref (0.1.2)
xattr (0.6.1)
zope.interface (3.5.1)

Respuesta1

Si echas un vistazo aSoftware IMAP sin conexiónhay un archivo llamado LocalStatusSQLiteFolder.py. En este archivo hay una definición de clase: LocalStatusSQLiteFolder, con el siguiente método __init__:

def __init__(self, name, repository):
        super(LocalStatusSQLiteFolder, self).__init__(name, repository)       
        # dblock protects against concurrent writes in same connection
        self._dblock = Lock()
        #Try to establish connection, no need for threadsafety in __init__
        try:
            self.connection = sqlite.connect(self.filename, check_same_thread = False)
        except NameError:
            # sqlite import had failed
            raise UserWarning('SQLite backend chosen, but no sqlite python '
                              'bindings available. Please install.')

Esto es lo que genera el mensaje de excepción que estás viendo.

¿Solución?

Buscando en el sitio web OfflineIMAP encontré esta página, titulada:Manual IMAP sin conexión. En concreto en este apartado:Rendimiento de sincronización, el módulo python-sqlitese menciona como obligatorio. También hay una guía sobre cómo configurar esta función. Leí ese material y me aseguro de que estás haciendo las cosas según lo prescrito allí.

información relacionada