smithy-rs/rust-runtime/aws-smithy-http-server
ysaito1001 740edcc6f6
Upgrade MSRV to 1.78.0 (#3800)
## Motivation and Context
Upgrades MSRV to 1.78.0 since the [latest
Rust](https://www.rust-lang.org/) at the time of writing is 1.80.1 (we
try keeping [two releases
behind](https://github.com/awslabs/aws-sdk-rust?tab=readme-ov-file#supported-rust-versions-msrv)).

## Description
In Rust 1.78.0, `clippy` enforces stricter checks in two areas:
- `dead_code`
It seems to be able to uncover more unused code patterns, especially
when different combinations of cargo features are enabled
- `empty_docs`
Prior to 1.78.0, the codegen used to render the following empty docs
`///`, regardless whether the codegen is for the server or for the
client. This is now flagged as `empty_docs` by `clippy`:
```
///
pub(crate) mod XXX {
    ...
}
```

Other than bumping MSRV to 1.78.0, the remaining code changes address
issues related to the fixes mentioned above.

**EDIT:**
`cargo-semver-checks` required an upgrade due to incompatibility issues
following the MSRV upgrade ([example
error](https://github.com/smithy-lang/smithy-rs/actions/runs/10534205294/job/29261105195#step:4:2068)).
Specifically, after updating the MSRV to 1.78.0, the rustdoc version was
upgraded to v28. However, the version of `cargo-semver-checks` we were
using (0.24.1) only supported rustdoc [up to
v27](4bce03d4a6/Cargo.toml (L18)).

To resolve this, we have updated `cargo-semver-checks` to the first
version that supports rustdoc
[v28](94a491f085/Cargo.toml (L18)).

## Testing
Existing tests in CI

## Checklist
<!--- If a checkbox below is not applicable, then please DELETE it
rather than leaving it unchecked -->
- [x] For changes to the smithy-rs codegen or runtime crates, I have
created a changelog entry Markdown file in the `.changelog` directory,
specifying "client," "server," or both in the `applies_to` key.
- [x] For changes to the AWS SDK, generated SDK code, or SDK runtime
crates, I have created a changelog entry Markdown file in the
`.changelog` directory, specifying "aws-sdk-rust" in the `applies_to`
key.

----

_By submitting this pull request, I confirm that you can use, modify,
copy, and redistribute this contribution, under the terms of your
choice._
2024-08-27 15:30:40 +00:00
..
src Upgrade MSRV to 1.78.0 (#3800) 2024-08-27 15:30:40 +00:00
Cargo.toml Upgrade MSRV to 1.78.0 (#3800) 2024-08-27 15:30:40 +00:00
LICENSE Implement FromRequest / ToResponse traits for inputs/outputs/errors. (#839) 2021-11-12 16:27:36 +00:00
README.md Fix repo org move issues (#3166) 2023-11-10 18:51:04 +00:00
additional-ci Add server side HTTP logging layer (#1550) 2022-08-02 21:32:03 +00:00
rustfmt.toml Update to Rust Edition 2021 (#1268) 2022-03-22 21:29:04 +00:00

README.md

aws-smithy-http-server

Server libraries for smithy-rs generated servers.

This crate is part of the AWS SDK for Rust and the smithy-rs code generator. In most cases, it should not be used directly.