Skip to content

Commit 3271908

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 <david.calavera@gmail.com>
1 parent f484569 commit 3271908

File tree

42 files changed

+153
-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

+153
-181
lines changed

.github/PULL_REQUEST_TEMPLATE.md

+6-4
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

+11-37
Original file line numberDiff line numberDiff line change
@@ -3,53 +3,27 @@ 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
1112
- uses: Swatinem/rust-cache@v2
12-
1313
- name: Run fmt check
1414
id: cargoFmt
1515
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-
16+
run: cargo +nightly fmt --all -- --check
17+
clippy:
18+
name: Cargo clippy
19+
runs-on: ubuntu-latest
20+
steps:
21+
- uses: actions/checkout@v3
22+
- uses: dtolnay/rust-toolchain@stable
23+
- uses: Swatinem/rust-cache@v2
3424
- name: Run clippy check
3525
id: cargoClippy
3626
shell: bash
3727
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');
5428

5529

.rustfmt.toml

+11-3
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

+1-1
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

+1-2
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

+5-4
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

+4-2
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

+4-2
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

+4-2
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

+1-1
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

+1-1
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

+5-3
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

+7-5
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

+1-2
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

+1-2
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

+1-2
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

+1-2
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

+1-2
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

+5-4
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

+1-2
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

+5-3
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

+1-2
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

+1-3
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

+4-2
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

+1-2
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

+1-2
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

+1-2
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

+2-4
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

+8-4
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

+2-5
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)