- All functions which interact with the API are now async. As a part of this
change, the streaming API now returns a
Stream
instead of anIterator
. - The crate has been renamed to
mastodon-async
. - Search API v1 has been removed.
- Structured logging
- Streaming API was incomplete, it now works
- Change
Registered::complete
to take the receiver by reference
- Add
Registered::into_parts
andRegistered::from_parts
- Add
FromStr
implementation forScopes
- Fixes
follow
to return aRelationship
6f63fef
- Add
follows_me
andfollowed_by_me
shortcut methods 4dd4042
This release upgrades reqwest, our http client dependency, from 0.8.8 -> 0.9.0
This is a bugfix release
This is a bugfix release
This release adds support for all new API endpoints introduced in Mastodon 2.4.* and 2.5.0
- scopes: Implement granular OAuth scopes (e284894d, closes #44)
- helpers: cli::authenticate (034bd4e6)
- client: Implement client.update_credentials (a57c7e2f)
- status: Add language code to status builder (989d9a59, closes #55)
- client: Implement profile metadata update (0ad1e374, closes #54)
- search: Implement
GET /api/v2/search
(28192e11) - client: Implement push notifications endpoints (690b029d, closes #53)
- client: Add
replies_count
property toStatus
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)
- client: change return value of client.unfollow to
Relationship
(20a9c69a) - client: change
POST /search
toGET /search
(34e2c008)
- helpers: add json helper module (46871da4)
-
Registration
now duplicates theAppBuilder
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 supersede anything app config set on theRegistration
object itself.In future releases, this will become a hard error.
-
elefren::status_builder::StatusBuilder::new()
now takes anything that implementsDisplay
instead of specifically an ownedString
- The
elefren::data::toml
module has been moved toelefren::helpers::toml
- Because of the changes to
Registration
, theelefren::apps::prelude
module has been removed. The types that are still necessary from that prelude have been moved toelefren::prelude
, butelefren::apps::App
will have to be imported separately elefren::entities::account::CredientialsBuilder
has been moved toelefren::entities::account::CredentialsBuilder
(note the spelling difference)Registered::complete
now takes a&str
instead of aString
elefren::entities::instance::Instance
now has themax_toot_chars
property, for use with the Pleroma and Glitch-soc APIs
Page::items_iter
added, abstracts over "next_page" logicelefen::prelude
andelefen::apps::prelude
modules added to more easily import all necessary types- Helpers added to allow serialization & deseriasization of
Data
types totoml
- Combined all parameters to
mastodon.statuses
(exceptid
) 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 toMastodon::from(Data)
AppBuilder
was changed, useApp::builder()
insteadRegistration
was broken up to enable better registration flow
- All API methods now have doc comments
- All docs were updated for the new breaking changes
- Login to pleroma instances was fixed
- Added more examples to
examples
directory. - Fixed
follow
andunfollow
routes. - Updated
moved
field to beBox<Account>
.
- Added the ability to handle paged entities like favourites and such.(Only favourites in prerelease)
- Added optional
source
andmoved
fields toAccount
. - Added
Source
struct to match with theAccount.source
field. - Added
CredientialsBuilder
struct for updating profile usingverify_credientials
. - Attachment now handles being sent an empty object, which is converted
to
None
. - Added ombed data fields to
Card
. - Added
version
andurls
fields toInstance
. - Added
id
,muting_notifications
, anddomain_blocking
toRelationship
. - Added
emojis
,language
, andpinned
fields toStatus
- Added
Emoji
struct. - Added
List
andMention
structs(matching routes not added yet). - Added example that prints your profile.
- Updated dependencies