From f7f30b06ea05cf1db940ce6222ece21a2c9e2378 Mon Sep 17 00:00:00 2001 From: Peter Byfield Date: Sat, 3 May 2025 20:52:19 +0200 Subject: [PATCH 1/4] cargo update --- rust/Cargo.lock | 118 ++++++++++++++++++++++++------------------------ 1 file changed, 59 insertions(+), 59 deletions(-) diff --git a/rust/Cargo.lock b/rust/Cargo.lock index 5e4650e5..ff5b889c 100644 --- a/rust/Cargo.lock +++ b/rust/Cargo.lock @@ -10,7 +10,7 @@ dependencies = [ "const_format", "derive-new", "getset", - "indexmap 2.7.1", + "indexmap 2.9.0", "itertools", "lazy_static", "parameterized", @@ -110,27 +110,27 @@ dependencies = [ [[package]] name = "either" -version = "1.13.0" +version = "1.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "60b1af1c220855b6ceac025d3f6ecdd2b7c4894bfe9cd9bda4fbb4bc7c0d4cf0" +checksum = "48c757948c5ede0e46177b7add2e67155f70e33c07fea8284df6576da70b3719" [[package]] name = "equivalent" -version = "1.0.1" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" +checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f" [[package]] name = "foldhash" -version = "0.1.4" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a0d2fde1f7b3d48b8395d5f2de76c18a528bd6a9cdde438df747bfcba3e05d6f" +checksum = "d9c4f5dac5e15c24eb999c26181a6ca40b39fe946cbe4c263c7209467bc83af2" [[package]] name = "getset" -version = "0.1.3" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f636605b743120a8d32ed92fc27b6cde1a769f8f936c065151eb66f88ded513c" +checksum = "f3586f256131df87204eb733da72e3d3eb4f343c639f4b7be279ac7c48baeafe" dependencies = [ "proc-macro-error2", "proc-macro2", @@ -146,9 +146,9 @@ checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" [[package]] name = "hashbrown" -version = "0.15.2" +version = "0.15.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf151400ff0baff5465007dd2f3e717f3fe502074ca563069ce3a6629d07b289" +checksum = "84b26c544d002229e640969970a2e74021aadf6e2f96372b9c58eff97de08eb3" dependencies = [ "foldhash", ] @@ -171,19 +171,19 @@ dependencies = [ [[package]] name = "indexmap" -version = "2.7.1" +version = "2.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c9c992b02b5b4c94ea26e32fe5bccb7aa7d9f390ab5c1221ff895bc7ea8b652" +checksum = "cea70ddb795996207ad57735b50c5982d8844f38ba9ee5f1aedcfb708a2aa11e" dependencies = [ "equivalent", - "hashbrown 0.15.2", + "hashbrown 0.15.3", ] [[package]] name = "indoc" -version = "2.0.5" +version = "2.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b248f5224d1d606005e02c97f5aa4e88eeb230488bcc03bc9ca4d7991399f2b5" +checksum = "f4c7245a08504955605670dbf141fceab975f15ca21570696aebe9d2e71576bd" [[package]] name = "itertools" @@ -196,9 +196,9 @@ dependencies = [ [[package]] name = "itoa" -version = "1.0.14" +version = "1.0.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d75a2a4b1b190afb6f5425f10f6a8f959d2ea0b9c2b1d79553551850539e4674" +checksum = "4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c" [[package]] name = "lazy_static" @@ -208,9 +208,9 @@ checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" [[package]] name = "libc" -version = "0.2.169" +version = "0.2.172" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5aba8db14291edd000dfcc4d620c7ebfb122c613afb886ca8803fa4e128a20a" +checksum = "d750af042f7ef4f724306de029d18836c26c1765a54a6a3f094cbd23a7267ffa" [[package]] name = "memchr" @@ -229,9 +229,9 @@ dependencies = [ [[package]] name = "once_cell" -version = "1.20.2" +version = "1.21.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1261fe7e33c73b354eab43b1273a57c8f967d0391e80353e51f764ac02cf6775" +checksum = "42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d" [[package]] name = "parameterized" @@ -256,9 +256,9 @@ dependencies = [ [[package]] name = "portable-atomic" -version = "1.10.0" +version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "280dc24453071f1b63954171985a0b0d30058d287960968b9b2aca264c8d4ee6" +checksum = "350e9b48cbc6b0e028b0473b114454c6316e57336ee184ceab6e53f72c178b3e" [[package]] name = "proc-macro-error-attr2" @@ -284,18 +284,18 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.93" +version = "1.0.95" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "60946a68e5f9d28b0dc1c21bb8a97ee7d018a8b322fa57838ba31cc878e22d99" +checksum = "02b3e5e68a3a1a02aad3ec490a98007cbc13c37cbe84a3cd7b8e406d76e7f778" dependencies = [ "unicode-ident", ] [[package]] name = "pyo3" -version = "0.24.1" +version = "0.24.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "17da310086b068fbdcefbba30aeb3721d5bb9af8db4987d6735b2183ca567229" +checksum = "e5203598f366b11a02b13aa20cab591229ff0a89fd121a308a5df751d5fc9219" dependencies = [ "cfg-if", "indoc", @@ -311,9 +311,9 @@ dependencies = [ [[package]] name = "pyo3-build-config" -version = "0.24.1" +version = "0.24.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e27165889bd793000a098bb966adc4300c312497ea25cf7a690a9f0ac5aa5fc1" +checksum = "99636d423fa2ca130fa5acde3059308006d46f98caac629418e53f7ebb1e9999" dependencies = [ "once_cell", "target-lexicon", @@ -321,9 +321,9 @@ dependencies = [ [[package]] name = "pyo3-ffi" -version = "0.24.1" +version = "0.24.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05280526e1dbf6b420062f3ef228b78c0c54ba94e157f5cb724a609d0f2faabc" +checksum = "78f9cf92ba9c409279bc3305b5409d90db2d2c22392d443a87df3a1adad59e33" dependencies = [ "libc", "pyo3-build-config", @@ -331,9 +331,9 @@ dependencies = [ [[package]] name = "pyo3-macros" -version = "0.24.1" +version = "0.24.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c3ce5686aa4d3f63359a5100c62a127c9f15e8398e5fdeb5deef1fed5cd5f44" +checksum = "0b999cb1a6ce21f9a6b147dcf1be9ffedf02e0043aec74dc390f3007047cecd9" dependencies = [ "proc-macro2", "pyo3-macros-backend", @@ -343,9 +343,9 @@ dependencies = [ [[package]] name = "pyo3-macros-backend" -version = "0.24.1" +version = "0.24.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f4cf6faa0cbfb0ed08e89beb8103ae9724eb4750e3a78084ba4017cbe94f3855" +checksum = "822ece1c7e1012745607d5cf0bcb2874769f0f7cb34c4cde03b9358eb9ef911a" dependencies = [ "heck", "proc-macro2", @@ -356,9 +356,9 @@ dependencies = [ [[package]] name = "quote" -version = "1.0.38" +version = "1.0.40" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e4dccaaaf89514f546c693ddc140f729f958c247918a13380cccc6078391acc" +checksum = "1885c039570dc00dcb4ff087a89e185fd56bae234ddc7f056a945bf36467248d" dependencies = [ "proc-macro2", ] @@ -414,30 +414,30 @@ checksum = "2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c" [[package]] name = "rustc-hash" -version = "2.1.0" +version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7fb8039b3032c191086b10f11f319a6e99e1e82889c5cc6046f515c9db1d497" +checksum = "357703d41365b4b27c590e3ed91eabb1b663f07c4c084095e60cbed4362dff0d" [[package]] name = "ryu" -version = "1.0.18" +version = "1.0.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f" +checksum = "28d3b2b1366ec20994f1fd18c3c594f05c5dd4bc44d8bb0c1c632c8d6829481f" [[package]] name = "serde" -version = "1.0.217" +version = "1.0.219" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02fc4265df13d6fa1d00ecff087228cc0a2b5f3c0e87e258d8b94a156e984c70" +checksum = "5f0e2c6ed6606019b4e29e69dbaba95b11854410e5347d525002456dbbb786b6" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.217" +version = "1.0.219" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a9bf7cf98d04a2b28aead066b7496853d4779c9cc183c440dbac457641e19a0" +checksum = "5b0276cf7f2c73365f7157c8123c21cd9a50fbbd844757af28ca1f5925fc2a00" dependencies = [ "proc-macro2", "quote", @@ -446,9 +446,9 @@ dependencies = [ [[package]] name = "serde_json" -version = "1.0.137" +version = "1.0.140" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "930cfb6e6abf99298aaad7d29abbef7a9999a9a8806a40088f55f0dcec03146b" +checksum = "20068b6e96dc6c9bd23e01df8827e6c7e1f2fddd43c21810382803c136b99373" dependencies = [ "itoa", "memchr", @@ -471,15 +471,15 @@ version = "0.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1a3275464d7a9f2d4cac57c89c2ef96a8524dba2864c8d6f82e3980baf136f9b" dependencies = [ - "hashbrown 0.15.2", + "hashbrown 0.15.3", "serde", ] [[package]] name = "syn" -version = "2.0.96" +version = "2.0.101" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d5d0adab1ae378d7f53bdebc67a39f1f151407ef230f0ce2883572f5d8985c80" +checksum = "8ce2b7fc941b3a24138a0a7cf8e858bfc6a992e7978a068a5c760deb0ed43caf" dependencies = [ "proc-macro2", "quote", @@ -500,18 +500,18 @@ checksum = "e502f78cdbb8ba4718f566c418c52bc729126ffd16baee5baa718cf25dd5a69a" [[package]] name = "thiserror" -version = "2.0.11" +version = "2.0.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d452f284b73e6d76dd36758a0c8684b1d5be31f92b89d07fd5822175732206fc" +checksum = "567b8a2dae586314f7be2a752ec7474332959c6460e02bde30d702a66d488708" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "2.0.11" +version = "2.0.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26afc1baea8a989337eeb52b6e72a039780ce45c3edfcc9c5b9d112feeb173c2" +checksum = "7f7cf42b4507d8ea322120659672cf1b9dbb93f8f2d4ecfd6e51350ff5b17a1d" dependencies = [ "proc-macro2", "quote", @@ -520,9 +520,9 @@ dependencies = [ [[package]] name = "unicode-ident" -version = "1.0.14" +version = "1.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "adb9e6ca4f869e1180728b7950e35922a7fc6397f7b641499e8f3ef06e50dc83" +checksum = "5a5f39404a5da50712a4c1eecf25e90dd62b613502b7e925fd4e4d19b5c96512" [[package]] name = "unicode-xid" @@ -532,9 +532,9 @@ checksum = "ebc1c04c71510c7f702b52b7c350734c9ff1295c464a03335b00bb84fc54f853" [[package]] name = "unindent" -version = "0.2.3" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7de7d73e1754487cb58364ee906a499937a0dfabd86bcb980fa99ec8c8fa2ce" +checksum = "7264e107f553ccae879d21fbea1d6724ac785e8c3bfc762137959b5802826ef3" [[package]] name = "version_check" From 011c29a99af9ef5c1da8be050c4d989a90fdd972 Mon Sep 17 00:00:00 2001 From: Peter Byfield Date: Sat, 3 May 2025 20:52:45 +0200 Subject: [PATCH 2/4] caro fix --edition --- rust/src/graph/hierarchy_queries.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rust/src/graph/hierarchy_queries.rs b/rust/src/graph/hierarchy_queries.rs index 6e8aecfb..38606093 100644 --- a/rust/src/graph/hierarchy_queries.rs +++ b/rust/src/graph/hierarchy_queries.rs @@ -50,7 +50,7 @@ impl Graph { descendants.into_iter() } - pub fn find_matching_modules(&self, expression: &ModuleExpression) -> impl ModuleIterator { + pub fn find_matching_modules(&self, expression: &ModuleExpression) -> impl ModuleIterator + use<'_> { let interner = MODULE_NAMES.read().unwrap(); let modules: FxHashSet<_> = self .modules From 19ea8b761ac6623fb041622715774a29be9558fe Mon Sep 17 00:00:00 2001 From: Peter Byfield Date: Sat, 3 May 2025 20:53:28 +0200 Subject: [PATCH 3/4] Move to 2024 edition --- rust/Cargo.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rust/Cargo.toml b/rust/Cargo.toml index 3e6a9457..925e1f36 100644 --- a/rust/Cargo.toml +++ b/rust/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "_rustgrimp" version = "0.1.0" -edition = "2021" +edition = "2024" [lib] name = "_rustgrimp" From f18aaf37239b07094e6e76cb0e06ceefea0df906 Mon Sep 17 00:00:00 2001 From: Peter Byfield Date: Sat, 3 May 2025 20:53:45 +0200 Subject: [PATCH 4/4] cargo fmt --- rust/src/errors.rs | 2 +- rust/src/graph/direct_import_queries.rs | 4 ++-- rust/src/graph/graph_manipulation.rs | 2 +- rust/src/graph/hierarchy_queries.rs | 7 +++++-- rust/src/graph/mod.rs | 2 +- rust/src/graph/pathfinding.rs | 2 +- rust/src/lib.rs | 2 +- rust/src/module_expressions.rs | 2 +- rust/tests/large.rs | 2 +- 9 files changed, 14 insertions(+), 11 deletions(-) diff --git a/rust/src/errors.rs b/rust/src/errors.rs index 29228eb1..c73ec97c 100644 --- a/rust/src/errors.rs +++ b/rust/src/errors.rs @@ -1,6 +1,6 @@ use crate::exceptions::{InvalidModuleExpression, ModuleNotPresent, NoSuchContainer}; -use pyo3::exceptions::PyValueError; use pyo3::PyErr; +use pyo3::exceptions::PyValueError; use thiserror::Error; #[derive(Debug, Error)] diff --git a/rust/src/graph/direct_import_queries.rs b/rust/src/graph/direct_import_queries.rs index ff4ccfa3..572bd371 100644 --- a/rust/src/graph/direct_import_queries.rs +++ b/rust/src/graph/direct_import_queries.rs @@ -1,7 +1,7 @@ use crate::errors::{GrimpError, GrimpResult}; use crate::graph::{ - ExtendWithDescendants, Graph, ImportDetails, ModuleToken, EMPTY_IMPORT_DETAILS, - EMPTY_MODULE_TOKENS, MODULE_NAMES, + EMPTY_IMPORT_DETAILS, EMPTY_MODULE_TOKENS, ExtendWithDescendants, Graph, ImportDetails, + MODULE_NAMES, ModuleToken, }; use crate::module_expressions::ModuleExpression; use rustc_hash::FxHashSet; diff --git a/rust/src/graph/graph_manipulation.rs b/rust/src/graph/graph_manipulation.rs index e73e021b..c33079b9 100644 --- a/rust/src/graph/graph_manipulation.rs +++ b/rust/src/graph/graph_manipulation.rs @@ -1,5 +1,5 @@ use crate::graph::{ - Graph, ImportDetails, Module, ModuleIterator, ModuleToken, IMPORT_LINE_CONTENTS, MODULE_NAMES, + Graph, IMPORT_LINE_CONTENTS, ImportDetails, MODULE_NAMES, Module, ModuleIterator, ModuleToken, }; use rustc_hash::FxHashSet; use slotmap::secondary::Entry; diff --git a/rust/src/graph/hierarchy_queries.rs b/rust/src/graph/hierarchy_queries.rs index 38606093..462367d4 100644 --- a/rust/src/graph/hierarchy_queries.rs +++ b/rust/src/graph/hierarchy_queries.rs @@ -1,4 +1,4 @@ -use crate::graph::{Graph, Module, ModuleIterator, ModuleToken, MODULE_NAMES}; +use crate::graph::{Graph, MODULE_NAMES, Module, ModuleIterator, ModuleToken}; use crate::module_expressions::ModuleExpression; use rustc_hash::FxHashSet; @@ -50,7 +50,10 @@ impl Graph { descendants.into_iter() } - pub fn find_matching_modules(&self, expression: &ModuleExpression) -> impl ModuleIterator + use<'_> { + pub fn find_matching_modules( + &self, + expression: &ModuleExpression, + ) -> impl ModuleIterator + use<'_> { let interner = MODULE_NAMES.read().unwrap(); let modules: FxHashSet<_> = self .modules diff --git a/rust/src/graph/mod.rs b/rust/src/graph/mod.rs index 8a97b2bd..88ffe891 100644 --- a/rust/src/graph/mod.rs +++ b/rust/src/graph/mod.rs @@ -3,7 +3,7 @@ use derive_new::new; use getset::{CopyGetters, Getters}; use lazy_static::lazy_static; use rustc_hash::{FxHashMap, FxHashSet}; -use slotmap::{new_key_type, SecondaryMap, SlotMap}; +use slotmap::{SecondaryMap, SlotMap, new_key_type}; use std::sync::RwLock; use string_interner::backend::StringBackend; use string_interner::{DefaultSymbol, StringInterner}; diff --git a/rust/src/graph/pathfinding.rs b/rust/src/graph/pathfinding.rs index 742eae77..be0f115d 100644 --- a/rust/src/graph/pathfinding.rs +++ b/rust/src/graph/pathfinding.rs @@ -1,5 +1,5 @@ use crate::errors::{GrimpError, GrimpResult}; -use crate::graph::{Graph, ModuleToken, EMPTY_MODULE_TOKENS}; +use crate::graph::{EMPTY_MODULE_TOKENS, Graph, ModuleToken}; use indexmap::{IndexMap, IndexSet}; use rustc_hash::{FxHashMap, FxHashSet, FxHasher}; use slotmap::SecondaryMap; diff --git a/rust/src/lib.rs b/rust/src/lib.rs index b4506b0d..4609c2e4 100644 --- a/rust/src/lib.rs +++ b/rust/src/lib.rs @@ -10,10 +10,10 @@ use crate::graph::{Graph, Module, ModuleIterator, ModuleTokenIterator}; use crate::module_expressions::ModuleExpression; use derive_new::new; use itertools::Itertools; +use pyo3::IntoPyObjectExt; use pyo3::exceptions::PyValueError; use pyo3::prelude::*; use pyo3::types::{IntoPyDict, PyDict, PyFrozenSet, PyList, PySet, PyString, PyTuple}; -use pyo3::IntoPyObjectExt; use rayon::prelude::*; use rustc_hash::FxHashSet; use std::collections::HashSet; diff --git a/rust/src/module_expressions.rs b/rust/src/module_expressions.rs index 62c3586f..df1b02b0 100644 --- a/rust/src/module_expressions.rs +++ b/rust/src/module_expressions.rs @@ -44,7 +44,7 @@ impl FromStr for ModuleExpression { for (part, next_part) in expression.split(".").tuple_windows() { match (part, next_part) { ("*", "**") | ("**", "*") | ("**", "**") => { - return Err(GrimpError::InvalidModuleExpression(expression.to_owned())) + return Err(GrimpError::InvalidModuleExpression(expression.to_owned())); } _ => {} } diff --git a/rust/tests/large.rs b/rust/tests/large.rs index 558d3b0e..7e7da36f 100644 --- a/rust/tests/large.rs +++ b/rust/tests/large.rs @@ -1,5 +1,5 @@ -use _rustgrimp::graph::higher_order_queries::Level; use _rustgrimp::graph::Graph; +use _rustgrimp::graph::higher_order_queries::Level; use rustc_hash::FxHashSet; use serde_json::{Map, Value}; use std::fs;