Paul Woolcock
817e18fc16
Add the "Dismiss Notification" endpoint
5 years ago
Paul Woolcock
97cadbfd3c
log API responses
6 years ago
Paul Woolcock
174a17109b
Changes the StatusBuilder to be an...actual...builder
...
This will enforce the invariant that statuses have to have either status
text or a media_id
6 years ago
Paul Woolcock
6450ad3370
Block and Unblock should be `post` calls
6 years ago
Paul Woolcock
26a4754b2e
Fix block, unblock, mute and unmute
...
These 4 API calls should return a Relationship, not an Account
6 years ago
Paul Woolcock
45a95e5048
add the beginning of an unauthenticated client
6 years ago
Paul Woolcock
7786a83a14
Add `min_id` to pagination params
...
also switches to using serde_qs instead of manually serializing the
query string
6 years ago
Paul Woolcock
f204ee190b
Add some docs for streaming
6 years ago
Paul Woolcock
eb1a676a98
remove dbg logs
6 years ago
Paul Woolcock
e2c11f48d6
Initial commit of streaming support
6 years ago
Paul Woolcock
b7b8379e10
Add built-in support for deserializing Data from the env
6 years ago
Paul Woolcock
4426bd6478
rustfmt pass
6 years ago
Paul Woolcock
6f63fef0b2
follow returns a `Relationship`, not an `Account`
6 years ago
Paul Woolcock
4dd40422b3
feat(api): shortcut methods for following & followers
6 years ago
Paul Woolcock
d524a64bfd
Fix the error used here
...
The `MastodonBuilder` is going to be changed to be `pub` soon, so let's
fix this redundant error variant now
6 years ago
Paul Woolcock
9a080583f0
feature(api): Change `u64` ids to `&str`
...
Breaking change: All the entities with an `id` property have String ids, but all
endpoints that take ids used `u64` ids. This changes that so that all
the methods that take ids, take them as `&str`.
6 years ago
Paul Woolcock
2d8958e0d9
Update code to be compatible with reqwest 0.9
6 years ago
Paul Woolcock
1f0ba1846c
Add the "endorsements" endpoints from mastodon 2.5.0
...
Closes #74
6 years ago
Paul Woolcock
7de1bdc009
Implements the methods for the follow suggestions API
...
Closes #72
6 years ago
Paul Woolcock
7d164cb8db
Keyword/filtering API
...
This adds the 5 methods for the mastodon API that deal with keyword
filtering:
GET /api/v1/filters
POST /api/v1/filters
GET /api/v1/filters/:id
PUT /api/v1/filters/:id
DELETE /api/v1/filters/:id
Closes #71
6 years ago
Paul Woolcock
690b029d99
Add methods & data structures for all the "push" endpoints
...
Closes #53
6 years ago
Paul Woolcock
28192e1188
Implement a method for `GET /api/v2/search`
6 years ago
Paul Woolcock
67242c8f4b
Change `search_accounts` to use a macro
6 years ago
Paul Woolcock
34e2c00866
change `POST /search` to `GET /search`
6 years ago
Paul Woolcock
20a9c69adc
POST /.../unfollow returns a Relationship, not an Account
6 years ago
Paul Woolcock
788177f5e8
Add tests to requests/statuses
...
Need to figure out a better solution for that to_querystring test, it'd
be nice to have something generate every possible permutation of those
builder methods
6 years ago
Paul Woolcock
989d9a5965
feat(status): Add language code to status builder
...
Closes #55
6 years ago
Paul Woolcock
a57c7e2f91
feat(update_credentials): Implement UpdateCredsRequest
...
This will now allow a user to actually call the
MastodonClient::update_credentials method
6 years ago
Paul Woolcock
6befd79935
use JSON instead of a mulitpart form
6 years ago
Paul Woolcock
af806b7856
move Scopes to their own module
6 years ago
Paul Woolcock
57cc44368c
Document "everything"
...
This is a good start but many things need to be documented better, but
this will at least allow us to turn on #[deny(missing_docs)]
6 years ago
Paul Woolcock
9e78d5ed46
Start adding docs to MastodonClient trait
...
Also moves it to it's own module, to clean up src/lib.rs a bit
6 years ago
Paul Woolcock
c66c305df5
fix(client): fix broken paged_routes_with_id methods
...
BREAKING CHANGE: technically this breaks the API, but these methods
wouldn't have worked this way anyway, so I don't feel bad about it
Closes #42
6 years ago
Paul Woolcock
46871da4c1
feat(helpers): add json helper module
6 years ago
Paul Woolcock
e57c400c46
Add tests for toml helpers
6 years ago
Paul Woolcock
5b24922d9e
Add some more lints, and fix the compile errors they generate
6 years ago
Paul Woolcock
0df3f9fa2b
Rework the `Registration` and `App` APIs
...
This puts `register` back to the way it was, and changes the "new"
`register` to `build`.
6 years ago
Paul Woolcock
1057e58343
There's no reason for Registration::complete to take an owned string
6 years ago
Paul Woolcock
0913926702
Add test for entities::Account
6 years ago
Paul Woolcock
4ff27dd049
Credientials -> Credentials
6 years ago
Paul Woolcock
dc70205757
rustfmt
6 years ago
Paul Woolcock
a407249fa5
Remove `elefren::apps::prelude`
...
Since we don't need `App` in a prelude anymore, just move `Registration`
and `Scopes` to the main prelude and get rid of `elefren::apps::prelude`
6 years ago
Paul Woolcock
45f4cbbbfe
Move the `toml` helpers to `elefren::helpers::toml`
6 years ago
Paul Woolcock
c5788b8bd5
rustfmt pass
6 years ago
Paul Woolcock
1436c28e42
duplicate the AppBuilder api in Registration
...
Closes #13
6 years ago
Paul Woolcock
3330a26760
rustfmt pass
6 years ago
Paul Woolcock
49a2237803
Introduce HttpSend trait for converting `Request` -> `Response`
...
Parameterize everything that involves sending HTTP requests with the `H:
HttpSend` bound. This will allow us to swap out `HttpSend`
implementations when necessary, in order to better test our code
6 years ago
Paul Woolcock
384d3d2c41
add toml helpers to data.rs
6 years ago
Paul Woolcock
ddcef1940a
Move `Data` struct to it's own module
6 years ago
Paul Woolcock
8636e690c3
rustfmt pass
6 years ago