I did a fair amount of work in urssus today. The highlight? database schema migration.
Here is the (not really) full list:
- Fixes on the installer
- Fix in importOPML
- Raise the window when you click on the systray popup
- Fixed several issues after feed deletion
- Fixed several issues with feeds not updating the UI's unread count
- Fixed the look of buttons on searchWidget and filterWidget
- And several more...
And the big one:
- Implemented database schema versioning using sqlalchemy-migrate.
What does that mean? That I can change the database and the user will not notice anything.
On startup, uRSSus checks if you are using the correct schema, and updates your database accordingly.
For example, I can now implement manual feed sorting just adding a "position" column to the Feed class. If I had not implemented this, that would require a much greater hack.
Now? I just do it, write an upgrade/downgrade script, and that's all. Migrate is really a very cool tool, and shows the strength of using SQLAlchemy (not so much that of using Elixir, because they get along grudgingly ;-)
Current LOC count: 1491
Current status: still fun! (and educational!)