Tim Kuehn
a58dea0ec5
Update license from dual Apache 2.0/MIT to just MIT.
2016-02-08 11:52:51 -08:00
Adam Wright
5d05ebab26
Merge branch 'client-server-modules' into 'master'
...
Move client and server code into protocol submodules
Things were getting too large in protocol.rs
See merge request !17
2016-02-09 01:03:15 +05:30
Adam Wright
d223c699c3
Merge branch 'no-mod' into 'master'
...
Refactor the macro
1. Rename `rpc!` ==> `service!`
2. Rip out the module-related parts.
The end result is that, in the common case, there will be one level of indentation less. In some cases, there will be two levels less. The module parts had no benefit over simply scoping the macro invocation within a module.
The macro was renamed because this looks bad:
```rust
rpc! {
rpc hello(s: String) -> String;
}
```
And I think `service!` better describes what is expanded.
See merge request !16
2016-02-01 13:31:49 +05:30
Tim Kuehn
e4b483304d
Use wildcard dep for now
2016-01-31 22:35:13 -08:00
Tim Kuehn
6e49bcdae9
Amend some documentation
2016-01-31 22:20:43 -08:00
Tim Kuehn
919441c9d0
Document the benchmark
2016-01-31 22:14:43 -08:00
Tim Kuehn
5d8d04d521
Use expect() instead of unwrap()
2016-01-31 22:05:04 -08:00
Tim Kuehn
a6fec6f861
Merge branch 'master' of ssh://git.adam-wright.net:10022/shaladdle/tarpc into no-mod
2016-01-31 21:37:37 -08:00
Adam Wright
361976b7de
Merge branch 'async' into 'master'
...
Add an AsyncClient generated by rpc!
Returns `Future<T>` instead of `Result<T>`. `Future<T>` has one method, `get()`, which returns a `Result<T>`.
See merge request !15
2016-02-01 11:05:46 +05:30
Tim Kuehn
59f502ef3e
Merge no-mod ==> client-server-modules
2016-01-31 21:31:02 -08:00
Tim Kuehn
55d3e00691
Merge master ==> client-server-modules.
...
Some log statements were lost in this transition.
2016-01-31 21:29:49 -08:00
Tim Kuehn
eb4b47b25b
Merge branch 'async' into no-mod
2016-01-31 21:21:50 -08:00
Tim Kuehn
fb468eb81f
Merge master into async
2016-01-31 21:21:11 -08:00
Tim Kuehn
277e707db9
Separate client and server code into protocol submodules
2016-01-29 22:40:22 -08:00
Tim Kuehn
84d402ebf5
Use a writer thread that handles all outbound requests.
2016-01-29 01:24:19 -08:00
Tim Kuehn
e711bb006c
Wrap-up:
...
1. Use a scoped thread pool instead of crossbeam. It uses crossbeam under the hood but doesn't spawn endless threads.
Hardcoded to 100 threads currently, but we can play with that.
2. Buffer IO. Seems to improve performance.
3. Shuffle around where the stream's timeouts are set. I think they should only need to be set once.
2016-01-28 01:28:56 -08:00
Tim Kuehn
b0f70cf47f
Merge branch 'async' into no-mod
2016-01-28 00:30:31 -08:00
Tim Kuehn
a285a5a993
rpc_async means we can't unwrap() the result of sending a reply.
...
Add a test for this.
2016-01-28 00:29:17 -08:00
Tim
af2d701cfd
Merge branch 'debug' into 'master'
...
Debug
See merge request !13
2016-01-28 11:51:35 +05:30
Adam Wright
707daff475
Remove superfluous log
2016-01-27 22:18:04 -08:00
Adam Wright
43cb920c56
Merge branch 'disclaimer' into 'master'
...
Add disclaimer to README
See merge request !14
2016-01-28 11:43:41 +05:30
Tim Kuehn
10d7a87382
Fix doc test
2016-01-27 21:48:20 -08:00
Tim Kuehn
48ebd3c4ed
Add documentation to the macro
2016-01-27 21:38:42 -08:00
Tim Kuehn
41c036fa0f
Simplify the macro.
...
No longer create a submodule. It's up to the user to decide how to scope the macro invocation.
The preferred method will be to invoke within a dedicated rpc module.
2016-01-27 21:11:38 -08:00
Tim Kuehn
69f4c954fa
Clean up a few tests.
2016-01-27 01:31:41 -08:00
Tim Kuehn
27cb18b309
Add async test
2016-01-27 01:23:52 -08:00
Tim Kuehn
9e6155673f
clean up benchmark
2016-01-27 01:20:17 -08:00
Tim Kuehn
6109d825f6
Add an async client
2016-01-27 01:09:01 -08:00
Tim Kuehn
54dbd74e2f
Replace planned generic serialization feature with backward-compatibility features
2016-01-26 22:03:46 -08:00
Tim Kuehn
25b7f4887e
Add disclaimer to README
2016-01-26 21:48:02 -08:00
Adam Wright
4db54932d8
Fix brokenness and add another log
2016-01-26 21:17:21 -08:00
Adam Wright
b83a72a4ce
Some logs to help with debugging
2016-01-26 21:17:21 -08:00
Tim Kuehn
489ab555c3
Merge branch 'master' of ssh://git.adam-wright.net:10022/shaladdle/tarpc
2016-01-26 21:14:20 -08:00
Tim
288ce6a94a
Merge branch 'timeout' into 'master'
...
Increase timeouts. These are too short on linux.
See merge request !12
2016-01-27 10:39:07 +05:30
Adam Wright
9c6a66d81c
Increase timeouts. These are too short on linux.
2016-01-26 21:06:49 -08:00
Tim Kuehn
d4a20bde28
Add license and description to Cargo.toml
2016-01-26 20:10:18 -08:00
Adam Wright
467a981088
Merge branch 'less-unwraps' into 'master'
...
Don't unwrap so nonchalantly
See merge request !11
2016-01-26 13:18:19 +05:30
Tim Kuehn
cd24e87672
Put back an OK unwrap
2016-01-25 23:45:43 -08:00
Tim Kuehn
89ebb4a446
Don't unwrap so nonchalantly
2016-01-25 23:38:45 -08:00
Adam Wright
06c0b41c21
Merge branch 'rustfmt-cfg' into 'master'
...
Add rustfmt.toml for reordering imports
See merge request !10
2016-01-26 12:58:33 +05:30
Tim Kuehn
1ec610b7c2
Reorder imports
2016-01-25 23:25:23 -08:00
Adam Wright
149aa98342
Merge branch 'code-refactor' into 'master'
...
Code refactor
Factor out HashMap in reader into its own struct.
Precipitated by the clippy warning about complex types, but definitely makes the code more readable, as well.
This should be merged after #8
See merge request !9
2016-01-26 12:52:16 +05:30
Tim Kuehn
d1013dd5a8
cargo fmt
2016-01-25 23:11:19 -08:00
Tim Kuehn
0966b2c823
Remove unnecessary call to HashMap::clear
2016-01-25 23:09:14 -08:00
Tim Kuehn
72ab27713d
Remove superfluous block
2016-01-25 23:01:23 -08:00
Tim Kuehn
57c058dfbc
Use try! where applicable
2016-01-25 22:50:23 -08:00
Adam Wright
bb8fc35326
Merge branch 'crossbeam' into 'master'
...
Crossbeam
Use crossbeam for server-side thread spawning, removing Arcs and superfluous trait bounds where possible.
See merge request !8
2016-01-26 12:02:57 +05:30
Tim Kuehn
61e304ddfb
Merge branch 'crossbeam' into code-refactor
2016-01-25 22:31:46 -08:00
Tim Kuehn
0d1be7400b
Make type param single char
2016-01-25 22:31:13 -08:00
Tim Kuehn
382a232dcc
Merge branch 'crossbeam' into code-refactor
2016-01-25 21:49:54 -08:00