eveningkid / denodb

MySQL, SQLite, MariaDB, PostgreSQL and MongoDB ORM for Deno
https://eveningkid.com/denodb-docs
MIT License
1.93k stars 129 forks source link

Can't import the latest version 1.0.40 #359

Open akatechis opened 2 years ago

akatechis commented 2 years ago

Dependencies seem to be broken in the latest version. To reproduce:

// sample.ts
import * as denodb from "https://deno.land/x/denodb@v1.0.40/mod.ts";
console.log(denodb.Database);
> deno run sample.ts
Download https://dev.jspm.io/debug@4
Download https://dev.jspm.io/inherits@2.0
Download https://dev.jspm.io/lodash@4
Download https://dev.jspm.io/npm:@jspm/core@1/nodelibs/url.js
Download https://dev.jspm.io/npm:@jspm/core@1/nodelibs/events.js
Download https://dev.jspm.io/npm:@jspm/core@1/nodelibs/timers.js
error: Import 'https://dev.jspm.io/lodash@4' failed: 500 Internal Server Error
    at https://raw.githubusercontent.com/Zhomart/dex/930253915093e1e08d48ec0409b4aee800d8bd0c/lib-dyn/deps.ts:13:24
akatechis commented 2 years ago

If I change the import to point to 1.0.39, I'm able to import the package.

shevernitskiy commented 2 years ago

Currently i have an issue with other dep

error: Import 'https://dev.jspm.io/debug@4' failed: 500 Internal Server Error
    at https://raw.githubusercontent.com/Zhomart/dex/930253915093e1e08d48ec0409b4aee800d8bd0c/lib-dyn/deps.ts:16:23
codemaster138 commented 2 years ago

I can also reproduce this issue, but I have it with inherits@2.0...

Download https://dev.jspm.io/npm:@jspm/core@1/nodelibs/timers.js
error: Import 'https://dev.jspm.io/inherits@2.0' failed: 500 Internal Server Error
    at https://raw.githubusercontent.com/Zhomart/dex/930253915093e1e08d48ec0409b4aee800d8bd0c/lib-dyn/deps.ts:4:26

EDIT: The issue seems to happen with a different dependency each time, so this may just be a JSPM issue...

MrPossumz commented 2 years ago

So after some digging in I figured I'd give a full breakdown of what the source of the problem is for anyone else who stumbles on this.

Denodb imports dex as a dependency to build MySQL queries. The repo, Dex, (which also appears to be abandoned) imports multiple files from JSPM. The problem is that JSPM has recently changed their URL format from dev.jspm.io to jspm.dev, which has broken quite a few of Dex's imports.

If anyone would like a fast and easy fix I've forked both denodb and dex to update the import statements using JSPM's new format. Repo is here.

Denodb's unit tests are passing with these changes but the tests appear to only cover sqlite and mysql.

Edit: I've also updated the dependencies using the PR here

osieltorres commented 1 year ago

Check the following answer, as @IAmSpudLabs said, dev.jsmp.dev changed the their URL format and some time ago and some old / out-of-date dependencies does not work anymore. The following comment has a workaround to fix the error.