Skip to content

Commit 756481e

Browse files
committed
Refactoring to use cargo workspace
1 parent f35061a commit 756481e

File tree

12 files changed

+67
-53
lines changed

12 files changed

+67
-53
lines changed

.gitignore

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,4 @@
22
**/*.rs.bk
33
Cargo.lock
44
.idea
5-
.DS_Store
5+
.DS_Store

Cargo.toml

Lines changed: 5 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -1,48 +1,6 @@
1-
[package]
2-
name = "eventsource-client"
3-
version = "0.8.2"
4-
description = "Client for the Server-Sent Events protocol (aka EventSource)"
5-
repository = "https://github.com/launchdarkly/rust-eventsource-client"
6-
authors = ["LaunchDarkly"]
7-
edition = "2018"
8-
license = "Apache-2.0"
9-
keywords = ["launchdarkly", "feature-flags", "feature-toggles", "eventsource", "server-sent-events"]
10-
exclude = [
11-
".circleci",
12-
".ldrelease"
13-
]
14-
15-
[dependencies]
16-
futures = "0.3.12"
17-
hyper = { version = "0.14.4", features = ["client", "http1", "tcp"] }
18-
hyper-rustls = { version = "0.22.1", optional = true }
19-
log = "0.4.6"
20-
pin-project = "1.0.5"
21-
tokio = { version = "1.2.0", features = ["time"] }
22-
serde = { version = "1.0", features = ["derive"], optional = true }
23-
serde_json = { version = "1.0.39", optional = true }
24-
actix = { version = "0.12.0", optional = true }
25-
actix-web = { version = "4.0.0-beta.10", optional = true }
26-
reqwest = { version = "0.11.6", features = ["json"], optional = true }
27-
env_logger = { version = "0.7.1", optional = true }
28-
hyper-timeout = "0.4.1"
29-
30-
[dev-dependencies]
31-
env_logger = "0.7.1"
32-
maplit = "1.0.1"
33-
simplelog = "0.5.3"
34-
tokio = { version = "1.2.0", features = ["macros", "rt-multi-thread"] }
35-
36-
[features]
37-
default = ["rustls"]
38-
rustls = ["hyper-rustls", "hyper/http2"]
39-
build-binary = ["serde", "serde_json", "actix", "actix-web", "reqwest", "env_logger"]
1+
[workspace]
402

41-
42-
[[bin]]
43-
name = "sse-test-api"
44-
required-features = ["build-binary", "rustls"]
45-
46-
[[example]]
47-
name = "tail"
48-
required-features = ["rustls"]
3+
members = [
4+
"contract-tests",
5+
"eventsource-client"
6+
]

contract-tests/Cargo.toml

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
[package]
2+
name = "contract-tests"
3+
version = "0.1.0"
4+
edition = "2018"
5+
license = "Apache-2.0"
6+
7+
[dependencies]
8+
futures = { version = "0.3.21" }
9+
serde = { version = "1.0", features = ["derive"] }
10+
eventsource-client = { path = "../eventsource-client" }
11+
serde_json = { version = "1.0.39"}
12+
actix = { version = "0.12.0"}
13+
actix-web = { version = "4.0.0-beta.10"}
14+
reqwest = { version = "0.11.6", features = ["json"] }
15+
env_logger = { version = "0.7.1" }
16+
hyper = { version = "0.14.4", features = ["client", "http1", "tcp"] }
17+
log = "0.4.6"
18+
19+
[[bin]]
20+
name = "sse-test-api"
21+

src/bin/sse-test-api/main.rs renamed to contract-tests/src/bin/sse-test-api/main.rs

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,6 @@ async fn status() -> impl Responder {
7070
web::Json(Status {
7171
capabilities: vec![
7272
"comments".to_string(),
73-
"retry".to_string(),
7473
"post".to_string(),
7574
"report".to_string(),
7675
"read-timeout".to_string(),
@@ -100,10 +99,6 @@ async fn stream(
10099
Err(_) => return HttpResponse::InternalServerError().body("Unable to retrieve handles"),
101100
};
102101

103-
*counter += 1;
104-
stream_entity.start();
105-
entities.insert(*counter, stream_entity);
106-
107102
let stream_resource = match req.url_for("stop_stream", &[counter.to_string()]) {
108103
Ok(sr) => sr,
109104
Err(_) => {
@@ -112,6 +107,10 @@ async fn stream(
112107
}
113108
};
114109

110+
*counter += 1;
111+
stream_entity.start();
112+
entities.insert(*counter, stream_entity);
113+
115114
let mut response = HttpResponse::Ok();
116115
response.insert_header(("Location", stream_resource.to_string()));
117116
response.finish()

eventsource-client/Cargo.toml

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
[package]
2+
name = "eventsource-client"
3+
version = "0.8.2"
4+
description = "Client for the Server-Sent Events protocol (aka EventSource)"
5+
repository = "https://github.com/launchdarkly/rust-eventsource-client"
6+
authors = ["LaunchDarkly"]
7+
edition = "2018"
8+
license = "Apache-2.0"
9+
keywords = ["launchdarkly", "feature-flags", "feature-toggles", "eventsource", "server-sent-events"]
10+
exclude = [
11+
".circleci",
12+
".ldrelease"
13+
]
14+
15+
[dependencies]
16+
futures = "0.3.12"
17+
hyper = { version = "0.14.4", features = ["client", "http1", "tcp"] }
18+
hyper-rustls = { version = "0.22.1", optional = true }
19+
log = "0.4.6"
20+
pin-project = "1.0.5"
21+
tokio = { version = "1.2.0", features = ["time"] }
22+
hyper-timeout = "0.4.1"
23+
24+
[dev-dependencies]
25+
env_logger = "0.7.1"
26+
maplit = "1.0.1"
27+
simplelog = "0.5.3"
28+
tokio = { version = "1.2.0", features = ["macros", "rt-multi-thread"] }
29+
30+
[features]
31+
default = ["rustls"]
32+
rustls = ["hyper-rustls", "hyper/http2"]
33+
34+
[[example]]
35+
name = "tail"
36+
required-features = ["rustls"]
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.

0 commit comments

Comments
 (0)