From d90e63b9dd8c08467829d6cf6b4ec5aa175b6eb8 Mon Sep 17 00:00:00 2001
From: Parker Timmerman <parker.timmerman@materialize.com>
Date: Thu, 15 Aug 2024 17:05:54 -0400
Subject: [PATCH] rust: Upgrade to v1.80.1 to pickup fix (#29038)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Rust previously had a bug related to comparison of floats, see
https://github.com/rust-lang/rust/issues/128243.

### Motivation

Upgrades Rust to pickup fix

### Checklist

- [x] This PR has adequate test coverage / QA involvement has been duly
considered. ([trigger-ci for additional test/nightly
runs](https://trigger-ci.dev.materialize.com/))
- [x] This PR has an associated up-to-date [design
doc](https://github.com/MaterializeInc/materialize/blob/main/doc/developer/design/README.md),
is a design doc
([template](https://github.com/MaterializeInc/materialize/blob/main/doc/developer/design/00000000_template.md)),
or is sufficiently small to not require a design.
  <!-- Reference the design in the description. -->
- [x] If this PR evolves [an existing `$T ⇔ Proto$T`
mapping](https://github.com/MaterializeInc/materialize/blob/main/doc/developer/command-and-response-binary-encoding.md)
(possibly in a backwards-incompatible way), then it is tagged with a
`T-proto` label.
- [x] If this PR will require changes to cloud orchestration or tests,
there is a companion cloud PR to account for those changes that is
tagged with the release-blocker label
([example](https://github.com/MaterializeInc/cloud/pull/5021)).
<!-- Ask in #team-cloud on Slack if you need help preparing the cloud
PR. -->
- [x] If this PR includes major [user-facing behavior
changes](https://github.com/MaterializeInc/materialize/blob/main/doc/developer/guide-changes.md#what-changes-require-a-release-note),
I have pinged the relevant PM to schedule a changelog post.
---
 Cargo.toml                                    |  2 +-
 WORKSPACE                                     | 32 ++++-----
 bin/ci-builder                                |  2 +-
 bin/lint-versions                             |  2 +-
 .../cxxbridge-cmd/Cargo.cxxbridge-cmd.lock    | 69 +++++++++++++++++--
 5 files changed, 81 insertions(+), 26 deletions(-)

diff --git a/Cargo.toml b/Cargo.toml
index 2203223b928cf..805eb0113cfdc 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -229,7 +229,7 @@ resolver = "2"
 
 [workspace.package]
 edition = "2021"
-rust-version = "1.80.0"
+rust-version = "1.80.1"
 
 [profile.dev]
 split-debuginfo = "unpacked"
diff --git a/WORKSPACE b/WORKSPACE
index 6330e839d9385..0c453f5124f6a 100644
--- a/WORKSPACE
+++ b/WORKSPACE
@@ -230,32 +230,32 @@ rules_rust_dependencies()
 # Fetch and register the relevant Rust toolchains. We use a custom macro that
 # depends on `rules_rust` but cuts down on bloat from their defaults.
 
-RUST_VERSION = "1.80.0"
+RUST_VERSION = "1.80.1"
 
 load("//misc/bazel/toolchains:rust.bzl", "rust_toolchains")
 rust_toolchains(
     RUST_VERSION,
     {
         "aarch64-apple-darwin": {
-            "rustc": "d34f0f41c6a8314ceb43c237c4b206ec5d14c739c2bef973c9c5b38112462317",
-            "clippy": "e90c733409848078753a30462d945f92b442bfeff4861da4de431c8ccee4570b",
-            "cargo": "fbcfe209260d3ce7f588d5a01985fb93d940a29e359f4cf8e5fdfc4ab01992a9",
-            "llvm-tools": "c159713f530a5d60e9f09662e1829d18d3ad19c5cba42997b4b7eaeebc3845f8",
-            "rust-std": "f1cf42b99fa1a8c2066f10f1cd7f01973a47174b0007f903dcba8734aedc9214",
+            "rustc": "ada84b7c4521b10f54ab73d34916cb45fb68cc928b16c9e1be39f89406b84c86",
+            "clippy": "f1f6772c917008d170e4cdc7ae10e370cfbe11da6105bf5913a1b43ea126b0f1",
+            "cargo": "4649742a7bfc4a46036e47ea057d60bf8301c0299054c9785ee37947b2d1294c",
+            "llvm-tools": "725bb2381dd287fb070a05eb6092fc5b4000ba69eb2cb27790c0f40fd248a56a",
+            "rust-std": "ddd123723fe4576a155ce0190da5f16a2c067cbd5b1a2c23b301592568e5752d",
         },
         "aarch64-unknown-linux-gnu": {
-            "rustc": "4d3d63adeab52cf594e01d5a9f7edcb1c5dddf0065acf0733deea595a780d9bf",
-            "clippy": "68c764dfeaa7ff10abd101d23b3b6386c097d5d47339701ad0badbb2deb48b6c",
-            "cargo": "d3db9209bc5b169075e1055b6bde68f7e8674251e5aaf765a644123783cd2f72",
-            "llvm-tools": "ab8b6d49e08203ff65278e7288e05bb9f993d41b615ce7b5937edb521494ea86",
-            "rust-std": "05a20520e7677c360433bba427fc66060cecbf3c6db168235007a8f57e8208c9",
+            "rustc": "4ca87875f8a23ef1f23d60a958a0dc798e2b8e97bf6782b2ec534026181fa72c",
+            "clippy": "fcda253a6704f612310696f25f161c880f16ec8be6b640ccf5fe26245c822efc",
+            "cargo": "6973b542f54ade0215becd34a06d011e4c35a8091a27ac667d0438ebc45a935e",
+            "llvm-tools": "2574807dcf8a1d68adc57c42c4caa812ac3d54f376b16b536c8073c60877c680",
+            "rust-std": "07238d367cfba20bf80150f725234b877b11bc3ab82d04ed0ccc95375e9cedd8",
         },
         "x86_64-unknown-linux-gnu": {
-            "rustc": "5e01169d11df14ab8ba08cb59dd727edb108e6a73704c166856e3c9d1ddf602c",
-            "clippy": "1de5580cc9c88be835f1ba65fb7ae48ad141e3c7b01a862f3192ec5e9c2c640d",
-            "cargo": "d4c25ff547fdb0991dc621f4c95a8d103ce52dea32bd8ee9bf7bdc8beea3cb58",
-            "llvm-tools": "04165144b5739ab789c598c7f3cf47b91a2def3f14e320c945221c878b0a6127",
-            "rust-std": "965176313044bb69b6dbe1b8709109582557ad6efc99771b2d99fbc54e5dce4c",
+            "rustc": "5c7fce7a0323b8669b4e17ec370b38a5f207fcdcd5c66b83c877b72e252d561e",
+            "clippy": "39253ce4ecb036977686f5a8cc183de295cf280766678201f919c5655e3dd063",
+            "cargo": "863c016fc458b1fa8809d7b66dcccd272f8b6b2e8a42c89b7dff4b619f3d3940",
+            "llvm-tools": "86e441024b0e538ed69fa0098be48592caae6fc28097f7630b906be276c79622",
+            "rust-std": "e7b766fce1cd89c02bde33f8cc3a81f341c52677258a546df2bee1c7090e9fc5",
         },
         "x86_64-apple-darwin": {},
     }
diff --git a/bin/ci-builder b/bin/ci-builder
index 2a5651fd452c2..b790d7cc0fe1d 100755
--- a/bin/ci-builder
+++ b/bin/ci-builder
@@ -16,7 +16,7 @@
 
 set -euo pipefail
 
-NIGHTLY_RUST_DATE=2024-08-01
+NIGHTLY_RUST_DATE=2024-08-14
 
 cd "$(dirname "$0")/.."
 
diff --git a/bin/lint-versions b/bin/lint-versions
index a53f9d8b4ee7e..a65fa4fa12021 100755
--- a/bin/lint-versions
+++ b/bin/lint-versions
@@ -11,5 +11,5 @@
 #
 # lint-versions - Check rust version
 
-grep "rust-version = " Cargo.toml | grep -q "1\.80\.0" || \
+grep "rust-version = " Cargo.toml | grep -q "1\.80\.1" || \
 (echo "Please validate new Rust versions for compilation time performance regressions or ask Team Testing to do so. Afterwards change the tested version in bin/lint-versions" && exit 1)
diff --git a/misc/bazel/rust_deps/cxxbridge-cmd/Cargo.cxxbridge-cmd.lock b/misc/bazel/rust_deps/cxxbridge-cmd/Cargo.cxxbridge-cmd.lock
index 448c291ea8493..6c8bc20092b66 100644
--- a/misc/bazel/rust_deps/cxxbridge-cmd/Cargo.cxxbridge-cmd.lock
+++ b/misc/bazel/rust_deps/cxxbridge-cmd/Cargo.cxxbridge-cmd.lock
@@ -1,5 +1,5 @@
 {
-  "checksum": "ce47a0d13282a9cb60a1a2d25fde0833f16e9d56e0db6603f5e327b5d80db264",
+  "checksum": "f07a4418dc05ac3d16b911c5258e6f5027568253486acfd470bde0c5845725e1",
   "crates": {
     "anstyle 1.0.4": {
       "name": "anstyle",
@@ -47,14 +47,14 @@
       ],
       "license_file": "LICENSE-APACHE"
     },
-    "cc 1.1.8": {
+    "cc 1.1.12": {
       "name": "cc",
-      "version": "1.1.8",
+      "version": "1.1.12",
       "package_url": "https://github.com/rust-lang/cc-rs",
       "repository": {
         "Http": {
-          "url": "https://static.crates.io/crates/cc/1.1.8/download",
-          "sha256": "504bdec147f2cc13c8b57ed9401fd8a147cc66b67ad5cb241394244f2c947549"
+          "url": "https://static.crates.io/crates/cc/1.1.12/download",
+          "sha256": "68064e60dbf1f17005c2fde4d07c16d8baa506fd7ffed8ccab702d93617975c7"
         }
       },
       "targets": [
@@ -76,8 +76,17 @@
         "compile_data_glob": [
           "**"
         ],
+        "deps": {
+          "common": [
+            {
+              "id": "shlex 1.3.0",
+              "target": "shlex"
+            }
+          ],
+          "selects": {}
+        },
         "edition": "2018",
-        "version": "1.1.8"
+        "version": "1.1.12"
       },
       "license": "MIT OR Apache-2.0",
       "license_ids": [
@@ -592,7 +601,7 @@
         "deps": {
           "common": [
             {
-              "id": "cc 1.1.8",
+              "id": "cc 1.1.12",
               "target": "cc"
             }
           ],
@@ -739,6 +748,52 @@
       ],
       "license_file": "LICENSE-APACHE"
     },
+    "shlex 1.3.0": {
+      "name": "shlex",
+      "version": "1.3.0",
+      "package_url": "https://github.com/comex/rust-shlex",
+      "repository": {
+        "Http": {
+          "url": "https://static.crates.io/crates/shlex/1.3.0/download",
+          "sha256": "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64"
+        }
+      },
+      "targets": [
+        {
+          "Library": {
+            "crate_name": "shlex",
+            "crate_root": "src/lib.rs",
+            "srcs": {
+              "allow_empty": true,
+              "include": [
+                "**/*.rs"
+              ]
+            }
+          }
+        }
+      ],
+      "library_target_name": "shlex",
+      "common_attrs": {
+        "compile_data_glob": [
+          "**"
+        ],
+        "crate_features": {
+          "common": [
+            "default",
+            "std"
+          ],
+          "selects": {}
+        },
+        "edition": "2015",
+        "version": "1.3.0"
+      },
+      "license": "MIT OR Apache-2.0",
+      "license_ids": [
+        "Apache-2.0",
+        "MIT"
+      ],
+      "license_file": "LICENSE-APACHE"
+    },
     "strsim 0.10.0": {
       "name": "strsim",
       "version": "0.10.0",