[wp-xmlrpc] WP 2.2.1 breaks Ruby 1.8.2

Allan Odgaard m123ixd02 at sneakemail.com
Tue Jun 26 15:36:40 GMT 2007

On 26. Jun 2007, at 16:52, Daniel Jalkut jalkut-at-red-sweater.com | 
WP XML-RPC| wrote:

> [...]
> I'm not pushing for a change - I'm pushing (sort of) for "the way  
> things used to be." If we're going to make the effort of reverting  
> back to a "non-breaking" behavior, then I propose we go all the way  
> back to pre2.2 (a behavior that will match the functionality for  
> many people who have yet to upgrade to 2.2 and are doing so  
> gradually over time).

Pre 2.2 was broken! It did not work!

It may have worked for you because you have your blog in your local  
time zone AND you have a client that interprets dates as being in the  
local time zone. But this is definitely not “working” by my  
definition. What if you take your laptop with you on vacation a place  
where you are not in that time zone anymore? Not everyone has their  
blog in their local time zone, and even those who have, doesn’t have  
it all the time.

> Of course the current "Z" behavior is working fine for me so I'm  
> also happy with sticking it out, but if we're going to selectively  
> revert changes then I suggest it's not fair that WordPress changes  
> now to fix PHP but to break MarsEdit (and possibly other clients).

WP introduced something which a) breaks *several* XML-RPC parsers and  
b) is *not* explicitly allowed by the standard. But because it does  
not break your program, then it is fine?

I wish you would show more interest in having WP adhere to  
established standards rather than just make it work with your  
software :/

> The timeline here:
> Pre2.2: Everything was "fine" for some definition of "fine."  
> Probably things should be evolved but slowly and in a way that  
> clients can adapt to.

How were things fine? Are you saying that if I install WP 2.1 +  
MarsEdit and fetch posts from my blog, these will show the proper  
dates (hint, my blog does not run in CET / CEST)?

> 2.2: Times switched to implicit GMT, throwing off the time  
> expectations of MarsEdit (and probably other clients).

But things were already broken -- just not with your setup. But your  
expectations (that the blog time is the local time) is wrong!

> 2.2.1: Times switched to explicit GMT, throwing off the parsers in  
> Ruby (and probably other clients).

And definitely others, as I wrote, the C/C++ parser linked to from  
XML-RPC.com also expect the format specified in the spec. and will  
barf at anything but that format.

> While you seem to be suggesting that the solution is to go back to  
> 2.2, I'm suggesting the solution is either to go back to Pre2.2, or  
> come up with a more ingenious solution.

Yes, I figured that much, but it seems rather selfish and  
shortsighted, because pre 2.2 did not work for everybody, and there  
was really no way for it to work for everybody (at least not w/o user  
interaction wrt setting time zone info).

Is it wrong if I say your motivation for not wanting 2.2 behavior is  
that you don’t want those MarsEdit users who do not upgrade their WP,  
and do have it running in the same TZ as their own machine, to see a  
wrong date?

Because both pre-2.2 and post-2.2 are solutions with clear flaws, so  
I really can’t see why you’d want either of these two over 2.2 which  
a) conforms to the XML-RPC standard (unlike 2.2.1) and b) gives dates  
which can be made to work out-of-the-box for everybody (unlike pre-2.2).

And really, if you are concerned about MarsEdit users with a pre-2.2  
WP install, introduce a (hidden) option to indicate that blog time is  
local time (though better, allow the blog’s TZ to be specified, as  
the other is not a solution for everyone, as I have repeatedly argued).

More information about the wp-xmlrpc mailing list