sql-js / sql-js/sql.js

Ionic-Angular 6 Error: both async and sync fetching of the wasm failed

Open
#499 1 comment 2 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
JavaScript
Stars
13.7k
Forks
1.1k
PR merge metrics
No merged PRs in 30d

Description

Hello, I'm trying to use sql.js with typeorm in an ionic@6 application, but the following error happens:

zone.js:1523          GET http://localhost:8100/sql-wasm.wasm 404 (Not Found)
Error: both async and sync fetching of the wasm failed
    at Object.Module.onAbort (sql-wasm.js:40:20)
    at I (sql-wasm.js:104:97)
    at lb (sql-wasm.js:105:136)
    at sql-wasm.js:105:408
    at ZoneDelegate.invoke (zone.js:400:1)
    at Object.onInvoke (core.mjs:25488:1)
    at ZoneDelegate.invoke (zone.js:399:1)
    at Zone.run (zone.js:160:1)
    at zone.js:1318:1
    at ZoneDelegate.invokeTask (zone.js:434:1)

My custom webpack:

const webpack = require('webpack');
console.log('The custom config is used');
module.exports = {
  plugins: [
    new webpack.ProvidePlugin({
      'window.SQL': 'sql.js/dist/sql-wasm.js'
    }),
    new webpack.NormalModuleReplacementPlugin(/typeorm$/, function (result) {
      result.request = result.request.replace(/typeorm/, "typeorm/browser");
    })
  ],

  resolve: {
    fallback: {
      fs: false,
      net: false,
      tls: false
    }
  }
};

My Ionic Info:

Ionic:

   Ionic CLI                     : 6.18.1 
   Ionic Framework               : @ionic/angular 6.0.5
   Capacitor CLI      : 3.4.0
   @capacitor/android : 3.4.0
   @capacitor/core    : 3.4.0
   @capacitor/ios     : not installed

Utility:

   cordova-res : not installed globally
   native-run  : 1.5.0

System:

   NodeJS : v14.15.0 
   npm    : 6.14.8
   OS     : Windows 10

I'm using sql.js@1.3.2 typeorm@0.2.41

Would anyone have a solution?

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the sql-wasm.js request and the custom webpack configuration shown in the issue, then inspect how the Ionic application serves the sql-wasm.wasm asset. Done means the asset no longer returns 404 and TypeORM can initialize sql.js without the fetching error.

Written by the indexing model from the issue text.

Assessment

Tech stack
angular, javascript, wasm, webpack
Domain
build-system, databases, web-dev
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.