switch to edition 2021, bumping msrv to 1.56.0

unfortunately we can't use the new resolver for reasons explained in the readme
This commit is contained in:
Lynne Megido 2021-09-24 17:55:21 +10:00
parent aeb7c05377
commit 35322075ab
Signed by: lynnesbian
GPG key ID: F0A184B5213D9F90
7 changed files with 34 additions and 25 deletions

View file

@ -83,7 +83,7 @@ cleanup-stable:
cleanup-msrv: cleanup-msrv:
extends: cleanup-stable extends: cleanup-stable
image: "rust:1.54.0" image: "rust:1.56.0"
cache: cache:
key: msrv key: msrv
paths: paths:
@ -107,7 +107,7 @@ build-base-stable:
build-base-msrv: build-base-msrv:
extends: build-base-stable extends: build-base-stable
needs: ["cleanup-msrv"] needs: ["cleanup-msrv"]
image: "rust:1.54.0" image: "rust:1.56.0"
cache: cache:
key: msrv key: msrv
paths: paths:
@ -133,7 +133,7 @@ build-stable:
build-msrv: build-msrv:
extends: build-stable extends: build-stable
needs: ["build-base-msrv"] needs: ["build-base-msrv"]
image: "rust:1.54.0" image: "rust:1.56.0"
cache: cache:
key: msrv key: msrv
paths: paths:
@ -158,7 +158,7 @@ test-stable:
test-msrv: test-msrv:
extends: test-stable extends: test-stable
image: "rust:1.54.0" image: "rust:1.56.0"
needs: ["build-msrv"] needs: ["build-msrv"]
cache: cache:
key: msrv key: msrv

View file

@ -6,7 +6,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
## Unreleased ## Unreleased
## Changed ## Changed
- MSRV is now 1.54.0 - MSRV is now 1.56.0
- A few dependencies have been updated, most notably [`clap`] - A few dependencies have been updated, most notably [`clap`]
### Added ### Added
- AIFF (Audio Interchange File Format, a PCM audio format like WAV) detection to [`infer`] - AIFF (Audio Interchange File Format, a PCM audio format like WAV) detection to [`infer`]

25
Cargo.lock generated
View file

@ -27,9 +27,9 @@ checksum = "cdb031dd78e28731d87d56cc8ffef4a8f36ca26c38fe2de700543e627f8a464a"
[[package]] [[package]]
name = "bitflags" name = "bitflags"
version = "1.3.2" version = "1.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" checksum = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693"
[[package]] [[package]]
name = "byteorder" name = "byteorder"
@ -346,10 +346,11 @@ checksum = "2a60c7ce501c71e03a9c9c0d35b861413ae925bd979cc7a4e30d060069aaac8d"
[[package]] [[package]]
name = "new_mime_guess" name = "new_mime_guess"
version = "3.0.0" version = "3.0.1"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c8c8e990db7ba41ce2b4b3a38380a0f3385d61c55b3d4999d6e00389562a79a2" checksum = "b101054f57b10576d116bc0da7ce8b05362b4490b0d21c7748395eaaf9359047"
dependencies = [ dependencies = [
"bitflags",
"mime", "mime",
"phf", "phf",
"phf_codegen", "phf_codegen",
@ -391,18 +392,18 @@ checksum = "6acbef58a60fe69ab50510a55bc8cdd4d6cf2283d27ad338f54cb52747a9cf2d"
[[package]] [[package]]
name = "phf" name = "phf"
version = "0.9.0" version = "0.10.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b2ac8b67553a7ca9457ce0e526948cad581819238f4a9d1ea74545851fa24f37" checksum = "b9fc3db1018c4b59d7d582a739436478b6035138b6aecbce989fc91c3e98409f"
dependencies = [ dependencies = [
"phf_shared", "phf_shared",
] ]
[[package]] [[package]]
name = "phf_codegen" name = "phf_codegen"
version = "0.9.0" version = "0.10.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "963adb11cf22ee65dfd401cf75577c1aa0eca58c0b97f9337d2da61d3e640503" checksum = "4fb1c3a8bc4dd4e5cfce29b44ffc14bedd2ee294559a294e2a4d4c9e9a6a13cd"
dependencies = [ dependencies = [
"phf_generator", "phf_generator",
"phf_shared", "phf_shared",
@ -410,9 +411,9 @@ dependencies = [
[[package]] [[package]]
name = "phf_generator" name = "phf_generator"
version = "0.9.1" version = "0.10.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d43f3220d96e0080cc9ea234978ccd80d904eafb17be31bb0f76daaea6493082" checksum = "5d5285893bb5eb82e6aaf5d59ee909a06a16737a8970984dd7746ba9283498d6"
dependencies = [ dependencies = [
"phf_shared", "phf_shared",
"rand", "rand",
@ -420,9 +421,9 @@ dependencies = [
[[package]] [[package]]
name = "phf_shared" name = "phf_shared"
version = "0.9.0" version = "0.10.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a68318426de33640f02be62b4ae8eb1261be2efbc337b60c54d845bf4484e0d9" checksum = "b6796ad771acdc0123d2a88dc428b5e38ef24456743ddb1744ed628f9815c096"
dependencies = [ dependencies = [
"siphasher", "siphasher",
"unicase", "unicase",

View file

@ -3,16 +3,22 @@ name = "fif"
description = "A command-line tool for detecting and optionally correcting files with incorrect extensions." description = "A command-line tool for detecting and optionally correcting files with incorrect extensions."
version = "0.3.6" version = "0.3.6"
authors = ["Lynnesbian <lynne@bune.city>"] authors = ["Lynnesbian <lynne@bune.city>"]
edition = "2018" edition = "2021"
license = "GPL-3.0-or-later" license = "GPL-3.0-or-later"
rust-version = "1.54.0" rust-version = "1.56.0"
repository = "https://gitlab.com/Lynnesbian/fif" repository = "https://gitlab.com/Lynnesbian/fif"
readme = "README.md" readme = "README.md"
keywords = ["mime", "mimetype", "utilities", "tools"] keywords = ["mime", "mimetype", "utilities", "tools"]
categories = ["command-line-utilities"] categories = ["command-line-utilities"]
exclude = [".idea/", "*.toml", "!Cargo.toml", "*.sh", "*.py", "*.yml", "*.md", ".mailmap", "pkg/"] exclude = [".idea/", "*.toml", "!Cargo.toml", "*.sh", "*.py", "*.yml", "*.md", ".mailmap", "pkg/"]
#resolver = "2"
#license-file = "LICENSE" # unfortunately, we can't use resolver v2 right now, because one of the phf crates (i think it's phf_codegen) that are
# pulled in by new_mime_guess' phf-map feature doesn't enable phf_shared's unicase feature when it should.
# this causes new_mime_guess' build.rs to fail with errors about PhfHash traits and such not being implemented for
# UniCase<&str>.
# there's no way to fix this in either fif or new_mime_guess itself, short of a patch (which can't be used on
# crates.io), so we'll have to disable the new resolver for now :(
resolver = "1"
[badges] [badges]
maintenance = { status = "experimental" } maintenance = { status = "experimental" }
@ -83,4 +89,4 @@ opt-level = 3
opt-level = 3 opt-level = 3
[package.metadata] [package.metadata]
msrv = "1.54.0" msrv = "1.56.0"

View file

@ -7,7 +7,7 @@
[![Version](https://img.shields.io/crates/v/fif.svg?logo=rust&style=flat-square) [![Version](https://img.shields.io/crates/v/fif.svg?logo=rust&style=flat-square)
](https://crates.io/crates/fif) ](https://crates.io/crates/fif)
[![Minimum Supported Rust Version](https://img.shields.io/badge/msrv-1.54.0-orange?logo=rust&style=flat-square) [![Minimum Supported Rust Version](https://img.shields.io/badge/msrv-1.56.0-orange?logo=rust&style=flat-square)
](https://gitlab.com/Lynnesbian/fif/-/blob/master/README.md#version-policy) ](https://gitlab.com/Lynnesbian/fif/-/blob/master/README.md#version-policy)
[![License](https://img.shields.io/crates/l/fif.svg?style=flat-square) [![License](https://img.shields.io/crates/l/fif.svg?style=flat-square)
](https://gitlab.com/Lynnesbian/fif/-/blob/master/LICENSE) ](https://gitlab.com/Lynnesbian/fif/-/blob/master/LICENSE)

View file

@ -1,3 +1,3 @@
# avoid-breaking-exported-api = false # only available on nightly for now # avoid-breaking-exported-api = false # only available on nightly for now
cognitive-complexity-threshold = 15 cognitive-complexity-threshold = 15
msrv = "1.54.0" msrv = "1.56.0"

View file

@ -24,7 +24,9 @@ def test_versions():
print("Couldn't find rust-version") print("Couldn't find rust-version")
exit(1) exit(1)
versions = [match.group(1), "stable", "nightly"] # versions = [match.group(1), "stable", "nightly"]
# remove this when 1.56 is released
versions = ["beta", "nightly"]
backends = ["xdg-mime", "infer"] backends = ["xdg-mime", "infer"]
upto = 1 upto = 1