Last week I took this site to WordPress 2.1 and much to my dismay realized that Ecto, my favorite XMLRPC blogging client no longer worked. It would let me post, but it was never able to update the category information for posts… It just hung with no error. I looked into it, and found out that Ecto expects the category information to be returned as a string, not an int.
Adriaan, the developer of Ecto is blaming WordPress, while I’m sure the folks at Automattic would call it an Ecto problem… That’s just how these things tend to work. Anyhow, it’s pretty easy to fix if you make this quick change to xmlrpc.php.
Simply change this on line 180:
'categoryId' => $catid,
To this:
'categoryId' => (string) $catid,
Hopefully someone will go back to their code tree and make a permanent fix so we don’t have to constantly edit this file every time we upgrade.

To be exact, it is an Automattic issue and a bug as the spec clearly calls for a string, not an int.
Still, ecto COULD be more forgiving, as MarsEdit still worked despite the incorrect data type.
[...] Ecto is finally available in Intel optimized form, but WP 2.1’s XMLRPC breaks it. Cliffy, of all people, tells us how to fix it. [...]
[...] I upgraded my blog to WP2.1 and discovered that Ecto could no longer update its post list (would hang at “retrieving categories”). A solution is now circulating. [...]
Thank you so much! I thought I wasted mymoney on ecto but now it seems like this solves my issues with this app!
[...] spiralbound.net ยป Ecto is Busted in WordPress 2.1 (tags: wordpress ecto ecto-wordpress-bug) [...]
Just a quick note: in my copy of xmlrpc.php, this correction had to be made on line 980, not line 180.
Thanks for the tip! I love Ecto and I love Wordpress, and I was so bummed when they stopped playing nice with each other.
You know that thing about sense of humour.
If you ain’t got it then you won’t get it.
Keep it up…
Thank you very much! you saved me from using the text editor in wordpress!!