Commit Graph
143 Commits
Author SHA1 Message Date
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
2018-08-30 07:28:37 -04:00
Paul Woolcock 42d3a935c8 We don't need to repeatedly recreate the doc 2018-08-29 21:58:58 -04:00
Paul Woolcock a05a67f3cb Update to v0.14 2018-08-29 12:28:36 -04:00
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
2018-08-29 12:20:42 -04:00
Paul Woolcock 2a6e922da7 feat(macros): add compile tests to the doc comments 2018-08-29 12:20:42 -04:00
Paul Woolcock 46871da4c1 feat(helpers): add json helper module 2018-08-29 09:10:46 -04:00
Paul Woolcock 1ec37e2370 rustfmt pass 2018-08-28 12:00:14 -04:00
Paul Woolcock b4a43dc783 Add some more tests 2018-08-28 12:00:14 -04:00
Paul Woolcock e57c400c46 Add tests for toml helpers 2018-08-28 07:25:15 -04:00
Paul Woolcock 5b24922d9e Add some more lints, and fix the compile errors they generate 2018-08-28 06:14:56 -04:00
Paul Woolcock 4e5a2f5c51 Update to v0.13.0 2018-08-27 20:05:11 -04:00
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`.
2018-08-27 19:28:33 -04:00
Paul Woolcock dc6d2738e1 StatusBuilder::new takes anything that is Display 2018-08-27 14:12:42 -04:00
Paul Woolcock e7005b0b6b Users shouldn't have to parameterize their code unless they need to for tests 2018-08-27 13:23:21 -04:00
Paul Woolcock f8f8054c5c toml::to_file needs to be able to create the save file 2018-08-27 12:09:03 -04:00
Paul Woolcock 1057e58343 There's no reason for Registration::complete to take an owned string 2018-08-27 11:27:19 -04:00
Paul Woolcock 009798d17f Clean up status_builder a bit, and add some tests 2018-08-27 10:31:19 -04:00
Paul Woolcock 6cee086d79 Add max_toot_chars to the Instance model
Closes #22
2018-08-27 07:31:36 -04:00
Paul Woolcock 0913926702 Add test for entities::Account 2018-08-27 06:58:37 -04:00
Paul Woolcock 4ff27dd049 Credientials -> Credentials 2018-08-27 05:29:35 -04:00
Paul Woolcock aaa0edc98f Add a test for the default_redirect_uri 2018-08-26 08:41:38 -04:00
Paul Woolcock dc70205757 rustfmt 2018-08-26 08:41:19 -04:00
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`
2018-08-26 08:41:19 -04:00
Paul Woolcock 45f4cbbbfe Move the toml helpers to elefren::helpers::toml 2018-08-25 09:13:49 -04:00
Paul Woolcock c5788b8bd5 rustfmt pass 2018-08-25 09:13:34 -04:00
Paul Woolcock 1436c28e42 duplicate the AppBuilder api in Registration
Closes #13
2018-08-25 09:13:34 -04:00
Paul Woolcock 043d3753e1 rustfmt pass 2018-08-24 11:55:07 -04:00
Paul Woolcock 19ea7c7482 Add some tests for the Error::from impls 2018-08-24 11:45:54 -04:00
Paul Woolcock 35a603f193 These are not always present, make them Option<>s 2018-08-24 05:08:52 -04:00
Paul Woolcock 3330a26760 rustfmt pass 2018-08-23 21:46:31 -04:00
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
2018-08-23 21:46:31 -04:00
Paul Woolcock 384d3d2c41 add toml helpers to data.rs 2018-08-23 13:27:32 -04:00
Paul Woolcock ddcef1940a Move Data struct to it's own module 2018-08-23 13:27:32 -04:00
Paul Woolcock 8636e690c3 rustfmt pass 2018-08-23 10:35:26 -04:00
Paul Woolcock 0f5e295ea9 Revamp registration & auth process 2018-08-23 07:59:31 -04:00
Paul Woolcock 3f7841da02 Add necessary error variant 2018-08-23 07:37:58 -04:00
Paul Woolcock e7afdf7b59 Add MastodonBuilder and use in From<Data> impl 2018-08-23 07:37:58 -04:00
Paul Woolcock 5eca9748a3 Reduce the visibility of ItemsIter and add docs to items_iter 2018-08-22 16:09:16 -04:00
Paul Woolcock 49eee2313f Make the Meta fields optional
using `deserialize_with` causes an error if the `"meta"` key is missing
completely, which is not very useful. This isn't ideal, but it will make
it so all the various states that "meta" can be in will deser correctly
2018-08-22 15:18:58 -04:00
Paul Woolcock 2e8ee7e840 This field can be true/false or "true"/"false" 2018-08-22 14:22:27 -04:00
Paul Woolcock e5175f09fe make apps::prelude and use the preludes in the tests 2018-08-22 13:53:54 -04:00
Paul Woolcock 63d09c1113 Clean up src/lib.rs a bit more 2018-08-22 13:19:41 -04:00
Paul Woolcock 7f1303b5f6 Set a default redirect_uri if none is provided 2018-08-22 11:04:48 -04:00
Paul Woolcock cc083e335e Change Mastodon::from_data to just Mastodon::from 2018-08-22 06:48:56 -04:00
Paul Woolcock 1847160369 No reason to impl Deser for both the ApiError and Error types 2018-08-22 00:31:51 -04:00
Paul Woolcock 454d005517 Move From<> impls too 2018-08-22 00:31:51 -04:00
Paul Woolcock 3f5c1db430 Breakout errors into their own module 2018-08-22 00:31:51 -04:00
Paul Woolcock a9b6b52890 Change mammut references to elefren 2018-08-21 17:01:05 -04:00
Paul Woolcock 22b4b04738 Adds a MastodonClient trait
This is useful for user code, which can use the trait to add a layer of
indirection to their code, allowing them to swap out implementations for
testing
2018-08-21 16:29:57 -04:00
Paul WoolcockandGitHub 6c37ecb1e1 Merge pull request #2 from pwoolcoc/fix-url-error
Fix url error
2018-08-21 16:28:33 -04:00