Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Apply clippy fixes and cherry-pick PRs #610

Merged
merged 5 commits into from Aug 28, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/ci.yml
Expand Up @@ -65,7 +65,7 @@ jobs:
fail-fast: false
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
rust: [1.66.0]
rust: [1.67.0]

name: Check / Test MSRV on ${{ matrix.os }}
runs-on: ${{ matrix.os }}
Expand Down
4 changes: 2 additions & 2 deletions README.md
Expand Up @@ -93,12 +93,12 @@ best API and adding new features.
We currently only verify this crate against a recent version of Sentry hosted on [sentry.io](https://sentry.io/) but it
should work with on-prem Sentry versions 20.6 and later.

The **Minimum Supported Rust Version** is currently at _1.66.0_.
The **Minimum Supported Rust Version** is currently at _1.67.0_.
The Sentry crates will support a _6 months_ old Rust version at time of release,
and the MSRV will be increased in accordance with its dependencies.

**Note**: Due to the misconfiguration in our workflow that verified the MSRV builds,
we had to bump it all the way to _1.66.0_, breaking our own _6 months_ old rule.
we had to bump it all the way to _1.67.0_, breaking our own _6 months_ old rule.
As of version _0.30.0_, the workflow has been fixed, and the MSRV will be enforced correctly.

## Resources
Expand Down
2 changes: 1 addition & 1 deletion clippy.toml
@@ -1 +1 @@
msrv = "1.66.0"
msrv = "1.67.0"
2 changes: 1 addition & 1 deletion sentry-actix/Cargo.toml
Expand Up @@ -10,7 +10,7 @@ description = """
Sentry client extension for actix-web 3.
"""
edition = "2021"
rust-version = "1.66"
rust-version = "1.67"

[dependencies]
actix-web = { version = "4", default-features = false }
Expand Down
2 changes: 1 addition & 1 deletion sentry-anyhow/Cargo.toml
Expand Up @@ -10,7 +10,7 @@ description = """
Sentry integration for anyhow.
"""
edition = "2021"
rust-version = "1.66"
rust-version = "1.67"

[features]
default = ["backtrace"]
Expand Down
2 changes: 1 addition & 1 deletion sentry-backtrace/Cargo.toml
Expand Up @@ -10,7 +10,7 @@ description = """
Sentry integration and utilities for dealing with stacktraces.
"""
edition = "2021"
rust-version = "1.66"
rust-version = "1.67"

[dependencies]
backtrace = "0.3.44"
Expand Down
12 changes: 6 additions & 6 deletions sentry-backtrace/src/utils.rs
Expand Up @@ -14,34 +14,34 @@ static HASH_FUNC_RE: Lazy<Regex> = Lazy::new(|| {

static CRATE_HASH_RE: Lazy<Regex> = Lazy::new(|| {
Regex::new(
r#"(?x)
r"(?x)
\b(\[[a-f0-9]{16}\])
"#,
",
)
.unwrap()
});

static CRATE_RE: Lazy<Regex> = Lazy::new(|| {
Regex::new(
r#"(?x)
r"(?x)
^
(?:_?<)? # trait impl syntax
(?:\w+\ as \ )? # anonymous implementor
([a-zA-Z0-9_]+?) # crate name
(?:\.\.|::|\[) # crate delimiter (.. or :: or [)
"#,
",
)
.unwrap()
});

static COMMON_RUST_SYMBOL_ESCAPES_RE: Lazy<Regex> = Lazy::new(|| {
Regex::new(
r#"(?x)
r"(?x)
\$
(SP|BP|RF|LT|GT|LP|RP|C|
u7e|u20|u27|u5b|u5d|u7b|u7d|u3b|u2b|u22)
\$
"#,
",
)
.unwrap()
});
Expand Down
2 changes: 1 addition & 1 deletion sentry-contexts/Cargo.toml
Expand Up @@ -11,7 +11,7 @@ Sentry integration for os, device, and rust contexts.
"""
build = "build.rs"
edition = "2021"
rust-version = "1.66"
rust-version = "1.67"

[dependencies]
sentry-core = { version = "0.31.5", path = "../sentry-core" }
Expand Down
2 changes: 1 addition & 1 deletion sentry-core/Cargo.toml
Expand Up @@ -10,7 +10,7 @@ description = """
Core sentry library used for instrumentation and integration development.
"""
edition = "2021"
rust-version = "1.66"
rust-version = "1.67"

[package.metadata.docs.rs]
all-features = true
Expand Down
2 changes: 1 addition & 1 deletion sentry-debug-images/Cargo.toml
Expand Up @@ -10,7 +10,7 @@ description = """
Sentry integration that adds the list of loaded libraries to events.
"""
edition = "2021"
rust-version = "1.66"
rust-version = "1.67"

[dependencies]
findshlibs = "=0.10.2"
Expand Down
2 changes: 1 addition & 1 deletion sentry-log/Cargo.toml
Expand Up @@ -10,7 +10,7 @@ description = """
Sentry integration for log and env_logger crates.
"""
edition = "2021"
rust-version = "1.66"
rust-version = "1.67"

[dependencies]
sentry-core = { version = "0.31.5", path = "../sentry-core" }
Expand Down
2 changes: 1 addition & 1 deletion sentry-panic/Cargo.toml
Expand Up @@ -10,7 +10,7 @@ description = """
Sentry integration for capturing panics.
"""
edition = "2021"
rust-version = "1.66"
rust-version = "1.67"

[dependencies]
sentry-core = { version = "0.31.5", path = "../sentry-core" }
Expand Down
2 changes: 1 addition & 1 deletion sentry-slog/Cargo.toml
Expand Up @@ -10,7 +10,7 @@ description = """
Sentry integration for the slog crate.
"""
edition = "2021"
rust-version = "1.66"
rust-version = "1.67"

[dependencies]
sentry-core = { version = "0.31.5", path = "../sentry-core" }
Expand Down
2 changes: 1 addition & 1 deletion sentry-tower/Cargo.toml
Expand Up @@ -10,7 +10,7 @@ description = """
Sentry integration for tower-based crates.
"""
edition = "2021"
rust-version = "1.66"
rust-version = "1.67"

[features]
http = ["dep:http", "pin-project", "url"]
Expand Down
2 changes: 1 addition & 1 deletion sentry-tracing/Cargo.toml
Expand Up @@ -10,7 +10,7 @@ description = """
Sentry integration for tracing and tracing-subscriber crates.
"""
edition = "2021"
rust-version = "1.66"
rust-version = "1.67"

[features]
default = []
Expand Down
2 changes: 1 addition & 1 deletion sentry-types/Cargo.toml
Expand Up @@ -11,7 +11,7 @@ Common reusable types for implementing the sentry.io protocol.
"""
keywords = ["sentry", "protocol"]
edition = "2021"
rust-version = "1.66"
rust-version = "1.67"

[package.metadata.docs.rs]
all-features = true
Expand Down
4 changes: 2 additions & 2 deletions sentry-types/tests/test_auth.rs
Expand Up @@ -53,7 +53,7 @@ fn test_auth_from_iterator() {
cont.insert("sentry_client", "raven-js/3.23.3");
cont.insert("sentry_key", "4bb5d94de752a36b8b87851a3f82726a");

let auth = Auth::from_pairs(cont.into_iter()).unwrap();
let auth = Auth::from_pairs(cont).unwrap();
assert_eq!(auth.timestamp(), None);
assert_eq!(auth.client_agent(), Some("raven-js/3.23.3"));
assert_eq!(auth.version(), 7);
Expand Down Expand Up @@ -90,7 +90,7 @@ fn test_auth_to_json() {
cont.insert("sentry_client", "raven-js/3.23.3");
cont.insert("sentry_key", "4bb5d94de752a36b8b87851a3f82726a");

let auth = Auth::from_pairs(cont.into_iter()).unwrap();
let auth = Auth::from_pairs(cont).unwrap();
assert_eq!(
serde_json::to_string(&auth).expect("could not serialize").as_str(),
"{\"sentry_client\":\"raven-js/3.23.3\",\"sentry_version\":7,\"sentry_key\":\"4bb5d94de752a36b8b87851a3f82726a\",\"sentry_secret\":null}"
Expand Down
4 changes: 2 additions & 2 deletions sentry/Cargo.toml
Expand Up @@ -10,7 +10,7 @@ description = """
Sentry (getsentry.com) client for rust ;)
"""
edition = "2021"
rust-version = "1.66"
rust-version = "1.67"
autoexamples = true

# To build locally:
Expand Down Expand Up @@ -73,7 +73,7 @@ tokio = { version = "1.0", features = ["rt"], optional = true }
ureq = { version = "2.7.0", optional = true, default-features = false }
native-tls = { version = "0.2.8", optional = true }
rustls = { version = "0.21.2", optional = true, features = ["dangerous_configuration"] }
webpki-roots = { version = "0.23.0", optional = true }
webpki-roots = { version = "0.25.1", optional = true }

[dev-dependencies]
sentry-anyhow = { path = "../sentry-anyhow" }
Expand Down
4 changes: 2 additions & 2 deletions sentry/README.md
Expand Up @@ -73,7 +73,7 @@ extra setup to function properly.
| `transport` | ✅ | | | |
| `anyhow` | | 🔌 | | |
| `test` | | | | |
| `debug-images` | | 🔌 | | |
| `debug-images` | | 🔌 | | |
| `log` | | 🔌 | | Requires extra setup; See [`sentry-log`]'s documentation. |
| `debug-logs` | | | ❗ | Requires extra setup; See [`sentry-log`]'s documentation. |
| `slog` | | 🔌 | | Requires extra setup; See [`sentry-slog`]'s documentation. |
Expand All @@ -95,11 +95,11 @@ extra setup to function properly.
- `contexts`: Enables capturing device, OS, and Rust contexts.
- `panic`: Enables support for capturing panics.
- `transport`: Enables the default transport, which is currently `reqwest` with `native-tls`.
- `debug-images`: Enables capturing metadata about the loaded shared libraries.

### Debugging/Testing
- `anyhow`: Enables support for the `anyhow` crate.
- `test`: Enables testing support.
- `debug-images`: Attaches a list of loaded libraries to events (currently only supported on Unix).

### Logging
- `log`: Enables support for the `log` crate.
Expand Down
2 changes: 1 addition & 1 deletion sentry/src/defaults.rs
Expand Up @@ -74,7 +74,7 @@ pub fn apply_defaults(mut opts: ClientOptions) -> ClientOptions {
{
integrations.push(Arc::new(sentry_backtrace::ProcessStacktraceIntegration));
}
integrations.extend(opts.integrations.into_iter());
integrations.extend(opts.integrations);
opts.integrations = integrations;
}
if opts.dsn.is_none() {
Expand Down
4 changes: 2 additions & 2 deletions sentry/src/lib.rs
Expand Up @@ -65,7 +65,7 @@
//! | `transport` | ✅ | | | |
//! | `anyhow` | | 🔌 | | |
//! | `test` | | | | |
//! | `debug-images` | | 🔌 | | |
//! | `debug-images` | | 🔌 | | |
//! | `log` | | 🔌 | | Requires extra setup; See [`sentry-log`]'s documentation. |
//! | `debug-logs` | | | ❗ | Requires extra setup; See [`sentry-log`]'s documentation. |
//! | `slog` | | 🔌 | | Requires extra setup; See [`sentry-slog`]'s documentation. |
Expand All @@ -87,11 +87,11 @@
//! - `contexts`: Enables capturing device, OS, and Rust contexts.
//! - `panic`: Enables support for capturing panics.
//! - `transport`: Enables the default transport, which is currently `reqwest` with `native-tls`.
//! - `debug-images`: Enables capturing metadata about the loaded shared libraries.
//!
//! ## Debugging/Testing
//! - `anyhow`: Enables support for the `anyhow` crate.
//! - `test`: Enables testing support.
//! - `debug-images`: Attaches a list of loaded libraries to events (currently only supported on Unix).
//!
//! ## Logging
//! - `log`: Enables support for the `log` crate.
Expand Down
2 changes: 1 addition & 1 deletion sentry/src/transports/surf.rs
Expand Up @@ -32,7 +32,7 @@ impl SurfHttpTransport {
}

fn new_internal(options: &ClientOptions, client: Option<SurfClient>) -> Self {
let mut client = client.unwrap_or_else(SurfClient::new);
let mut client = client.unwrap_or_default();
if options.accept_invalid_certs {
let hc = HttpClient::builder()
.ssl_options(SslOption::DANGER_ACCEPT_INVALID_CERTS)
Expand Down
2 changes: 1 addition & 1 deletion sentry/src/transports/ureq.rs
Expand Up @@ -74,7 +74,7 @@ impl UreqHttpTransport {
}

let mut root_store = RootCertStore::empty();
root_store.add_server_trust_anchors(TLS_SERVER_ROOTS.0.iter().map(|ta| {
root_store.add_trust_anchors(TLS_SERVER_ROOTS.iter().map(|ta| {
OwnedTrustAnchor::from_subject_spki_name_constraints(
ta.subject,
ta.spki,
Expand Down