mastodon API rust lib elefren, fixed and updated. and also all ASYNC! NB. most examples are now wrong.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

6.0 KiB

v0.18.0 (2019-01-05)

Breaking Changes

  • Change Registered::complete to take the receiver by reference

Features

  • Add Registered::into_parts and Registered::from_parts
  • Add FromStr implementation for Scopes

v0.17.0 (2018-12-12)

Bug Fixes

  • Fixes follow to return a Relationship 6f63fef

Features

  • Add follows_me and followed_by_me shortcut methods 4dd4042

Breaking Changes

  • Change u64 ids to &str 9a08058
  • Fixes follow to return a Relationship 6f63fef

v0.16.0 (2018-10-03)

This release upgrades reqwest, our http client dependency, from 0.8.8 -> 0.9.0

v0.15.2

This is a bugfix release

v0.15.1

This is a bugfix release

v0.15.0 (2018-09-15)

This release adds support for all new API endpoints introduced in Mastodon 2.4.* and 2.5.0

Features

  • scopes: Implement granular OAuth scopes (e284894d, closes #44)
  • helpers: cli::authenticate (034bd4e6)
  • client: Implement client.update_credentials (a57c7e2f)
  • status: Add language code to status builer (989d9a59, closes #55)
  • client: Implement profile metadata update (0ad1e374, closes #54)
  • search: Implement GET /api/v2/search (28192e11)
  • client: Implement push notifciations endpoints (690b029d, closes #53)
  • client: Add replies_count property to Status entities (7d752a9f, closes #73)
  • client: Implement Keyword filtering API (7d164cb8, closes #71)
  • client: Implement the Follow Suggestions API (7de1bdc0, closes #72)
  • client: Implement the Endorsements API (1f0ba184, closes #74)

Breaking Changes

  • scopes: Implement granular OAuth scopes (e284894d) (closes #44)

Bug Fixes

  • client: change return value of client.unfollow to Relationship (20a9c69a)
  • client: change POST /search to GET /search (34e2c008)

v0.14.0 (2018-08-29)

Features

  • helpers: add json helper module (46871da4)

Breaking Changes

  • client: fix broken paged_routes_with_id methods (c66c305d, closes #42)

Bug Fixes

  • client: fix broken paged_routes_with_id methods (c66c305d, closes #42)

0.13 (2018/08/27)

Features

  • Registration now duplicates the AppBuilder API, so you can replace:

    let app = App::builder();
    app.client_name("test-client");
    
    let registration = Registration::new("http://example.com")
                                    .register(app)?;
    

    with this:

    let registration = Registration::new("http://example.com")
                                    .client_name("test-client")
                                    .build()?;
    

    You can still call use the Registration & AppBuilder APIs like before, but any App passed to .register will supercede anything app config set on the Registration object itself.

    In future releases, this will become a hard error.

  • elefren::status_builder::StatusBuilder::new() now takes anything that implements Display instead of specifically an owned String

Breaking Changes

  • The elefren::data::toml module has been moved to elefren::helpers::toml
  • Because of the changes to Registration, the elefren::apps::prelude module has been removed. The types that are still necessary from that prelude have been moved to elefren::prelude, but elefren::apps::App will have to be imported separately
  • elefren::entities::account::CredientialsBuilder has been moved to elefren::entities::account::CredentialsBuilder (note the spelling difference)
  • Registered::complete now takes a &str instead of a String

Compatibility

  • elefren::entities::instance::Instance now has the max_toot_chars property, for use with the Pleroma and Glitch-soc APIs

0.12 (2018/08/23)

Features

  • Page::items_iter added, abstracts over "next_page" logic
  • elefen::prelude and elefen::apps::prelude modules added to more easily import all necessary types
  • Helpers added to allow serialization & deseriasization of Data types to toml

Breaking Changes

  • Combined all parameters to mastodon.statuses (except id) to their own type, StatusesRequest
  • All API methods on Mastodon type moved into a trait, MastodonClient, to enable better mocking during tests
  • Mastodon::from_data(Data) was changed to Mastodon::from(Data)
  • AppBuilder was changed, use App::builder() instead
  • Registration was broken up to enable better registration flow

Documentation

  • All API methods now have doc comments
  • All docs were updated for the new breaking changes

Compatibility

  • Login to pleroma instances was fixed

0.11

  • Added more examples to examples directory.
  • Fixed follow and unfollow routes.
  • Updated moved field to be Box<Account>.

0.10

  • Added the ability to handle paged entities like favourites and such.(Only favourites in prerelease)
  • Added optional source and moved fields to Account.
  • Added Source struct to match with the Account.source field.
  • Added CredientialsBuilder struct for updating profile using verify_credientials.
  • Attachment now handles being sent an empty object, which is converted to None.
  • Added ombed data fields to Card.
  • Added version and urls fields to Instance.
  • Added id, muting_notifications, and domain_blocking to Relationship.
  • Added emojis, language, and pinned fields to Status
  • Added Emoji struct.
  • Added List and Mention structs(matching routes not added yet).
  • Added example that prints your profile.
  • Updated dependencies