Ppchelko has submitted this change and it was merged. ( https://gerrit.wikimedia.org/r/387790 )
Change subject: Update restbase to 4cf19f5 ...................................................................... Update restbase to 4cf19f5 List of changes: xxxxxxx Update node module dependencies Change-Id: If2a5c47de048a890070703a0a19d37e5f65df7e4 --- M node_modules/content-type/package.json A node_modules/hot-shots/#CHANGES.md# M node_modules/hot-shots/lib/statsd.js A node_modules/hot-shots/package-lock.json M node_modules/hot-shots/package.json M node_modules/hyperswitch/lib/filters/http.js M node_modules/hyperswitch/lib/server.js M node_modules/hyperswitch/package.json M node_modules/json-stable-stringify/package.json M node_modules/kad/package.json D node_modules/msgpack5/.npmignore M node_modules/msgpack5/lib/encoder.js M node_modules/msgpack5/package.json A node_modules/msgpack5/test/1-byte-length-uint8arrays.js A node_modules/msgpack5/test/2-bytes-length-uint8arrays.js A node_modules/msgpack5/test/4-bytes-length-uint8arrays.js M node_modules/restbase-mod-table-cassandra-ng/package.json M node_modules/restbase-mod-table-spec-ng/package.json M node_modules/sntp/lib/index.js M node_modules/sntp/package.json M node_modules/swagger-ui/package.json 21 files changed, 713 insertions(+), 106 deletions(-) Approvals: Ppchelko: Verified; Looks good to me, approved diff --git a/node_modules/content-type/package.json b/node_modules/content-type/package.json index 7007def..e8686c8 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": "82d5e76aa24867c22fcae7b1b3ce71d2895ad4f0", + "_shasum": "5f6b6d3a0fde12219072bbffe3022fd8a7856870", "_shrinkwrap": null, "_spec": "content-type@git+https://github.com/wikimedia/content-type.git#master", "_where": "/opt/service", diff --git "a/node_modules/hot-shots/\043CHANGES.md\043" "b/node_modules/hot-shots/\043CHANGES.md\043" new file mode 100644 index 0000000..228a2ca --- /dev/null +++ "b/node_modules/hot-shots/\043CHANGES.md\043" @@ -0,0 +1,80 @@ +CHANGELOG +========= + +## 4.7.0 (2017-9-21) +* @bdeitte Revert TypeScript typings, which ended up not being semver minor + +## 4.6.0 (2017-9-19) +* @jgwmaxwell TypeScript typings + +## 4.5.0 (2017-5-4) +* @jsocol Support default value with tags in increment + +## 4.4.0 (2017-3-23) +* @RijulB Global sample rate + +## 4.3.1 (2016-11-7) +* @RandomSeeded Fix callbacks not being triggered when using buffers + +## 4.3.0 (2016-9-30) +* @ggoodman Allow socket errors to be handled with errorHandler + +## 4.2.0 (2016-8-3) +* @mhahn Add support for DataDog service checks + +## 4.1.1 (2016-5-22) +* @ash2k date_happened should be seconds, not milliseconds + +## 4.1.0 (2016-5-8) +* @ash2k Support multiline text in DataDog events + +## 4.0.0 (2016-5-7) +* @ash2k Provided tags, including `childClient()` tags, override global tags with same names. + +## 3.1.0 (2016-5-3) +* @ash2k Support a client-wide error handler used in case no callback is provided and to handle various exceptions. + +## 3.0.1 (2016-4-28) +* @bdeitte Add 'use strict' to files and make changes needed for this. + +## 3.0.0 (2016-4-27) +* @ash2k Method to create child clients. (This is not a backwards-incompatible change but is rather large.) +* @ash2k Shrink npm package a bit more + +## 2.4.0 (2016-2-26) +* @arlolra Shrink npm package +* @arlolra/@bdeitte Move DNS errors when caching them to send() and use callback when possible +* @bdeitte Use callback for Telegraf error when possible + +## 2.3.1 (2016-2-3) +* @Pchelolo Ensure messages not larger then maxBufferSize + +## 2.3.0 (2016-1-17) +* @bdeitte Fix increment(name, 0) to send a 0 count instead of 1 +* @bdeitte Flush the queue when needed on close() + +## 2.2.0 (2016-1-10) +* @bdeitte Document and expand on close API +* @bdeitte Catch more error cases for callbacks + +## 2.1.2 (2015-12-9) +* @bdeitte Even more doc updates +* @mmoulton Fix multiple tags with Telegraf + +## 2.1.1 (2015-12-9) +* @bdeitte Doc updates + +## 2.1.0 (2015-12-9) +* @mmoulton Add options.telegraf to enable support for Telegraf's StatsD line protocol format +* @mmoulton Ensure message callback is sent in buffered case, even when we just buffer. + +## 2.0.0 (2015-10-22) +* @jjofseattle Add options.maxBufferSize and options.bufferFlushInterval +* @bdeitte Change options.global_tags to options.globalTags for consistency + +## 1.0.2 (2015-09-25) +* @ainsleyc Thrown error when cacheDNS flag fails to resolve DNS name + +## 1.0.1 (2015-09-24) +* @bdeitte Add the event API used by DogStatsD +* @sivy Start from the base of https://github.com/sivy/node-statsd diff --git a/node_modules/hot-shots/lib/statsd.js b/node_modules/hot-shots/lib/statsd.js index b206341..6b41c15 100644 --- a/node_modules/hot-shots/lib/statsd.js +++ b/node_modules/hot-shots/lib/statsd.js @@ -43,6 +43,9 @@ }; } + // hidden global_tags option for backwards compatibility + options.globalTags = options.globalTags || options.global_tags; + this.host = options.host || 'localhost'; this.port = options.port || 8125; this.prefix = options.prefix || ''; @@ -201,7 +204,8 @@ throw err; } - var check = ['_sc', name, status], + + var check = ['_sc', this.prefix + name + this.suffix, status], metadata = options || {}; if (metadata.date_happened) { diff --git a/node_modules/hot-shots/package-lock.json b/node_modules/hot-shots/package-lock.json new file mode 100644 index 0000000..859a7ed --- /dev/null +++ b/node_modules/hot-shots/package-lock.json @@ -0,0 +1,401 @@ +{ + "name": "hot-shots", + "version": "4.7.0", + "lockfileVersion": 1, + "requires": true, + "dependencies": { + "balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", + "dev": true + }, + "brace-expansion": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.8.tgz", + "integrity": "sha1-wHshHHyVLsH479Uad+8NHTmQopI=", + "dev": true, + "requires": { + "balanced-match": "1.0.0", + "concat-map": "0.0.1" + } + }, + "cli": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cli/-/cli-1.0.1.tgz", + "integrity": "sha1-IoF1NPJL+klQw01TLUjsvGIbjBQ=", + "dev": true, + "requires": { + "exit": "0.1.2", + "glob": "7.1.2" + } + }, + "commander": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.3.0.tgz", + "integrity": "sha1-/UMOiJgy7DU7ms0d4hfBHLPu+HM=", + "dev": true + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", + "dev": true + }, + "console-browserify": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.1.0.tgz", + "integrity": "sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA=", + "dev": true, + "requires": { + "date-now": "0.1.4" + } + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", + "dev": true + }, + "date-now": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/date-now/-/date-now-0.1.4.tgz", + "integrity": "sha1-6vQ5/U1ISK105cx9vvIAZyueNFs=", + "dev": true + }, + "debug": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.2.0.tgz", + "integrity": "sha1-+HBX6ZWxofauaklgZkE3vFbwOdo=", + "dev": true, + "requires": { + "ms": "0.7.1" + } + }, + "diff": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-1.4.0.tgz", + "integrity": "sha1-fyjS657nsVqX79ic5j3P2qPMur8=", + "dev": true + }, + "dom-serializer": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.0.tgz", + "integrity": "sha1-BzxpdUbOB4DOI75KKOKT5AvDDII=", + "dev": true, + "requires": { + "domelementtype": "1.1.3", + "entities": "1.1.1" + }, + "dependencies": { + "domelementtype": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.1.3.tgz", + "integrity": "sha1-vSh3PiZCiBrsUVRJJCmcXNgiGFs=", + "dev": true + }, + "entities": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.1.tgz", + "integrity": "sha1-blwtClYhtdra7O+AuQ7ftc13cvA=", + "dev": true + } + } + }, + "domelementtype": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.0.tgz", + "integrity": "sha1-sXrtguirWeUt2cGbF1bg/BhyBMI=", + "dev": true + }, + "domhandler": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.3.0.tgz", + "integrity": "sha1-LeWaCCLVAn+r/28DLCsloqir5zg=", + "dev": true, + "requires": { + "domelementtype": "1.3.0" + } + }, + "domutils": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz", + "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=", + "dev": true, + "requires": { + "dom-serializer": "0.1.0", + "domelementtype": "1.3.0" + } + }, + "entities": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-1.0.0.tgz", + "integrity": "sha1-sph6o4ITR/zeZCsk/fyeT7cSvyY=", + "dev": true + }, + "escape-string-regexp": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.2.tgz", + "integrity": "sha1-Tbwv5nTnGUnK8/smlc5/LcHZqNE=", + "dev": true + }, + "exit": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", + "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=", + "dev": true + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "dev": true + }, + "glob": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", + "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", + "dev": true, + "requires": { + "fs.realpath": "1.0.0", + "inflight": "1.0.6", + "inherits": "2.0.3", + "minimatch": "3.0.4", + "once": "1.4.0", + "path-is-absolute": "1.0.1" + } + }, + "growl": { + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/growl/-/growl-1.9.2.tgz", + "integrity": "sha1-Dqd0NxXbjY3ixe3hd14bRayFwC8=", + "dev": true + }, + "htmlparser2": { + "version": "3.8.3", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.8.3.tgz", + "integrity": "sha1-mWwosZFRaovoZQGn15dX5ccMEGg=", + "dev": true, + "requires": { + "domelementtype": "1.3.0", + "domhandler": "2.3.0", + "domutils": "1.5.1", + "entities": "1.0.0", + "readable-stream": "1.1.14" + } + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dev": true, + "requires": { + "once": "1.4.0", + "wrappy": "1.0.2" + } + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", + "dev": true + }, + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "dev": true + }, + "jade": { + "version": "0.26.3", + "resolved": "https://registry.npmjs.org/jade/-/jade-0.26.3.tgz", + "integrity": "sha1-jxDXl32NefL2/4YqgbBRPMslaGw=", + "dev": true, + "requires": { + "commander": "0.6.1", + "mkdirp": "0.3.0" + }, + "dependencies": { + "commander": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-0.6.1.tgz", + "integrity": "sha1-+mihT2qUXVTbvlDYzbMyDp47GgY=", + "dev": true + }, + "mkdirp": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.3.0.tgz", + "integrity": "sha1-G79asbqCevI1dRQ0kEJkVfSB/h4=", + "dev": true + } + } + }, + "jshint": { + "version": "2.9.5", + "resolved": "https://registry.npmjs.org/jshint/-/jshint-2.9.5.tgz", + "integrity": "sha1-HnJSkVzmgbQIJ+4UJIxG006apiw=", + "dev": true, + "requires": { + "cli": "1.0.1", + "console-browserify": "1.1.0", + "exit": "0.1.2", + "htmlparser2": "3.8.3", + "lodash": "3.7.0", + "minimatch": "3.0.4", + "shelljs": "0.3.0", + "strip-json-comments": "1.0.4" + } + }, + "lodash": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-3.7.0.tgz", + "integrity": "sha1-Nni9irmVBXwHreg27S7wh9qBHUU=", + "dev": true + }, + "lru-cache": { + "version": "2.7.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-2.7.3.tgz", + "integrity": "sha1-bUUk6LlV+V1PW1iFHOId1y+06VI=", + "dev": true + }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dev": true, + "requires": { + "brace-expansion": "1.1.8" + } + }, + "minimist": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", + "dev": true + }, + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "dev": true, + "requires": { + "minimist": "0.0.8" + } + }, + "mocha": { + "version": "2.5.3", + "resolved": "https://registry.npmjs.org/mocha/-/mocha-2.5.3.tgz", + "integrity": "sha1-FhvlvetJZ3HrmzV0UFC2IrWu/Fg=", + "dev": true, + "requires": { + "commander": "2.3.0", + "debug": "2.2.0", + "diff": "1.4.0", + "escape-string-regexp": "1.0.2", + "glob": "3.2.11", + "growl": "1.9.2", + "jade": "0.26.3", + "mkdirp": "0.5.1", + "supports-color": "1.2.0", + "to-iso-string": "0.0.2" + }, + "dependencies": { + "glob": { + "version": "3.2.11", + "resolved": "https://registry.npmjs.org/glob/-/glob-3.2.11.tgz", + "integrity": "sha1-Spc/Y1uRkPcV0QmH1cAP0oFevj0=", + "dev": true, + "requires": { + "inherits": "2.0.3", + "minimatch": "0.3.0" + } + }, + "minimatch": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-0.3.0.tgz", + "integrity": "sha1-J12O2qxPG7MyZHIInnlJyDlGmd0=", + "dev": true, + "requires": { + "lru-cache": "2.7.3", + "sigmund": "1.0.1" + } + } + } + }, + "ms": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.1.tgz", + "integrity": "sha1-nNE8A62/8ltl7/3nzoZO6VIBcJg=", + "dev": true + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dev": true, + "requires": { + "wrappy": "1.0.2" + } + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "dev": true + }, + "readable-stream": { + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", + "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", + "dev": true, + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "0.0.1", + "string_decoder": "0.10.31" + } + }, + "shelljs": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.3.0.tgz", + "integrity": "sha1-NZbmMHp4FUT1kfN9phg2DzHbV7E=", + "dev": true + }, + "sigmund": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz", + "integrity": "sha1-P/IfGYytIXX587eBhT/ZTQ0ZtZA=", + "dev": true + }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", + "dev": true + }, + "strip-json-comments": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-1.0.4.tgz", + "integrity": "sha1-HhX7ysl9Pumb8tc7TGVrCCu6+5E=", + "dev": true + }, + "supports-color": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-1.2.0.tgz", + "integrity": "sha1-/x7R5hFp0Gs88tWI4YixjYhH4X4=", + "dev": true + }, + "to-iso-string": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/to-iso-string/-/to-iso-string-0.0.2.tgz", + "integrity": "sha1-TcGeZk38y+Jb2NtQiwDG2hWCVdE=", + "dev": true + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", + "dev": true + } + } +} diff --git a/node_modules/hot-shots/package.json b/node_modules/hot-shots/package.json index bea8370..3ef5a63 100644 --- a/node_modules/hot-shots/package.json +++ b/node_modules/hot-shots/package.json @@ -14,13 +14,13 @@ ] ], "_from": "hot-shots@>=4.4.0 <5.0.0", - "_id": "hot-shots@4.7.0", + "_id": "hot-shots@4.8.0", "_inCache": true, "_location": "/hot-shots", "_nodeVersion": "6.10.1", "_npmOperationalInternal": { "host": "s3://npm-registry-packages", - "tmp": "tmp/hot-shots-4.7.0.tgz_1505994594428_0.16551286354660988" + "tmp": "tmp/hot-shots-4.8.0.tgz_1509500314022_0.8991006584838033" }, "_npmUser": { "name": "bdeitte", @@ -40,8 +40,8 @@ "_requiredBy": [ "/service-runner" ], - "_resolved": "https://registry.npmjs.org/hot-shots/-/hot-shots-4.7.0.tgz", - "_shasum": "1fb2eecd234c938e3ccb56c93681b573455dd64c", + "_resolved": "https://registry.npmjs.org/hot-shots/-/hot-shots-4.8.0.tgz", + "_shasum": "052be48430efc7d117ba7cc4d41f1833ba38c79f", "_shrinkwrap": null, "_spec": "hot-shots@^4.4.0", "_where": "/opt/service/node_modules/service-runner", @@ -75,13 +75,13 @@ "lib": "./lib/" }, "dist": { - "shasum": "1fb2eecd234c938e3ccb56c93681b573455dd64c", - "tarball": "https://registry.npmjs.org/hot-shots/-/hot-shots-4.7.0.tgz" + "shasum": "052be48430efc7d117ba7cc4d41f1833ba38c79f", + "tarball": "https://registry.npmjs.org/hot-shots/-/hot-shots-4.8.0.tgz" }, "engines": { "node": ">=0.8.0" }, - "gitHead": "035a8b66cec4970b3b18df2a05fa853d702a4e35", + "gitHead": "89584ba105d051ba4fbbb491c99653176f5a7032", "homepage": "https://github.com/brightcove/hot-shots#readme", "keywords": [ "statsd", @@ -109,5 +109,5 @@ "pretest": "npm run lint", "test": "mocha -R spec" }, - "version": "4.7.0" + "version": "4.8.0" } diff --git a/node_modules/hyperswitch/lib/filters/http.js b/node_modules/hyperswitch/lib/filters/http.js index b318af0..c8a700c 100644 --- a/node_modules/hyperswitch/lib/filters/http.js +++ b/node_modules/hyperswitch/lib/filters/http.js @@ -24,20 +24,17 @@ return next(hyper, req); } - // Enforce the usage of UA - req.headers = req.headers || {}; - hyper.log('trace/webrequest', { - req, - request_id: req.headers['x-request-id'] - }); // Make sure we have a string req.uri = `${req.uri}`; - - // The request ID is not personally identifyable information without // access to logstash, so always set / forward it. hyper.setRequestId(req); + hyper.log('trace/webrequest', { + request_id: req.headers['x-request-id'], + req, + }); + const forwardHeaders = match.matcher.forward_headers; // General precedence: diff --git a/node_modules/hyperswitch/lib/server.js b/node_modules/hyperswitch/lib/server.js index 6b6411e..44cead4 100644 --- a/node_modules/hyperswitch/lib/server.js +++ b/node_modules/hyperswitch/lib/server.js @@ -14,6 +14,7 @@ const http = require('http'); const zlib = require('zlib'); const stream = require('stream'); +const os = require('os'); const URI = require('swagger-router').URI; @@ -139,6 +140,8 @@ // Propagate the request id header rh['x-request-id'] = opts.reqId; + rh.server = os.hostname(); + logResponse(opts, response, opts.startTime); let body; @@ -233,6 +236,7 @@ } else { opts.log('error/request', { root_req: req, + response: response.stack || response.toString(), msg: "No content returned" }); diff --git a/node_modules/hyperswitch/package.json b/node_modules/hyperswitch/package.json index 66cba64..db2b455 100644 --- a/node_modules/hyperswitch/package.json +++ b/node_modules/hyperswitch/package.json @@ -14,13 +14,13 @@ ] ], "_from": "hyperswitch@>=0.9.1 <0.10.0", - "_id": "hyperswitch@0.9.3", + "_id": "hyperswitch@0.9.4", "_inCache": true, "_location": "/hyperswitch", "_nodeVersion": "6.11.1", "_npmOperationalInternal": { "host": "s3://npm-registry-packages", - "tmp": "tmp/hyperswitch-0.9.3.tgz_1508139765826_0.35973776830360293" + "tmp": "tmp/hyperswitch-0.9.4.tgz_1509542257367_0.6344188670627773" }, "_npmUser": { "name": "doorman", @@ -42,8 +42,8 @@ "_requiredBy": [ "/" ], - "_resolved": "https://registry.npmjs.org/hyperswitch/-/hyperswitch-0.9.3.tgz", - "_shasum": "c52440d036d3232eeeea49513fff71c1ca16ea2a", + "_resolved": "https://registry.npmjs.org/hyperswitch/-/hyperswitch-0.9.4.tgz", + "_shasum": "f62f478fa7e5234d5c121bfd1f388454b94b7b8b", "_shrinkwrap": null, "_spec": "hyperswitch@^0.9.1", "_where": "/opt/service", @@ -81,10 +81,10 @@ }, "directories": {}, "dist": { - "shasum": "c52440d036d3232eeeea49513fff71c1ca16ea2a", - "tarball": "https://registry.npmjs.org/hyperswitch/-/hyperswitch-0.9.3.tgz" + "shasum": "f62f478fa7e5234d5c121bfd1f388454b94b7b8b", + "tarball": "https://registry.npmjs.org/hyperswitch/-/hyperswitch-0.9.4.tgz" }, - "gitHead": "cff7e4279043743aefb2f74eba566e60e11517f0", + "gitHead": "d3133e8ed092cacec65f71e2021a8031ae832dff", "homepage": "https://github.com/wikimedia/hyperswitch", "keywords": [ "REST", @@ -123,5 +123,5 @@ "coveralls": "cat ./coverage/lcov.info | coveralls", "test": "mocha" }, - "version": "0.9.3" + "version": "0.9.4" } diff --git a/node_modules/json-stable-stringify/package.json b/node_modules/json-stable-stringify/package.json index 5b1b0e5..d27755e 100644 --- a/node_modules/json-stable-stringify/package.json +++ b/node_modules/json-stable-stringify/package.json @@ -51,7 +51,7 @@ "/restbase-mod-table-cassandra-ng" ], "_resolved": "git+https://github.com/wikimedia/json-stable-stringify.git#c05178e4dfc3834017f017732934c1c52ba3dd8f", - "_shasum": "2c85a099df3e95e3f45f19119d8b6300127a2d9d", + "_shasum": "2c5b96506b3c9d9262498fb9429910f41cd63a4e", "_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 48fe074..e86ec6d 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": "3b768b4295266384772947b44a48701ba6926df8", + "_shasum": "4aae86578aac614a681865e65b44c80d616cbd7c", "_shrinkwrap": null, "_spec": "kad@git+https://github.com/gwicke/kad.git#master", "_where": "/opt/service/node_modules/limitation", diff --git a/node_modules/msgpack5/.npmignore b/node_modules/msgpack5/.npmignore deleted file mode 100644 index 1207dcd..0000000 --- a/node_modules/msgpack5/.npmignore +++ /dev/null @@ -1,27 +0,0 @@ -# Logs -logs -*.log -.idea - -# Runtime data -pids -*.pid -*.seed - -# Directory for instrumented libs generated by jscoverage/JSCover -lib-cov - -# Coverage directory used by tools like istanbul -coverage - -# Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files) -.grunt - -# Compiled binary addons (http://nodejs.org/api/addons.html) -build/Release - -# Dependency directory -# Deployed apps should consider commenting this line out: -# see https://npmjs.org/doc/faq.html#Should-I-check-my-node_modules-folder-into-git -node_modules -spec.html spec.md diff --git a/node_modules/msgpack5/lib/encoder.js b/node_modules/msgpack5/lib/encoder.js index 6c7da0c..7223e95 100644 --- a/node_modules/msgpack5/lib/encoder.js +++ b/node_modules/msgpack5/lib/encoder.js @@ -45,7 +45,10 @@ buf.writeUInt32BE(len, 1) buf.write(obj, 5) } - } else if (obj && obj.readUInt32LE) { + } else if (obj && (obj.readUInt32LE || obj instanceof Uint8Array)) { + if (obj instanceof Uint8Array) { + obj = Buffer.from(obj) + } // weird hack to support Buffer // and Buffer-like objects if (obj.length <= 0xff) { diff --git a/node_modules/msgpack5/package.json b/node_modules/msgpack5/package.json index 81ee802..0a2e95a 100644 --- a/node_modules/msgpack5/package.json +++ b/node_modules/msgpack5/package.json @@ -14,19 +14,19 @@ ] ], "_from": "msgpack5@>=3.3.0 <4.0.0", - "_id": "msgpack5@3.5.1", + "_id": "msgpack5@3.6.0", "_inCache": true, "_location": "/msgpack5", - "_nodeVersion": "6.11.1", + "_nodeVersion": "8.8.1", "_npmOperationalInternal": { "host": "s3://npm-registry-packages", - "tmp": "tmp/msgpack5-3.5.1.tgz_1504009576614_0.08143061422742903" + "tmp": "tmp/msgpack5-3.6.0.tgz_1509275516552_0.5360704080667347" }, "_npmUser": { "name": "matteo.collina", "email": "he...@matteocollina.com" }, - "_npmVersion": "5.3.0", + "_npmVersion": "5.5.1", "_phantomChildren": { "core-util-is": "1.0.2", "inherits": "2.0.3", @@ -46,8 +46,8 @@ "_requiredBy": [ "/kad" ], - "_resolved": "https://registry.npmjs.org/msgpack5/-/msgpack5-3.5.1.tgz", - "_shasum": "9d97d00893a1d4a1b045be026a3ff7c9e50f301a", + "_resolved": "https://registry.npmjs.org/msgpack5/-/msgpack5-3.6.0.tgz", + "_shasum": "13912ee47cb0ad037f70def7924ebf38afa19b4f", "_shrinkwrap": null, "_spec": "msgpack5@^3.3.0", "_where": "/opt/service/node_modules/kad", @@ -78,11 +78,11 @@ }, "directories": {}, "dist": { - "integrity": "sha512-Umzq9b2rUCSQMArFlBYdmYm0DvDCpcJWUNefG6sVd1VtAxngpueQMhsuHno6p9IKUT2tCKc7mS1dvpPb476R1A==", - "shasum": "9d97d00893a1d4a1b045be026a3ff7c9e50f301a", - "tarball": "https://registry.npmjs.org/msgpack5/-/msgpack5-3.5.1.tgz" + "integrity": "sha512-6HuCZHA57WtNUzrKIvjJ8OMxigzveJ6D5i13y6TsgGu3X3zxABpuBvChpppOoGdB9SyWZcmqUs1fwUV/PpSQ7Q==", + "shasum": "13912ee47cb0ad037f70def7924ebf38afa19b4f", + "tarball": "https://registry.npmjs.org/msgpack5/-/msgpack5-3.6.0.tgz" }, - "gitHead": "3ab63aeb8b403a4a6c9bd0c6ada1b7dc60caf083", + "gitHead": "cca202eaa250c2cafbc2170da7da29c31e8710ea", "homepage": "https://github.com/mcollina/msgpack5", "keywords": [ "msgpack", @@ -134,5 +134,5 @@ "android-browser/latest" ] }, - "version": "3.5.1" + "version": "3.6.0" } diff --git a/node_modules/msgpack5/test/1-byte-length-uint8arrays.js b/node_modules/msgpack5/test/1-byte-length-uint8arrays.js new file mode 100644 index 0000000..e5ea763 --- /dev/null +++ b/node_modules/msgpack5/test/1-byte-length-uint8arrays.js @@ -0,0 +1,43 @@ +'use strict' + +var Buffer = require('safe-buffer').Buffer +var test = require('tape').test +var msgpack = require('../') + +function build (size) { + var array = [] + var i + + for (i = 0; i < size; i++) { + array.push(42) + } + + return new Uint8Array(array) +} + +test('encode/decode 2^8-1 Uint8Arrays', function (t) { + var encoder = msgpack() + var all = [] + + all.push(build(Math.pow(2, 8) - 1)) + all.push(build(Math.pow(2, 6) + 1)) + all.push(build(1)) + all.push(new Uint8Array(0)) + + all.forEach(function (array) { + t.test('encoding Uint8Array of length ' + array.byteLength + ' bytes', function (t) { + var buf = encoder.encode(array) + t.equal(buf.length, 2 + array.byteLength, 'must have the right length') + t.equal(buf.readUInt8(0), 0xc4, 'must have the proper header') + t.equal(buf.readUInt8(1), array.byteLength, 'must include the buf length') + t.end() + }) + + t.test('mirror test for an Uint8Array of length ' + array.byteLength + ' bytes', function (t) { + t.deepEqual(encoder.decode(encoder.encode(array)), new Buffer(array), 'must stay the same') + t.end() + }) + }) + + t.end() +}) diff --git a/node_modules/msgpack5/test/2-bytes-length-uint8arrays.js b/node_modules/msgpack5/test/2-bytes-length-uint8arrays.js new file mode 100644 index 0000000..1a196d5 --- /dev/null +++ b/node_modules/msgpack5/test/2-bytes-length-uint8arrays.js @@ -0,0 +1,43 @@ +'use strict' + +var Buffer = require('safe-buffer').Buffer +var test = require('tape').test +var msgpack = require('../') + +function build (size) { + var array = [] + var i + + for (i = 0; i < size; i++) { + array.push(42) + } + + return new Uint8Array(array) +} + +test('encode/decode 2^8-1 Uint8Arrays', function (t) { + var encoder = msgpack() + var all = [] + + all.push(build(Math.pow(2, 8))) + all.push(build(Math.pow(2, 8) + 1)) + all.push(build(Math.pow(2, 12) + 1)) + all.push(build(Math.pow(2, 16) - 1)) + + all.forEach(function (array) { + t.test('encoding Uint8Array of length ' + array.byteLength + ' bytes', function (t) { + var buf = encoder.encode(array) + t.equal(buf.length, 3 + array.byteLength, 'must have the right length') + t.equal(buf.readUInt8(0), 0xc5, 'must have the proper header') + t.equal(buf.readUInt16BE(1), array.byteLength, 'must include the buf length') + t.end() + }) + + t.test('mirror test for an Uint8Array of length ' + array.byteLength + ' bytes', function (t) { + t.deepEqual(encoder.decode(encoder.encode(array)), new Buffer(array), 'must stay the same') + t.end() + }) + }) + + t.end() +}) diff --git a/node_modules/msgpack5/test/4-bytes-length-uint8arrays.js b/node_modules/msgpack5/test/4-bytes-length-uint8arrays.js new file mode 100644 index 0000000..b91c650 --- /dev/null +++ b/node_modules/msgpack5/test/4-bytes-length-uint8arrays.js @@ -0,0 +1,42 @@ +'use strict' + +var Buffer = require('safe-buffer').Buffer +var test = require('tape').test +var msgpack = require('../') + +function build (size) { + var array = [] + var i + + for (i = 0; i < size; i++) { + array.push(42) + } + + return new Uint8Array(array) +} + +test('encode/decode 2^8-1 Uint8Arrays', function (t) { + var encoder = msgpack() + var all = [] + + all.push(build(Math.pow(2, 16))) + all.push(build(Math.pow(2, 16) + 1)) + all.push(build(Math.pow(2, 18) + 1)) + + all.forEach(function (array) { + t.test('encoding Uint8Array of length ' + array.byteLength + ' bytes', function (t) { + var buf = encoder.encode(array) + t.equal(buf.length, 5 + array.byteLength, 'must have the right length') + t.equal(buf.readUInt8(0), 0xc6, 'must have the proper header') + t.equal(buf.readUInt32BE(1), array.byteLength, 'must include the buf length') + t.end() + }) + + t.test('mirror test for an Uint8Array of length ' + array.byteLength + ' bytes', function (t) { + t.deepEqual(encoder.decode(encoder.encode(array)), new Buffer(array), 'must stay the same') + t.end() + }) + }) + + t.end() +}) diff --git a/node_modules/restbase-mod-table-cassandra-ng/package.json b/node_modules/restbase-mod-table-cassandra-ng/package.json index b042d42..20d1f2f 100644 --- a/node_modules/restbase-mod-table-cassandra-ng/package.json +++ b/node_modules/restbase-mod-table-cassandra-ng/package.json @@ -49,7 +49,7 @@ "/" ], "_resolved": "git+https://github.com/wikimedia/restbase-mod-table-cassandra.git#b3492319daecfb269c5b2082ee1b5df1c0deb7b6", - "_shasum": "5f3d8581b72b3fc0474dfddcbd07f7c536fd63ab", + "_shasum": "3adb408a93acce920bffba60de6958e8604933cc", "_shrinkwrap": null, "_spec": "restbase-mod-table-cassandra-ng@git+https://github.com/wikimedia/restbase-mod-table-cassandra.git#redesign", "_where": "/opt/service", diff --git a/node_modules/restbase-mod-table-spec-ng/package.json b/node_modules/restbase-mod-table-spec-ng/package.json index b3a4adf..ac18f2e 100644 --- a/node_modules/restbase-mod-table-spec-ng/package.json +++ b/node_modules/restbase-mod-table-spec-ng/package.json @@ -49,7 +49,7 @@ "/restbase-mod-table-cassandra-ng" ], "_resolved": "git+https://github.com/wikimedia/restbase-mod-table-spec.git#aa0a252e8de67dda822923236d2b54b9b945ae90", - "_shasum": "8a37fa900202e7050854fde650a1545f37fb39f5", + "_shasum": "5e14117f9fb6090056a60be51c24803e589a6dcb", "_shrinkwrap": null, "_spec": "restbase-mod-table-spec-ng@git+https://github.com/wikimedia/restbase-mod-table-spec.git#redesign", "_where": "/opt/service/node_modules/restbase-mod-table-cassandra-ng", diff --git a/node_modules/sntp/lib/index.js b/node_modules/sntp/lib/index.js index da79cd7..83eb458 100755 --- a/node_modules/sntp/lib/index.js +++ b/node_modules/sntp/lib/index.js @@ -4,6 +4,7 @@ const Dgram = require('dgram'); const Dns = require('dns'); + const Hoek = require('hoek'); @@ -20,29 +21,40 @@ } const settings = Hoek.clone(options); - settings.host = settings.host || 'pool.ntp.org'; + settings.host = settings.host || 'time.google.com'; settings.port = settings.port || 123; settings.resolveReference = settings.resolveReference || false; // Declare variables used by callback - let timeoutId = 0; + let timeoutId = null; let sent = 0; // Ensure callback is only called once const finish = Hoek.once((err, result) => { - if (timeoutId) { - clearTimeout(timeoutId); - timeoutId = 0; - } + clearTimeout(timeoutId); socket.removeAllListeners(); socket.once('error', Hoek.ignore); - socket.close(); + + try { + socket.close(); + } + catch (ignoreErr) { } // Ignore errors if the socket is already closed + return callback(err, result); }); + + // Set timeout + + if (settings.timeout) { + timeoutId = setTimeout(() => { + + return finish(new Error('Timeout')); + }, settings.timeout); + } // Create UDP socket @@ -102,16 +114,6 @@ return finish(null, message); }); }); - - // Set timeout - - if (settings.timeout) { - timeoutId = setTimeout(() => { - - timeoutId = 0; - return finish(new Error('Timeout')); - }, settings.timeout); - } // Construct NTP message @@ -338,7 +340,8 @@ // Now singleton internals.now = { - intervalId: 0 + started: false, + intervalId: null }; @@ -349,16 +352,28 @@ options = {}; } - if (internals.now.intervalId) { + if (internals.now.started) { process.nextTick(() => callback()); return; } - exports.offset(options, (ignoreErr, offset) => { + const report = (err) => { + + if (err && + options.onError) { + + options.onError(err); + } + }; + + internals.now.started = true; + exports.offset(options, (err, offset) => { + + report(err); internals.now.intervalId = setInterval(() => { - exports.offset(options, Hoek.ignore); + exports.offset(options, report); }, options.clockSyncRefresh || 24 * 60 * 60 * 1000); // Daily return callback(); @@ -368,18 +383,19 @@ exports.stop = function () { - if (!internals.now.intervalId) { + if (!internals.now.started) { return; } clearInterval(internals.now.intervalId); - internals.now.intervalId = 0; + internals.now.started = false; + internals.now.intervalId = null; }; exports.isLive = function () { - return !!internals.now.intervalId; + return internals.now.started; }; diff --git a/node_modules/sntp/package.json b/node_modules/sntp/package.json index 0be6bb9..ccd67d8 100755 --- a/node_modules/sntp/package.json +++ b/node_modules/sntp/package.json @@ -14,19 +14,19 @@ ] ], "_from": "sntp@>=2.0.0 <3.0.0", - "_id": "sntp@2.0.2", + "_id": "sntp@2.1.0", "_inCache": true, "_location": "/sntp", - "_nodeVersion": "7.2.0", + "_nodeVersion": "8.7.0", "_npmOperationalInternal": { - "host": "packages-18-east.internal.npmjs.com", - "tmp": "tmp/sntp-2.0.2.tgz_1480571736125_0.9244724279269576" + "host": "s3://npm-registry-packages", + "tmp": "tmp/sntp-2.1.0.tgz_1508979210264_0.7410221791360527" }, "_npmUser": { "name": "hueniverse", "email": "e...@hammer.io" }, - "_npmVersion": "4.0.3", + "_npmVersion": "5.5.1", "_phantomChildren": {}, "_requested": { "raw": "sntp@2.x.x", @@ -40,8 +40,8 @@ "_requiredBy": [ "/hawk" ], - "_resolved": "https://registry.npmjs.org/sntp/-/sntp-2.0.2.tgz", - "_shasum": "5064110f0af85f7cfdb7d6b67a40028ce52b4b2b", + "_resolved": "https://registry.npmjs.org/sntp/-/sntp-2.1.0.tgz", + "_shasum": "2c6cec14fedc2222739caf9b5c3d85d1cc5a2cc8", "_shrinkwrap": null, "_spec": "sntp@2.x.x", "_where": "/opt/service/node_modules/hawk", @@ -59,17 +59,18 @@ "description": "SNTP Client", "devDependencies": { "code": "4.x.x", - "lab": "10.x.x" + "lab": "14.x.x" }, "directories": {}, "dist": { - "shasum": "5064110f0af85f7cfdb7d6b67a40028ce52b4b2b", - "tarball": "https://registry.npmjs.org/sntp/-/sntp-2.0.2.tgz" + "integrity": "sha512-FL1b58BDrqS3A11lJ0zEdnJ3UOKqVxawAkF3k7F0CVN7VQ34aZrV+G8BZ1WC9ZL7NyrwsW0oviwsWDgRuVYtJg==", + "shasum": "2c6cec14fedc2222739caf9b5c3d85d1cc5a2cc8", + "tarball": "https://registry.npmjs.org/sntp/-/sntp-2.1.0.tgz" }, "engines": { "node": ">=4.0.0" }, - "gitHead": "c92f322dc1b04c958dc9e5da67e6e6947df407bb", + "gitHead": "4ea16d6c111c205c3dc1f8e95c635108ed3f4d6b", "homepage": "https://github.com/hueniverse/sntp#readme", "keywords": [ "sntp", @@ -95,5 +96,5 @@ "test": "lab -a code -t 100 -L -m 20000", "test-cov-html": "lab -a code -r html -o coverage.html -m 20000" }, - "version": "2.0.2" + "version": "2.1.0" } diff --git a/node_modules/swagger-ui/package.json b/node_modules/swagger-ui/package.json index 647b4b9..a19e7d6 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": "234d0ecfa7d80b6c3b4023cb3ff2b6bc77103838", + "_shasum": "f62e1e8cb565126b74ceae070d23a957ca250a26", "_shrinkwrap": null, "_spec": "swagger-ui@git+https://github.com/wikimedia/swagger-ui.git#master", "_where": "/opt/service/node_modules/hyperswitch", -- To view, visit https://gerrit.wikimedia.org/r/387790 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: merged Gerrit-Change-Id: If2a5c47de048a890070703a0a19d37e5f65df7e4 Gerrit-PatchSet: 1 Gerrit-Project: mediawiki/services/restbase/deploy Gerrit-Branch: master Gerrit-Owner: Mobrovac <mobro...@wikimedia.org> Gerrit-Reviewer: Ppchelko <ppche...@wikimedia.org> _______________________________________________ MediaWiki-commits mailing list MediaWiki-commits@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits