The past week (and a half) was a busy time for most people involved with the holidays, but there wasn’t a shortage of activity in the Habari repos.

Habari Core

There was a lot of debugging and bug fixing over the last 8 days. We’re continuing to strongly push towards a 0.7 release with 40 commits changing 3,148 lines of code, 14 new tickets, and 10 closed tickets.

Last week I made several changes to the WordPress importer plugin that fixed issues importing future scheduled posts, avoided errors related to importing posts of types and statuses that aren’t recognized by Habari, and made sure imported posts got slugs set properly if they didn’t already have one. This all eventually culminated in a total rewrite of the WordPress importer to clean up a lot of the code and fix a lot of underlying issues that were difficult to work around.

Rick tracked down and fixed two remaining issues with the timeline in the admin. With some great jQuery and DOM debugging by Johan he fixed a bug in Firefox that caused the loupe to always expand to the right, even if you were dragging the left handle. He also found that the root cause of a bug I’d encountered that prevented the timeline from displaying all your posts was related to a change I’d previously made to allow you to limit the number of results returned for the monthly-archives view of posts… D’oh!

Some more DOM debugging by Johan helped pin down a bug preventing the GMail-style multi-select of items in the admin from working, even though a rewrite of the code to fix the problem has been slated for a later version.

After finding that the Human Msg displays were no longer fading out properly I also rewrote the javascript library to be less hacky and include a lot more inline notes on what’s going on. It looks like we may still be having a few display problems in Chrome, but at least it’s a lot easier to understand and update now.

Michael spent a large chunk of time deciphering and documenting the arguments that can be passed to the Posts::get() method when fetching posts. He did a great job updating the wiki, PHPDoc comments, and a couple of the PHPUnit test cases. Hopefully we’ll see another documentation sprint from him soon!

Michael also updated the tags page in the admin so it displayed a message when your search resulted in no matches (similar to other admin pages) and refactored some of the delete and rename code so it was more consistent.

I rewrote the vocabulary / term matching code for Posts::get() so it works properly when a non-existent term is requested and uses far fewer independent queries to fetch results. I also made several tweaks to the admin to better support MultiByte strings in several instances, reduce duplicate and obsolete code, and clean up some visual notifications.

Finally, Colin made several batches of changes to bring core code more in line with our established coding standards. Yay for conformity!

For some extra non-code related excitement, we’re prepping for a move to a new server so I’ve been playing with new configurations and software stacks. Things are going well and I hope to be ready to migrate sometime in the next week!

Habari Extras

641 lines of code changed in the extras repository over 8 commits.

Most of those lines were changed when I tagged the 0.2 release of the Akismet plugin after updating it to work with 0.7. I also tweaked the Acronym plugin so it output <abbr> tags instead of the deprecated <acronym> tags it was using and updated the Highlighter plugin so the GeSHi library was automatically grabbed during an SVN export and loaded.

Ken also updated the Gravatar plugin so it worked around a peculiarity of the Gravatar API by lowercasing email addresses before attempting to fetch their images.

There’s been quite a lot of activity in the Habari world over the last two weeks and we’re hoping for a strong start to the new year. If you’ve got some time and wouldn’t mind helping out, we don’t just need coders. We also need help updating the manual for a new release and our wiki always needs help with the thankless job of documentation. Or you could just download the latest release and play around, more people trying to break things means a better release!

Merry Christmas and Happy New Year!

Originally published and tweaked .