Hi! Thank you for the article! Deno indeed seems very interesting, and it's a project I'll keep an eye on. However I do have some questions regarding dependency resolution:
How can I tell what version of a dependency I'm installing? An untagged file can change at will, there doesn't seem to be any version control on them
How can I update dependencies for a single project if all of my dependencies are installed globally?
Is there an alternative to a package-lock.json file, so all of my installations are identical?
1/ 3/ So dependency management is not the main goal of Deno. Dependencies should be handled and maintained by the source where the dependency file is fetched (e.g. raw.githubuser).
Basically dependencies are "locked" with git ref (branch, sha, tag).
But, to ease the process, Deno recently released a new feature in 0.23 (the article is for 0.21): lockfile ! github.com/denoland/deno/pull/3231
Hi! Thank you for the article! Deno indeed seems very interesting, and it's a project I'll keep an eye on. However I do have some questions regarding dependency resolution:
package-lock.json
file, so all of my installations are identical?Hello :)
1/ 3/ So dependency management is not the main goal of Deno. Dependencies should be handled and maintained by the source where the dependency file is fetched (e.g. raw.githubuser).
Basically dependencies are "locked" with git ref (branch, sha, tag).
But, to ease the process, Deno recently released a new feature in 0.23 (the article is for 0.21): lockfile ! github.com/denoland/deno/pull/3231
1/ 2/ If you want to have a more centralized way to handle all your dependencies, you can have a file named
deps.ts
that act as a dependency barrel (e.g. github.com/bios21/deno-intro-progr... ) ; also, import map is another option deno.land/std/manual.md#import-maps