Skip to content

v1.0.0

Compare
Choose a tag to compare
@mattbdean mattbdean released this 03 Jan 18:39

v1.0.0 is a total rewrite of the library in Kotlin. This is pretty much a brand new library, so I'd recommend checking out the documentation.

Big stuff:

  • No more messing around with managers. The new building block of the API is a Reference.
  • The API is much more fluent. For example here's what you do to subscribe to a subreddit:
redditClient.subreddit("pics").subscribe();
  • Access tokens are now automatically refreshed unless you tell your RedditClient not to
  • No more Thing/RedditObject class. All model classes extend Object.
  • A lot easier to authenticate and get started. For example, here's how to authenticate a script app:
RedditClient reddit = OAuthHelper.automatic(networkAdapter, credentials);
  • No more dozens of Paginator sublcasses, now there's only 3.
  • Paginator sorting has been reworked (thanks to @eduard-netsajev)
  • Rate limiting is handled more consistently. A RateLimitException is thrown when appropriate.
  • Paginator settings are immutable once built
  • Get instant updates for live threads via web sockets (see here)

Internals

  • Guava is no longer a dependency, switched from Jackson to Moshi
    • Rate limiting is done in-house
    • Comment tree traversal is done in-house
    • Cut down on ~10k methods for Android builds
  • JRAW is tightly bound to OkHttp for simplicity