So… if you've been following the Semiologic blog in the past weeks, you've probably skipped WP 2.9. It's now time to jump into the pool and upgrade your site to WP 2.9.1.
In order to spare Semiologic Pro users the hassle of needing to upgrade their sites several times this week, I had been stalling a theme update and a rather large number of plugin updates until WP 2.9.1, i.e. today. As noted in a previous post, these updates are nearly all related to the new and improved Semiologic Cache 2.0.
I've released the latter too while I was at it. If you had been testing it since it was in beta, be sure to upgrade it before you upgrade WordPress. (I fixed a last minute annoyance earlier today, which made the memcache-based object cache prevent the WP database upgrade from working.)
Unless an urgent issue creeps up, our next stop will be the new back-end. WP 2.9 and Semiologic Cache 2.0 have been keeping me busy in the past weeks, not to mention taking a few much needed days off and rehashing UI ideas all over the place. But, it's making progress here and there. More on this later in the month.
A happy new year to all!
Filed under Blog, WordPress by on Jan 5th, 2010. 5 Comments.
I was a bit worried when I foresaw WP 2.9 showing up around Christmas. So much so, in fact, that Semiologic Pro users were prompted to disable core updates until WP 2.9.1. And rightly so: very nasty niggles showed up when it got released.
On the bright side, WP 2.9 might be the shortest lived major WordPress release yet. WP 2.9.1 RC1 is officially in the wild, a mere 10 days after WP 2.9. At the time of writing, 23 bugs were fixed; over half of them were major.
When it gets released, I'll feel quite comfortable upgrading this site. So should you.
In other news, a large batch of plugin updates are on the way. They'll be released alongside WP 2.9, so you can upgrade everything at once. As previously noted, nearly all of these updates are optimizations that are related to the coming Semiologic Cache 2.0.
Regarding the new cache plugin, special thanks go to Mark (Golf Guide). He has been doing his very best to break the plugin in the past weeks. I'll be releasing RC1 in the next few days. I'll open a forum thread when I do.
To help out with testing at that stage, toggle Bleeding Edge packages under Settings / Semiologic API Key. Be sure to choose a site with moderate importance, rather than a mere test site; the site needs some traffic for the tests to make any sense, but not so much that you cannot afford it to be quirky until we look into it (which can be minutes or hours).
Filed under Blog, WordPress by on Dec 29th, 2009. 11 Comments.
From the Financial Times:
As we face an uncertain and worrying New Year, we can at least console ourselves with the fact that we are not living 1,600 years ago, and about to begin the year 410. In this year Rome was sacked, and the empire gave up trying to defend Britain. While this marks the glorious beginnings of "English history", as Anglo-Saxon barbarians began their inexorable conquest of lowland Britain, it was also the start of a recession that puts all recent crises in the shade. Read More…
Filed under Blog, Highlights by on Dec 23rd, 2009.
As many of you already know, WP 2.9 has been released over the WE, and… oh bummer:
- One major bug was simply dismissed;
- A related critical bug was only partially fixed;
- A last critical bug (and its child bug) crept in at the last moment.
As a result of this:
- RSS widgets are completely broken on servers that are missing both of iconv and multi-byte string functions;
- The curl transport is broken on some servers with an outdated library. This breaks the WP cron, and with it future posting, pings, etc.
Not all sites are affected, of course. Most aren't, in fact. But for those few who are, the situation is frustrating.
Fixing your site
If you have upgraded your sites to WP 2.9 and are experiencing any of these issues, the fix should be a matter of uploading these three patched files to your site(s):
They go in your wp-includes folder; simply overwrite them as needed.
Please note that the fix to the SimplePie/RSS widget problem merely prevents SimplePie from failing when it's trying to convert UTF-8 into UTF-8. The correct fix would be that your host installs multi-byte string functions or iconv on your server.
Big hat tip to miqrogroove, who took the time to formally diagnose the curl problem, and scribu, who identified where the fatal errors in RSS widgets came from.
Customer reminder
As discussed in a previous post, Semiologic Pro users are advised to wait for WP 2.9.1.
Update: all three bugs are fixed in WP 2.9.1, so we'll be good to go with that release.
Filed under Blog, Highlights, WordPress by on Dec 21st, 2009. 82 Comments.
I had been made aware of the Firefox plugin a few months ago by a high profile customer who was worrying about his site's performance. At the time I dismissed most of what it was reporting as garbage.
I had yet to install it or try it on my own site… I did today. It randomly grades this site C or D; Microsoft got an ugly D; Yahoo! Finance got a C; Yahoo itself fetched a B. The only site I've found that got an A was Google's.
I was quite surprised. Then again, taking a closer look at what it's complaining about:
- Use a CDN: on a site powered by WordPress? Yeah, right. And place assets on a separate domain name to avoid cookie overhead, I would assume? For a site like CNN, that makes sense. But for my own minuscule site, that seems so overkill…
- Add expires headers long in the future: valid point, unless I decide to change the images. I'll cope with the 304 requests for now, but I'll probably revisit the idea.
- Configure Etags: amusingly, all of the files it reports as having none actually have one, and they're returning a 304 Not Modified header. I'm assuming this is a bug in YSlow, whereby it doesn't check whether the file is in the cache.
- Add gzip compression: the same bug, in all likelihood, since the files are actually gzipped when they're sent to the browser.
- Reduce the number of DOM elements: while correct in theory, that possibly is the silliest thing I've read this year… How is a site supposed to be customizable without some amount of DOM?
- Place background images in sprites: as if… that works in some cases, but definitely not all of them. In particular when you need to center-align an icon with text whose size can vary.
YSlow was garbage when it was released. It still is; and it's full of bugs.
The most horrible thing, though, is that this thing is going to become some kind of a benchmark for worried users who don't know any better in the year to come, courtesy of Google's new indexing algorithm…
/rant
Filed under Blog by on Dec 17th, 2009. 1 Comment.
So… according to Matt's post, WP 2.9 should be released very shortly. I'm releasing Version Checker 2.0.2 as a result.
The latter disables core upgrade nags for non-bug fix WP releases. Experience has shown, in past years, that major WP releases need about an extra month of testing in the wild to be really stable. You can still upgrade, when WP 2.9 gets released, under Tools / Upgrade. But WP won't nag you into doing so.
Filed under Blog, WordPress by on Dec 17th, 2009. 5 Comments.
Here goes with the back-end upgrade, part one.
Semiologic Cache 2.0 beta is up for grabs. Heaps of other plugins (and the two themes) got updated and are in RC status in the process.
This needs a bit more testing than usual, since I've been filing quite a few bugs on the WP front that related to the new features I implemented. To participate, switch a site or two of yours to use bleeding packages under Tools / Semiologic API Key, mass-upgrade your plugins, and upgrade the theme.
The performance gains are quite significant, to say the least.
For the most part, the plugin updates and the two theme updates are about conditional flushing of caches. For instance, the nav menus cache is no longer flushed if you edit a post without editing its title, caption, or permalink.
Semiologic Cache 2.0 is of course another story. Its previous version was a forked and bug fixed version of the WP Super Cache plugin. No longer.
2.0 was rewritten from scratch and is a completely different animal:
- It requires PHP 5.0 to work; some features (the query cache) require as much as PHP 5.1.
- The niftier functionality is only available on servers with memcached installed. This is not available on shared hosts; but if you're on a VPS host, such as Hub.org, you can take full advantage of it. (I'll get in touch with Marc so that Hub.org users get memcached by default on Premium VPS and above.)
- So-called "Super caching" no longer occurs for non-key pages (i.e. everything except the front page, and singular pages). Semi-static caching takes over for other pages. This allows to expire the super cached pages automatically.
- The semi-static cache can be handled by memcached. This allows sites who live on multiple servers (such as mine) to avoid lags related to the filesystem.
- A query-level cache has been added for sites that use memcached; it significantly speeds things up for logged in users, provided they haven't authored private posts.
- A persistent object-level cache has been added. This speeds things up for much about everyone, by avoiding round trips to the database when none are needed.
- An asset-level cache has been added. It reduces the number of server requests per page by concatenating javascript and css files.
- A gzip-level cache has been added, at the apache level, for servers that support mod_deflate. This significantly reduces the size of the files sent to end-users whose browser support it.
In short, Semiologic Pro users are ready for the new indexing algorithm that Google is going to roll out early next year. As I write this post, the Semiologic Cache plugin combines the benefits of all of the available performance related WordPress plugins, and more.
It's easy to use, too. And error proof — contrary to the previous, WP-Super-Cache based versions.
How it relates to the new back-end is this: I needed a caching plugin that scaled with a WP-based membership plugin, on a site that is load balanced. The former means we get multitudes of users who are potentially logged in on a site; this rules out plugins such as wp-super-cache. The latter means we cannot use the likes of query-cache, since it's filesystem based.
I haven't tested Semiologic Cache 2.0 with WP Wishlist, from lack of a copy and license. But I 99% expect it to work as is on sites that use it.
Filed under Blog, WordPress by on Dec 16th, 2009. 3 Comments.
There reportedly seems to be some kind of agreement that no release should occur 2 weeks before the official string freeze. That occurred very recently. There are still 20-30 tickets in the WP 2.9 todo list. So it's mostly nit picking at this stage.
Some neat features make it definitely worth the upgrade. I wouldn't jump on 2.9.0, however; especially if you're using plugins that aren't as well maintained as those from Semiologic Pro. There are over 1,000 tickets in total at the time of writing this post, and WP 2.9 introduces some subtle changes in the schema that may break a plugin here and there.
In order to deal with the WP upgrade, I'll be releasing an updated Version Checker in the next couple of days. It'll disable the WP upgrade nagging until WP 2.9.1 is released. (The same for 3.0, 3.1, etc.)
In other news, Semiologic Cache 2.0, which I've yet to start using on this site, but which I've been working on all week, is starting to look very cool. More on this in a later post.
Filed under Blog, WordPress by on Dec 11th, 2009. 6 Comments.
So… here we go again. After the ugly php 5.2 output buffer crashes, we now have the php 5.3 logic bugs:
$foo = 0;
var_dump('foo' == $foo); // true
var_dump($foo == 'foo'); // true
var_dump('foo' === $foo); // false
var_dump($foo === 'foo'); // false
If your scripts are returning completely unexplainable results on php 5.3 platforms, that's one possibility to keep in mind. I initially found it while looking into memcached-related problems.
The worst part of it, though, is that it's not a bug: it's a feature.
Filed under Blog, Highlights, WordPress by on Dec 10th, 2009. 5 Comments.

Recent Comments