pFad - Phone/Frame/Anonymizer/Declutterfier! Saves Data!


--- a PPN by Garber Painting Akron. With Image Size Reduction included!

URL: http://github.com/RustPython/RustPython/commit/5febd2eedbcea5085d967490c33e73cb78e71ec8

7.css" /> Optimize list removal lock usage (#8451) · RustPython/RustPython@5febd2e · GitHub
Skip to content

Commit 5febd2e

Browse files
authored
Optimize list removal lock usage (#8451)
Assisted-by: WarpForgeAgent:DeepSeek-v4-flash
1 parent 184db11 commit 5febd2e

3 files changed

Lines changed: 9 additions & 6 deletions

File tree

.pre-commit-config.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ repos:
4242

4343
- id: generate-rs-opcode-metadata
4444
name: generate rust opcode metadata
45-
entry: python tools/opcode_metadata/generate_rs_opcode_metadata.py
45+
entry: python3 tools/opcode_metadata/generate_rs_opcode_metadata.py
4646
files: '^(crates/compiler-core/src/bytecode/instruction\.rs|tools/opcode_metadata/*)$'
4747
pass_filenames: false
4848
language: system
@@ -53,7 +53,7 @@ repos:
5353

5454
- id: generate-py-opcode-metadata
5555
name: generate python opcode metadata
56-
entry: python tools/opcode_metadata/generate_py_opcode_metadata.py
56+
entry: python3 tools/opcode_metadata/generate_py_opcode_metadata.py
5757
files: '^(crates/compiler-core/src/bytecode/instruction\.rs|tools/opcode_metadata/*)$'
5858
pass_filenames: false
5959
language: system

crates/vm/src/builtins/list.rs

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -372,12 +372,15 @@ impl PyList {
372372

373373
if let Some(index) = index.into() {
374374
// defer delete out of borrow
375-
let is_inside_range = index < self.borrow_vec().len();
376-
Ok(is_inside_range.then(|| self.borrow_vec_mut().remove(index)))
375+
let removed = {
376+
let mut elements = self.borrow_vec_mut();
377+
(index < elements.len()).then(|| elements.remove(index))
378+
};
379+
drop(removed);
380+
Ok(())
377381
} else {
378382
Err(vm.new_value_error(format!("'{}' is not in list", needle.str(vm)?)))
379383
}
380-
.map(drop)
381384
}
382385

383386
fn _delitem(&self, needle: &PyObject, vm: &VirtualMachine) -> PyResult<()> {

scripts/check_redundant_patches.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
#!/usr/bin/env python
1+
#!/usr/bin/env python3
22
import argparse
33
import ast
44
import glob

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad © 2024 Your Company Name. All rights reserved.





Check this box to remove all script contents from the fetched content.



Check this box to remove all images from the fetched content.


Check this box to remove all CSS styles from the fetched content.


Check this box to keep images inefficiently compressed and original size.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy