Lucio Franco
7b48479bd2
util: Remove dev dep on tower ( #401 )
...
* util: Remove dev dep on tower
* Fix rustc bug
* enable call-all by default
2019-12-19 18:17:21 -05:00
Lucio Franco
fe7919b1a4
Use `Into<Error>` for all Services ( #400 )
2019-12-19 17:30:23 -05:00
Lucio Franco
86eef82d2f
Remove default features for futures dep ( #399 )
...
* Remove default features for futures dep
* Add missing alloc feature
2019-12-19 14:20:41 -05:00
Lucio Franco
1e87d7ca8b
Bump crates and changelog dates ( #397 )
2019-12-19 13:44:40 -05:00
Sean McArthur
2dc9a72bea
tower-util: remove dead code
2019-12-11 13:13:07 -08:00
Sean McArthur
1863304331
move ServiceExt to tower-util crate
2019-12-11 12:13:51 -08:00
Sean McArthur
f130e5e113
tower-util: reduce dependencies, make call-all optional
2019-12-11 11:25:13 -08:00
Juan Alvarez
1843416dfe
remove service, make and layer path deps ( #382 )
2019-12-06 11:59:56 -05:00
Lucio Franco
423ecee7e9
Remove unused deps ( #381 )
2019-12-05 23:42:01 -05:00
Lucio Franco
e2f1a49cf3
Update the rest of the crates and upgrade ready cache to `std::f… ( #379 )
...
* Update hedge, filter, load, load-shed, and more
* Update ready cache
* Prepare release for ready-cache
* fix merge
* Update balance
* Prepare balance release
2019-12-05 14:21:47 -05:00
Lucio Franco
0d2a3778ad
Update `tower` and `tower-util` and prep for release ( #378 )
...
* Update tower and tower-util
* Prepare them for release
* fmt
* Get tower tests working
2019-12-04 22:48:43 -05:00
David Barsky
45e311c2f2
layer: Prepare 0.3.0 Release ( #372 )
...
* layer: prepare 0.3.0 release
* fmt
* Update tower-layer/src/lib.rs
2019-11-29 16:09:47 -05:00
Jon Gjengset
2653f70884
Bumps for 0.3.0-alpha.2 ( #355 )
...
* Bump all to futures-* alpha.19
* Prepare for alpha.2 release
* Make tower-service also a path dep
* Use new tokio alpha
2019-09-30 18:56:26 -04:00
Taiki Endo
03dc7069aa
Update pin-project to 0.4 ( #350 )
2019-09-30 14:58:27 -04:00
Jon Gjengset
6baf381879
Consistently apply deny/warn rules ( #352 )
...
This makes all tower subcrates have the following lints as warn (rather
than allow): `missing_docs`, `rust_2018_idioms`, `unreachable_pub`, and
`missing_debug_implementations`. In addition, it consistently applies
`deny(warning)` *only* under CI so that deprecations and macro changes in minor
version bumps in dependencies will never cause `tower` crates to stop
compiling, and so that tests can be run even if not all warnings have been
dealt with. See also https://github.com/rust-unofficial/patterns/blob/master/anti_patterns/deny-warnings.md
Note that `tower-reconnect` has the `missing_docs` lint disabled for now
since it contained _no_ documentation previously. Also note that this
patch does not add documentation to the various `new` methods, as they
are considered self-explanatory. They are instead marked as
`#[allow(missing_docs)]`.
2019-09-23 17:28:14 -04:00
Sean McArthur
52075f3c6f
Update tower-make to tokio-io v0.2.0-alpha.5
2019-09-20 15:09:09 -07:00
Lucio Franco
206f3d9941
Prepare `tower-buffer` 0.3.0-alpha.1a release ( #343 )
...
Signed-off-by: Lucio Franco <luciofranco14@gmail.com>
2019-09-13 16:36:35 -04:00
Lucio Franco
589eb44377
util: Add date to changelog
2019-09-11 16:02:34 -04:00
Jon Gjengset
395889c763
Make Ready only take Service by reference ( #340 )
...
Rather than consuming `self` and returning `(Self, _)`. This did mean
that a few crates that depended on `Ready` to own the `Service` and
provide it once it was ready had to change to call `poll_ready`
directly. Which in turn meant adding in some PhantomData<Request> so
that the impl blocks wouldn't be under-constrainted. Take, for example:
```
impl<K, S: Service<Req>, Req> Future for UnreadyService<K, S>
```
would fail to compile with
```
error[E0207]: the type parameter `Req` is not constrained by the impl trait, self type, or predicates
```
2019-09-11 15:49:51 -04:00
Lucio Franco
fb124a14f0
Pin all the alpha based dependencies ( #339 )
...
Signed-off-by: Lucio Franco <luciofranco14@gmail.com>
2019-09-11 13:57:27 -04:00
Taiki Endo
921325ac2d
Pin the version of pin-project
2019-09-11 10:00:27 -07:00
Taiki Endo
65e07064db
Update pin-project to 0.4.0-alpha.11
2019-09-11 10:00:27 -07:00
Jon Gjengset
0802ca2bce
Update tower-util and tower to std::future ( #330 )
...
This bumps tower-util and tower to 0.3.0-alpha.1
2019-09-10 14:51:07 -04:00
Stan Bondi
ae611db665
Update `service_fn` to `std::future::Future` ( #318 )
...
This small PR ports service_fn to `std::future`.
2019-09-03 10:12:33 -04:00
Lucio Franco
652137aaa3
Update MakeService and MakeConnection ( #313 )
...
* Update MakeService and MakeConnection
* Create tower-make crate
* Remove Makers from tower-util
2019-08-27 12:39:14 -04:00
Gabe Jackson
b7faef31e9
docs: Minor typo + wording fixes (tower-util) ( #309 )
2019-08-19 10:13:56 -04:00
Sean McArthur
b9c2fea0fc
Greatly improve Debug output of ServiceBuilder ( #280 )
2019-05-09 08:44:40 -07:00
Carl Lerche
716bafd922
chore: fix small errors in Cargo files
2019-04-26 22:31:07 -07:00
Carl Lerche
14f4259518
Prepare release ( #273 )
...
The following crates are to be released:
- tower
- tower-buffer
- tower-discover
- tower-layer
- tower-limit
- tower-load-shed
- tower-retry
- tower-service
- tower-test
- tower-timeout
- tower-util
2019-04-26 21:31:25 -07:00
Sean McArthur
27acbe600b
impl Clone for Stack
2019-04-22 13:34:38 -07:00
Sean McArthur
5ec2979e83
impl Clone and Debug for Either
2019-04-22 13:34:38 -07:00
Carl Lerche
07baf63048
Remove bounds of `Service` from `Layer`
2019-04-22 13:34:38 -07:00
Sean McArthur
979c139912
MakeConnection: rename Request generic to Target ( #250 )
2019-04-10 15:11:11 -07:00
Sean McArthur
2a3a577929
change ServiceFn to use FnMut instead of Fn ( #249 )
2019-04-10 13:37:00 -07:00
Sean McArthur
d1c891d1ba
Promote service_fn to tower crate ( #248 )
2019-04-10 13:17:16 -07:00
Sean McArthur
1012b20737
util: derive Clone for ServiceFn ( #245 )
2019-04-10 12:02:15 -07:00
Carl Lerche
0f58e50c3d
Rename `Chain` -> `Stack` ( #239 )
...
Reduce metaphors.
Fixes #233
2019-04-09 13:09:44 -07:00
David Barsky
17860191d7
Move Tower to 2018 Edition ( #238 )
2019-04-08 20:11:09 -07:00
Carl Lerche
ef6d203b47
Create `tower-test` and include tower-mock. ( #237 )
...
tower-mock is deleted in favor of having a single test crate. This crate
also includes a new macro: `assert_request_eq!`.
2019-04-07 20:42:18 -07:00
Carl Lerche
83be955afe
Rename OptionService -> Optional ( #219 )
...
Other service implementations do not have the Service suffix.
2019-03-29 19:17:11 -07:00
Carl Lerche
117018f319
Rename `EitherService` -> `Either` ( #218 )
2019-03-29 19:17:02 -07:00
Carl Lerche
019129829c
Move layer::{LayerExt, Chain, Identity} ( #216 )
...
- `tower-layer` util types are now in `tower-util`.
- `LayerExt` is now in `tower`.
This sets the stage for adding layer specific extension fns.
2019-03-29 14:28:06 -07:00
Carl Lerche
3a407c2775
Move misc types ( #213 )
2019-03-27 19:56:44 -07:00
Carl Lerche
f1bb22a296
util: rename tower-service-util -> tower-util ( #212 )
2019-03-27 16:34:56 -07:00
Carl Lerche
92f4a0cb72
Rename tower-util -> tower ( #197 )
2019-03-15 10:53:19 -07:00
Carl Lerche
fd54e47b56
rm tower-util/src/service_fn.rs ( #196 )
2019-03-14 19:51:50 -07:00
Carl Lerche
acda5a75b9
Initial introduction of tower-service-util ( #193 )
2019-03-14 11:27:36 -07:00
Jon Gjengset
421fbf0006
Add CallAll combinator. ( #187 )
...
Add the `CallAll` combinator, which provides:
```rust
Stream<Item = Request> + Service<Request> => Stream<Item = Response>
```
That is, given a `Stream` of requests and a `Service` that can accept
those requests, it produces a `Stream` of the corresponding responses.
2019-03-08 09:19:38 -08:00
Carl Lerche
bdcce9677b
depend on tower-service from crates.io ( #186 )
2019-03-06 13:38:58 -08:00
Sean McArthur
0dc8281ef6
ext: add ServiceExt::oneshot to call the service when it is ready ( #164 )
2019-02-22 16:15:42 -08:00