FS#25058 - [python2]: removal of bsddb support broke existing shelve databases
Attached to Project:
Arch Linux
Opened by Ayla Ounce (reacocard) - Thursday, 07 July 2011, 21:02 GMT
Last edited by Stéphane Gaudreault (stephane) - Thursday, 14 July 2011, 11:04 GMT
Opened by Ayla Ounce (reacocard) - Thursday, 07 July 2011, 21:02 GMT
Last edited by Stéphane Gaudreault (stephane) - Thursday, 14 July 2011, 11:04 GMT
|
Details
The music player I use and develop for, Exaile, uses
python's shelve module for persistence. By default, shelve
uses the bsddb support if it is available, so when this
support was disabled a few days ago, shelve became incapable
of opening any existing databases, even if python2-bsddb is
installed. Even yet more worrisome, shelve appears to now be
incapable of starting a new database (via
shelve.open(filename, 'c')), so its not even possible to
create a new DB.
Please reenable bsddb support so that Exaile (and anything else using shelve) will be useable on arch linux. |
This task depends upon
Closed by Stéphane Gaudreault (stephane)
Thursday, 14 July 2011, 11:04 GMT
Reason for closing: Won't fix
Thursday, 14 July 2011, 11:04 GMT
Reason for closing: Won't fix
FS#25045import shelve
try:
data = shelve.open(location)
except ImportError:
import bsddb3
_db = bsddb3.hashopen(self.location)
data = shelve.Shelf(_db)
Rather awkward, but it works.