So… Jane had asked me to come up with a post now and then that discusses bug squashing. Between the Health Check plugin, chewing on the best way to do this, and noting that our lead devs were quite busy already because of the merge and custom post types, I had yet to start.
The opportunity comes courtesy of Matt’s latest wp-devel post. So here goes… If you’re wondering how you might be able to make the best of DD32′s new contributor status, here’s a selection of WordPress niggles that could use patches, second opinions, and of course lots of testing:
1. #11588 is about actually showing a message to end users during core upgrades. There are occurrences where the host enables an output buffer automatically. When this happens, end users a greeted with a partially loaded screen that can seem to wait forever. Status: ideas submitted for force-flushing, and needs-patch.
2. #10779 is a huge source of grief on overcrowded, low-end servers. Our unzip method is slow and resource hungry, and could use some optimizations. (See also #10403 on the same topic.) Status: needs-testing.
3. Another possible optimizations for these same servers would be #10611. The idea would be to only upgrade the files that changed, when upgrading minor releases. Status: needs-patch.
4. #10913 highlights the reason why failed upgrades are such a source of grief. When using the FTP transport, file stats don’t get cached, and so we end up needing to re-check the status of each of them constantly. On the slower servers, the optional clean up + unzip + upload + clean up procedure frequently fails because of it. The whole process could be optimized by caching $fs::is_file() and $fs::is_dir(). Status: needs-patch.
5. #8830 loosely relates to the filesystem, but definitely seems to cause grief for users with an open_basedir restriction in effect. From the looks of it, a simple rtrim() call could fix wp_mkdir_p() on those system. Status: needs-testing.
6. #10889 highlights inconsistent methods between the WP Filesystem methods. I’m 90% sure that it prevents the .maintenance file from being added on some sites. Status: commit?
And that’ll be the last of today’s pick of crippling install/upgrade bugs. Please keep in mind that this is the first of a hopefully long series of posts. Feedback is welcome on the way it gets presented. Should it be more focused on less specific bugs, less focused but on more bugs, less focused on less bugs, or is it reasonably balanced as above?
Next in line, I think, will be a post that discusses the use of UUIDs to fix a couple of tickets, along the lines of #11145. Now that we’ve MySQL 4.1.2, we might as well take advantage of them.
miqrogroove 1:34 am on January 13, 2010 Permalink
I’m looking forward to your next post because there’s a reliable cure for remote upgrades: manual upgrades. On the other hand, bugs like #11145 are a disinsentive to upgrade at all. Fixing them also has the benefit of making patches that usually work on older versions. That’s just as important for those of us who absolutely cannot upgrade to the 2.9 branch until plugin authors catch up with the core devs.
miqrogroove 1:35 am on January 13, 2010 Permalink
Good lord, what has happened to my avatar….
miqrogroove 2:48 am on January 13, 2010 Permalink
Apparently wordpress.org, wordpress.com and gravatar.com were using 3 different e-mail addresses for me. I think it’s straight now. Back to sunny Robert again.
Ryan 7:29 am on January 13, 2010 Permalink
This is entirely off-topic, but just wanted to mention that it’s awesome you guys are allowed to post on here. It’s making it a lot easier to track what’s going on behind the scenes at WordPress.org.
Matt 7:30 am on January 13, 2010 Permalink
Happy to open this up more, if someone wants posting ability just ask, and link to your WP.org profile showing your Trac contributions.
Andrea_r 1:19 pm on January 13, 2010 Permalink
This is actually presented quite nicely in a reasonable chunk of related items. I like it.
Ryan McCue 2:23 pm on January 13, 2010 Permalink
I have to say, I love the line “FWIW, the suggested patch doesn’t flush hard enough.”
Jane Wells 3:18 pm on January 13, 2010 Permalink
My only suggestion would be to limit it to no more than 3 per post, in order to keep it short enough that it feels like it will only take a minute to open them and respond. Thanks for doing this!