Urssus: July 28th - Cleanup

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!)

Comments

Comments powered by Disqus