diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index aa6e28f7f917..651a0af550b2 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -62,7 +62,7 @@ jobs: - uses: actions/checkout@v4 - uses: dtolnay/rust-toolchain@master with: - toolchain: 1.80.0 + toolchain: 1.81.0 - run: cargo build -p rerun diff --git a/BUILD.md b/BUILD.md index 24aa759a8fe3..161679017155 100644 --- a/BUILD.md +++ b/BUILD.md @@ -23,12 +23,12 @@ cd rerun Now install the `pixi` package manager: -Make sure `cargo --version` prints `1.80.0` once you are done. +Make sure `cargo --version` prints `1.81.0` once you are done. If you are using an Apple-silicon Mac (M1, M2), make sure `rustc -vV` outputs `host: aarch64-apple-darwin`. If not, this should fix it: ```sh -rustup set default-host aarch64-apple-darwin && rustup install 1.80.0 +rustup set default-host aarch64-apple-darwin && rustup install 1.81.0 ``` ## Git-lfs diff --git a/Cargo.toml b/Cargo.toml index eb00eb01b02a..3b001f0d8032 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -30,7 +30,7 @@ include = [ ] license = "MIT OR Apache-2.0" repository = "https://github.com/rerun-io/rerun" -rust-version = "1.80" +rust-version = "1.81" version = "0.22.0-alpha.1+dev" [workspace.dependencies] @@ -383,6 +383,7 @@ rust_2021_prelude_collisions = "warn" semicolon_in_expressions_from_macros = "warn" trivial_numeric_casts = "warn" unsafe_op_in_unsafe_fn = "warn" # `unsafe_op_in_unsafe_fn` may become the default in future Rust versions: https://github.com/rust-lang/rust/issues/71668 +unexpected_cfgs = "deny" unused_extern_crates = "warn" unused_import_braces = "warn" unused_lifetimes = "warn" @@ -467,7 +468,6 @@ match_same_arms = "warn" match_wild_err_arm = "warn" match_wildcard_for_single_variants = "warn" mem_forget = "warn" -mismatched_target_os = "warn" mismatching_type_param_order = "warn" missing_enforced_import_renames = "warn" missing_safety_doc = "warn" @@ -496,6 +496,7 @@ ref_option_ref = "warn" rest_pat_in_fully_bound_structs = "warn" same_functions_in_if_condition = "warn" semicolon_if_nothing_returned = "warn" +set_contains_or_insert = "warn" should_panic_without_expect = "warn" single_char_pattern = "warn" single_match_else = "warn" diff --git a/clippy.toml b/clippy.toml index b9f05c287f9e..ec39e9871d72 100644 --- a/clippy.toml +++ b/clippy.toml @@ -3,7 +3,7 @@ # ----------------------------------------------------------------------------- # Section identical to the main scripts/clippy_wasm/clippy.toml: -msrv = "1.80" +msrv = "1.81" allow-unwrap-in-tests = true diff --git a/crates/build/re_dev_tools/src/build_web_viewer/lib.rs b/crates/build/re_dev_tools/src/build_web_viewer/lib.rs index 3a0973bc56bc..8fa7c622d433 100644 --- a/crates/build/re_dev_tools/src/build_web_viewer/lib.rs +++ b/crates/build/re_dev_tools/src/build_web_viewer/lib.rs @@ -124,7 +124,7 @@ pub fn build( cmd.arg("--no-default-features"); } if !features.is_empty() { - cmd.arg(&format!("--features={features}")); + cmd.arg(format!("--features={features}")); } if profile == Profile::Release { cmd.arg("--release"); diff --git a/crates/utils/re_analytics/src/lib.rs b/crates/utils/re_analytics/src/lib.rs index a0a10c8e7b0d..709f08f27345 100644 --- a/crates/utils/re_analytics/src/lib.rs +++ b/crates/utils/re_analytics/src/lib.rs @@ -217,12 +217,13 @@ pub struct Analytics { fn load_config() -> Result { let config = match Config::load() { Ok(config) => config, - #[allow(unused_variables)] + Err(err) => { // NOTE: This will cause the first run disclaimer to show up again on native, // and analytics will be disabled for the rest of the session. - #[cfg(not(target_arch = "wasm32"))] - re_log::warn!("failed to load analytics config file: {err}"); + if !cfg!(target_arch = "wasm32") { + re_log::warn!("failed to load analytics config file: {err}"); + } None } }; diff --git a/crates/utils/re_crash_handler/src/lib.rs b/crates/utils/re_crash_handler/src/lib.rs index 9efe2c28aa69..781954fb971b 100644 --- a/crates/utils/re_crash_handler/src/lib.rs +++ b/crates/utils/re_crash_handler/src/lib.rs @@ -28,69 +28,72 @@ pub fn install_crash_handlers(build_info: BuildInfo) { fn install_panic_hook(_build_info: BuildInfo) { let previous_panic_hook = std::panic::take_hook(); - std::panic::set_hook(Box::new(move |panic_info: &std::panic::PanicInfo<'_>| { - let callstack = callstack_from(&["panicking::panic_fmt\n"]); - - let file_line = panic_info.location().map(|location| { - let file = anonymize_source_file_path(&std::path::PathBuf::from(location.file())); - format!("{file}:{}", location.line()) - }); - - let msg = panic_info_message(panic_info); - - if let Some(msg) = &msg { - // Print our own panic message. - // Our formatting is nicer than `std` since we shorten the file paths (for privacy reasons). - // This also makes it easier for users to copy-paste the callstack into an issue - // without having any sensitive data in it. - - let thread = std::thread::current(); - let thread_name = thread - .name() - .map_or_else(|| format!("{:?}", thread.id()), |name| name.to_owned()); - - eprintln!("\nthread '{thread_name}' panicked at '{msg}'"); - if let Some(file_line) = &file_line { - eprintln!("{file_line}"); + std::panic::set_hook(Box::new( + move |panic_info: &std::panic::PanicHookInfo<'_>| { + let callstack = callstack_from(&["panicking::panic_fmt\n"]); + + let file_line = panic_info.location().map(|location| { + let file = anonymize_source_file_path(&std::path::PathBuf::from(location.file())); + format!("{file}:{}", location.line()) + }); + + let msg = panic_info_message(panic_info); + + if let Some(msg) = &msg { + // Print our own panic message. + // Our formatting is nicer than `std` since we shorten the file paths (for privacy reasons). + // This also makes it easier for users to copy-paste the callstack into an issue + // without having any sensitive data in it. + + let thread = std::thread::current(); + let thread_name = thread + .name() + .map_or_else(|| format!("{:?}", thread.id()), |name| name.to_owned()); + + eprintln!("\nthread '{thread_name}' panicked at '{msg}'"); + if let Some(file_line) = &file_line { + eprintln!("{file_line}"); + } + eprintln!("stack backtrace:\n{callstack}"); + } else { + // This prints the panic message and callstack: + (*previous_panic_hook)(panic_info); } - eprintln!("stack backtrace:\n{callstack}"); - } else { - // This prints the panic message and callstack: - (*previous_panic_hook)(panic_info); - } - econtext::print_econtext(); // Print additional error context, if any + econtext::print_econtext(); // Print additional error context, if any - eprintln!( - "\n\ + eprintln!( + "\n\ Troubleshooting Rerun: https://www.rerun.io/docs/getting-started/troubleshooting \n\ Report bugs: https://github.com/rerun-io/rerun/issues" - ); + ); - #[cfg(feature = "analytics")] - { - if let Ok(analytics) = re_analytics::Analytics::new(std::time::Duration::from_millis(1)) + #[cfg(feature = "analytics")] { - analytics.record(re_analytics::event::CrashPanic { - build_info: _build_info, - callstack, - // Don't include panic message, because it can contain sensitive information, - // e.g. `panic!("Couldn't read {sensitive_file_path}")`. - message: None, - file_line, - }); - - std::thread::sleep(std::time::Duration::from_secs(1)); // Give analytics time to send the event + if let Ok(analytics) = + re_analytics::Analytics::new(std::time::Duration::from_millis(1)) + { + analytics.record(re_analytics::event::CrashPanic { + build_info: _build_info, + callstack, + // Don't include panic message, because it can contain sensitive information, + // e.g. `panic!("Couldn't read {sensitive_file_path}")`. + message: None, + file_line, + }); + + std::thread::sleep(std::time::Duration::from_secs(1)); // Give analytics time to send the event + } } - } - // We compile with `panic = "abort"`, but we don't want to report the same problem twice, so just exit: - #[allow(clippy::exit)] - std::process::exit(102); - })); + // We compile with `panic = "abort"`, but we don't want to report the same problem twice, so just exit: + #[allow(clippy::exit)] + std::process::exit(102); + }, + )); } -fn panic_info_message(panic_info: &std::panic::PanicInfo<'_>) -> Option { +fn panic_info_message(panic_info: &std::panic::PanicHookInfo<'_>) -> Option { // `panic_info.message` is unstable, so this is the recommended way of getting // the panic message out. We need both the `&str` and `String` variants. diff --git a/crates/viewer/re_ui/src/design_tokens.rs b/crates/viewer/re_ui/src/design_tokens.rs index 125e64989d93..aa740ce30da4 100644 --- a/crates/viewer/re_ui/src/design_tokens.rs +++ b/crates/viewer/re_ui/src/design_tokens.rs @@ -15,7 +15,7 @@ pub struct DesignTokens { /// Color table for all colors used in the UI. /// /// Loaded at startup from `design_tokens.json`. - color_table: ColorTable, + pub color_table: ColorTable, // TODO(ab): get rid of these, they should be function calls like the rest. pub top_bar_color: egui::Color32, diff --git a/crates/viewer/re_ui/src/lib.rs b/crates/viewer/re_ui/src/lib.rs index 3bbc851676fb..ba9b22dbfa33 100644 --- a/crates/viewer/re_ui/src/lib.rs +++ b/crates/viewer/re_ui/src/lib.rs @@ -19,7 +19,7 @@ pub mod zoom_pan_area; use egui::NumExt as _; pub use self::{ - color_table::{ColorToken, Hue, Scale}, + color_table::{ColorTable, ColorToken, Hue, Scale}, command::{UICommand, UICommandSender}, command_palette::CommandPalette, context_ext::ContextExt, diff --git a/crates/viewer/re_view_graph/src/graph/mod.rs b/crates/viewer/re_view_graph/src/graph/mod.rs index 4ddb4c969087..35f5c5f43750 100644 --- a/crates/viewer/re_view_graph/src/graph/mod.rs +++ b/crates/viewer/re_view_graph/src/graph/mod.rs @@ -48,14 +48,6 @@ impl Node { } } - /// The original [`components::GraphNode`] id that was logged by the user. - pub fn graph_node(&self) -> &components::GraphNode { - match self { - Self::Explicit { instance, .. } => &instance.graph_node, - Self::Implicit { graph_node, .. } => graph_node, - } - } - pub fn label(&self) -> &DrawableLabel { match self { Self::Explicit { label, .. } | Self::Implicit { label, .. } => label, @@ -81,6 +73,7 @@ pub struct Graph { entity: EntityPath, nodes: Vec, edges: Vec, + #[expect(unused)] kind: GraphType, } @@ -110,21 +103,19 @@ impl Graph { let (edges, kind) = if let Some(data) = edge_data { for edge in &data.edges { - if !seen.contains(&edge.source_index) { + if seen.insert(edge.source_index) { nodes.push(Node::Implicit { id: edge.source_index, graph_node: edge.source.clone(), label: DrawableLabel::implicit_circle(ui), }); - seen.insert(edge.source_index); } - if !seen.contains(&edge.target_index) { + if seen.insert(edge.target_index) { nodes.push(Node::Implicit { id: edge.target_index, graph_node: edge.target.clone(), label: DrawableLabel::implicit_circle(ui), }); - seen.insert(edge.target_index); } } @@ -155,10 +146,6 @@ impl Graph { &self.edges } - pub fn kind(&self) -> GraphType { - self.kind - } - pub fn entity(&self) -> &EntityPath { &self.entity } diff --git a/crates/viewer/re_view_graph/src/layout/geometry.rs b/crates/viewer/re_view_graph/src/layout/geometry.rs index 52498c900049..0a8e2d306d19 100644 --- a/crates/viewer/re_view_graph/src/layout/geometry.rs +++ b/crates/viewer/re_view_graph/src/layout/geometry.rs @@ -39,6 +39,7 @@ impl EdgeGeometry { } /// The starting position of an edge. + #[expect(unused)] pub fn source_pos(&self) -> Pos2 { match self.path { PathGeometry::Line { source, .. } | PathGeometry::CubicBezier { source, .. } => source, @@ -53,6 +54,7 @@ impl EdgeGeometry { } /// The direction of the edge at the source node (normalized). + #[expect(unused)] pub fn source_arrow_direction(&self) -> Vec2 { use PathGeometry::{CubicBezier, Line}; match self.path { diff --git a/crates/viewer/re_view_graph/src/layout/result.rs b/crates/viewer/re_view_graph/src/layout/result.rs index 85c03a5d33fb..7ed15553187b 100644 --- a/crates/viewer/re_view_graph/src/layout/result.rs +++ b/crates/viewer/re_view_graph/src/layout/result.rs @@ -41,6 +41,7 @@ impl Layout { } /// Gets the shape of an edge in the final layout. + #[expect(unused)] pub fn get_edge(&self, edge: &EdgeId) -> Option<&[EdgeGeometry]> { self.edges.get(edge).map(|es| es.as_slice()) } diff --git a/crates/viewer/re_view_graph/src/ui/state.rs b/crates/viewer/re_view_graph/src/ui/state.rs index e15ec96afb3c..79c0221174e0 100644 --- a/crates/viewer/re_view_graph/src/ui/state.rs +++ b/crates/viewer/re_view_graph/src/ui/state.rs @@ -82,10 +82,6 @@ impl LayoutState { *self = Self::None; } - pub fn is_none(&self) -> bool { - matches!(self, Self::None) - } - pub fn is_in_progress(&self) -> bool { matches!(self, Self::InProgress { .. }) } diff --git a/crates/viewer/re_view_graph/src/visualizers/nodes.rs b/crates/viewer/re_view_graph/src/visualizers/nodes.rs index b03a0c3121f6..d65e45f15c6f 100644 --- a/crates/viewer/re_view_graph/src/visualizers/nodes.rs +++ b/crates/viewer/re_view_graph/src/visualizers/nodes.rs @@ -41,7 +41,6 @@ pub enum Label { /// A [`NodeInstance`] is the output of the [`NodeVisualizer`] and represents a single node in the graph. #[derive(Clone)] pub struct NodeInstance { - pub graph_node: components::GraphNode, pub instance_index: Instance, pub id: NodeId, pub position: Option, @@ -128,7 +127,6 @@ impl VisualizerSystem for NodeVisualizer { }; NodeInstance { - graph_node: node.clone(), instance_index: instance, id: NodeId::from_entity_node(&data_result.entity_path, node), position: position.map(|[x, y]| egui::Pos2::new(x, y)), diff --git a/crates/viewer/re_view_tensor/src/lib.rs b/crates/viewer/re_view_tensor/src/lib.rs index 19492b29bf34..f6e913430dd0 100644 --- a/crates/viewer/re_view_tensor/src/lib.rs +++ b/crates/viewer/re_view_tensor/src/lib.rs @@ -32,10 +32,12 @@ impl TensorDimension { .collect() } + #[allow(dead_code)] // Used for tests pub fn unnamed(size: u64) -> Self { Self { size, name: None } } + #[allow(dead_code)] // Used for tests pub fn named(size: u64, name: impl Into) -> Self { Self { size, diff --git a/crates/viewer/re_viewer/data/quick_start_guides/rust_connect.md b/crates/viewer/re_viewer/data/quick_start_guides/rust_connect.md index c5b748b7772f..e3facf5f3f64 100644 --- a/crates/viewer/re_viewer/data/quick_start_guides/rust_connect.md +++ b/crates/viewer/re_viewer/data/quick_start_guides/rust_connect.md @@ -10,7 +10,7 @@ Let's try it out in a brand-new Rust project: cargo init cube && cd cube && cargo add rerun --features native_viewer ``` -Note that the Rerun SDK requires a working installation of Rust 1.80+. +Note that the Rerun SDK requires a working installation of Rust 1.81+. ## Logging your own data diff --git a/crates/viewer/re_viewer/data/quick_start_guides/rust_spawn.md b/crates/viewer/re_viewer/data/quick_start_guides/rust_spawn.md index cde772f1aad2..ae2c4aa1cddd 100644 --- a/crates/viewer/re_viewer/data/quick_start_guides/rust_spawn.md +++ b/crates/viewer/re_viewer/data/quick_start_guides/rust_spawn.md @@ -10,7 +10,7 @@ Let's try it out in a brand-new Rust project: cargo init cube && cd cube && cargo add rerun ``` -Note that the Rerun SDK requires a working installation of Rust 1.80+. +Note that the Rerun SDK requires a working installation of Rust 1.81+. ## Logging your own data diff --git a/docs/content/getting-started/installing-viewer.md b/docs/content/getting-started/installing-viewer.md index 55ebc55e8ab8..89aac23fed2b 100644 --- a/docs/content/getting-started/installing-viewer.md +++ b/docs/content/getting-started/installing-viewer.md @@ -40,7 +40,7 @@ There are many ways to install the viewer. Please pick whatever works best for y - Download `rerun-cli` for your platform from the [GitHub Release artifacts](https://github.com/rerun-io/rerun/releases/latest/). - Via Cargo - `cargo binstall rerun-cli` - download binaries via [`cargo binstall`](https://github.com/cargo-bins/cargo-binstall) - - `cargo install rerun-cli --locked` - build it from source (this requires Rust 1.80+) + - `cargo install rerun-cli --locked` - build it from source (this requires Rust 1.81+) - Together with the Rerun [Python SDK](./quick-start/python.md): - `pip3 install rerun-sdk` - download it via pip - `conda install -c conda-forge rerun-sdk` - download via Conda diff --git a/docs/content/getting-started/quick-start/rust.md b/docs/content/getting-started/quick-start/rust.md index c79bc34db7c2..69f92ff3c9ce 100644 --- a/docs/content/getting-started/quick-start/rust.md +++ b/docs/content/getting-started/quick-start/rust.md @@ -5,7 +5,7 @@ order: 3 ## Setup -The Rerun SDK for Rust requires a working installation of Rust 1.80+. +The Rerun SDK for Rust requires a working installation of Rust 1.81+. After you have [installed the viewer](../installing-viewer.md#installing-the-viewer) you can simply add [the Rerun crate](https://crates.io/crates/rerun) to your project with `cargo add rerun`. diff --git a/examples/rust/clock/Cargo.toml b/examples/rust/clock/Cargo.toml index f898f5799c9a..1d27cfce16ef 100644 --- a/examples/rust/clock/Cargo.toml +++ b/examples/rust/clock/Cargo.toml @@ -2,7 +2,7 @@ name = "clock" version = "0.22.0-alpha.1+dev" edition = "2021" -rust-version = "1.80" +rust-version = "1.81" license = "MIT OR Apache-2.0" publish = false diff --git a/examples/rust/custom_data_loader/Cargo.toml b/examples/rust/custom_data_loader/Cargo.toml index 4a00a1cff0fa..cbdf1c81a6b0 100644 --- a/examples/rust/custom_data_loader/Cargo.toml +++ b/examples/rust/custom_data_loader/Cargo.toml @@ -2,7 +2,7 @@ name = "custom_data_loader" version = "0.22.0-alpha.1+dev" edition = "2021" -rust-version = "1.80" +rust-version = "1.81" license = "MIT OR Apache-2.0" publish = false diff --git a/examples/rust/custom_store_subscriber/Cargo.toml b/examples/rust/custom_store_subscriber/Cargo.toml index 28459d89f65b..a1b110bc6c8f 100644 --- a/examples/rust/custom_store_subscriber/Cargo.toml +++ b/examples/rust/custom_store_subscriber/Cargo.toml @@ -2,7 +2,7 @@ name = "custom_store_subscriber" version = "0.22.0-alpha.1+dev" edition = "2021" -rust-version = "1.80" +rust-version = "1.81" license = "MIT OR Apache-2.0" publish = false diff --git a/examples/rust/custom_view/Cargo.toml b/examples/rust/custom_view/Cargo.toml index 7babb2fd3a6b..cc38521c6e30 100644 --- a/examples/rust/custom_view/Cargo.toml +++ b/examples/rust/custom_view/Cargo.toml @@ -2,7 +2,7 @@ name = "custom_view" version = "0.22.0-alpha.1+dev" edition = "2021" -rust-version = "1.80" +rust-version = "1.81" license = "MIT OR Apache-2.0" publish = false diff --git a/examples/rust/dataframe_query/Cargo.toml b/examples/rust/dataframe_query/Cargo.toml index 51a4d872112d..004e0a4804a6 100644 --- a/examples/rust/dataframe_query/Cargo.toml +++ b/examples/rust/dataframe_query/Cargo.toml @@ -2,7 +2,7 @@ name = "dataframe_query" version = "0.22.0-alpha.1+dev" edition = "2021" -rust-version = "1.80" +rust-version = "1.81" license = "MIT OR Apache-2.0" publish = false diff --git a/examples/rust/dna/Cargo.toml b/examples/rust/dna/Cargo.toml index 04e456883df9..8b023677ef44 100644 --- a/examples/rust/dna/Cargo.toml +++ b/examples/rust/dna/Cargo.toml @@ -2,7 +2,7 @@ name = "dna" version = "0.22.0-alpha.1+dev" edition = "2021" -rust-version = "1.80" +rust-version = "1.81" license = "MIT OR Apache-2.0" publish = false diff --git a/examples/rust/extend_viewer_ui/Cargo.toml b/examples/rust/extend_viewer_ui/Cargo.toml index 29dd7233a6ce..633cdb891f63 100644 --- a/examples/rust/extend_viewer_ui/Cargo.toml +++ b/examples/rust/extend_viewer_ui/Cargo.toml @@ -2,7 +2,7 @@ name = "extend_viewer_ui" version = "0.22.0-alpha.1+dev" edition = "2021" -rust-version = "1.80" +rust-version = "1.81" license = "MIT OR Apache-2.0" publish = false diff --git a/examples/rust/external_data_loader/Cargo.toml b/examples/rust/external_data_loader/Cargo.toml index 53101d926ba6..5eab8acb917c 100644 --- a/examples/rust/external_data_loader/Cargo.toml +++ b/examples/rust/external_data_loader/Cargo.toml @@ -2,7 +2,7 @@ name = "rerun-loader-rust-file" version = "0.22.0-alpha.1+dev" edition = "2021" -rust-version = "1.80" +rust-version = "1.81" license = "MIT OR Apache-2.0" publish = false diff --git a/examples/rust/graph_lattice/Cargo.toml b/examples/rust/graph_lattice/Cargo.toml index 88bb40f03e1f..ca476d428b9e 100644 --- a/examples/rust/graph_lattice/Cargo.toml +++ b/examples/rust/graph_lattice/Cargo.toml @@ -2,7 +2,7 @@ name = "graph_lattice" version = "0.22.0-alpha.1+dev" edition = "2021" -rust-version = "1.80" +rust-version = "1.81" license = "MIT OR Apache-2.0" publish = false diff --git a/examples/rust/incremental_logging/Cargo.toml b/examples/rust/incremental_logging/Cargo.toml index b02487a8ee2a..f23f29eb4d35 100644 --- a/examples/rust/incremental_logging/Cargo.toml +++ b/examples/rust/incremental_logging/Cargo.toml @@ -2,7 +2,7 @@ name = "incremental_logging" version = "0.22.0-alpha.1+dev" edition = "2021" -rust-version = "1.80" +rust-version = "1.81" license = "MIT OR Apache-2.0" publish = false diff --git a/examples/rust/log_file/Cargo.toml b/examples/rust/log_file/Cargo.toml index 7cb0ea0b2ba4..517929141648 100644 --- a/examples/rust/log_file/Cargo.toml +++ b/examples/rust/log_file/Cargo.toml @@ -2,7 +2,7 @@ name = "log_file" version = "0.22.0-alpha.1+dev" edition = "2021" -rust-version = "1.80" +rust-version = "1.81" license = "MIT OR Apache-2.0" publish = false diff --git a/examples/rust/minimal/Cargo.toml b/examples/rust/minimal/Cargo.toml index c8ec25baf7e1..2f42d214ca71 100644 --- a/examples/rust/minimal/Cargo.toml +++ b/examples/rust/minimal/Cargo.toml @@ -2,7 +2,7 @@ name = "minimal" version = "0.22.0-alpha.1+dev" edition = "2021" -rust-version = "1.80" +rust-version = "1.81" license = "MIT OR Apache-2.0" publish = false diff --git a/examples/rust/minimal_options/Cargo.toml b/examples/rust/minimal_options/Cargo.toml index 25fe7f825524..263afae8696b 100644 --- a/examples/rust/minimal_options/Cargo.toml +++ b/examples/rust/minimal_options/Cargo.toml @@ -2,7 +2,7 @@ name = "minimal_options" version = "0.22.0-alpha.1+dev" edition = "2021" -rust-version = "1.80" +rust-version = "1.81" license = "MIT OR Apache-2.0" publish = false diff --git a/examples/rust/minimal_serve/Cargo.toml b/examples/rust/minimal_serve/Cargo.toml index b420921c429d..323edd8656c3 100644 --- a/examples/rust/minimal_serve/Cargo.toml +++ b/examples/rust/minimal_serve/Cargo.toml @@ -2,7 +2,7 @@ name = "minimal_serve" version = "0.22.0-alpha.1+dev" edition = "2021" -rust-version = "1.80" +rust-version = "1.81" license = "MIT OR Apache-2.0" publish = false diff --git a/examples/rust/objectron/Cargo.toml b/examples/rust/objectron/Cargo.toml index 9c194bf914f1..fb1af36d4c16 100644 --- a/examples/rust/objectron/Cargo.toml +++ b/examples/rust/objectron/Cargo.toml @@ -2,7 +2,7 @@ name = "objectron" version = "0.22.0-alpha.1+dev" edition = "2021" -rust-version = "1.80" +rust-version = "1.81" license = "MIT OR Apache-2.0" publish = false diff --git a/examples/rust/raw_mesh/Cargo.toml b/examples/rust/raw_mesh/Cargo.toml index f39273d5d9ee..2e4aa045e57c 100644 --- a/examples/rust/raw_mesh/Cargo.toml +++ b/examples/rust/raw_mesh/Cargo.toml @@ -2,7 +2,7 @@ name = "raw_mesh" version = "0.22.0-alpha.1+dev" edition = "2021" -rust-version = "1.80" +rust-version = "1.81" license = "MIT OR Apache-2.0" publish = false diff --git a/examples/rust/shared_recording/Cargo.toml b/examples/rust/shared_recording/Cargo.toml index cc254dd4db72..d892dade3bb2 100644 --- a/examples/rust/shared_recording/Cargo.toml +++ b/examples/rust/shared_recording/Cargo.toml @@ -2,7 +2,7 @@ name = "shared_recording" version = "0.22.0-alpha.1+dev" edition = "2021" -rust-version = "1.80" +rust-version = "1.81" license = "MIT OR Apache-2.0" publish = false diff --git a/examples/rust/spawn_viewer/Cargo.toml b/examples/rust/spawn_viewer/Cargo.toml index b35b9af9876b..2b16517bf9b0 100644 --- a/examples/rust/spawn_viewer/Cargo.toml +++ b/examples/rust/spawn_viewer/Cargo.toml @@ -2,7 +2,7 @@ name = "spawn_viewer" version = "0.22.0-alpha.1+dev" edition = "2021" -rust-version = "1.80" +rust-version = "1.81" license = "MIT OR Apache-2.0" publish = false diff --git a/examples/rust/stdio/Cargo.toml b/examples/rust/stdio/Cargo.toml index 9a410b830cdb..8966b236b5a3 100644 --- a/examples/rust/stdio/Cargo.toml +++ b/examples/rust/stdio/Cargo.toml @@ -2,7 +2,7 @@ name = "stdio" version = "0.22.0-alpha.1+dev" edition = "2021" -rust-version = "1.80" +rust-version = "1.81" license = "MIT OR Apache-2.0" publish = false diff --git a/examples/rust/template/Cargo.toml b/examples/rust/template/Cargo.toml index 61932c222612..38c375a8ecf4 100644 --- a/examples/rust/template/Cargo.toml +++ b/examples/rust/template/Cargo.toml @@ -2,7 +2,7 @@ name = "template" version = "0.22.0-alpha.1+dev" edition = "2021" -rust-version = "1.80" +rust-version = "1.81" license = "MIT OR Apache-2.0" publish = false diff --git a/rust-toolchain b/rust-toolchain index 38e5e90f3acf..0eefd31bc5a3 100644 --- a/rust-toolchain +++ b/rust-toolchain @@ -5,6 +5,6 @@ # to the user in the error, instead of "error: invalid channel name '[toolchain]'". [toolchain] -channel = "1.80.0" +channel = "1.81.0" components = ["rustfmt", "clippy"] targets = ["wasm32-unknown-unknown"] diff --git a/scripts/check_env.py b/scripts/check_env.py index 66c6cdd9854d..c93375c3fc3b 100644 --- a/scripts/check_env.py +++ b/scripts/check_env.py @@ -7,8 +7,8 @@ import subprocess PIXI_VERSION = "0.39.0" -CARGO_VERSION = "1.80.0" -RUST_VERSION = "1.80.0" +CARGO_VERSION = "1.81.0" +RUST_VERSION = "1.81.0" def check_version(cmd: str, expected: str, update: str, install: str) -> bool: diff --git a/scripts/clippy_wasm/clippy.toml b/scripts/clippy_wasm/clippy.toml index 1db82f4f0cec..34291cb025f6 100644 --- a/scripts/clippy_wasm/clippy.toml +++ b/scripts/clippy_wasm/clippy.toml @@ -6,7 +6,7 @@ # ----------------------------------------------------------------------------- # Section identical to the main clippy.toml: -msrv = "1.80" +msrv = "1.81" allow-unwrap-in-tests = true diff --git a/scripts/lint.py b/scripts/lint.py index f99428e69a89..f9ba2ed823ea 100755 --- a/scripts/lint.py +++ b/scripts/lint.py @@ -619,7 +619,7 @@ def test_lint_workspace_deps() -> None: name = "clock" version = "0.6.0-alpha.0" edition = "2021" - rust-version = "1.80" + rust-version = "1.81" license = "MIT OR Apache-2.0" publish = false