PearのServices_TwitterでOAuth認証している場合のfriendships/show
OAuth認証してAPIリクエストを送信している場合は、friendships/showでsource_idまたはsource_screen_nameのいずれも指定しなくてもいけるはずなんだけど、PearのServices_Twitterだとパラメーターの数が足りないと言われエラーになります。
このエラー、twitter側で出しているんじゃなくて、Services_Twitter側で出してるんですね。
で、こういった引数を定義しているのがdata/api.xmlファイルで、そこに引数の最小値が「2」と書かれていたのが原因でした。
303 <endpoint name="show" method="GET" auth_required="false" min_args="2"> 304 <formats>xml,json</formats> 305 <param name="source_id" type="id_or_screenname" required="false"/> 306 <param name="source_screen_name" type="id_or_screenname" required="false"/> 307 <param name="target_id" type="id_or_screenname" required="false"/> 308 <param name="target_screen_name" type="id_or_screenname" required="false"/> 309 </endpoint>
OAuth認証している場合とそうでない場合とで必須かどうかが変わるので、これをバグと言うべきかどうかは判断できませんが・・・。
とりあえず手元で直接1に変更して対処。