Skip to content

Commit c9a4b0a

Browse files
committed
Organize imports
Group imports by crate. Add instructions to the PR template about clippy and fmt. Remove PR comments because they don't work on forks. Signed-off-by: David Calavera <[email protected]>
1 parent f484569 commit c9a4b0a

File tree

42 files changed

+155
-181
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

42 files changed

+155
-181
lines changed

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,10 @@
1-
*Issue #, if available:*
1+
📬 *Issue #, if available:*
22

3-
*Description of changes:*
3+
✍️ *Description of changes:*
44

5-
By submitting this pull request
5+
🔏 *By submitting this pull request*
66

7-
- [ ] I confirm that my contribution is made under the terms of the Apache 2.0 license.
7+
- [ ] I confirm that I've ran `cargo +nightly fmt`.
8+
- [ ] I confirm that I've ran `cargo clippy --fix`.
89
- [ ] I confirm that I've made a best effort attempt to update all relevant documentation.
10+
- [ ] I confirm that my contribution is made under the terms of the Apache 2.0 license.

.github/workflows/format.yml

Lines changed: 13 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -3,53 +3,29 @@ name: Formatting and Linting
33
on: [push, pull_request]
44

55
jobs:
6-
check:
6+
fmt:
7+
name: Cargo fmt
78
runs-on: ubuntu-latest
89
steps:
910
- uses: actions/checkout@v3
10-
- uses: dtolnay/rust-toolchain@stable
11+
- uses: dtolnay/rust-toolchain@nightly
12+
with:
13+
components: rustfmt
1114
- uses: Swatinem/rust-cache@v2
12-
1315
- name: Run fmt check
1416
id: cargoFmt
1517
shell: bash
16-
run: cargo fmt --all -- --check
17-
- name: Notify fmt check
18-
if: failure() && steps.cargoFmt.outcome == 'failure'
19-
uses: actions/github-script@v6
20-
with:
21-
script: |
22-
const message = `👋 It looks like your code is not formatted like we expect.
23-
24-
Please run \`cargo fmt\` and push the code again.`;
25-
26-
await github.rest.issues.createComment({
27-
issue_number: context.issue.number,
28-
owner: context.repo.owner,
29-
repo: context.repo.repo,
30-
body: message,
31-
});
32-
core.setFailed('It looks like there are formatting errors');
33-
18+
run: cargo +nightly fmt --all -- --check
19+
clippy:
20+
name: Cargo clippy
21+
runs-on: ubuntu-latest
22+
steps:
23+
- uses: actions/checkout@v3
24+
- uses: dtolnay/rust-toolchain@stable
25+
- uses: Swatinem/rust-cache@v2
3426
- name: Run clippy check
3527
id: cargoClippy
3628
shell: bash
3729
run: cargo clippy --workspace --all-features -- -D warnings
38-
- name: Notify fmt check
39-
if: failure() && steps.cargoClippy.outcome == 'failure'
40-
uses: actions/github-script@v6
41-
with:
42-
script: |
43-
const message = `👋 It looks like your code has some linting issues.
44-
45-
Please run \`cargo clippy --fix\` and push the code again.`;
46-
47-
await github.rest.issues.createComment({
48-
issue_number: context.issue.number,
49-
owner: context.repo.owner,
50-
repo: context.repo.repo,
51-
body: message,
52-
});
53-
core.setFailed('It looks like there are linting errors');
5430

5531

.rustfmt.toml

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,14 @@
11
edition = "2021"
2-
# imports_granularity is unstable
3-
# # https://github.com/rust-lang/rustfmt/blob/master/Configurations.md#merge_imports
4-
# imports_granularity = "Crate"
2+
53
# https://github.com/rust-lang/rustfmt/blob/master/Configurations.md#max_width
64
max_width = 120
5+
6+
#https://github.com/rust-lang/rustfmt/blob/master/Configurations.md#reorder_imports
7+
reorder_imports = true
8+
9+
#https://github.com/rust-lang/rustfmt/blob/master/Configurations.md#unstable_features
10+
unstable_features = true
11+
12+
# imports_granularity is unstable
13+
# https://github.com/rust-lang/rustfmt/blob/master/Configurations.md#merge_imports
14+
imports_granularity = "Crate"

lambda-events/src/custom_serde/codebuild_time.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
use chrono::{DateTime, NaiveDateTime, Utc};
2-
use serde::ser::Serializer;
32
use serde::{
43
de::{Deserializer, Error as DeError, Visitor},
4+
ser::Serializer,
55
Deserialize,
66
};
77
use std::fmt;

lambda-events/src/custom_serde/float_unix_epoch.rs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
11
use serde::{de, ser};
22
use std::fmt;
33

4-
use chrono::offset::TimeZone;
5-
use chrono::{DateTime, LocalResult, Utc};
4+
use chrono::{offset::TimeZone, DateTime, LocalResult, Utc};
65

76
enum SerdeError<V: fmt::Display, D: fmt::Display> {
87
NonExistent { timestamp: V },

lambda-events/src/custom_serde/headers.rs

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
1-
use http::header::HeaderName;
2-
use http::{HeaderMap, HeaderValue};
3-
use serde::de::{self, Deserializer, Error as DeError, MapAccess, Unexpected, Visitor};
4-
use serde::ser::{Error as SerError, SerializeMap, Serializer};
1+
use http::{header::HeaderName, HeaderMap, HeaderValue};
2+
use serde::{
3+
de::{self, Deserializer, Error as DeError, MapAccess, Unexpected, Visitor},
4+
ser::{Error as SerError, SerializeMap, Serializer},
5+
};
56
use std::{borrow::Cow, fmt};
67

78
/// Serialize a http::HeaderMap into a serde str => Vec<str> map

lambda-events/src/custom_serde/http_method.rs

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
use http::Method;
2-
use serde::de::{Deserialize, Deserializer, Error as DeError, Unexpected, Visitor};
3-
use serde::ser::Serializer;
2+
use serde::{
3+
de::{Deserialize, Deserializer, Error as DeError, Unexpected, Visitor},
4+
ser::Serializer,
5+
};
46
use std::fmt;
57

68
pub fn serialize<S: Serializer>(method: &Method, ser: S) -> Result<S::Ok, S::Error> {

lambda-events/src/custom_serde/mod.rs

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
use base64::Engine;
2-
use serde::de::{Deserialize, Deserializer, Error as DeError};
3-
use serde::ser::Serializer;
2+
use serde::{
3+
de::{Deserialize, Deserializer, Error as DeError},
4+
ser::Serializer,
5+
};
46
use std::collections::HashMap;
57

68
#[cfg(feature = "codebuild")]

lambda-events/src/encodings/http.rs

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,10 @@
11
use base64::display::Base64Display;
22
use bytes::Bytes;
33
use http_body::{Body as HttpBody, SizeHint};
4-
use serde::de::{Deserialize, Deserializer, Error as DeError, Visitor};
5-
use serde::ser::{Error as SerError, Serialize, Serializer};
4+
use serde::{
5+
de::{Deserialize, Deserializer, Error as DeError, Visitor},
6+
ser::{Error as SerError, Serialize, Serializer},
7+
};
68
use std::{borrow::Cow, mem::take, ops::Deref, pin::Pin, task::Poll};
79

810
/// Representation of http request and response bodies as supported

lambda-events/src/encodings/mod.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
use serde::{Deserialize, Serialize};
2-
use std::{ops::Deref, ops::DerefMut};
2+
use std::ops::{Deref, DerefMut};
33

44
#[cfg(feature = "chrono")]
55
mod time;

lambda-events/src/encodings/time.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
use chrono::{DateTime, TimeDelta, TimeZone, Utc};
2-
use serde::ser::Serializer;
32
use serde::{
43
de::{Deserializer, Error as DeError},
4+
ser::Serializer,
55
Deserialize, Serialize,
66
};
77
use std::ops::{Deref, DerefMut};

lambda-events/src/event/alb/mod.rs

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
1-
use crate::custom_serde::{
2-
deserialize_headers, deserialize_nullish_boolean, http_method, serialize_headers, serialize_multi_value_headers,
1+
use crate::{
2+
custom_serde::{
3+
deserialize_headers, deserialize_nullish_boolean, http_method, serialize_headers, serialize_multi_value_headers,
4+
},
5+
encodings::Body,
36
};
4-
use crate::encodings::Body;
57
use http::{HeaderMap, Method};
68
use query_map::QueryMap;
79
use serde::{Deserialize, Serialize};

lambda-events/src/event/apigw/mod.rs

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,11 @@
1-
use crate::custom_serde::{
2-
deserialize_headers, deserialize_lambda_map, deserialize_nullish_boolean, http_method, serialize_headers,
3-
serialize_multi_value_headers,
1+
use crate::{
2+
custom_serde::{
3+
deserialize_headers, deserialize_lambda_map, deserialize_nullish_boolean, http_method, serialize_headers,
4+
serialize_multi_value_headers,
5+
},
6+
encodings::Body,
7+
iam::IamPolicyStatement,
48
};
5-
use crate::encodings::Body;
6-
use crate::iam::IamPolicyStatement;
79
use http::{HeaderMap, Method};
810
use query_map::QueryMap;
911
use serde::{de::DeserializeOwned, ser::SerializeMap, Deserialize, Deserializer, Serialize, Serializer};

lambda-events/src/event/appsync/mod.rs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
1-
use serde::de::DeserializeOwned;
2-
use serde::{Deserialize, Serialize};
1+
use serde::{de::DeserializeOwned, Deserialize, Serialize};
32
use serde_json::Value;
43
use std::collections::HashMap;
54

lambda-events/src/event/autoscaling/mod.rs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
use chrono::{DateTime, Utc};
2-
use serde::de::DeserializeOwned;
3-
use serde::{Deserialize, Serialize};
2+
use serde::{de::DeserializeOwned, Deserialize, Serialize};
43
use serde_json::Value;
54
use std::collections::HashMap;
65

lambda-events/src/event/cloudformation/mod.rs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -102,8 +102,7 @@ pub enum CloudFormationCustomResourceResponseStatus {
102102
mod test {
103103
use std::collections::HashMap;
104104

105-
use super::CloudFormationCustomResourceRequest::*;
106-
use super::*;
105+
use super::{CloudFormationCustomResourceRequest::*, *};
107106

108107
#[derive(Clone, Debug, Deserialize, PartialEq, Serialize)]
109108
#[serde(rename_all = "PascalCase")]

lambda-events/src/event/cloudformation/provider.rs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -90,8 +90,7 @@ where
9090
mod test {
9191
use std::collections::HashMap;
9292

93-
use super::CloudFormationCustomResourceRequest::*;
94-
use super::*;
93+
use super::{CloudFormationCustomResourceRequest::*, *};
9594

9695
#[derive(Clone, Debug, Deserialize, PartialEq, Serialize)]
9796
#[serde(rename_all = "PascalCase")]

lambda-events/src/event/cloudwatch_events/mod.rs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
use chrono::{DateTime, Utc};
2-
use serde::de::DeserializeOwned;
3-
use serde::{Deserialize, Serialize};
2+
use serde::{de::DeserializeOwned, Deserialize, Serialize};
43
use serde_json::Value;
54

65
pub mod cloudtrail;

lambda-events/src/event/codebuild/mod.rs

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
1-
use crate::custom_serde::{codebuild_time, CodeBuildNumber};
2-
use crate::encodings::{MinuteDuration, SecondDuration};
1+
use crate::{
2+
custom_serde::{codebuild_time, CodeBuildNumber},
3+
encodings::{MinuteDuration, SecondDuration},
4+
};
35
use chrono::{DateTime, Utc};
4-
use serde::de::DeserializeOwned;
5-
use serde::{Deserialize, Serialize};
6+
use serde::{de::DeserializeOwned, Deserialize, Serialize};
67
use serde_json::Value;
78

89
pub type CodeBuildPhaseStatus = String;

lambda-events/src/event/cognito/mod.rs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
1-
use serde::de::DeserializeOwned;
2-
use serde::{Deserialize, Serialize};
1+
use serde::{de::DeserializeOwned, Deserialize, Serialize};
32
use serde_json::Value;
43
use std::collections::HashMap;
54

lambda-events/src/event/dynamodb/mod.rs

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
1-
use crate::custom_serde::deserialize_lambda_dynamodb_item;
2-
use crate::time_window::*;
3-
use crate::{custom_serde::float_unix_epoch, streams::DynamoDbBatchItemFailure};
1+
use crate::{
2+
custom_serde::{deserialize_lambda_dynamodb_item, float_unix_epoch},
3+
streams::DynamoDbBatchItemFailure,
4+
time_window::*,
5+
};
46
use chrono::{DateTime, Utc};
57
use serde::{Deserialize, Serialize};
68
use std::fmt;

lambda-events/src/event/eventbridge/mod.rs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
use chrono::{DateTime, Utc};
2-
use serde::de::DeserializeOwned;
3-
use serde::{Deserialize, Serialize};
2+
use serde::{de::DeserializeOwned, Deserialize, Serialize};
43
use serde_json::Value;
54

65
/// Parse EventBridge events.

lambda-events/src/event/iot/mod.rs

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,4 @@
1-
use crate::custom_serde::serialize_headers;
2-
use crate::encodings::Base64Data;
3-
use crate::iam::IamPolicyDocument;
1+
use crate::{custom_serde::serialize_headers, encodings::Base64Data, iam::IamPolicyDocument};
42
use http::HeaderMap;
53
use serde::{Deserialize, Serialize};
64

lambda-events/src/event/kinesis/event.rs

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
1-
use crate::encodings::{Base64Data, SecondTimestamp};
2-
use crate::time_window::{TimeWindowEventResponseProperties, TimeWindowProperties};
1+
use crate::{
2+
encodings::{Base64Data, SecondTimestamp},
3+
time_window::{TimeWindowEventResponseProperties, TimeWindowProperties},
4+
};
35
use serde::{Deserialize, Serialize};
46

57
#[derive(Clone, Debug, Deserialize, Eq, PartialEq, Serialize)]

lambda-events/src/event/rabbitmq/mod.rs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
1-
use serde::de::DeserializeOwned;
2-
use serde::{Deserialize, Serialize};
1+
use serde::{de::DeserializeOwned, Deserialize, Serialize};
32
use serde_json::Value;
43
use std::collections::HashMap;
54

lambda-events/src/event/s3/object_lambda.rs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
use http::HeaderMap;
2-
use serde::de::DeserializeOwned;
3-
use serde::{Deserialize, Serialize};
2+
use serde::{de::DeserializeOwned, Deserialize, Serialize};
43
use serde_json::Value;
54
use std::collections::HashMap;
65

lambda-events/src/event/sns/mod.rs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
use chrono::{DateTime, Utc};
2-
use serde::de::DeserializeOwned;
3-
use serde::{Deserialize, Serialize};
2+
use serde::{de::DeserializeOwned, Deserialize, Serialize};
43
use std::collections::HashMap;
54

65
use crate::custom_serde::{deserialize_lambda_map, deserialize_nullish_boolean};

lambda-events/src/event/sqs/mod.rs

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
1-
use crate::custom_serde::deserialize_lambda_map;
2-
use crate::encodings::Base64Data;
3-
use serde::de::DeserializeOwned;
4-
use serde::{Deserialize, Serialize};
1+
use crate::{custom_serde::deserialize_lambda_map, encodings::Base64Data};
2+
use serde::{de::DeserializeOwned, Deserialize, Serialize};
53
use std::collections::HashMap;
64

75
/// The Event sent to Lambda from SQS. Contains 1 or more individual SQS Messages

lambda-extension/src/extension.rs

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,18 @@
11
use http::Request;
22
use http_body_util::BodyExt;
3-
use hyper::body::Incoming;
4-
use hyper::server::conn::http1;
5-
use hyper::service::service_fn;
3+
use hyper::{body::Incoming, server::conn::http1, service::service_fn};
64

75
use hyper_util::rt::tokio::TokioIo;
86
use lambda_runtime_api_client::Client;
97
use serde::Deserialize;
108
use std::{
11-
convert::Infallible, fmt, future::ready, future::Future, net::SocketAddr, path::PathBuf, pin::Pin, sync::Arc,
9+
convert::Infallible,
10+
fmt,
11+
future::{ready, Future},
12+
net::SocketAddr,
13+
path::PathBuf,
14+
pin::Pin,
15+
sync::Arc,
1216
};
1317
use tokio::{net::TcpListener, sync::Mutex};
1418
use tokio_stream::StreamExt;

lambda-http/src/request.rs

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -26,15 +26,12 @@ use aws_lambda_events::apigw::{ApiGatewayV2httpRequest, ApiGatewayV2httpRequestC
2626
#[cfg(feature = "apigw_websockets")]
2727
use aws_lambda_events::apigw::{ApiGatewayWebsocketProxyRequest, ApiGatewayWebsocketProxyRequestContext};
2828
use aws_lambda_events::{encodings::Body, query_map::QueryMap};
29-
use http::header::HeaderName;
30-
use http::{HeaderMap, HeaderValue};
29+
use http::{header::HeaderName, HeaderMap, HeaderValue};
3130

3231
use serde::{Deserialize, Serialize};
3332
use serde_json::error::Error as JsonError;
3433

35-
use std::future::Future;
36-
use std::pin::Pin;
37-
use std::{env, io::Read};
34+
use std::{env, future::Future, io::Read, pin::Pin};
3835
use url::Url;
3936

4037
/// Internal representation of an Lambda http event from

0 commit comments

Comments
 (0)