fix #187 via a dependency upgrade

I did a full `cargo upgrade` and fixed what it broke:

*   a couple things for the latest protobuf 3.0 alphas
    (note alphas don't promise API stability)
*   new minimum supported Rust version

This should have some other nice effects: parking_lot now uses inline
assembler, tokio has gotten faster, etc.
This commit is contained in:
Scott Lamb 2022-03-08 11:22:01 -08:00
parent 3c1171e405
commit 9d70d68710
8 changed files with 383 additions and 274 deletions

View File

@ -11,7 +11,7 @@ jobs:
name: Rust ${{ matrix.rust }}
strategy:
matrix:
rust: [ "stable", "1.53", "nightly" ]
rust: [ "stable", "1.56", "nightly" ]
include:
- rust: nightly
extra_args: "--features nightly --benches"

View File

@ -8,6 +8,9 @@ Each release is tagged in Git and on the Docker repository
## unreleased
* bump minimum Rust version from 1.53 to 1.56.
* fix [#187](https://github.com/scottlamb/moonfire-nvr/issues/187):
incompatibility with cameras that (incorrectly) omit the SDP origin line.
* fix [#182](https://github.com/scottlamb/moonfire-nvr/issues/182): error
on upgrade from schema 6 to schema 7 when a camera's `onvif_host` is empty.
* API bugfix: in the `GET /api/` response, include `ext` streams if

View File

@ -216,7 +216,7 @@ following command:
$ brew install ffmpeg node
```
Next, you need Rust 1.53+ and Cargo. The easiest way to install them is by
Next, you need Rust 1.56+ and Cargo. The easiest way to install them is by
following the instructions at [rustup.rs](https://www.rustup.rs/). Avoid
your Linux distribution's Rust packages, which tend to be too old.
(At least on Debian-based systems; Arch and Gentoo might be okay.)

634
server/Cargo.lock generated

File diff suppressed because it is too large Load Diff

View File

@ -44,7 +44,7 @@ memchr = "2.0.2"
mylog = { git = "https://github.com/scottlamb/mylog" }
nix = "0.23.0"
nom = "7.0.0"
parking_lot = { version = "0.11.1", features = [] }
parking_lot = "0.12.0"
password-hash = "0.3.2"
protobuf = "3.0.0-alpha.1"
reffers = "0.6.0"

View File

@ -18,7 +18,7 @@ futures = "0.3"
lazy_static = "1.0"
libc = "0.2"
log = "0.4"
parking_lot = { version = "0.11.1", features = [] }
parking_lot = "0.12.0"
nom = "7.0.0"
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"

View File

@ -31,7 +31,7 @@ mylog = { git = "https://github.com/scottlamb/mylog" }
nix = "0.23.0"
num-rational = { version = "0.4.0", default-features = false, features = ["std"] }
odds = { version = "0.4.0", features = ["std-vec"] }
parking_lot = { version = "0.11.1", features = [] }
parking_lot = "0.12.0"
pretty-hex = "0.2.1"
protobuf = "3.0.0-alpha.1"
ring = "0.16.2"
@ -49,4 +49,4 @@ uuid = { version = "0.8", features = ["serde", "std", "v4"] }
itertools = "0.10.0"
[build-dependencies]
protobuf-codegen-pure = "3.0.0-alpha.1"
protobuf-codegen = "3.0.0-alpha.1"

View File

@ -3,13 +3,11 @@
// SPDX-License-Identifier: GPL-v3.0-or-later WITH GPL-3.0-linking-exception.
fn main() -> Result<(), Box<dyn std::error::Error>> {
Ok(protobuf_codegen_pure::Codegen::new()
Ok(protobuf_codegen::Codegen::new()
.pure()
.out_dir(std::env::var("OUT_DIR")?)
.inputs(&["proto/schema.proto"])
.include("proto")
.customize(protobuf_codegen_pure::Customize {
gen_mod_rs: Some(true),
..Default::default()
})
.customize(protobuf_codegen::Customize::default().gen_mod_rs(true))
.run()?)
}