1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2025-01-03 04:48:52 -05:00

fix(lock): only store integrities for http: and https: imports (#16558)

This commit is contained in:
Bartek Iwańczuk 2022-11-08 04:08:24 +01:00 committed by GitHub
parent ed521850af
commit 2c72e8d5f4
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
6 changed files with 30 additions and 6 deletions

View file

@ -222,6 +222,9 @@ impl Lockfile {
specifier: &str,
code: &str,
) -> bool {
if !(specifier.starts_with("http:") || specifier.starts_with("https:")) {
return true;
}
if self.overwrite {
// In case --lock-write is specified check always passes
self.insert(specifier, code);
@ -247,9 +250,6 @@ impl Lockfile {
/// Checks the given module is included, if so verify the checksum. If module
/// is not included, insert it.
fn check_or_insert(&mut self, specifier: &str, code: &str) -> bool {
if specifier.starts_with("file:") {
return true;
}
if let Some(lockfile_checksum) = self.content.remote.get(specifier) {
let compiled_checksum = crate::checksum::gen(&[code.as_bytes()]);
lockfile_checksum == &compiled_checksum
@ -260,9 +260,6 @@ impl Lockfile {
}
fn insert(&mut self, specifier: &str, code: &str) {
if specifier.starts_with("file:") {
return;
}
let checksum = crate::checksum::gen(&[code.as_bytes()]);
self.content.remote.insert(specifier.to_string(), checksum);
self.has_content_changed = true;

View file

@ -686,6 +686,12 @@ itest!(lock_v2_check_err2 {
http_server: true,
});
itest!(lock_only_http_and_https {
args: "run --lock=run/lock_only_http_and_https/deno.lock run/lock_only_http_and_https/main.ts",
output: "run/lock_only_http_and_https/main.out",
http_server: true,
});
itest!(mts_dmts_mjs {
args: "run subdir/import.mts",
output: "run/mts_dmts_mjs.out",

View file

@ -0,0 +1,3 @@
export function b() {
return "b";
}

View file

@ -0,0 +1,7 @@
{
"version": "2",
"remote": {
"http://127.0.0.1:4545/run/003_relative_import.ts": "a1572e8fd2c2712b33f04aed2561505b5feb2c8696f1f2cded3de7127931b97e",
"http://127.0.0.1:4545/subdir/print_hello.ts": "fa6692c8f9ff3fb107e773c3ece5274e9d08be282867a1e3ded1d9c00fcaa63c"
}
}

View file

@ -0,0 +1,5 @@
Download http://127.0.0.1:4545/run/003_relative_import.ts
Download http://127.0.0.1:4545/subdir/print_hello.ts
Hello
[Function: a]
[Function: b]

View file

@ -0,0 +1,6 @@
import "http://127.0.0.1:4545/run/003_relative_import.ts";
import { a } from "data:application/typescript;base64,ZW51bSBBIHsKICBBLAogIEIsCiAgQywKIH0KIAogZXhwb3J0IGZ1bmN0aW9uIGEoKSB7CiAgIHRocm93IG5ldyBFcnJvcihgSGVsbG8gJHtBLkN9YCk7CiB9CiA=";
import { b } from "./b.ts";
console.log(a);
console.log(b);