streetwriters / notesnook-importer

Import your notes from any app into Notesnook
https://importer.notesnook.com/
GNU General Public License v3.0
48 stars 9 forks source link

Errors trying to build (missing dependencies?) #59

Open lfom opened 1 year ago

lfom commented 1 year ago

Hello.

I was willing to try Notesnook, so I tried to build the importer from source. I followed the instructions in the documentation, using Garuda/Arch: I have used n-install to install LTS versions of node and npm, but the installation would fail:

  1. First with this error (below is just a snippet of it):

    npm ERR! code 127
    npm ERR! git dep preparation failed
    npm ERR! command /home/lfom/.local/n/bin/node /home/lfom/.local/n/lib/node_modules/npm/bin/npm-cli.js install --force --cache=/home/lfom/.npm --prefer-offline=false --prefer-online=false --offline=false --no-progress --no-save --no-audit --include=dev --include=peer --include=optional --no-package-lock-only --no-dry-run
    npm ERR! > node-html-parser@5.1.0 prepare
    npm ERR! > cd test && yarn install
    npm ERR! npm WARN using --force Recommended protections disabled.
    npm ERR! npm WARN EBADENGINE Unsupported engine {
    npm ERR! npm WARN EBADENGINE   package: 'htmlparser-benchmark@1.1.3',
    npm ERR! npm WARN EBADENGINE   required: { node: '0.10 || 0.11', npm: '1' },
    npm ERR! npm WARN EBADENGINE   current: { node: 'v18.14.1', npm: '9.3.1' }
    npm ERR! npm WARN EBADENGINE }
    npm ERR! npm WARN deprecated @types/entities@2.0.0: This is a stub types definition. entities provides its own type definitions, so you do not need this installed.
    npm ERR! npm WARN deprecated stringify-package@1.0.1: This module is not used anymore, and has been replaced by @npmcli/package-json
    npm ERR! npm WARN deprecated p-memoize@4.0.2: 4.0.2 has a bug which causes cache misses. Stay on 4.0.1 or upgrade to 5.0.0.
    npm ERR! npm WARN deprecated standard-version@9.3.2: standard-version is deprecated. If you're a GitHub user, I recommend https://github.com/googleapis/release-please as an alternative.
    npm ERR! npm WARN deprecated tslint@6.1.3: TSLint has been deprecated in favor of ESLint. Please see https://github.com/palantir/tslint/issues/4534 for more information.
    npm ERR! sh: line 1: yarn: command not found
    npm ERR! npm ERR! code 127
    npm ERR! npm ERR! path /home/lfom/.npm/_cacache/tmp/git-clonehdPKw6
    npm ERR! npm ERR! command failed
    npm ERR! npm ERR! command sh -c cd test && yarn install
  2. Then this one:

    npm ERR! code 1
    npm ERR! git dep preparation failed
    npm ERR! command /home/lfom/.local/n/bin/node /home/lfom/.local/n/lib/node_modules/npm/bin/npm-cli.js install --force --cache=/home/lfom/.npm --prefer-offline=false --prefer-online=false --offline=false --no-progress --no-save --no-audit --include=dev --include=peer --include=optional --no-package-lock-only --no-dry-run
    npm ERR! > node-html-parser@5.1.0 prepare
    npm ERR! > cd test && yarn install
    npm ERR! 
    npm ERR! yarn install v1.22.19
    npm ERR! info No lockfile found.
    npm ERR! [1/4] Resolving packages...
    npm ERR! [2/4] Fetching packages...
    npm ERR! info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.
    npm ERR! npm WARN using --force Recommended protections disabled.
    npm ERR! npm WARN EBADENGINE Unsupported engine {
    npm ERR! npm WARN EBADENGINE   package: 'htmlparser-benchmark@1.1.3',
    npm ERR! npm WARN EBADENGINE   required: { node: '0.10 || 0.11', npm: '1' },
    npm ERR! npm WARN EBADENGINE   current: { node: 'v18.14.1', npm: '9.3.1' }
    npm ERR! npm WARN EBADENGINE }
    npm ERR! npm WARN deprecated @types/entities@2.0.0: This is a stub types definition. entities provides its own type definitions, so you do not need this installed.
    npm ERR! npm WARN deprecated stringify-package@1.0.1: This module is not used anymore, and has been replaced by @npmcli/package-json
    npm ERR! npm WARN deprecated p-memoize@4.0.2: 4.0.2 has a bug which causes cache misses. Stay on 4.0.1 or upgrade to 5.0.0.
    npm ERR! npm WARN deprecated standard-version@9.3.2: standard-version is deprecated. If you're a GitHub user, I recommend https://github.com/googleapis/release-please as an alternative.
    npm ERR! npm WARN deprecated tslint@6.1.3: TSLint has been deprecated in favor of ESLint. Please see https://github.com/palantir/tslint/issues/4534 for more information.
    npm ERR! error https://registry.yarnpkg.com/entities/-/entities-3.0.1.tgz: Extracting tar content of undefined failed, the file appears to be corrupt: "ENOENT: no such file or directory, stat '/home/lfom/.cache/yarn/v6/npm-entities-3.0.1-2b887ca62585e96db3903482d336c1006c3001d4-integrity/node_modules/entities/LICENSE'"
    npm ERR! npm ERR! code 1
    npm ERR! npm ERR! path /home/lfom/.npm/_cacache/tmp/git-clonemcwOre
    npm ERR! npm ERR! command failed
    npm ERR! npm ERR! command sh -c cd test && yarn install

The first one was fixed by installing yarn (what is weird, since the documentation says only npm is needed), and the second one by installing entities manually:

  1. npm install yarn
  2. npm install entities

There are a lot of deprecation warnings, probably you want to have a look at it soon as you provide a public instance of the importer that may have security issues.

Regards

thecodrr commented 1 year ago

Hey, thanks for this. The yarn thing is probably due to some dependency using it to run a postinstall script. I'll see if we can replace that dependency or fix it somehow.