denoland / deno

A modern runtime for JavaScript and TypeScript.
https://deno.com
MIT License
93.5k stars 5.19k forks source link

`import.meta.resolve` does not resolve `npm:` specifiers that have not been loaded already but are in a package that is already loaded #24174

Open lucacasonato opened 1 month ago

lucacasonato commented 1 month ago
import CanvasKitInit, { CanvasKit } from "npm:canvaskit-wasm/bin/canvaskit.js";

console.log(import.meta.resolve(`npm:canvaskit-wasm/bin/canvaskit.js`));
console.log(import.meta.resolve(`npm:canvaskit-wasm/bin/canvaskit.wasm`));

This outputs:

file:///Users/lucacasonato/Library/Caches/deno/npm/registry.npmjs.org/canvaskit-wasm/0.39.1/bin/canvaskit.js
npm:canvaskit-wasm/bin/canvaskit.wasm
dsherret commented 1 month ago

I believe the same thing also occurs for jsr: specifiers.