The phone rings:
tech support: "hello computer tech support"
customer: "hello my computer was making a strange hissing noise last night and this morning when I turned it on there was a crackling noise and some smoke then nothing, if I bring it in can you fix it?"
I guess it's warm in there.
The tracklist load/save and config stuff was bugging me enough that I just spent the 10 minutes it required to implement the start of the config / state storage system for the player. ConfigParser does most of the work, obviously ;) So far:
- create $HOME/.pyfi config dir if it doesn't exist
- if $HOME/.pyfi/pyfi.config exists, it loads the tracklist/filename
as the current tracklist_file and loads the list into the display
- at exit, save the name of the current tracklist_file to the config
- added Track menu items to create a new tracklist, and also split the save
menu off into "Save" and "Save As".
While I was at it, I fixed a nagging glitch in the branch-selection code for the filesystem view. I'd gotten the wrong class of QListViewItem into the branches somehow, and they thought they were actually leaves (hence real files). Confused the player a little, but it's fixed now.
Off now... might hack it a bit more on the train. It's just too much fun :)
The train ride this morning had me hacking on PyPI again - while listening
to music played by PyFi. Heh. In terms of the status of the two projects...
PyFi is close to being something I'd encourage other
people to use. It needs a configuration file and its own icons before
other people can use it (currently
we "borrow" the Noatun icons from the KDE share dir). It's also a pig for
memory - Toby's 6,700 entry track list took PyFi's memory usage up to 100Mb.
Noatun uses 40Mb for the same list. Noatun doesn't actually work with
that size playlist, but that's beside the point :)
PyPI now has an ordering attribute on releases
that's calculated by sorting LooseVersion objects for each of the release
version strings. I'll be updating the version on amk.ca tomorrow to use that.
I need to write the documentation patches really soon, as the python 2.3
cutoff is approaching. I still don't actually know whether the thing is
going to be accepted yet. Presumably once I declare the PEP/implementation
done, I'll get an answer :)