Mobrovac has submitted this change and it was merged. ( 
https://gerrit.wikimedia.org/r/367712 )

Change subject: Update restbase to 6176450
......................................................................


Update restbase to 6176450

List of changes:
6176450 Use Node v6.11, update dependencies and release v0.16.8
xxxxxxx Update node module dependencies

Change-Id: I576146587deaa506ace7c6978a29807e894fdbd3
---
M node_modules/content-type/package.json
M node_modules/heapdump/build/Makefile
M 
node_modules/heapdump/build/Release/.deps/Release/obj.target/addon/src/heapdump.o.d
M node_modules/heapdump/build/addon.target.mk
M node_modules/heapdump/build/config.gypi
M node_modules/hyperswitch/package.json
M node_modules/json-stable-stringify/package.json
M node_modules/kad/package.json
M node_modules/mediawiki-title/package.json
M node_modules/mime-db/db.json
M node_modules/mime-db/package.json
M node_modules/mime-types/index.js
M node_modules/mime-types/package.json
M node_modules/restbase-mod-table-cassandra/package.json
M node_modules/semver/package.json
M node_modules/semver/semver.js
M node_modules/swagger-ui/package.json
M restbase
18 files changed, 336 insertions(+), 158 deletions(-)

Approvals:
  Mobrovac: Verified; Looks good to me, approved



diff --git a/node_modules/content-type/package.json 
b/node_modules/content-type/package.json
index 01af050..8213b75 100644
--- a/node_modules/content-type/package.json
+++ b/node_modules/content-type/package.json
@@ -49,7 +49,7 @@
     "/"
   ],
   "_resolved": 
"git+https://github.com/wikimedia/content-type.git#47b2632d0a2ee79a7d67268e2f6621becd95d05b";,
-  "_shasum": "a39631ada19096dcb9643fe34a1b6c77ec219a63",
+  "_shasum": "51f506a1c6529b74c09442b820b480d0907128b0",
   "_shrinkwrap": null,
   "_spec": 
"content-type@git+https://github.com/wikimedia/content-type.git#master";,
   "_where": "/opt/service",
diff --git a/node_modules/heapdump/build/Makefile 
b/node_modules/heapdump/build/Makefile
index 2f27e5e..6197a30 100644
--- a/node_modules/heapdump/build/Makefile
+++ b/node_modules/heapdump/build/Makefile
@@ -308,8 +308,8 @@
 endif
 
 quiet_cmd_regen_makefile = ACTION Regenerating $@
-cmd_regen_makefile = cd $(srcdir); 
/usr/local/nvm/versions/node/v6.9.1/lib/node_modules/npm/node_modules/node-gyp/gyp/gyp_main.py
 -fmake --ignore-environment "--toplevel-dir=." 
-I/opt/service/node_modules/heapdump/build/config.gypi 
-I/usr/local/nvm/versions/node/v6.9.1/lib/node_modules/npm/node_modules/node-gyp/addon.gypi
 -I/root/.node-gyp/6.9.1/include/node/common.gypi "--depth=." "-Goutput_dir=." 
"--generator-output=build" "-Dlibrary=shared_library" "-Dvisibility=default" 
"-Dnode_root_dir=/root/.node-gyp/6.9.1" 
"-Dnode_gyp_dir=/usr/local/nvm/versions/node/v6.9.1/lib/node_modules/npm/node_modules/node-gyp"
 "-Dnode_lib_file=node.lib" 
"-Dmodule_root_dir=/opt/service/node_modules/heapdump" binding.gyp
-Makefile: 
$(srcdir)/../../../../usr/local/nvm/versions/node/v6.9.1/lib/node_modules/npm/node_modules/node-gyp/addon.gypi
 $(srcdir)/build/config.gypi $(srcdir)/binding.gyp 
$(srcdir)/../../../../root/.node-gyp/6.9.1/include/node/common.gypi
+cmd_regen_makefile = cd $(srcdir); 
/usr/local/nvm/versions/node/v6.11.1/lib/node_modules/npm/node_modules/node-gyp/gyp/gyp_main.py
 -fmake --ignore-environment "--toplevel-dir=." 
-I/opt/service/node_modules/heapdump/build/config.gypi 
-I/usr/local/nvm/versions/node/v6.11.1/lib/node_modules/npm/node_modules/node-gyp/addon.gypi
 -I/root/.node-gyp/6.11.1/include/node/common.gypi "--depth=." "-Goutput_dir=." 
"--generator-output=build" "-Dlibrary=shared_library" "-Dvisibility=default" 
"-Dnode_root_dir=/root/.node-gyp/6.11.1" 
"-Dnode_gyp_dir=/usr/local/nvm/versions/node/v6.11.1/lib/node_modules/npm/node_modules/node-gyp"
 "-Dnode_lib_file=node.lib" 
"-Dmodule_root_dir=/opt/service/node_modules/heapdump" binding.gyp
+Makefile: 
$(srcdir)/../../../../usr/local/nvm/versions/node/v6.11.1/lib/node_modules/npm/node_modules/node-gyp/addon.gypi
 $(srcdir)/build/config.gypi $(srcdir)/binding.gyp 
$(srcdir)/../../../../root/.node-gyp/6.11.1/include/node/common.gypi
        $(call do_cmd,regen_makefile)
 
 # "all" is a concatenation of the "all" targets from all the included
diff --git 
a/node_modules/heapdump/build/Release/.deps/Release/obj.target/addon/src/heapdump.o.d
 
b/node_modules/heapdump/build/Release/.deps/Release/obj.target/addon/src/heapdump.o.d
index f1c3bd7..575cf1b 100644
--- 
a/node_modules/heapdump/build/Release/.deps/Release/obj.target/addon/src/heapdump.o.d
+++ 
b/node_modules/heapdump/build/Release/.deps/Release/obj.target/addon/src/heapdump.o.d
@@ -1,34 +1,34 @@
-cmd_Release/obj.target/addon/src/heapdump.o := g++ 
'-DNODE_GYP_MODULE_NAME=addon' '-DUSING_UV_SHARED=1' '-DUSING_V8_SHARED=1' 
'-DV8_DEPRECATION_WARNINGS=1' '-D_LARGEFILE_SOURCE' '-D_FILE_OFFSET_BITS=64' 
'-DBUILDING_NODE_EXTENSION' -I/root/.node-gyp/6.9.1/include/node 
-I/root/.node-gyp/6.9.1/src -I/root/.node-gyp/6.9.1/deps/uv/include 
-I/root/.node-gyp/6.9.1/deps/v8/include  -fPIC -pthread -Wall -Wextra 
-Wno-unused-parameter -m64 -O3 -fno-omit-frame-pointer -fno-rtti 
-fno-exceptions -std=gnu++0x -MMD -MF 
./Release/.deps/Release/obj.target/addon/src/heapdump.o.d.raw   -c -o 
Release/obj.target/addon/src/heapdump.o ../src/heapdump.cc
+cmd_Release/obj.target/addon/src/heapdump.o := g++ 
'-DNODE_GYP_MODULE_NAME=addon' '-DUSING_UV_SHARED=1' '-DUSING_V8_SHARED=1' 
'-DV8_DEPRECATION_WARNINGS=1' '-D_LARGEFILE_SOURCE' '-D_FILE_OFFSET_BITS=64' 
'-DBUILDING_NODE_EXTENSION' -I/root/.node-gyp/6.11.1/include/node 
-I/root/.node-gyp/6.11.1/src -I/root/.node-gyp/6.11.1/deps/uv/include 
-I/root/.node-gyp/6.11.1/deps/v8/include  -fPIC -pthread -Wall -Wextra 
-Wno-unused-parameter -m64 -O3 -fno-omit-frame-pointer -fno-rtti 
-fno-exceptions -std=gnu++0x -MMD -MF 
./Release/.deps/Release/obj.target/addon/src/heapdump.o.d.raw   -c -o 
Release/obj.target/addon/src/heapdump.o ../src/heapdump.cc
 Release/obj.target/addon/src/heapdump.o: ../src/heapdump.cc \
- /root/.node-gyp/6.9.1/include/node/node.h \
- /root/.node-gyp/6.9.1/include/node/v8.h \
- /root/.node-gyp/6.9.1/include/node/v8-version.h \
- /root/.node-gyp/6.9.1/include/node/v8config.h \
- /root/.node-gyp/6.9.1/include/node/node_version.h ../src/compat-inl.h \
- ../src/compat.h /root/.node-gyp/6.9.1/include/node/node_version.h \
- /root/.node-gyp/6.9.1/include/node/v8.h \
- /root/.node-gyp/6.9.1/include/node/v8-profiler.h \
- /root/.node-gyp/6.9.1/include/node/uv.h \
- /root/.node-gyp/6.9.1/include/node/uv-errno.h \
- /root/.node-gyp/6.9.1/include/node/uv-version.h \
- /root/.node-gyp/6.9.1/include/node/uv-unix.h \
- /root/.node-gyp/6.9.1/include/node/uv-threadpool.h \
- /root/.node-gyp/6.9.1/include/node/uv-linux.h ../src/heapdump-posix.h
+ /root/.node-gyp/6.11.1/include/node/node.h \
+ /root/.node-gyp/6.11.1/include/node/v8.h \
+ /root/.node-gyp/6.11.1/include/node/v8-version.h \
+ /root/.node-gyp/6.11.1/include/node/v8config.h \
+ /root/.node-gyp/6.11.1/include/node/node_version.h ../src/compat-inl.h \
+ ../src/compat.h /root/.node-gyp/6.11.1/include/node/node_version.h \
+ /root/.node-gyp/6.11.1/include/node/v8.h \
+ /root/.node-gyp/6.11.1/include/node/v8-profiler.h \
+ /root/.node-gyp/6.11.1/include/node/uv.h \
+ /root/.node-gyp/6.11.1/include/node/uv-errno.h \
+ /root/.node-gyp/6.11.1/include/node/uv-version.h \
+ /root/.node-gyp/6.11.1/include/node/uv-unix.h \
+ /root/.node-gyp/6.11.1/include/node/uv-threadpool.h \
+ /root/.node-gyp/6.11.1/include/node/uv-linux.h ../src/heapdump-posix.h
 ../src/heapdump.cc:
-/root/.node-gyp/6.9.1/include/node/node.h:
-/root/.node-gyp/6.9.1/include/node/v8.h:
-/root/.node-gyp/6.9.1/include/node/v8-version.h:
-/root/.node-gyp/6.9.1/include/node/v8config.h:
-/root/.node-gyp/6.9.1/include/node/node_version.h:
+/root/.node-gyp/6.11.1/include/node/node.h:
+/root/.node-gyp/6.11.1/include/node/v8.h:
+/root/.node-gyp/6.11.1/include/node/v8-version.h:
+/root/.node-gyp/6.11.1/include/node/v8config.h:
+/root/.node-gyp/6.11.1/include/node/node_version.h:
 ../src/compat-inl.h:
 ../src/compat.h:
-/root/.node-gyp/6.9.1/include/node/node_version.h:
-/root/.node-gyp/6.9.1/include/node/v8.h:
-/root/.node-gyp/6.9.1/include/node/v8-profiler.h:
-/root/.node-gyp/6.9.1/include/node/uv.h:
-/root/.node-gyp/6.9.1/include/node/uv-errno.h:
-/root/.node-gyp/6.9.1/include/node/uv-version.h:
-/root/.node-gyp/6.9.1/include/node/uv-unix.h:
-/root/.node-gyp/6.9.1/include/node/uv-threadpool.h:
-/root/.node-gyp/6.9.1/include/node/uv-linux.h:
+/root/.node-gyp/6.11.1/include/node/node_version.h:
+/root/.node-gyp/6.11.1/include/node/v8.h:
+/root/.node-gyp/6.11.1/include/node/v8-profiler.h:
+/root/.node-gyp/6.11.1/include/node/uv.h:
+/root/.node-gyp/6.11.1/include/node/uv-errno.h:
+/root/.node-gyp/6.11.1/include/node/uv-version.h:
+/root/.node-gyp/6.11.1/include/node/uv-unix.h:
+/root/.node-gyp/6.11.1/include/node/uv-threadpool.h:
+/root/.node-gyp/6.11.1/include/node/uv-linux.h:
 ../src/heapdump-posix.h:
diff --git a/node_modules/heapdump/build/addon.target.mk 
b/node_modules/heapdump/build/addon.target.mk
index a08c6df..cc35604 100644
--- a/node_modules/heapdump/build/addon.target.mk
+++ b/node_modules/heapdump/build/addon.target.mk
@@ -34,10 +34,10 @@
        -std=gnu++0x
 
 INCS_Debug := \
-       -I/root/.node-gyp/6.9.1/include/node \
-       -I/root/.node-gyp/6.9.1/src \
-       -I/root/.node-gyp/6.9.1/deps/uv/include \
-       -I/root/.node-gyp/6.9.1/deps/v8/include
+       -I/root/.node-gyp/6.11.1/include/node \
+       -I/root/.node-gyp/6.11.1/src \
+       -I/root/.node-gyp/6.11.1/deps/uv/include \
+       -I/root/.node-gyp/6.11.1/deps/v8/include
 
 DEFS_Release := \
        '-DNODE_GYP_MODULE_NAME=addon' \
@@ -69,10 +69,10 @@
        -std=gnu++0x
 
 INCS_Release := \
-       -I/root/.node-gyp/6.9.1/include/node \
-       -I/root/.node-gyp/6.9.1/src \
-       -I/root/.node-gyp/6.9.1/deps/uv/include \
-       -I/root/.node-gyp/6.9.1/deps/v8/include
+       -I/root/.node-gyp/6.11.1/include/node \
+       -I/root/.node-gyp/6.11.1/src \
+       -I/root/.node-gyp/6.11.1/deps/uv/include \
+       -I/root/.node-gyp/6.11.1/deps/v8/include
 
 OBJS := \
        $(obj).target/$(TARGET)/src/heapdump.o
diff --git a/node_modules/heapdump/build/config.gypi 
b/node_modules/heapdump/build/config.gypi
index 4f0311d..54b9cd0 100644
--- a/node_modules/heapdump/build/config.gypi
+++ b/node_modules/heapdump/build/config.gypi
@@ -9,18 +9,19 @@
   },
   "variables": {
     "asan": 0,
+    "coverage": "false",
     "debug_devtools": "node",
     "force_dynamic_crt": 0,
     "gas_version": "2.23",
     "host_arch": "x64",
-    "icu_data_file": "icudt57l.dat",
-    "icu_data_in": "../../deps/icu-small/source/data/in/icudt57l.dat",
+    "icu_data_file": "icudt58l.dat",
+    "icu_data_in": "../../deps/icu-small/source/data/in/icudt58l.dat",
     "icu_endianness": "l",
     "icu_gyp_path": "tools/icu/icu-generic.gyp",
     "icu_locales": "en,root",
     "icu_path": "deps/icu-small",
     "icu_small": "true",
-    "icu_ver_major": "57",
+    "icu_ver_major": "58",
     "node_byteorder": "little",
     "node_enable_d8": "false",
     "node_enable_v8_vtunejit": "false",
@@ -55,15 +56,15 @@
     "v8_no_strict_aliasing": 1,
     "v8_optimized_debug": 0,
     "v8_random_seed": 0,
-    "v8_use_snapshot": "true",
+    "v8_use_snapshot": "false",
     "want_separate_host_toolset": 0,
-    "nodedir": "/root/.node-gyp/6.9.1",
+    "nodedir": "/root/.node-gyp/6.11.1",
     "copy_dev_lib": "true",
     "standalone_static_library": 1,
     "cache_lock_stale": "60000",
     "legacy_bundling": "",
     "sign_git_tag": "",
-    "user_agent": "npm/3.10.8 node/v6.9.1 linux x64",
+    "user_agent": "npm/3.10.10 node/v6.11.1 linux x64",
     "always_auth": "",
     "bin_links": "true",
     "key": "",
@@ -96,7 +97,7 @@
     "save_bundle": "",
     "shell": "bash",
     "dry_run": "",
-    "prefix": "/usr/local/nvm/versions/node/v6.9.1",
+    "prefix": "/usr/local/nvm/versions/node/v6.11.1",
     "browser": "",
     "cache_lock_wait": "10000",
     "registry": "https://registry.npmjs.org/";,
@@ -128,7 +129,7 @@
     "long": "",
     "production": "",
     "unsafe_perm": "",
-    "node_version": "6.9.1",
+    "node_version": "6.11.1",
     "tag": "latest",
     "git_tag_version": "true",
     "shrinkwrap": "true",
@@ -138,10 +139,10 @@
     "save_exact": "",
     "strict_ssl": "true",
     "dev": "",
-    "globalconfig": "/usr/local/nvm/versions/node/v6.9.1/etc/npmrc",
+    "globalconfig": "/usr/local/nvm/versions/node/v6.11.1/etc/npmrc",
     "init_module": "/root/.npm-init.js",
     "parseable": "",
-    "globalignorefile": "/usr/local/nvm/versions/node/v6.9.1/etc/npmignore",
+    "globalignorefile": "/usr/local/nvm/versions/node/v6.11.1/etc/npmignore",
     "cache_lock_retries": "10",
     "save_prefix": "^",
     "group": "",
diff --git a/node_modules/hyperswitch/package.json 
b/node_modules/hyperswitch/package.json
index 32fb2cf..94b9715 100644
--- a/node_modules/hyperswitch/package.json
+++ b/node_modules/hyperswitch/package.json
@@ -2,18 +2,18 @@
   "_args": [
     [
       {
-        "raw": "hyperswitch@^0.9.0",
+        "raw": "hyperswitch@^0.9.1",
         "scope": null,
         "escapedName": "hyperswitch",
         "name": "hyperswitch",
-        "rawSpec": "^0.9.0",
-        "spec": ">=0.9.0 <0.10.0",
+        "rawSpec": "^0.9.1",
+        "spec": ">=0.9.1 <0.10.0",
         "type": "range"
       },
       "/opt/service"
     ]
   ],
-  "_from": "hyperswitch@>=0.9.0 <0.10.0",
+  "_from": "hyperswitch@>=0.9.1 <0.10.0",
   "_id": "hyperswitch@0.9.1",
   "_inCache": true,
   "_location": "/hyperswitch",
@@ -31,12 +31,12 @@
     "jsonify": "0.0.0"
   },
   "_requested": {
-    "raw": "hyperswitch@^0.9.0",
+    "raw": "hyperswitch@^0.9.1",
     "scope": null,
     "escapedName": "hyperswitch",
     "name": "hyperswitch",
-    "rawSpec": "^0.9.0",
-    "spec": ">=0.9.0 <0.10.0",
+    "rawSpec": "^0.9.1",
+    "spec": ">=0.9.1 <0.10.0",
     "type": "range"
   },
   "_requiredBy": [
@@ -45,7 +45,7 @@
   "_resolved": 
"https://registry.npmjs.org/hyperswitch/-/hyperswitch-0.9.1.tgz";,
   "_shasum": "5897dc5eec2cd94df6583a27a8545db4ebb0b7d2",
   "_shrinkwrap": null,
-  "_spec": "hyperswitch@^0.9.0",
+  "_spec": "hyperswitch@^0.9.1",
   "_where": "/opt/service",
   "author": {
     "name": "Wikimedia Service Team",
diff --git a/node_modules/json-stable-stringify/package.json 
b/node_modules/json-stable-stringify/package.json
index cff9dbd..e1d9c29 100644
--- a/node_modules/json-stable-stringify/package.json
+++ b/node_modules/json-stable-stringify/package.json
@@ -50,7 +50,7 @@
     "/restbase-mod-table-cassandra"
   ],
   "_resolved": 
"git+https://github.com/wikimedia/json-stable-stringify.git#c05178e4dfc3834017f017732934c1c52ba3dd8f";,
-  "_shasum": "f363d21ea1721daee76e56593c379b76fee6cea1",
+  "_shasum": "9054826de203342c297e599484f2e237c4c72f14",
   "_shrinkwrap": null,
   "_spec": 
"json-stable-stringify@git+https://github.com/wikimedia/json-stable-stringify.git#master";,
   "_where": "/opt/service",
diff --git a/node_modules/kad/package.json b/node_modules/kad/package.json
index 41fc224..46b3067 100644
--- a/node_modules/kad/package.json
+++ b/node_modules/kad/package.json
@@ -49,7 +49,7 @@
     "/limitation"
   ],
   "_resolved": 
"git+https://github.com/gwicke/kad.git#936c91652d757ea6f9dd30e44698afb0daaa1d17";,
-  "_shasum": "072bd67442a6dbcc4dee03b537c85bf519d8d273",
+  "_shasum": "06acf822736912ba2a5df3ce0834a9fbb933d5b1",
   "_shrinkwrap": null,
   "_spec": "kad@git+https://github.com/gwicke/kad.git#master";,
   "_where": "/opt/service/node_modules/limitation",
diff --git a/node_modules/mediawiki-title/package.json 
b/node_modules/mediawiki-title/package.json
index 812e6c4..be38f1e 100644
--- a/node_modules/mediawiki-title/package.json
+++ b/node_modules/mediawiki-title/package.json
@@ -2,18 +2,18 @@
   "_args": [
     [
       {
-        "raw": "mediawiki-title@^0.6.0",
+        "raw": "mediawiki-title@^0.6.3",
         "scope": null,
         "escapedName": "mediawiki-title",
         "name": "mediawiki-title",
-        "rawSpec": "^0.6.0",
-        "spec": ">=0.6.0 <0.7.0",
+        "rawSpec": "^0.6.3",
+        "spec": ">=0.6.3 <0.7.0",
         "type": "range"
       },
       "/opt/service"
     ]
   ],
-  "_from": "mediawiki-title@>=0.6.0 <0.7.0",
+  "_from": "mediawiki-title@>=0.6.3 <0.7.0",
   "_id": "mediawiki-title@0.6.3",
   "_inCache": true,
   "_location": "/mediawiki-title",
@@ -29,12 +29,12 @@
   "_npmVersion": "3.10.10",
   "_phantomChildren": {},
   "_requested": {
-    "raw": "mediawiki-title@^0.6.0",
+    "raw": "mediawiki-title@^0.6.3",
     "scope": null,
     "escapedName": "mediawiki-title",
     "name": "mediawiki-title",
-    "rawSpec": "^0.6.0",
-    "spec": ">=0.6.0 <0.7.0",
+    "rawSpec": "^0.6.3",
+    "spec": ">=0.6.3 <0.7.0",
     "type": "range"
   },
   "_requiredBy": [
@@ -43,7 +43,7 @@
   "_resolved": 
"https://registry.npmjs.org/mediawiki-title/-/mediawiki-title-0.6.3.tgz";,
   "_shasum": "cfea18f521f6655e0ca96556cb7795ffe37f817c",
   "_shrinkwrap": null,
-  "_spec": "mediawiki-title@^0.6.0",
+  "_spec": "mediawiki-title@^0.6.3",
   "_where": "/opt/service",
   "author": {
     "name": "Wikimedia Services Team",
diff --git a/node_modules/mime-db/db.json b/node_modules/mime-db/db.json
index 2c51517..c5033c1 100644
--- a/node_modules/mime-db/db.json
+++ b/node_modules/mime-db/db.json
@@ -128,6 +128,9 @@
   "application/cbor": {
     "source": "iana"
   },
+  "application/cccex": {
+    "source": "iana"
+  },
   "application/ccmp+xml": {
     "source": "iana"
   },
@@ -366,6 +369,9 @@
   "application/fdt+xml": {
     "source": "iana"
   },
+  "application/fido.trusted-apps+json": {
+    "compressible": true
+  },
   "application/fits": {
     "source": "iana"
   },
@@ -410,7 +416,8 @@
   },
   "application/gzip": {
     "source": "iana",
-    "compressible": false
+    "compressible": false,
+    "extensions": ["gz"]
   },
   "application/h224": {
     "source": "iana"
@@ -495,6 +502,10 @@
     "charset": "UTF-8",
     "compressible": true,
     "extensions": ["js"]
+  },
+  "application/jf2feed+json": {
+    "source": "iana",
+    "compressible": true
   },
   "application/jose": {
     "source": "iana"
@@ -807,6 +818,9 @@
   "application/parityfec": {
     "source": "iana"
   },
+  "application/passport": {
+    "source": "iana"
+  },
   "application/patch-ops-error+xml": {
     "source": "iana",
     "extensions": ["xer"]
@@ -990,6 +1004,9 @@
   "application/rpki-manifest": {
     "source": "iana",
     "extensions": ["mft"]
+  },
+  "application/rpki-publication": {
+    "source": "iana"
   },
   "application/rpki-roa": {
     "source": "iana",
@@ -1245,6 +1262,9 @@
   "application/vividence.scriptfile": {
     "source": "apache"
   },
+  "application/vnd.1000minds.decision-model+xml": {
+    "source": "iana"
+  },
   "application/vnd.3gpp-prose+xml": {
     "source": "iana"
   },
@@ -1468,7 +1488,13 @@
     "source": "iana",
     "compressible": true
   },
+  "application/vnd.bint.med-content": {
+    "source": "iana"
+  },
   "application/vnd.biopax.rdf+xml": {
+    "source": "iana"
+  },
+  "application/vnd.blink-idb-value-wrapper": {
     "source": "iana"
   },
   "application/vnd.blueice.multipass": {
@@ -1497,6 +1523,10 @@
   },
   "application/vnd.canon-lips": {
     "source": "iana"
+  },
+  "application/vnd.capasystems-pg+json": {
+    "source": "iana",
+    "compressible": true
   },
   "application/vnd.cendio.thinlinc.clientconf": {
     "source": "iana"
@@ -1657,6 +1687,10 @@
   "application/vnd.data-vision.rdz": {
     "source": "iana",
     "extensions": ["rdz"]
+  },
+  "application/vnd.datapackage+json": {
+    "source": "iana",
+    "compressible": true
   },
   "application/vnd.dataresource+json": {
     "source": "iana",
@@ -1955,6 +1989,9 @@
   "application/vnd.eudora.data": {
     "source": "iana"
   },
+  "application/vnd.evolv.ecig.theme": {
+    "source": "iana"
+  },
   "application/vnd.ezpix-album": {
     "source": "iana",
     "extensions": ["ez2"]
@@ -2250,6 +2287,10 @@
     "source": "iana",
     "extensions": ["sfd-hdstx"]
   },
+  "application/vnd.hyper-item+json": {
+    "source": "iana",
+    "compressible": true
+  },
   "application/vnd.hyperdrive+json": {
     "source": "iana",
     "compressible": true
@@ -2289,6 +2330,9 @@
   "application/vnd.igloader": {
     "source": "iana",
     "extensions": ["igl"]
+  },
+  "application/vnd.imagemeter.folder+zip": {
+    "source": "iana"
   },
   "application/vnd.imagemeter.image+zip": {
     "source": "iana"
@@ -2620,6 +2664,9 @@
     "extensions": ["igx"]
   },
   "application/vnd.microsoft.portable-executable": {
+    "source": "iana"
+  },
+  "application/vnd.microsoft.windows.thumbnail-cache": {
     "source": "iana"
   },
   "application/vnd.miele+json": {
@@ -3266,6 +3313,21 @@
   "application/vnd.onepager": {
     "source": "iana"
   },
+  "application/vnd.onepagertamp": {
+    "source": "iana"
+  },
+  "application/vnd.onepagertamx": {
+    "source": "iana"
+  },
+  "application/vnd.onepagertat": {
+    "source": "iana"
+  },
+  "application/vnd.onepagertatp": {
+    "source": "iana"
+  },
+  "application/vnd.onepagertatx": {
+    "source": "iana"
+  },
   "application/vnd.openblox.game+xml": {
     "source": "iana"
   },
@@ -3838,6 +3900,9 @@
     "source": "iana",
     "extensions": ["ipk"]
   },
+  "application/vnd.sigrok.session": {
+    "source": "iana"
+  },
   "application/vnd.simtech-mindmapper": {
     "source": "iana",
     "extensions": ["twd","twds"]
@@ -3920,7 +3985,9 @@
     "source": "iana"
   },
   "application/vnd.sun.wadl+xml": {
-    "source": "iana"
+    "source": "iana",
+    "compressible": true,
+    "extensions": ["wadl"]
   },
   "application/vnd.sun.xml.calc": {
     "source": "apache",
@@ -5936,6 +6003,9 @@
   "message/vnd.wfa.wsc": {
     "source": "iana"
   },
+  "model/3mf": {
+    "source": "iana"
+  },
   "model/gltf+json": {
     "source": "iana",
     "compressible": true
@@ -6069,6 +6139,9 @@
     "source": "iana",
     "compressible": false
   },
+  "multipart/vnd.bint.med-plus": {
+    "source": "iana"
+  },
   "multipart/voice-message": {
     "source": "iana"
   },
@@ -6098,6 +6171,7 @@
   },
   "text/css": {
     "source": "iana",
+    "charset": "UTF-8",
     "compressible": true,
     "extensions": ["css"]
   },
@@ -6156,7 +6230,9 @@
     "extensions": ["less"]
   },
   "text/markdown": {
-    "source": "iana"
+    "source": "iana",
+    "compressible": true,
+    "extensions": ["markdown","md"]
   },
   "text/mathml": {
     "source": "nginx",
@@ -6228,6 +6304,9 @@
   },
   "text/slim": {
     "extensions": ["slim","slm"]
+  },
+  "text/strings": {
+    "source": "iana"
   },
   "text/stylus": {
     "extensions": ["stylus","styl"]
@@ -6403,7 +6482,7 @@
   },
   "text/x-markdown": {
     "compressible": true,
-    "extensions": ["markdown","md","mkd"]
+    "extensions": ["mkd"]
   },
   "text/x-nfo": {
     "source": "apache",
diff --git a/node_modules/mime-db/package.json 
b/node_modules/mime-db/package.json
index 44deafb..95b59fd 100644
--- a/node_modules/mime-db/package.json
+++ b/node_modules/mime-db/package.json
@@ -2,48 +2,48 @@
   "_args": [
     [
       {
-        "raw": "mime-db@~1.27.0",
+        "raw": "mime-db@~1.29.0",
         "scope": null,
         "escapedName": "mime-db",
         "name": "mime-db",
-        "rawSpec": "~1.27.0",
-        "spec": ">=1.27.0 <1.28.0",
+        "rawSpec": "~1.29.0",
+        "spec": ">=1.29.0 <1.30.0",
         "type": "range"
       },
       "/opt/service/node_modules/mime-types"
     ]
   ],
-  "_from": "mime-db@>=1.27.0 <1.28.0",
-  "_id": "mime-db@1.27.0",
+  "_from": "mime-db@>=1.29.0 <1.30.0",
+  "_id": "mime-db@1.29.0",
   "_inCache": true,
   "_location": "/mime-db",
-  "_nodeVersion": "4.7.3",
+  "_nodeVersion": "6.10.3",
   "_npmOperationalInternal": {
-    "host": "packages-12-west.internal.npmjs.com",
-    "tmp": "tmp/mime-db-1.27.0.tgz_1489722296902_0.15233952621929348"
+    "host": "s3://npm-registry-packages",
+    "tmp": "tmp/mime-db-1.29.0.tgz_1499739590002_0.7720734812319279"
   },
   "_npmUser": {
     "name": "dougwilson",
     "email": "d...@somethingdoug.com"
   },
-  "_npmVersion": "2.15.11",
+  "_npmVersion": "3.10.10",
   "_phantomChildren": {},
   "_requested": {
-    "raw": "mime-db@~1.27.0",
+    "raw": "mime-db@~1.29.0",
     "scope": null,
     "escapedName": "mime-db",
     "name": "mime-db",
-    "rawSpec": "~1.27.0",
-    "spec": ">=1.27.0 <1.28.0",
+    "rawSpec": "~1.29.0",
+    "spec": ">=1.29.0 <1.30.0",
     "type": "range"
   },
   "_requiredBy": [
     "/mime-types"
   ],
-  "_resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.27.0.tgz";,
-  "_shasum": "820f572296bbd20ec25ed55e5b5de869e5436eb1",
+  "_resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.29.0.tgz";,
+  "_shasum": "48d26d235589651704ac5916ca06001914266878",
   "_shrinkwrap": null,
-  "_spec": "mime-db@~1.27.0",
+  "_spec": "mime-db@~1.29.0",
   "_where": "/opt/service/node_modules/mime-types",
   "bugs": {
     "url": "https://github.com/jshttp/mime-db/issues";
@@ -71,20 +71,22 @@
     "co": "4.6.0",
     "cogent": "1.0.1",
     "csv-parse": "1.2.0",
-    "eslint": "3.17.1",
-    "eslint-config-standard": "7.0.1",
+    "eslint": "3.19.0",
+    "eslint-config-standard": "10.2.1",
+    "eslint-plugin-import": "2.2.0",
+    "eslint-plugin-node": "4.2.2",
     "eslint-plugin-promise": "3.5.0",
-    "eslint-plugin-standard": "2.1.1",
+    "eslint-plugin-standard": "3.0.1",
     "gnode": "0.1.2",
-    "istanbul": "0.4.5",
     "mocha": "1.21.5",
+    "nyc": "11.0.3",
     "raw-body": "2.2.0",
     "stream-to-array": "2.3.0"
   },
   "directories": {},
   "dist": {
-    "shasum": "820f572296bbd20ec25ed55e5b5de869e5436eb1",
-    "tarball": "https://registry.npmjs.org/mime-db/-/mime-db-1.27.0.tgz";
+    "shasum": "48d26d235589651704ac5916ca06001914266878",
+    "tarball": "https://registry.npmjs.org/mime-db/-/mime-db-1.29.0.tgz";
   },
   "engines": {
     "node": ">= 0.6"
@@ -96,7 +98,7 @@
     "db.json",
     "index.js"
   ],
-  "gitHead": "c232c21378647dfbb7762410c7b025a47f114b94",
+  "gitHead": "ee8f2459964025c3969a49b8f80c34b182d35e2f",
   "homepage": "https://github.com/jshttp/mime-db#readme";,
   "keywords": [
     "mime",
@@ -130,9 +132,9 @@
     "fetch": "gnode scripts/fetch-apache && gnode scripts/fetch-iana && gnode 
scripts/fetch-nginx",
     "lint": "eslint .",
     "test": "mocha --reporter spec --bail --check-leaks test/",
-    "test-cov": "istanbul cover node_modules/mocha/bin/_mocha -- --reporter 
dot --check-leaks test/",
-    "test-travis": "istanbul cover node_modules/mocha/bin/_mocha --report 
lcovonly -- --reporter spec --check-leaks test/",
+    "test-cov": "nyc --reporter=html --reporter=text npm test",
+    "test-travis": "nyc --reporter=text npm test",
     "update": "npm run fetch && npm run build"
   },
-  "version": "1.27.0"
+  "version": "1.29.0"
 }
diff --git a/node_modules/mime-types/index.js b/node_modules/mime-types/index.js
index 6e0ea43..b9f34d5 100644
--- a/node_modules/mime-types/index.js
+++ b/node_modules/mime-types/index.js
@@ -20,8 +20,8 @@
  * @private
  */
 
-var extractTypeRegExp = /^\s*([^;\s]*)(?:;|\s|$)/
-var textTypeRegExp = /^text\//i
+var EXTRACT_TYPE_REGEXP = /^\s*([^;\s]*)(?:;|\s|$)/
+var TEXT_TYPE_REGEXP = /^text\//i
 
 /**
  * Module exports.
@@ -52,7 +52,7 @@
   }
 
   // TODO: use media-typer
-  var match = extractTypeRegExp.exec(type)
+  var match = EXTRACT_TYPE_REGEXP.exec(type)
   var mime = match && db[match[1].toLowerCase()]
 
   if (mime && mime.charset) {
@@ -60,7 +60,7 @@
   }
 
   // default text/* to utf-8
-  if (match && textTypeRegExp.test(match[1])) {
+  if (match && TEXT_TYPE_REGEXP.test(match[1])) {
     return 'UTF-8'
   }
 
@@ -110,7 +110,7 @@
   }
 
   // TODO: use media-typer
-  var match = extractTypeRegExp.exec(type)
+  var match = EXTRACT_TYPE_REGEXP.exec(type)
 
   // get extensions
   var exts = match && exports.extensions[match[1].toLowerCase()]
diff --git a/node_modules/mime-types/package.json 
b/node_modules/mime-types/package.json
index 64feaa1..22c7de2 100644
--- a/node_modules/mime-types/package.json
+++ b/node_modules/mime-types/package.json
@@ -14,19 +14,19 @@
     ]
   ],
   "_from": "mime-types@>=2.1.7 <2.2.0",
-  "_id": "mime-types@2.1.15",
+  "_id": "mime-types@2.1.16",
   "_inCache": true,
   "_location": "/mime-types",
-  "_nodeVersion": "4.7.3",
+  "_nodeVersion": "6.11.1",
   "_npmOperationalInternal": {
-    "host": "packages-12-west.internal.npmjs.com",
-    "tmp": "tmp/mime-types-2.1.15.tgz_1490327753615_0.3609113476704806"
+    "host": "s3://npm-registry-packages",
+    "tmp": "tmp/mime-types-2.1.16.tgz_1500950558329_0.4321689426433295"
   },
   "_npmUser": {
     "name": "dougwilson",
     "email": "d...@somethingdoug.com"
   },
-  "_npmVersion": "2.15.11",
+  "_npmVersion": "3.10.10",
   "_phantomChildren": {},
   "_requested": {
     "raw": "mime-types@~2.1.7",
@@ -41,8 +41,8 @@
     "/form-data",
     "/request"
   ],
-  "_resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.15.tgz";,
-  "_shasum": "a4ebf5064094569237b8cf70046776d09fc92aed",
+  "_resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.16.tgz";,
+  "_shasum": "2b858a52e5ecd516db897ac2be87487830698e23",
   "_shrinkwrap": null,
   "_spec": "mime-types@~2.1.7",
   "_where": "/opt/service/node_modules/request",
@@ -66,21 +66,23 @@
     }
   ],
   "dependencies": {
-    "mime-db": "~1.27.0"
+    "mime-db": "~1.29.0"
   },
   "description": "The ultimate javascript content-type utility.",
   "devDependencies": {
-    "eslint": "3.18.0",
-    "eslint-config-standard": "7.1.0",
+    "eslint": "3.19.0",
+    "eslint-config-standard": "10.2.1",
+    "eslint-plugin-import": "2.7.0",
+    "eslint-plugin-node": "5.1.1",
     "eslint-plugin-promise": "3.5.0",
-    "eslint-plugin-standard": "2.1.1",
+    "eslint-plugin-standard": "3.0.1",
     "istanbul": "0.4.5",
     "mocha": "1.21.5"
   },
   "directories": {},
   "dist": {
-    "shasum": "a4ebf5064094569237b8cf70046776d09fc92aed",
-    "tarball": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.15.tgz";
+    "shasum": "2b858a52e5ecd516db897ac2be87487830698e23",
+    "tarball": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.16.tgz";
   },
   "engines": {
     "node": ">= 0.6"
@@ -90,7 +92,7 @@
     "LICENSE",
     "index.js"
   ],
-  "gitHead": "c44863eb0463ee16f3eb04576591cc4c4d6b214c",
+  "gitHead": "a776f883a8bb1d50588224c46caefa6fc313f790",
   "homepage": "https://github.com/jshttp/mime-types#readme";,
   "keywords": [
     "mime",
@@ -99,12 +101,12 @@
   "license": "MIT",
   "maintainers": [
     {
-      "name": "dougwilson",
-      "email": "d...@somethingdoug.com"
-    },
-    {
       "name": "fishrock123",
       "email": "fishrock...@rocketmail.com"
+    },
+    {
+      "name": "dougwilson",
+      "email": "d...@somethingdoug.com"
     },
     {
       "name": "jongleberry",
@@ -124,5 +126,5 @@
     "test-cov": "istanbul cover node_modules/mocha/bin/_mocha -- --reporter 
dot test/test.js",
     "test-travis": "istanbul cover node_modules/mocha/bin/_mocha --report 
lcovonly -- --reporter dot test/test.js"
   },
-  "version": "2.1.15"
+  "version": "2.1.16"
 }
diff --git a/node_modules/restbase-mod-table-cassandra/package.json 
b/node_modules/restbase-mod-table-cassandra/package.json
index 3c3d960..7195acb 100644
--- a/node_modules/restbase-mod-table-cassandra/package.json
+++ b/node_modules/restbase-mod-table-cassandra/package.json
@@ -2,18 +2,18 @@
   "_args": [
     [
       {
-        "raw": "restbase-mod-table-cassandra@^0.11.1",
+        "raw": "restbase-mod-table-cassandra@^0.11.2",
         "scope": null,
         "escapedName": "restbase-mod-table-cassandra",
         "name": "restbase-mod-table-cassandra",
-        "rawSpec": "^0.11.1",
-        "spec": ">=0.11.1 <0.12.0",
+        "rawSpec": "^0.11.2",
+        "spec": ">=0.11.2 <0.12.0",
         "type": "range"
       },
       "/opt/service"
     ]
   ],
-  "_from": "restbase-mod-table-cassandra@>=0.11.1 <0.12.0",
+  "_from": "restbase-mod-table-cassandra@>=0.11.2 <0.12.0",
   "_id": "restbase-mod-table-cassandra@0.11.2",
   "_inCache": true,
   "_location": "/restbase-mod-table-cassandra",
@@ -29,12 +29,12 @@
   "_npmVersion": "3.10.8",
   "_phantomChildren": {},
   "_requested": {
-    "raw": "restbase-mod-table-cassandra@^0.11.1",
+    "raw": "restbase-mod-table-cassandra@^0.11.2",
     "scope": null,
     "escapedName": "restbase-mod-table-cassandra",
     "name": "restbase-mod-table-cassandra",
-    "rawSpec": "^0.11.1",
-    "spec": ">=0.11.1 <0.12.0",
+    "rawSpec": "^0.11.2",
+    "spec": ">=0.11.2 <0.12.0",
     "type": "range"
   },
   "_requiredBy": [
@@ -43,7 +43,7 @@
   "_resolved": 
"https://registry.npmjs.org/restbase-mod-table-cassandra/-/restbase-mod-table-cassandra-0.11.2.tgz";,
   "_shasum": "086a994e81e0adc6fec6e5c080649345f6b0bb42",
   "_shrinkwrap": null,
-  "_spec": "restbase-mod-table-cassandra@^0.11.1",
+  "_spec": "restbase-mod-table-cassandra@^0.11.2",
   "_where": "/opt/service",
   "bugs": {
     "url": "https://github.com/wikimedia/restbase-mod-table-cassandra/issues";
diff --git a/node_modules/semver/package.json b/node_modules/semver/package.json
index 0b05dcd..e240b9a 100644
--- a/node_modules/semver/package.json
+++ b/node_modules/semver/package.json
@@ -14,19 +14,19 @@
     ]
   ],
   "_from": "semver@>=5.3.0 <6.0.0",
-  "_id": "semver@5.3.0",
+  "_id": "semver@5.4.1",
   "_inCache": true,
   "_location": "/semver",
-  "_nodeVersion": "4.4.4",
+  "_nodeVersion": "8.2.1",
   "_npmOperationalInternal": {
-    "host": "packages-12-west.internal.npmjs.com",
-    "tmp": "tmp/semver-5.3.0.tgz_1468515166602_0.9155273644719273"
+    "host": "s3://npm-registry-packages",
+    "tmp": "tmp/semver-5.4.1.tgz_1500922107643_0.5125251261051744"
   },
   "_npmUser": {
     "name": "isaacs",
     "email": "i...@izs.me"
   },
-  "_npmVersion": "3.10.6",
+  "_npmVersion": "5.3.0",
   "_phantomChildren": {},
   "_requested": {
     "raw": "semver@^5.3.0",
@@ -42,8 +42,8 @@
     "/restbase-mod-table-cassandra",
     "/service-runner"
   ],
-  "_resolved": "https://registry.npmjs.org/semver/-/semver-5.3.0.tgz";,
-  "_shasum": "9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f",
+  "_resolved": "https://registry.npmjs.org/semver/-/semver-5.4.1.tgz";,
+  "_shasum": "e059c09d8571f0540823733433505d3a2f00b18e",
   "_shrinkwrap": null,
   "_spec": "semver@^5.3.0",
   "_where": "/opt/service/node_modules/restbase-mod-table-cassandra",
@@ -56,26 +56,27 @@
   "dependencies": {},
   "description": "The semantic version parser used by npm.",
   "devDependencies": {
-    "tap": "^2.0.0"
+    "tap": "^10.7.0"
   },
   "directories": {},
   "dist": {
-    "shasum": "9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f",
-    "tarball": "https://registry.npmjs.org/semver/-/semver-5.3.0.tgz";
+    "integrity": 
"sha512-WfG/X9+oATh81XtllIo/I8gOiY9EXRdv1cQdyykeXK17YcUW3EXUAi2To4pcH6nZtJPr7ZOpM5OMyWJZm+8Rsg==",
+    "shasum": "e059c09d8571f0540823733433505d3a2f00b18e",
+    "tarball": "https://registry.npmjs.org/semver/-/semver-5.4.1.tgz";
   },
   "files": [
     "bin",
     "range.bnf",
     "semver.js"
   ],
-  "gitHead": "d21444a0658224b152ce54965d02dbe0856afb84",
+  "gitHead": "0877c942a6af00edcda5c16fdd934684e1b20a1c",
   "homepage": "https://github.com/npm/node-semver#readme";,
   "license": "ISC",
   "main": "semver.js",
   "maintainers": [
     {
       "name": "isaacs",
-      "email": "isa...@npmjs.com"
+      "email": "i...@izs.me"
     },
     {
       "name": "othiym23",
@@ -90,7 +91,7 @@
     "url": "git+https://github.com/npm/node-semver.git";
   },
   "scripts": {
-    "test": "tap test/*.js"
+    "test": "tap test/*.js --cov -J"
   },
-  "version": "5.3.0"
+  "version": "5.4.1"
 }
diff --git a/node_modules/semver/semver.js b/node_modules/semver/semver.js
index 5f1a3c5..389cb44 100644
--- a/node_modules/semver/semver.js
+++ b/node_modules/semver/semver.js
@@ -563,7 +563,7 @@
 
 exports.compare = compare;
 function compare(a, b, loose) {
-  return new SemVer(a, loose).compare(b);
+  return new SemVer(a, loose).compare(new SemVer(b, loose));
 }
 
 exports.compareLoose = compareLoose;
@@ -704,11 +704,59 @@
   return cmp(version, this.operator, this.semver, this.loose);
 };
 
+Comparator.prototype.intersects = function(comp, loose) {
+  if (!(comp instanceof Comparator)) {
+    throw new TypeError('a Comparator is required');
+  }
+
+  var rangeTmp;
+
+  if (this.operator === '') {
+    rangeTmp = new Range(comp.value, loose);
+    return satisfies(this.value, rangeTmp, loose);
+  } else if (comp.operator === '') {
+    rangeTmp = new Range(this.value, loose);
+    return satisfies(comp.semver, rangeTmp, loose);
+  }
+
+  var sameDirectionIncreasing =
+    (this.operator === '>=' || this.operator === '>') &&
+    (comp.operator === '>=' || comp.operator === '>');
+  var sameDirectionDecreasing =
+    (this.operator === '<=' || this.operator === '<') &&
+    (comp.operator === '<=' || comp.operator === '<');
+  var sameSemVer = this.semver.version === comp.semver.version;
+  var differentDirectionsInclusive =
+    (this.operator === '>=' || this.operator === '<=') &&
+    (comp.operator === '>=' || comp.operator === '<=');
+  var oppositeDirectionsLessThan =
+    cmp(this.semver, '<', comp.semver, loose) &&
+    ((this.operator === '>=' || this.operator === '>') &&
+    (comp.operator === '<=' || comp.operator === '<'));
+  var oppositeDirectionsGreaterThan =
+    cmp(this.semver, '>', comp.semver, loose) &&
+    ((this.operator === '<=' || this.operator === '<') &&
+    (comp.operator === '>=' || comp.operator === '>'));
+
+  return sameDirectionIncreasing || sameDirectionDecreasing ||
+    (sameSemVer && differentDirectionsInclusive) ||
+    oppositeDirectionsLessThan || oppositeDirectionsGreaterThan;
+};
+
 
 exports.Range = Range;
 function Range(range, loose) {
-  if ((range instanceof Range) && range.loose === loose)
-    return range;
+  if (range instanceof Range) {
+    if (range.loose === loose) {
+      return range;
+    } else {
+      return new Range(range.raw, loose);
+    }
+  }
+
+  if (range instanceof Comparator) {
+    return new Range(range.value, loose);
+  }
 
   if (!(this instanceof Range))
     return new Range(range, loose);
@@ -781,6 +829,22 @@
   });
 
   return set;
+};
+
+Range.prototype.intersects = function(range, loose) {
+  if (!(range instanceof Range)) {
+    throw new TypeError('a Range is required');
+  }
+
+  return this.set.some(function(thisComparators) {
+    return thisComparators.every(function(thisComparator) {
+      return range.set.some(function(rangeComparators) {
+        return rangeComparators.every(function(rangeComparator) {
+          return thisComparator.intersects(rangeComparator, loose);
+        });
+      });
+    });
+  });
 };
 
 // Mostly just for testing and legacy API reasons
@@ -1087,20 +1151,42 @@
 
 exports.maxSatisfying = maxSatisfying;
 function maxSatisfying(versions, range, loose) {
-  return versions.filter(function(version) {
-    return satisfies(version, range, loose);
-  }).sort(function(a, b) {
-    return rcompare(a, b, loose);
-  })[0] || null;
+  var max = null;
+  var maxSV = null;
+  try {
+    var rangeObj = new Range(range, loose);
+  } catch (er) {
+    return null;
+  }
+  versions.forEach(function (v) {
+    if (rangeObj.test(v)) { // satisfies(v, range, loose)
+      if (!max || maxSV.compare(v) === -1) { // compare(max, v, true)
+        max = v;
+        maxSV = new SemVer(max, loose);
+      }
+    }
+  })
+  return max;
 }
 
 exports.minSatisfying = minSatisfying;
 function minSatisfying(versions, range, loose) {
-  return versions.filter(function(version) {
-    return satisfies(version, range, loose);
-  }).sort(function(a, b) {
-    return compare(a, b, loose);
-  })[0] || null;
+  var min = null;
+  var minSV = null;
+  try {
+    var rangeObj = new Range(range, loose);
+  } catch (er) {
+    return null;
+  }
+  versions.forEach(function (v) {
+    if (rangeObj.test(v)) { // satisfies(v, range, loose)
+      if (!min || minSV.compare(v) === 1) { // compare(min, v, true)
+        min = v;
+        minSV = new SemVer(min, loose);
+      }
+    }
+  })
+  return min;
 }
 
 exports.validRange = validRange;
@@ -1201,3 +1287,10 @@
   var parsed = parse(version, loose);
   return (parsed && parsed.prerelease.length) ? parsed.prerelease : null;
 }
+
+exports.intersects = intersects;
+function intersects(r1, r2, loose) {
+  r1 = new Range(r1, loose)
+  r2 = new Range(r2, loose)
+  return r1.intersects(r2)
+}
diff --git a/node_modules/swagger-ui/package.json 
b/node_modules/swagger-ui/package.json
index e482993..8ef4583 100644
--- a/node_modules/swagger-ui/package.json
+++ b/node_modules/swagger-ui/package.json
@@ -49,7 +49,7 @@
     "/hyperswitch"
   ],
   "_resolved": 
"git+https://github.com/wikimedia/swagger-ui.git#b9b40dc8e00caeb24c19fe636b93250a7e335541";,
-  "_shasum": "7eaf44fd9e7919d2dd12bd3e390421bfced7f4dd",
+  "_shasum": "266c406480a562e8f26835ebabe60f78182b14f8",
   "_shrinkwrap": null,
   "_spec": "swagger-ui@git+https://github.com/wikimedia/swagger-ui.git#master";,
   "_where": "/opt/service/node_modules/hyperswitch",
diff --git a/restbase b/restbase
index dc02487..6176450 160000
--- a/restbase
+++ b/restbase
@@ -1 +1 @@
-Subproject commit dc02487fc884c06a3e0aa74437ebbd08a01bbece
+Subproject commit 6176450748a8c91d1120b18e07be742b69203a0a

-- 
To view, visit https://gerrit.wikimedia.org/r/367712
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: I576146587deaa506ace7c6978a29807e894fdbd3
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/services/restbase/deploy
Gerrit-Branch: master
Gerrit-Owner: Ppchelko <ppche...@wikimedia.org>
Gerrit-Reviewer: Mobrovac <mobro...@wikimedia.org>

_______________________________________________
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to