Skip to content

Commit d108713

Browse files
committed
Updating serde and diesel to macros 1.1, bumping nightly.
Closes #103
1 parent 18b4d11 commit d108713

File tree

11 files changed

+326
-243
lines changed

11 files changed

+326
-243
lines changed

Cargo.lock

Lines changed: 257 additions & 183 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -4,35 +4,34 @@ version = "0.1.0"
44
authors = ["Adam Perry <[email protected]>"]
55

66
[dependencies]
7-
chrono = {version = "0.2.21", features = ["serde"] }
7+
chrono = {version = "0.2.25", features = ["serde"] }
88
clap = "2.2.5"
99
crossbeam = "0.2.9"
1010
dotenv = "0.8.0"
11-
dotenv_macros = "0.8.0"
1211
env_logger = "0.3.3"
1312
hyper = "0.8.0"
1413
iron = "0.3.0"
1514
lazy_static = "0.2.0"
1615
log = "0.3.6"
1716
mount = "0.1.0"
1817
r2d2 = "0.7.0"
19-
r2d2-diesel = "0.6.0"
18+
r2d2-diesel = "0.8"
2019
regex = "0.1"
2120
router = "0.1.1"
22-
serde = "0.7.0"
23-
serde_json = "0.7.0"
24-
serde_macros = "0.7.0"
21+
serde = "0.8"
22+
serde_derive = "0.8"
23+
serde_json = "0.8"
2524
urlencoded = "0.3.0"
2625

2726
[dependencies.diesel]
28-
version = "0.6.2"
27+
version = "0.8"
2928
default-features = false
3029
features = ["postgres", "chrono", "large-tables"]
3130

3231
[dependencies.diesel_codegen]
33-
version = "0.6.2"
32+
version = "0.8"
3433
default-features = false
35-
features = ["nightly", "postgres"]
34+
features = ["dotenv", "postgres"]
3635

3736
[profile.release]
3837
debug = false

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ Not guaranteed to be updated regularly, but last time I remembered to update thi
7979

8080
```bash
8181
$ rustc --version
82-
rustc 1.11.0-nightly (bb4a79b08 2016-06-15)
82+
rustc 1.14.0-nightly (16eeeac78 2016-10-18)
8383
```
8484

8585
### Environment variables
@@ -135,7 +135,7 @@ The launch the scraping daemon, make sure the interval environment variables are
135135

136136
Setup a postgres database and user on a server with `dpkg` (recent Ubuntu is what's tested), and install nginx.
137137

138-
Run `build.sh` on that with a compatible nightly installed (2016-05-24 right now). This will create a `rust-dashboard.deb` in the repo root. Install with `dpkg -i rust-dashboard.deb`, configure `/etc/rust-dashboard/env` from the example file there, and start the services:
138+
Run `build.sh` on that with a compatible nightly installed (2016-10-18 right now). This will create a `rust-dashboard.deb` in the repo root. Install with `dpkg -i rust-dashboard.deb`, configure `/etc/rust-dashboard/env` from the example file there, and start the services:
139139

140140
```bash
141141
sudo systemctl enable rust-dashboard-scraper

Vagrantfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ Vagrant.configure("2") do |config|
2626
path: "vagrant/rust.sh",
2727
keep_color: true,
2828
privileged: false,
29-
env: { 'RUST_NIGHTLY_VERSION' => 'nightly-2016-06-15', },)
29+
env: { 'RUST_NIGHTLY_VERSION' => 'nightly-2016-10-19', },)
3030

3131
config.vm.network :forwarded_port, guest: 4200, host: 4040
3232
config.vm.network :forwarded_port, guest: 5432, host: 4050

src/domain/buildbot.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@ use chrono::NaiveDateTime;
22
use diesel::prelude::*;
33
use super::schema::*;
44

5-
#[derive(Clone, Debug, Deserialize, Eq, Ord, PartialEq, PartialOrd, Queryable, Serialize)]
6-
#[insertable_into(build)]
7-
#[changeset_for(build)]
5+
#[derive(AsChangeset, Clone, Debug, Deserialize, Eq, Insertable,
6+
Ord, PartialEq, PartialOrd, Queryable, Serialize)]
7+
#[table_name="build"]
88
pub struct Build {
99
pub number: i32,
1010
pub builder_name: String,

src/domain/github.rs

Lines changed: 27 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,22 @@
11
// Copyright 2016 Adam Perry. Dual-licensed MIT and Apache 2.0 (see LICENSE files for details).
22

33
use chrono::NaiveDateTime;
4-
use diesel::{ExpressionMethods, FilterDsl, LoadDsl, Queryable, SaveChangesDsl, Table};
4+
use diesel::ExpressionMethods;
55

66
use super::schema::*;
77

8-
#[derive(Clone, Debug, Deserialize, Eq, Ord, PartialEq, PartialOrd, Queryable, Serialize)]
9-
#[insertable_into(githubuser)]
10-
#[changeset_for(githubuser)]
8+
#[derive(AsChangeset, Clone, Debug, Deserialize, Eq, Insertable,
9+
Ord, PartialEq, PartialOrd, Queryable, Serialize)]
10+
#[table_name="githubuser"]
1111
pub struct GitHubUser {
1212
pub id: i32,
1313
pub login: String,
1414
}
1515

16-
#[derive(Clone, Debug, Deserialize, Eq, Ord, PartialEq, PartialOrd, Queryable)]
17-
#[insertable_into(milestone)]
18-
#[changeset_for(milestone, treat_none_as_null="true")]
16+
#[derive(AsChangeset, Clone, Debug, Deserialize, Eq, Insertable,
17+
Ord, PartialEq, PartialOrd, Queryable)]
18+
#[table_name="milestone"]
19+
#[treat_none_as_null="true"]
1920
pub struct Milestone {
2021
pub id: i32,
2122
pub number: i32,
@@ -32,8 +33,9 @@ pub struct Milestone {
3233
pub repository: String,
3334
}
3435

35-
#[derive(Clone, Debug, Deserialize, Eq, Ord, PartialEq, PartialOrd, Queryable, Serialize)]
36-
#[insertable_into(issue)]
36+
#[derive(Clone, Debug, Deserialize, Eq, Insertable,
37+
Ord, PartialEq, PartialOrd, Queryable, Serialize)]
38+
#[table_name="issue"]
3739
pub struct IssuePartial {
3840
pub number: i32,
3941
pub fk_milestone: Option<i32>,
@@ -73,8 +75,10 @@ impl IssuePartial {
7375
}
7476
}
7577

76-
#[derive(Clone, Debug, Deserialize, Eq, Ord, PartialEq, PartialOrd, Queryable, Serialize)]
77-
#[changeset_for(issue, treat_none_as_null="true")]
78+
#[derive(AsChangeset, Clone, Debug, Deserialize, Eq, Ord,
79+
PartialEq, PartialOrd, Queryable, Serialize)]
80+
#[table_name="issue"]
81+
#[treat_none_as_null="true"]
7882
pub struct Issue {
7983
pub id: i32,
8084
pub number: i32,
@@ -93,9 +97,10 @@ pub struct Issue {
9397
pub repository: String,
9498
}
9599

96-
#[derive(Clone, Debug, Deserialize, Eq, Ord, PartialEq, PartialOrd, Queryable, Serialize)]
97-
#[insertable_into(issuecomment)]
98-
#[changeset_for(issuecomment, treat_none_as_null="true")]
100+
#[derive(AsChangeset, Clone, Debug, Deserialize, Eq, Insertable,
101+
Ord, PartialEq, PartialOrd, Queryable, Serialize)]
102+
#[table_name="issuecomment"]
103+
#[treat_none_as_null="true"]
99104
pub struct IssueComment {
100105
pub id: i32,
101106
pub fk_issue: i32,
@@ -106,9 +111,10 @@ pub struct IssueComment {
106111
pub repository: String,
107112
}
108113

109-
#[derive(Clone, Debug, Deserialize, Eq, Ord, PartialEq, PartialOrd, Queryable)]
110-
#[insertable_into(pullrequest)]
111-
#[changeset_for(pullrequest, treat_none_as_null="true")]
114+
#[derive(AsChangeset, Clone, Debug, Deserialize, Eq, Insertable,
115+
Ord, PartialEq, PartialOrd, Queryable)]
116+
#[table_name="pullrequest"]
117+
#[treat_none_as_null="true"]
112118
pub struct PullRequest {
113119
pub number: i32,
114120
pub state: String,
@@ -128,17 +134,17 @@ pub struct PullRequest {
128134
pub repository: String,
129135
}
130136

131-
#[derive(Clone, Debug, Deserialize, Eq, Ord, PartialEq, PartialOrd, Queryable)]
132-
#[changeset_for(teams)]
137+
#[derive(AsChangeset, Clone, Debug, Deserialize, Eq, Ord, PartialEq, PartialOrd, Queryable)]
138+
#[table_name="teams"]
133139
pub struct Team {
134140
pub id: i32,
135141
pub name: String,
136142
pub ping: String,
137143
pub label: String,
138144
}
139145

140-
#[derive(Clone, Debug, Deserialize, Eq, Ord, PartialEq, PartialOrd, Queryable)]
141-
#[changeset_for(memberships)]
146+
#[derive(AsChangeset, Clone, Debug, Deserialize, Eq, Ord, PartialEq, PartialOrd, Queryable)]
147+
#[table_name="memberships"]
142148
pub struct Membership {
143149
pub id: i32,
144150
pub fk_member: i32,

src/domain/releases.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,9 @@ use diesel::ExpressionMethods;
33

44
use super::schema::*;
55

6-
#[derive(Clone, Debug, Deserialize, Eq, Ord, PartialEq, PartialOrd, Queryable, Serialize)]
7-
#[insertable_into(release)]
8-
#[changeset_for(release)]
6+
#[derive(AsChangeset, Clone, Debug, Deserialize, Eq, Insertable,
7+
Ord, PartialEq, PartialOrd, Queryable, Serialize)]
8+
#[table_name="release"]
99
pub struct Release {
1010
pub date: NaiveDate,
1111
pub released: bool,

src/domain/rfcbot.rs

Lines changed: 18 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
use chrono::NaiveDateTime;
2-
use diesel::{ExpressionMethods, FilterDsl, LoadDsl, Queryable, SaveChangesDsl, Table};
2+
use diesel::ExpressionMethods;
33

44
use super::schema::*;
55

6-
#[derive(Clone, Debug, Eq, Ord, PartialEq, PartialOrd)]
7-
#[insertable_into(fcp_proposal)]
6+
#[derive(Clone, Debug, Eq, Ord, Insertable, PartialEq, PartialOrd)]
7+
#[table_name="fcp_proposal"]
88
pub struct NewFcpProposal<'a> {
99
pub fk_issue: i32,
1010
pub fk_initiator: i32,
@@ -15,8 +15,9 @@ pub struct NewFcpProposal<'a> {
1515
pub fcp_closed: bool,
1616
}
1717

18-
#[derive(Clone, Debug, Deserialize, Eq, Ord, PartialEq, PartialOrd, Queryable, Serialize)]
19-
#[changeset_for(fcp_proposal, treat_none_as_null="true")]
18+
#[derive(AsChangeset, Clone, Debug, Deserialize, Eq, Ord,
19+
PartialEq, PartialOrd, Queryable, Serialize)]
20+
#[table_name="fcp_proposal"]
2021
pub struct FcpProposal {
2122
pub id: i32,
2223
pub fk_issue: i32,
@@ -28,25 +29,25 @@ pub struct FcpProposal {
2829
pub fcp_closed: bool,
2930
}
3031

31-
#[derive(Clone, Debug, Eq, Ord, PartialEq, PartialOrd, Serialize)]
32-
#[insertable_into(fcp_review_request)]
32+
#[derive(Clone, Debug, Eq, Insertable, Ord, PartialEq, PartialOrd, Serialize)]
33+
#[table_name="fcp_review_request"]
3334
pub struct NewFcpReviewRequest {
3435
pub fk_proposal: i32,
3536
pub fk_reviewer: i32,
3637
pub reviewed: bool,
3738
}
3839

39-
#[derive(Clone, Debug, Deserialize, Eq, Ord, PartialEq, PartialOrd, Queryable, Serialize)]
40-
#[changeset_for(fcp_review_request, treat_none_as_null="true")]
40+
#[derive(AsChangeset, Clone, Debug, Deserialize, Eq, Ord, PartialEq, PartialOrd, Queryable, Serialize)]
41+
#[table_name="fcp_review_request"]
4142
pub struct FcpReviewRequest {
4243
pub id: i32,
4344
pub fk_proposal: i32,
4445
pub fk_reviewer: i32,
4546
pub reviewed: bool,
4647
}
4748

48-
#[derive(Clone, Debug, Eq, Ord, PartialEq, PartialOrd)]
49-
#[insertable_into(fcp_concern)]
49+
#[derive(Clone, Debug, Eq, Insertable, Ord, PartialEq, PartialOrd)]
50+
#[table_name="fcp_concern"]
5051
pub struct NewFcpConcern<'a> {
5152
pub fk_proposal: i32,
5253
pub fk_initiator: i32,
@@ -55,8 +56,8 @@ pub struct NewFcpConcern<'a> {
5556
pub fk_initiating_comment: i32,
5657
}
5758

58-
#[derive(Clone, Debug, Deserialize, Eq, Ord, PartialEq, PartialOrd, Queryable)]
59-
#[changeset_for(fcp_concern, treat_none_as_null="true")]
59+
#[derive(AsChangeset, Clone, Debug, Deserialize, Eq, Ord, PartialEq, PartialOrd, Queryable)]
60+
#[table_name="fcp_concern"]
6061
pub struct FcpConcern {
6162
pub id: i32,
6263
pub fk_proposal: i32,
@@ -66,17 +67,17 @@ pub struct FcpConcern {
6667
pub fk_initiating_comment: i32,
6768
}
6869

69-
#[derive(Clone, Debug, Eq, Ord, PartialEq, PartialOrd)]
70-
#[insertable_into(rfc_feedback_request)]
70+
#[derive(Clone, Debug, Eq, Insertable, Ord, PartialEq, PartialOrd)]
71+
#[table_name="rfc_feedback_request"]
7172
pub struct NewFeedbackRequest {
7273
pub fk_initiator: i32,
7374
pub fk_requested: i32,
7475
pub fk_issue: i32,
7576
pub fk_feedback_comment: Option<i32>,
7677
}
7778

78-
#[derive(Clone, Debug, Deserialize, Eq, Ord, PartialEq, PartialOrd, Queryable)]
79-
#[changeset_for(rfc_feedback_request, treat_none_as_null="true")]
79+
#[derive(AsChangeset, Clone, Debug, Deserialize, Eq, Ord, PartialEq, PartialOrd, Queryable)]
80+
#[table_name="rfc_feedback_request"]
8081
pub struct FeedbackRequest {
8182
pub id: i32,
8283
pub fk_initiator: i32,

src/domain/schema.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
infer_schema!(dotenv!("DATABASE_URL"));
1+
infer_schema!("dotenv:DATABASE_URL");

src/github/client.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ impl Client {
7171

7272
let repo = match v.get("name") {
7373
Some(n) => {
74-
match n.as_string() {
74+
match n.as_str() {
7575
Some(s) => format!("{}/{}", org, s),
7676
None => return Err(DashError::Misc),
7777
}

src/main.rs

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,14 @@
11
// Copyright 2016 Adam Perry. Dual-licensed MIT and Apache 2.0 (see LICENSE files for details).
22

3-
#![feature(custom_attribute, custom_derive, plugin, question_mark)]
4-
#![plugin(diesel_codegen, dotenv_macros, serde_macros)]
3+
#![feature(proc_macro)]
54

65
extern crate chrono;
76
extern crate clap;
87
extern crate crossbeam;
98
#[macro_use]
109
extern crate diesel;
10+
#[macro_use]
11+
extern crate diesel_codegen;
1112
extern crate dotenv;
1213
extern crate env_logger;
1314
#[macro_use]
@@ -25,6 +26,8 @@ extern crate regex;
2526
#[macro_use]
2627
extern crate router;
2728
extern crate serde;
29+
#[macro_use]
30+
extern crate serde_derive;
2831
extern crate serde_json;
2932
extern crate urlencoded;
3033

0 commit comments

Comments
 (0)