You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
JSR is npm compatible by offering their packages as scoped packages (ie. @jsr/*) & modifying the package names to be transformed with underscores instead of forward slashes delimitating the scope+name (ex. @luca/cases becomes @jsr/luca__cases).
Currently, users need to create a .npmrc file with a scoped config (ex. @jsr:registry=https://npm.jsr.io) & this will allow users of npm, pnpm, bun etc. to install those packages (ex. npm install @jsr/luca__cases@1). We can do better.
Suggestion
We should support a jsr: protocol by default in Spec/DepID so that user's don't need to use the weird double underscore pattern & define a scoped registry config. This kind of first-class support can net us some good-will from the Deno community & also helps them tell a more cohesive story for managing JSR packages (since the Deno runtime itself & deno.json files let users reference JSR packages as jsr:@luca/cases).
Implementation
support jsr: by default in Spec
transform the scope+name to be compatible for fetching from https://npm.jsr.io (ie. the definition jsr:@luca/cases will result in us fetching a Packument for @jsr/luca__cases from https://npm.jsr.io/) in pick-manifest
Description
JSR is
npm
compatible by offering their packages as scoped packages (ie.@jsr/*
) & modifying the package names to be transformed with underscores instead of forward slashes delimitating the scope+name (ex.@luca/cases
becomes@jsr/luca__cases
).Currently, users need to create a
.npmrc
file with a scoped config (ex.@jsr:registry=https://npm.jsr.io
) & this will allow users ofnpm
,pnpm
,bun
etc. to install those packages (ex.npm install @jsr/luca__cases@1
). We can do better.Suggestion
We should support a
jsr:
protocol by default inSpec
/DepID
so that user's don't need to use the weird double underscore pattern & define a scoped registry config. This kind of first-class support can net us some good-will from the Deno community & also helps them tell a more cohesive story for managing JSR packages (since the Deno runtime itself &deno.json
files let users reference JSR packages asjsr:@luca/cases
).Implementation
jsr:
by default inSpec
https://npm.jsr.io
(ie. the definitionjsr:@luca/cases
will result in us fetching a Packument for@jsr/luca__cases
fromhttps://npm.jsr.io/
) inpick-manifest
Example Fetch Manifest Logic
The text was updated successfully, but these errors were encountered: