Repository: RustPython/RustPython (language: rust)

Issue:
LALRPOP warns incompatibility to future version of Rust
Starting with the Rust 1.68 release, we will start seeing this error:

```text
warning: the following packages contain code that will be rejected by a future version of Rust: lalrpop v0.19.8
```

___

_Feel free to air your grievances about the things you find lacking from LALRPOP._


Discussion / hints:
@youknowone has already opened a PR upstream for this (and so have others, I think there's three PRs open for this atm). It seems LALRPOP is also used in rustup https://github.com/rust-lang/rustup/issues/3213 so I'm hoping this might result in some activity on it.

Fix patch:
diff --git a/Cargo.lock b/Cargo.lock
index 2a90543da6..11f96fe5d7 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -932,6 +932,12 @@ dependencies = [
  "libc",
 ]
 
+[[package]]
+name = "hermit-abi"
+version = "0.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fed44880c466736ef9a5c5b5facefb5ed0785676d0c02d612db14e54f0d84286"
+
 [[package]]
 name = "hex"
 version = "0.4.3"
@@ -1014,6 +1020,18 @@ dependencies = [
  "syn",
 ]
 
+[[package]]
+name = "is-terminal"
+version = "0.4.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8687c819457e979cc940d09cb16e42a1bf70aa6b60a549de6d3a62a0ee90c69e"
+dependencies = [
+ "hermit-abi 0.3.1",
+ "io-lifetimes",
+ "rustix",
+ "windows-sys 0.45.0",
+]
+
 [[package]]
 name = "itertools"
 version = "0.10.5"
@@ -1049,15 +1067,15 @@ dependencies = [
 
 [[package]]
 name = "lalrpop"
-version = "0.19.8"
+version = "0.19.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b30455341b0e18f276fa64540aff54deafb54c589de6aca68659c63dd2d5d823"
+checksum = "f34313ec00c2eb5c3c87ca6732ea02dcf3af99c3ff7a8fb622ffb99c9d860a87"
 dependencies = [
  "ascii-canvas",
- "atty",
  "bit-set",
  "diff",
  "ena",
+ "is-terminal",
  "itertools",
  "lalrpop-util",
  "petgraph",
@@ -1072,9 +1090,9 @@ dependencies = [
 
 [[package]]
 name = "lalrpop-util"
-version = "0.19.8"
+version = "0.19.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bcf796c978e9b4d983414f4caedc9273aa33ee214c5b887bd55fde84c85d2dc4"
+checksum = "e5c1f7869c94d214466c5fd432dfed12c379fd87786768d36455892d46b18edd"
 dependencies = [
  "regex",
 ]
diff --git a/compiler/parser/Cargo.toml b/compiler/parser/Cargo.toml
index 1cb8074667..0568fbb23c 100644
--- a/compiler/parser/Cargo.toml
+++ b/compiler/parser/Cargo.toml
@@ -14,7 +14,7 @@ serde = ["dep:serde", "rustpython-compiler-core/serde"]
 
 [build-dependencies]
 anyhow = { workspace = true }
-lalrpop = { version = "0.19.8", optional = true }
+lalrpop = { version = "0.19.9", optional = true }
 phf_codegen = "0.11.1"
 tiny-keccak = { version = "2", features = ["sha3"] }
 


Test patch: