summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWilfred Hughes <me@wilfred.me.uk>2023-07-26 11:34:05 -0700
committerWilfred Hughes <me@wilfred.me.uk>2023-07-26 11:34:05 -0700
commitb3acf481286d427b2c1869a3aee27d52f15b02f4 (patch)
tree27368460ecfde5c84bfb0e849e0eb0a70aab1f9d
parent721ad0863d23fc77ee4ac46f4d485d81b37a9003 (diff)
Bump minimum required Rust version to 1.58
Difftastic is generally conservative about MSRV, and will only increase the version when there is a compelling reason (e.g. major performance improvement, important bug fix in a dependendency). This version increase will enable us to upgrade crossterm to 0.26, which has better detection of terminal width on Windows. I've also clarified MSRV details for other dependencies that cannot currently be upgraded.
-rw-r--r--.github/workflows/deploy_docs.yml2
-rw-r--r--.github/workflows/test.yml14
-rw-r--r--CHANGELOG.md4
-rw-r--r--Cargo.toml12
-rw-r--r--manual/src/installation.md2
-rw-r--r--rust-toolchain.toml2
-rw-r--r--translation/zh-CN/manual-zh-CN/src/installation.md2
7 files changed, 20 insertions, 18 deletions
diff --git a/.github/workflows/deploy_docs.yml b/.github/workflows/deploy_docs.yml
index 947971f50..3fc0387ad 100644
--- a/.github/workflows/deploy_docs.yml
+++ b/.github/workflows/deploy_docs.yml
@@ -27,7 +27,7 @@ jobs:
- name: Install jq
run: sudo apt-get install -y jq
- - uses: dtolnay/rust-toolchain@1.57.0
+ - uses: dtolnay/rust-toolchain@1.58.0
- run: cargo doc
- name: Setup mdBook
diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml
index d99b30fdd..262f57273 100644
--- a/.github/workflows/test.yml
+++ b/.github/workflows/test.yml
@@ -8,7 +8,7 @@ jobs:
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v3
- - uses: dtolnay/rust-toolchain@1.57.0
+ - uses: dtolnay/rust-toolchain@1.58.0
- run: cargo test
# This also runs tests that rely on the MIME database being
# present.
@@ -27,7 +27,7 @@ jobs:
# runs-on: ubuntu-20.04
# steps:
# - uses: actions/checkout@v3
- # - uses: dtolnay/rust-toolchain@1.57.0
+ # - uses: dtolnay/rust-toolchain@1.58.0
# - run: rustup target add aarch64-unknown-linux-gnu
# - run: sudo apt-get install gcc-aarch64-linux-gnu g++-aarch64-linux-gnu
# - run: cargo build --target=aarch64-unknown-linux-gnu
@@ -37,7 +37,7 @@ jobs:
runs-on: macos-latest
steps:
- uses: actions/checkout@v3
- - uses: dtolnay/rust-toolchain@1.57.0
+ - uses: dtolnay/rust-toolchain@1.58.0
- run: cargo test
test_windows:
@@ -45,7 +45,7 @@ jobs:
runs-on: windows-latest
steps:
- uses: actions/checkout@v3
- - uses: dtolnay/rust-toolchain@1.57.0
+ - uses: dtolnay/rust-toolchain@1.58.0
- run: cargo test
regression_test:
@@ -53,7 +53,7 @@ jobs:
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v3
- - uses: dtolnay/rust-toolchain@1.57.0
+ - uses: dtolnay/rust-toolchain@1.58.0
- name: Generate output for all sample files
run: ./sample_files/compare_all.sh
- name: Verify output is unchanged
@@ -64,7 +64,7 @@ jobs:
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v3
- - uses: dtolnay/rust-toolchain@1.57.0
+ - uses: dtolnay/rust-toolchain@1.58.0
- run: cargo package --allow-dirty
fmt:
@@ -72,5 +72,5 @@ jobs:
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v3
- - uses: dtolnay/rust-toolchain@1.57.0
+ - uses: dtolnay/rust-toolchain@1.58.0
- run: cargo fmt --all -- --check
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 02e262d33..3c47ec6b5 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -17,6 +17,10 @@ where e.g. PDF was sometimes incorrectly considered as UTF-8.
Improved handling of delimiters ("nested sliders") in languages that
prefer the outer delimiter, such as JSON and Lisps.
+### Build
+
+Difftastic now requires Rust 1.58 to build.
+
## 0.48 (released 12th July 2023)
### Parsing
diff --git a/Cargo.toml b/Cargo.toml
index 9940b0536..262fb030e 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -9,7 +9,7 @@ authors = ["Wilfred Hughes <me@wilfred.me.uk>"]
keywords = ["diff", "syntax"]
categories = ["development-tools", "command-line-utilities", "parser-implementations"]
edition = "2018"
-rust-version = "1.57.0"
+rust-version = "1.58.0"
include = [
"/build.rs",
"/src/",
@@ -28,7 +28,7 @@ pkg-url = "{ repo }/releases/download/{ version }/difft-{ target }.{ archive-for
pkg-fmt = "zip"
[dependencies]
-# This is the last version that supports rust 1.57, regex 1.8 requires rust 1.60.
+# regex 1.8 requires rust 1.60.
regex = ">= 1.7, < 1.8"
clap = { version = "3.1.8", features = ["cargo", "env", "wrap_help"] }
itertools = "0.10.1"
@@ -36,8 +36,7 @@ typed-arena = "2.0.1"
rustc-hash = "1.1.0"
strsim = "0.10.0"
lazy_static = "1.4.0"
-# This is the last version that supports 1.57, tree-sitter 0.20.10
-# requires rust 1.65.
+# tree-sitter 0.20.10 requires rust 1.65.
tree-sitter = "0.20.9"
libc = "0.2.108"
log = "0.4.14"
@@ -64,10 +63,9 @@ strum = { version = "0.25", features = ["derive"] }
hashbrown = "0.12.3"
[dev-dependencies]
-# This is the last version of assert_cmd that supports rustc 1.57.
+# assert_cmd 2.0.6 requires rust 1.60
assert_cmd = ">= 2, <= 2.0.5"
-# Predicates is a dependency of assert_cmd, but needs pinning to the
-# last version that supports rustc 1.57.
+# Predicates is a dependency of assert_cmd, but 2.1.2 requires rust 1.60.
predicates = ">= 2, <= 2.1.1"
pretty_assertions = "1.3.0"
diff --git a/manual/src/installation.md b/manual/src/installation.md
index 94b9212dc..79901361f 100644
--- a/manual/src/installation.md
+++ b/manual/src/installation.md
@@ -28,7 +28,7 @@ $ brew install difftastic
Difftastic is written in Rust, so you will need Rust installed. I
recommend [rustup](https://rustup.rs/) to install Rust. Difftastic
-requires Rust version 1.57 or later.
+requires Rust version 1.58 or later.
You will also need a C++ compiler that supports C++14. If you're using
GCC, you need at least version 8.
diff --git a/rust-toolchain.toml b/rust-toolchain.toml
index e9fd115f2..f3e491959 100644
--- a/rust-toolchain.toml
+++ b/rust-toolchain.toml
@@ -1,4 +1,4 @@
[toolchain]
-channel = "1.57"
+channel = "1.58"
components = ["rustfmt"]
profile = "minimal"
diff --git a/translation/zh-CN/manual-zh-CN/src/installation.md b/translation/zh-CN/manual-zh-CN/src/installation.md
index 61751b8b8..9d51ffc92 100644
--- a/translation/zh-CN/manual-zh-CN/src/installation.md
+++ b/translation/zh-CN/manual-zh-CN/src/installation.md
@@ -22,7 +22,7 @@ $ brew install difftastic
### 要求
-Difftastic 使用 Rust 编写,所以你需安装 Rust。我推荐使用 [rustup](https://rustup.rs/) 安装 Rust。Difftastic 要求 Rust 版本不低于 1.57。
+Difftastic 使用 Rust 编写,所以你需安装 Rust。我推荐使用 [rustup](https://rustup.rs/) 安装 Rust。Difftastic 要求 Rust 版本不低于 1.58。
你也需要一个支持 C++14 的 C++ 编译器。如果你正在使用 GCC,则 GCC 版本至少为 8。