Skip to content
This repository was archived by the owner on Nov 15, 2024. It is now read-only.
/ jira_cli Public archive

Commit d2f84a0

Browse files
committed
remove intermediate variable + bump version to 2.10.1
1 parent 105e518 commit d2f84a0

File tree

8 files changed

+63
-51
lines changed

8 files changed

+63
-51
lines changed

Cargo.lock

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "jira_cli"
3-
version = "2.10.0"
3+
version = "2.10.1"
44
edition = "2021"
55
license = "GPL-2.0"
66
readme = "README.md"

src/check_version.rs

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -24,24 +24,23 @@ fn get_request(url: &str) -> Response {
2424

2525
fn check_version() {
2626
let actual_version: &str = crate_version!();
27-
let repository_url: &str = env!("CARGO_PKG_REPOSITORY");
28-
let api_url: String =
29-
repository_url.replace("github.com", "api.github.com/repos") + "/releases/latest";
30-
let resp: Response = get_request(&api_url);
31-
let json: Value = resp.json().unwrap();
27+
let api_url: String = env!("CARGO_PKG_REPOSITORY")
28+
.replace("github.com", "api.github.com/repos")
29+
+ "/releases/latest";
30+
let json: Value = get_request(&api_url).json().unwrap();
3231
let latest_version: &str = json["tag_name"]
3332
.as_str()
3433
.unwrap()
3534
.strip_prefix('v')
3635
.unwrap();
3736
match actual_version {
38-
_ if actual_version == latest_version => {
37+
x if x == latest_version => {
3938
println!("You are using the latest version.");
4039
}
41-
_ if actual_version < latest_version => {
40+
x if x < latest_version => {
4241
println!("You are using an outdated version. The latest version is {latest_version}");
4342
}
44-
_ if actual_version > latest_version => {
43+
x if x > latest_version => {
4544
println!("You are using an unreleased version. The latest version is {latest_version}");
4645
}
4746
_ => {

src/group/functions.rs

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@
77

88
use std::collections::HashMap;
99

10-
use attohttpc::Response;
1110
use comfy_table::{Cell, CellAlignment};
1211
use rayon::prelude::*;
1312
use serde_json::{json, Value};
@@ -58,8 +57,9 @@ pub fn find(global: &HashMap<&str, &str>, query: &str) {
5857
"https://{}{}/picker?query={}",
5958
global["domain"], URLS["groups"], query
6059
);
61-
let resp: Response = get_request(&url, global["user"], global["token"]);
62-
let json: Value = resp.json().unwrap();
60+
let json: Value = get_request(&url, global["user"], global["token"])
61+
.json()
62+
.unwrap();
6363
let rows: Vec<Vec<Cell>> = json["groups"]
6464
.as_array()
6565
.unwrap()
@@ -84,8 +84,9 @@ pub fn list_groups(global: &HashMap<&str, &str>, start_at: &str, max_results: &s
8484
"https://{}{}/bulk?startAt={}&maxResults={}",
8585
global["domain"], URLS["group"], start_at, max_results
8686
);
87-
let resp: Response = get_request(&url, global["user"], global["token"]);
88-
let json: Value = resp.json().unwrap();
87+
let json: Value = get_request(&url, global["user"], global["token"])
88+
.json()
89+
.unwrap();
8990
let rows: Vec<Vec<Cell>> = json["values"]
9091
.as_array()
9192
.unwrap()
@@ -116,8 +117,9 @@ pub fn list_users(
116117
"https://{}{}/member?groupId={}&includeInactiveUsers={}&startAt={}&maxResults={}",
117118
global["domain"], URLS["group"], group_id, include_inactive, start_at, max_results
118119
);
119-
let resp: Response = get_request(&url, global["user"], global["token"]);
120-
let json: Value = resp.json().unwrap();
120+
let json: Value = get_request(&url, global["user"], global["token"])
121+
.json()
122+
.unwrap();
121123
if json["values"] == json!(null) {
122124
println!("No users found.");
123125
} else {

src/issue/functions.rs

Lines changed: 29 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@
77

88
use std::collections::HashMap;
99

10-
use attohttpc::Response;
1110
use comfy_table::{Cell, CellAlignment};
1211
use rayon::prelude::*;
1312
use serde_json::{json, Value};
@@ -131,8 +130,10 @@ pub fn create(
131130
payload["fields"]["priority"] = json!({ "name": priority });
132131
}
133132

134-
let resp = post_request(&url, &payload, global["user"], global["token"], true).unwrap_right();
135-
let json: Value = resp.json().unwrap();
133+
let json: Value = post_request(&url, &payload, global["user"], global["token"], true)
134+
.unwrap_right()
135+
.json()
136+
.unwrap();
136137
println!("Issue created: {}", json["key"]);
137138
}
138139

@@ -143,8 +144,10 @@ pub fn create_link_type(global: &HashMap<&str, &str>, name: &str, inward: &str,
143144
"inward": inward,
144145
"outward": outward
145146
});
146-
let resp = post_request(&url, &payload, global["user"], global["token"], true).unwrap_right();
147-
let json: Value = resp.json().unwrap();
147+
let json: Value = post_request(&url, &payload, global["user"], global["token"], true)
148+
.unwrap_right()
149+
.json()
150+
.unwrap();
148151
if json["errorMessages"].is_null() {
149152
println!(
150153
"New link type {} (id: {} ) created",
@@ -183,8 +186,9 @@ pub fn get_link_type(global: &HashMap<&str, &str>, link_type_id: &str) {
183186
"https://{}{}/{}",
184187
global["domain"], URLS["issue_link_types"], link_type_id
185188
);
186-
let resp = get_request(&url, global["user"], global["token"]);
187-
let json: Value = resp.json().unwrap();
189+
let json: Value = get_request(&url, global["user"], global["token"])
190+
.json()
191+
.unwrap();
188192
let mut rows: Vec<Vec<Cell>> = Vec::new();
189193
let id: &str = json["id"].as_str().unwrap();
190194
let name: &str = json["name"].as_str().unwrap();
@@ -213,8 +217,9 @@ pub fn get_transitions(global: &HashMap<&str, &str>, issue_key: &str) {
213217
"https://{}{}/{}/transitions",
214218
global["domain"], URLS["issue"], issue_key
215219
);
216-
let resp: Response = get_request(&url, global["user"], global["token"]);
217-
let json: Value = resp.json().unwrap();
220+
let json: Value = get_request(&url, global["user"], global["token"])
221+
.json()
222+
.unwrap();
218223
let rows: Vec<Vec<Cell>> = json["transitions"]
219224
.as_array()
220225
.unwrap()
@@ -241,8 +246,9 @@ pub fn get_transitions(global: &HashMap<&str, &str>, issue_key: &str) {
241246
//noinspection DuplicatedCode
242247
pub fn list_link_types(global: &HashMap<&str, &str>) {
243248
let url: String = format!("https://{}{}", global["domain"], URLS["issue_link_types"]);
244-
let resp: Response = get_request(&url, global["user"], global["token"]);
245-
let json: Value = resp.json().unwrap();
249+
let json: Value = get_request(&url, global["user"], global["token"])
250+
.json()
251+
.unwrap();
246252
let rows: Vec<Vec<Cell>> = json["issueLinkTypes"]
247253
.as_array()
248254
.unwrap()
@@ -270,8 +276,9 @@ pub fn list_link_types(global: &HashMap<&str, &str>) {
270276

271277
pub fn list_priorities(global: &HashMap<&str, &str>) {
272278
let url: String = format!("https://{}{}", global["domain"], URLS["priority"]);
273-
let resp: Response = get_request(&url, global["user"], global["token"]);
274-
let json: Value = resp.json().unwrap();
279+
let json: Value = get_request(&url, global["user"], global["token"])
280+
.json()
281+
.unwrap();
275282
json.as_array().unwrap().par_iter().for_each(|x| {
276283
println!("{}", x["name"]);
277284
});
@@ -282,8 +289,9 @@ pub fn list_types(global: &HashMap<&str, &str>, project_key: &str) {
282289
"https://{}{}/createmeta?projectKeys={}",
283290
global["domain"], URLS["issue"], project_key
284291
);
285-
let resp: Response = get_request(&url, global["user"], global["token"]);
286-
let json: Value = resp.json().unwrap();
292+
let json: Value = get_request(&url, global["user"], global["token"])
293+
.json()
294+
.unwrap();
287295
json["projects"][0]["issuetypes"]
288296
.as_array()
289297
.unwrap()
@@ -299,8 +307,9 @@ pub fn list_votes(global: &HashMap<&str, &str>, issue_key: &str) {
299307
"https://{}{}/{}/votes",
300308
global["domain"], URLS["issue"], issue_key
301309
);
302-
let resp: Response = get_request(&url, global["user"], global["token"]);
303-
let json: Value = resp.json().unwrap();
310+
let json: Value = get_request(&url, global["user"], global["token"])
311+
.json()
312+
.unwrap();
304313
if json["hasVoted"] == "true" {
305314
println!("Votes: {}", json["votes"]);
306315
let rows: Vec<Vec<Cell>> = json["voters"]
@@ -394,8 +403,9 @@ pub fn show_fixversions(global: &HashMap<&str, &str>, issue_key: &str) {
394403
"https://{}{}/{}",
395404
global["domain"], URLS["issue"], issue_key
396405
);
397-
let resp: Response = get_request(&url, global["user"], global["token"]);
398-
let json: Value = resp.json().unwrap();
406+
let json: Value = get_request(&url, global["user"], global["token"])
407+
.json()
408+
.unwrap();
399409
json["fields"]["fixVersions"]
400410
.as_array()
401411
.unwrap()

src/labels.rs

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@
77

88
use std::collections::HashMap;
99

10-
use attohttpc::Response;
1110
use clap::{Arg, ArgMatches, Command};
1211
use rayon::prelude::*;
1312
use serde_json::Value;
@@ -21,8 +20,7 @@ fn list_labels(domain: &str, user: &str, token: &str, start_at: &str, max_result
2120
"https://{}{}?startAt={}&maxResults={}",
2221
domain, URLS["label"], start_at, max_results
2322
);
24-
let resp: Response = get_request(&url, user, token);
25-
let json: Value = resp.json().unwrap();
23+
let json: Value = get_request(&url, user, token).json().unwrap();
2624
json["values"].as_array().unwrap().par_iter().for_each(|x| {
2725
println!("{}", x);
2826
});

src/project/functions.rs

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@
77

88
use std::collections::HashMap;
99

10-
use attohttpc::Response;
1110
use comfy_table::{Cell, CellAlignment};
1211
use itertools::Itertools;
1312
use rayon::prelude::*;
@@ -64,8 +63,9 @@ pub fn get_id(global: &HashMap<&str, &str>, project_key: &str) {
6463
"https://{}{}/{}",
6564
global["domain"], URLS["project"], project_key
6665
);
67-
let resp: Response = get_request(&url, global["user"], global["token"]);
68-
let json: Value = resp.json().unwrap();
66+
let json: Value = get_request(&url, global["user"], global["token"])
67+
.json()
68+
.unwrap();
6969
println!("{}", json["id"].as_str().unwrap().parse::<i32>().unwrap());
7070
}
7171

@@ -74,8 +74,9 @@ pub fn list_features(global: &HashMap<&str, &str>, project_key: &str) {
7474
"https://{}{}/{}/features",
7575
global["domain"], URLS["project"], project_key
7676
);
77-
let resp: Response = get_request(&url, global["user"], global["token"]);
78-
let json: Value = resp.json().unwrap();
77+
let json: Value = get_request(&url, global["user"], global["token"])
78+
.json()
79+
.unwrap();
7980
let rows: Vec<Vec<Cell>> = json["features"]
8081
.as_array()
8182
.unwrap()
@@ -111,8 +112,9 @@ pub fn list_versions(global: &HashMap<&str, &str>, project_key: &str) {
111112
"https://{}{}/{}/versions",
112113
global["domain"], URLS["project"], project_key
113114
);
114-
let resp: Response = get_request(&url, global["user"], global["token"]);
115-
let json: Value = resp.json().unwrap();
115+
let json: Value = get_request(&url, global["user"], global["token"])
116+
.json()
117+
.unwrap();
116118
let mut rows: Vec<Vec<Cell>> = Vec::new();
117119
json.as_array()
118120
.unwrap()

src/user/functions.rs

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@
77

88
use std::collections::HashMap;
99

10-
use attohttpc::Response;
1110
use rayon::prelude::*;
1211
use serde_json::{json, Value};
1312

@@ -49,8 +48,9 @@ pub fn get_account_id(global: &HashMap<&str, &str>, email_address: &str) {
4948
"https://{}{}?query={}",
5049
global["domain"], URLS["group_user_picker"], email_address
5150
);
52-
let resp: Response = get_request(&url, global["user"], global["token"]);
53-
let json: Value = resp.json().unwrap();
51+
let json: Value = get_request(&url, global["user"], global["token"])
52+
.json()
53+
.unwrap();
5454
println!(
5555
"{}",
5656
json["users"]["users"][0]["accountId"].as_str().unwrap()
@@ -62,8 +62,9 @@ pub fn get_user_groups(global: &HashMap<&str, &str>, account_id: &str) {
6262
"https://{}{}/groups?accountId={}",
6363
global["domain"], URLS["user"], account_id
6464
);
65-
let resp: Response = get_request(&url, global["user"], global["token"]);
66-
let json: Value = resp.json().unwrap();
65+
let json: Value = get_request(&url, global["user"], global["token"])
66+
.json()
67+
.unwrap();
6768
if json["name"] == json!(null) {
6869
println!("No groups found for account id {}", account_id);
6970
} else {

0 commit comments

Comments
 (0)