Twitter4J 2.1.0 リリース - 最新APIセットをサポート、パフォーマンスを大幅改善
Twitter API の Java バインディングライブラリ、Twitter4J の最新版をリリースしました。
http://twitter4j.org/
全てではありませんが最近リリースされたAPIセットをほとんど実装しています。
Maven Central Repository にも入っています。
内部的に大幅なリファクタリングが施されており、パフォーマンス改善やメモリフットプリントの大幅な縮小も実現しています。
現在はバージョン 2.1.1 を開発中です。スナップショットビルドの公開時など、最新情報は @t4j_news で配信しています。
・バージョン 2.0.x から 2.1.x への移行
・twitter4j 2.1.0 JavaDoc
・自前 maven repository
・snapshot ビルドをプロジェクトで利用する方法
・サポートAPIリスト
Release Notes - Twitter4J - Version 2.1.0
Bug
- [TFJ-206] - need to disambiguate methods showUser(integer-userid) and showUser(screen-name)
- [TFJ-207] - need to disambiguate methods ***ById(int id) and ***ByScreenName(String sn)
- [TFJ-213] - 400 bad request when using within near: or within: operator.
- [TFJ-215] - geo lat/long are always -1
- [TFJ-228] - Unable to "close" a TwitterStream
- [TFJ-230] - DirectMessage.getSender()/getReceiver() always return null
- [TFJ-235] - Reply to Retweet does showe inReplyToStatusId as -1
- [TFJ-236] - twitter4j.Twitter doesn't implement Serializable properly
- [TFJ-257] - rateLimitStatus doesn't work with OAuth
- [TFJ-262] - unexpected TwitterException(statusCode=-1) on Android
- [TFJ-282] - java.lang.IllegalArgumentExcep tion: URLDecoder: Illegal hex characters in escape (%) pattern - For input string: " s"
- [TFJ-288] - getFollowerIds needs authentication
Improvement
- [TFJ-162] - use json to reduce computing / network footprint
- [TFJ-217] - geo location as a class
- [TFJ-219] - support improved retweet format
- [TFJ-224] - verifyCredentials: clarify when TwitterException will be thrown
- [TFJ-234] - cursor-based pagination for statuses/friends and statuses/followers.
- [TFJ-239] - rate limit status as a class
- [TFJ-240] - retire featured method
- [TFJ-244] - introduce a constant type class - TwitterMethod for AsyncTwitter exception handling
- [TFJ-245] - typo: deliverlyDevice -> deliveryDevice
- [TFJ-246] - retire async methods that don't take TwitterListener
- [TFJ-250] - add handy setter methods to Query class that returns itself to make it possible to generate a query instance in one line
- [TFJ-253] - methods that are API rate limited but are not requiring authentication need to pass credentials (if availalbe) to get whitelisted properly
- [TFJ-261] - introduce interface set which contain pre-categorized method set
- [TFJ-263] - define interfaces per method sets
- [TFJ-264] - rename ratelimitStatus() to getRateLimitStatus(), ratelimitStatusAsync() to getRateLimitStatusAsync()
- [TFJ-266] - mask Basic Authentication header in the debug output
- [TFJ-267] - be ready for the new search api response code
- [TFJ-273] - use SSL by default when Basic Authentication is enabled.
- [TFJ-274] - ability to specify streaming api specific http read timeout value
- [TFJ-276] - introduce Interfaces for data objects
- [TFJ-277] - extract interfaces from data objects
- [TFJ-278] - ensure *JSONImpl are treating all fields as optional
- [TFJ-279] - User.getProfileBackgroundTile() should return boolean
- [TFJ-283] - retire Device#IM as "IM" is not a supported notification device anymore
- [TFJ-284] - separate AsyncTwitter from Twitter
New Feature
- [TFJ-50] - support update_profile_image method
- [TFJ-51] - support update_profile_background_image method
- [TFJ-152] - introduce a listener interface that can grab http responses
- [TFJ-171] - listener for rate limit status changes
- [TFJ-210] - ability to handle streaming api's deletion and limitation notices
- [TFJ-214] - list API support
- [TFJ-223] - support spam reporting API
- [TFJ-226] - use versioned URL
- [TFJ-227] - introduce a tiny utility class that produces "a minutes ago" like strings from Date objects
- [TFJ-229] - ability to get Retry-After info
- [TFJ-231] - introduce more flexible configuration scheme, make Twitter class immutable
- [TFJ-237] - support list members methods
- [TFJ-238] - support list subscribers methods
- [TFJ-248] - support friendships/show
- [TFJ-249] - support users/search
- [TFJ-270] - include geo location info in the search result
- [TFJ-280] - ability to configure baseURLs
- [TFJ-289] - async support spam reporting API
- [TFJ-290] - async support of support users/search API
Task
- [TFJ-113] - retire deprecated methods
- [TFJ-220] - remove User#sendDirectMessage()
- [TFJ-255] - remove getPublicTimeline(long sinceId) as the parameter is not documented anymore
- [TFJ-256] - deprecate(or remove?) getFriendsTimeline()
- [TFJ-258] - Streaming API example
- [TFJ-265] - ensure AsyncTwitter class is truly serializable
関連記事:
・Twitter4J 2.0.10 リリース - geo location API, retweet API をサポート - 侍ズム
・Twitter4J 2.0.7 リリース - 侍ズム
・Twitter4J 2.0.6 リリース - 侍ズム
・Twitter4J 2.0.5 リリース - 侍ズム
・Twitter4J 2.0.4 リリース - ストリーミング API をサポート
・Twitter4J 2.0.3 リリース - JDK1.4.2 互換性を確認 - 侍ズム
・Twitter4J 2.0.2 リリース - trends API や gzip 圧縮をサポート - 侍ズム
・Google App Engine 対応 の Twitter4J 2.0.1 リリース - 侍ズム
・Twitter4J 1.1.8 リリース - 侍ズム
・Twitter4J 1.1.5 リリース
・Twitter4J 1.1.1 リリース
・Twitter4J 1.1.0 リリース
・Twitter4J 1.0.6 リリース
・Twitter4J 1.0.5 リリース
・Twitter4J 1.0.4 リリース
・Twitter4J 自前 maven リポジトリを公開
・Twitter4J 1.0.3 リリース
・Google Calendar と Twitter を連携 - Twittercal
・ Suitter Public beta 1.0
・メールで Twitter! - TwitterMail.com
・Twitter4J 1.0.2 リリース
・Twitter4J 1.0.1 リリース
・Twitter4J 1.0 リリース