JTwitter Changelog

What's new in JTwitter 3.0.5

Dec 24, 2014
  • Even more reporting
  • Switched off updateStatus2_safetyCheck() -- does little & only false-positives in recent checks

New in JTwitter 3.0.4 (Dec 24, 2014)

  • More reporting around stream errors
  • Bundled Apache/Jakarta commons-codec (version 1.9) jar in lib (needed by sugnpost)

New in JTwitter 3.0.3 (Dec 24, 2014)

  • More robust handling of Rate-Limit headers (after seeing lowercase headers coming back from Twitter)
  • Twitter.setSinceId() and setUntilId() convert inputs to BigInteger (fixes a formatting bug if double was input)

New in JTwitter 3.0.2 (Dec 24, 2014)

  • TwitterList and Message use (64 bit safe) BigInteger.

New in JTwitter 3.0.1 (Dec 24, 2014)

  • Logging to try and catch unicode bug
  • Fixed unicode-with-images bug (note: this bug only ever affected some machines)

New in JTwitter 3.0.0 (Dec 24, 2014)

  • Breaking change to IGeoCode, unifying JTwitter's geocoding with PinPoint (and with better uncertainty outputs).

New in JTwitter 2.9.1 (Dec 24, 2014)

  • Klout API update
  • Made android.jar optional. This means a fresh Eclipse project will show compilation errors
  • in AndroidTwitterLogin. Which isn't ideal, but is MUCH better than the build failing (previous
  • behaviour).

New in JTwitter 2.9 (Dec 24, 2014)

  • LinkedIn and FourSquare providers made non-static (because they're not actually thread safe)
  • Added OAuthSignpostClient.getProviderResponseParams()

New in JTwitter 2.8.9 (Dec 24, 2014)

  • Bugfix for Twitter.countCharacters with DM microformat.

New in JTwitter 2.8.8 (Dec 24, 2014)

  • Altered build setup to use 1.6 compiler but target Java 1.5
  • Twitter.countCharacters will spot & discount the DM microformat "d user "

New in JTwitter 2.8.7 (Dec 24, 2014)

  • Altered build setup to use a real copy of android.jar

New in JTwitter 2.8.6 (Dec 24, 2014)

  • Added Twitter_Users.searchUsers(query, page)
  • OAuthSignpostClient constructor checks for null values
  • Twitter.updateConfiguration returns true/false if it detects a change

New in JTwitter 2.8.5 (Dec 24, 2014)

  • Added Regex, a snapshot of Twitter's URL regex. This is now used for character counting.
  • TwitterEvent for favorite now stores a Status object (not a JSON object) as the target-object.
  • Bugfix for parsing the stream event when a DM is deleted.
  • Bugfix for change in Twitter's (still buggy) RT truncation (the change is from ... to … -- JTwitter
  • will correct for this)

New in JTwitter 2.8.4 (Dec 24, 2014)

  • For easier resource management, rate limit info is now shared when using IHttpClient.copy()
  • Added IPlace.getParent()

New in JTwitter 2.8.3 (Dec 24, 2014)

  • Increased the "default" Twitter.LINK_LENGTH to 23 characters, and added Twitter.MEDIA_LENGTH

New in JTwitter 2.8.2 (Dec 24, 2014)

  • Added Twitter.account().getRateLimits() and IHttpClient.updateRateLimits()
  • IMPORTANT: work-around for encoding issue re *

New in JTwitter 2.8.1 (Dec 24, 2014)

  • More API v1.1 changes
  • Handle v1.1 rate limits, and some 1.1 bug-fixes
  • Retrofit Twitter.getRetweetsByMe
  • Use a more lenient charset decoder (possibly related to occasionally seeing MalformedInputException?)
  • Default value for include rts has changed
  • Added Status.getLang() property

New in JTwitter 2.8 (Dec 24, 2014)

  • IMPORTANT: Enforced switch to API v1.1, in line with twitter.com

New in JTwitter 2.7.1 (Dec 24, 2014)

  • Signpost oauth jar: Minor version upgrade (1.2.1.1 -> 1.2.1.2)
  • Improvements by Azonli (https://github.com/azonli): gzip encoding (off by default) & Scribe client update

New in JTwitter 2.7 (Dec 24, 2014)

  • IMPORTANT: Bugfix for change in Twitter's oauth urls

New in JTwitter 2.6.10 (Dec 24, 2014)

  • Use the callback url in AndroidTwitterLogin
  • Twitter.users().getFriends() can work by user-id as well as by screenname

New in JTwitter 2.6.9 (Dec 24, 2014)

  • Repeated favorite (star) does not generate an error. Instead the Twitter.setFavorite() return value is null
  • STREAM is a request type (for completeness + convenience of some use-cases)
  • TwitLonger support refactored into a separate class
  • Catch Twitter-is-completely-hosed error pages & throw an E50X instead of a ParsingException

New in JTwitter 2.6.8 (Dec 24, 2014)

  • Image upload! See Twitter.updateStatusWithMedia()
  • Started coding around the 1.0 / 1.1 switch. API version 1.0 will remain valid until March 5th, 2013
  • Removed methods switched off by Twitter
  • Twitter.getPublicTimeline()
  • Twitter_Users.getFeatured()
  • Added Twitter.CHECK_TWEET_LENGTH to allow disabling of length-checking
  • Twitter now send DMs as part of a UserStream. Hurrah! It only took them a year to catch up with their documentation
  • UserStream is still deprecated, because Twitter still have bugs & the returned results are unreliable
  • Added the disconnect event to the system events handled by AStream
  • AStream handles unknown system events gracefully
  • Location.parse() is more robust around bad-coordinates

New in JTwitter 2.6.7 (Dec 24, 2014)

  • Added Twitter.getSinceId() and Twitter.getUntilId()

New in JTwitter 2.6.6 (Dec 24, 2014)

  • Moved the support for deprecated oauth libraries, OAuthHttpClient.java and OAuthScribeClient.java
  • into a separate source code folder, src-extra, and EXCLUDED them from jtwitter.jar
  • This fixes a Proguard issue reported by Ben Randall
  • You can still compile and use them
  • Added setMyPlace() to complement setMyLocation()
  • Added BoundingBox.isPoint()
  • Support for some odd WordPress return values
  • Allow long posts to WordPress
  • Fixes a bug in Twitter where short urls lead to bogus TweetEntity offsets

New in JTwitter 2.6.5 (Dec 24, 2014)

  • Twitter_Users.show() handles the 404 which you get if all the usernames are deleted
  • users
  • TwitterStream now guards against too many keywords, avoiding Twitter getting invalid requests

New in JTwitter 2.6.4 (Dec 24, 2014)

  • Bugfix where some entities could throw Status.getDisplayText()
  • Minor bugfix for TwitterException.Parsing -- the message clip now clips to the first part of the json
  • Added TwitterCounter support
  • Added JSONArray.getList() for convenient iteration
  • Added IHttpClient.isRetryOnError()
  • Added workaround for a new bug in Twitter, where they sometimes send bad json (the packet gets chopped short)

New in JTwitter 2.6.3 (Dec 24, 2014)

  • Bugfix for a v2.6.2 bug where updateStatus mistook "do ..." for a dm.
  • Twitter.countCharacters() is now available as a method for url-sensitive counting.

New in JTwitter 2.6.2 (Dec 24, 2014)

  • Added more Android dummy classes to allow compilation without android.jar
  • Minor early safety checks in TwitterStream
  • More documentation for the AndroidTwitterLogin class
  • The slightly paranoid safety checking of Twitter.updateStatus() is now _off_ by default. Switch it on if desired with the Twitter.WORRIED_ABOUT_TWITTER flag

New in JTwitter 2.6.1 (Dec 24, 2014)

  • Improved AndroidTwitterLogin performance. Added onFail() method.

New in JTwitter 2.6 (Dec 24, 2014)

  • Unifying geo-coding service with JGeoPlanet
  • Breaking Change*: LatLong is replaced by Location from jgeoplanet (a sister-project by Winterwell).
  • New interfaces for geo-location: IPlace & IGeoCode
  • Some JGeoPlanet classes moved into JTwitter so we still have no dependencies beyond Signpost.
  • Minor improvements to JSONObject (error messages, map access)
  • Added AndroidTwitterLogin for easy Android Twitter access :)
  • This replaces & improves on the short-lived TwitterAuthActivity of version 2.5.
  • Added Location.parse() lat/long parser

New in JTwitter 2.5 (Mar 21, 2012)

  • Added getScreenNameIfKnown()
  • Added sketch code for image uploading (not ready for use yet!)
  • Added Twitter_Analytics and Twitter.analytics().getUrlCount() Thanks to ottopress.com for the info
  • Added TwitterAuthActivity for Android users. Removed the now obsolete AndroidJTwitter example file
  • Note: if you want to edit the JTwitter source code in Eclipse, you'll see error messages for
  • TwitterAuthActivity. If you're doing Android work, add android.jar to the buildpath. Otherwise
  • just ignore them