sudoroom / sudo-humans

hackerspace membership server
Other
37 stars 19 forks source link

Dockerfile not up to date #88

Open almereyda opened 5 years ago

almereyda commented 5 years ago

In trying to reuse the existing Dockerfile, this was only possible after

  1. following the instructions in https://flaviocopes.com/update-npm-dependencies/ on the source repository
  2. removing the sudoroom-data symlink and replacing it with an empty folder #75
  3. copying settings.example.js to settings.js,
  4. simplifying the build
$ diff --git a/Dockerfile b/Dockerfile
index b48265c..f612f1c 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -1,12 +1,9 @@
-# Start with debian jessie
-FROM debian:jessie
+FROM node:8-stretch-slim
 # Get prerequisites
+
 RUN apt-get update && apt-get install -y \
   libcairo2-dev \
-  man-db \
-  nodejs \
-  nodejs-legacy \
-  npm
+  man-db
 # Put the (symlinked) db in here
 RUN mkdir -p /usr/src/sudoroom-data
 # Put the app in here
$ docker build -t sudoroom/sudo-humans .

and running with

  1. $ docker run --rm -it -p 8082:80 -v $(pwd)/settings.js:/usr/src/app/settings.js sudoroom/sudo-humans then.

Unfortunately this yields a Node.js error from hell:


> sudo-humans@0.0.0 start /usr/src/app
> bin/cmd.js

node[17]: ../src/tcp_wrap.cc:145:static void node::TCPWrap::New(const v8::FunctionCallbackInfo<v8::Value>&): Assertion `args[0]->IsInt32()' failed.
 1: node::Abort() [node]
 2: 0x8cd37b [node]
 3: node::TCPWrap::New(v8::FunctionCallbackInfo<v8::Value> const&) [node]
 4: v8::internal::FunctionCallbackArguments::Call(void (*)(v8::FunctionCallbackInfo<v8::Value> const&)) [node]
 5: 0xb0dc4f [node]
 6: v8::internal::Builtin_HandleApiCall(int, v8::internal::Object**, v8::internal::Isolate*) [node]
 7: 0x38c4426842fd
Aborted (core dumped)
npm ERR! code ELIFECYCLE
npm ERR! errno 134
npm ERR! sudo-humans@0.0.0 start: `bin/cmd.js`
npm ERR! Exit status 134
npm ERR! 
npm ERR! Failed at the sudo-humans@0.0.0 start script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /root/.npm/_logs/2019-03-21T01_37_43_742Z-debug.log

which may be due to liberal use of Node 8 and straight updating of all packages in package.json

diff --git a/package.json b/package.json
index 6de0d02..3d2fd86 100644
--- a/package.json
+++ b/package.json
@@ -7,47 +7,47 @@
   },
   "dependencies": {
     "accountdown": "^4.1.0",
-    "accountdown-basic": "^1.0.0",
-    "async": "^1.4.2",
-    "body": "^4.5.0",
-    "changes-feed": "^1.0.0",
-    "changesdown": "^2.2.0",
-    "concat-stream": "^1.4.7",
-    "content-addressable-blob-store": "^4.1.1",
-    "cookie-auth": "^2.4.1",
-    "duplexer2": "0.0.2",
-    "ecstatic": "~0.5.8",
+    "accountdown-basic": "^1.1.0",
+    "async": "^2.6.2",
+    "body": "^5.1.0",
+    "changes-feed": "^1.1.0",
+    "changesdown": "^2.3.1",
+    "concat-stream": "^2.0.0",
+    "content-addressable-blob-store": "^4.6.0",
+    "cookie-auth": "^2.4.2",
+    "duplexer2": "0.1.4",
+    "ecstatic": "~3.3.1",
     "escape-html": "^1.0.3",
     "html-template": "^1.2.2",
-    "hyperquest": "^1.0.1",
+    "hyperquest": "^2.1.3",
     "hyperstream": "^1.2.2",
     "index-feed": "^1.0.0",
-    "is-root": "^1.0.0",
-    "leveldown": "0.10.5",
-    "level-dump": "1.0.0",
-    "level-packager": "~0.18.0",
+    "is-root": "^2.0.0",
+    "leveldown": "4.0.2",
+    "level-dump": "1.1.0",
+    "level-packager": "~5.0.0",
     "level-change-processor": "^1.0.0",
-    "marked": "^0.3.3",
-    "minimist": "^1.1.0",
-    "mkdirp": "^0.5.0",
-    "moment": "^2.10.6",
-    "nodemailer": "^1.3.4",
-    "nodemailer-smtp-transport": "^1.0.3",
-    "once": "^1.3.1",
-    "persona-id": "~0.0.2",
-    "promise": "^7.1.1",
-    "pug": "^2.0.0-rc.1",
+    "marked": "^0.6.1",
+    "minimist": "^1.2.0",
+    "mkdirp": "^0.5.1",
+    "moment": "^2.24.0",
+    "nodemailer": "^5.1.1",
+    "nodemailer-smtp-transport": "^2.7.4",
+    "once": "^1.4.0",
+    "persona-id": "~0.3.0",
+    "promise": "^8.0.3",
+    "pug": "^2.0.3",
     "retricon-without-canvas": "^1.0.0",
-    "routes": "^2.0.0",
-    "shasum": "^1.0.1",
-    "stream-combiner2": "^1.0.2",
-    "stripe": "^4.0.0",
-    "subleveldown": "^1.0.6",
-    "tcp-bind": "^1.1.1",
-    "through2": "^0.6.3",
-    "timeago": "^0.2.0",
-    "xkcd-password": "^1.2.0",
-    "xtend": "^4.0.0"
+    "routes": "^2.1.0",
+    "shasum": "^1.0.2",
+    "stream-combiner2": "^1.1.1",
+    "stripe": "^6.28.0",
+    "subleveldown": "^3.0.1",
+    "tcp-bind": "^1.2.0",
+    "through2": "^3.0.1",
+    "timeago": "^1.6.5",
+    "xkcd-password": "^2.0.0",
+    "xtend": "^4.0.1"
   },
   "scripts": {
     "start": "bin/cmd.js"

Is it worth for you to debug this occurrence?

zyphlar commented 5 years ago

I also tried running via docker directly and first got the contents of First Run, seemingly a lack of pug. Then I tried @almereyda's solution and had to add python and build-essential to node:8-stretch-slim in order to satisfy dependencies, but still hit a brick wall with the contents of Second Run which seems to be a fundamental compilation error/incompatibility that I'm not enough of a nodejs person to debug.

First Run

FROM node:8-stretch-slim
# Get prerequisites

RUN apt-get update && apt-get install -y \
  libcairo2-dev \
  man-db
# Put the (symlinked) db in here
RUN mkdir -p /usr/src/sudoroom-data
# Put the app in here
RUN mkdir -p /usr/src/app
WORKDIR /usr/src/app
# Get npm stuff
COPY package.json /usr/src/app/
RUN npm install
# Get everything else
COPY . /usr/src/app
# Expose the port we listen on
EXPOSE 80
# Run it
CMD [ "npm", "start" ]
Step 7/10 : RUN npm install
 ---> Running in 3a3e2b23513d
npm WARN deprecated ecstatic@0.5.8: https://github.com/jfhbrook/node-ecstatic/issues/259
npm WARN deprecated nodemailer@1.11.0: All versions below 4.0.1 of Nodemailer are deprecated. See https://nodemailer.com/status/
npm WARN deprecated mailcomposer@2.1.0: This project is unmaintained
npm WARN deprecated buildmail@2.0.0: This project is unmaintained
npm WARN engine clean-css@4.2.1: wanted: {"node":">= 4.0"} (current: {"node":"0.10.29","npm":"1.4.21"})
npm ERR! Error: ENOENT, lstat '/usr/src/app/node_modules/pug/node_modules/pug-code-gen/node_modules/with/node_modules/acorn/package.json'
npm ERR! If you need help, you may report this *entire* log,
npm ERR! including the npm and node versions, at:
npm ERR!     <http://github.com/npm/npm/issues>

npm ERR! System Linux 4.15.0-51-generic
npm ERR! command "/usr/bin/nodejs" "/usr/bin/npm" "install"
npm ERR! cwd /usr/src/app
npm ERR! node -v v0.10.29
npm ERR! npm -v 1.4.21
npm ERR! path /usr/src/app/node_modules/pug/node_modules/pug-code-gen/node_modules/with/node_modules/acorn/package.json
npm ERR! fstream_path /usr/src/app/node_modules/pug/node_modules/pug-code-gen/node_modules/with/node_modules/acorn/package.json
npm ERR! fstream_type File
npm ERR! fstream_class FileWriter
npm ERR! code ENOENT
npm ERR! errno 34
npm ERR! fstream_stack /usr/lib/nodejs/fstream/lib/writer.js:284:26
npm ERR! fstream_stack Object.oncomplete (evalmachine.<anonymous>:107:15)
npm ERR! error rolling back Error: ENOTEMPTY, rmdir '/usr/src/app/node_modules/pug/node_modules/pug-code-gen/node_modules/with/node_modules'
npm ERR! error rolling back  pug-code-gen@2.0.2 { [Error: ENOTEMPTY, rmdir '/usr/src/app/node_modules/pug/node_modules/pug-code-gen/node_modules/with/node_modules']
npm ERR! error rolling back   errno: 53,
npm ERR! error rolling back   code: 'ENOTEMPTY',
npm ERR! error rolling back   path: '/usr/src/app/node_modules/pug/node_modules/pug-code-gen/node_modules/with/node_modules' }
npm ERR! error rolling back Error: ENOTEMPTY, rmdir '/usr/src/app/node_modules/pug/node_modules/pug-filters/node_modules/resolve'
npm ERR! error rolling back  pug@2.0.4 { [Error: ENOTEMPTY, rmdir '/usr/src/app/node_modules/pug/node_modules/pug-filters/node_modules/resolve']
npm ERR! error rolling back   errno: 53,
npm ERR! error rolling back   code: 'ENOTEMPTY',
npm ERR! error rolling back   path: '/usr/src/app/node_modules/pug/node_modules/pug-filters/node_modules/resolve' }
npm ERR! Error: Method Not Allowed
npm ERR!     at errorResponse (/usr/share/npm/lib/cache/add-named.js:260:10)
npm ERR!     at /usr/share/npm/lib/cache/add-named.js:203:12
npm ERR!     at saved (/usr/share/npm/node_modules/npm-registry-client/lib/get.js:167:7)
npm ERR!     at Object.oncomplete (fs.js:107:15)
npm ERR! If you need help, you may report this *entire* log,
npm ERR! including the npm and node versions, at:
npm ERR!     <http://github.com/npm/npm/issues>

npm ERR! System Linux 4.15.0-51-generic
npm ERR! command "/usr/bin/nodejs" "/usr/bin/npm" "install"
npm ERR! cwd /usr/src/app
npm ERR! node -v v0.10.29
npm ERR! npm -v 1.4.21
npm ERR! code E405
npm ERR! Error: ENOENT, lstat '/usr/src/app/node_modules/pug/node_modules/pug-filters/node_modules/constantinople/lib/index.d.ts'
npm ERR! If you need help, you may report this *entire* log,
npm ERR! including the npm and node versions, at:
npm ERR!     <http://github.com/npm/npm/issues>

npm ERR! System Linux 4.15.0-51-generic
npm ERR! command "/usr/bin/nodejs" "/usr/bin/npm" "install"
npm ERR! cwd /usr/src/app
npm ERR! node -v v0.10.29
npm ERR! npm -v 1.4.21
npm ERR! path /usr/src/app/node_modules/pug/node_modules/pug-filters/node_modules/constantinople/lib/index.d.ts
npm ERR! fstream_path /usr/src/app/node_modules/pug/node_modules/pug-filters/node_modules/constantinople/lib/index.d.ts
npm ERR! fstream_type File
npm ERR! fstream_class FileWriter
npm ERR! code ENOENT
npm ERR! errno 34
npm ERR! fstream_stack /usr/lib/nodejs/fstream/lib/writer.js:284:26
npm ERR! fstream_stack Object.oncomplete (evalmachine.<anonymous>:107:15)
npm WARN engine mime@1.6.0: wanted: {"node":">=4"} (current: {"node":"0.10.29","npm":"1.4.21"})
npm ERR! Error: ENOENT, lstat '/usr/src/app/node_modules/pug/node_modules/pug-code-gen/node_modules/with/node_modules/acorn-globals/index.js'
npm ERR! If you need help, you may report this *entire* log,
npm ERR! including the npm and node versions, at:
npm ERR!     <http://github.com/npm/npm/issues>

npm ERR! System Linux 4.15.0-51-generic
npm ERR! command "/usr/bin/nodejs" "/usr/bin/npm" "install"
npm ERR! cwd /usr/src/app
npm ERR! node -v v0.10.29
npm ERR! npm -v 1.4.21
npm ERR! path /usr/src/app/node_modules/pug/node_modules/pug-code-gen/node_modules/with/node_modules/acorn-globals/index.js
npm ERR! fstream_path /usr/src/app/node_modules/pug/node_modules/pug-code-gen/node_modules/with/node_modules/acorn-globals/index.js
npm ERR! fstream_type File
npm ERR! fstream_class FileWriter
npm ERR! code ENOENT
npm ERR! errno 34
npm ERR! fstream_stack /usr/lib/nodejs/fstream/lib/writer.js:284:26
npm ERR! fstream_stack Object.oncomplete (evalmachine.<anonymous>:107:15)
npm ERR! Error: ENOENT, lstat '/usr/src/app/node_modules/pug/node_modules/pug-filters/node_modules/uglify-js/lib/ast.js'
npm ERR! If you need help, you may report this *entire* log,
npm ERR! including the npm and node versions, at:
npm ERR!     <http://github.com/npm/npm/issues>

npm ERR! System Linux 4.15.0-51-generic
npm ERR! command "/usr/bin/nodejs" "/usr/bin/npm" "install"
npm ERR! cwd /usr/src/app
npm ERR! node -v v0.10.29
npm ERR! npm -v 1.4.21
npm ERR! path /usr/src/app/node_modules/pug/node_modules/pug-filters/node_modules/uglify-js/lib/ast.js
npm ERR! fstream_path /usr/src/app/node_modules/pug/node_modules/pug-filters/node_modules/uglify-js/lib/ast.js
npm ERR! fstream_type File
npm ERR! fstream_class FileWriter
npm ERR! code ENOENT
npm ERR! errno 34
npm ERR! fstream_stack /usr/lib/nodejs/fstream/lib/writer.js:284:26
npm ERR! fstream_stack Object.oncomplete (evalmachine.<anonymous>:107:15)
npm ERR! Error: ENOENT, lstat '/usr/src/app/node_modules/pug/node_modules/pug-filters/node_modules/clean-css/History.md'
npm ERR! If you need help, you may report this *entire* log,
npm ERR! including the npm and node versions, at:
npm ERR!     <http://github.com/npm/npm/issues>

npm ERR! System Linux 4.15.0-51-generic
npm ERR! command "/usr/bin/nodejs" "/usr/bin/npm" "install"
npm ERR! cwd /usr/src/app
npm ERR! node -v v0.10.29
npm ERR! npm -v 1.4.21
npm ERR! path /usr/src/app/node_modules/pug/node_modules/pug-filters/node_modules/clean-css/History.md
npm ERR! fstream_path /usr/src/app/node_modules/pug/node_modules/pug-filters/node_modules/clean-css/History.md
npm ERR! fstream_type File
npm ERR! fstream_class FileWriter
npm ERR! code ENOENT
npm ERR! errno 34
npm ERR! fstream_stack /usr/lib/nodejs/fstream/lib/writer.js:284:26
npm ERR! fstream_stack Object.oncomplete (evalmachine.<anonymous>:107:15)
npm WARN engine escodegen@1.9.1: wanted: {"node":">=4.0"} (current: {"node":"0.10.29","npm":"1.4.21"})
npm WARN engine esprima@3.1.3: wanted: {"node":">=4"} (current: {"node":"0.10.29","npm":"1.4.21"})

> leveldown@0.10.5 install /usr/src/app/node_modules/leveldown
> node-gyp rebuild

make: Entering directory '/usr/src/app/node_modules/leveldown/build'
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/db/builder.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/db/db_impl.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/db/db_iter.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/db/filename.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/db/dbformat.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/db/log_reader.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/db/log_writer.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/db/memtable.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/db/repair.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/db/table_cache.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/db/version_edit.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/db/version_set.o
../deps/leveldb/leveldb-1.14.0/db/version_set.cc:58:13: warning: 'std::string leveldb::{anonymous}::IntSetToString(const std::set<long unsigned int>&)' defined but not used [-Wunused-function]
 std::string IntSetToString(const std::set<uint64_t>& s) {
             ^
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/db/write_batch.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/helpers/memenv/memenv.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/table/block.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/table/block_builder.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/table/filter_block.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/table/format.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/table/iterator.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/table/merger.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/table/table.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/table/table_builder.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/table/two_level_iterator.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/util/arena.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/util/bloom.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/util/cache.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/util/coding.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/util/comparator.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/util/crc32c.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/util/env.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/util/filter_policy.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/util/hash.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/util/logging.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/util/options.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/util/status.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/port/port_posix.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/util/env_posix.o
  AR(target) Release/obj.target/deps/leveldb/leveldb.a
  COPY Release/leveldb.a
  CXX(target) Release/obj.target/snappy/deps/snappy/snappy-1.1.1/snappy-sinksource.o
  CXX(target) Release/obj.target/snappy/deps/snappy/snappy-1.1.1/snappy-stubs-internal.o
  CXX(target) Release/obj.target/snappy/deps/snappy/snappy-1.1.1/snappy.o
  AR(target) Release/obj.target/deps/snappy/snappy.a
  COPY Release/snappy.a
  CXX(target) Release/obj.target/leveldown/src/batch.o
  CXX(target) Release/obj.target/leveldown/src/batch_async.o
  CXX(target) Release/obj.target/leveldown/src/database.o
  CXX(target) Release/obj.target/leveldown/src/database_async.o
  CXX(target) Release/obj.target/leveldown/src/iterator.o
  CXX(target) Release/obj.target/leveldown/src/iterator_async.o
  CXX(target) Release/obj.target/leveldown/src/leveldown.o
  CXX(target) Release/obj.target/leveldown/src/leveldown_async.o
  SOLINK_MODULE(target) Release/obj.target/leveldown.node
  SOLINK_MODULE(target) Release/obj.target/leveldown.node: Finished
  COPY Release/leveldown.node
make: Leaving directory '/usr/src/app/node_modules/leveldown/build'
npm ERR! 
npm ERR! Additional logging details can be found in:
npm ERR!     /usr/src/app/npm-debug.log
npm ERR! not ok code 0
The command '/bin/sh -c npm install' returned a non-zero code: 34

Second Run

FROM node:8-stretch-slim
# Get prerequisites

RUN apt-get update && apt-get install -y \
  libcairo2-dev \
  man-db \
  python \
  build-essential
# Put the (symlinked) db in here
RUN mkdir -p /usr/src/sudoroom-data
# Put the app in here
RUN mkdir -p /usr/src/app
WORKDIR /usr/src/app
# Get npm stuff
COPY package.json /usr/src/app/
RUN npm install
# Get everything else
COPY . /usr/src/app
# Expose the port we listen on
EXPOSE 80
# Run it
CMD [ "npm", "start" ]
Step 7/10 : RUN npm install
 ---> Running in c43b855e8808
npm WARN deprecated ecstatic@0.5.8: https://github.com/jfhbrook/node-ecstatic/issues/259
npm WARN deprecated nodemailer@1.11.0: All versions below 4.0.1 of Nodemailer are deprecated. See https://nodemailer.com/status/
npm WARN deprecated mailcomposer@2.1.0: This project is unmaintained
npm WARN deprecated buildmail@2.0.0: This project is unmaintained

> leveldown@0.10.5 install /usr/src/app/node_modules/leveldown
> node-gyp rebuild

make: Entering directory '/usr/src/app/node_modules/leveldown/build'
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/db/builder.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/db/db_impl.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/db/db_iter.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/db/filename.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/db/dbformat.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/db/log_reader.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/db/log_writer.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/db/memtable.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/db/repair.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/db/table_cache.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/db/version_edit.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/db/version_set.o
../deps/leveldb/leveldb-1.14.0/db/version_set.cc:58:13: warning: 'std::__cxx11::string leveldb::{anonymous}::IntSetToString(const std::set<long unsigned int>&)' defined but not used [-Wunused-function]
 std::string IntSetToString(const std::set<uint64_t>& s) {
             ^~~~~~~~~~~~~~
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/db/write_batch.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/helpers/memenv/memenv.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/table/block.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/table/block_builder.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/table/filter_block.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/table/format.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/table/iterator.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/table/merger.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/table/table.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/table/table_builder.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/table/two_level_iterator.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/util/arena.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/util/bloom.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/util/cache.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/util/coding.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/util/comparator.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/util/crc32c.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/util/env.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/util/filter_policy.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/util/hash.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/util/logging.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/util/options.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/util/status.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/port/port_posix.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.14.0/util/env_posix.o
  AR(target) Release/obj.target/deps/leveldb/leveldb.a
  COPY Release/leveldb.a
  CXX(target) Release/obj.target/snappy/deps/snappy/snappy-1.1.1/snappy-sinksource.o
  CXX(target) Release/obj.target/snappy/deps/snappy/snappy-1.1.1/snappy-stubs-internal.o
  CXX(target) Release/obj.target/snappy/deps/snappy/snappy-1.1.1/snappy.o
  AR(target) Release/obj.target/deps/snappy/snappy.a
  COPY Release/snappy.a
  CXX(target) Release/obj.target/leveldown/src/batch.o
In file included from ../../nan/nan.h:82:0,
                 from ../src/batch.cc:5:
../../nan/nan_new.h: In function 'v8::Local<T> NanIntern::To(v8::Handle<v8::Integer>) [with T = v8::Int32; v8::Handle<v8::Integer> = v8::Local<v8::Integer>]':
../../nan/nan_new.h:34:64: warning: 'v8::Local<v8::Int32> v8::Value::ToInt32() const' is deprecated: Use maybe version [-Wdeprecated-declarations]
 To<v8::Int32>(v8::Handle<v8::Integer> i)   { return i->ToInt32(); }
                                                                ^
In file included from /root/.node-gyp/8.16.0/include/node/node.h:63:0,
                 from ../src/batch.cc:1:
/root/.node-gyp/8.16.0/include/node/v8.h:9864:14: note: declared here
 Local<Int32> Value::ToInt32() const {
              ^~~~~
In file included from ../../nan/nan.h:82:0,
                 from ../src/batch.cc:5:
../../nan/nan_new.h: In function 'v8::Local<T> NanIntern::To(v8::Handle<v8::Integer>) [with T = v8::Uint32; v8::Handle<v8::Integer> = v8::Local<v8::Integer>]':
../../nan/nan_new.h:39:65: warning: 'v8::Local<v8::Uint32> v8::Value::ToUint32() const' is deprecated: Use maybe version [-Wdeprecated-declarations]
 To<v8::Uint32>(v8::Handle<v8::Integer> i)  { return i->ToUint32(); }
                                                                 ^
In file included from /root/.node-gyp/8.16.0/include/node/node.h:63:0,
                 from ../src/batch.cc:1:
/root/.node-gyp/8.16.0/include/node/v8.h:9858:15: note: declared here
 Local<Uint32> Value::ToUint32() const {
               ^~~~~
In file included from ../../nan/nan_new.h:189:0,
                 from ../../nan/nan.h:82,
                 from ../src/batch.cc:5:
../../nan/nan_implementation_12_inl.h: In static member function 'static NanIntern::FactoryBase<v8::BooleanObject>::return_t NanIntern::Factory<v8::BooleanObject>::New(bool)':
../../nan/nan_implementation_12_inl.h:49:38: warning: 'static v8::Local<v8::Value> v8::BooleanObject::New(bool)' is deprecated: Pass an isolate [-Wdeprecated-declarations]
   return v8::BooleanObject::New(value).As<v8::BooleanObject>();
                                      ^
In file included from /root/.node-gyp/8.16.0/include/node/v8.h:26:0,
                 from /root/.node-gyp/8.16.0/include/node/node.h:63,
                 from ../src/batch.cc:1:
/root/.node-gyp/8.16.0/include/node/v8.h:4895:56: note: declared here
   V8_DEPRECATED("Pass an isolate", static Local<Value> New(bool value));
                                                        ^
/root/.node-gyp/8.16.0/include/node/v8config.h:318:3: note: in definition of macro 'V8_DEPRECATED'
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
In file included from ../../nan/nan_new.h:189:0,
                 from ../../nan/nan.h:82,
                 from ../src/batch.cc:5:
../../nan/nan_implementation_12_inl.h: In static member function 'static NanIntern::FactoryBase<v8::Script>::return_t NanIntern::Factory<v8::Script>::New(v8::Local<v8::String>)':
../../nan/nan_implementation_12_inl.h:166:69: warning: 'static v8::Local<v8::Script> v8::ScriptCompiler::Compile(v8::Isolate*, v8::ScriptCompiler::Source*, v8::ScriptCompiler::CompileOptions)' is deprecated: Use maybe version [-Wdeprecated-declarations]
   return v8::ScriptCompiler::Compile(v8::Isolate::GetCurrent(), &src);
                                                                     ^
In file included from /root/.node-gyp/8.16.0/include/node/v8.h:26:0,
                 from /root/.node-gyp/8.16.0/include/node/node.h:63,
                 from ../src/batch.cc:1:
/root/.node-gyp/8.16.0/include/node/v8.h:1475:21: note: declared here
       Local<Script> Compile(Isolate* isolate, Source* source,
                     ^
/root/.node-gyp/8.16.0/include/node/v8config.h:318:3: note: in definition of macro 'V8_DEPRECATED'
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
In file included from ../../nan/nan_new.h:189:0,
                 from ../../nan/nan.h:82,
                 from ../src/batch.cc:5:
../../nan/nan_implementation_12_inl.h: In static member function 'static NanIntern::FactoryBase<v8::Script>::return_t NanIntern::Factory<v8::Script>::New(v8::Local<v8::String>, const v8::ScriptOrigin&)':
../../nan/nan_implementation_12_inl.h:173:69: warning: 'static v8::Local<v8::Script> v8::ScriptCompiler::Compile(v8::Isolate*, v8::ScriptCompiler::Source*, v8::ScriptCompiler::CompileOptions)' is deprecated: Use maybe version [-Wdeprecated-declarations]
   return v8::ScriptCompiler::Compile(v8::Isolate::GetCurrent(), &src);
                                                                     ^
In file included from /root/.node-gyp/8.16.0/include/node/v8.h:26:0,
                 from /root/.node-gyp/8.16.0/include/node/node.h:63,
                 from ../src/batch.cc:1:
/root/.node-gyp/8.16.0/include/node/v8.h:1475:21: note: declared here
       Local<Script> Compile(Isolate* isolate, Source* source,
                     ^
/root/.node-gyp/8.16.0/include/node/v8config.h:318:3: note: in definition of macro 'V8_DEPRECATED'
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
In file included from ../../nan/nan_new.h:189:0,
                 from ../../nan/nan.h:82,
                 from ../src/batch.cc:5:
../../nan/nan_implementation_12_inl.h: In static member function 'static NanIntern::FactoryBase<v8::String>::return_t NanIntern::Factory<v8::String>::New(const uint8_t*, int)':
../../nan/nan_implementation_12_inl.h:206:42: warning: 'static v8::Local<v8::String> v8::String::NewFromOneByte(v8::Isolate*, const uint8_t*, v8::String::NewStringType, int)' is deprecated: Use maybe version [-Wdeprecated-declarations]
         v8::String::kNormalString, length);
                                          ^
In file included from /root/.node-gyp/8.16.0/include/node/v8.h:26:0,
                 from /root/.node-gyp/8.16.0/include/node/node.h:63,
                 from ../src/batch.cc:1:
/root/.node-gyp/8.16.0/include/node/v8.h:2731:21: note: declared here
       Local<String> NewFromOneByte(Isolate* isolate, const uint8_t* data,
                     ^
/root/.node-gyp/8.16.0/include/node/v8config.h:318:3: note: in definition of macro 'V8_DEPRECATED'
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
In file included from ../../nan/nan_new.h:189:0,
                 from ../../nan/nan.h:82,
                 from ../src/batch.cc:5:
../../nan/nan_implementation_12_inl.h: In static member function 'static NanIntern::FactoryBase<v8::String>::return_t NanIntern::Factory<v8::String>::New(v8::String::ExternalStringResource*)':
../../nan/nan_implementation_12_inl.h:217:66: warning: 'static v8::Local<v8::String> v8::String::NewExternal(v8::Isolate*, v8::String::ExternalStringResource*)' is deprecated: Use maybe version [-Wdeprecated-declarations]
   return v8::String::NewExternal(v8::Isolate::GetCurrent(), value);
                                                                  ^
In file included from /root/.node-gyp/8.16.0/include/node/v8.h:26:0,
                 from /root/.node-gyp/8.16.0/include/node/node.h:63,
                 from ../src/batch.cc:1:
/root/.node-gyp/8.16.0/include/node/v8.h:2769:38: note: declared here
                        Local<String> NewExternal(
                                      ^
/root/.node-gyp/8.16.0/include/node/v8config.h:318:3: note: in definition of macro 'V8_DEPRECATED'
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
In file included from ../../nan/nan_new.h:189:0,
                 from ../../nan/nan.h:82,
                 from ../src/batch.cc:5:
../../nan/nan_implementation_12_inl.h: In static member function 'static NanIntern::FactoryBase<v8::UnboundScript>::return_t NanIntern::Factory<v8::UnboundScript>::New(v8::Local<v8::String>)':
../../nan/nan_implementation_12_inl.h:237:30: warning: 'static v8::Local<v8::UnboundScript> v8::ScriptCompiler::CompileUnbound(v8::Isolate*, v8::ScriptCompiler::Source*, v8::ScriptCompiler::CompileOptions)' is deprecated: Use maybe version [-Wdeprecated-declarations]
   return v8::ScriptCompiler::CompileUnbound(v8::Isolate::GetCurrent(), &src);
                              ^~~~~~~~~~~~~~
In file included from /root/.node-gyp/8.16.0/include/node/v8.h:26:0,
                 from /root/.node-gyp/8.16.0/include/node/node.h:63,
                 from ../src/batch.cc:1:
/root/.node-gyp/8.16.0/include/node/v8.h:1455:45: note: declared here
                        Local<UnboundScript> CompileUnbound(
                                             ^
/root/.node-gyp/8.16.0/include/node/v8config.h:318:3: note: in definition of macro 'V8_DEPRECATED'
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
In file included from ../../nan/nan_new.h:189:0,
                 from ../../nan/nan.h:82,
                 from ../src/batch.cc:5:
../../nan/nan_implementation_12_inl.h:237:76: warning: 'static v8::Local<v8::UnboundScript> v8::ScriptCompiler::CompileUnbound(v8::Isolate*, v8::ScriptCompiler::Source*, v8::ScriptCompiler::CompileOptions)' is deprecated: Use maybe version [-Wdeprecated-declarations]
   return v8::ScriptCompiler::CompileUnbound(v8::Isolate::GetCurrent(), &src);
                                                                            ^
In file included from /root/.node-gyp/8.16.0/include/node/v8.h:26:0,
                 from /root/.node-gyp/8.16.0/include/node/node.h:63,
                 from ../src/batch.cc:1:
/root/.node-gyp/8.16.0/include/node/v8.h:1455:45: note: declared here
                        Local<UnboundScript> CompileUnbound(
                                             ^
/root/.node-gyp/8.16.0/include/node/v8config.h:318:3: note: in definition of macro 'V8_DEPRECATED'
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
In file included from ../../nan/nan_new.h:189:0,
                 from ../../nan/nan.h:82,
                 from ../src/batch.cc:5:
../../nan/nan_implementation_12_inl.h: In static member function 'static NanIntern::FactoryBase<v8::UnboundScript>::return_t NanIntern::Factory<v8::UnboundScript>::New(v8::Local<v8::String>, const v8::ScriptOrigin&)':
../../nan/nan_implementation_12_inl.h:244:30: warning: 'static v8::Local<v8::UnboundScript> v8::ScriptCompiler::CompileUnbound(v8::Isolate*, v8::ScriptCompiler::Source*, v8::ScriptCompiler::CompileOptions)' is deprecated: Use maybe version [-Wdeprecated-declarations]
   return v8::ScriptCompiler::CompileUnbound(v8::Isolate::GetCurrent(), &src);
                              ^~~~~~~~~~~~~~
In file included from /root/.node-gyp/8.16.0/include/node/v8.h:26:0,
                 from /root/.node-gyp/8.16.0/include/node/node.h:63,
                 from ../src/batch.cc:1:
/root/.node-gyp/8.16.0/include/node/v8.h:1455:45: note: declared here
                        Local<UnboundScript> CompileUnbound(
                                             ^
/root/.node-gyp/8.16.0/include/node/v8config.h:318:3: note: in definition of macro 'V8_DEPRECATED'
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
In file included from ../../nan/nan_new.h:189:0,
                 from ../../nan/nan.h:82,
                 from ../src/batch.cc:5:
../../nan/nan_implementation_12_inl.h:244:76: warning: 'static v8::Local<v8::UnboundScript> v8::ScriptCompiler::CompileUnbound(v8::Isolate*, v8::ScriptCompiler::Source*, v8::ScriptCompiler::CompileOptions)' is deprecated: Use maybe version [-Wdeprecated-declarations]
   return v8::ScriptCompiler::CompileUnbound(v8::Isolate::GetCurrent(), &src);
                                                                            ^
In file included from /root/.node-gyp/8.16.0/include/node/v8.h:26:0,
                 from /root/.node-gyp/8.16.0/include/node/node.h:63,
                 from ../src/batch.cc:1:
/root/.node-gyp/8.16.0/include/node/v8.h:1455:45: note: declared here
                        Local<UnboundScript> CompileUnbound(
                                             ^
/root/.node-gyp/8.16.0/include/node/v8config.h:318:3: note: in definition of macro 'V8_DEPRECATED'
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
In file included from ../src/batch.cc:5:0:
../../nan/nan.h: At global scope:
../../nan/nan.h:261:25: error: redefinition of 'template<class T> v8::Local<T> _NanEnsureLocal(v8::Local<T>)'
 NAN_INLINE v8::Local<T> _NanEnsureLocal(v8::Local<T> val) {
                         ^~~~~~~~~~~~~~~
../../nan/nan.h:256:25: note: 'template<class T> v8::Local<T> _NanEnsureLocal(v8::Handle<T>)' previously declared here
 NAN_INLINE v8::Local<T> _NanEnsureLocal(v8::Handle<T> val) {
                         ^~~~~~~~~~~~~~~
../../nan/nan.h: In function 'bool NanIdleNotification(int)':
../../nan/nan.h:289:71: warning: 'bool v8::Isolate::IdleNotification(int)' is deprecated: use IdleNotificationDeadline() [-Wdeprecated-declarations]
     return v8::Isolate::GetCurrent()->IdleNotification(idle_time_in_ms);
                                                                       ^
In file included from /root/.node-gyp/8.16.0/include/node/v8.h:26:0,
                 from /root/.node-gyp/8.16.0/include/node/node.h:63,
                 from ../src/batch.cc:1:
/root/.node-gyp/8.16.0/include/node/v8.h:7539:22: note: declared here
                 bool IdleNotification(int idle_time_in_ms));
                      ^
/root/.node-gyp/8.16.0/include/node/v8config.h:318:3: note: in definition of macro 'V8_DEPRECATED'
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
In file included from ../src/batch.cc:5:0:
../../nan/nan.h: At global scope:
../../nan/nan.h:473:20: error: variable or field 'NanAddGCEpilogueCallback' declared void
       v8::Isolate::GCEpilogueCallback callback
                    ^~~~~~~~~~~~~~~~~~
../../nan/nan.h:473:7: error: 'GCEpilogueCallback' is not a member of 'v8::Isolate'
       v8::Isolate::GCEpilogueCallback callback
       ^~
../../nan/nan.h:474:18: error: expected primary-expression before 'gc_type_filter'
     , v8::GCType gc_type_filter = v8::kGCTypeAll) {
                  ^~~~~~~~~~~~~~
../../nan/nan.h:479:20: error: variable or field 'NanRemoveGCEpilogueCallback' declared void
       v8::Isolate::GCEpilogueCallback callback) {
                    ^~~~~~~~~~~~~~~~~~
../../nan/nan.h:479:7: error: 'GCEpilogueCallback' is not a member of 'v8::Isolate'
       v8::Isolate::GCEpilogueCallback callback) {
       ^~
../../nan/nan.h:484:20: error: variable or field 'NanAddGCPrologueCallback' declared void
       v8::Isolate::GCPrologueCallback callback
                    ^~~~~~~~~~~~~~~~~~
../../nan/nan.h:484:7: error: 'GCPrologueCallback' is not a member of 'v8::Isolate'
       v8::Isolate::GCPrologueCallback callback
       ^~
../../nan/nan.h:485:18: error: expected primary-expression before 'gc_type_filter'
     , v8::GCType gc_type_filter = v8::kGCTypeAll) {
                  ^~~~~~~~~~~~~~
../../nan/nan.h:490:20: error: variable or field 'NanRemoveGCPrologueCallback' declared void
       v8::Isolate::GCPrologueCallback callback) {
                    ^~~~~~~~~~~~~~~~~~
../../nan/nan.h:490:7: error: 'GCPrologueCallback' is not a member of 'v8::Isolate'
       v8::Isolate::GCPrologueCallback callback) {
       ^~
../../nan/nan.h:569:15: error: 'WeakCallbackData' in namespace 'v8' does not name a template type
     const v8::WeakCallbackData<T, _NanWeakCallbackInfo<T, P> > &data) {
               ^~~~~~~~~~~~~~~~
../../nan/nan.h:569:31: error: expected ',' or '...' before '<' token
     const v8::WeakCallbackData<T, _NanWeakCallbackInfo<T, P> > &data) {
                               ^
../../nan/nan.h: In function 'void _NanWeakCallbackDispatcher(int)':
../../nan/nan.h:570:42: error: 'data' was not declared in this scope
       _NanWeakCallbackInfo<T, P> *info = data.GetParameter();
                                          ^~~~
../../nan/nan.h: At global scope:
../../nan/nan.h:661:13: error: 'node::smalloc' has not been declared
     , node::smalloc::FreeCallback callback
             ^~~~~~~
../../nan/nan.h:661:35: error: expected ',' or '...' before 'callback'
     , node::smalloc::FreeCallback callback
                                   ^~~~~~~~
../../nan/nan.h: In function 'v8::Local<v8::Object> NanNewBufferHandle(char*, size_t, int)':
../../nan/nan.h:665:50: error: 'callback' was not declared in this scope
         v8::Isolate::GetCurrent(), data, length, callback, hint);
                                                  ^~~~~~~~
../../nan/nan.h:665:60: error: 'hint' was not declared in this scope
         v8::Isolate::GetCurrent(), data, length, callback, hint);
                                                            ^~~~
../../nan/nan.h: In function 'v8::Local<v8::Object> NanNewBufferHandle(const char*, uint32_t)':
../../nan/nan.h:672:67: error: invalid conversion from 'const char*' to 'char*' [-fpermissive]
     return node::Buffer::New(v8::Isolate::GetCurrent(), data, size);
                                                                   ^
In file included from ../src/batch.cc:2:0:
/root/.node-gyp/8.16.0/include/node/node_buffer.h:67:40: note:   initializing argument 2 of 'v8::MaybeLocal<v8::Object> node::Buffer::New(v8::Isolate*, char*, size_t)'
 NODE_EXTERN v8::MaybeLocal<v8::Object> New(v8::Isolate* isolate,
                                        ^~~
In file included from ../src/batch.cc:5:0:
../../nan/nan.h:672:29: error: could not convert 'node::Buffer::New(v8::Isolate::GetCurrent(), ((char*)data), ((size_t)size))' from 'v8::MaybeLocal<v8::Object>' to 'v8::Local<v8::Object>'
     return node::Buffer::New(v8::Isolate::GetCurrent(), data, size);
            ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../nan/nan.h: In function 'v8::Local<v8::Object> NanNewBufferHandle(uint32_t)':
../../nan/nan.h:676:29: error: could not convert 'node::Buffer::New(v8::Isolate::GetCurrent(), ((size_t)size))' from 'v8::MaybeLocal<v8::Object>' to 'v8::Local<v8::Object>'
     return node::Buffer::New(v8::Isolate::GetCurrent(), size);
            ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../nan/nan.h: In function 'v8::Local<v8::Object> NanBufferUse(char*, uint32_t)':
../../nan/nan.h:683:12: error: 'Use' is not a member of 'node::Buffer'
     return node::Buffer::Use(v8::Isolate::GetCurrent(), data, size);
            ^~~~
../../nan/nan.h: In function 'v8::Local<v8::Script> NanCompileScript(v8::Local<v8::String>, const v8::ScriptOrigin&)':
../../nan/nan.h:710:74: warning: 'static v8::Local<v8::Script> v8::ScriptCompiler::Compile(v8::Isolate*, v8::ScriptCompiler::Source*, v8::ScriptCompiler::CompileOptions)' is deprecated: Use maybe version [-Wdeprecated-declarations]
     return v8::ScriptCompiler::Compile(v8::Isolate::GetCurrent(), &source);
                                                                          ^
In file included from /root/.node-gyp/8.16.0/include/node/v8.h:26:0,
                 from /root/.node-gyp/8.16.0/include/node/node.h:63,
                 from ../src/batch.cc:1:
/root/.node-gyp/8.16.0/include/node/v8.h:1475:21: note: declared here
       Local<Script> Compile(Isolate* isolate, Source* source,
                     ^
/root/.node-gyp/8.16.0/include/node/v8config.h:318:3: note: in definition of macro 'V8_DEPRECATED'
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
In file included from ../src/batch.cc:5:0:
../../nan/nan.h: In function 'v8::Local<v8::Script> NanCompileScript(v8::Local<v8::String>)':
../../nan/nan.h:717:74: warning: 'static v8::Local<v8::Script> v8::ScriptCompiler::Compile(v8::Isolate*, v8::ScriptCompiler::Source*, v8::ScriptCompiler::CompileOptions)' is deprecated: Use maybe version [-Wdeprecated-declarations]
     return v8::ScriptCompiler::Compile(v8::Isolate::GetCurrent(), &source);
                                                                          ^
In file included from /root/.node-gyp/8.16.0/include/node/v8.h:26:0,
                 from /root/.node-gyp/8.16.0/include/node/node.h:63,
                 from ../src/batch.cc:1:
/root/.node-gyp/8.16.0/include/node/v8.h:1475:21: note: declared here
       Local<Script> Compile(Isolate* isolate, Source* source,
                     ^
/root/.node-gyp/8.16.0/include/node/v8config.h:318:3: note: in definition of macro 'V8_DEPRECATED'
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
../src/batch.cc: In static member function 'static v8::Handle<v8::Value> leveldown::Batch::NewInstance(v8::Handle<v8::Object>, v8::Handle<v8::Object>)':
../src/batch.cc:74:69: warning: 'v8::Local<v8::Object> v8::Function::NewInstance(int, v8::Local<v8::Value>*) const' is deprecated: Use maybe version [-Wdeprecated-declarations]
     instance = constructorHandle->GetFunction()->NewInstance(1, argv);
                                                                     ^
In file included from /root/.node-gyp/8.16.0/include/node/v8.h:26:0,
                 from /root/.node-gyp/8.16.0/include/node/node.h:63,
                 from ../src/batch.cc:1:
/root/.node-gyp/8.16.0/include/node/v8.h:3897:31: note: declared here
                 Local<Object> NewInstance(int argc, Local<Value> argv[]) const);
                               ^
/root/.node-gyp/8.16.0/include/node/v8config.h:318:3: note: in definition of macro 'V8_DEPRECATED'
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
../src/batch.cc:77:69: warning: 'v8::Local<v8::Object> v8::Function::NewInstance(int, v8::Local<v8::Value>*) const' is deprecated: Use maybe version [-Wdeprecated-declarations]
     instance = constructorHandle->GetFunction()->NewInstance(2, argv);
                                                                     ^
In file included from /root/.node-gyp/8.16.0/include/node/v8.h:26:0,
                 from /root/.node-gyp/8.16.0/include/node/node.h:63,
                 from ../src/batch.cc:1:
/root/.node-gyp/8.16.0/include/node/v8.h:3897:31: note: declared here
                 Local<Object> NewInstance(int argc, Local<Value> argv[]) const);
                               ^
/root/.node-gyp/8.16.0/include/node/v8config.h:318:3: note: in definition of macro 'V8_DEPRECATED'
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
make: *** [Release/obj.target/leveldown/src/batch.o] Error 1
leveldown.target.mk:121: recipe for target 'Release/obj.target/leveldown/src/batch.o' failed
make: Leaving directory '/usr/src/app/node_modules/leveldown/build'
gyp ERR! build error 
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack     at ChildProcess.onExit (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:262:23)
gyp ERR! stack     at emitTwo (events.js:126:13)
gyp ERR! stack     at ChildProcess.emit (events.js:214:7)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:198:12)
gyp ERR! System Linux 4.15.0-51-generic
gyp ERR! command "/usr/local/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /usr/src/app/node_modules/leveldown
gyp ERR! node -v v8.16.0
gyp ERR! node-gyp -v v3.8.0
gyp ERR! not ok 
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! leveldown@0.10.5 install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the leveldown@0.10.5 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /root/.npm/_logs/2019-06-22T23_41_45_907Z-debug.log