mirror of
https://github.com/denoland/deno.git
synced 2025-08-04 10:59:13 +00:00
refactor: remove deno_graph::Locker
usage (#16877)
This is just a straight refactor and doesn't make any improvements to the code that could now be made. Closes #16493
This commit is contained in:
parent
3e47a27f4f
commit
c03e0f3853
15 changed files with 70 additions and 104 deletions
|
@ -2,18 +2,13 @@
|
|||
|
||||
use deno_core::anyhow::Context;
|
||||
use deno_core::error::AnyError;
|
||||
use deno_core::parking_lot::Mutex;
|
||||
use deno_core::serde::Deserialize;
|
||||
use deno_core::serde::Serialize;
|
||||
use deno_core::serde_json;
|
||||
use deno_core::ModuleSpecifier;
|
||||
use log::debug;
|
||||
use std::cell::RefCell;
|
||||
use std::collections::BTreeMap;
|
||||
use std::io::Write;
|
||||
use std::path::PathBuf;
|
||||
use std::rc::Rc;
|
||||
use std::sync::Arc;
|
||||
|
||||
use crate::args::ConfigFile;
|
||||
use crate::npm::NpmPackageId;
|
||||
|
@ -96,15 +91,6 @@ pub struct Lockfile {
|
|||
}
|
||||
|
||||
impl Lockfile {
|
||||
pub fn as_maybe_locker(
|
||||
lockfile: Option<Arc<Mutex<Lockfile>>>,
|
||||
) -> Option<Rc<RefCell<dyn deno_graph::source::Locker>>> {
|
||||
lockfile.as_ref().map(|lf| {
|
||||
Rc::new(RefCell::new(Locker(Some(lf.clone()))))
|
||||
as Rc<RefCell<dyn deno_graph::source::Locker>>
|
||||
})
|
||||
}
|
||||
|
||||
pub fn discover(
|
||||
flags: &Flags,
|
||||
maybe_config_file: Option<&ConfigFile>,
|
||||
|
@ -342,33 +328,6 @@ Use \"--lock-write\" flag to regenerate the lockfile at \"{}\".",
|
|||
}
|
||||
}
|
||||
|
||||
#[derive(Debug)]
|
||||
pub struct Locker(Option<Arc<Mutex<Lockfile>>>);
|
||||
|
||||
impl deno_graph::source::Locker for Locker {
|
||||
fn check_or_insert(
|
||||
&mut self,
|
||||
specifier: &ModuleSpecifier,
|
||||
source: &str,
|
||||
) -> bool {
|
||||
if let Some(lock_file) = &self.0 {
|
||||
let mut lock_file = lock_file.lock();
|
||||
lock_file.check_or_insert_remote(specifier.as_str(), source)
|
||||
} else {
|
||||
true
|
||||
}
|
||||
}
|
||||
|
||||
fn get_checksum(&self, content: &str) -> String {
|
||||
util::checksum::gen(&[content.as_bytes()])
|
||||
}
|
||||
|
||||
fn get_filename(&self) -> Option<String> {
|
||||
let lock_file = self.0.as_ref()?.lock();
|
||||
lock_file.filename.to_str().map(|s| s.to_string())
|
||||
}
|
||||
}
|
||||
|
||||
#[cfg(test)]
|
||||
mod tests {
|
||||
use super::*;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue