From ebfc3eabae2aa1d189fbf82d82252f99d108cf23 Mon Sep 17 00:00:00 2001 From: Jeong YunWon Date: Fri, 12 Dec 2025 00:25:15 +0900 Subject: [PATCH 1/2] unreachable -> unimplemented --- crates/stdlib/src/contextvars.rs | 4 ++-- crates/stdlib/src/ssl.rs | 2 +- crates/vm/src/builtins/bool.rs | 2 +- crates/vm/src/builtins/classmethod.rs | 2 +- crates/vm/src/builtins/int.rs | 2 +- crates/vm/src/builtins/object.rs | 2 +- crates/vm/src/builtins/staticmethod.rs | 2 +- crates/vm/src/builtins/type.rs | 2 +- crates/vm/src/builtins/weakref.rs | 2 +- crates/vm/src/exceptions.rs | 2 +- crates/vm/src/stdlib/ast/python.rs | 2 +- crates/vm/src/stdlib/ctypes/array.rs | 4 ++-- crates/vm/src/stdlib/ctypes/base.rs | 2 +- crates/vm/src/stdlib/ctypes/function.rs | 2 +- crates/vm/src/stdlib/ctypes/pointer.rs | 2 +- crates/vm/src/stdlib/ctypes/structure.rs | 4 ++-- crates/vm/src/stdlib/ctypes/union.rs | 4 ++-- crates/vm/src/stdlib/itertools.rs | 2 +- crates/vm/src/stdlib/typevar.rs | 4 ++-- 19 files changed, 24 insertions(+), 24 deletions(-) diff --git a/crates/stdlib/src/contextvars.rs b/crates/stdlib/src/contextvars.rs index f48df167a71..56c2657f585 100644 --- a/crates/stdlib/src/contextvars.rs +++ b/crates/stdlib/src/contextvars.rs @@ -508,7 +508,7 @@ mod _contextvars { } fn py_new(_cls: &Py, _args: Self::Args, _vm: &VirtualMachine) -> PyResult { - unreachable!("use slot_new") + unimplemented!("use slot_new") } } @@ -585,7 +585,7 @@ mod _contextvars { Err(vm.new_runtime_error("Tokens can only be created by ContextVars")) } fn py_new(_cls: &Py, _args: Self::Args, _vm: &VirtualMachine) -> PyResult { - unreachable!("use slot_new") + unimplemented!("use slot_new") } } diff --git a/crates/stdlib/src/ssl.rs b/crates/stdlib/src/ssl.rs index ad8952aedb7..14e087668bb 100644 --- a/crates/stdlib/src/ssl.rs +++ b/crates/stdlib/src/ssl.rs @@ -4116,7 +4116,7 @@ mod _ssl { } fn py_new(_cls: &Py, _args: Self::Args, _vm: &VirtualMachine) -> PyResult { - unreachable!("use slot_new") + unimplemented!("use slot_new") } } diff --git a/crates/vm/src/builtins/bool.rs b/crates/vm/src/builtins/bool.rs index 902656da2c8..f9d7c27d0b8 100644 --- a/crates/vm/src/builtins/bool.rs +++ b/crates/vm/src/builtins/bool.rs @@ -115,7 +115,7 @@ impl Constructor for PyBool { } fn py_new(_cls: &Py, _args: Self::Args, _vm: &VirtualMachine) -> PyResult { - unreachable!("use slot_new") + unimplemented!("use slot_new") } } diff --git a/crates/vm/src/builtins/classmethod.rs b/crates/vm/src/builtins/classmethod.rs index 197b6805ef9..911960bf691 100644 --- a/crates/vm/src/builtins/classmethod.rs +++ b/crates/vm/src/builtins/classmethod.rs @@ -103,7 +103,7 @@ impl Constructor for PyClassMethod { } fn py_new(_cls: &Py, _args: Self::Args, _vm: &VirtualMachine) -> PyResult { - unreachable!("use slot_new") + unimplemented!("use slot_new") } } diff --git a/crates/vm/src/builtins/int.rs b/crates/vm/src/builtins/int.rs index f019d2634a5..b210d41823d 100644 --- a/crates/vm/src/builtins/int.rs +++ b/crates/vm/src/builtins/int.rs @@ -244,7 +244,7 @@ impl Constructor for PyInt { } fn py_new(_cls: &Py, _args: Self::Args, _vm: &VirtualMachine) -> PyResult { - unreachable!("use slot_new") + unimplemented!("use slot_new") } } diff --git a/crates/vm/src/builtins/object.rs b/crates/vm/src/builtins/object.rs index 735d5461186..6f917cd853c 100644 --- a/crates/vm/src/builtins/object.rs +++ b/crates/vm/src/builtins/object.rs @@ -111,7 +111,7 @@ impl Constructor for PyBaseObject { } fn py_new(_cls: &Py, _args: Self::Args, _vm: &VirtualMachine) -> PyResult { - unreachable!("use slot_new") + unimplemented!("use slot_new") } } diff --git a/crates/vm/src/builtins/staticmethod.rs b/crates/vm/src/builtins/staticmethod.rs index 98717205503..5d2474a567c 100644 --- a/crates/vm/src/builtins/staticmethod.rs +++ b/crates/vm/src/builtins/staticmethod.rs @@ -61,7 +61,7 @@ impl Constructor for PyStaticMethod { } fn py_new(_cls: &Py, _args: Self::Args, _vm: &VirtualMachine) -> PyResult { - unreachable!("use slot_new") + unimplemented!("use slot_new") } } diff --git a/crates/vm/src/builtins/type.rs b/crates/vm/src/builtins/type.rs index 11d74982681..b45c64677c4 100644 --- a/crates/vm/src/builtins/type.rs +++ b/crates/vm/src/builtins/type.rs @@ -1289,7 +1289,7 @@ impl Constructor for PyType { } fn py_new(_cls: &Py, _args: Self::Args, _vm: &VirtualMachine) -> PyResult { - unreachable!("use slot_new") + unimplemented!("use slot_new") } } diff --git a/crates/vm/src/builtins/weakref.rs b/crates/vm/src/builtins/weakref.rs index 93edbbecbb1..88d6dbac3ed 100644 --- a/crates/vm/src/builtins/weakref.rs +++ b/crates/vm/src/builtins/weakref.rs @@ -45,7 +45,7 @@ impl Constructor for PyWeak { } fn py_new(_cls: &Py, _args: Self::Args, _vm: &VirtualMachine) -> PyResult { - unreachable!("use slot_new") + unimplemented!("use slot_new") } } diff --git a/crates/vm/src/exceptions.rs b/crates/vm/src/exceptions.rs index a5bc3f0a71b..4a8bea23557 100644 --- a/crates/vm/src/exceptions.rs +++ b/crates/vm/src/exceptions.rs @@ -717,7 +717,7 @@ impl Constructor for PyBaseException { } fn py_new(_cls: &Py, _args: FuncArgs, _vm: &VirtualMachine) -> PyResult { - unreachable!("use slot_new") + unimplemented!("use slot_new") } } diff --git a/crates/vm/src/stdlib/ast/python.rs b/crates/vm/src/stdlib/ast/python.rs index ef8a85f85f2..042db4aa74e 100644 --- a/crates/vm/src/stdlib/ast/python.rs +++ b/crates/vm/src/stdlib/ast/python.rs @@ -77,7 +77,7 @@ pub(crate) mod _ast { } fn py_new(_cls: &Py, _args: Self::Args, _vm: &VirtualMachine) -> PyResult { - unreachable!("use slot_new") + unimplemented!("use slot_new") } } diff --git a/crates/vm/src/stdlib/ctypes/array.rs b/crates/vm/src/stdlib/ctypes/array.rs index d87679f3595..499b525b89b 100644 --- a/crates/vm/src/stdlib/ctypes/array.rs +++ b/crates/vm/src/stdlib/ctypes/array.rs @@ -76,7 +76,7 @@ impl Constructor for PyCArrayType { type Args = PyObjectRef; fn py_new(_cls: &Py, _args: Self::Args, _vm: &VirtualMachine) -> PyResult { - unreachable!("use slot_new") + unimplemented!("use slot_new") } } @@ -305,7 +305,7 @@ impl Constructor for PyCArray { } fn py_new(_cls: &Py, _args: Self::Args, _vm: &VirtualMachine) -> PyResult { - unreachable!("use slot_new") + unimplemented!("use slot_new") } } diff --git a/crates/vm/src/stdlib/ctypes/base.rs b/crates/vm/src/stdlib/ctypes/base.rs index 6b03e0e2348..22f3703f1b0 100644 --- a/crates/vm/src/stdlib/ctypes/base.rs +++ b/crates/vm/src/stdlib/ctypes/base.rs @@ -662,7 +662,7 @@ impl Constructor for PyCSimple { } fn py_new(_cls: &Py, _args: Self::Args, _vm: &VirtualMachine) -> PyResult { - unreachable!("use slot_new") + unimplemented!("use slot_new") } } diff --git a/crates/vm/src/stdlib/ctypes/function.rs b/crates/vm/src/stdlib/ctypes/function.rs index 8784fd55ef5..d202410b14a 100644 --- a/crates/vm/src/stdlib/ctypes/function.rs +++ b/crates/vm/src/stdlib/ctypes/function.rs @@ -330,7 +330,7 @@ impl Constructor for PyCFuncPtr { } fn py_new(_cls: &Py, _args: Self::Args, _vm: &VirtualMachine) -> PyResult { - unreachable!("use slot_new") + unimplemented!("use slot_new") } } diff --git a/crates/vm/src/stdlib/ctypes/pointer.rs b/crates/vm/src/stdlib/ctypes/pointer.rs index d7fbd67b157..a5b3a9eb04e 100644 --- a/crates/vm/src/stdlib/ctypes/pointer.rs +++ b/crates/vm/src/stdlib/ctypes/pointer.rs @@ -90,7 +90,7 @@ impl Constructor for PyCPointer { } fn py_new(_cls: &Py, _args: Self::Args, _vm: &VirtualMachine) -> PyResult { - unreachable!("use slot_new") + unimplemented!("use slot_new") } } diff --git a/crates/vm/src/stdlib/ctypes/structure.rs b/crates/vm/src/stdlib/ctypes/structure.rs index 58acc26d4ce..403dbad74b9 100644 --- a/crates/vm/src/stdlib/ctypes/structure.rs +++ b/crates/vm/src/stdlib/ctypes/structure.rs @@ -44,7 +44,7 @@ impl Constructor for PyCStructType { } fn py_new(_cls: &Py, _args: Self::Args, _vm: &VirtualMachine) -> PyResult { - unreachable!("use slot_new") + unimplemented!("use slot_new") } } @@ -332,7 +332,7 @@ impl Constructor for PyCStructure { } fn py_new(_cls: &Py, _args: Self::Args, _vm: &VirtualMachine) -> PyResult { - unreachable!("use slot_new") + unimplemented!("use slot_new") } } diff --git a/crates/vm/src/stdlib/ctypes/union.rs b/crates/vm/src/stdlib/ctypes/union.rs index d260cfc9ecf..84afd0bec12 100644 --- a/crates/vm/src/stdlib/ctypes/union.rs +++ b/crates/vm/src/stdlib/ctypes/union.rs @@ -48,7 +48,7 @@ impl Constructor for PyCUnionType { } fn py_new(_cls: &Py, _args: Self::Args, _vm: &VirtualMachine) -> PyResult { - unreachable!("use slot_new") + unimplemented!("use slot_new") } } @@ -191,7 +191,7 @@ impl Constructor for PyCUnion { } fn py_new(_cls: &Py, _args: Self::Args, _vm: &VirtualMachine) -> PyResult { - unreachable!("use slot_new") + unimplemented!("use slot_new") } } diff --git a/crates/vm/src/stdlib/itertools.rs b/crates/vm/src/stdlib/itertools.rs index 2956654185d..cd1faa82ddd 100644 --- a/crates/vm/src/stdlib/itertools.rs +++ b/crates/vm/src/stdlib/itertools.rs @@ -1256,7 +1256,7 @@ mod decl { } fn py_new(_cls: &Py, _args: Self::Args, _vm: &VirtualMachine) -> PyResult { - unreachable!("use slot_new") + unimplemented!("use slot_new") } } diff --git a/crates/vm/src/stdlib/typevar.rs b/crates/vm/src/stdlib/typevar.rs index 5509e547072..e8cc407da15 100644 --- a/crates/vm/src/stdlib/typevar.rs +++ b/crates/vm/src/stdlib/typevar.rs @@ -610,7 +610,7 @@ impl Constructor for ParamSpec { } fn py_new(_cls: &Py, _args: Self::Args, _vm: &VirtualMachine) -> PyResult { - unreachable!("use slot_new") + unimplemented!("use slot_new") } } @@ -772,7 +772,7 @@ impl Constructor for TypeVarTuple { } fn py_new(_cls: &Py, _args: Self::Args, _vm: &VirtualMachine) -> PyResult { - unreachable!("use slot_new") + unimplemented!("use slot_new") } } From 6df03745ae0dc0796bd69dd97587f04f7c5b80a3 Mon Sep 17 00:00:00 2001 From: Jeong YunWon Date: Fri, 12 Dec 2025 00:35:11 +0900 Subject: [PATCH 2/2] Fix clippy on 1.92 --- crates/codegen/src/unparse.rs | 6 +++++- crates/vm/src/builtins/bool.rs | 1 - crates/vm/src/builtins/complex.rs | 1 - crates/vm/src/builtins/type.rs | 1 - crates/vm/src/class.rs | 1 - crates/vm/src/function/protocol.rs | 1 - crates/vm/src/stdlib/itertools.rs | 1 - crates/vm/src/stdlib/operator.rs | 1 - crates/vm/src/stdlib/os.rs | 2 ++ crates/vm/src/types/slot.rs | 1 - crates/vm/src/vm/vm_object.rs | 1 - 11 files changed, 7 insertions(+), 10 deletions(-) diff --git a/crates/codegen/src/unparse.rs b/crates/codegen/src/unparse.rs index 7f2bcf16b47..74e35fd5e2a 100644 --- a/crates/codegen/src/unparse.rs +++ b/crates/codegen/src/unparse.rs @@ -380,7 +380,11 @@ impl<'a, 'b, 'c> Unparser<'a, 'b, 'c> { .fmt(self.f)? } Expr::NumberLiteral(ruff::ExprNumberLiteral { value, .. }) => { - const { assert!(f64::MAX_10_EXP == 308) }; + #[allow(clippy::correctness, clippy::assertions_on_constants)] + const { + assert!(f64::MAX_10_EXP == 308) + }; + let inf_str = "1e309"; match value { ruff::Number::Int(int) => int.fmt(self.f)?, diff --git a/crates/vm/src/builtins/bool.rs b/crates/vm/src/builtins/bool.rs index f9d7c27d0b8..9b519dbbde5 100644 --- a/crates/vm/src/builtins/bool.rs +++ b/crates/vm/src/builtins/bool.rs @@ -6,7 +6,6 @@ use crate::{ class::PyClassImpl, convert::{IntoPyException, ToPyObject, ToPyResult}, function::{FuncArgs, OptionalArg}, - identifier, protocol::PyNumberMethods, types::{AsNumber, Constructor, Representable}, }; diff --git a/crates/vm/src/builtins/complex.rs b/crates/vm/src/builtins/complex.rs index 3b38ab0dc94..8bf46cfdd5c 100644 --- a/crates/vm/src/builtins/complex.rs +++ b/crates/vm/src/builtins/complex.rs @@ -10,7 +10,6 @@ use crate::{ PyArithmeticValue::{self, *}, PyComparisonValue, }, - identifier, protocol::PyNumberMethods, stdlib::warnings, types::{AsNumber, Comparable, Constructor, Hashable, PyComparisonOp, Representable}, diff --git a/crates/vm/src/builtins/type.rs b/crates/vm/src/builtins/type.rs index b45c64677c4..a20e966d6ad 100644 --- a/crates/vm/src/builtins/type.rs +++ b/crates/vm/src/builtins/type.rs @@ -22,7 +22,6 @@ use crate::{ }, convert::ToPyResult, function::{FuncArgs, KwArgs, OptionalArg, PyMethodDef, PySetterValue}, - identifier, object::{Traverse, TraverseFn}, protocol::{PyIterReturn, PyMappingMethods, PyNumberMethods, PySequenceMethods}, types::{ diff --git a/crates/vm/src/class.rs b/crates/vm/src/class.rs index f977f07ca77..8850de36152 100644 --- a/crates/vm/src/class.rs +++ b/crates/vm/src/class.rs @@ -3,7 +3,6 @@ use crate::{ builtins::{PyBaseObject, PyType, PyTypeRef}, function::PyMethodDef, - identifier, object::Py, types::{PyTypeFlags, PyTypeSlots, hash_not_implemented}, vm::Context, diff --git a/crates/vm/src/function/protocol.rs b/crates/vm/src/function/protocol.rs index 3205f75c27d..1e670b96389 100644 --- a/crates/vm/src/function/protocol.rs +++ b/crates/vm/src/function/protocol.rs @@ -3,7 +3,6 @@ use crate::{ AsObject, PyObject, PyObjectRef, PyPayload, PyResult, TryFromObject, VirtualMachine, builtins::{PyDict, PyDictRef, iter::PySequenceIterator}, convert::ToPyObject, - identifier, object::{Traverse, TraverseFn}, protocol::{PyIter, PyIterIter, PyMapping, PyMappingMethods}, types::{AsMapping, GenericMethod}, diff --git a/crates/vm/src/stdlib/itertools.rs b/crates/vm/src/stdlib/itertools.rs index cd1faa82ddd..3fedd17f12b 100644 --- a/crates/vm/src/stdlib/itertools.rs +++ b/crates/vm/src/stdlib/itertools.rs @@ -16,7 +16,6 @@ mod decl { }, convert::ToPyObject, function::{ArgCallable, ArgIntoBool, FuncArgs, OptionalArg, OptionalOption, PosArgs}, - identifier, protocol::{PyIter, PyIterReturn, PyNumber}, raise_if_stop, stdlib::{sys, warnings}, diff --git a/crates/vm/src/stdlib/operator.rs b/crates/vm/src/stdlib/operator.rs index d61adaea561..0c048ea2a3f 100644 --- a/crates/vm/src/stdlib/operator.rs +++ b/crates/vm/src/stdlib/operator.rs @@ -7,7 +7,6 @@ mod _operator { builtins::{PyInt, PyIntRef, PyStr, PyStrRef, PyTupleRef, PyType, PyTypeRef}, common::wtf8::Wtf8, function::{ArgBytesLike, Either, FuncArgs, KwArgs, OptionalArg}, - identifier, protocol::PyIter, recursion::ReprGuard, types::{Callable, Constructor, PyComparisonOp, Representable}, diff --git a/crates/vm/src/stdlib/os.rs b/crates/vm/src/stdlib/os.rs index e42ec064cdf..b75f601c8db 100644 --- a/crates/vm/src/stdlib/os.rs +++ b/crates/vm/src/stdlib/os.rs @@ -1506,7 +1506,9 @@ pub(super) mod _os { #[cfg(target_os = "linux")] #[pyfunction] fn copy_file_range(args: CopyFileRangeArgs<'_>, vm: &VirtualMachine) -> PyResult { + #[allow(clippy::unnecessary_option_map_or_else)] let p_offset_src = args.offset_src.as_ref().map_or_else(std::ptr::null, |x| x); + #[allow(clippy::unnecessary_option_map_or_else)] let p_offset_dst = args.offset_dst.as_ref().map_or_else(std::ptr::null, |x| x); let count: usize = args .count diff --git a/crates/vm/src/types/slot.rs b/crates/vm/src/types/slot.rs index e3775058d44..8166ca83357 100644 --- a/crates/vm/src/types/slot.rs +++ b/crates/vm/src/types/slot.rs @@ -7,7 +7,6 @@ use crate::{ function::{ Either, FromArgs, FuncArgs, OptionalArg, PyComparisonValue, PyMethodDef, PySetterValue, }, - identifier, protocol::{ PyBuffer, PyIterReturn, PyMapping, PyMappingMethods, PyNumber, PyNumberMethods, PyNumberSlots, PySequence, PySequenceMethods, diff --git a/crates/vm/src/vm/vm_object.rs b/crates/vm/src/vm/vm_object.rs index 69e8bcd8f35..e69301820d6 100644 --- a/crates/vm/src/vm/vm_object.rs +++ b/crates/vm/src/vm/vm_object.rs @@ -2,7 +2,6 @@ use super::PyMethod; use crate::{ builtins::{PyBaseExceptionRef, PyList, PyStrInterned, pystr::AsPyStr}, function::IntoFuncArgs, - identifier, object::{AsObject, PyObject, PyObjectRef, PyResult}, stdlib::sys, vm::VirtualMachine,