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
2018-09-05 05:25:10 -04:00
Paul Woolcock
0ad1e3741c
Allow the user to update their profile metadata fields
...
Closes #54
2018-09-04 16:20:00 -04:00
Paul Woolcock
375e4af286
Add a test for UpdateCredentials::build
2018-09-01 10:30:00 -04:00
Paul Woolcock
989d9a5965
feat(status): Add language code to status builder
...
Closes #55
2018-09-01 09:22:11 -04:00
Paul Woolcock
a57c7e2f91
feat(update_credentials): Implement UpdateCredsRequest
...
This will now allow a user to actually call the
MastodonClient::update_credentials method
2018-09-01 07:33:12 -04:00
Paul Woolcock
6befd79935
use JSON instead of a mulitpart form
2018-09-01 07:33:12 -04:00
Paul Woolcock
8db3d18219
Make sure scopes are percent-encoded when making the URL
2018-08-31 08:19:35 -04:00
Paul Woolcock
034bd4e6d1
Add a helper for completing authentication via the command line
2018-08-31 07:26:03 -04:00
Paul Woolcock
e284894d40
feat(scopes): Implement granular OAuth scopes
...
BREAKING CHANGE: Applications that use the `Scopes` data structure will
have minor changes to make
Closes #44
2018-08-30 19:12:16 -04:00
Paul Woolcock
af806b7856
move Scopes to their own module
2018-08-30 19:12:16 -04:00
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)]
2018-08-30 16:22:46 -04:00
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
c4a92cb17a
Add --features json to the test matrix
2018-08-30 06:44:04 -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
1b54c20060
Update CHANGELOG for 0.13
2018-08-27 20:05:02 -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
39e5aacfb5
Move this to the before_script phase
...
The build cache gets stored after the `script` phase, but before the
`after_success`/`after_failure` phase, so the built cargo-tarpaulin
wasn't getting cached
2018-08-27 19:27:57 -04:00
Paul Woolcock
67ab7ee59a
try caching $HOME/.cargo
...
try to see if we can avoid building cargo-tarpaulin every time
2018-08-27 16:16:01 -04:00
Paul Woolcock
5df4f8873c
This isn't necessary
2018-08-27 14:48:24 -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
ade7b16382
add OSX builds
2018-08-26 22:30:46 -04:00
Paul Woolcock
465d449dac
If we don't have feature = "toml" set, don't run rust-skeptic
2018-08-26 22:30:46 -04:00
Paul Woolcock
49c89f05a0
Don't cache ./target, causes havoc with rust-skeptic
2018-08-26 22:30:46 -04:00
Paul Woolcock
fa99b2b8ff
only do cargo-tarpaulin on a single build
2018-08-26 22:30:46 -04:00
Paul Woolcock
98718ac4b8
just run cargo test
2018-08-26 22:30:46 -04:00
Paul Woolcock
a05f4ecb9b
trying out some improvements to hopefully speed up the travis build
2018-08-26 22:30:46 -04:00
Paul Woolcock
37d9a38aba
expand the test matrix
2018-08-26 22:30:29 -04:00
Paul Woolcock
18aa21522a
Add appveyor.yml
2018-08-26 22:30:29 -04:00
Paul Woolcock
038878c328
add appveyor badge
2018-08-26 18:52:47 -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
272b17190f
add a Makefile to collect commands in
...
Right now it just adds the `make book` command
2018-08-25 13:55:29 -04:00
Paul Woolcock
55793f22e3
rename book -> guide
2018-08-25 13:42:12 -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
ae4d5dffe5
try to make travis happy
2018-08-24 15:28:48 -04:00
Paul Woolcock
80391aebc9
Make sure our README example(s) always compile
2018-08-24 15:28:48 -04:00
Paul Woolcock
0d8522fe76
small readme updates
2018-08-24 12:36:31 -04:00
Paul Woolcock
ea1f600c46
add service=github to the coveralls badge
2018-08-24 12:13:04 -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
5017104e63
Make the examples no-ops when toml is not enabled
2018-08-24 11:45:40 -04:00
Paul Woolcock and GitHub
932161c346
Update .travis.yml
...
don't send emails on a successful build
2018-08-24 09:09:34 -04:00
Paul Woolcock
3083ffd9ff
Make sure tarpaulin builds with the right features
2018-08-24 07:18:22 -04:00
Paul Woolcock
3a09700b97
Add badge for code coverage
2018-08-24 07:18:22 -04:00
Paul Woolcock
c23559c4fd
use cargo-tarpaulin to compute code coverage
2018-08-24 05:44:21 -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
6c2ebc6136
Update version in install instructions
2018-08-23 21:42:05 -04:00
Paul Woolcock and GitHub
fb96f1be3a
Merge pull request #4 from pwoolcoc/fix-crates.io-categories
...
Update category slugs
2018-08-23 21:29:06 -04:00
Paul Woolcock
4c394befa2
Update category slugs
2018-08-23 19:55:58 -04:00
Paul Woolcock
58d08ee70f
small README formatting changes
2018-08-23 15:41:45 -04:00
Paul Woolcock
3863da24b7
Update CHANGELOG
2018-08-23 14:47:57 -04:00
Paul Woolcock
d54162d0b9
fix travis.yml
2018-08-23 14:47:46 -04:00
Paul Woolcock
6ddea87765
Use the new toml helpers instead of the toml crate
2018-08-23 14:47:46 -04:00
Paul Woolcock
384d3d2c41
add toml helpers to data.rs
2018-08-23 13:27:32 -04:00
Paul Woolcock
ce69407e38
Add toml as an optional dep/feature
...
also expand the test matrix so we test with
* zero features
* each feature individually
* all features together
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
25999bf423
Initialize book
2018-08-23 11:16:10 -04:00
Paul Woolcock
ab82cf9124
Add Installation and Usage section to README
2018-08-23 10:59:23 -04:00
Paul Woolcock
d710f4ab49
Fix .travis.yml bash command
2018-08-23 10:35:26 -04:00
Paul Woolcock
7ea0f67ccf
only do rustfmt on nightly
2018-08-23 10:35:26 -04:00
Paul Woolcock
fe1aafff12
all should be --all
2018-08-23 10:35:26 -04:00
Paul Woolcock
8636e690c3
rustfmt pass
2018-08-23 10:35:26 -04:00
Paul Woolcock
d617d74fa4
Add rustfmt.toml and update travis to check formatting
2018-08-23 10:35:26 -04:00
Paul Woolcock
7462d00c21
Add build badge to README
2018-08-23 09:24:55 -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 and GitHub
473205a5f2
Merge pull request #4 from pwoolcoc/mammut-to-elefren
...
Change mammut references to elefren
2018-08-22 00:31:19 -04:00
Paul Woolcock
a9b6b52890
Change mammut references to elefren
2018-08-21 17:01:05 -04:00