Mercurial > public > mercurial-scm > hg-stable
view rust/hg-cpython/src/update.rs @ 52327:f90796d33aa0
rust: fix clippy lints
These were highlighted by the latest version of clippy (1.82.0).
author | Rapha?l Gom?s <rgomes@octobus.net> |
---|---|
date | Tue, 29 Oct 2024 11:35:01 +0100 |
parents | 96b113d22b34 |
children |
line wrap: on
line source
// debug.rs // // Copyright 2024 Mercurial developers // // This software may be used and distributed according to the terms of the // GNU General Public License version 2 or any later version. //! Module for updating a repository. use cpython::{PyDict, PyModule, PyObject, PyResult, Python}; use hg::{ progress::{HgProgressBar, Progress}, update::update_from_null, BaseRevision, }; use crate::{ exceptions::FallbackError, utils::{hgerror_to_pyerr, repo_from_path, with_sigint_wrapper}, }; pub fn update_from_null_fast_path( py: Python, repo_path: PyObject, to: BaseRevision, num_cpus: Option<usize>, ) -> PyResult<usize> { log::trace!("Using update from null fastpath"); let repo = repo_from_path(py, repo_path)?; let progress: &dyn Progress = &HgProgressBar::new("updating"); let res = with_sigint_wrapper(py, || { update_from_null(&repo, to.into(), progress, num_cpus) })?; hgerror_to_pyerr(py, res) } pub fn init_module(py: Python, package: &str) -> PyResult<PyModule> { let dotted_name = &format!("{}.update", package); let m = PyModule::new(py, dotted_name)?; m.add(py, "__package__", package)?; m.add(py, "__doc__", "Rust module for updating a repository")?; m.add(py, "FallbackError", py.get_type::<FallbackError>())?; m.add( py, "update_from_null", py_fn!( py, update_from_null_fast_path( repo_path: PyObject, to: BaseRevision, num_cpus: Option<usize> ) ), )?; let sys = PyModule::import(py, "sys")?; let sys_modules: PyDict = sys.get(py, "modules")?.extract(py)?; sys_modules.set_item(py, dotted_name, &m)?; Ok(m) }