Jonas Platte
92826df304
client: Add support for isahc as an HTTP client
2021-05-01 21:20:11 +02:00
Jonas Platte
23799cb702
client: Rename HttpClientExt methods to be much less likely to conflict with inherent methods
2021-05-01 21:20:11 +02:00
Jonas Platte
e3beb208e5
client: Use http_client::Dummy for doctests
2021-05-01 21:20:10 +02:00
Jonas Platte
a2b64df5d3
api: Require all EndpointError
s to be Send
2021-05-01 21:20:10 +02:00
Jonas Platte
cee6e2e365
client: Add send_request_as for application services
2021-05-01 21:20:10 +02:00
Jonas Platte
20dfd7c328
client: Allow request customization to be fallible
2021-05-01 21:20:10 +02:00
Jonas Platte
9bbad70592
client: Use ResponseResult type alias in more places
2021-05-01 21:20:07 +02:00
Jonas Platte
71b4463306
client: Small refactoring
2021-05-01 21:20:07 +02:00
Jonas Platte
ac78c855a8
client: Replace send_request_with_url_params with send_customized_request
2021-05-01 21:20:07 +02:00
Jonas Platte
0fa686ac1d
client: Add a dummy http client
2021-05-01 21:20:07 +02:00
Jonas Platte
db9262fa43
client: Add support for reqwest as an HTTP client
2021-05-01 21:20:07 +02:00
Jonas Platte
c7742085a8
client: Add HttpClientExt
2021-05-01 21:20:07 +02:00
Jonas Platte
e94e2e7b2b
client: Fix doctests by not compiling them
...
… and move the sync example to sync's docs.
2021-05-01 21:20:07 +02:00
Jonas Platte
c692d18797
client: Add an HttpClient abstraction and implement it for hyper::Client
2021-05-01 21:20:07 +02:00
Jonas Platte
89b191c143
client: Make Client generic over the underlying HTTP client
...
… and allow construction of a Client with a custom HTTP client, but
nothing more yet.
2021-05-01 21:20:06 +02:00
Jonas Platte
b956178c53
client: Fix crate docs
2021-05-01 21:20:06 +02:00
Jonas Platte
15c9e470c8
client: Remove session data other than the access token
2021-05-01 21:20:06 +02:00
Jonas Platte
e2be614552
client: Put client-api specific functionality behind a feature flag
2021-05-01 21:20:06 +02:00
Jonas Platte
f818b53ca1
Make conversions from Ruma types to http types generic
...
So users can select the Body type that makes the most sense for them.
2021-04-23 13:26:10 +02:00
Johannes Becker
0ca5785ead
api: Replace access_token Option with SendAccessToken enum
2021-04-23 10:56:04 +02:00
Jonas Platte
c1693569f1
api: Replace bytes::Buf by AsRef<u8> for reading
...
This allows us to switch back to serde_json::from_slice instead of
serde_json::from_reader, because the latter is significantly slower.
See https://github.com/serde-rs/json/issues/160
2021-04-13 22:12:16 +02:00
Jonas Platte
2ac020173b
api: Introduce IncomingResponse trait
2021-04-12 20:38:22 +02:00
Jonas Platte
7acd73ec9a
client: Rewrap some lines
2021-04-09 12:14:35 +02:00
Kévin Commaille
963400979b
docs: Harmonize ruma modules descriptions
2021-04-07 12:14:49 +02:00
Jonas Platte
1bf4157a89
Add favicon and logo URLs for rustdoc
2021-04-05 11:42:07 +02:00
Kévin Commaille
02e6c935b3
client-api: Move user in login::Request to identifier in login::LoginInfo::Password
2021-03-15 10:36:54 +01:00
Jonas Platte
a20c75d536
Fix import grouping issues
2021-02-25 20:55:19 +01:00
Jonas Platte
25b43d2bf9
Replace futures-util dev-dependency with tokio-stream
2021-01-07 15:11:26 +01:00
Jonas Platte
1db0ad1bea
client: Replace futures_util::stream::try_unfold with async_stream::try_stream!
2021-01-04 16:12:12 +01:00
Jonas Platte
91dd6383c5
client: Fix build error with TLS disabled
2020-12-30 19:20:31 +01:00
Jonas Platte
4ffec95b01
Update hyper / tokio
...
(and raise the minimum version for other dependencies)
2020-12-30 19:01:22 +01:00
Jonas Platte
19ae6ff347
Remove lots of Copy implementations
...
so we don't have do breaking releases once they can't be Copy anymore.
2020-12-24 02:51:08 +01:00
Jonas Platte
48348edc7e
client: Small readability improvement
2020-12-24 02:25:24 +01:00
Jonas Platte
8ea4cf4862
client: Add support for rustls as the TLS backend
2020-12-24 01:43:14 +01:00
Jonas Platte
1129520290
client: Rename tls feature to tls-native
2020-12-24 01:29:19 +01:00
Jonas Platte
e7f55ea2c6
Rewrap comments
2020-11-27 18:22:18 +01:00
Jonas Platte
d34a270919
Allow custom values for more enums
2020-11-02 00:29:47 +01:00
Jonas Platte
e1975c2035
Be more consistent about whitespace
2020-10-24 00:44:01 +02:00
Jonas Platte
50eb700571
client: Select hyper connector (TLS backend) at build time
2020-10-18 00:39:20 +02:00
Vincent Lee
d36d005b97
Change requires_authentication: bool
to authentication: AuthScheme
2020-09-18 16:28:51 +02:00
Nicholas Young
7ccdaa34d6
feature gate exhaustive types for all spec crates:
...
- ruma-appservice-api
- ruma-client-api
- ruma-events
- ruma-federation-api
2020-09-01 18:39:41 -06:00
Jonas Platte
fec07a7426
Update lots of types to the new API standards
2020-08-28 23:37:22 +02:00
Jonas Platte
e4cd59e7e5
client-api: Various API updates
2020-08-26 11:30:39 +02:00
Jonas Platte
a9757b13ae
client: Require a next_batch token for Client::sync
2020-08-18 00:25:41 +02:00
Jonas Platte
277800b980
client-api: Make sync_events request and response types non-exhaustive
2020-08-18 00:18:11 +02:00
Jonas Platte
7764671c36
Resolve FIXME
2020-08-18 00:05:35 +02:00
Jonas Platte
d6c15e5769
client-api: More borrowing
2020-08-14 01:40:35 +02:00
Jonas Platte
b4b96e44fd
Borrow things in more endpoint requests
2020-08-13 22:01:12 +02:00
Jonas Platte
4a1b6d5607
Use DeviceIdBox in ruma-events, ruma-*-api
2020-08-13 21:19:41 +02:00
Jonas Platte
f210f91611
Borrow strings and identifiers in uiaa::AuthData and dependent endpoints
2020-08-13 21:19:38 +02:00