-
Notifications
You must be signed in to change notification settings - Fork 122
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Any plans to support deno? #344
Comments
@lowlighter I've not heard of deno until now 😄 . Can you provide any examples of, or links to documentation for,
|
but generally yes, assuming there is either a CLI or a known file format or local storage structure for used to describe dependencies then deno support can be added! I'd be happy to assist you if you want to develop a dependency enumerator for deno 😄 |
Yeah, it's a typescript runtime which is fairly recent (2018), but it does have some traction (github.com/denoland/deno), mostly because it was created by the authors of nodejs 🙂
There's a {
"root": "file:///.../deno_template/src/app.ts",
"modules": [
{
"specifier": "https://deno.land/[email protected]/testing/asserts.ts",
"dependencies": [
{
"specifier": "../fmt/colors.ts",
"isDynamic": false,
"code": "https://deno.land/[email protected]/fmt/colors.ts"
},
{
"specifier": "./_diff.ts",
"isDynamic": false,
"code": "https://deno.land/[email protected]/testing/_diff.ts"
}
],
"size": 15918,
"mediaType": "TypeScript",
"local": ".../AppData/Local/deno/deps/https/deno.land/688e058fb547030f059b02f08b6bc2f36f15d56e6edb3bce6b48fdf563fb7ae9",
"checksum": "83889f9a37bdab16cb68b023a15f9172ceb644f62c0e727c72d4870a666e53d6",
"emit": ".../AppData/Local/deno/gen/https/deno.land/688e058fb547030f059b02f08b6bc2f36f15d56e6edb3bce6b48fdf563fb7ae9.js"
}
...
],
"size": 33238
}
Most of the time, a license can be retrieved by using extracting the package root url and appending But the tricky part is to trim the modules subpaths (e.g. I've opened denoland/deno#9786 (comment) to ask if something more reliable could be done to get So I think it could be possible to integrate in licensed, but I guess the tricky parts are:
Currently I've made a small TypeScript snippet (which is in the issue listed above) and I'm running licensee directly on fetched license text and it seems to be pretty accurate. I think if this get implemented, it could be based on the sources/go.rb, but not 100% sure. Let me know if you think this could fit 🙂 |
Yeah this is likely a technical detail that would need to be kept up to date with any changes from deno. If they are able to update what gets output in If you get
We have a few other sources that have this requirement as well. Given this is a general necessity of using these dependencies, it's not too much of a concern that net access is required for the dependency source enumerator as well.
No problem here!
Yeah, the CLI and dependency structure patterns align. If there's a need to download files, then the nuget or gradle sources could be looked at. They have a pattern already to download contents for dependencies in a custom |
No, from what I know it only downloads the required files (i.e. only code files you'll actually use) so meta files are always trimmed and it doesn't seem possible to get the whole package 😕
Since dependencies are not stored entirely locally I guess it makes the search more difficult. Licenses could be fetched on multiple urls using the same logic you said about using common license file names, but it may spam the server if there are actually no matches I guess. So not sure if in current state it would actually lead to anything clean 😅 |
Ah yeah I see what you mean. Is this a critical need for you? If not, can we put this on hold pending the conversation at denoland/deno#9786 (comment)? |
No it's not critical, if needed you can close this issue and it could be reopened later when there are more ways to achieve it without requiring to hacky stuff 🙂 Thanks for your insights ! |
Hello,
So from listed sources, it seems that licensed is not able to handle deno dependencies currently, is this something that could be added?
The text was updated successfully, but these errors were encountered: