From 389111d73a165bc92e42e36034f78776562f7ec8 Mon Sep 17 00:00:00 2001 From: noerw Date: Thu, 21 Jun 2018 23:08:32 +0200 Subject: [PATCH 001/337] add Box.findBoxesMinimal() to minimize DB lookups and traffic --- packages/models/src/box/box.js | 42 +++++++++++++++++++++++++--------- 1 file changed, 31 insertions(+), 11 deletions(-) diff --git a/packages/models/src/box/box.js b/packages/models/src/box/box.js index 11ba1cbc..07c18f3a 100644 --- a/packages/models/src/box/box.js +++ b/packages/models/src/box/box.js @@ -856,9 +856,7 @@ const locFieldTransformerFunction = function locFieldTransformerFunction (box) { return box; }; -boxSchema.statics.findBoxesLastMeasurements = function findBoxesLastMeasurements (opts = {}) { - const schema = this; - +const buildFindBoxesQuery = function buildFindBoxesQuery (opts = {}) { const { phenomenon, fromDate, toDate } = opts, query = {}; @@ -869,6 +867,35 @@ boxSchema.statics.findBoxesLastMeasurements = function findBoxesLastMeasurements } } + // search for phenomenon only together with time params + if (fromDate || toDate) { + if (phenomenon) { + query['sensors.title'] = phenomenon; + } + } + + return query; +} + +// returns a minimal subset of the box documents for speed +boxSchema.statics.findBoxesMinimal = function findBoxesMinimal (opts = {}) { + const query = buildFindBoxesQuery(opts) + const props = { + _id: 1, // required by frontend + updatedAt: 1, // needed for classifyTransformer + currentLocation: 1, // required by frontend + exposure: 1, // required by frontend + name: 1, // required by frontend + } + + return Promise.resolve(this.find(query, props).cursor({ lean: true })); +} + +boxSchema.statics.findBoxesLastMeasurements = function findBoxesLastMeasurements (opts = {}) { + const schema = this; + const { fromDate, toDate } = opts; + const query = buildFindBoxesQuery(opts) + if (!fromDate && !toDate) { return Promise.resolve(schema.find(query, BOX_PROPS_FOR_POPULATION) .populate(BOX_SUB_PROPS_FOR_POPULATION) @@ -877,23 +904,16 @@ boxSchema.statics.findBoxesLastMeasurements = function findBoxesLastMeasurements ); } - if (phenomenon) { - query['sensors.title'] = phenomenon; - } - return Measurement.findLatestMeasurementsForSensors(fromDate, toDate) .then(function (measurements) { query['sensors._id'] = { $in: measurements.map(m => m.sensor_id) }; - if (phenomenon) { - query['sensors.title'] = phenomenon; - } let measurementsLength = measurements.length; return schema.find(query, BOX_PROPS_FOR_POPULATION) - .populate(BOX_SUB_PROPS_FOR_POPULATION) + .populate(populationOpts) .cursor({ lean: true }) .map(function (box) { if (box.currentLocation) { From 8315ac93ee7cd120ad89a08b94feccdc5373e6e7 Mon Sep 17 00:00:00 2001 From: noerw Date: Thu, 21 Jun 2018 23:09:11 +0200 Subject: [PATCH 002/337] add 'minimal' parameter to getBoxes() if minimal=true, the route will return only minimal box metadata in order to avoid expensive DB lookups and save bandwith. to still support classification without populated sensors[].lastMeasurement.createdAt, classificationTransformer now uses box.updatedAt for timestamp comparision. --- .../api/lib/controllers/boxesController.js | 8 +++++++- .../lib/transformers/classifyTransformer.js | 19 ++++--------------- 2 files changed, 11 insertions(+), 16 deletions(-) diff --git a/packages/api/lib/controllers/boxesController.js b/packages/api/lib/controllers/boxesController.js index e5e0abd3..4b090bee 100644 --- a/packages/api/lib/controllers/boxesController.js +++ b/packages/api/lib/controllers/boxesController.js @@ -200,7 +200,12 @@ const getBoxes = async function getBoxes (req, res, next) { } try { - let stream = await Box.findBoxesLastMeasurements(req._userParams); + let stream; + if (req._userParams.minimal === 'true') { + stream = await Box.findBoxesMinimal(req._userParams); + } else { + stream = await Box.findBoxesLastMeasurements(req._userParams); + } if (req._userParams.classify === 'true') { stream = stream @@ -504,6 +509,7 @@ module.exports = { { name: 'date', dataType: ['RFC 3339'] }, { name: 'format', defaultValue: 'json', allowedValues: ['json', 'geojson'] }, { name: 'classify', defaultValue: 'false', allowedValues: ['true', 'false'] }, + { name: 'minimal', defaultValue: 'false', allowedValues: ['true', 'false'] }, ]), parseAndValidateTimeParamsForFindAllBoxes, addCache('5 minutes', 'getBoxes'), diff --git a/packages/api/lib/transformers/classifyTransformer.js b/packages/api/lib/transformers/classifyTransformer.js index 116c6f6b..544f94d3 100644 --- a/packages/api/lib/transformers/classifyTransformer.js +++ b/packages/api/lib/transformers/classifyTransformer.js @@ -27,21 +27,10 @@ const classifyTransformer = function (classifyTransformerOptions, streamOptions) classifyTransformer.prototype._transform = function _transform (box, encoding, callback) { let state = 'old'; - for (const sensor of box.sensors) { - if (!sensor.lastMeasurement || !sensor.lastMeasurement.createdAt) { - break; - } - - const lastMeasurementCreatedAt = sensor.lastMeasurement.createdAt; - - if (lastMeasurementCreatedAt > this.sevenDays) { - state = 'active'; - break; - } - - if (lastMeasurementCreatedAt > this.thirtyDays) { - state = 'inactive'; - } + if (box.updatedAt > this.thirtyDays) { + state = 'inactive'; + } else if (box.updatedAt > this.sevenDays) { + state = 'active'; } box['state'] = state; From 2edb14112473627516ca67adc7bdb110d31e62d3 Mon Sep 17 00:00:00 2001 From: noerw Date: Thu, 21 Jun 2018 23:52:59 +0200 Subject: [PATCH 003/337] lint + udpate docs --- .../api/lib/controllers/boxesController.js | 1 + packages/models/src/box/box.js | 20 +++++++++---------- 2 files changed, 11 insertions(+), 10 deletions(-) diff --git a/packages/api/lib/controllers/boxesController.js b/packages/api/lib/controllers/boxesController.js index 4b090bee..7bea638d 100644 --- a/packages/api/lib/controllers/boxesController.js +++ b/packages/api/lib/controllers/boxesController.js @@ -183,6 +183,7 @@ const geoJsonStringifyReplacer = function geoJsonStringifyReplacer (key, box) { * @apiParam {String} [grouptag] only return boxes with this grouptag, allows to specify multiple separated with a comma * @apiParam {String="homeEthernet","homeWifi","homeEthernetFeinstaub","homeWifiFeinstaub","luftdaten_sds011","luftdaten_sds011_dht11","luftdaten_sds011_dht22","luftdaten_sds011_bmp180","luftdaten_sds011_bme280"} [model] only return boxes with this model, allows to specify multiple separated with a comma * @apiParam {Boolean="true","false"} [classify=false] if specified, the api will classify the boxes accordingly to their last measurements. + * @apiParam {Boolean="true","false"} [minimal=false] if specified, the api will only return a minimal set of box metadata consisting of [_id, updatedAt, currentLocation, exposure, name] for a fast response. * @apiUse ExposureFilterParam * @apiSampleRequest https://api.opensensemap.org/boxes * @apiSampleRequest https://api.opensensemap.org/boxes?date=2015-03-07T02:50Z&phenomenon=Temperatur diff --git a/packages/models/src/box/box.js b/packages/models/src/box/box.js index 07c18f3a..131c8197 100644 --- a/packages/models/src/box/box.js +++ b/packages/models/src/box/box.js @@ -875,26 +875,26 @@ const buildFindBoxesQuery = function buildFindBoxesQuery (opts = {}) { } return query; -} +}; // returns a minimal subset of the box documents for speed boxSchema.statics.findBoxesMinimal = function findBoxesMinimal (opts = {}) { - const query = buildFindBoxesQuery(opts) + const query = buildFindBoxesQuery(opts); const props = { - _id: 1, // required by frontend - updatedAt: 1, // needed for classifyTransformer + _id: 1, // required by frontend + updatedAt: 1, // needed for classifyTransformer currentLocation: 1, // required by frontend - exposure: 1, // required by frontend - name: 1, // required by frontend - } + exposure: 1, // required by frontend + name: 1, // required by frontend + }; return Promise.resolve(this.find(query, props).cursor({ lean: true })); -} +}; boxSchema.statics.findBoxesLastMeasurements = function findBoxesLastMeasurements (opts = {}) { const schema = this; const { fromDate, toDate } = opts; - const query = buildFindBoxesQuery(opts) + const query = buildFindBoxesQuery(opts); if (!fromDate && !toDate) { return Promise.resolve(schema.find(query, BOX_PROPS_FOR_POPULATION) @@ -913,7 +913,7 @@ boxSchema.statics.findBoxesLastMeasurements = function findBoxesLastMeasurements let measurementsLength = measurements.length; return schema.find(query, BOX_PROPS_FOR_POPULATION) - .populate(populationOpts) + .populate(BOX_SUB_PROPS_FOR_POPULATION) .cursor({ lean: true }) .map(function (box) { if (box.currentLocation) { From 8970eda1a4c9dfb585d5f665e329f8fa3539e025 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Mon, 16 Jul 2018 10:14:59 +0200 Subject: [PATCH 004/337] (api) set default value for SerialPort closes #166 --- packages/api/lib/controllers/boxesController.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/api/lib/controllers/boxesController.js b/packages/api/lib/controllers/boxesController.js index e5e0abd3..36468421 100644 --- a/packages/api/lib/controllers/boxesController.js +++ b/packages/api/lib/controllers/boxesController.js @@ -481,7 +481,7 @@ module.exports = { { name: 'model', allowedValues: Box.BOX_VALID_MODELS }, { name: 'sensors', dataType: ['object'] }, { name: 'sensorTemplates', dataType: ['String'], allowedValues: ['hdc1080', 'bmp280', 'sds 011', 'tsl45315', 'veml6070'] }, - { name: 'serialPort', dataType: 'String', allowedValues: ['Serial1', 'Serial2'] }, + { name: 'serialPort', dataType: 'String', defaultValue: 'Serial1', allowedValues: ['Serial1', 'Serial2'] }, { name: 'mqtt', dataType: 'object' }, { name: 'ttn', dataType: 'object' }, { predef: 'location', required: true } From 41fa9dc7757f023a775b32f3e1db84e47dfb227f Mon Sep 17 00:00:00 2001 From: ubergesundheit Date: Tue, 21 Aug 2018 21:33:48 +0200 Subject: [PATCH 005/337] document box/sensor updating, fixes #167 --- .../api/lib/controllers/boxesController.js | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/packages/api/lib/controllers/boxesController.js b/packages/api/lib/controllers/boxesController.js index 36468421..133d2458 100644 --- a/packages/api/lib/controllers/boxesController.js +++ b/packages/api/lib/controllers/boxesController.js @@ -57,7 +57,18 @@ const /** * @api {put} /boxes/:senseBoxId Update a senseBox - * @apiDescription Modify the specified senseBox. + * @apiDescription + * Modify the properties of a senseBox. Almost every aspect of a senseBox can be modified through this endpoint. + * + * ### Creating, updating or deleting sensors: + * + * Your request should contain a `sensors` array with at least one `sensor` object. You'll need to specify at least one of these properties: + * + * - `sensor` object has `"edited"` key present: Tell the API to replace all keys of the sensor with the specified `_id` with the supllied keys. (Specify all properties! `{ _id, title, unit, sensorType, icon }`) + * - `sensor` object has `"edited"` and `"new"` keys: Tell the API this sensor is new and should be added to the senseBox. (Specify all properties! `{ title, unit, sensorType }`) + * - `sensor` object has `"deleted"` key: Tell the API to delete this sensor from the senseBox. **Also deletes all measurements of this sensor!!** Needs the `_id` property. + * + * `sensor` objects without `edited`, `new`, or `deleted` keys will be ignored! * * @apiUse SensorBody * @apiUse LocationBody @@ -73,6 +84,9 @@ const * @apiParam (RequestBody) {String} [description] the updated description of this senseBox. Send '' (empty string) to delete this property. * @apiParam (RequestBody) {String} [image] the updated image of this senseBox encoded as base64 data uri. To delete the current image, send 'deleteImage: true'. * @apiParam (RequestBody) {Object} [addons] allows to add addons to the box. Submit as Object with key `add` and the desired addon as value like `{"add":"feinstaub"}` + * @apiParam (Sensor) {String} edited *Value is ignored. Presence alone is enough* Tell the API to consider this sensor for changing or deleting. Specify all properties, even if not changed! + * @apiParam (Sensor) {String} new *Value is ignored. Presence alone is enough* Tell the API to add this new sensor to the senseBox. + * @apiParam (Sensor) {String} deleted *Value is ignored. Presence alone is enough* Tell the API to delete this sensor from the senseBox. *Warning: This will also delete all measurements of this sensor* * @apiParamExample {json} Request-Example: * { * "_id": "56e741ff933e450c0fe2f705", @@ -87,7 +101,8 @@ const * "title": "UV-Intensität", * "unit": "μW/cm²", * "sensorType": "VEML6070", - * "icon": "osem-sprinkles" + * "icon": "osem-sprinkles", + * "edited": "true" * } * ], * "location": { From 2c62fa6823c7e1e76aa701c691593c31fd44b89d Mon Sep 17 00:00:00 2001 From: Norwin Roosen Date: Wed, 29 Aug 2018 19:13:19 +0200 Subject: [PATCH 006/337] fix #169 --- packages/models/src/box/box.js | 39 +++++++++++++++++-------------- tests/tests/002-location_tests.js | 35 +++++++++++++++++++++------ 2 files changed, 50 insertions(+), 24 deletions(-) diff --git a/packages/models/src/box/box.js b/packages/models/src/box/box.js index 11ba1cbc..e3475f41 100644 --- a/packages/models/src/box/box.js +++ b/packages/models/src/box/box.js @@ -363,7 +363,7 @@ boxSchema.methods.deleteMeasurementsOfSensor = function deleteMeasurementsOfSens * locations of measurements. * * @param {Array} coords A VALIDATED array of coordinates [lng,lat,height]. - * @param {Date|String} timestamp The time associated with the coordinates. + * @param {moment.Moment} timestamp The time associated with the coordinates. * @returns a Promise with the new or updated location document. */ boxSchema.methods.updateLocation = function updateLocation (coords, timestamp) { @@ -375,28 +375,33 @@ boxSchema.methods.updateLocation = function updateLocation (coords, timestamp) { // search for temporally adjacent locations // (assuming that box.locations is ordered by location.timestamp) - let loc, locIndex; - for (locIndex = 0; locIndex < box.locations.length; locIndex++) { - loc = box.locations[locIndex]; - if (!loc || timestamp.isBefore(loc.timestamp)) { - loc = box.locations[locIndex - 1]; + let earlierLoc, laterLocIndex; + for (laterLocIndex = 0; laterLocIndex < box.locations.length; laterLocIndex++) { + earlierLoc = box.locations[laterLocIndex]; + if (!earlierLoc || timestamp.isBefore(earlierLoc.timestamp)) { + earlierLoc = box.locations[laterLocIndex - 1]; break; } } // check whether we insert a new location or update a existing one, depending on spatiotemporal setting - if (!loc && !coords) { + if (!earlierLoc && !coords) { // the timestamp is earlier than any location we have, but no location is provided // -> use the next laterLoc location (there is always one from registration) - box.locations[locIndex - 1].timestamp = timestamp; + box.locations[laterLocIndex].timestamp = timestamp; - return box.save().then(() => Promise.resolve(box.locations[locIndex - 1])); + // update currentLocation when there's no later location + if (!box.locations[laterLocIndex + 1]) { + box.currentLocation = box.locations[laterLocIndex]; + } + + return box.save().then(() => Promise.resolve(box.locations[laterLocIndex])); } else if ( - !loc || + !earlierLoc || ( coords && - !isEqual(loc.coordinates, coords) && - !timestamp.isSame(loc.timestamp) + !isEqual(earlierLoc.coordinates, coords) && + !timestamp.isSame(earlierLoc.timestamp) ) ) { // insert a new location, if coords and timestamps differ from prevLoc @@ -408,11 +413,11 @@ boxSchema.methods.updateLocation = function updateLocation (coords, timestamp) { timestamp: timestamp }; - // insert the new location at right place in array - box.locations.splice(locIndex, 0, newLoc); + // insert the new location after earlierLoc in array + box.locations.splice(laterLocIndex, 0, newLoc); - // update currentLocation, if necessary - if (!box.locations[locIndex + 1]) { + // update currentLocation when there's no later location + if (!box.locations[laterLocIndex + 1]) { box.currentLocation = newLoc; } @@ -422,7 +427,7 @@ boxSchema.methods.updateLocation = function updateLocation (coords, timestamp) { // coords and timestamps are equal or not provided // -> return unmodified previous location - return Promise.resolve(loc); + return Promise.resolve(earlierLoc); }; boxSchema.methods.saveMeasurement = function saveMeasurement (measurement) { diff --git a/tests/tests/002-location_tests.js b/tests/tests/002-location_tests.js index ea199bbb..70f14ba4 100644 --- a/tests/tests/002-location_tests.js +++ b/tests/tests/002-location_tests.js @@ -343,6 +343,27 @@ describe('openSenseMap API locations tests', function () { }); }); + it('should predate first location for measurement with timestamp and no location', function () { + const createdAt = moment().subtract(10, 'm'); + const measurement = { value: -1, createdAt }; + + return chakram.post(POST_MEASUREMENT_URL, measurement, authHeader) + .then(logResponseIfError) + .then(function (response) { + expect(response).to.have.status(201); + + return chakram.get(`${GET_BOX_URL}/locations`); + }) + .then(logResponseIfError) + .then(function (response) { + expect(response).to.have.status(200); + expect(moment(response.body[0].timestamp).diff(createdAt)) + .to.equal(0); + + return chakram.wait(); + }); + }); + it('should infer measurement.location for measurements without location', function () { // timestamp shortly after location that was set through -1 measurement const measurement1 = { value: -0.5, createdAt: moment().subtract(1, 'm') }; @@ -672,8 +693,8 @@ describe('openSenseMap API locations tests', function () { m.lon >= -1 && m.lon <= 0 )); - expect(data).to.be.an('array').with.length(2); - expect(measuresFiltered).to.be.an('array').with.length(2); + expect(data).to.be.an('array').with.length(3); + expect(measuresFiltered).to.be.an('array').with.length(3); return chakram.get(CURRENT_LOC_DATA_URL); }) @@ -687,8 +708,8 @@ describe('openSenseMap API locations tests', function () { m.lon >= 9.9 && m.lon <= 10.1 )); - expect(data).to.be.an('array').with.length(2); - expect(measuresFiltered).to.be.an('array').with.length(2); + expect(data).to.be.an('array').with.length(3); + expect(measuresFiltered).to.be.an('array').with.length(3); return chakram.wait(); }); @@ -739,8 +760,8 @@ describe('openSenseMap API locations tests', function () { m.lon >= -1 && m.lon <= 0 )); - expect(data).to.be.an('array').with.length(2); - expect(measuresFiltered).to.be.an('array').with.length(2); + expect(data).to.be.an('array').with.length(3); + expect(measuresFiltered).to.be.an('array').with.length(3); return chakram.get(CURRENT_LOC_DATA_URL); }) @@ -810,7 +831,7 @@ describe('openSenseMap API locations tests', function () { .then(logResponseIfError) .then(function (response) { expect(response).to.have.status(200); - expect(response.body).to.be.an('array').with.length(8); + expect(response.body).to.be.an('array').with.length(9); for (const m of response.body) { expect(m.location.timestamp).to.not.exist; From f9b530cb96d9a3ecc4afff262414bdc0b0dd822e Mon Sep 17 00:00:00 2001 From: Norwin Roosen Date: Wed, 29 Aug 2018 19:19:46 +0200 Subject: [PATCH 007/337] fix test regression --- tests/tests/002-location_tests.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/tests/002-location_tests.js b/tests/tests/002-location_tests.js index 70f14ba4..5882dc2e 100644 --- a/tests/tests/002-location_tests.js +++ b/tests/tests/002-location_tests.js @@ -708,8 +708,8 @@ describe('openSenseMap API locations tests', function () { m.lon >= 9.9 && m.lon <= 10.1 )); - expect(data).to.be.an('array').with.length(3); - expect(measuresFiltered).to.be.an('array').with.length(3); + expect(data).to.be.an('array').with.length(2); + expect(measuresFiltered).to.be.an('array').with.length(2); return chakram.wait(); }); From c926aa837d4973baf8775a73ddacb5500fe1d4bd Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Thu, 13 Sep 2018 11:50:30 +0200 Subject: [PATCH 008/337] (models) add lora model --- packages/api/lib/controllers/boxesController.js | 2 +- packages/models/src/box/sensorLayouts/index.js | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/api/lib/controllers/boxesController.js b/packages/api/lib/controllers/boxesController.js index 36468421..fdc757f5 100644 --- a/packages/api/lib/controllers/boxesController.js +++ b/packages/api/lib/controllers/boxesController.js @@ -356,7 +356,7 @@ const getBox = async function getBox (req, res, next) { * @apiParam (RequestBody) {String} [grouptag] the grouptag of this senseBox. * @apiParam (RequestBody) {String="indoor","outdoor","mobile","unknown"} exposure the exposure of this senseBox. * @apiParam (RequestBody) {Location} location the coordinates of this senseBox. - * @apiParam (RequestBody) {String="homeV2Ethernet","homeV2Wifi","homeEthernet","homeWifi","homeEthernetFeinstaub","homeWifiFeinstaub","luftdaten_sds011","luftdaten_sds011_dht11","luftdaten_sds011_dht22","luftdaten_sds011_bmp180","luftdaten_sds011_bme280"} [model] specify the model if you want to use a predefined senseBox model, autocreating sensor definitions. + * @apiParam (RequestBody) {String="homeV2Lora","homeV2Ethernet","homeV2Wifi","homeEthernet","homeWifi","homeEthernetFeinstaub","homeWifiFeinstaub","luftdaten_sds011","luftdaten_sds011_dht11","luftdaten_sds011_dht22","luftdaten_sds011_bmp180","luftdaten_sds011_bme280"} [model] specify the model if you want to use a predefined senseBox model, autocreating sensor definitions. * @apiParam (RequestBody) {Sensor[]} [sensors] an array containing the sensors of this senseBox. Only use if `model` is unspecified. * @apiParam (RequestBody) {String="hdc1080","bmp280","tsl45315","veml6070","sds 011"} [sensorTemplates] Specify which sensors should be included. * @apiParam (RequestBody) {Object} [mqtt] specify parameters of the MQTT integration for external measurement upload. Please see below for the accepted parameters diff --git a/packages/models/src/box/sensorLayouts/index.js b/packages/models/src/box/sensorLayouts/index.js index 0ecd16d6..982a0c4c 100644 --- a/packages/models/src/box/sensorLayouts/index.js +++ b/packages/models/src/box/sensorLayouts/index.js @@ -29,6 +29,7 @@ const senseboxhome = require('./sensebox.home'), */ const modelDefinitions = { + 'homeV2Lora': senseboxhome_v2, 'homeV2Ethernet': senseboxhome_v2, 'homeV2EthernetFeinstaub': senseboxhome_v2, 'homeV2Wifi': senseboxhome_v2, From d9a890a0242b84d00bfc73c22cde98bcf2d0e29c Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Wed, 19 Sep 2018 14:05:25 +0200 Subject: [PATCH 009/337] (api) change sensorTemplates documentation --- packages/api/lib/controllers/boxesController.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/api/lib/controllers/boxesController.js b/packages/api/lib/controllers/boxesController.js index fdc757f5..2ca1075e 100644 --- a/packages/api/lib/controllers/boxesController.js +++ b/packages/api/lib/controllers/boxesController.js @@ -358,7 +358,7 @@ const getBox = async function getBox (req, res, next) { * @apiParam (RequestBody) {Location} location the coordinates of this senseBox. * @apiParam (RequestBody) {String="homeV2Lora","homeV2Ethernet","homeV2Wifi","homeEthernet","homeWifi","homeEthernetFeinstaub","homeWifiFeinstaub","luftdaten_sds011","luftdaten_sds011_dht11","luftdaten_sds011_dht22","luftdaten_sds011_bmp180","luftdaten_sds011_bme280"} [model] specify the model if you want to use a predefined senseBox model, autocreating sensor definitions. * @apiParam (RequestBody) {Sensor[]} [sensors] an array containing the sensors of this senseBox. Only use if `model` is unspecified. - * @apiParam (RequestBody) {String="hdc1080","bmp280","tsl45315","veml6070","sds 011"} [sensorTemplates] Specify which sensors should be included. + * @apiParam (RequestBody) {String="hdc1080","bmp280","tsl45315","veml6070","sds011"} [sensorTemplates] Specify which sensors should be included. * @apiParam (RequestBody) {Object} [mqtt] specify parameters of the MQTT integration for external measurement upload. Please see below for the accepted parameters * @apiParam (RequestBody) {Object} [ttn] specify parameters for the TTN integration for measurement from TheThingsNetwork.org upload. Please see below for the accepted parameters * From ca26c1353b960384070ec1824a5fb0db6c3f7cc5 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Thu, 20 Sep 2018 16:36:52 +0200 Subject: [PATCH 010/337] (models) add new field for lastMeasurementAt --- .../lib/transformers/classifyTransformer.js | 19 ++++---------- packages/models/src/box/box.js | 25 ++++++++++++++++++- 2 files changed, 29 insertions(+), 15 deletions(-) diff --git a/packages/api/lib/transformers/classifyTransformer.js b/packages/api/lib/transformers/classifyTransformer.js index 116c6f6b..5ca20c32 100644 --- a/packages/api/lib/transformers/classifyTransformer.js +++ b/packages/api/lib/transformers/classifyTransformer.js @@ -27,21 +27,12 @@ const classifyTransformer = function (classifyTransformerOptions, streamOptions) classifyTransformer.prototype._transform = function _transform (box, encoding, callback) { let state = 'old'; - for (const sensor of box.sensors) { - if (!sensor.lastMeasurement || !sensor.lastMeasurement.createdAt) { - break; - } + const lastMeasurementCreatedAt = box.lastMeasurementAt; - const lastMeasurementCreatedAt = sensor.lastMeasurement.createdAt; - - if (lastMeasurementCreatedAt > this.sevenDays) { - state = 'active'; - break; - } - - if (lastMeasurementCreatedAt > this.thirtyDays) { - state = 'inactive'; - } + if (lastMeasurementCreatedAt > this.sevenDays) { + state = 'active'; + } else if (lastMeasurementCreatedAt > this.thirtyDays) { + state = 'inactive'; } box['state'] = state; diff --git a/packages/models/src/box/box.js b/packages/models/src/box/box.js index 11ba1cbc..b57b68d3 100644 --- a/packages/models/src/box/box.js +++ b/packages/models/src/box/box.js @@ -116,6 +116,10 @@ const boxSchema = new Schema({ sensors: { type: [sensorSchema], required: [true, 'sensors are required if model is invalid or missing.'], + }, + lastMeasurementAt: { + type: Date, + required: false } }); boxSchema.plugin(timestamp); @@ -132,6 +136,7 @@ const BOX_PROPS_FOR_POPULATION = { sensors: 1, description: 1, weblink: 1, + lastMeasurementAt: 1 }; const BOX_SUB_PROPS_FOR_POPULATION = [ @@ -557,11 +562,30 @@ boxSchema.methods.saveMeasurementsArray = function saveMeasurementsArray (measur updateQuery.$set = {}; } + // Get latest createdAt of measurements + if ( + lastMeasurementAt === undefined || + lastMeasurements[box.sensors[i]._id].createdAt.isAfter(lastMeasurementAt) + ) { + lastMeasurementAt = lastMeasurements[box.sensors[i]._id].createdAt; + } + + // TODO compare lastMeasurement with actual lastMeasurement + // if (lastMeasurements[box.sensors[i]._id].createdAt.isAfter(box.sensors[i].lastMeasurement.createdAt)) { const measureId = lastMeasurements[box.sensors[i]._id]._id; updateQuery.$set[`sensors.${i}.lastMeasurement`] = measureId; + // } } } + // Only update lastMeasurementAt if there is a newer measurement + if ( + box.lastMeasurementAt === undefined || + lastMeasurementAt.isAfter(box.lastMeasurementAt) + ) { + updateQuery.$set['lastMeasurementAt'] = lastMeasurementAt; + } + if (newLocations.length) { // add the new locations to the box updateQuery.$push = { @@ -871,7 +895,6 @@ boxSchema.statics.findBoxesLastMeasurements = function findBoxesLastMeasurements if (!fromDate && !toDate) { return Promise.resolve(schema.find(query, BOX_PROPS_FOR_POPULATION) - .populate(BOX_SUB_PROPS_FOR_POPULATION) .cursor({ lean: true }) .map(locFieldTransformerFunction) // effects of toJSON must be applied manually for streams ); From e3ca455e694fe343d80758c8f569c9fb7ed95d29 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Thu, 20 Sep 2018 16:55:03 +0200 Subject: [PATCH 011/337] (models) clean up and fix tests --- packages/models/src/box/box.js | 12 +--- packages/models/test/tests/1-box.js | 3 +- tests/data/findAllSchemaBoxes.js | 86 +++++++++++++++++++++++++++ tests/tests/002-location_tests.js | 2 - tests/tests/007-download-data-test.js | 3 +- 5 files changed, 92 insertions(+), 14 deletions(-) create mode 100644 tests/data/findAllSchemaBoxes.js diff --git a/packages/models/src/box/box.js b/packages/models/src/box/box.js index b57b68d3..ec6c56f2 100644 --- a/packages/models/src/box/box.js +++ b/packages/models/src/box/box.js @@ -554,6 +554,7 @@ boxSchema.methods.saveMeasurementsArray = function saveMeasurementsArray (measur return Measurement.insertMany(measurements) .then(function () { const updateQuery = {}; + let lastMeasurementAt; // set lastMeasurementIds.. for (let i = 0; i < box.sensors.length; i++) { @@ -570,7 +571,7 @@ boxSchema.methods.saveMeasurementsArray = function saveMeasurementsArray (measur lastMeasurementAt = lastMeasurements[box.sensors[i]._id].createdAt; } - // TODO compare lastMeasurement with actual lastMeasurement + // TODO compare lastMeasurement with actual lastMeasurement and fix tests // if (lastMeasurements[box.sensors[i]._id].createdAt.isAfter(box.sensors[i].lastMeasurement.createdAt)) { const measureId = lastMeasurements[box.sensors[i]._id]._id; updateQuery.$set[`sensors.${i}.lastMeasurement`] = measureId; @@ -872,14 +873,6 @@ boxSchema.methods.getLocations = function getLocations ({ format, fromDate, toDa return locs; }; -const locFieldTransformerFunction = function locFieldTransformerFunction (box) { - if (box.currentLocation) { - box.loc = [{ geometry: box.currentLocation, type: 'Feature' }]; - } - - return box; -}; - boxSchema.statics.findBoxesLastMeasurements = function findBoxesLastMeasurements (opts = {}) { const schema = this; @@ -896,7 +889,6 @@ boxSchema.statics.findBoxesLastMeasurements = function findBoxesLastMeasurements if (!fromDate && !toDate) { return Promise.resolve(schema.find(query, BOX_PROPS_FOR_POPULATION) .cursor({ lean: true }) - .map(locFieldTransformerFunction) // effects of toJSON must be applied manually for streams ); } diff --git a/packages/models/test/tests/1-box.js b/packages/models/test/tests/1-box.js index 299f2838..587bd84f 100644 --- a/packages/models/test/tests/1-box.js +++ b/packages/models/test/tests/1-box.js @@ -336,7 +336,8 @@ describe('Box model', function () { 'description', 'weblink', '_id', - 'loc' + 'loc', + 'lastMeasurementAt' ]); }); }); diff --git a/tests/data/findAllSchemaBoxes.js b/tests/data/findAllSchemaBoxes.js new file mode 100644 index 00000000..176946bf --- /dev/null +++ b/tests/data/findAllSchemaBoxes.js @@ -0,0 +1,86 @@ +'use strict'; + +module.exports = { + '$schema': 'http://json-schema.org/draft-04/schema#', + 'type': 'array', + 'items': { + 'type': 'object', + 'properties': { + '_id': { + 'type': 'string' + }, + 'createdAt': { + 'type': 'string' + }, + 'updatedAt': { + 'type': 'string' + }, + 'name': { + 'type': 'string' + }, + 'exposure': { + 'type': 'string' + }, + 'model': { + 'type': 'string' + }, + 'sensors': { + 'type': 'array', + 'items': { + 'type': 'object', + 'properties': { + 'title': { + 'type': 'string' + }, + 'unit': { + 'type': 'string' + }, + 'sensorType': { + 'type': 'string' + }, + 'icon': { + 'type': 'string' + }, + '_id': { + 'type': 'string' + }, + 'lastMeasurement': { + 'type': 'string', + } + }, + 'required': [ + 'title', + 'unit', + 'sensorType', + '_id' + ] + } + }, + 'currentLocation': { + 'type': 'object', + 'properties': { + 'coordinates': { + 'type': 'array', + 'items': { 'type': 'number' } + }, + 'timestamp': { 'type': 'string' }, + 'type': { 'type': 'string' } + }, + 'required': [ + 'coordinates', + 'timestamp', + 'type' + ] + }, + }, + 'required': [ + '_id', + 'createdAt', + 'updatedAt', + 'name', + 'exposure', + 'sensors', + 'currentLocation' + ] + } +}; diff --git a/tests/tests/002-location_tests.js b/tests/tests/002-location_tests.js index ea199bbb..a2db97e7 100644 --- a/tests/tests/002-location_tests.js +++ b/tests/tests/002-location_tests.js @@ -256,8 +256,6 @@ describe('openSenseMap API locations tests', function () { for (const box of response.body) { expect(box.currentLocation).to.exist; expect(box.locations).to.not.exist; - expect(box.loc).to.exist; - expect(box.loc).to.deep.equal([{ type: 'Feature', geometry: box.currentLocation }]); } return chakram.wait(); diff --git a/tests/tests/007-download-data-test.js b/tests/tests/007-download-data-test.js index e7acedaf..5543b513 100644 --- a/tests/tests/007-download-data-test.js +++ b/tests/tests/007-download-data-test.js @@ -8,6 +8,7 @@ const chakram = require('chakram'), const BASE_URL = process.env.OSEM_TEST_BASE_URL, findAllSchema = require('../data/findAllSchema'), + findAllSchemaBoxes = require('../data/findAllSchemaBoxes'), measurementsSchema = require('../data/measurementsSchema'), getUserBoxesSchema = require('../data/getUserBoxesSchema'); @@ -64,7 +65,7 @@ describe('downloading data', function () { expect(Array.isArray(response.body)).to.be.true; expect(response.body.length).to.be.equal(boxCount); expect(response).to.have.header('content-type', 'application/json; charset=utf-8'); - expect(response).to.have.schema(findAllSchema); + expect(response).to.have.schema(findAllSchemaBoxes); return chakram.wait(); }); From b9414ecac7e89cea7af57a07811a3123e561bb64 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Fri, 21 Sep 2018 13:55:17 +0200 Subject: [PATCH 012/337] (models) check timestamps of uploaded measurements and only set lastMeasurement and lastMeasurementAt if timestamp is newer --- .../lib/controllers/measurementsController.js | 2 +- packages/models/src/box/box.js | 16 +++-- tests/tests/006-submit-measurements-test.js | 63 +++++++++++++++++-- 3 files changed, 70 insertions(+), 11 deletions(-) diff --git a/packages/api/lib/controllers/measurementsController.js b/packages/api/lib/controllers/measurementsController.js index 16e238f5..0a54749e 100644 --- a/packages/api/lib/controllers/measurementsController.js +++ b/packages/api/lib/controllers/measurementsController.js @@ -272,7 +272,7 @@ const postNewMeasurements = async function postNewMeasurements (req, res, next) ); if (Measurement.hasDecoder(contentType)) { try { - const box = await Box.findBoxById(boxId, { populate: false, lean: false }); + const box = await Box.findBoxById(boxId, { populate: false, lean: false, projection: { sensors: 1, locations: 1, lastMeasurementAt: 1, currentLocation: 1, model: 1 } }); const measurements = await Measurement.decodeMeasurements(req.body, { contentType, sensors: box.sensors }); await box.saveMeasurementsArray(measurements); res.send(201, 'Measurements saved in box'); diff --git a/packages/models/src/box/box.js b/packages/models/src/box/box.js index ec6c56f2..15db0282 100644 --- a/packages/models/src/box/box.js +++ b/packages/models/src/box/box.js @@ -289,7 +289,7 @@ boxSchema.statics.findBoxById = function findBoxById (id, { lean = true, populat let findPromise = this.findById(id, projection); - if (fullBox === true || onlyLastMeasurements === true) { + if (fullBox === true || onlyLastMeasurements === true || projection.hasOwnProperty('sensors')) { findPromise = findPromise .populate(BOX_SUB_PROPS_FOR_POPULATION); } @@ -571,11 +571,15 @@ boxSchema.methods.saveMeasurementsArray = function saveMeasurementsArray (measur lastMeasurementAt = lastMeasurements[box.sensors[i]._id].createdAt; } - // TODO compare lastMeasurement with actual lastMeasurement and fix tests - // if (lastMeasurements[box.sensors[i]._id].createdAt.isAfter(box.sensors[i].lastMeasurement.createdAt)) { - const measureId = lastMeasurements[box.sensors[i]._id]._id; - updateQuery.$set[`sensors.${i}.lastMeasurement`] = measureId; - // } + // compare send measurements with actual lastMeasurements if each sensor + if ( + box.sensors[i].lastMeasurement === undefined || + box.sensors[i].lastMeasurement !== undefined && + lastMeasurements[box.sensors[i]._id].createdAt.isAfter(box.sensors[i].lastMeasurement.createdAt) + ) { + const measureId = lastMeasurements[box.sensors[i]._id]._id; + updateQuery.$set[`sensors.${i}.lastMeasurement`] = measureId; + } } } diff --git a/tests/tests/006-submit-measurements-test.js b/tests/tests/006-submit-measurements-test.js index 56e311ac..35b2023a 100644 --- a/tests/tests/006-submit-measurements-test.js +++ b/tests/tests/006-submit-measurements-test.js @@ -317,14 +317,41 @@ describe('submitting measurements', function () { expect(response.body[i].value).equal(payload[i].value.toString()); } - return chakram.get(`${BASE_URL}/boxes/${boxIds[0]}`); + countMeasurements = countMeasurements + payload.length; + + return chakram.wait(); + }); + }); + + it('should accept historical measurements but not update lastMeasurement of sensors', () => { + const payload = [ + { sensor: boxes[0].sensors[0]._id, value: 0.1, createdAt: '2010-01-01T04:03:02.000Z' }, + { sensor: boxes[0].sensors[1]._id, value: 0.2, createdAt: '2010-01-06T01:00:22.000Z' }, + { sensor: boxes[0].sensors[2]._id, value: 0.5, createdAt: '2010-01-12T12:12:07.000Z' }, + { sensor: boxes[0].sensors[3]._id, value: 0.3, createdAt: '2010-01-02T01:00:22.000Z' }, + ]; + + return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, payload) + .then(function (response) { + expect(response).to.have.status(201); + expect(response.body).to.equal('Measurements saved in box'); + + return chakram.get(`${BASE_URL}/boxes/${boxIds[0]}/sensors`); }) .then(function (response) { expect(response).to.have.status(200); + expect(response).to.have.header('content-type', 'application/json; charset=utf-8'); - const sensor = response.body.sensors.find(s => s._id === sensor_id); - expect(sensor).to.exist; - expect(sensor.lastMeasurement.createdAt).equal(payload[0].createdAt); + for (let i = 0; i < response.body.sensors.length; i++) { + const sensorID = response.body.sensors[i]._id; + const lastMeasurement = response.body.sensors[i].lastMeasurement; + + payload.forEach(element => { + if (element.sensor === sensorID) { + expect(lastMeasurement.createdAt).to.not.equal(element.createdAt); + } + }); + } countMeasurements = countMeasurements + payload.length; @@ -332,6 +359,34 @@ describe('submitting measurements', function () { }); }); + it('should accept historical measurements but not update property lastMeasurementAt of box', () => { + const payload = [ + { sensor: boxes[0].sensors[0]._id, value: 0.1, createdAt: '2010-01-01T04:03:02.000Z' }, + { sensor: boxes[0].sensors[1]._id, value: 0.2, createdAt: '2010-01-06T01:00:22.000Z' }, + { sensor: boxes[0].sensors[2]._id, value: 0.5, createdAt: '2010-01-12T12:12:07.000Z' }, + { sensor: boxes[0].sensors[3]._id, value: 0.3, createdAt: '2010-01-02T01:00:22.000Z' }, + ]; + + return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, payload) + .then(function (response) { + expect(response).to.have.status(201); + expect(response.body).to.equal('Measurements saved in box'); + + return chakram.get(`${BASE_URL}/boxes/${boxIds[0]}`); + }) + .then(function (response) { + expect(response).to.have.status(200); + expect(response).to.have.header('content-type', 'application/json; charset=utf-8'); + + payload.forEach(element => { + expect(element.createdAt).to.not.equal(response.body.lastMeasurementAt); + }); + + countMeasurements = countMeasurements + payload.length; + + return chakram.wait(); + }); + }); }); describe('multiple bytes POST /boxes/boxid/data', function () { From 301c81b1c755a2de303779e5b3d69f5bc3867dfa Mon Sep 17 00:00:00 2001 From: Norwin Roosen Date: Sat, 22 Sep 2018 21:26:19 +0200 Subject: [PATCH 013/337] (models) add tests for findBoxesMinimal --- packages/models/src/box/box.js | 2 +- packages/models/test/tests/1-box.js | 32 +++++++++++++++++++++++++++++ 2 files changed, 33 insertions(+), 1 deletion(-) diff --git a/packages/models/src/box/box.js b/packages/models/src/box/box.js index 88d68633..a9a133d3 100644 --- a/packages/models/src/box/box.js +++ b/packages/models/src/box/box.js @@ -903,7 +903,7 @@ boxSchema.statics.findBoxesMinimal = function findBoxesMinimal (opts = {}) { const query = buildFindBoxesQuery(opts); const props = { _id: 1, // required by frontend - updatedAt: 1, // needed for classifyTransformer + lastMeasurementAt: 1, // needed for classifyTransformer currentLocation: 1, // required by frontend exposure: 1, // required by frontend name: 1, // required by frontend diff --git a/packages/models/test/tests/1-box.js b/packages/models/test/tests/1-box.js index 587bd84f..a81a647a 100644 --- a/packages/models/test/tests/1-box.js +++ b/packages/models/test/tests/1-box.js @@ -316,6 +316,38 @@ describe('Box model', function () { }); }); + describe('findBoxesMinimal()', function () { + it('should return all boxes with minimal subset of attributes', function () { + const testBoxIds = Object.keys(testBoxes); + + return Box.findBoxesMinimal().then(function (queryCursor) { + queryCursor.on('data', (box) => { + expect(Object.keys(box)).members([ + '_id', + 'updatedAt', + 'currentLocation', + 'exposure', + 'name', + ]); + + expect(Object.keys(box)) + .to.not.include('loc') + .and.to.not.include('locations') + .and.not.include('weblink') + .and.not.include('image') + .and.not.include('description') + .and.not.include('model') + .and.not.include('sensors'); + }); + + queryCursor.on('end', () => { + expect(true).to.be.true; + }); + + }); + }); + }); + describe('JSON serialization', function () { it('should only serialize public properties', function () { const boxId = Object.keys(testBoxes)[0]; From 4350c877bebc6973781db664c812dea1af88a698 Mon Sep 17 00:00:00 2001 From: Norwin Roosen Date: Sat, 22 Sep 2018 21:26:39 +0200 Subject: [PATCH 014/337] (api) add test for /boxes?minimal=true --- tests/tests/005-create-boxes-test.js | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/tests/tests/005-create-boxes-test.js b/tests/tests/005-create-boxes-test.js index caa7875a..92d14279 100644 --- a/tests/tests/005-create-boxes-test.js +++ b/tests/tests/005-create-boxes-test.js @@ -599,6 +599,28 @@ describe('openSenseMap API Routes: /boxes', function () { }); }); + it('should allow to request minimal boxes', function () { + return chakram.get(`${BASE_URL}/boxes?minimal=true`) + .then(function (response) { + expect(response).to.have.status(200); + expect(response).to.have.header('content-type', 'application/json; charset=utf-8'); + expect(Array.isArray(response.body)).to.be.true; + expect(response.body.length).to.be.equal(3); + for (const box of response.body) { + expect(Object.keys(box)) + .to.not.include('loc') + .and.to.not.include('locations') + .and.not.include('weblink') + .and.not.include('image') + .and.not.include('description') + .and.not.include('model') + .and.not.include('sensors'); + } + + return chakram.wait(); + }); + }); + it('should allow to unset the grouptag, description and weblink of the box via PUT', function () { const update_payload = { grouptag: '', description: '', weblink: '' }; From eac59bacdab2fc2865059d1e2c6b5b138185d11f Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Thu, 4 Oct 2018 13:24:55 +0200 Subject: [PATCH 015/337] (models) add migration for new field lastMeasurementAt --- .../5-mongoshell-boxes-add-field.js | 24 ++++++ .../6-node-set-latest-measurement.js | 77 +++++++++++++++++++ 2 files changed, 101 insertions(+) create mode 100644 packages/models/migrations/5-7_measurements_boxes/5-mongoshell-boxes-add-field.js create mode 100644 packages/models/migrations/5-7_measurements_boxes/6-node-set-latest-measurement.js diff --git a/packages/models/migrations/5-7_measurements_boxes/5-mongoshell-boxes-add-field.js b/packages/models/migrations/5-7_measurements_boxes/5-mongoshell-boxes-add-field.js new file mode 100644 index 00000000..a339c55d --- /dev/null +++ b/packages/models/migrations/5-7_measurements_boxes/5-mongoshell-boxes-add-field.js @@ -0,0 +1,24 @@ + +/* eslint-disable */ + +// TODO add field lastMeasurementAt to boxes +db = db.getSiblingDB('OSeM-api'); + +// check schema version +var collections = db.getCollectionNames(); + +if (collections.indexOf("schemaVersion") === -1) { + print("Error: Unkown schema version. Exiting!"); + quit(); +} + +var latestVersion = db.schemaVersion.find({}).sort({ schemaVersion: -1 }).limit(1).next(); + +if (latestVersion.schemaVersion !== 5) { + print("Migration already applied... Exiting!"); + quit(); +} + +db.boxes.update({},{ $set: {"lastMeasurementAt": undefined} },false,true) + +db.schemaVersion.updateOne({}, { $inc: { schemaVersion: 1 }}); \ No newline at end of file diff --git a/packages/models/migrations/5-7_measurements_boxes/6-node-set-latest-measurement.js b/packages/models/migrations/5-7_measurements_boxes/6-node-set-latest-measurement.js new file mode 100644 index 00000000..9af7744d --- /dev/null +++ b/packages/models/migrations/5-7_measurements_boxes/6-node-set-latest-measurement.js @@ -0,0 +1,77 @@ +/* eslint-disable */ +'use strict'; + +const models = require('../../../models'); +const { mongoose, connect } = models.db; +const moment = require('moment'); + +const { Box } = models; + +const migrate = function migrate () { + const schemaVersion = mongoose.connection.db.collection('schemaVersion'); + + console.log('Starting "set latest measurement timestamp" migration'); + + return schemaVersion.find({}) + .next() + .then(function (latestVersion) { + if (latestVersion.schemaVersion !== 6) { + throw new Error('Unexpected schema version... Exiting!'); + } + + return Box.find({}).populate({ + path: 'sensors.lastMeasurement', select: { value: 1, createdAt: 1, _id: 0 } + }).exec(); + }) + .then(function (boxes) { + + const promises = []; + for (let index = 0; index < boxes.length; index++) { + const box = boxes[index]; + + let timestamp; + for (let index = 0; index < box.sensors.length; index++) { + const sensor = box.sensors[index]; + + if (sensor.lastMeasurement !== null) { + if (sensor.lastMeasurement !== undefined) { + if (timestamp === undefined || + moment(sensor.lastMeasurement.createdAt).isAfter(moment(timestamp))) + { + timestamp = sensor.lastMeasurement.createdAt; + } + } + } + + } + + if (timestamp !== undefined) { + box.set('lastMeasurementAt', timestamp); + promises.push(box.save()); + } + } + + return Promise.all(promises) + .then(function () { + console.log('Migration done!'); + + return schemaVersion.update({}, { '$inc': { schemaVersion: 1 } }); + }) + }); +} + +// Connect to db and run migration +connect() + .then(function () { + migrate() + .then(function () { + mongoose.disconnect(); + }) + .catch(function (err) { + console.log(err); + mongoose.disconnect(); + }); + }) + .catch(function (err) { + console.log(err); + }); \ No newline at end of file From f1ed4773d8f2c22740dbf440faf86540929a8a58 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Mon, 8 Oct 2018 14:00:52 +0200 Subject: [PATCH 016/337] (models) use new sketch-templater --- packages/models/package.json | 2 +- yarn.lock | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/models/package.json b/packages/models/package.json index 796ca957..0f1a2027 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -6,7 +6,7 @@ "license": "MIT", "dependencies": { "@sensebox/osem-protos": "^1.1.0", - "@sensebox/sketch-templater": "^1.2.0", + "@sensebox/sketch-templater": "^1.3.0", "bcrypt": "^1.0.2", "bunyan": "^1.8.12", "config": "^1.29.2", diff --git a/yarn.lock b/yarn.lock index 3d8ebbd5..cf805a4d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -16,9 +16,9 @@ version "1.1.0" resolved "https://registry.yarnpkg.com/@sensebox/osem-protos/-/osem-protos-1.1.0.tgz#a7de8bc6be867953f1309181a012063c23299e79" -"@sensebox/sketch-templater@^1.2.0": - version "1.2.0" - resolved "https://registry.yarnpkg.com/@sensebox/sketch-templater/-/sketch-templater-1.2.0.tgz#eee75392ead92ad2dcb2c67275c38674fead5cc2" +"@sensebox/sketch-templater@^1.3.0": + version "1.3.0" + resolved "https://registry.yarnpkg.com/@sensebox/sketch-templater/-/sketch-templater-1.3.0.tgz#ed17005eead6ab746d1439ee20133af938c34175" dependencies: config "^1.29.2" dedent "^0.7.0" From bd97cafb6f39737d393ac0847461fa31b3651340 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Wed, 7 Nov 2018 10:15:04 +0100 Subject: [PATCH 017/337] (models) fix findMinimal test --- packages/models/test/tests/1-box.js | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/packages/models/test/tests/1-box.js b/packages/models/test/tests/1-box.js index a81a647a..eae6b616 100644 --- a/packages/models/test/tests/1-box.js +++ b/packages/models/test/tests/1-box.js @@ -318,13 +318,12 @@ describe('Box model', function () { describe('findBoxesMinimal()', function () { it('should return all boxes with minimal subset of attributes', function () { - const testBoxIds = Object.keys(testBoxes); return Box.findBoxesMinimal().then(function (queryCursor) { queryCursor.on('data', (box) => { expect(Object.keys(box)).members([ '_id', - 'updatedAt', + 'lastMeasurementAt', 'currentLocation', 'exposure', 'name', From 0689a286646d2c3ce5e4057ac0cc68176b1efbd1 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Thu, 8 Nov 2018 11:27:44 +0100 Subject: [PATCH 018/337] (models) add bbox to query builder --- packages/models/src/box/box.js | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/packages/models/src/box/box.js b/packages/models/src/box/box.js index 396d4ebf..774a1a35 100644 --- a/packages/models/src/box/box.js +++ b/packages/models/src/box/box.js @@ -883,7 +883,7 @@ boxSchema.methods.getLocations = function getLocations ({ format, fromDate, toDa }; const buildFindBoxesQuery = function buildFindBoxesQuery (opts = {}) { - const { phenomenon, fromDate, toDate } = opts, + const { phenomenon, fromDate, toDate, bbox } = opts, query = {}; // simple string parameters @@ -893,6 +893,11 @@ const buildFindBoxesQuery = function buildFindBoxesQuery (opts = {}) { } } + // bbox search parameter + if (bbox) { + query['locations'] = { '$geoWithin': { '$geometry': bbox } }; + } + // search for phenomenon only together with time params if (fromDate || toDate) { if (phenomenon) { From a4fa1b357536d68a8cdb04d848bd961b0d5ccd6f Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Thu, 8 Nov 2018 11:28:10 +0100 Subject: [PATCH 019/337] (api) allow bbox parameter on /boxes --- packages/api/lib/controllers/boxesController.js | 2 ++ tests/tests/002-location_tests.js | 14 ++++++++++++++ 2 files changed, 16 insertions(+) diff --git a/packages/api/lib/controllers/boxesController.js b/packages/api/lib/controllers/boxesController.js index 72dc6b74..badce103 100644 --- a/packages/api/lib/controllers/boxesController.js +++ b/packages/api/lib/controllers/boxesController.js @@ -200,6 +200,7 @@ const geoJsonStringifyReplacer = function geoJsonStringifyReplacer (key, box) { * @apiParam {Boolean="true","false"} [classify=false] if specified, the api will classify the boxes accordingly to their last measurements. * @apiParam {Boolean="true","false"} [minimal=false] if specified, the api will only return a minimal set of box metadata consisting of [_id, updatedAt, currentLocation, exposure, name] for a fast response. * @apiUse ExposureFilterParam + * @apiUse BBoxParam * @apiSampleRequest https://api.opensensemap.org/boxes * @apiSampleRequest https://api.opensensemap.org/boxes?date=2015-03-07T02:50Z&phenomenon=Temperatur * @apiSampleRequest https://api.opensensemap.org/boxes?date=2015-03-07T02:50Z,2015-04-07T02:50Z&phenomenon=Temperatur @@ -526,6 +527,7 @@ module.exports = { { name: 'format', defaultValue: 'json', allowedValues: ['json', 'geojson'] }, { name: 'classify', defaultValue: 'false', allowedValues: ['true', 'false'] }, { name: 'minimal', defaultValue: 'false', allowedValues: ['true', 'false'] }, + { predef: 'bbox' }, ]), parseAndValidateTimeParamsForFindAllBoxes, addCache('5 minutes', 'getBoxes'), diff --git a/tests/tests/002-location_tests.js b/tests/tests/002-location_tests.js index a1bac77b..33298a3a 100644 --- a/tests/tests/002-location_tests.js +++ b/tests/tests/002-location_tests.js @@ -262,6 +262,20 @@ describe('openSenseMap API locations tests', function () { }); }); + it('should allow filtering boxes by bounding box', () => { + const loc = [120.123456, 60.654321, 12.123]; + + return chakram.get(`${BASE_URL}?bbox=120,60,121,61`) + .then(logResponseIfError) + .then(function (response) { + expect(response).to.have.status(200); + + expect(response.body).to.be.an('array'); + expect(response.body).to.have.length(1); + expect(response.body[0].currentLocation.coordinates).to.deep.equal(loc); + }); + }); + }); describe('POST /boxes/:boxID/:sensorID', function () { From 347867e81945b9b64c97b207da04d8db91b254cf Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Fri, 9 Nov 2018 15:14:50 +0100 Subject: [PATCH 020/337] (models) add capability to connect hackAIR devices --- .../src/box/sensorLayouts/hackair/home.v2.js | 10 ++ .../models/src/box/sensorLayouts/index.js | 4 +- .../measurement/decoding/hackairHandler.js | 112 ++++++++++++++++++ .../models/src/measurement/decoding/index.js | 2 + 4 files changed, 127 insertions(+), 1 deletion(-) create mode 100644 packages/models/src/box/sensorLayouts/hackair/home.v2.js create mode 100644 packages/models/src/measurement/decoding/hackairHandler.js diff --git a/packages/models/src/box/sensorLayouts/hackair/home.v2.js b/packages/models/src/box/sensorLayouts/hackair/home.v2.js new file mode 100644 index 00000000..961cd3ef --- /dev/null +++ b/packages/models/src/box/sensorLayouts/hackair/home.v2.js @@ -0,0 +1,10 @@ +'use strict'; + +const sensorDefinitions = require('../sensorDefinitions'); + +const { sds011_pm10, sds011_pm25 } = sensorDefinitions; + +module.exports = [ + sds011_pm10, + sds011_pm25 +]; diff --git a/packages/models/src/box/sensorLayouts/index.js b/packages/models/src/box/sensorLayouts/index.js index 982a0c4c..f5b2adab 100644 --- a/packages/models/src/box/sensorLayouts/index.js +++ b/packages/models/src/box/sensorLayouts/index.js @@ -16,6 +16,7 @@ const senseboxhome = require('./sensebox.home'), luftdaten_pms5003_bme280 = require('./luftdaten/pms5003.bme280'), luftdaten_pms7003 = require('./luftdaten/pms7003'), luftdaten_pms7003_bme280 = require('./luftdaten/pms7003.bme280'), + hackair_home_v2 = require('./hackair/home.v2'), addonFeinstaub = require('./addons/feinstaubAddon'); /* @@ -50,7 +51,8 @@ const modelDefinitions = { 'luftdaten_pms5003': luftdaten_pms5003, 'luftdaten_pms5003_bme280': luftdaten_pms5003_bme280, 'luftdaten_pms7003': luftdaten_pms7003, - 'luftdaten_pms7003_bme280': luftdaten_pms7003_bme280 + 'luftdaten_pms7003_bme280': luftdaten_pms7003_bme280, + 'hackair_home_v2': hackair_home_v2 }; const addonDefinitions = { diff --git a/packages/models/src/measurement/decoding/hackairHandler.js b/packages/models/src/measurement/decoding/hackairHandler.js new file mode 100644 index 00000000..e33488a1 --- /dev/null +++ b/packages/models/src/measurement/decoding/hackairHandler.js @@ -0,0 +1,112 @@ +'use strict'; + +const { transformAndValidateMeasurements } = require('./validators'); + +/** + * Transforms JSON produced by hackair.eu devices to openSenseMap compatible JSON. + * It looks for the items in the `readings` object and tries to match its `keys` + * to a sensors title. + * + * Example in JSON: + * { + * "reading": { + * "PM2.5_AirPollutantValue": "7.93", + * "PM10_AirPollutantValue": "32.63" + * }, + * "battery": "5.99", + * "tamper": "0", + * "error": "4" + * } + * + * Example out JSON: + * [ + * {"sensor_id": "sensorID", "value":"value" }, + * ... + * ] + * + */ + +const matchings = { + pm10: ['pm10', 'p10', 'p1'], + pm25: ['pm2.5', 'pm25', 'p2.5', 'p25', 'p2'] +}; + +const findSensorId = function findSensorId (sensors, reading) { + // temperature, humidity and pressure values + // are named either directly or with a prefix + // separated by underscores. The last element + // should be the the desired phenomenon + const [vt_sensortype] = reading + .toLowerCase() + .replace('.', '') + .split('_'); + + if (matchings[vt_sensortype]) { + let sensorId; + + for (const sensor of sensors) { + const title = sensor.title.toLowerCase(); + if ( + (title === vt_sensortype || matchings[vt_sensortype].includes(title) || matchings[vt_sensortype].some(alias => title.includes(alias))) + ) { + sensorId = sensor._id.toString(); + break; + } + } + + return sensorId; + } +}; + +const transformHackairJson = function transformHackairJson (json, sensors) { + const outArray = []; + + for (const rd in json.reading) { + if (json.reading.hasOwnProperty(rd)) { + const value = json.reading[rd]; + const sensor_id = findSensorId(sensors, rd); + if (sensor_id) { + outArray.push({ sensor_id, value }); + } + } + } + + return outArray; +}; + + +module.exports = { + decodeMessage: function (message, { sensors } = {}) { + if (!sensors) { + return Promise.reject(new Error('hackair handler needs sensors')); + } + + if (message) { + // try to decode the json, or if already a js object + // use it as given + let json; + if (typeof message === 'object') { + json = message; + } else { + try { + json = JSON.parse(message); + } catch (err) { + return Promise.reject(err); + } + } + + if (!json.reading) { + return Promise.reject(new Error('Invalid hackair json. Missing `readings`')); + } + + const transformedMeasurements = transformHackairJson(json, sensors); + if (transformedMeasurements.length === 0) { + return Promise.reject(new Error('No applicable values found')); + } + + return transformAndValidateMeasurements(transformedMeasurements); + } + + return Promise.reject(new Error('Cannot decode empty message (hackair decoder)')); + } +}; diff --git a/packages/models/src/measurement/decoding/index.js b/packages/models/src/measurement/decoding/index.js index 907110c5..3d88e897 100644 --- a/packages/models/src/measurement/decoding/index.js +++ b/packages/models/src/measurement/decoding/index.js @@ -4,6 +4,7 @@ const jsonHandler = require('./jsonHandler'), plainHandler = require('./plainHandler'), csvHandler = require('./csvHandler'), luftdatenHandler = require('./luftdatenHandler'), + hackairHandler = require('./hackairHandler'), { bytesHandler, bytesTimestampHandler } = require('./bytesHandler'), validators = require('./validators'); @@ -15,6 +16,7 @@ module.exports = { 'csv': csvHandler, 'text/csv': csvHandler, 'luftdaten': luftdatenHandler, + 'hackair': hackairHandler, 'application/sbx-bytes': bytesHandler, 'application/sbx-bytes-ts': bytesTimestampHandler, 'sbx-bytes': bytesHandler, From 41c53512debb7612a3dc5b1cd7af607fd6a94b28 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Fri, 9 Nov 2018 15:16:00 +0100 Subject: [PATCH 021/337] (api) add hackAIR parameter to wire up hackAIR devices --- .../api/lib/controllers/boxesController.js | 2 +- .../lib/controllers/measurementsController.js | 32 +++++++++++++++---- 2 files changed, 26 insertions(+), 8 deletions(-) diff --git a/packages/api/lib/controllers/boxesController.js b/packages/api/lib/controllers/boxesController.js index badce103..11156284 100644 --- a/packages/api/lib/controllers/boxesController.js +++ b/packages/api/lib/controllers/boxesController.js @@ -378,7 +378,7 @@ const getBox = async function getBox (req, res, next) { * @apiParam (RequestBody) {String} [grouptag] the grouptag of this senseBox. * @apiParam (RequestBody) {String="indoor","outdoor","mobile","unknown"} exposure the exposure of this senseBox. * @apiParam (RequestBody) {Location} location the coordinates of this senseBox. - * @apiParam (RequestBody) {String="homeV2Lora","homeV2Ethernet","homeV2Wifi","homeEthernet","homeWifi","homeEthernetFeinstaub","homeWifiFeinstaub","luftdaten_sds011","luftdaten_sds011_dht11","luftdaten_sds011_dht22","luftdaten_sds011_bmp180","luftdaten_sds011_bme280"} [model] specify the model if you want to use a predefined senseBox model, autocreating sensor definitions. + * @apiParam (RequestBody) {String="homeV2Lora","homeV2Ethernet","homeV2Wifi","homeEthernet","homeWifi","homeEthernetFeinstaub","homeWifiFeinstaub","luftdaten_sds011","luftdaten_sds011_dht11","luftdaten_sds011_dht22","luftdaten_sds011_bmp180","luftdaten_sds011_bme280","hackair_home_v2"} [model] specify the model if you want to use a predefined senseBox model, autocreating sensor definitions. * @apiParam (RequestBody) {Sensor[]} [sensors] an array containing the sensors of this senseBox. Only use if `model` is unspecified. * @apiParam (RequestBody) {String="hdc1080","bmp280","tsl45315","veml6070","sds011"} [sensorTemplates] Specify which sensors should be included. * @apiParam (RequestBody) {Object} [mqtt] specify parameters of the MQTT integration for external measurement upload. Please see below for the accepted parameters diff --git a/packages/api/lib/controllers/measurementsController.js b/packages/api/lib/controllers/measurementsController.js index 0a54749e..942b6836 100644 --- a/packages/api/lib/controllers/measurementsController.js +++ b/packages/api/lib/controllers/measurementsController.js @@ -216,6 +216,9 @@ const postNewMeasurement = async function postNewMeasurement (req, res, next) { * **Luftdaten Format**
* Decoding of luftdaten.info json format. Activate by specifying `luftdaten=true` in the query string. The API now tries to convert the objects in the `sensordatavalues` key to the openSenseMap JSON Array format. Sensors are matched by the key `value_type` against the `title` of the sensors of this box. `SDS_P1` matches sensors with title `PM10`, `SDS_P2` matches sensors with title `PM2.5`. You can find all matchings in the source code of the openSenseMap-API (`lib/decoding/luftdatenHandler.js`) * + * **hackAIR Format**
+ * Decoding of hackAIR json format. Activate by specifying `hackair=true` in the query string. The API now tries to convert the values in the `reading` key to the openSenseMap JSON Array format. Sensors are matched by the key `sensor_description` against the `title` of the sensors of this box. `PM2.5_AirPollutantValue` matches sensors with title `PM2.5`, `PM10_AirPollutantValue` matches sensors with title `PM10`. You can find all matchings in the source code of the openSenseMap-API (`lib/decoding/hackAirHandler.js`) + * * **senseBox Bytes Format**
* Submit measurements as raw bytes. Set the "content-type" header to `application/snsbx-bytes`. Send measurements as 12 byte sensor Id with most significant byte first followed by 4 byte float measurement in little endian (least significant byte first) notation. A valid measurement could look like this:
[ 0x59, 0x5f, 0x9a, 0x28, 0x2d, 0xcb, 0xee, 0x77, 0xac, 0x0e, 0x5d, 0xc4, 0x9a, 0x99, 0x89, 0x40 ] but encoded as raw bytes. Multiple measurements are just multiple tuples of id and value. The number of bytes should be a multiple of 16. * @@ -229,6 +232,7 @@ const postNewMeasurement = async function postNewMeasurement (req, res, next) { * @apiUse BoxIdParam * @apiUse LocationBody * @apiParam {String} [luftdaten] Specify whatever you want (like `luftdaten=1`. Signals the api to treat the incoming data as luftdaten.info formatted json. + * * @apiParam {String} [hackair] Specify whatever you want (like `hackair=1`. Signals the api to treat the incoming data as hackair formatted json. * @apiParamExample {application/json} JSON-Object: * { * "sensorID": "value", @@ -262,14 +266,27 @@ const postNewMeasurement = async function postNewMeasurement (req, res, next) { * } * ] * } + * @apiParamExample {application/json} hackAIR Format: + * { + * "reading": { + * "PM2.5_AirPollutantValue": "7.93", + * "PM10_AirPollutantValue": "32.63" + * }, + * "battery": "5.99", + * "tamper": "0", + * "error": "4" + * } */ const postNewMeasurements = async function postNewMeasurements (req, res, next) { - const { boxId, luftdaten } = req._userParams; - const contentType = ( - luftdaten // if - ? 'luftdaten' // then - : req.getContentType() // else - ); + const { boxId, luftdaten, hackair } = req._userParams; + let contentType = req.getContentType(); + + if (hackair) { + contentType = 'hackair'; + } else if (luftdaten) { + contentType = 'luftdaten'; + } + if (Measurement.hasDecoder(contentType)) { try { const box = await Box.findBoxById(boxId, { populate: false, lean: false, projection: { sensors: 1, locations: 1, lastMeasurementAt: 1, currentLocation: 1, model: 1 } }); @@ -300,7 +317,8 @@ module.exports = { postNewMeasurements: [ retrieveParameters([ { predef: 'boxId', required: true }, - { name: 'luftdaten' } + { name: 'luftdaten' }, + { name: 'hackair' } ]), postNewMeasurements ], From b02cdfb969ba4f1e433414f1ac5bdabe5c01bb67 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Sun, 11 Nov 2018 18:01:47 +0100 Subject: [PATCH 022/337] v0.0.11-beta.0 --- packages/models/CHANGELOG.md | 2 ++ packages/models/package.json | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/models/CHANGELOG.md b/packages/models/CHANGELOG.md index 53e92e28..06039f00 100644 --- a/packages/models/CHANGELOG.md +++ b/packages/models/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## v0.0.11-beta.0 + ## v0.0.10 - Remove format argument of findBoxById - Remove box.updateImage diff --git a/packages/models/package.json b/packages/models/package.json index 0f1a2027..eaf546a4 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -1,7 +1,7 @@ { "name": "@sensebox/opensensemap-api-models", "description": "openSenseMap data models and database connection", - "version": "0.0.10", + "version": "0.0.11-beta.0", "main": "index.js", "license": "MIT", "dependencies": { From c6ab207b483fec9400b4c52d12e91a657c603099 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Sun, 11 Nov 2018 18:48:32 +0100 Subject: [PATCH 023/337] (api) use beta release of models --- packages/api/package.json | 2 +- yarn.lock | 512 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 513 insertions(+), 1 deletion(-) diff --git a/packages/api/package.json b/packages/api/package.json index c2ac4dd0..5fed1fb4 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -10,7 +10,7 @@ "Norwin Roosen" ], "dependencies": { - "@sensebox/opensensemap-api-models": "0.0.10", + "@sensebox/opensensemap-api-models": "^0.0.11-beta.0", "@turf/area": "^4.6.0", "@turf/bbox": "^4.6.0", "@turf/centroid": "^4.6.1", diff --git a/yarn.lock b/yarn.lock index cf805a4d..0826bbc2 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5,20 +5,24 @@ "@mapbox/geojson-area@^0.2.2": version "0.2.2" resolved "https://registry.yarnpkg.com/@mapbox/geojson-area/-/geojson-area-0.2.2.tgz#18d7814aa36bf23fbbcc379f8e26a22927debf10" + integrity sha1-GNeBSqNr8j+7zDefjiaiKSfevxA= dependencies: wgs84 "0.0.0" "@sensebox/eslint-config-sensebox@^1.1.0": version "1.1.0" resolved "https://registry.yarnpkg.com/@sensebox/eslint-config-sensebox/-/eslint-config-sensebox-1.1.0.tgz#2fec4ec7945f34e7296c619fabd589d722ecd984" + integrity sha512-MhwFHGmt7X/Wb/aISS/pJvBuO8HqpkVfB8GsUKOosWEfvug4cTN7N/pXBOxINukG34LcKDLp1xdyxuEo64CMSw== "@sensebox/osem-protos@^1.1.0": version "1.1.0" resolved "https://registry.yarnpkg.com/@sensebox/osem-protos/-/osem-protos-1.1.0.tgz#a7de8bc6be867953f1309181a012063c23299e79" + integrity sha512-H+nUVcWlT0dvIqfJnYHuX9JBcCkP1ZKGE5YTRNWPbAEdZ11h+srpQsmeI58wK5hJcdukaZAjc4Dy96IeGM77aA== "@sensebox/sketch-templater@^1.3.0": version "1.3.0" resolved "https://registry.yarnpkg.com/@sensebox/sketch-templater/-/sketch-templater-1.3.0.tgz#ed17005eead6ab746d1439ee20133af938c34175" + integrity sha512-F+d5CLO/F8ptogX9u/DIB5Y3V+3Ag82aw/Doj5BCzURGEv4b0fHuUThBTFG4ewDPAQhud8KcjwbucM05aV2bSg== dependencies: config "^1.29.2" dedent "^0.7.0" @@ -26,10 +30,12 @@ "@sindresorhus/is@^0.7.0": version "0.7.0" resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-0.7.0.tgz#9a06f4f137ee84d7df0460c1fdb1135ffa6c50fd" + integrity sha512-ONhaKPIufzzrlNbqtWFFd+jlnemX6lJAgq9ZeiZtS7I1PIf/la7CW4m83rTXRnVnsMbW2k56pGYu7AUFJD9Pow== "@turf/area@^4.6.0": version "4.7.3" resolved "https://registry.yarnpkg.com/@turf/area/-/area-4.7.3.tgz#5cc45b5a524e98e1c171e7190709c669ca699305" + integrity sha1-XMRbWlJOmOHBcecZBwnGacppkwU= dependencies: "@mapbox/geojson-area" "^0.2.2" "@turf/meta" "^4.7.3" @@ -37,12 +43,14 @@ "@turf/bbox@^4.6.0", "@turf/bbox@^4.7.3": version "4.7.3" resolved "https://registry.yarnpkg.com/@turf/bbox/-/bbox-4.7.3.tgz#e3ad4f10a7e9b41b522880d33083198199059067" + integrity sha1-461PEKfptBtSKIDTMIMZgZkFkGc= dependencies: "@turf/meta" "^4.7.3" "@turf/centroid@^4.6.1": version "4.7.3" resolved "https://registry.yarnpkg.com/@turf/centroid/-/centroid-4.7.3.tgz#205a7675719b0c8e175bb7565c5d6fe267d88175" + integrity sha1-IFp2dXGbDI4XW7dWXF1v4mfYgXU= dependencies: "@turf/helpers" "^4.7.3" "@turf/meta" "^4.7.3" @@ -50,6 +58,7 @@ "@turf/distance@^4.6.0", "@turf/distance@^4.7.3": version "4.7.3" resolved "https://registry.yarnpkg.com/@turf/distance/-/distance-4.7.3.tgz#b5ab48a09a642706d65c39b919433d5d2cc571b1" + integrity sha1-tatIoJpkJwbWXDm5GUM9XSzFcbE= dependencies: "@turf/helpers" "^4.7.3" "@turf/invariant" "^4.7.3" @@ -57,10 +66,12 @@ "@turf/helpers@^4.6.0", "@turf/helpers@^4.7.3": version "4.7.3" resolved "https://registry.yarnpkg.com/@turf/helpers/-/helpers-4.7.3.tgz#bc312ac43cab3c532a483151c4c382c5649429e9" + integrity sha1-vDEqxDyrPFMqSDFRxMOCxWSUKek= "@turf/hex-grid@^4.6.1": version "4.7.3" resolved "https://registry.yarnpkg.com/@turf/hex-grid/-/hex-grid-4.7.3.tgz#6eacc4d153cf430777deae7a48698cfb27ae7ec6" + integrity sha1-bqzE0VPPQwd33q56SGmM+yeufsY= dependencies: "@turf/distance" "^4.7.3" "@turf/helpers" "^4.7.3" @@ -68,14 +79,17 @@ "@turf/invariant@^4.6.0", "@turf/invariant@^4.7.3": version "4.7.3" resolved "https://registry.yarnpkg.com/@turf/invariant/-/invariant-4.7.3.tgz#538f367d23c113fc849d70c9a524b8563874601d" + integrity sha1-U482fSPBE/yEnXDJpSS4Vjh0YB0= "@turf/meta@^4.7.3": version "4.7.4" resolved "https://registry.yarnpkg.com/@turf/meta/-/meta-4.7.4.tgz#6de2f1e9890b8f64b669e4b47c09b20893063977" + integrity sha1-beLx6YkLj2S2aeS0fAmyCJMGOXc= "@turf/square-grid@^4.6.0": version "4.7.3" resolved "https://registry.yarnpkg.com/@turf/square-grid/-/square-grid-4.7.3.tgz#b3e896b132a34fcc77ed3907efd9a4444db62259" + integrity sha1-s+iWsTKjT8x37TkH79mkRE22Ilk= dependencies: "@turf/bbox" "^4.7.3" "@turf/distance" "^4.7.3" @@ -84,6 +98,7 @@ "@turf/triangle-grid@^4.6.0": version "4.7.3" resolved "https://registry.yarnpkg.com/@turf/triangle-grid/-/triangle-grid-4.7.3.tgz#ced61311c51c0d1483ec038fedc9bbd0017e8900" + integrity sha1-ztYTEcUcDRSD7AOP7cm70AF+iQA= dependencies: "@turf/distance" "^4.7.3" "@turf/helpers" "^4.7.3" @@ -91,40 +106,49 @@ "@types/node@^6.0.46": version "6.0.88" resolved "https://registry.yarnpkg.com/@types/node/-/node-6.0.88.tgz#f618f11a944f6a18d92b5c472028728a3e3d4b66" + integrity sha512-bYDPZTX0/s1aihdjLuAgogUAT5M+TpoWChEMea2p0yOcfn5bu3k6cJb9cp6nw268XeSNIGGr+4+/8V5K6BGzLQ== JSONSelect@0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/JSONSelect/-/JSONSelect-0.4.0.tgz#a08edcc67eb3fcbe99ed630855344a0cf282bb8d" + integrity sha1-oI7cxn6z/L6Z7WMIVTRKDPKCu40= abbrev@1: version "1.1.1" resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" + integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q== acorn-jsx@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-3.0.1.tgz#afdf9488fb1ecefc8348f6fb22f464e32a58b36b" + integrity sha1-r9+UiPsezvyDSPb7IvRk4ypYs2s= dependencies: acorn "^3.0.4" acorn@^3.0.4: version "3.3.0" resolved "https://registry.yarnpkg.com/acorn/-/acorn-3.3.0.tgz#45e37fb39e8da3f25baee3ff5369e2bb5f22017a" + integrity sha1-ReN/s56No/JbruP/U2niu18iAXo= acorn@^5.2.1: version "5.3.0" resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.3.0.tgz#7446d39459c54fb49a80e6ee6478149b940ec822" + integrity sha512-Yej+zOJ1Dm/IMZzzj78OntP/r3zHEaKcyNoU2lAaxPtrseM6rF0xwqoz5Q5ysAiED9hTjI2hgtvLXitlCN1/Ug== addressparser@~1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/addressparser/-/addressparser-1.0.1.tgz#47afbe1a2a9262191db6838e4fd1d39b40821746" + integrity sha1-R6++GiqSYhkdtoOOT9HTm0CCF0Y= ajv-keywords@^2.1.0: version "2.1.1" resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-2.1.1.tgz#617997fc5f60576894c435f940d819e135b80762" + integrity sha1-YXmX/F9gV2iUxDX5QNgZ4TW4B2I= ajv@^4.9.1: version "4.11.8" resolved "https://registry.yarnpkg.com/ajv/-/ajv-4.11.8.tgz#82ffb02b29e662ae53bdc20af15947706739c536" + integrity sha1-gv+wKynmYq5TvcIK8VlHcGc5xTY= dependencies: co "^4.6.0" json-stable-stringify "^1.0.1" @@ -132,6 +156,7 @@ ajv@^4.9.1: ajv@^5.1.0: version "5.5.1" resolved "https://registry.yarnpkg.com/ajv/-/ajv-5.5.1.tgz#b38bb8876d9e86bee994956a04e721e88b248eb2" + integrity sha1-s4u4h22ehr7plJVqBOch6IskjrI= dependencies: co "^4.6.0" fast-deep-equal "^1.0.0" @@ -141,6 +166,7 @@ ajv@^5.1.0: ajv@^5.2.3, ajv@^5.3.0: version "5.5.2" resolved "https://registry.yarnpkg.com/ajv/-/ajv-5.5.2.tgz#73b5eeca3fab653e3d3f9422b341ad42205dc965" + integrity sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU= dependencies: co "^4.6.0" fast-deep-equal "^1.0.0" @@ -150,36 +176,44 @@ ajv@^5.2.3, ajv@^5.3.0: ansi-escapes@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.0.0.tgz#ec3e8b4e9f8064fc02c3ac9b65f1c275bda8ef92" + integrity sha512-O/klc27mWNUigtv0F8NJWbLF00OcegQalkqKURWdosW08YZKi4m6CnSUSvIZG1otNJbTWhN01Hhz389DW7mvDQ== ansi-regex@^2.0.0: version "2.1.1" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" + integrity sha1-w7M6te42DYbg5ijwRorn7yfWVN8= ansi-regex@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998" + integrity sha1-7QMXwyIGT3lGbAKWa922Bas32Zg= ansi-styles@^2.2.1: version "2.2.1" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" + integrity sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4= ansi-styles@^3.1.0: version "3.2.0" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.0.tgz#c159b8d5be0f9e5a6f346dab94f16ce022161b88" + integrity sha512-NnSOmMEYtVR2JVMIGTzynRkkaxtiq1xnFBcdQD/DnNCYPoEPsVJhM98BDyaoNOQIi7p4okdi3E27eN7GQbsUug== dependencies: color-convert "^1.9.0" apicache@^0.10.0: version "0.10.0" resolved "https://registry.yarnpkg.com/apicache/-/apicache-0.10.0.tgz#79687842020647a91aa87e0e74680bcc0610584e" + integrity sha512-7u2OdPlqTwlvqTC7ztCT1rfUB+0hDSSwKIH89fEOUWzvpwDyfOXbchKsSzUXH3sX/YW93ti4mcRC2mAk0PMkzQ== aproba@^1.0.3: version "1.2.0" resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" + integrity sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw== are-we-there-yet@~1.1.2: version "1.1.4" resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz#bb5dca382bb94f05e15194373d16fd3ba1ca110d" + integrity sha1-u13KOCu5TwXhUZQ3PRb9O6HKEQ0= dependencies: delegates "^1.0.0" readable-stream "^2.0.6" @@ -187,26 +221,31 @@ are-we-there-yet@~1.1.2: argparse@^1.0.7: version "1.0.9" resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.9.tgz#73d83bc263f86e97f8cc4f6bae1b0e90a7d22c86" + integrity sha1-c9g7wmP4bpf4zE9rrhsOkKfSLIY= dependencies: sprintf-js "~1.0.2" array-union@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39" + integrity sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk= dependencies: array-uniq "^1.0.1" array-uniq@^1.0.1: version "1.0.3" resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6" + integrity sha1-r2rId6Jcx/dOBYiUdThY39sk/bY= arrify@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" + integrity sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0= ascli@~1: version "1.0.1" resolved "https://registry.yarnpkg.com/ascli/-/ascli-1.0.1.tgz#bcfa5974a62f18e81cabaeb49732ab4a88f906bc" + integrity sha1-vPpZdKYvGOgcq660lzKrSoj5Brw= dependencies: colour "~0.7.1" optjs "~3.2.2" @@ -214,48 +253,59 @@ ascli@~1: asn1@~0.2.3: version "0.2.3" resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.3.tgz#dac8787713c9966849fc8180777ebe9c1ddf3b86" + integrity sha1-2sh4dxPJlmhJ/IGAd36+nB3fO4Y= assert-plus@1.0.0, assert-plus@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" + integrity sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU= assert-plus@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-0.2.0.tgz#d74e1b87e7affc0db8aadb7021f3fe48101ab234" + integrity sha1-104bh+ev/A24qttwIfP+SBAasjQ= assertion-error@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/assertion-error/-/assertion-error-1.0.2.tgz#13ca515d86206da0bac66e834dd397d87581094c" + integrity sha1-E8pRXYYgbaC6xm6DTdOX2HWBCUw= async-limiter@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/async-limiter/-/async-limiter-1.0.0.tgz#78faed8c3d074ab81f22b4e985d79e8738f720f8" + integrity sha512-jp/uFnooOiO+L211eZOoSyzpOITMXx1rBITauYykG3BRYPu8h0UcxsPNB04RR5vo4Tyz3+ay17tR6JVf9qzYWg== async@2.1.4: version "2.1.4" resolved "https://registry.yarnpkg.com/async/-/async-2.1.4.tgz#2d2160c7788032e4dd6cbe2502f1f9a2c8f6cde4" + integrity sha1-LSFgx3iAMuTdbL4lAvH5osj2zeQ= dependencies: lodash "^4.14.0" asynckit@^0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" + integrity sha1-x57Zf380y48robyXkLzDZkdLS3k= aws-sign2@~0.6.0: version "0.6.0" resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.6.0.tgz#14342dd38dbcc94d0e5b87d763cd63612c0e794f" + integrity sha1-FDQt0428yU0OW4fXY81jYSwOeU8= aws-sign2@~0.7.0: version "0.7.0" resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8" + integrity sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg= aws4@^1.2.1, aws4@^1.6.0: version "1.6.0" resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.6.0.tgz#83ef5ca860b2b32e4a0deedee8c771b9db57471e" + integrity sha1-g+9cqGCysy5KDe7e6MdxudtXRx4= babel-code-frame@^6.22.0: version "6.26.0" resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.26.0.tgz#63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b" + integrity sha1-Y/1D99weO7fONZR9uP42mj9Yx0s= dependencies: chalk "^1.1.3" esutils "^2.0.2" @@ -264,20 +314,24 @@ babel-code-frame@^6.22.0: balanced-match@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" + integrity sha1-ibTRmasr7kneFk6gK4nORi1xt2c= base64url@2.0.0, base64url@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/base64url/-/base64url-2.0.0.tgz#eac16e03ea1438eff9423d69baa36262ed1f70bb" + integrity sha1-6sFuA+oUOO/5Qj1puqNiYu0fcLs= bcrypt-pbkdf@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz#63bc5dcb61331b92bc05fd528953c33462a06f8d" + integrity sha1-Y7xdy2EzG5K8Bf1SiVPDNGKgb40= dependencies: tweetnacl "^0.14.3" bcrypt@^1.0.2: version "1.0.3" resolved "https://registry.yarnpkg.com/bcrypt/-/bcrypt-1.0.3.tgz#b02ddc6c0b52ea16b8d3cf375d5a32e780dab548" + integrity sha512-pRyDdo73C8Nim3jwFJ7DWe3TZCgwDfWZ6nHS5LSdU77kWbj1frruvdndP02AOavtD4y8v6Fp2dolbHgp4SDrfg== dependencies: nan "2.6.2" node-pre-gyp "0.6.36" @@ -285,44 +339,52 @@ bcrypt@^1.0.2: bl@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/bl/-/bl-1.2.1.tgz#cac328f7bee45730d404b692203fcb590e172d5e" + integrity sha1-ysMo977kVzDUBLaSID/LWQ4XLV4= dependencies: readable-stream "^2.0.5" block-stream@*: version "0.0.9" resolved "https://registry.yarnpkg.com/block-stream/-/block-stream-0.0.9.tgz#13ebfe778a03205cfe03751481ebb4b3300c126a" + integrity sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo= dependencies: inherits "~2.0.0" bluebird@3.5.0: version "3.5.0" resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.0.tgz#791420d7f551eea2897453a8a77653f96606d67c" + integrity sha1-eRQg1/VR7qKJdFOop3ZT+WYG1nw= boolbase@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" + integrity sha1-aN/1++YMUes3cl6p4+0xDcwed24= boom@2.x.x: version "2.10.1" resolved "https://registry.yarnpkg.com/boom/-/boom-2.10.1.tgz#39c8918ceff5799f83f9492a848f625add0c766f" + integrity sha1-OciRjO/1eZ+D+UkqhI9iWt0Mdm8= dependencies: hoek "2.x.x" boom@4.x.x: version "4.3.1" resolved "https://registry.yarnpkg.com/boom/-/boom-4.3.1.tgz#4f8a3005cb4a7e3889f749030fd25b96e01d2e31" + integrity sha1-T4owBctKfjiJ90kDD9JbluAdLjE= dependencies: hoek "4.x.x" boom@5.x.x: version "5.2.0" resolved "https://registry.yarnpkg.com/boom/-/boom-5.2.0.tgz#5dd9da6ee3a5f302077436290cb717d3f4a54e02" + integrity sha512-Z5BTk6ZRe4tXXQlkqftmsAUANpXmuwlsF5Oov8ThoMbQRzdGTA1ngYRW160GexgOgjsFOKJz0LYhoNi+2AMBUw== dependencies: hoek "4.x.x" brace-expansion@^1.1.7: version "1.1.11" resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" + integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== dependencies: balanced-match "^1.0.0" concat-map "0.0.1" @@ -330,22 +392,27 @@ brace-expansion@^1.1.7: browser-stdout@1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/browser-stdout/-/browser-stdout-1.3.0.tgz#f351d32969d32fa5d7a5567154263d928ae3bd1f" + integrity sha1-81HTKWnTL6XXpVZxVCY9korjvR8= bson@~1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/bson/-/bson-1.0.4.tgz#93c10d39eaa5b58415cbc4052f3e53e562b0b72c" + integrity sha1-k8ENOeqltYQVy8QFLz5T5WKwtyw= buffer-equal-constant-time@1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz#f8e71132f7ffe6e01a5c9697a4c6f3e48d5cc819" + integrity sha1-+OcRMvf/5uAaXJaXpMbz5I1cyBk= buffer-shims@^1.0.0, buffer-shims@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/buffer-shims/-/buffer-shims-1.0.0.tgz#9978ce317388c649ad8793028c3477ef044a8b51" + integrity sha1-mXjOMXOIxkmth5MCjDR37wRKi1E= bunyan@^1.8.1, bunyan@^1.8.12: version "1.8.12" resolved "https://registry.yarnpkg.com/bunyan/-/bunyan-1.8.12.tgz#f150f0f6748abdd72aeae84f04403be2ef113797" + integrity sha1-8VDw9nSKvdcq6uhPBEA74u8RN5c= optionalDependencies: dtrace-provider "~0.8" moment "^2.10.6" @@ -355,12 +422,14 @@ bunyan@^1.8.1, bunyan@^1.8.12: bytebuffer@~5: version "5.0.1" resolved "https://registry.yarnpkg.com/bytebuffer/-/bytebuffer-5.0.1.tgz#582eea4b1a873b6d020a48d58df85f0bba6cfddd" + integrity sha1-WC7qSxqHO20CCkjVjfhfC7ps/d0= dependencies: long "~3" cacheable-request@^2.1.1: version "2.1.4" resolved "https://registry.yarnpkg.com/cacheable-request/-/cacheable-request-2.1.4.tgz#0d808801b6342ad33c91df9d0b44dc09b91e5c3d" + integrity sha1-DYCIAbY0KtM8kd+dC0TcCbkeXD0= dependencies: clone-response "1.0.2" get-stream "3.0.0" @@ -373,6 +442,7 @@ cacheable-request@^2.1.1: callback-stream@^1.0.2: version "1.1.0" resolved "https://registry.yarnpkg.com/callback-stream/-/callback-stream-1.1.0.tgz#4701a51266f06e06eaa71fc17233822d875f4908" + integrity sha1-RwGlEmbwbgbqpx/BcjOCLYdfSQg= dependencies: inherits "^2.0.1" readable-stream "> 1.0.0 < 3.0.0" @@ -380,36 +450,44 @@ callback-stream@^1.0.2: caller-path@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/caller-path/-/caller-path-0.1.0.tgz#94085ef63581ecd3daa92444a8fe94e82577751f" + integrity sha1-lAhe9jWB7NPaqSREqP6U6CV3dR8= dependencies: callsites "^0.2.0" callsites@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/callsites/-/callsites-0.2.0.tgz#afab96262910a7f33c19a5775825c69f34e350ca" + integrity sha1-r6uWJikQp/M8GaV3WCXGnzTjUMo= camelcase@^2.0.1: version "2.1.1" resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-2.1.1.tgz#7c1d16d679a1bbe59ca02cacecfb011e201f5a1f" + integrity sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8= caseless@~0.11.0: version "0.11.0" resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.11.0.tgz#715b96ea9841593cc33067923f5ec60ebda4f7d7" + integrity sha1-cVuW6phBWTzDMGeSP17GDr2k99c= caseless@~0.12.0: version "0.12.0" resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" + integrity sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw= chai-as-promised@5.x.x: version "5.3.0" resolved "https://registry.yarnpkg.com/chai-as-promised/-/chai-as-promised-5.3.0.tgz#09d7a402908aa70dfdbead53e5853fc79d3ef21c" + integrity sha1-CdekApCKpw39vq1T5YU/x50+8hw= chai-subset@1.x.x: version "1.5.0" resolved "https://registry.yarnpkg.com/chai-subset/-/chai-subset-1.5.0.tgz#d03dbcfa8c9daad848643bbde4e63376b7882427" + integrity sha1-0D28+oydqthIZDu95OYzdreIJCc= chai@3.x.x: version "3.5.0" resolved "https://registry.yarnpkg.com/chai/-/chai-3.5.0.tgz#4d02637b067fe958bdbfdd3a40ec56fef7373247" + integrity sha1-TQJjewZ/6Vi9v906QOxW/vc3Mkc= dependencies: assertion-error "^1.0.1" deep-eql "^0.1.3" @@ -418,6 +496,7 @@ chai@3.x.x: chai@^4.1.2: version "4.1.2" resolved "https://registry.yarnpkg.com/chai/-/chai-4.1.2.tgz#0f64584ba642f0f2ace2806279f4f06ca23ad73c" + integrity sha1-D2RYS6ZC8PKs4oBiefTwbKI61zw= dependencies: assertion-error "^1.0.1" check-error "^1.0.1" @@ -429,6 +508,7 @@ chai@^4.1.2: chakram@^1.5.0: version "1.5.0" resolved "https://registry.yarnpkg.com/chakram/-/chakram-1.5.0.tgz#3d8b0a88f768dd6ada592a524663cc0dc14ac1cf" + integrity sha1-PYsKiPdo3WraWSpSRmPMDcFKwc8= dependencies: chai "3.x.x" chai-as-promised "5.x.x" @@ -442,6 +522,7 @@ chakram@^1.5.0: chalk@^1.1.1, chalk@^1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" + integrity sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg= dependencies: ansi-styles "^2.2.1" escape-string-regexp "^1.0.2" @@ -452,6 +533,7 @@ chalk@^1.1.1, chalk@^1.1.3: chalk@^2.0.0, chalk@^2.1.0: version "2.3.0" resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.3.0.tgz#b5ea48efc9c1793dccc9b4767c93914d3f2d52ba" + integrity sha512-Az5zJR2CBujap2rqXGaJKaPHyJ0IrUimvYNX+ncCy8PJP4ltOGTrHUIo097ZaL2zMeKYpiCdqDvS6zdrTFok3Q== dependencies: ansi-styles "^3.1.0" escape-string-regexp "^1.0.5" @@ -460,14 +542,17 @@ chalk@^2.0.0, chalk@^2.1.0: chardet@^0.4.0: version "0.4.2" resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.4.2.tgz#b5473b33dc97c424e5d98dc87d55d4d8a29c8bf2" + integrity sha1-tUc7M9yXxCTl2Y3IfVXU2KKci/I= check-error@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/check-error/-/check-error-1.0.2.tgz#574d312edd88bb5dd8912e9286dd6c0aed4aac82" + integrity sha1-V00xLt2Iu13YkS6Sht1sCu1KrII= cheerio@^1.0.0-rc.2: version "1.0.0-rc.2" resolved "https://registry.yarnpkg.com/cheerio/-/cheerio-1.0.0-rc.2.tgz#4b9f53a81b27e4d5dac31c0ffd0cfa03cc6830db" + integrity sha1-S59TqBsn5NXawxwP/Qz6A8xoMNs= dependencies: css-select "~1.2.0" dom-serializer "~0.1.0" @@ -479,24 +564,29 @@ cheerio@^1.0.0-rc.2: circular-json@^0.3.1: version "0.3.3" resolved "https://registry.yarnpkg.com/circular-json/-/circular-json-0.3.3.tgz#815c99ea84f6809529d2f45791bdf82711352d66" + integrity sha512-UZK3NBx2Mca+b5LsG7bY183pHWt5Y1xts4P3Pz7ENTwGVnJOUWbRb3ocjvX7hx9tq/yTAdclXm9sZ38gNuem4A== cjson@~0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/cjson/-/cjson-0.2.1.tgz#73cd8aad65d9e1505f9af1744d3b79c1527682a5" + integrity sha1-c82KrWXZ4VBfmvF0TTt5wVJ2gqU= cli-cursor@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz#b35dac376479facc3e94747d41d0d0f5238ffcb5" + integrity sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU= dependencies: restore-cursor "^2.0.0" cli-width@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.0.tgz#ff19ede8a9a5e579324147b0c11f0fbcbabed639" + integrity sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk= cliui@^3.0.3: version "3.2.0" resolved "https://registry.yarnpkg.com/cliui/-/cliui-3.2.0.tgz#120601537a916d29940f934da3b48d585a39213d" + integrity sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0= dependencies: string-width "^1.0.1" strip-ansi "^3.0.1" @@ -505,6 +595,7 @@ cliui@^3.0.3: clone-regexp@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/clone-regexp/-/clone-regexp-1.0.0.tgz#eae0a2413f55c0942f818c229fefce845d7f3b1c" + integrity sha1-6uCiQT9VwJQvgYwin+/OhF1/Oxw= dependencies: is-regexp "^1.0.0" is-supported-regexp-flag "^1.0.0" @@ -512,52 +603,63 @@ clone-regexp@^1.0.0: clone-response@1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/clone-response/-/clone-response-1.0.2.tgz#d1dc973920314df67fbeb94223b4ee350239e96b" + integrity sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws= dependencies: mimic-response "^1.0.0" clone@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.2.tgz#260b7a99ebb1edfe247538175f783243cb19d149" + integrity sha1-Jgt6meux7f4kdTgXX3gyQ8sZ0Uk= co@^4.6.0: version "4.6.0" resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" + integrity sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ= code-point-at@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" + integrity sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c= color-convert@^1.9.0: version "1.9.1" resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.1.tgz#c1261107aeb2f294ebffec9ed9ecad529a6097ed" + integrity sha512-mjGanIiwQJskCC18rPR6OmrZ6fm2Lc7PeGFYwCmy5J34wC6F1PzdGL6xeMfmgicfYcNLGuVFA3WzXtIDCQSZxQ== dependencies: color-name "^1.1.1" color-name@^1.1.1: version "1.1.3" resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" + integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= colors@0.5.x: version "0.5.1" resolved "https://registry.yarnpkg.com/colors/-/colors-0.5.1.tgz#7d0023eaeb154e8ee9fce75dcb923d0ed1667774" + integrity sha1-fQAj6usVTo7p/Oddy5I9DtFmd3Q= colour@~0.7.1: version "0.7.1" resolved "https://registry.yarnpkg.com/colour/-/colour-0.7.1.tgz#9cb169917ec5d12c0736d3e8685746df1cadf778" + integrity sha1-nLFpkX7F0SwHNtPoaFdG3xyt93g= combined-stream@^1.0.5, combined-stream@~1.0.5: version "1.0.6" resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.6.tgz#723e7df6e801ac5613113a7e445a9b69cb632818" + integrity sha1-cj599ugBrFYTETp+RFqbactjKBg= dependencies: delayed-stream "~1.0.0" commander@2.11.0, commander@^2.9.0: version "2.11.0" resolved "https://registry.yarnpkg.com/commander/-/commander-2.11.0.tgz#157152fd1e7a6c8d98a5b715cf376df928004563" + integrity sha512-b0553uYA5YAEGgyYIGYROzKQ7X5RAqedkfjiZxwi0kL1g3bOaBNNZfYkzt/CL0umgD5wc9Jec2FbB98CjkMRvQ== commist@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/commist/-/commist-1.0.0.tgz#c0c352501cf6f52e9124e3ef89c9806e2022ebef" + integrity sha1-wMNSUBz29S6RJOPvicmAbiAi6+8= dependencies: leven "^1.0.0" minimist "^1.1.0" @@ -565,10 +667,12 @@ commist@^1.0.0: concat-map@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" + integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= concat-stream@^1.6.0: version "1.6.0" resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.0.tgz#0aac662fd52be78964d5532f694784e70110acf7" + integrity sha1-CqxmL9Ur54lk1VMvaUeE5wEQrPc= dependencies: inherits "^2.0.3" readable-stream "^2.2.2" @@ -577,6 +681,7 @@ concat-stream@^1.6.0: config@^1.29.2: version "1.30.0" resolved "https://registry.yarnpkg.com/config/-/config-1.30.0.tgz#1d60a9f35348a13c175798d384e81a5a16c3ba6e" + integrity sha1-HWCp81NIoTwXV5jThOgaWhbDum4= dependencies: json5 "0.4.0" os-homedir "1.0.2" @@ -584,14 +689,17 @@ config@^1.29.2: console-control-strings@^1.0.0, console-control-strings@~1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" + integrity sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4= core-util-is@1.0.2, core-util-is@~1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" + integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= cross-spawn@^5.1.0: version "5.1.0" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-5.1.0.tgz#e8bd0efee58fcff6f8f94510a0a554bbfa235449" + integrity sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk= dependencies: lru-cache "^4.0.1" shebang-command "^1.2.0" @@ -600,18 +708,21 @@ cross-spawn@^5.1.0: cryptiles@2.x.x: version "2.0.5" resolved "https://registry.yarnpkg.com/cryptiles/-/cryptiles-2.0.5.tgz#3bdfecdc608147c1c67202fa291e7dca59eaa3b8" + integrity sha1-O9/s3GCBR8HGcgL6KR59ylnqo7g= dependencies: boom "2.x.x" cryptiles@3.x.x: version "3.1.2" resolved "https://registry.yarnpkg.com/cryptiles/-/cryptiles-3.1.2.tgz#a89fbb220f5ce25ec56e8c4aa8a4fd7b5b0d29fe" + integrity sha1-qJ+7Ig9c4l7FboxKqKT9e1sNKf4= dependencies: boom "5.x.x" css-select@~1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/css-select/-/css-select-1.2.0.tgz#2b3a110539c5355f1cd8d314623e870b121ec858" + integrity sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg= dependencies: boolbase "~1.0.0" css-what "2.1" @@ -621,24 +732,29 @@ css-select@~1.2.0: css-what@2.1: version "2.1.0" resolved "https://registry.yarnpkg.com/css-what/-/css-what-2.1.0.tgz#9467d032c38cfaefb9f2d79501253062f87fa1bd" + integrity sha1-lGfQMsOM+u+58teVASUwYvh/ob0= csv-generate@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/csv-generate/-/csv-generate-1.1.2.tgz#ec6b00edaed6e59ad9c20582f4c364e28b146240" + integrity sha1-7GsA7a7W5ZrZwgWC9MNk4osUYkA= csv-parse@^1.2.1, csv-parse@^1.3.3: version "1.3.3" resolved "https://registry.yarnpkg.com/csv-parse/-/csv-parse-1.3.3.tgz#d1cfd8743c2f849a0abb2fd544db56695d19a490" + integrity sha1-0c/YdDwvhJoKuy/VRNtWaV0ZpJA= csv-stringify@^1.0.4, csv-stringify@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/csv-stringify/-/csv-stringify-1.1.2.tgz#77a41526581bce3380f12b00d7c5bbac70c82b58" + integrity sha1-d6QVJlgbzjOA8SsA18W7rHDIK1g= dependencies: lodash.get "~4.4.2" csv@^1.1.0: version "1.2.1" resolved "https://registry.yarnpkg.com/csv/-/csv-1.2.1.tgz#5231edfc1c7152512ec45781076a7a97ff525c0c" + integrity sha1-UjHt/BxxUlEuxFeBB2p6l/9SXAw= dependencies: csv-generate "^1.1.2" csv-parse "^1.3.3" @@ -648,72 +764,86 @@ csv@^1.1.0: dashdash@^1.12.0: version "1.14.1" resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" + integrity sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA= dependencies: assert-plus "^1.0.0" dashify@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/dashify/-/dashify-1.0.0.tgz#faa9365fbe72a688bcb5d6f2b270d370c96d575e" + integrity sha512-3uyC9AzRYm/9u2nqD8BpIBKsvHg/OfW3FLKS97mJPil2KzFNHgKta3yL2NfzMDY+0ArSLbKfgNXhgq0FyjOhoA== debug@2.6.9, debug@^2.2.0, debug@^2.6.8: version "2.6.9" resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" + integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== dependencies: ms "2.0.0" debug@3.1.0, debug@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261" + integrity sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g== dependencies: ms "2.0.0" decamelize@^1.1.1: version "1.2.0" resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" + integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= decode-uri-component@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545" + integrity sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU= decompress-response@^3.3.0: version "3.3.0" resolved "https://registry.yarnpkg.com/decompress-response/-/decompress-response-3.3.0.tgz#80a4dd323748384bfa248083622aedec982adff3" + integrity sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M= dependencies: mimic-response "^1.0.0" dedent@^0.7.0: version "0.7.0" resolved "https://registry.yarnpkg.com/dedent/-/dedent-0.7.0.tgz#2495ddbaf6eb874abb0e1be9df22d2e5a544326c" + integrity sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw= deep-eql@^0.1.3: version "0.1.3" resolved "https://registry.yarnpkg.com/deep-eql/-/deep-eql-0.1.3.tgz#ef558acab8de25206cd713906d74e56930eb69f2" + integrity sha1-71WKyrjeJSBs1xOQbXTlaTDrafI= dependencies: type-detect "0.1.1" deep-eql@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/deep-eql/-/deep-eql-3.0.1.tgz#dfc9404400ad1c8fe023e7da1df1c147c4b444df" + integrity sha512-+QeIQyN5ZuO+3Uk5DYh6/1eKO0m0YmJFGNmFHGACpf1ClL1nmlV/p4gNgbl2pJGxgXb4faqo6UE+M5ACEMyVcw== dependencies: type-detect "^4.0.0" deep-extend@~0.4.0: version "0.4.2" resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.4.2.tgz#48b699c27e334bf89f10892be432f6e4c7d34a7f" + integrity sha1-SLaZwn4zS/ifEIkr5DL25MfTSn8= deep-is@~0.1.3: version "0.1.3" resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" + integrity sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ= defaults@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/defaults/-/defaults-1.0.3.tgz#c656051e9817d9ff08ed881477f3fe4019f3ef7d" + integrity sha1-xlYFHpgX2f8I7YgUd/P+QBnz730= dependencies: clone "^1.0.2" del@^2.0.2: version "2.2.2" resolved "https://registry.yarnpkg.com/del/-/del-2.2.2.tgz#c12c981d067846c84bcaf862cff930d907ffd1a8" + integrity sha1-wSyYHQZ4RshLyvhiz/kw2Qf/0ag= dependencies: globby "^5.0.0" is-path-cwd "^1.0.0" @@ -726,32 +856,39 @@ del@^2.0.2: delayed-stream@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" + integrity sha1-3zrhmayt+31ECqrgsp4icrJOxhk= delegates@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" + integrity sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o= detect-libc@^1.0.2: version "1.0.3" resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b" + integrity sha1-+hN8S9aY7fVc1c0CrFWfkaTEups= detect-node@^2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/detect-node/-/detect-node-2.0.3.tgz#a2033c09cc8e158d37748fbde7507832bd6ce127" + integrity sha1-ogM8CcyOFY03dI+951B4Mr1s4Sc= diff@3.3.1: version "3.3.1" resolved "https://registry.yarnpkg.com/diff/-/diff-3.3.1.tgz#aa8567a6eed03c531fc89d3f711cd0e5259dec75" + integrity sha512-MKPHZDMB0o6yHyDryUOScqZibp914ksXwAMYMTHj6KO8UeKsRYNJD3oNCKjTqZon+V488P7N/HzXF8t7ZR95ww== doctrine@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-2.1.0.tgz#5cd01fc101621b42c4cd7f5d1a66243716d3f39d" + integrity sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw== dependencies: esutils "^2.0.2" dom-serializer@0, dom-serializer@~0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.1.0.tgz#073c697546ce0780ce23be4a28e293e40bc30c82" + integrity sha1-BzxpdUbOB4DOI75KKOKT5AvDDII= dependencies: domelementtype "~1.1.1" entities "~1.1.1" @@ -759,20 +896,24 @@ dom-serializer@0, dom-serializer@~0.1.0: domelementtype@1, domelementtype@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.3.0.tgz#b17aed82e8ab59e52dd9c19b1756e0fc187204c2" + integrity sha1-sXrtguirWeUt2cGbF1bg/BhyBMI= domelementtype@~1.1.1: version "1.1.3" resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.1.3.tgz#bd28773e2642881aec51544924299c5cd822185b" + integrity sha1-vSh3PiZCiBrsUVRJJCmcXNgiGFs= domhandler@^2.3.0: version "2.4.1" resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-2.4.1.tgz#892e47000a99be55bbf3774ffea0561d8879c259" + integrity sha1-iS5HAAqZvlW783dP/qBWHYh5wlk= dependencies: domelementtype "1" domutils@1.5.1: version "1.5.1" resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.5.1.tgz#dcd8488a26f563d61079e48c9f7b7e32373682cf" + integrity sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8= dependencies: dom-serializer "0" domelementtype "1" @@ -780,6 +921,7 @@ domutils@1.5.1: domutils@^1.5.1: version "1.6.2" resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.6.2.tgz#1958cc0b4c9426e9ed367fb1c8e854891b0fa3ff" + integrity sha1-GVjMC0yUJuntNn+xyOhUiRsPo/8= dependencies: dom-serializer "0" domelementtype "1" @@ -787,16 +929,19 @@ domutils@^1.5.1: dtrace-provider@^0.8.1, dtrace-provider@~0.8: version "0.8.5" resolved "https://registry.yarnpkg.com/dtrace-provider/-/dtrace-provider-0.8.5.tgz#98ebba221afac46e1c39fd36858d8f9367524b92" + integrity sha1-mOu6Ihr6xG4cOf02hY2Pk2dSS5I= dependencies: nan "^2.3.3" duplexer3@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/duplexer3/-/duplexer3-0.1.4.tgz#ee01dd1cac0ed3cbc7fdbea37dc0a8f1ce002ce2" + integrity sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI= duplexify@^3.5.1, duplexify@^3.5.3: version "3.5.3" resolved "https://registry.yarnpkg.com/duplexify/-/duplexify-3.5.3.tgz#8b5818800df92fd0125b27ab896491912858243e" + integrity sha512-g8ID9OroF9hKt2POf8YLayy+9594PzmM3scI00/uBXocX3TWNgoB67hjzkFe9ITAbQOne/lLdBxHXvYUM4ZgGA== dependencies: end-of-stream "^1.0.0" inherits "^2.0.1" @@ -806,16 +951,19 @@ duplexify@^3.5.1, duplexify@^3.5.3: ebnf-parser@~0.1.9: version "0.1.10" resolved "https://registry.yarnpkg.com/ebnf-parser/-/ebnf-parser-0.1.10.tgz#cd1f6ba477c5638c40c97ed9b572db5bab5d8331" + integrity sha1-zR9rpHfFY4xAyX7ZtXLbW6tdgzE= ecc-jsbn@~0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz#0fc73a9ed5f0d53c38193398523ef7e543777505" + integrity sha1-D8c6ntXw1Tw4GTOYUj735UN3dQU= dependencies: jsbn "~0.1.0" ecdsa-sig-formatter@1.0.9: version "1.0.9" resolved "https://registry.yarnpkg.com/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.9.tgz#4bc926274ec3b5abb5016e7e1d60921ac262b2a1" + integrity sha1-S8kmJ07Dtau1AW5+HWCSGsJisqE= dependencies: base64url "^2.0.0" safe-buffer "^5.0.1" @@ -823,34 +971,41 @@ ecdsa-sig-formatter@1.0.9: encoding@~0.1.12: version "0.1.12" resolved "https://registry.yarnpkg.com/encoding/-/encoding-0.1.12.tgz#538b66f3ee62cd1ab51ec323829d1f9480c74beb" + integrity sha1-U4tm8+5izRq1HsMjgp0flIDHS+s= dependencies: iconv-lite "~0.4.13" end-of-stream@^1.0.0, end-of-stream@^1.1.0: version "1.4.1" resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.1.tgz#ed29634d19baba463b6ce6b80a37213eab71ec43" + integrity sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q== dependencies: once "^1.4.0" entities@^1.1.1, entities@~1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.1.tgz#6e5c2d0a5621b5dadaecef80b90edfb5cd7772f0" + integrity sha1-blwtClYhtdra7O+AuQ7ftc13cvA= es6-promise@3.2.1: version "3.2.1" resolved "https://registry.yarnpkg.com/es6-promise/-/es6-promise-3.2.1.tgz#ec56233868032909207170c39448e24449dd1fc4" + integrity sha1-7FYjOGgDKQkgcXDDlEjiREndH8Q= escape-regexp-component@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/escape-regexp-component/-/escape-regexp-component-1.0.2.tgz#9c63b6d0b25ff2a88c3adbd18c5b61acc3b9faa2" + integrity sha1-nGO20LJf8qiMOtvRjFthrMO5+qI= escape-string-regexp@1.0.5, escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" + integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= escodegen@0.0.21: version "0.0.21" resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-0.0.21.tgz#53d652cfa1030388279458a5266c5ffc709c63c3" + integrity sha1-U9ZSz6EDA4gnlFilJmxf/HCcY8M= dependencies: esprima "~1.0.2" estraverse "~0.0.4" @@ -860,6 +1015,7 @@ escodegen@0.0.21: escodegen@^1.8.1: version "1.9.0" resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.9.0.tgz#9811a2f265dc1cd3894420ee3717064b632b8852" + integrity sha512-v0MYvNQ32bzwoG2OSFzWAkuahDQHK92JBN0pTAALJ4RIxEZe766QJPDR8Hqy7XNUy5K3fnVL76OqYAdc4TZEIw== dependencies: esprima "^3.1.3" estraverse "^4.2.0" @@ -871,6 +1027,7 @@ escodegen@^1.8.1: eslint-scope@^3.7.1: version "3.7.1" resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-3.7.1.tgz#3d63c3edfda02e06e01a452ad88caacc7cdcb6e8" + integrity sha1-PWPD7f2gLgbgGkUq2IyqzHzctug= dependencies: esrecurse "^4.1.0" estraverse "^4.1.1" @@ -878,10 +1035,12 @@ eslint-scope@^3.7.1: eslint-visitor-keys@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz#3f3180fb2e291017716acb4c9d6d5b5c34a6a81d" + integrity sha512-qzm/XxIbxm/FHyH341ZrbnMUpe+5Bocte9xkmFMzPMjRaZMcXww+MpBptFvtU+79L362nqiLhekCxCxDPaUMBQ== eslint@4.16.0: version "4.16.0" resolved "https://registry.yarnpkg.com/eslint/-/eslint-4.16.0.tgz#934ada9e98715e1d7bbfd6f6f0519ed2fab35cc1" + integrity sha512-YVXV4bDhNoHHcv0qzU4Meof7/P26B4EuaktMi5L1Tnt52Aov85KmYA8c5D+xyZr/BkhvwUqr011jDSD/QTULxg== dependencies: ajv "^5.3.0" babel-code-frame "^6.22.0" @@ -924,6 +1083,7 @@ eslint@4.16.0: espree@^3.5.2: version "3.5.2" resolved "https://registry.yarnpkg.com/espree/-/espree-3.5.2.tgz#756ada8b979e9dcfcdb30aad8d1a9304a905e1ca" + integrity sha512-sadKeYwaR/aJ3stC2CdvgXu1T16TdYN+qwCpcWbMnGJ8s0zNWemzrvb2GbD4OhmJ/fwpJjudThAlLobGbWZbCQ== dependencies: acorn "^5.2.1" acorn-jsx "^3.0.0" @@ -931,28 +1091,34 @@ espree@^3.5.2: esprima@1.0.x, esprima@~1.0.2: version "1.0.4" resolved "https://registry.yarnpkg.com/esprima/-/esprima-1.0.4.tgz#9f557e08fc3b4d26ece9dd34f8fbf476b62585ad" + integrity sha1-n1V+CPw7TSbs6d00+Pv0drYlha0= esprima@1.2.2: version "1.2.2" resolved "https://registry.yarnpkg.com/esprima/-/esprima-1.2.2.tgz#76a0fd66fcfe154fd292667dc264019750b1657b" + integrity sha1-dqD9Zvz+FU/SkmZ9wmQBl1CxZXs= esprima@^3.1.3: version "3.1.3" resolved "https://registry.yarnpkg.com/esprima/-/esprima-3.1.3.tgz#fdca51cee6133895e3c88d535ce49dbff62a4633" + integrity sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM= esprima@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.0.tgz#4499eddcd1110e0b218bacf2fa7f7f59f55ca804" + integrity sha512-oftTcaMu/EGrEIu904mWteKIv8vMuOgGYo7EhVJJN00R/EED9DCua/xxHRdYnKtcECzVg7xOWhflvJMnqcFZjw== esquery@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.0.0.tgz#cfba8b57d7fba93f17298a8a006a04cda13d80fa" + integrity sha1-z7qLV9f7qT8XKYqKAGoEzaE9gPo= dependencies: estraverse "^4.0.0" esrecurse@^4.1.0: version "4.2.0" resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.2.0.tgz#fa9568d98d3823f9a41d91e902dcab9ea6e5b163" + integrity sha1-+pVo2Y04I/mkHZHpAtyrnqblsWM= dependencies: estraverse "^4.1.0" object-assign "^4.0.1" @@ -960,26 +1126,32 @@ esrecurse@^4.1.0: estraverse@^4.0.0, estraverse@^4.1.0, estraverse@^4.1.1, estraverse@^4.2.0: version "4.2.0" resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.2.0.tgz#0dee3fed31fcd469618ce7342099fc1afa0bdb13" + integrity sha1-De4/7TH81GlhjOc0IJn8GvoL2xM= estraverse@~0.0.4: version "0.0.4" resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-0.0.4.tgz#01a0932dfee574684a598af5a67c3bf9b6428db2" + integrity sha1-AaCTLf7ldGhKWYr1pnw7+bZCjbI= esutils@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b" + integrity sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs= extend-object@1.x.x: version "1.0.0" resolved "https://registry.yarnpkg.com/extend-object/-/extend-object-1.0.0.tgz#42514f84015d1356caf5187969dfb2bc1bda0823" + integrity sha1-QlFPhAFdE1bK9Rh5ad+yvBvaCCM= extend@^3.0.0, extend@~3.0.0, extend@~3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.1.tgz#a755ea7bc1adfcc5a31ce7e762dbaadc5e636444" + integrity sha1-p1Xqe8Gt/MWjHOfnYtuq3F5jZEQ= external-editor@^2.0.4: version "2.1.0" resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-2.1.0.tgz#3d026a21b7f95b5726387d4200ac160d372c3b48" + integrity sha512-E44iT5QVOUJBKij4IIV3uvxuNlbKS38Tw1HiupxEIHPv9qtC2PrDYohbXV5U+1jnfIXttny8gUhj+oZvflFlzA== dependencies: chardet "^0.4.0" iconv-lite "^0.4.17" @@ -988,36 +1160,44 @@ external-editor@^2.0.4: extsprintf@1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.2.0.tgz#5ad946c22f5b32ba7f8cd7426711c6e8a3fc2529" + integrity sha1-WtlGwi9bMrp/jNdCZxHG6KP8JSk= extsprintf@1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05" + integrity sha1-lpGEQOMEGnpBT4xS48V06zw+HgU= extsprintf@^1.2.0: version "1.4.0" resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.0.tgz#e2689f8f356fad62cca65a3a91c5df5f9551692f" + integrity sha1-4mifjzVvrWLMplo6kcXfX5VRaS8= fast-deep-equal@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-1.0.0.tgz#96256a3bc975595eb36d82e9929d060d893439ff" + integrity sha1-liVqO8l1WV6zbYLpkp0GDYk0Of8= fast-json-stable-stringify@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz#d5142c0caee6b1189f87d3a76111064f86c8bbf2" + integrity sha1-1RQsDK7msRifh9OnYREGT4bIu/I= fast-levenshtein@~2.0.4: version "2.0.6" resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" + integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= figures@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/figures/-/figures-2.0.0.tgz#3ab1a2d2a62c8bfb431a0c94cb797a2fce27c962" + integrity sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI= dependencies: escape-string-regexp "^1.0.5" file-entry-cache@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-2.0.0.tgz#c392990c3e684783d838b8c84a45d8a048458361" + integrity sha1-w5KZDD5oR4PYOLjISkXYoEhFg2E= dependencies: flat-cache "^1.2.1" object-assign "^4.0.1" @@ -1025,6 +1205,7 @@ file-entry-cache@^2.0.0: flat-cache@^1.2.1: version "1.3.0" resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-1.3.0.tgz#d3030b32b38154f4e3b7e9c709f490f7ef97c481" + integrity sha1-0wMLMrOBVPTjt+nHCfSQ9++XxIE= dependencies: circular-json "^0.3.1" del "^2.0.2" @@ -1034,10 +1215,12 @@ flat-cache@^1.2.1: forever-agent@~0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" + integrity sha1-+8cfDEGt6zf5bFd60e1C2P2sypE= form-data@~2.1.1: version "2.1.4" resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.1.4.tgz#33c183acf193276ecaa98143a69e94bfee1750d1" + integrity sha1-M8GDrPGTJ27KqYFDpp6Uv+4XUNE= dependencies: asynckit "^0.4.0" combined-stream "^1.0.5" @@ -1046,6 +1229,7 @@ form-data@~2.1.1: form-data@~2.3.1: version "2.3.1" resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.1.tgz#6fb94fbd71885306d73d15cc497fe4cc4ecd44bf" + integrity sha1-b7lPvXGIUwbXPRXMSX/kzE7NRL8= dependencies: asynckit "^0.4.0" combined-stream "^1.0.5" @@ -1054,10 +1238,12 @@ form-data@~2.3.1: formidable@^1.0.17: version "1.1.1" resolved "https://registry.yarnpkg.com/formidable/-/formidable-1.1.1.tgz#96b8886f7c3c3508b932d6bd70c4d3a88f35f1a9" + integrity sha1-lriIb3w8NQi5Mta9cMTTqI818ak= from2@^2.1.1: version "2.3.0" resolved "https://registry.yarnpkg.com/from2/-/from2-2.3.0.tgz#8bfb5502bde4a4d36cfdeea007fcca21d7e382af" + integrity sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8= dependencies: inherits "^2.0.1" readable-stream "^2.0.0" @@ -1065,10 +1251,12 @@ from2@^2.1.1: fs.realpath@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" + integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= fstream-ignore@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/fstream-ignore/-/fstream-ignore-1.0.5.tgz#9c31dae34767018fe1d249b24dada67d092da105" + integrity sha1-nDHa40dnAY/h0kmyTa2mfQktoQU= dependencies: fstream "^1.0.0" inherits "2" @@ -1077,6 +1265,7 @@ fstream-ignore@^1.0.5: fstream@^1.0.0, fstream@^1.0.10, fstream@^1.0.2: version "1.0.11" resolved "https://registry.yarnpkg.com/fstream/-/fstream-1.0.11.tgz#5c1fb1f117477114f0632a0eb4b71b3cb0fd3171" + integrity sha1-XB+x8RdHcRTwYyoOtLcbPLD9MXE= dependencies: graceful-fs "^4.1.2" inherits "~2.0.0" @@ -1086,10 +1275,12 @@ fstream@^1.0.0, fstream@^1.0.10, fstream@^1.0.2: functional-red-black-tree@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" + integrity sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc= gauge@~2.7.3: version "2.7.4" resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7" + integrity sha1-LANAXHU4w51+s3sxcCLjJfsBi/c= dependencies: aproba "^1.0.3" console-control-strings "^1.0.0" @@ -1103,30 +1294,36 @@ gauge@~2.7.3: generate-function@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/generate-function/-/generate-function-2.0.0.tgz#6858fe7c0969b7d4e9093337647ac79f60dfbe74" + integrity sha1-aFj+fAlpt9TpCTM3ZHrHn2DfvnQ= generate-object-property@^1.1.0: version "1.2.0" resolved "https://registry.yarnpkg.com/generate-object-property/-/generate-object-property-1.2.0.tgz#9c0e1c40308ce804f4783618b937fa88f99d50d0" + integrity sha1-nA4cQDCM6AT0eDYYuTf6iPmdUNA= dependencies: is-property "^1.0.0" get-func-name@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/get-func-name/-/get-func-name-2.0.0.tgz#ead774abee72e20409433a066366023dd6887a41" + integrity sha1-6td0q+5y4gQJQzoGY2YCPdaIekE= get-stream@3.0.0, get-stream@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-3.0.0.tgz#8e943d1358dc37555054ecbe2edb05aa174ede14" + integrity sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ= getpass@^0.1.1: version "0.1.7" resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa" + integrity sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo= dependencies: assert-plus "^1.0.0" glob-parent@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-3.1.0.tgz#9e6af6299d8d3bd2bd40430832bd113df906c5ae" + integrity sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4= dependencies: is-glob "^3.1.0" path-dirname "^1.0.0" @@ -1134,6 +1331,7 @@ glob-parent@^3.1.0: glob-stream@^6.1.0: version "6.1.0" resolved "https://registry.yarnpkg.com/glob-stream/-/glob-stream-6.1.0.tgz#7045c99413b3eb94888d83ab46d0b404cc7bdde4" + integrity sha1-cEXJlBOz65SIjYOrRtC0BMx73eQ= dependencies: extend "^3.0.0" glob "^7.1.1" @@ -1149,6 +1347,7 @@ glob-stream@^6.1.0: glob@7.1.2, glob@^7.0.3, glob@^7.0.5, glob@^7.1.1, glob@^7.1.2: version "7.1.2" resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.2.tgz#c19c9df9a028702d678612384a6552404c636d15" + integrity sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ== dependencies: fs.realpath "^1.0.0" inflight "^1.0.4" @@ -1160,6 +1359,7 @@ glob@7.1.2, glob@^7.0.3, glob@^7.0.5, glob@^7.1.1, glob@^7.1.2: glob@^6.0.1: version "6.0.4" resolved "https://registry.yarnpkg.com/glob/-/glob-6.0.4.tgz#0f08860f6a155127b2fadd4f9ce24b1aab6e4d22" + integrity sha1-DwiGD2oVUSey+t1PnOJLGqtuTSI= dependencies: inflight "^1.0.4" inherits "2" @@ -1170,10 +1370,12 @@ glob@^6.0.1: globals@^11.0.1: version "11.1.0" resolved "https://registry.yarnpkg.com/globals/-/globals-11.1.0.tgz#632644457f5f0e3ae711807183700ebf2e4633e4" + integrity sha512-uEuWt9mqTlPDwSqi+sHjD4nWU/1N+q0fiWI9T1mZpD2UENqX20CFD5T/ziLZvztPaBKl7ZylUi1q6Qfm7E2CiQ== globby@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/globby/-/globby-5.0.0.tgz#ebd84667ca0dbb330b99bcfc68eac2bc54370e0d" + integrity sha1-69hGZ8oNuzMLmbz8aOrCvFQ3Dg0= dependencies: array-union "^1.0.1" arrify "^1.0.0" @@ -1185,6 +1387,7 @@ globby@^5.0.0: got@^8.0.2, got@^8.0.3: version "8.0.3" resolved "https://registry.yarnpkg.com/got/-/got-8.0.3.tgz#15d038e8101f89e93585d1639d9c49e8a55ae6bc" + integrity sha512-U9GopEw0RLE8c3rbMmQ5/LtM2pLMopRxV7cVh6pNcX6ITLsH/iweqEn6GqoFxoGJHRbNZFvpFJ/knc+RITL6lg== dependencies: "@sindresorhus/is" "^0.7.0" cacheable-request "^2.1.1" @@ -1207,14 +1410,17 @@ got@^8.0.2, got@^8.0.3: graceful-fs@^4.1.2: version "4.1.11" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658" + integrity sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg= growl@1.10.3: version "1.10.3" resolved "https://registry.yarnpkg.com/growl/-/growl-1.10.3.tgz#1926ba90cf3edfe2adb4927f5880bc22c66c790f" + integrity sha512-hKlsbA5Vu3xsh1Cg3J7jSmX/WaW6A5oBeqzM88oNbCRQFz+zUaXm6yxS4RVytp1scBoJzSYl4YAEOQIt6O8V1Q== grpc@^1.9.0: version "1.9.1" resolved "https://registry.yarnpkg.com/grpc/-/grpc-1.9.1.tgz#18d7cfce153ebf952559e62dadbc8bbb85da1eac" + integrity sha512-WNW3MWMuAoo63AwIlzFE3T0KzzvNBSvOkg67Hm8WhvHNkXFBlIk1QyJRE3Ocm0O5eIwS7JU8Ssota53QR1zllg== dependencies: lodash "^4.15.0" nan "^2.0.0" @@ -1224,18 +1430,22 @@ grpc@^1.9.0: handle-thing@^1.2.5: version "1.2.5" resolved "https://registry.yarnpkg.com/handle-thing/-/handle-thing-1.2.5.tgz#fd7aad726bf1a5fd16dfc29b2f7a6601d27139c4" + integrity sha1-/Xqtcmvxpf0W38KbL3pmAdJxOcQ= har-schema@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-1.0.5.tgz#d263135f43307c02c602afc8fe95970c0151369e" + integrity sha1-0mMTX0MwfALGAq/I/pWXDAFRNp4= har-schema@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92" + integrity sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI= har-validator@~2.0.6: version "2.0.6" resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-2.0.6.tgz#cdcbc08188265ad119b6a5a7c8ab70eecfb5d27d" + integrity sha1-zcvAgYgmWtEZtqWnyKtw7s+10n0= dependencies: chalk "^1.1.1" commander "^2.9.0" @@ -1245,6 +1455,7 @@ har-validator@~2.0.6: har-validator@~4.2.1: version "4.2.1" resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-4.2.1.tgz#33481d0f1bbff600dd203d75812a6a5fba002e2a" + integrity sha1-M0gdDxu/9gDdID11gSpqX7oALio= dependencies: ajv "^4.9.1" har-schema "^1.0.5" @@ -1252,6 +1463,7 @@ har-validator@~4.2.1: har-validator@~5.0.3: version "5.0.3" resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-5.0.3.tgz#ba402c266194f15956ef15e0fcf242993f6a7dfd" + integrity sha1-ukAsJmGU8VlW7xXg/PJCmT9qff0= dependencies: ajv "^5.1.0" har-schema "^2.0.0" @@ -1259,30 +1471,36 @@ har-validator@~5.0.3: has-ansi@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91" + integrity sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE= dependencies: ansi-regex "^2.0.0" has-flag@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-2.0.0.tgz#e8207af1cc7b30d446cc70b734b5e8be18f88d51" + integrity sha1-6CB68cx7MNRGzHC3NLXovhj4jVE= has-symbol-support-x@^1.4.1: version "1.4.1" resolved "https://registry.yarnpkg.com/has-symbol-support-x/-/has-symbol-support-x-1.4.1.tgz#66ec2e377e0c7d7ccedb07a3a84d77510ff1bc4c" + integrity sha512-JkaetveU7hFbqnAC1EV1sF4rlojU2D4Usc5CmS69l6NfmPDnpnFUegzFg33eDkkpNCxZ0mQp65HwUDrNFS/8MA== has-to-string-tag-x@^1.2.0: version "1.4.1" resolved "https://registry.yarnpkg.com/has-to-string-tag-x/-/has-to-string-tag-x-1.4.1.tgz#a045ab383d7b4b2012a00148ab0aa5f290044d4d" + integrity sha512-vdbKfmw+3LoOYVr+mtxHaX5a96+0f3DljYd8JOqvOLsf5mw2Otda2qCDT9qRqLAhrjyQ0h7ual5nOiASpsGNFw== dependencies: has-symbol-support-x "^1.4.1" has-unicode@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" + integrity sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk= hawk@3.1.3, hawk@~3.1.3: version "3.1.3" resolved "https://registry.yarnpkg.com/hawk/-/hawk-3.1.3.tgz#078444bd7c1640b0fe540d2c9b73d59678e8e1c4" + integrity sha1-B4REvXwWQLD+VA0sm3PVlnjo4cQ= dependencies: boom "2.x.x" cryptiles "2.x.x" @@ -1292,6 +1510,7 @@ hawk@3.1.3, hawk@~3.1.3: hawk@~6.0.2: version "6.0.2" resolved "https://registry.yarnpkg.com/hawk/-/hawk-6.0.2.tgz#af4d914eb065f9b5ce4d9d11c1cb2126eecc3038" + integrity sha512-miowhl2+U7Qle4vdLqDdPt9m09K6yZhkLDTWGoUiUzrQCn+mHHSmfJgAyGaLRZbPmTqfFFjRV1QWCW0VWUJBbQ== dependencies: boom "4.x.x" cryptiles "3.x.x" @@ -1301,10 +1520,12 @@ hawk@~6.0.2: he@1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/he/-/he-1.1.1.tgz#93410fd21b009735151f8868c2f271f3427e23fd" + integrity sha1-k0EP0hsAlzUVH4howvJx80J+I/0= help-me@^1.0.1: version "1.1.0" resolved "https://registry.yarnpkg.com/help-me/-/help-me-1.1.0.tgz#8f2d508d0600b4a456da2f086556e7e5c056a3c6" + integrity sha1-jy1QjQYAtKRW2i8IZVbn5cBWo8Y= dependencies: callback-stream "^1.0.2" glob-stream "^6.1.0" @@ -1314,14 +1535,17 @@ help-me@^1.0.1: hoek@2.x.x: version "2.16.3" resolved "https://registry.yarnpkg.com/hoek/-/hoek-2.16.3.tgz#20bb7403d3cea398e91dc4710a8ff1b8274a25ed" + integrity sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0= hoek@4.x.x: version "4.2.0" resolved "https://registry.yarnpkg.com/hoek/-/hoek-4.2.0.tgz#72d9d0754f7fe25ca2d01ad8f8f9a9449a89526d" + integrity sha512-v0XCLxICi9nPfYrS9RL8HbYnXi9obYAeLbSP00BmnZwCK9+Ih9WOjoZ8YoHCoav2csqn4FOz4Orldsy2dmDwmQ== honeybadger@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/honeybadger/-/honeybadger-1.2.1.tgz#ad54b4ebf07ad41038cc9b4bb4a753c11317acb4" + integrity sha1-rVS06/B61BA4zJtLtKdTwRMXrLQ= dependencies: request "~2.79.0" stack-trace "~0.0.9" @@ -1329,10 +1553,12 @@ honeybadger@^1.2.1: hooks-fixed@2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/hooks-fixed/-/hooks-fixed-2.0.2.tgz#20076daa07e77d8a6106883ce3f1722e051140b0" + integrity sha512-YurCM4gQSetcrhwEtpQHhQ4M7Zo7poNGqY4kQGeBS6eZtOcT3tnNs01ThFa0jYBByAiYt1MjMjP/YApG0EnAvQ== hpack.js@^2.1.6: version "2.1.6" resolved "https://registry.yarnpkg.com/hpack.js/-/hpack.js-2.1.6.tgz#87774c0949e513f42e84575b3c45681fade2a0b2" + integrity sha1-h3dMCUnlE/QuhFdbPEVoH63ioLI= dependencies: inherits "^2.0.1" obuf "^1.0.0" @@ -1342,6 +1568,7 @@ hpack.js@^2.1.6: htmlparser2@^3.9.1: version "3.9.2" resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-3.9.2.tgz#1bdf87acca0f3f9e53fa4fcceb0f4b4cbb00b338" + integrity sha1-G9+HrMoPP55T+k/M6w9LTLsAszg= dependencies: domelementtype "^1.3.0" domhandler "^2.3.0" @@ -1353,14 +1580,17 @@ htmlparser2@^3.9.1: http-cache-semantics@3.8.1: version "3.8.1" resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-3.8.1.tgz#39b0e16add9b605bf0a9ef3d9daaf4843b4cacd2" + integrity sha512-5ai2iksyV8ZXmnZhHH4rWPoxxistEexSi5936zIQ1bnNTW5VnA85B6P/VpXiRM017IgRvb2kKo1a//y+0wSp3w== http-deceiver@^1.2.7: version "1.2.7" resolved "https://registry.yarnpkg.com/http-deceiver/-/http-deceiver-1.2.7.tgz#fa7168944ab9a519d337cb0bec7284dc3e723d87" + integrity sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc= http-signature@^1.0.0, http-signature@~1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1" + integrity sha1-muzZJRFHcvPZW2WmCruPfBj7rOE= dependencies: assert-plus "^1.0.0" jsprim "^1.2.2" @@ -1369,6 +1599,7 @@ http-signature@^1.0.0, http-signature@~1.2.0: http-signature@~1.1.0: version "1.1.1" resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.1.1.tgz#df72e267066cd0ac67fb76adf8e134a8fbcf91bf" + integrity sha1-33LiZwZs0Kxn+3at+OE0qPvPkb8= dependencies: assert-plus "^0.2.0" jsprim "^1.2.2" @@ -1377,22 +1608,27 @@ http-signature@~1.1.0: iconv-lite@^0.4.17: version "0.4.19" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.19.tgz#f7468f60135f5e5dad3399c0a81be9a1603a082b" + integrity sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ== iconv-lite@~0.4.13: version "0.4.18" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.18.tgz#23d8656b16aae6742ac29732ea8f0336a4789cf2" + integrity sha512-sr1ZQph3UwHTR0XftSbK85OvBbxe/abLGzEnPENCQwmHf7sck8Oyu4ob3LgBxWWxRoM+QszeUyl7jbqapu2TqA== ignore@^3.3.3: version "3.3.7" resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.7.tgz#612289bfb3c220e186a58118618d5be8c1bab021" + integrity sha512-YGG3ejvBNHRqu0559EOxxNFihD0AjpvHlC/pdGKd3X3ofe+CoJkYazwNJYTNebqpPKN+VVQbh4ZFn1DivMNuHA== imurmurhash@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" + integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= inflight@^1.0.4: version "1.0.6" resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" + integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= dependencies: once "^1.3.0" wrappy "1" @@ -1400,14 +1636,17 @@ inflight@^1.0.4: inherits@2, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.0, inherits@~2.0.1, inherits@~2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" + integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4= ini@~1.3.0: version "1.3.5" resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927" + integrity sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw== inquirer@^3.0.6: version "3.3.0" resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-3.3.0.tgz#9dd2f2ad765dcab1ff0443b491442a20ba227dc9" + integrity sha512-h+xtnyk4EwKvFWHrUYsWErEVR+igKtLdchu+o0Z1RL7VU/jVMFbYir2bp6bAj8efFNxWqHX0dIss6fJQ+/+qeQ== dependencies: ansi-escapes "^3.0.0" chalk "^2.0.0" @@ -1427,6 +1666,7 @@ inquirer@^3.0.6: into-stream@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/into-stream/-/into-stream-3.1.0.tgz#96fb0a936c12babd6ff1752a17d05616abd094c6" + integrity sha1-lvsKk2wSur1v8XUqF9BWFqvQlMY= dependencies: from2 "^2.1.1" p-is-promise "^1.1.0" @@ -1434,10 +1674,12 @@ into-stream@^3.1.0: invert-kv@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-1.0.0.tgz#104a8e4aaca6d3d8cd157a8ef8bfab2d7a3ffdb6" + integrity sha1-EEqOSqym09jNFXqO+L+rLXo//bY= is-absolute@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-absolute/-/is-absolute-1.0.0.tgz#395e1ae84b11f26ad1795e73c17378e48a301576" + integrity sha512-dOWoqflvcydARa360Gvv18DZ/gRuHKi2NU/wU5X1ZFzdYfH29nkiNZsF3mp4OJ3H4yo9Mx8A/uAGNzpzPN3yBA== dependencies: is-relative "^1.0.0" is-windows "^1.0.1" @@ -1445,26 +1687,31 @@ is-absolute@^1.0.0: is-extglob@^2.1.0: version "2.1.1" resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" + integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= is-fullwidth-code-point@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb" + integrity sha1-754xOG8DGn8NZDr4L95QxFfvAMs= dependencies: number-is-nan "^1.0.0" is-fullwidth-code-point@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" + integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8= is-glob@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a" + integrity sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo= dependencies: is-extglob "^2.1.0" is-my-json-valid@^2.12.4: version "2.16.1" resolved "https://registry.yarnpkg.com/is-my-json-valid/-/is-my-json-valid-2.16.1.tgz#5a846777e2c2620d1e69104e5d3a03b1f6088f11" + integrity sha512-ochPsqWS1WXj8ZnMIV0vnNXooaMhp7cyL4FMSIPKTtnV0Ha/T19G2b9kkhcNsabV9bxYkze7/aLZJb/bYuFduQ== dependencies: generate-function "^2.0.0" generate-object-property "^1.1.0" @@ -1474,96 +1721,117 @@ is-my-json-valid@^2.12.4: is-negated-glob@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-negated-glob/-/is-negated-glob-1.0.0.tgz#6910bca5da8c95e784b5751b976cf5a10fee36d2" + integrity sha1-aRC8pdqMleeEtXUbl2z1oQ/uNtI= is-object@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/is-object/-/is-object-1.0.1.tgz#8952688c5ec2ffd6b03ecc85e769e02903083470" + integrity sha1-iVJojF7C/9awPsyF52ngKQMINHA= is-path-cwd@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-1.0.0.tgz#d225ec23132e89edd38fda767472e62e65f1106d" + integrity sha1-0iXsIxMuie3Tj9p2dHLmLmXxEG0= is-path-in-cwd@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-path-in-cwd/-/is-path-in-cwd-1.0.0.tgz#6477582b8214d602346094567003be8a9eac04dc" + integrity sha1-ZHdYK4IU1gI0YJRWcAO+ip6sBNw= dependencies: is-path-inside "^1.0.0" is-path-inside@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-1.0.1.tgz#8ef5b7de50437a3fdca6b4e865ef7aa55cb48036" + integrity sha1-jvW33lBDej/cprToZe96pVy0gDY= dependencies: path-is-inside "^1.0.1" is-plain-obj@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" + integrity sha1-caUMhCnfync8kqOQpKA7OfzVHT4= is-promise@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.1.0.tgz#79a2a9ece7f096e80f36d2b2f3bc16c1ff4bf3fa" + integrity sha1-eaKp7OfwlugPNtKy87wWwf9L8/o= is-property@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/is-property/-/is-property-1.0.2.tgz#57fe1c4e48474edd65b09911f26b1cd4095dda84" + integrity sha1-V/4cTkhHTt1lsJkR8msc1Ald2oQ= is-regexp@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-regexp/-/is-regexp-1.0.0.tgz#fd2d883545c46bac5a633e7b9a09e87fa2cb5069" + integrity sha1-/S2INUXEa6xaYz57mgnof6LLUGk= is-relative@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-relative/-/is-relative-1.0.0.tgz#a1bb6935ce8c5dba1e8b9754b9b2dcc020e2260d" + integrity sha512-Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA== dependencies: is-unc-path "^1.0.0" is-resolvable@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/is-resolvable/-/is-resolvable-1.1.0.tgz#fb18f87ce1feb925169c9a407c19318a3206ed88" + integrity sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg== is-retry-allowed@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/is-retry-allowed/-/is-retry-allowed-1.1.0.tgz#11a060568b67339444033d0125a61a20d564fb34" + integrity sha1-EaBgVotnM5REAz0BJaYaINVk+zQ= is-supported-regexp-flag@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-supported-regexp-flag/-/is-supported-regexp-flag-1.0.0.tgz#8b520c85fae7a253382d4b02652e045576e13bb8" + integrity sha1-i1IMhfrnolM4LUsCZS4EVXbhO7g= is-typedarray@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" + integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo= is-unc-path@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-unc-path/-/is-unc-path-1.0.0.tgz#d731e8898ed090a12c352ad2eaed5095ad322c9d" + integrity sha512-mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ== dependencies: unc-path-regex "^0.1.2" is-windows@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.1.tgz#310db70f742d259a16a369202b51af84233310d9" + integrity sha1-MQ23D3QtJZoWo2kgK1GvhCMzENk= isarray@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" + integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= isemail@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/isemail/-/isemail-3.1.0.tgz#d15156d67529d48241bc0e644df28281e21dd458" + integrity sha512-Ke15MBbbhyIhZzWheiWuRlTO81tTH4RQvrbJFpVzJce8oyVrCVSDdrcw4TcyMsaS/fMGJSbU3lTsqCGDKwrzww== dependencies: punycode "2.x.x" isexe@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" + integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= isstream@~0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" + integrity sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo= isurl@^1.0.0-alpha5: version "1.0.0" resolved "https://registry.yarnpkg.com/isurl/-/isurl-1.0.0.tgz#b27f4f49f3cdaa3ea44a0a5b7f3462e6edc39d67" + integrity sha512-1P/yWsxPlDtn7QeRD+ULKQPaIaN6yF368GZ2vDfv0AL0NwpStafjWCDDdn0k8wgFMWpVAqG7oJhxHnlud42i9w== dependencies: has-to-string-tag-x "^1.2.0" is-object "^1.0.1" @@ -1571,6 +1839,7 @@ isurl@^1.0.0-alpha5: jison-lex@0.2.x: version "0.2.1" resolved "https://registry.yarnpkg.com/jison-lex/-/jison-lex-0.2.1.tgz#ac4b815e8cce5132eb12b5dfcfe8d707b8844dfe" + integrity sha1-rEuBXozOUTLrErXfz+jXB7iETf4= dependencies: lex-parser "0.1.x" nomnom "1.5.2" @@ -1578,6 +1847,7 @@ jison-lex@0.2.x: jison@0.4.13: version "0.4.13" resolved "https://registry.yarnpkg.com/jison/-/jison-0.4.13.tgz#9041707d62241367f58834532b9f19c2c36fac78" + integrity sha1-kEFwfWIkE2f1iDRTK58ZwsNvrHg= dependencies: JSONSelect "0.4.0" cjson "~0.2.1" @@ -1591,10 +1861,12 @@ jison@0.4.13: js-tokens@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b" + integrity sha1-mGbfOVECEw449/mWvOtlRDIJwls= js-yaml@^3.9.1: version "3.10.0" resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.10.0.tgz#2e78441646bd4682e963f22b6e92823c309c62dc" + integrity sha512-O2v52ffjLa9VeM43J4XocZE//WT9N0IiwDa3KSHH7Tu8CtH+1qM8SIZvnsTh6v+4yFy5KUY3BHUVwjpfAWsjIA== dependencies: argparse "^1.0.7" esprima "^4.0.0" @@ -1602,44 +1874,54 @@ js-yaml@^3.9.1: jsbn@~0.1.0: version "0.1.1" resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" + integrity sha1-peZUwuWi3rXyAdls77yoDA7y9RM= json-buffer@3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.0.tgz#5b1f397afc75d677bde8bcfc0e47e1f9a3d9a898" + integrity sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg= json-schema-traverse@^0.3.0: version "0.3.1" resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz#349a6d44c53a51de89b40805c5d5e59b417d3340" + integrity sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A= json-schema@0.2.3: version "0.2.3" resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13" + integrity sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM= json-stable-stringify-without-jsonify@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" + integrity sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE= json-stable-stringify@^1.0.0, json-stable-stringify@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz#9a759d39c5f2ff503fd5300646ed445f88c4f9af" + integrity sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8= dependencies: jsonify "~0.0.0" json-stringify-safe@~5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" + integrity sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus= json5@0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/json5/-/json5-0.4.0.tgz#054352e4c4c80c86c0923877d449de176a732c8d" + integrity sha1-BUNS5MTIDIbAkjh31EneF2pzLI0= jsonify@~0.0.0: version "0.0.0" resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.0.tgz#2c74b6ee41d93ca51b7b5aaee8f503631d252a73" + integrity sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM= jsonpath@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/jsonpath/-/jsonpath-1.0.0.tgz#45cd9d4c4d0d6825d90bd7e40f83f1182b13dd07" + integrity sha1-Rc2dTE0NaCXZC9fkD4PxGCsT3Qc= dependencies: esprima "1.2.2" jison "0.4.13" @@ -1649,10 +1931,12 @@ jsonpath@^1.0.0: jsonpointer@^4.0.0: version "4.0.1" resolved "https://registry.yarnpkg.com/jsonpointer/-/jsonpointer-4.0.1.tgz#4fd92cb34e0e9db3c89c8622ecf51f9b978c6cb9" + integrity sha1-T9kss04OnbPInIYi7PUfm5eMbLk= jsonwebtoken@^8.1.0: version "8.1.1" resolved "https://registry.yarnpkg.com/jsonwebtoken/-/jsonwebtoken-8.1.1.tgz#b04d8bb2ad847bc93238c3c92170ffdbdd1cb2ea" + integrity sha512-+ijVOtfLMlCII8LJkvabaKX3+8tGrGjiCTfzoed2D1b/ebKTO1hIYBQUJHbd9dJ9Fa4kH+dhYEd1qDwyzDLUUw== dependencies: jws "^3.1.4" lodash.includes "^4.3.0" @@ -1668,6 +1952,7 @@ jsonwebtoken@^8.1.0: jsprim@^1.2.2: version "1.4.1" resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.1.tgz#313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2" + integrity sha1-MT5mvB5cwG5Di8G3SZwuXFastqI= dependencies: assert-plus "1.0.0" extsprintf "1.3.0" @@ -1677,6 +1962,7 @@ jsprim@^1.2.2: jwa@^1.1.4: version "1.1.5" resolved "https://registry.yarnpkg.com/jwa/-/jwa-1.1.5.tgz#a0552ce0220742cd52e153774a32905c30e756e5" + integrity sha1-oFUs4CIHQs1S4VN3SjKQXDDnVuU= dependencies: base64url "2.0.0" buffer-equal-constant-time "1.0.1" @@ -1686,6 +1972,7 @@ jwa@^1.1.4: jws@^3.1.4: version "3.1.4" resolved "https://registry.yarnpkg.com/jws/-/jws-3.1.4.tgz#f9e8b9338e8a847277d6444b1464f61880e050a2" + integrity sha1-+ei5M46KhHJ31kRLFGT2GIDgUKI= dependencies: base64url "^2.0.0" jwa "^1.1.4" @@ -1694,26 +1981,31 @@ jws@^3.1.4: kareem@1.5.0: version "1.5.0" resolved "https://registry.yarnpkg.com/kareem/-/kareem-1.5.0.tgz#e3e4101d9dcfde299769daf4b4db64d895d17448" + integrity sha1-4+QQHZ3P3imXadr0tNtk2JXRdEg= keyv@3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/keyv/-/keyv-3.0.0.tgz#44923ba39e68b12a7cec7df6c3268c031f2ef373" + integrity sha512-eguHnq22OE3uVoSYG0LVWNP+4ppamWr9+zWBe1bsNcovIMy6huUJFPgy4mGwCd/rnl3vOLGW1MTlu4c57CT1xA== dependencies: json-buffer "3.0.0" lcid@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/lcid/-/lcid-1.0.0.tgz#308accafa0bc483a3867b4b6f2b9506251d1b835" + integrity sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU= dependencies: invert-kv "^1.0.0" leven@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/leven/-/leven-1.0.2.tgz#9144b6eebca5f1d0680169f1a6770dcea60b75c3" + integrity sha1-kUS27ryl8dBoAWnxpncNzqYLdcM= levn@^0.3.0, levn@~0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee" + integrity sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4= dependencies: prelude-ls "~1.1.2" type-check "~0.3.2" @@ -1721,62 +2013,77 @@ levn@^0.3.0, levn@~0.3.0: lex-parser@0.1.x, lex-parser@~0.1.3: version "0.1.4" resolved "https://registry.yarnpkg.com/lex-parser/-/lex-parser-0.1.4.tgz#64c4f025f17fd53bfb45763faeb16f015a747550" + integrity sha1-ZMTwJfF/1Tv7RXY/rrFvAVp0dVA= lodash.get@4.4.2, lodash.get@~4.4.2: version "4.4.2" resolved "https://registry.yarnpkg.com/lodash.get/-/lodash.get-4.4.2.tgz#2d177f652fa31e939b4438d5341499dfa3825e99" + integrity sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk= lodash.includes@^4.3.0: version "4.3.0" resolved "https://registry.yarnpkg.com/lodash.includes/-/lodash.includes-4.3.0.tgz#60bb98a87cb923c68ca1e51325483314849f553f" + integrity sha1-YLuYqHy5I8aMoeUTJUgzFISfVT8= lodash.isboolean@^3.0.3: version "3.0.3" resolved "https://registry.yarnpkg.com/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz#6c2e171db2a257cd96802fd43b01b20d5f5870f6" + integrity sha1-bC4XHbKiV82WgC/UOwGyDV9YcPY= lodash.isequal@^4.5.0: version "4.5.0" resolved "https://registry.yarnpkg.com/lodash.isequal/-/lodash.isequal-4.5.0.tgz#415c4478f2bcc30120c22ce10ed3226f7d3e18e0" + integrity sha1-QVxEePK8wwEgwizhDtMib30+GOA= lodash.isinteger@^4.0.4: version "4.0.4" resolved "https://registry.yarnpkg.com/lodash.isinteger/-/lodash.isinteger-4.0.4.tgz#619c0af3d03f8b04c31f5882840b77b11cd68343" + integrity sha1-YZwK89A/iwTDH1iChAt3sRzWg0M= lodash.isnumber@^3.0.3: version "3.0.3" resolved "https://registry.yarnpkg.com/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz#3ce76810c5928d03352301ac287317f11c0b1ffc" + integrity sha1-POdoEMWSjQM1IwGsKHMX8RwLH/w= lodash.isplainobject@^4.0.6: version "4.0.6" resolved "https://registry.yarnpkg.com/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz#7c526a52d89b45c45cc690b88163be0497f550cb" + integrity sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs= lodash.isstring@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/lodash.isstring/-/lodash.isstring-4.0.1.tgz#d527dfb5456eca7cc9bb95d5daeaf88ba54a5451" + integrity sha1-1SfftUVuynzJu5XV2ur4i6VKVFE= lodash.once@^4.0.0: version "4.1.1" resolved "https://registry.yarnpkg.com/lodash.once/-/lodash.once-4.1.1.tgz#0dd3971213c7c56df880977d504c88fb471a97ac" + integrity sha1-DdOXEhPHxW34gJd9UEyI+0cal6w= lodash@^4.14.0, lodash@^4.17.4, lodash@^4.2.1, lodash@^4.3.0: version "4.17.4" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae" + integrity sha1-eCA6TRwyiuHYbcpkYONptX9AVa4= lodash@^4.15.0: version "4.17.5" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.5.tgz#99a92d65c0272debe8c96b6057bc8fbfa3bed511" + integrity sha512-svL3uiZf1RwhH+cWrfZn3A4+U58wbP0tGVTLQPbjplZxZ8ROD9VLuNgsRniTlLe7OlSqR79RUehXgpBW/s0IQw== long@~3: version "3.2.0" resolved "https://registry.yarnpkg.com/long/-/long-3.2.0.tgz#d821b7138ca1cb581c172990ef14db200b5c474b" + integrity sha1-2CG3E4yhy1gcFymQ7xTbIAtcR0s= lowercase-keys@1.0.0, lowercase-keys@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-1.0.0.tgz#4e3366b39e7f5457e35f1324bdf6f88d0bfc7306" + integrity sha1-TjNms55/VFfjXxMkvfb4jQv8cwY= lru-cache@^4.0.1: version "4.1.1" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.1.tgz#622e32e82488b49279114a4f9ecf45e7cd6bba55" + integrity sha512-q4spe4KTfsAS1SUHLO0wz8Qiyf1+vMIAgpRYioFYDMNqKfHQbg+AVDH3i4fvpl71/P1L0dBl+fQi+P37UYf0ew== dependencies: pseudomap "^1.0.2" yallist "^2.1.2" @@ -1784,34 +2091,41 @@ lru-cache@^4.0.1: millify@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/millify/-/millify-2.0.1.tgz#3cfde496b23904b357c620ae71409ffd8eafdd02" + integrity sha1-PP3klrI5BLNXxiCucUCf/Y6v3QI= mime-db@~1.30.0: version "1.30.0" resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.30.0.tgz#74c643da2dd9d6a45399963465b26d5ca7d71f01" + integrity sha1-dMZD2i3Z1qRTmZY0ZbJtXKfXHwE= mime-db@~1.33.0: version "1.33.0" resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.33.0.tgz#a3492050a5cb9b63450541e39d9788d2272783db" + integrity sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ== mime-types@^2.1.12, mime-types@~2.1.7: version "2.1.18" resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.18.tgz#6f323f60a83d11146f831ff11fd66e2fe5503bb8" + integrity sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ== dependencies: mime-db "~1.33.0" mime-types@~2.1.17: version "2.1.17" resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.17.tgz#09d7a393f03e995a79f8af857b70a9e0ab16557a" + integrity sha1-Cdejk/A+mVp5+K+Fe3Cp4KsWVXo= dependencies: mime-db "~1.30.0" mime@^1.2.11: version "1.6.0" resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" + integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== mimelib@^0.3.1: version "0.3.1" resolved "https://registry.yarnpkg.com/mimelib/-/mimelib-0.3.1.tgz#787add2415d827acb3af6ec4bca1ea9596418853" + integrity sha1-eHrdJBXYJ6yzr27EvKHqlZZBiFM= dependencies: addressparser "~1.0.1" encoding "~0.1.12" @@ -1819,38 +2133,46 @@ mimelib@^0.3.1: mimic-fn@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.1.0.tgz#e667783d92e89dbd342818b5230b9d62a672ad18" + integrity sha1-5md4PZLonb00KBi1IwudYqZyrRg= mimic-response@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-1.0.0.tgz#df3d3652a73fded6b9b0b24146e6fd052353458e" + integrity sha1-3z02Uqc/3ta5sLJBRub9BSNTRY4= minimalistic-assert@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.0.tgz#702be2dda6b37f4836bcb3f5db56641b64a1d3d3" + integrity sha1-cCvi3aazf0g2vLP121ZkG2Sh09M= "minimatch@2 || 3", minimatch@^3.0.0, minimatch@^3.0.2, minimatch@^3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" + integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== dependencies: brace-expansion "^1.1.7" minimist@0.0.8: version "0.0.8" resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" + integrity sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0= minimist@^1.1.0, minimist@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" + integrity sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ= mkdirp@0.5.1, "mkdirp@>=0.5 0", mkdirp@^0.5.1, mkdirp@~0.5.1: version "0.5.1" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" + integrity sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM= dependencies: minimist "0.0.8" mocha@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/mocha/-/mocha-5.0.0.tgz#cccac988b0bc5477119cba0e43de7af6d6ad8f4e" + integrity sha512-ukB2dF+u4aeJjc6IGtPNnJXfeby5d4ZqySlIBT0OEyva/DrMjVm5HkQxKnHDLKEfEQBsEnwTg9HHhtPHJdTd8w== dependencies: browser-stdout "1.3.0" commander "2.11.0" @@ -1866,14 +2188,17 @@ mocha@^5.0.0: moment@^2.10.6: version "2.19.3" resolved "https://registry.yarnpkg.com/moment/-/moment-2.19.3.tgz#bdb99d270d6d7fda78cc0fbace855e27fe7da69f" + integrity sha1-vbmdJw1tf9p4zA+6zoVeJ/59pp8= moment@^2.18.1: version "2.20.1" resolved "https://registry.yarnpkg.com/moment/-/moment-2.20.1.tgz#d6eb1a46cbcc14a2b2f9434112c1ff8907f313fd" + integrity sha512-Yh9y73JRljxW5QxN08Fner68eFLxM5ynNOAw2LbIB1YAGeQzZT8QFSUvkAz609Zf+IHhhaUxqZK8dG3W/+HEvg== mongodb-core@2.1.18: version "2.1.18" resolved "https://registry.yarnpkg.com/mongodb-core/-/mongodb-core-2.1.18.tgz#4c46139bdf3a1f032ded91db49f38eec01659050" + integrity sha1-TEYTm986HwMt7ZHbSfOO7AFlkFA= dependencies: bson "~1.0.4" require_optional "~1.0.0" @@ -1881,6 +2206,7 @@ mongodb-core@2.1.18: mongodb@2.2.34: version "2.2.34" resolved "https://registry.yarnpkg.com/mongodb/-/mongodb-2.2.34.tgz#a34f59bbeb61754aec432de72c3fe21526a44c1a" + integrity sha1-o09Zu+thdUrsQy3nLD/iFSakTBo= dependencies: es6-promise "3.2.1" mongodb-core "2.1.18" @@ -1889,12 +2215,14 @@ mongodb@2.2.34: mongoose-timestamp@^0.6: version "0.6.0" resolved "https://registry.yarnpkg.com/mongoose-timestamp/-/mongoose-timestamp-0.6.0.tgz#da54110ca8e6d4c2b9957a0366836c362ed272be" + integrity sha1-2lQRDKjm1MK5lXoDZoNsNi7Scr4= dependencies: defaults "^1.0.3" mongoose@^4.13.6: version "4.13.9" resolved "https://registry.yarnpkg.com/mongoose/-/mongoose-4.13.9.tgz#ca4d99aed6e36e87854c2295387e7ea17966cfe3" + integrity sha512-UGkSJR5iYHfHGlAyNNJS/mX5HoukDssQoy2pyJTpdyOXnxSw1ujYvMlxEuiIOQEWH2oZSAmHfjH+/igxG1MXLQ== dependencies: async "2.1.4" bson "~1.0.4" @@ -1913,14 +2241,17 @@ mongoose@^4.13.6: mpath@0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/mpath/-/mpath-0.3.0.tgz#7a58f789e9b5fd3c94520634157960f26bd5ef44" + integrity sha1-elj3iem1/TyUUgY0FXlg8mvV70Q= mpromise@0.5.5: version "0.5.5" resolved "https://registry.yarnpkg.com/mpromise/-/mpromise-0.5.5.tgz#f5b24259d763acc2257b0a0c8c6d866fd51732e6" + integrity sha1-9bJCWddjrMIlewoMjG2Gb9UXMuY= mqtt-packet@^5.4.0: version "5.4.0" resolved "https://registry.yarnpkg.com/mqtt-packet/-/mqtt-packet-5.4.0.tgz#387104c06aa68fbb9f8159d0c722dd5c3e45df22" + integrity sha512-ziN7uVysLdn7fYbOhEaKOhcZC3yIRTTakY4TFd2w+UvZIx9dPr8NCqbBYoC4WYDlzWHTn5EqR5x20pC+K24Ymg== dependencies: bl "^1.2.1" inherits "^2.0.3" @@ -1930,6 +2261,7 @@ mqtt-packet@^5.4.0: mqtt@^2.15.1: version "2.15.1" resolved "https://registry.yarnpkg.com/mqtt/-/mqtt-2.15.1.tgz#86fc34e387495df60cd0ccb75cd97743344a4b28" + integrity sha512-wcU1Ec/PqdgmWZ8InKd9298UlHbsL4ujnUdkkN1JIee0HI1Qe+JvZhO66qCYQKEH+U2XsJMcr9GncQPKUEfmRw== dependencies: commist "^1.0.0" concat-stream "^1.6.0" @@ -1948,6 +2280,7 @@ mqtt@^2.15.1: mquery@2.3.3: version "2.3.3" resolved "https://registry.yarnpkg.com/mquery/-/mquery-2.3.3.tgz#221412e5d4e7290ca5582dd16ea8f190a506b518" + integrity sha512-NC8L14kn+qxJbbJ1gbcEMDxF0sC3sv+1cbRReXXwVvowcwY1y9KoVZFq0ebwARibsadu8lx8nWGvm3V0Pf0ZWQ== dependencies: bluebird "3.5.0" debug "2.6.9" @@ -1957,22 +2290,27 @@ mquery@2.3.3: ms@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" + integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= ms@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.1.tgz#30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a" + integrity sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg== muri@1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/muri/-/muri-1.3.0.tgz#aeccf3db64c56aa7c5b34e00f95b7878527a4721" + integrity sha512-FiaFwKl864onHFFUV/a2szAl7X0fxVlSKNdhTf+BM8i8goEgYut8u5P9MqQqIYwvaMxjzVESsoEm/2kfkFH1rg== mute-stream@0.0.7: version "0.0.7" resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab" + integrity sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s= mv@~2: version "2.1.1" resolved "https://registry.yarnpkg.com/mv/-/mv-2.1.1.tgz#ae6ce0d6f6d5e0a4f7d893798d03c1ea9559b6a2" + integrity sha1-rmzg1vbV4KT32JN5jQPB6pVZtqI= dependencies: mkdirp "~0.5.1" ncp "~2.0.0" @@ -1981,30 +2319,37 @@ mv@~2: nan@2.6.2: version "2.6.2" resolved "https://registry.yarnpkg.com/nan/-/nan-2.6.2.tgz#e4ff34e6c95fdfb5aecc08de6596f43605a7db45" + integrity sha1-5P805slf37WuzAjeZZb0NgWn20U= nan@^2.0.0: version "2.9.2" resolved "https://registry.yarnpkg.com/nan/-/nan-2.9.2.tgz#f564d75f5f8f36a6d9456cca7a6c4fe488ab7866" + integrity sha512-ltW65co7f3PQWBDbqVvaU1WtFJUsNW7sWWm4HINhbMQIyVyzIeyZ8toX5TC5eeooE6piZoaEh4cZkueSKG3KYw== nan@^2.3.3: version "2.8.0" resolved "https://registry.yarnpkg.com/nan/-/nan-2.8.0.tgz#ed715f3fe9de02b57a5e6252d90a96675e1f085a" + integrity sha1-7XFfP+neArV6XmJS2QqWZ14fCFo= natural-compare@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" + integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc= ncp@~2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/ncp/-/ncp-2.0.0.tgz#195a21d6c46e361d2fb1281ba38b91e9df7bdbb3" + integrity sha1-GVoh1sRuNh0vsSgbo4uR6d9727M= negotiator@^0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.1.tgz#2b327184e8992101177b28563fb5e7102acd0ca9" + integrity sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk= node-pre-gyp@0.6.36: version "0.6.36" resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.6.36.tgz#db604112cb74e0d477554e9b505b17abddfab786" + integrity sha1-22BBEst04NR3VU6bUFsXq936t4Y= dependencies: mkdirp "^0.5.1" nopt "^4.0.1" @@ -2019,6 +2364,7 @@ node-pre-gyp@0.6.36: node-pre-gyp@^0.6.39: version "0.6.39" resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.6.39.tgz#c00e96860b23c0e1420ac7befc5044e1d78d8649" + integrity sha512-OsJV74qxnvz/AMGgcfZoDaeDXKD3oY3QVIbBmwszTFkRisTSXbMQyn4UWzUMOtA5SVhrBZOTp0wcoSBgfMfMmQ== dependencies: detect-libc "^1.0.2" hawk "3.1.3" @@ -2035,6 +2381,7 @@ node-pre-gyp@^0.6.39: nomnom@1.5.2: version "1.5.2" resolved "https://registry.yarnpkg.com/nomnom/-/nomnom-1.5.2.tgz#f4345448a853cfbd5c0d26320f2477ab0526fe2f" + integrity sha1-9DRUSKhTz71cDSYyDyR3qwUm/i8= dependencies: colors "0.5.x" underscore "1.1.x" @@ -2042,6 +2389,7 @@ nomnom@1.5.2: nopt@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.1.tgz#d0d4685afd5415193c8c7505602d0d17cd64474d" + integrity sha1-0NRoWv1UFRk8jHUFYC0NF81kR00= dependencies: abbrev "1" osenv "^0.1.4" @@ -2049,6 +2397,7 @@ nopt@^4.0.1: normalize-url@2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-2.0.1.tgz#835a9da1551fa26f70e92329069a23aa6574d7e6" + integrity sha512-D6MUW4K/VzoJ4rJ01JFKxDrtY1v9wrgzCX5f2qj/lzH1m/lW6MhUZFKerVsnyjOhOsYzI9Kqqak+10l4LvLpMw== dependencies: prepend-http "^2.0.0" query-string "^5.0.1" @@ -2057,6 +2406,7 @@ normalize-url@2.0.1: npmlog@^4.0.2: version "4.1.2" resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" + integrity sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg== dependencies: are-we-there-yet "~1.1.2" console-control-strings "~1.1.0" @@ -2066,40 +2416,48 @@ npmlog@^4.0.2: nth-check@~1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-1.0.1.tgz#9929acdf628fc2c41098deab82ac580cf149aae4" + integrity sha1-mSms32KPwsQQmN6rgqxYDPFJquQ= dependencies: boolbase "~1.0.0" number-is-nan@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" + integrity sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0= oauth-sign@~0.8.1, oauth-sign@~0.8.2: version "0.8.2" resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.8.2.tgz#46a6ab7f0aead8deae9ec0565780b7d4efeb9d43" + integrity sha1-Rqarfwrq2N6unsBWV4C31O/rnUM= object-assign@^4.0.1, object-assign@^4.1.0: version "4.1.1" resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" + integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= obuf@^1.0.0, obuf@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/obuf/-/obuf-1.1.1.tgz#104124b6c602c6796881a042541d36db43a5264e" + integrity sha1-EEEktsYCxnlogaBCVB0220OlJk4= once@^1.3.0, once@^1.3.1, once@^1.3.3, once@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" + integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= dependencies: wrappy "1" onetime@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/onetime/-/onetime-2.0.1.tgz#067428230fd67443b2794b22bba528b6867962d4" + integrity sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ= dependencies: mimic-fn "^1.0.0" optionator@^0.8.1, optionator@^0.8.2: version "0.8.2" resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.2.tgz#364c5e409d3f4d6301d6c0b4c05bba50180aeb64" + integrity sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q= dependencies: deep-is "~0.1.3" fast-levenshtein "~2.0.4" @@ -2111,30 +2469,36 @@ optionator@^0.8.1, optionator@^0.8.2: optjs@~3.2.2: version "3.2.2" resolved "https://registry.yarnpkg.com/optjs/-/optjs-3.2.2.tgz#69a6ce89c442a44403141ad2f9b370bd5bb6f4ee" + integrity sha1-aabOicRCpEQDFBrS+bNwvVu29O4= ordered-read-streams@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/ordered-read-streams/-/ordered-read-streams-1.0.1.tgz#77c0cb37c41525d64166d990ffad7ec6a0e1363e" + integrity sha1-d8DLN8QVJdZBZtmQ/61+xqDhNj4= dependencies: readable-stream "^2.0.1" os-homedir@1.0.2, os-homedir@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" + integrity sha1-/7xJiDNuDoM94MFox+8VISGqf7M= os-locale@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-1.4.0.tgz#20f9f17ae29ed345e8bde583b13d2009803c14d9" + integrity sha1-IPnxeuKe00XoveWDsT0gCYA8FNk= dependencies: lcid "^1.0.0" os-tmpdir@^1.0.0, os-tmpdir@~1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" + integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ= osenv@^0.1.4: version "0.1.5" resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.5.tgz#85cdfafaeb28e8677f416e287592b5f3f49ea410" + integrity sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g== dependencies: os-homedir "^1.0.0" os-tmpdir "^1.0.0" @@ -2142,96 +2506,118 @@ osenv@^0.1.4: p-cancelable@^0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/p-cancelable/-/p-cancelable-0.3.0.tgz#b9e123800bcebb7ac13a479be195b507b98d30fa" + integrity sha512-RVbZPLso8+jFeq1MfNvgXtCRED2raz/dKpacfTNxsx6pLEpEomM7gah6VeHSYV3+vo0OAi4MkArtQcWWXuQoyw== p-finally@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" + integrity sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4= p-is-promise@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/p-is-promise/-/p-is-promise-1.1.0.tgz#9c9456989e9f6588017b0434d56097675c3da05e" + integrity sha1-nJRWmJ6fZYgBewQ01WCXZ1w9oF4= p-timeout@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/p-timeout/-/p-timeout-2.0.1.tgz#d8dd1979595d2dc0139e1fe46b8b646cb3cdf038" + integrity sha512-88em58dDVB/KzPEx1X0N3LwFfYZPyDc4B6eF38M1rk9VTZMbxXXgjugz8mmwpS9Ox4BDZ+t6t3QP5+/gazweIA== dependencies: p-finally "^1.0.0" parse5@^3.0.1: version "3.0.2" resolved "https://registry.yarnpkg.com/parse5/-/parse5-3.0.2.tgz#05eff57f0ef4577fb144a79f8b9a967a6cc44510" + integrity sha1-Be/1fw70V3+xRKefi5qWemzERRA= dependencies: "@types/node" "^6.0.46" path-dirname@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/path-dirname/-/path-dirname-1.0.2.tgz#cc33d24d525e099a5388c0336c6e32b9160609e0" + integrity sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA= path-is-absolute@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" + integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= path-is-inside@^1.0.1, path-is-inside@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53" + integrity sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM= pathval@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/pathval/-/pathval-1.1.0.tgz#b942e6d4bde653005ef6b71361def8727d0645e0" + integrity sha1-uULm1L3mUwBe9rcTYd74cn0GReA= performance-now@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-0.2.0.tgz#33ef30c5c77d4ea21c5a53869d91b56d8f2555e5" + integrity sha1-M+8wxcd9TqIcWlOGnZG1bY8lVeU= performance-now@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" + integrity sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns= pify@^2.0.0: version "2.3.0" resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" + integrity sha1-7RQaasBDqEnqWISY59yosVMw6Qw= pify@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176" + integrity sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY= pinkie-promise@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa" + integrity sha1-ITXW36ejWMBprJsXh3YogihFD/o= dependencies: pinkie "^2.0.0" pinkie@^2.0.0: version "2.0.4" resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" + integrity sha1-clVrgM+g1IqXToDnckjoDtT3+HA= pluralize@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/pluralize/-/pluralize-7.0.0.tgz#298b89df8b93b0221dbf421ad2b1b1ea23fc6777" + integrity sha512-ARhBOdzS3e41FbkW/XWrTEtukqqLoK5+Z/4UeDaLuSW+39JPeFgs4gCGqsrJHVZX0fUrx//4OF0K1CUGwlIFow== prelude-ls@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" + integrity sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ= prepend-http@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-2.0.0.tgz#e92434bfa5ea8c19f41cdfd401d741a3c819d897" + integrity sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc= process-nextick-args@^1.0.7, process-nextick-args@~1.0.6: version "1.0.7" resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-1.0.7.tgz#150e20b756590ad3f91093f25a4f2ad8bff30ba3" + integrity sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M= process-nextick-args@~2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.0.tgz#a37d732f4271b4ab1ad070d35508e8290788ffaa" + integrity sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw== progress@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.0.tgz#8a1be366bf8fc23db2bd23f10c6fe920b4389d1f" + integrity sha1-ihvjZr+Pwj2yvSPxDG/pILQ4nR8= protobufjs@^5.0.0: version "5.0.2" resolved "https://registry.yarnpkg.com/protobufjs/-/protobufjs-5.0.2.tgz#59748d7dcf03d2db22c13da9feb024e16ab80c91" + integrity sha1-WXSNfc8D0tsiwT2p/rAk4Wq4DJE= dependencies: ascli "~1" bytebuffer "~5" @@ -2241,10 +2627,12 @@ protobufjs@^5.0.0: pseudomap@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" + integrity sha1-8FKijacOYYkX7wqKw0wa5aaChrM= pump@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/pump/-/pump-2.0.1.tgz#12399add6e4cf7526d973cbc8b5ce2e2908b3909" + integrity sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA== dependencies: end-of-stream "^1.1.0" once "^1.3.1" @@ -2252,6 +2640,7 @@ pump@^2.0.0: pumpify@^1.3.5: version "1.4.0" resolved "https://registry.yarnpkg.com/pumpify/-/pumpify-1.4.0.tgz#80b7c5df7e24153d03f0e7ac8a05a5d068bd07fb" + integrity sha512-2kmNR9ry+Pf45opRVirpNuIFotsxUGLaYqxIwuR77AYrYRMuFCz9eryHBS52L360O+NcR383CL4QYlMKPq4zYA== dependencies: duplexify "^3.5.3" inherits "^2.0.3" @@ -2260,30 +2649,37 @@ pumpify@^1.3.5: punycode@2.x.x: version "2.1.0" resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.0.tgz#5f863edc89b96db09074bad7947bf09056ca4e7d" + integrity sha1-X4Y+3Im5bbCQdLrXlHvwkFbKTn0= punycode@^1.4.1: version "1.4.1" resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" + integrity sha1-wNWmOycYgArY4esPpSachN1BhF4= q@1.x.x: version "1.5.0" resolved "https://registry.yarnpkg.com/q/-/q-1.5.0.tgz#dd01bac9d06d30e6f219aecb8253ee9ebdc308f1" + integrity sha1-3QG6ydBtMObyGa7LglPunr3DCPE= qs@^6.2.1, qs@~6.5.1: version "6.5.1" resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.1.tgz#349cdf6eef89ec45c12d7d5eb3fc0c870343a6d8" + integrity sha512-eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A== qs@~6.3.0: version "6.3.2" resolved "https://registry.yarnpkg.com/qs/-/qs-6.3.2.tgz#e75bd5f6e268122a2a0e0bda630b2550c166502c" + integrity sha1-51vV9uJoEioqDgvaYwslUMFmUCw= qs@~6.4.0: version "6.4.0" resolved "https://registry.yarnpkg.com/qs/-/qs-6.4.0.tgz#13e26d28ad6b0ffaa91312cd3bf708ed351e7233" + integrity sha1-E+JtKK1rD/qpExLNO/cI7TUecjM= query-string@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/query-string/-/query-string-5.0.1.tgz#6e2b86fe0e08aef682ecbe86e85834765402bd88" + integrity sha512-aM+MkQClojlNiKkO09tiN2Fv8jM/L7GWIjG2liWeKljlOdOPNWr+bW3KQ+w5V/uKprpezC7fAsAMsJtJ+2rLKA== dependencies: decode-uri-component "^0.2.0" object-assign "^4.1.0" @@ -2292,10 +2688,12 @@ query-string@^5.0.1: randomgeojson@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/randomgeojson/-/randomgeojson-1.0.0.tgz#2446f5a5cd88365365a10ebdda9fe76656fa6b1f" + integrity sha1-JEb1pc2INlNloQ692p/nZlb6ax8= rc@^1.1.7: version "1.2.5" resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.5.tgz#275cd687f6e3b36cc756baa26dfee80a790301fd" + integrity sha1-J1zWh/bjs2zHVrqibf7oCnkDAf0= dependencies: deep-extend "~0.4.0" ini "~1.3.0" @@ -2305,6 +2703,7 @@ rc@^1.1.7: readable-stream@2.2.7: version "2.2.7" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.2.7.tgz#07057acbe2467b22042d36f98c5ad507054e95b1" + integrity sha1-BwV6y+JGeyIELTb5jFrVBwVOlbE= dependencies: buffer-shims "~1.0.0" core-util-is "~1.0.0" @@ -2317,6 +2716,7 @@ readable-stream@2.2.7: "readable-stream@> 1.0.0 < 3.0.0", readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.5, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.2.9, readable-stream@^2.3.3: version "2.3.3" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.3.tgz#368f2512d79f9d46fdfc71349ae7878bbc1eb95c" + integrity sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ== dependencies: core-util-is "~1.0.0" inherits "~2.0.3" @@ -2329,6 +2729,7 @@ readable-stream@2.2.7: readable-stream@^2.0.6, readable-stream@^2.1.4: version "2.3.4" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.4.tgz#c946c3f47fa7d8eabc0b6150f4a12f69a4574071" + integrity sha512-vuYxeWYM+fde14+rajzqgeohAI7YoJcHE7kXDAc4Nk0EbuKnJfqtY9YtRkLo/tqkuF7MsBQRhPnPeyjYITp3ZQ== dependencies: core-util-is "~1.0.0" inherits "~2.0.3" @@ -2341,6 +2742,7 @@ readable-stream@^2.0.6, readable-stream@^2.1.4: readable-stream@~2.1.0: version "2.1.5" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.1.5.tgz#66fa8b720e1438b364681f2ad1a63c618448c9d0" + integrity sha1-ZvqLcg4UOLNkaB8q0aY8YYRIydA= dependencies: buffer-shims "^1.0.0" core-util-is "~1.0.0" @@ -2353,24 +2755,29 @@ readable-stream@~2.1.0: regexp-clone@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/regexp-clone/-/regexp-clone-0.0.1.tgz#a7c2e09891fdbf38fbb10d376fb73003e68ac589" + integrity sha1-p8LgmJH9vzj7sQ03b7cwA+aKxYk= reinterval@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/reinterval/-/reinterval-1.1.0.tgz#3361ecfa3ca6c18283380dd0bb9546f390f5ece7" + integrity sha1-M2Hs+jymwYKDOA3Qu5VG85D17Oc= remove-trailing-separator@^1.0.1: version "1.1.0" resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" + integrity sha1-wkvOKig62tW8P1jg1IJJuSN52O8= request-debug@0.x.x: version "0.2.0" resolved "https://registry.yarnpkg.com/request-debug/-/request-debug-0.2.0.tgz#fc054ec817181b04ca41a052c136f61c48abaf78" + integrity sha1-/AVOyBcYGwTKQaBSwTb2HEirr3g= dependencies: stringify-clone "^1.0.0" request@2.81.0, request@2.x.x: version "2.81.0" resolved "https://registry.yarnpkg.com/request/-/request-2.81.0.tgz#c6928946a0e06c5f8d6f8a9333469ffda46298a0" + integrity sha1-xpKJRqDgbF+Nb4qTM0af/aRimKA= dependencies: aws-sign2 "~0.6.0" aws4 "^1.2.1" @@ -2398,6 +2805,7 @@ request@2.81.0, request@2.x.x: request@^2.81.0: version "2.83.0" resolved "https://registry.yarnpkg.com/request/-/request-2.83.0.tgz#ca0b65da02ed62935887808e6f510381034e3356" + integrity sha512-lR3gD69osqm6EYLk9wB/G1W/laGWjzH90t1vEa2xuxHD5KUrSzp9pUSfTm+YC5Nxt2T8nMPEvKlhbQayU7bgFw== dependencies: aws-sign2 "~0.7.0" aws4 "^1.6.0" @@ -2425,6 +2833,7 @@ request@^2.81.0: request@~2.79.0: version "2.79.0" resolved "https://registry.yarnpkg.com/request/-/request-2.79.0.tgz#4dfe5bf6be8b8cdc37fcf93e04b65577722710de" + integrity sha1-Tf5b9r6LjNw3/Pk+BLZVd3InEN4= dependencies: aws-sign2 "~0.6.0" aws4 "^1.2.1" @@ -2450,6 +2859,7 @@ request@~2.79.0: require-uncached@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/require-uncached/-/require-uncached-1.0.3.tgz#4e0d56d6c9662fd31e43011c4b95aa49955421d3" + integrity sha1-Tg1W1slmL9MeQwEcS5WqSZVUIdM= dependencies: caller-path "^0.1.0" resolve-from "^1.0.0" @@ -2457,6 +2867,7 @@ require-uncached@^1.0.3: require_optional@~1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/require_optional/-/require_optional-1.0.1.tgz#4cf35a4247f64ca3df8c2ef208cc494b1ca8fc2e" + integrity sha512-qhM/y57enGWHAe3v/NcwML6a3/vfESLe/sGM2dII+gEO0BpKRUkWZow/tyloNqJyN6kXSl3RyyM8Ll5D/sJP8g== dependencies: resolve-from "^2.0.0" semver "^5.1.0" @@ -2464,20 +2875,24 @@ require_optional@~1.0.0: resolve-from@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-1.0.1.tgz#26cbfe935d1aeeeabb29bc3fe5aeb01e93d44226" + integrity sha1-Jsv+k10a7uq7Kbw/5a6wHpPUQiY= resolve-from@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-2.0.0.tgz#9480ab20e94ffa1d9e80a804c7ea147611966b57" + integrity sha1-lICrIOlP+h2egKgEx+oUdhGWa1c= responselike@1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/responselike/-/responselike-1.0.2.tgz#918720ef3b631c5642be068f15ade5a46f4ba1e7" + integrity sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec= dependencies: lowercase-keys "^1.0.0" restify-errors@^4.2.3: version "4.3.0" resolved "https://registry.yarnpkg.com/restify-errors/-/restify-errors-4.3.0.tgz#ec90f30934d7f3119135181dfc303e30be601abe" + integrity sha1-7JDzCTTX8xGRNRgd/DA+ML5gGr4= dependencies: assert-plus "^1.0.0" lodash "^4.2.1" @@ -2488,6 +2903,7 @@ restify-errors@^4.2.3: restify-errors@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/restify-errors/-/restify-errors-5.0.0.tgz#668717e100683eec6ce0d515f89ff1dbec254a8d" + integrity sha512-+vby9Kxf7qlzvbZSTIEGkIixkeHG+pVCl34dk6eKnL+ua4pCezpdLT/1/eabzPZb65ADrgoc04jeWrrF1E1pvQ== dependencies: assert-plus "^1.0.0" lodash "^4.2.1" @@ -2498,6 +2914,7 @@ restify-errors@^5.0.0: restify@^5.2.0: version "5.2.1" resolved "https://registry.yarnpkg.com/restify/-/restify-5.2.1.tgz#f04cdc1bcf763ec085b5e5a01610819b21d1f148" + integrity sha512-OZbqEvRm04Px+vXm3d31sI58HjN2qRaY6O6tA9LGRgyLZJ5+oW4qaLCdKddXfUX6MjtwAc+LLkDQmDbYUifLXA== dependencies: assert-plus "^1.0.0" bunyan "^1.8.1" @@ -2524,6 +2941,7 @@ restify@^5.2.0: restore-cursor@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-2.0.0.tgz#9f7ee287f82fd326d4fd162923d62129eee0dfaf" + integrity sha1-n37ih/gv0ybU/RYpI9YhKe7g368= dependencies: onetime "^2.0.0" signal-exit "^3.0.2" @@ -2531,112 +2949,135 @@ restore-cursor@^2.0.0: rimraf@2, rimraf@^2.2.8, rimraf@^2.5.1, rimraf@^2.6.1: version "2.6.2" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.2.tgz#2ed8150d24a16ea8651e6d6ef0f47c4158ce7a36" + integrity sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w== dependencies: glob "^7.0.5" rimraf@~2.4.0: version "2.4.5" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.4.5.tgz#ee710ce5d93a8fdb856fb5ea8ff0e2d75934b2da" + integrity sha1-7nEM5dk6j9uFb7Xqj/Di11k0sto= dependencies: glob "^6.0.1" run-async@^2.2.0: version "2.3.0" resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.3.0.tgz#0371ab4ae0bdd720d4166d7dfda64ff7a445a6c0" + integrity sha1-A3GrSuC91yDUFm19/aZP96RFpsA= dependencies: is-promise "^2.1.0" rx-lite-aggregates@^4.0.8: version "4.0.8" resolved "https://registry.yarnpkg.com/rx-lite-aggregates/-/rx-lite-aggregates-4.0.8.tgz#753b87a89a11c95467c4ac1626c4efc4e05c67be" + integrity sha1-dTuHqJoRyVRnxKwWJsTvxOBcZ74= dependencies: rx-lite "*" rx-lite@*, rx-lite@^4.0.8: version "4.0.8" resolved "https://registry.yarnpkg.com/rx-lite/-/rx-lite-4.0.8.tgz#0b1e11af8bc44836f04a6407e92da42467b79444" + integrity sha1-Cx4Rr4vESDbwSmQH6S2kJGe3lEQ= safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@~5.1.0, safe-buffer@~5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.1.tgz#893312af69b2123def71f57889001671eeb2c853" + integrity sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg== safe-json-stringify@^1.0.3, safe-json-stringify@~1: version "1.0.4" resolved "https://registry.yarnpkg.com/safe-json-stringify/-/safe-json-stringify-1.0.4.tgz#81a098f447e4bbc3ff3312a243521bc060ef5911" + integrity sha1-gaCY9Efku8P/MxKiQ1IbwGDvWRE= select-hose@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/select-hose/-/select-hose-2.0.0.tgz#625d8658f865af43ec962bfc376a37359a4994ca" + integrity sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo= semver@^5.0.1: version "5.4.1" resolved "https://registry.yarnpkg.com/semver/-/semver-5.4.1.tgz#e059c09d8571f0540823733433505d3a2f00b18e" + integrity sha512-WfG/X9+oATh81XtllIo/I8gOiY9EXRdv1cQdyykeXK17YcUW3EXUAi2To4pcH6nZtJPr7ZOpM5OMyWJZm+8Rsg== semver@^5.1.0, semver@^5.3.0: version "5.5.0" resolved "https://registry.yarnpkg.com/semver/-/semver-5.5.0.tgz#dc4bbc7a6ca9d916dee5d43516f0092b58f7b8ab" + integrity sha512-4SJ3dm0WAwWy/NVeioZh5AntkdJoWKxHxcmyP622fOkgHa4z3R0TdBJICINyaSDE6uNwVc8gZr+ZinwZAH4xIA== set-blocking@~2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" + integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc= shebang-command@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" + integrity sha1-RKrGW2lbAzmJaMOfNj/uXer98eo= dependencies: shebang-regex "^1.0.0" shebang-regex@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" + integrity sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM= signal-exit@^3.0.0, signal-exit@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" + integrity sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0= simple-statistics@^5.2.1: version "5.2.1" resolved "https://registry.yarnpkg.com/simple-statistics/-/simple-statistics-5.2.1.tgz#b1a93a336c02053e04273c7ee84606b33b907c46" + integrity sha512-3GoUxxnGznTByzfHWroolVvRQ9/OXISUKjJYcBioLRDnGX7oJSkepxmvUyBIBDZaU1WoWMEIa9WxCo/tz96bEQ== slice-ansi@1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-1.0.0.tgz#044f1a49d8842ff307aad6b505ed178bd950134d" + integrity sha512-POqxBK6Lb3q6s047D/XsDVNPnF9Dl8JSaqe9h9lURl0OdNqy/ujDrOiIHtsqXMGbWWTIomRzAMaTyawAU//Reg== dependencies: is-fullwidth-code-point "^2.0.0" sliced@0.0.5: version "0.0.5" resolved "https://registry.yarnpkg.com/sliced/-/sliced-0.0.5.tgz#5edc044ca4eb6f7816d50ba2fc63e25d8fe4707f" + integrity sha1-XtwETKTrb3gW1Qui/GPiXY/kcH8= sliced@1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/sliced/-/sliced-1.0.1.tgz#0b3a662b5d04c3177b1926bea82b03f837a2ef41" + integrity sha1-CzpmK10Ewxd7GSa+qCsD+Dei70E= sntp@1.x.x: version "1.0.9" resolved "https://registry.yarnpkg.com/sntp/-/sntp-1.0.9.tgz#6541184cc90aeea6c6e7b35e2659082443c66198" + integrity sha1-ZUEYTMkK7qbG57NeJlkIJEPGYZg= dependencies: hoek "2.x.x" sntp@2.x.x: version "2.1.0" resolved "https://registry.yarnpkg.com/sntp/-/sntp-2.1.0.tgz#2c6cec14fedc2222739caf9b5c3d85d1cc5a2cc8" + integrity sha512-FL1b58BDrqS3A11lJ0zEdnJ3UOKqVxawAkF3k7F0CVN7VQ34aZrV+G8BZ1WC9ZL7NyrwsW0oviwsWDgRuVYtJg== dependencies: hoek "4.x.x" sort-keys@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/sort-keys/-/sort-keys-2.0.0.tgz#658535584861ec97d730d6cf41822e1f56684128" + integrity sha1-ZYU1WEhh7JfXMNbPQYIuH1ZoQSg= dependencies: is-plain-obj "^1.0.0" "source-map@>= 0.1.2", source-map@~0.5.6: version "0.5.7" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" + integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w= spdy-transport@^2.0.18: version "2.0.20" resolved "https://registry.yarnpkg.com/spdy-transport/-/spdy-transport-2.0.20.tgz#735e72054c486b2354fe89e702256004a39ace4d" + integrity sha1-c15yBUxIayNU/onnAiVgBKOazk0= dependencies: debug "^2.6.8" detect-node "^2.0.3" @@ -2649,6 +3090,7 @@ spdy-transport@^2.0.18: spdy@^3.3.3: version "3.4.7" resolved "https://registry.yarnpkg.com/spdy/-/spdy-3.4.7.tgz#42ff41ece5cc0f99a3a6c28aabb73f5c3b03acbc" + integrity sha1-Qv9B7OXMD5mjpsKKq7c/XDsDrLw= dependencies: debug "^2.6.8" handle-thing "^1.2.5" @@ -2660,16 +3102,19 @@ spdy@^3.3.3: split2@^2.1.1: version "2.2.0" resolved "https://registry.yarnpkg.com/split2/-/split2-2.2.0.tgz#186b2575bcf83e85b7d18465756238ee4ee42493" + integrity sha512-RAb22TG39LhI31MbreBgIuKiIKhVsawfTgEGqKHTK87aG+ul/PB8Sqoi3I7kVdRWiCfrKxK3uo4/YUkpNvhPbw== dependencies: through2 "^2.0.2" sprintf-js@~1.0.2: version "1.0.3" resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" + integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= sshpk@^1.7.0: version "1.13.1" resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.13.1.tgz#512df6da6287144316dc4c18fe1cf1d940739be3" + integrity sha1-US322mKHFEMW3EwY/hzx2UBzm+M= dependencies: asn1 "~0.2.3" assert-plus "^1.0.0" @@ -2684,28 +3129,34 @@ sshpk@^1.7.0: stack-trace@~0.0.9: version "0.0.10" resolved "https://registry.yarnpkg.com/stack-trace/-/stack-trace-0.0.10.tgz#547c70b347e8d32b4e108ea1a2a159e5fdde19c0" + integrity sha1-VHxws0fo0ytOEI6hoqFZ5f3eGcA= static-eval@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/static-eval/-/static-eval-2.0.0.tgz#0e821f8926847def7b4b50cda5d55c04a9b13864" + integrity sha512-6flshd3F1Gwm+Ksxq463LtFd1liC77N/PX1FVVc3OzL3hAmo2fwHFbuArkcfi7s9rTNsLEhcRmXGFZhlgy40uw== dependencies: escodegen "^1.8.1" stream-shift@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.0.tgz#d5c752825e5367e786f78e18e445ea223a155952" + integrity sha1-1cdSgl5TZ+eG944Y5EXqIjoVWVI= stream-transform@^0.2.2: version "0.2.2" resolved "https://registry.yarnpkg.com/stream-transform/-/stream-transform-0.2.2.tgz#75867487f49528f8bf1d82499658753d02df7838" + integrity sha1-dYZ0h/SVKPi/HYJJllh1PQLfeDg= strict-uri-encode@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz#279b225df1d582b1f54e65addd4352e18faa0713" + integrity sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM= string-width@^1.0.1, string-width@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" + integrity sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M= dependencies: code-point-at "^1.0.0" is-fullwidth-code-point "^1.0.0" @@ -2714,6 +3165,7 @@ string-width@^1.0.1, string-width@^1.0.2: string-width@^2.1.0, string-width@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" + integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw== dependencies: is-fullwidth-code-point "^2.0.0" strip-ansi "^4.0.0" @@ -2721,62 +3173,74 @@ string-width@^2.1.0, string-width@^2.1.1: string_decoder@~0.10.x: version "0.10.31" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94" + integrity sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ= string_decoder@~1.0.0, string_decoder@~1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.0.3.tgz#0fc67d7c141825de94282dd536bec6b9bce860ab" + integrity sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ== dependencies: safe-buffer "~5.1.0" stringify-clone@^1.0.0: version "1.1.1" resolved "https://registry.yarnpkg.com/stringify-clone/-/stringify-clone-1.1.1.tgz#309a235fb4ecfccd7d388dbe18ba904facaf433b" + integrity sha1-MJojX7Ts/M19OI2+GLqQT6yvQzs= stringify-stream@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/stringify-stream/-/stringify-stream-1.0.5.tgz#e51407a8fdc4ca0e1c62f149868bacf5cf204050" + integrity sha1-5RQHqP3Eyg4cYvFJhous9c8gQFA= dependencies: readable-stream "~2.1.0" stringstream@~0.0.4, stringstream@~0.0.5: version "0.0.5" resolved "https://registry.yarnpkg.com/stringstream/-/stringstream-0.0.5.tgz#4e484cd4de5a0bbbee18e46307710a8a81621878" + integrity sha1-TkhM1N5aC7vuGORjB3EKioFiGHg= strip-ansi@^3.0.0, strip-ansi@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" + integrity sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8= dependencies: ansi-regex "^2.0.0" strip-ansi@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f" + integrity sha1-qEeQIusaw2iocTibY1JixQXuNo8= dependencies: ansi-regex "^3.0.0" strip-json-comments@~2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" + integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo= supports-color@4.4.0: version "4.4.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-4.4.0.tgz#883f7ddabc165142b2a61427f3352ded195d1a3e" + integrity sha512-rKC3+DyXWgK0ZLKwmRsrkyHVZAjNkfzeehuFWdGGcqGDTZFH73+RH6S/RDAAxl9GusSjZSUWYLmT9N5pzXFOXQ== dependencies: has-flag "^2.0.0" supports-color@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" + integrity sha1-U10EXOa2Nj+kARcIRimZXp3zJMc= supports-color@^4.0.0: version "4.5.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-4.5.0.tgz#be7a0de484dec5c5cddf8b3d59125044912f635b" + integrity sha1-vnoN5ITexcXN34s9WRJQRJEvY1s= dependencies: has-flag "^2.0.0" table@^4.0.1: version "4.0.2" resolved "https://registry.yarnpkg.com/table/-/table-4.0.2.tgz#a33447375391e766ad34d3486e6e2aedc84d2e36" + integrity sha512-UUkEAPdSGxtRpiV9ozJ5cMTtYiqz7Ni1OGqLXRCynrvzdtR1p+cfOWe2RJLwvUG8hNanaSRjecIqwOjqeatDsA== dependencies: ajv "^5.2.3" ajv-keywords "^2.1.0" @@ -2788,6 +3252,7 @@ table@^4.0.1: tar-pack@^3.4.0: version "3.4.1" resolved "https://registry.yarnpkg.com/tar-pack/-/tar-pack-3.4.1.tgz#e1dbc03a9b9d3ba07e896ad027317eb679a10a1f" + integrity sha512-PPRybI9+jM5tjtCbN2cxmmRU7YmqT3Zv/UDy48tAh2XRkLa9bAORtSWLkVc13+GJF+cdTh1yEnHEk3cpTaL5Kg== dependencies: debug "^2.2.0" fstream "^1.0.10" @@ -2801,6 +3266,7 @@ tar-pack@^3.4.0: tar@^2.2.1: version "2.2.1" resolved "https://registry.yarnpkg.com/tar/-/tar-2.2.1.tgz#8e4d2a256c0e2185c6b18ad694aec968b83cb1d1" + integrity sha1-jk0qJWwOIYXGsYrWlK7JaLg8sdE= dependencies: block-stream "*" fstream "^1.0.2" @@ -2809,10 +3275,12 @@ tar@^2.2.1: text-table@~0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" + integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= through2-filter@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/through2-filter/-/through2-filter-2.0.0.tgz#60bc55a0dacb76085db1f9dae99ab43f83d622ec" + integrity sha1-YLxVoNrLdghdsfna6Zq0P4PWIuw= dependencies: through2 "~2.0.0" xtend "~4.0.0" @@ -2820,6 +3288,7 @@ through2-filter@^2.0.0: through2@^2.0.1, through2@^2.0.2, through2@~2.0.0: version "2.0.3" resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.3.tgz#0004569b37c7c74ba39c43f3ced78d1ad94140be" + integrity sha1-AARWmzfHx0ujnEPzzteNGtlBQL4= dependencies: readable-stream "^2.1.5" xtend "~4.0.1" @@ -2827,20 +3296,24 @@ through2@^2.0.1, through2@^2.0.2, through2@~2.0.0: through@^2.3.6: version "2.3.8" resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" + integrity sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU= timed-out@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/timed-out/-/timed-out-4.0.1.tgz#f32eacac5a175bea25d7fab565ab3ed8741ef56f" + integrity sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8= tmp@^0.0.33: version "0.0.33" resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9" + integrity sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw== dependencies: os-tmpdir "~1.0.2" to-absolute-glob@^2.0.0: version "2.0.2" resolved "https://registry.yarnpkg.com/to-absolute-glob/-/to-absolute-glob-2.0.2.tgz#1865f43d9e74b0822db9f145b78cff7d0f7c849b" + integrity sha1-GGX0PZ50sIItufFFt4z/fQ98hJs= dependencies: is-absolute "^1.0.0" is-negated-glob "^1.0.0" @@ -2848,78 +3321,95 @@ to-absolute-glob@^2.0.0: tough-cookie@~2.3.0: version "2.3.4" resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.4.tgz#ec60cee38ac675063ffc97a5c18970578ee83655" + integrity sha512-TZ6TTfI5NtZnuyy/Kecv+CnoROnyXn2DN97LontgQpCwsX2XyLYCC0ENhYkehSOwAp8rTQKc/NUIF7BkQ5rKLA== dependencies: punycode "^1.4.1" tough-cookie@~2.3.3: version "2.3.3" resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.3.tgz#0b618a5565b6dea90bf3425d04d55edc475a7561" + integrity sha1-C2GKVWW23qkL80JdBNVe3EdadWE= dependencies: punycode "^1.4.1" tunnel-agent@^0.6.0: version "0.6.0" resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" + integrity sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0= dependencies: safe-buffer "^5.0.1" tunnel-agent@~0.4.1: version "0.4.3" resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.4.3.tgz#6373db76909fe570e08d73583365ed828a74eeeb" + integrity sha1-Y3PbdpCf5XDgjXNYM2Xtgop07us= tv4@1.x.x: version "1.3.0" resolved "https://registry.yarnpkg.com/tv4/-/tv4-1.3.0.tgz#d020c846fadd50c855abb25ebaecc68fc10f7963" + integrity sha1-0CDIRvrdUMhVq7JeuuzGj8EPeWM= tweetnacl@^0.14.3, tweetnacl@~0.14.0: version "0.14.5" resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" + integrity sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q= type-check@~0.3.2: version "0.3.2" resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72" + integrity sha1-WITKtRLPHTVeP7eE8wgEsrUg23I= dependencies: prelude-ls "~1.1.2" type-detect@0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-0.1.1.tgz#0ba5ec2a885640e470ea4e8505971900dac58822" + integrity sha1-C6XsKohWQORw6k6FBZcZANrFiCI= type-detect@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-1.0.0.tgz#762217cc06db258ec48908a1298e8b95121e8ea2" + integrity sha1-diIXzAbbJY7EiQihKY6LlRIejqI= type-detect@^4.0.0: version "4.0.5" resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.5.tgz#d70e5bc81db6de2a381bcaca0c6e0cbdc7635de2" + integrity sha512-N9IvkQslUGYGC24RkJk1ba99foK6TkwC2FHAEBlQFBP0RxQZS8ZpJuAZcwiY/w9ZJHFQb1aOXBI60OdxhTrwEQ== typedarray@^0.0.6: version "0.0.6" resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" + integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c= uid-number@^0.0.6: version "0.0.6" resolved "https://registry.yarnpkg.com/uid-number/-/uid-number-0.0.6.tgz#0ea10e8035e8eb5b8e4449f06da1c730663baa81" + integrity sha1-DqEOgDXo61uOREnwbaHHMGY7qoE= ultron@~1.1.0: version "1.1.1" resolved "https://registry.yarnpkg.com/ultron/-/ultron-1.1.1.tgz#9fe1536a10a664a65266a1e3ccf85fd36302bc9c" + integrity sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og== unc-path-regex@^0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/unc-path-regex/-/unc-path-regex-0.1.2.tgz#e73dd3d7b0d7c5ed86fbac6b0ae7d8c6a69d50fa" + integrity sha1-5z3T17DXxe2G+6xrCufYxqadUPo= underscore@1.1.x: version "1.1.7" resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.1.7.tgz#40bab84bad19d230096e8d6ef628bff055d83db0" + integrity sha1-QLq4S60Z0jAJbo1u9ii/8FXYPbA= underscore@1.7.0: version "1.7.0" resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.7.0.tgz#6bbaf0877500d36be34ecaa584e0db9fef035209" + integrity sha1-a7rwh3UA02vjTsqlhODbn+8DUgk= unique-stream@^2.0.2: version "2.2.1" resolved "https://registry.yarnpkg.com/unique-stream/-/unique-stream-2.2.1.tgz#5aa003cfbe94c5ff866c4e7d668bb1c4dbadb369" + integrity sha1-WqADz76Uxf+GbE59ZouxxNuts2k= dependencies: json-stable-stringify "^1.0.0" through2-filter "^2.0.0" @@ -2927,30 +3417,36 @@ unique-stream@^2.0.2: url-parse-lax@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/url-parse-lax/-/url-parse-lax-3.0.0.tgz#16b5cafc07dbe3676c1b1999177823d6503acb0c" + integrity sha1-FrXK/Afb42dsGxmZF3gj1lA6yww= dependencies: prepend-http "^2.0.0" url-to-options@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/url-to-options/-/url-to-options-1.0.1.tgz#1505a03a289a48cbd7a434efbaeec5055f5633a9" + integrity sha1-FQWgOiiaSMvXpDTvuu7FBV9WM6k= util-deprecate@~1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" + integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= uuid@^3.0.0, uuid@^3.1.0, uuid@^3.2.1: version "3.2.1" resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.2.1.tgz#12c528bb9d58d0b9265d9a2f6f0fe8be17ff1f14" + integrity sha512-jZnMwlb9Iku/O3smGWvZhauCf6cvvpKi4BKRiliS3cxnI+Gz9j5MEpTz2UFuXiKPJocb7gnsLHwiS05ige5BEA== vasync@^1.6.4: version "1.6.4" resolved "https://registry.yarnpkg.com/vasync/-/vasync-1.6.4.tgz#dfe93616ad0e7ae801b332a9d88bfc5cdc8e1d1f" + integrity sha1-3+k2Fq0OeugBszKp2Iv8XNyOHR8= dependencies: verror "1.6.0" verror@1.10.0, verror@^1.8.1, verror@^1.9.0: version "1.10.0" resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400" + integrity sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA= dependencies: assert-plus "^1.0.0" core-util-is "1.0.2" @@ -2959,18 +3455,21 @@ verror@1.10.0, verror@^1.8.1, verror@^1.9.0: verror@1.6.0: version "1.6.0" resolved "https://registry.yarnpkg.com/verror/-/verror-1.6.0.tgz#7d13b27b1facc2e2da90405eb5ea6e5bdd252ea5" + integrity sha1-fROyex+swuLakEBetepuW90lLqU= dependencies: extsprintf "1.2.0" wbuf@^1.1.0, wbuf@^1.7.2: version "1.7.2" resolved "https://registry.yarnpkg.com/wbuf/-/wbuf-1.7.2.tgz#d697b99f1f59512df2751be42769c1580b5801fe" + integrity sha1-1pe5nx9ZUS3ydRvkJ2nBWAtYAf4= dependencies: minimalistic-assert "^1.0.0" websocket-stream@^5.0.1: version "5.1.1" resolved "https://registry.yarnpkg.com/websocket-stream/-/websocket-stream-5.1.1.tgz#68d23916cdf53689cff73e213fa2178dbcea6169" + integrity sha512-ypQ50zVCnikSvJcRFWaZh7xeCufSje5+mbJRq3mdvdNx+06TD98C+bQsSKc7FkI6y1PVuNbzkenGywxlFiQeUQ== dependencies: duplexify "^3.5.1" inherits "^2.0.1" @@ -2982,30 +3481,36 @@ websocket-stream@^5.0.1: wgs84@0.0.0: version "0.0.0" resolved "https://registry.yarnpkg.com/wgs84/-/wgs84-0.0.0.tgz#34fdc555917b6e57cf2a282ed043710c049cdc76" + integrity sha1-NP3FVZF7blfPKigu0ENxDASc3HY= which@^1.2.9: version "1.3.0" resolved "https://registry.yarnpkg.com/which/-/which-1.3.0.tgz#ff04bdfc010ee547d780bec38e1ac1c2777d253a" + integrity sha512-xcJpopdamTuY5duC/KnTTNBraPK54YwpenP4lzxU8H91GudWpFv38u0CKjclE1Wi2EH2EDz5LRcHcKbCIzqGyg== dependencies: isexe "^2.0.0" wide-align@^1.1.0: version "1.1.2" resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.2.tgz#571e0f1b0604636ebc0dfc21b0339bbe31341710" + integrity sha512-ijDLlyQ7s6x1JgCLur53osjm/UXUYD9+0PbYKrBsYisYXzCxN+HC3mYDNy/dWdmf3AwqwU3CXwDCvsNgGK1S0w== dependencies: string-width "^1.0.2" window-size@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.1.4.tgz#f8e1aa1ee5a53ec5bf151ffa09742a6ad7697876" + integrity sha1-+OGqHuWlPsW/FR/6CXQqatdpeHY= wordwrap@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" + integrity sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus= wrap-ansi@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-2.1.0.tgz#d8fc3d284dd05794fe84973caecdd1cf824fdd85" + integrity sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU= dependencies: string-width "^1.0.1" strip-ansi "^3.0.1" @@ -3013,16 +3518,19 @@ wrap-ansi@^2.0.0: wrappy@1: version "1.0.2" resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" + integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= write@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/write/-/write-0.2.1.tgz#5fc03828e264cea3fe91455476f7a3c566cb0757" + integrity sha1-X8A4KOJkzqP+kUVUdvejxWbLB1c= dependencies: mkdirp "^0.5.1" ws@^3.2.0: version "3.3.3" resolved "https://registry.yarnpkg.com/ws/-/ws-3.3.3.tgz#f1cf84fe2d5e901ebce94efaece785f187a228f2" + integrity sha512-nnWLa/NwZSt4KQJu51MYlCcSQ5g7INpOrOMt4XV8j4dqTXdmlUmSHQ8/oLC069ckre0fRsgfvsKwbTdtKLCDkA== dependencies: async-limiter "~1.0.0" safe-buffer "~5.1.0" @@ -3031,18 +3539,22 @@ ws@^3.2.0: xtend@^4.0.0, xtend@^4.0.1, xtend@~4.0.0, xtend@~4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af" + integrity sha1-pcbVMr5lbiPbgg77lDofBJmNY68= y18n@^3.2.0: version "3.2.1" resolved "https://registry.yarnpkg.com/y18n/-/y18n-3.2.1.tgz#6d15fba884c08679c0d77e88e7759e811e07fa41" + integrity sha1-bRX7qITAhnnA136I53WegR4H+kE= yallist@^2.1.2: version "2.1.2" resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" + integrity sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI= yargs@^3.10.0: version "3.32.0" resolved "https://registry.yarnpkg.com/yargs/-/yargs-3.32.0.tgz#03088e9ebf9e756b69751611d2a5ef591482c995" + integrity sha1-AwiOnr+edWtpdRYR0qXvWRSCyZU= dependencies: camelcase "^2.0.1" cliui "^3.0.3" From a6205a7a35694eef14cff363f0d72157f16645ea Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Wed, 14 Nov 2018 12:23:50 +0100 Subject: [PATCH 024/337] (models) include access_token for hackair devices and later for all devices --- packages/models/src/box/box.js | 15 +++++++++++++-- packages/models/src/user/user.js | 2 +- .../test/helpers/shouldBeABoxWithSecrets.js | 4 ++-- 3 files changed, 16 insertions(+), 5 deletions(-) diff --git a/packages/models/src/box/box.js b/packages/models/src/box/box.js index 774a1a35..a27faec2 100644 --- a/packages/models/src/box/box.js +++ b/packages/models/src/box/box.js @@ -16,7 +16,8 @@ const { mongoose } = require('../db'), ModelError = require('../modelError'), Sketcher = require('@sensebox/sketch-templater'), fs = require('fs'), - log = require('../log'); + log = require('../log'), + crypto = require('crypto'); const templateSketcher = new Sketcher(); @@ -120,6 +121,10 @@ const boxSchema = new Schema({ lastMeasurementAt: { type: Date, required: false + }, + access_token: { + type: String, + required: false } }); boxSchema.plugin(timestamp); @@ -160,6 +165,7 @@ boxSchema.set('toJSON', { if (options && options.includeSecrets) { box.integrations = ret.integrations; + box.access_token = ret.access_token; } return box; @@ -252,6 +258,9 @@ boxSchema.statics.initNew = function ({ timestamp: new Date(), }; + // Create acces token for box. Right now just used for hackAIR devices + const access_token = crypto.randomBytes(32).toString('hex'); + // create box document and persist in database return this.create({ name, @@ -261,7 +270,8 @@ boxSchema.statics.initNew = function ({ exposure, model, sensors, - integrations + integrations, + access_token }); }; @@ -273,6 +283,7 @@ boxSchema.statics.findBoxById = function findBoxById (id, { lean = true, populat } if (includeSecrets) { projection.integrations = 1; + projection.access_token = 1; } if (onlyLastMeasurements) { projection = { diff --git a/packages/models/src/user/user.js b/packages/models/src/user/user.js index 7e890c63..1173b7c6 100644 --- a/packages/models/src/user/user.js +++ b/packages/models/src/user/user.js @@ -295,7 +295,7 @@ userSchema.methods.addBox = function addBox (params) { user.mail(mailTemplate, savedBox); - return savedBox; + return savedBox.toJSON({ includeSecrets: true }); }); }); }; diff --git a/packages/models/test/helpers/shouldBeABoxWithSecrets.js b/packages/models/test/helpers/shouldBeABoxWithSecrets.js index 53fe7cb1..f328b901 100644 --- a/packages/models/test/helpers/shouldBeABoxWithSecrets.js +++ b/packages/models/test/helpers/shouldBeABoxWithSecrets.js @@ -1,12 +1,12 @@ 'use strict'; const { expect } = require('chai'), - shouldBeABox = require('./shouldBeABox'), - checkBoxLocation = require('./checkBoxLocation'); + shouldBeABox = require('./shouldBeABox'); const shouldBeABoxWithSecrets = function (box) { shouldBeABox(box); expect(box.integrations).an('object'); + expect(box.access_token).to.be.a('string'); return box; }; From f55aac6fd2921cc1c75d2825212697cf0b31475a Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Wed, 14 Nov 2018 12:25:16 +0100 Subject: [PATCH 025/337] (api) check hackair access_token before saving measurements --- .../lib/controllers/measurementsController.js | 10 ++- tests/data/hackair_example_data.js | 11 +++ tests/tests/016-hackair-test.js | 90 +++++++++++++++++++ 3 files changed, 109 insertions(+), 2 deletions(-) create mode 100644 tests/data/hackair_example_data.js create mode 100644 tests/tests/016-hackair-test.js diff --git a/packages/api/lib/controllers/measurementsController.js b/packages/api/lib/controllers/measurementsController.js index 942b6836..e2b412bf 100644 --- a/packages/api/lib/controllers/measurementsController.js +++ b/packages/api/lib/controllers/measurementsController.js @@ -10,7 +10,8 @@ const } = require('../helpers/userParamHelpers'), handleError = require('../helpers/errorHandler'), OutlierTransformer = require('../transformers/outlierTransformer'), - jsonstringify = require('stringify-stream'); + jsonstringify = require('stringify-stream'), + { UnauthorizedError } = require('restify-errors'); /** * @api {get} /boxes/:senseBoxId/sensors Get latest measurements of a senseBox @@ -289,7 +290,12 @@ const postNewMeasurements = async function postNewMeasurements (req, res, next) if (Measurement.hasDecoder(contentType)) { try { - const box = await Box.findBoxById(boxId, { populate: false, lean: false, projection: { sensors: 1, locations: 1, lastMeasurementAt: 1, currentLocation: 1, model: 1 } }); + const box = await Box.findBoxById(boxId, { populate: false, lean: false, projection: { sensors: 1, locations: 1, lastMeasurementAt: 1, currentLocation: 1, model: 1, access_token: 1 } }); + + if (contentType === 'hackair' && box.access_token !== req.headers.authorization) { + throw new UnauthorizedError('Access token not valid!'); + } + const measurements = await Measurement.decodeMeasurements(req.body, { contentType, sensors: box.sensors }); await box.saveMeasurementsArray(measurements); res.send(201, 'Measurements saved in box'); diff --git a/tests/data/hackair_example_data.js b/tests/data/hackair_example_data.js new file mode 100644 index 00000000..b8c0c52c --- /dev/null +++ b/tests/data/hackair_example_data.js @@ -0,0 +1,11 @@ +'use strict'; + +module.exports = { + 'reading': { + 'PM2.5_AirPollutantValue': '7.93', + 'PM10_AirPollutantValue': '32.63' + }, + 'battery': '5.99', + 'tamper': '0', + 'error': '4' +}; diff --git a/tests/tests/016-hackair-test.js b/tests/tests/016-hackair-test.js new file mode 100644 index 00000000..c4b0b1c1 --- /dev/null +++ b/tests/tests/016-hackair-test.js @@ -0,0 +1,90 @@ +'use strict'; + +/* global describe it */ + +const chakram = require('chakram'), + expect = chakram.expect, + moment = require('moment'); + +const BASE_URL = process.env.OSEM_TEST_BASE_URL, + valid_sensebox = require('../data/valid_sensebox'), + hackair_example_data = require('../data/hackair_example_data'); + +describe('openSenseMap API hackAIR devices', function () { + let jwt, hackair_home_v2_id, access_token; + + it('should allow to register a hackAIR homev2 sensor', () => { + return chakram.post(`${BASE_URL}/users/register`, { name: 'hackair user', email: 'hackair@email', password: 'hackairrocks' }) + .then(function (response) { + expect(response).to.have.status(201); + expect(response).to.have.header('content-type', 'application/json; charset=utf-8'); + expect(response.body.token).to.exist; + jwt = response.body.token; + + return chakram.post(`${BASE_URL}/boxes`, valid_sensebox({ model: 'hackair_home_v2', name: 'hackair' }), { headers: { 'Authorization': `Bearer ${jwt}` } }); + }) + .then(function (response) { + expect(response).to.have.status(201); + expect(response).to.have.header('content-type', 'application/json; charset=utf-8'); + + const boxId = response.body.data._id; + access_token = response.body.data.access_token; + hackair_home_v2_id = boxId; + + return chakram.get(`${BASE_URL}/boxes/${boxId}`); + }) + .then(function (response) { + expect(response).to.have.status(200); + expect(response).to.have.header('content-type', 'application/json; charset=utf-8'); + expect(response).to.have.json('sensors', function (sensors) { + expect(sensors.some(function (sensor) { + return sensor.title === 'PM10'; + })).to.be.true; + expect(sensors.some(function (sensor) { + return sensor.title === 'PM2.5'; + })).to.be.true; + }); + + expect(response.body).to.not.have.keys('integrations'); + expect(response.body).to.not.have.keys('access_token'); + + return chakram.wait(); + }); + }); + + it('should accept measurements from hackair devices', () => { + let submitTime; + + return chakram.post(`${BASE_URL}/boxes/${hackair_home_v2_id}/data?hackair=true`, hackair_example_data, { headers: { 'Authorization': `${access_token}` } }) + .then(function (response) { + submitTime = moment.utc(response.response.headers.date, 'ddd, DD MMM YYYY HH:mm:ss GMT'); + expect(response).to.have.status(201); + + return chakram.get(`${BASE_URL}/boxes/${hackair_home_v2_id}`); + }) + .then(function (response) { + expect(response).to.have.json('sensors', function (sensors) { + sensors.forEach(function (sensor) { + if (['PM10', 'PM2.5'].includes(sensor.title)) { + expect(sensor.lastMeasurement).not.to.be.null; + expect(sensor.lastMeasurement.createdAt).to.exist; + const createdAt = moment.utc(sensor.lastMeasurement.createdAt); + expect(submitTime.diff(createdAt, 'seconds')).to.be.below(10); + } + }); + }); + + return chakram.wait(); + }); + }); + + it('should not accept measurements from hackair devices without access token', () => { + return chakram.post(`${BASE_URL}/boxes/${hackair_home_v2_id}/data?hackair=true`, hackair_example_data) + .then(function (response) { + expect(response).to.have.status(401); + expect(response.body).to.be.an('object'); + expect(response.body.message).to.be.a('string'); + expect(response.body.message).to.equal('Access token not valid!'); + }); + }); +}); From 5e29ad0a5e121e67a81e6526769110671d700d25 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Wed, 14 Nov 2018 12:29:21 +0100 Subject: [PATCH 026/337] v0.0.11-beta.1 --- packages/models/CHANGELOG.md | 2 ++ packages/models/package.json | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/models/CHANGELOG.md b/packages/models/CHANGELOG.md index 06039f00..63dccf5c 100644 --- a/packages/models/CHANGELOG.md +++ b/packages/models/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## v0.0.11-beta.1 + ## v0.0.11-beta.0 ## v0.0.10 diff --git a/packages/models/package.json b/packages/models/package.json index eaf546a4..4bf5f78a 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -1,7 +1,7 @@ { "name": "@sensebox/opensensemap-api-models", "description": "openSenseMap data models and database connection", - "version": "0.0.11-beta.0", + "version": "0.0.11-beta.1", "main": "index.js", "license": "MIT", "dependencies": { From 620b5f61fd2b2f18abc9f8aaaafd6e9ad78b26a4 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Wed, 14 Nov 2018 12:39:39 +0100 Subject: [PATCH 027/337] (api) use latest beta version of opensensemap-api-models --- packages/api/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/api/package.json b/packages/api/package.json index 5fed1fb4..4c9d770b 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -10,7 +10,7 @@ "Norwin Roosen" ], "dependencies": { - "@sensebox/opensensemap-api-models": "^0.0.11-beta.0", + "@sensebox/opensensemap-api-models": "^0.0.11-beta.1", "@turf/area": "^4.6.0", "@turf/bbox": "^4.6.0", "@turf/centroid": "^4.6.1", From f30af824dcd61fd91049f4e4711e979761aa9949 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Fri, 16 Nov 2018 15:22:45 +0100 Subject: [PATCH 028/337] (models) add mail support for hackair devices --- packages/models/src/user/mails.js | 7 +++++++ packages/models/src/user/user.js | 4 ++++ 2 files changed, 11 insertions(+) diff --git a/packages/models/src/user/mails.js b/packages/models/src/user/mails.js index dd3ffa14..e28df49c 100644 --- a/packages/models/src/user/mails.js +++ b/packages/models/src/user/mails.js @@ -35,6 +35,13 @@ if (config.get('mailer.url')) { } }; }, + 'newBoxHackAir' (user, box) { + return { + payload: { + box + } + }; + }, 'newUser' (user) { return { payload: { diff --git a/packages/models/src/user/user.js b/packages/models/src/user/user.js index 1173b7c6..52f0749d 100644 --- a/packages/models/src/user/user.js +++ b/packages/models/src/user/user.js @@ -293,6 +293,10 @@ userSchema.methods.addBox = function addBox (params) { mailTemplate = 'newBoxLuftdaten'; } + if (savedBox.model && savedBox.model.toString().includes('hackair')) { + mailTemplate = 'newBoxHackAir'; + } + user.mail(mailTemplate, savedBox); return savedBox.toJSON({ includeSecrets: true }); From 00206bc0d4f8d184a3ceead94b848b4823a2df7a Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Fri, 16 Nov 2018 15:23:52 +0100 Subject: [PATCH 029/337] v0.0.11-beta.2 --- packages/models/CHANGELOG.md | 2 ++ packages/models/package.json | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/models/CHANGELOG.md b/packages/models/CHANGELOG.md index 63dccf5c..eac6765d 100644 --- a/packages/models/CHANGELOG.md +++ b/packages/models/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## v0.0.11-beta.2 + ## v0.0.11-beta.1 ## v0.0.11-beta.0 diff --git a/packages/models/package.json b/packages/models/package.json index 4bf5f78a..3d3bb7bc 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -1,7 +1,7 @@ { "name": "@sensebox/opensensemap-api-models", "description": "openSenseMap data models and database connection", - "version": "0.0.11-beta.1", + "version": "0.0.11-beta.2", "main": "index.js", "license": "MIT", "dependencies": { From 024b018b8a89cf8e97cf230bb8332b32de8412a7 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Mon, 19 Nov 2018 11:23:59 +0100 Subject: [PATCH 030/337] (api) use new beta release of models --- packages/api/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/api/package.json b/packages/api/package.json index 4c9d770b..d8bf8182 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -10,7 +10,7 @@ "Norwin Roosen" ], "dependencies": { - "@sensebox/opensensemap-api-models": "^0.0.11-beta.1", + "@sensebox/opensensemap-api-models": "^0.0.11-beta.2", "@turf/area": "^4.6.0", "@turf/bbox": "^4.6.0", "@turf/centroid": "^4.6.1", From 86ca80d35c6800c6573f7254d22d4494aaae567b Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Mon, 19 Nov 2018 11:24:26 +0100 Subject: [PATCH 031/337] (tests) update docker images and add tests for hackair mail --- tests/docker-compose.yml | 2 +- tests/tests/ZZZ-mail-test.js | 19 +++++++++++++++++++ 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/tests/docker-compose.yml b/tests/docker-compose.yml index e8a6ff34..a4bcf242 100644 --- a/tests/docker-compose.yml +++ b/tests/docker-compose.yml @@ -178,7 +178,7 @@ services: - "8025:8025" mqtt-osem-integration: - image: sensebox/mqtt-osem-integration:v0.0.4 + image: sensebox/mqtt-osem-integration:v0.0.5 depends_on: - db environment: diff --git a/tests/tests/ZZZ-mail-test.js b/tests/tests/ZZZ-mail-test.js index 40c1befb..e98e44fd 100644 --- a/tests/tests/ZZZ-mail-test.js +++ b/tests/tests/ZZZ-mail-test.js @@ -434,6 +434,25 @@ describe('mails', function () { expect(mail).to.exist; }); + it('should have sent special hackAIR welcome mail', async function () { + const foundMails = await getMails('hackair@email', 'Your device on openSenseMap'); + expect(foundMails).not.to.be.empty; + expect(foundMails.every(function (mail) { + expect(mail).to.exist; + const links = mail('a'); + let hasLink = false; + links.each(function (_, link) { + const href = $(link).attr('href'); + if (href.includes('hackair_home_v2.html')) { + hasLink = true; + } + }); + expect(hasLink).to.be.true; + + return hasLink; + })).true; + }); + it('should allow to confirm a email address after requesting a resend of a confirmation token', async function () { let token; const mail = await getMail('tester4@test.test', 'E-Mail address confirmation'); From feb87746fd5e998cf5fcb6285c69e773f88348b7 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Mon, 19 Nov 2018 12:40:47 +0100 Subject: [PATCH 032/337] (travis) dont use env CI env CI is always true. In travis always the latest tag was used for mailer --- .scripts/run-tests.sh | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/.scripts/run-tests.sh b/.scripts/run-tests.sh index 15417d35..2d383978 100755 --- a/.scripts/run-tests.sh +++ b/.scripts/run-tests.sh @@ -19,13 +19,12 @@ logs_service=${2:-} dont_clean_up=${dont_clean_up:-} show_logs=${show_logs:-} only_models_tests=${only_models_tests:-} -CI=${CI:-} git_branch=$(git rev-parse --abbrev-ref HEAD) # Decide which mailer tag to use -# on branch development, use the development tag -# in CI use the latest tag -if [[ $CI == "true" || $git_branch == "master" ]]; then +# on branch master, use the latest tag +# on all other branches, use the development tag +if [[ $git_branch == "master" ]]; then export SENSEBOX_MAILER_TAG="latest" else export SENSEBOX_MAILER_TAG="development" From 84a03ec1540adf08411690f8de12daee6878c122 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Mon, 19 Nov 2018 16:57:11 +0100 Subject: [PATCH 033/337] (models) add db migration script for access_token --- .../7-mongoshell-boxes-add-field.js | 23 +++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 packages/models/migrations/7-8_box_access_token/7-mongoshell-boxes-add-field.js diff --git a/packages/models/migrations/7-8_box_access_token/7-mongoshell-boxes-add-field.js b/packages/models/migrations/7-8_box_access_token/7-mongoshell-boxes-add-field.js new file mode 100644 index 00000000..b0a25026 --- /dev/null +++ b/packages/models/migrations/7-8_box_access_token/7-mongoshell-boxes-add-field.js @@ -0,0 +1,23 @@ +/* eslint-disable */ + +// TODO add field lastMeasurementAt to boxes +db = db.getSiblingDB('OSeM-api'); + +// check schema version +var collections = db.getCollectionNames(); + +if (collections.indexOf("schemaVersion") === -1) { + print("Error: Unkown schema version. Exiting!"); + quit(); +} + +var latestVersion = db.schemaVersion.find({}).sort({ schemaVersion: -1 }).limit(1).next(); + +if (latestVersion.schemaVersion !== 7) { + print("Migration already applied... Exiting!"); + quit(); +} + +db.boxes.update({},{ $set: {"access_token": undefined} },false,true); + +db.schemaVersion.updateOne({}, { $inc: { schemaVersion: 1 }}); \ No newline at end of file From 316e3e77025a17044d35bab74e4d44aa7bd2db14 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Tue, 20 Nov 2018 11:18:39 +0100 Subject: [PATCH 034/337] v0.0.11 --- packages/models/CHANGELOG.md | 10 ++++++++++ packages/models/package.json | 2 +- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/packages/models/CHANGELOG.md b/packages/models/CHANGELOG.md index eac6765d..15ebabea 100644 --- a/packages/models/CHANGELOG.md +++ b/packages/models/CHANGELOG.md @@ -2,6 +2,16 @@ ## Unreleased +## v0.0.11 +- **BREAKING CHANGE**: `/boxes` sensor does not contain `lastMeasurement` anymore +- introduce `minimal` parameter to reduce payload on `/boxes` #164 +- introduce `lastMeasurementAt` in box schema and update field every time new measurement is stored to avoid additional databse lookup. Fixes #148 +- Uploading a single measurement with a specified time. Fixes #169 +- Update @sensebox/node-sketch-templater to 1.3.0 +- Add new LoRa model (`homeV2Lora`). Fixes #165 +- add `bbox` parameter to `/boxes` route +- add `hackAir` decoding handler + ## v0.0.11-beta.2 ## v0.0.11-beta.1 diff --git a/packages/models/package.json b/packages/models/package.json index 3d3bb7bc..1f37a8a1 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -1,7 +1,7 @@ { "name": "@sensebox/opensensemap-api-models", "description": "openSenseMap data models and database connection", - "version": "0.0.11-beta.2", + "version": "0.0.11", "main": "index.js", "license": "MIT", "dependencies": { From 106a5acded11fcd1d21ed4d5e43653637dd3cd7d Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Tue, 20 Nov 2018 11:21:51 +0100 Subject: [PATCH 035/337] (api) use models version 0.0.11 --- packages/api/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/api/package.json b/packages/api/package.json index d8bf8182..dd8fe8ee 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -10,7 +10,7 @@ "Norwin Roosen" ], "dependencies": { - "@sensebox/opensensemap-api-models": "^0.0.11-beta.2", + "@sensebox/opensensemap-api-models": "^0.0.11", "@turf/area": "^4.6.0", "@turf/bbox": "^4.6.0", "@turf/centroid": "^4.6.1", From 9c0f9b051cd28586167e2922a1bd6a99b2b3a834 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Tue, 20 Nov 2018 11:39:29 +0100 Subject: [PATCH 036/337] (api) v6 --- CHANGELOG.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 1f4c900c..68c3302e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,11 @@ ## Unreleased +## v6 +- Use @sensebox/opensensemap-api-models v0.0.11 +- Support for `hackAIR` devices +- Support for `bbox` query parameter on `/boxes`. Closes #174 + ## v5 - Allow users to delete their box images by sending `deleteImage: true` - Change Forbidden Response for invalid JWT authorization From fccb5a6eeedab804ebc9af9625827107a2184db4 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Mon, 3 Dec 2018 17:03:26 +0100 Subject: [PATCH 037/337] (models) use beta release of sketch-templater --- packages/api/lib/controllers/boxesController.js | 6 ++++-- packages/models/package.json | 2 +- packages/models/src/box/box.js | 6 ++++-- packages/models/src/user/mails.js | 2 +- yarn.lock | 8 ++++---- 5 files changed, 14 insertions(+), 10 deletions(-) diff --git a/packages/api/lib/controllers/boxesController.js b/packages/api/lib/controllers/boxesController.js index 11156284..f70f32e3 100644 --- a/packages/api/lib/controllers/boxesController.js +++ b/packages/api/lib/controllers/boxesController.js @@ -414,7 +414,7 @@ const getSketch = async function getSketch (req, res, next) { res.header('Content-Type', 'text/plain; charset=utf-8'); try { const box = await Box.findBoxById(req._userParams.boxId, { populate: false, lean: false }); - res.send(box.getSketch({ serialPort: req._userParams.serialPort })); + res.send(box.getSketch({ serialPort: req._userParams.serialPort, ssid: req._userParams.ssid, password: req._userParams.password })); } catch (err) { handleError(err, next); } @@ -459,7 +459,9 @@ module.exports = { getSketch: [ retrieveParameters([ { predef: 'boxId', required: true }, - { name: 'serialPort', dataType: 'String', allowedValues: ['Serial1', 'Serial2'] } + { name: 'serialPort', dataType: 'String', allowedValues: ['Serial1', 'Serial2'] }, + { name: 'ssid', dataType: 'StringWithEmpty' }, + { name: 'password', dataType: 'StringWithEmpty' } ]), checkPrivilege, getSketch diff --git a/packages/models/package.json b/packages/models/package.json index 1f37a8a1..4d30d6fe 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -6,7 +6,7 @@ "license": "MIT", "dependencies": { "@sensebox/osem-protos": "^1.1.0", - "@sensebox/sketch-templater": "^1.3.0", + "@sensebox/sketch-templater": "^1.4.0-beta.3", "bcrypt": "^1.0.2", "bunyan": "^1.8.12", "config": "^1.29.2", diff --git a/packages/models/src/box/box.js b/packages/models/src/box/box.js index a27faec2..3d6b16a9 100644 --- a/packages/models/src/box/box.js +++ b/packages/models/src/box/box.js @@ -219,7 +219,6 @@ boxSchema.statics.initNew = function ({ model, sensors, sensorTemplates, - serialPort, mqtt: { enabled, url, topic, decodeOptions: mqttDecodeOptions, connectionOptions, messageFormat } = { enabled: false }, @@ -799,11 +798,14 @@ boxSchema.methods.updateSensors = function updateSensors (sensors) { } }; -boxSchema.methods.getSketch = function getSketch ({ encoding, serialPort } = {}) { +boxSchema.methods.getSketch = function getSketch ({ encoding, serialPort, ssid, password } = {}) { if (serialPort) { this.serialPort = serialPort; } + this.ssid = ssid; + this.password = password; + return templateSketcher.generateSketch(this, { encoding }); }; diff --git a/packages/models/src/user/mails.js b/packages/models/src/user/mails.js index e28df49c..fe77d49f 100644 --- a/packages/models/src/user/mails.js +++ b/packages/models/src/user/mails.js @@ -24,7 +24,7 @@ if (config.get('mailer.url')) { }, attachment: { filename: 'senseBox.ino', - contents: box.getSketch({ encoding: 'base64', serialPort: box.serialPort }) + contents: box.getSketch({ encoding: 'base64', serialPort: box.serialPort, ssid: '', password: '' }) } }; }, diff --git a/yarn.lock b/yarn.lock index 0826bbc2..16ed3771 100644 --- a/yarn.lock +++ b/yarn.lock @@ -19,10 +19,10 @@ resolved "https://registry.yarnpkg.com/@sensebox/osem-protos/-/osem-protos-1.1.0.tgz#a7de8bc6be867953f1309181a012063c23299e79" integrity sha512-H+nUVcWlT0dvIqfJnYHuX9JBcCkP1ZKGE5YTRNWPbAEdZ11h+srpQsmeI58wK5hJcdukaZAjc4Dy96IeGM77aA== -"@sensebox/sketch-templater@^1.3.0": - version "1.3.0" - resolved "https://registry.yarnpkg.com/@sensebox/sketch-templater/-/sketch-templater-1.3.0.tgz#ed17005eead6ab746d1439ee20133af938c34175" - integrity sha512-F+d5CLO/F8ptogX9u/DIB5Y3V+3Ag82aw/Doj5BCzURGEv4b0fHuUThBTFG4ewDPAQhud8KcjwbucM05aV2bSg== +"@sensebox/sketch-templater@^1.4.0-beta.3": + version "1.4.0-beta.3" + resolved "https://registry.yarnpkg.com/@sensebox/sketch-templater/-/sketch-templater-1.4.0-beta.3.tgz#ea065c3e1bd95312603a573296c7683cdb7c1b99" + integrity sha512-W93QAitK8bYYYiHgatQe8qMUwhCVXj40O6ahLi20aSnhPJsCVPUpF2h9rqf3cVD5BbJ6u4Z2WV/zV3FsYGk3Sg== dependencies: config "^1.29.2" dedent "^0.7.0" From 533ba0ff0b9e0188a1b60e5b8f3d00bbc30a6878 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Tue, 4 Dec 2018 15:04:26 +0100 Subject: [PATCH 038/337] (models) set lastMeasurementAt on single measruement upload fixes #177 --- packages/models/src/box/box.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/packages/models/src/box/box.js b/packages/models/src/box/box.js index a27faec2..809b08c0 100644 --- a/packages/models/src/box/box.js +++ b/packages/models/src/box/box.js @@ -469,6 +469,7 @@ boxSchema.methods.saveMeasurement = function saveMeasurement (measurement) { // only update lastMeasurement, if timestamp is actually the newest. if (!sensor.lastMeasurement || m.createdAt.valueOf() > sensor.lastMeasurement.createdAt.getTime()) { sensor.lastMeasurement = m; + box.lastMeasurementAt = m.createdAt; return box.save(); } @@ -589,6 +590,7 @@ boxSchema.methods.saveMeasurementsArray = function saveMeasurementsArray (measur // compare send measurements with actual lastMeasurements if each sensor if ( + !box.sensors[i].lastMeasurement || box.sensors[i].lastMeasurement === undefined || box.sensors[i].lastMeasurement !== undefined && lastMeasurements[box.sensors[i]._id].createdAt.isAfter(box.sensors[i].lastMeasurement.createdAt) From 31df91828cd8f6627f7bfb87557823f7b11a3d72 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Wed, 12 Dec 2018 13:13:13 +0100 Subject: [PATCH 039/337] (models) use latest beta release of sketch-templater --- packages/models/package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/models/package.json b/packages/models/package.json index 4d30d6fe..f79e36c3 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -6,7 +6,7 @@ "license": "MIT", "dependencies": { "@sensebox/osem-protos": "^1.1.0", - "@sensebox/sketch-templater": "^1.4.0-beta.3", + "@sensebox/sketch-templater": "^1.4.0-beta.4", "bcrypt": "^1.0.2", "bunyan": "^1.8.12", "config": "^1.29.2", diff --git a/yarn.lock b/yarn.lock index 16ed3771..d3d29605 100644 --- a/yarn.lock +++ b/yarn.lock @@ -19,10 +19,10 @@ resolved "https://registry.yarnpkg.com/@sensebox/osem-protos/-/osem-protos-1.1.0.tgz#a7de8bc6be867953f1309181a012063c23299e79" integrity sha512-H+nUVcWlT0dvIqfJnYHuX9JBcCkP1ZKGE5YTRNWPbAEdZ11h+srpQsmeI58wK5hJcdukaZAjc4Dy96IeGM77aA== -"@sensebox/sketch-templater@^1.4.0-beta.3": - version "1.4.0-beta.3" - resolved "https://registry.yarnpkg.com/@sensebox/sketch-templater/-/sketch-templater-1.4.0-beta.3.tgz#ea065c3e1bd95312603a573296c7683cdb7c1b99" - integrity sha512-W93QAitK8bYYYiHgatQe8qMUwhCVXj40O6ahLi20aSnhPJsCVPUpF2h9rqf3cVD5BbJ6u4Z2WV/zV3FsYGk3Sg== +"@sensebox/sketch-templater@^1.4.0-beta.4": + version "1.4.0-beta.4" + resolved "https://registry.yarnpkg.com/@sensebox/sketch-templater/-/sketch-templater-1.4.0-beta.4.tgz#76cd8d7faa49bde4f63a69d39c073002d881e3b1" + integrity sha512-iYb6P/92wsc0CL3hHVlOgT5cvPkub+wkCCcWz8ON+hWcdsyvqjhLLVsrpxj/p5H2GRwY3lZA8/55doBlTjZydw== dependencies: config "^1.29.2" dedent "^0.7.0" From 2e48bd94b35a4f1aa93d2148680b3494f0547cda Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Fri, 15 Mar 2019 23:23:22 +0100 Subject: [PATCH 040/337] update sketch-templater --- packages/models/package.json | 4 ++-- yarn.lock | 8 ++++---- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/models/package.json b/packages/models/package.json index f79e36c3..604bea5c 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -6,7 +6,7 @@ "license": "MIT", "dependencies": { "@sensebox/osem-protos": "^1.1.0", - "@sensebox/sketch-templater": "^1.4.0-beta.4", + "@sensebox/sketch-templater": "^1.4.0", "bcrypt": "^1.0.2", "bunyan": "^1.8.12", "config": "^1.29.2", @@ -27,4 +27,4 @@ "publishConfig": { "access": "public" } -} +} \ No newline at end of file diff --git a/yarn.lock b/yarn.lock index d3d29605..f52e0cf2 100644 --- a/yarn.lock +++ b/yarn.lock @@ -19,10 +19,10 @@ resolved "https://registry.yarnpkg.com/@sensebox/osem-protos/-/osem-protos-1.1.0.tgz#a7de8bc6be867953f1309181a012063c23299e79" integrity sha512-H+nUVcWlT0dvIqfJnYHuX9JBcCkP1ZKGE5YTRNWPbAEdZ11h+srpQsmeI58wK5hJcdukaZAjc4Dy96IeGM77aA== -"@sensebox/sketch-templater@^1.4.0-beta.4": - version "1.4.0-beta.4" - resolved "https://registry.yarnpkg.com/@sensebox/sketch-templater/-/sketch-templater-1.4.0-beta.4.tgz#76cd8d7faa49bde4f63a69d39c073002d881e3b1" - integrity sha512-iYb6P/92wsc0CL3hHVlOgT5cvPkub+wkCCcWz8ON+hWcdsyvqjhLLVsrpxj/p5H2GRwY3lZA8/55doBlTjZydw== +"@sensebox/sketch-templater@^1.4.0": + version "1.4.0" + resolved "https://registry.yarnpkg.com/@sensebox/sketch-templater/-/sketch-templater-1.4.0.tgz#f6b91651a372b5961dcae9c1490916953fc7b092" + integrity sha512-vRI6h1/UKxQ/suIu7ZTscYpfFQdroyeItX5NslA/4ZWtDrq0bDWD7L/I7VXkLgpYkc090D8GradF8heHaScgBQ== dependencies: config "^1.29.2" dedent "^0.7.0" From 94d25bd41cd41ba2238b3c1b79545ced6ec9fbbc Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Fri, 15 Mar 2019 23:48:40 +0100 Subject: [PATCH 041/337] v0.0.12 --- package.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/package.json b/package.json index 67b0732e..09b27b94 100644 --- a/package.json +++ b/package.json @@ -27,5 +27,6 @@ "mocha": "^5.0.0", "mqtt": "^2.15.1", "randomgeojson": "^1.0.0" - } + }, + "version": "0.0.12" } From 18f2c871991298bb2292fc2c6b315c00a5f89955 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Fri, 15 Mar 2019 23:54:33 +0100 Subject: [PATCH 042/337] remove version tag from package.json --- package.json | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/package.json b/package.json index 09b27b94..479d89a9 100644 --- a/package.json +++ b/package.json @@ -27,6 +27,5 @@ "mocha": "^5.0.0", "mqtt": "^2.15.1", "randomgeojson": "^1.0.0" - }, - "version": "0.0.12" -} + } +} \ No newline at end of file From 4690201b3b4e360ad10cfc4036c294cfd5321663 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Fri, 15 Mar 2019 23:54:51 +0100 Subject: [PATCH 043/337] v0.0.12 --- packages/models/CHANGELOG.md | 4 ++++ packages/models/package.json | 4 ++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/packages/models/CHANGELOG.md b/packages/models/CHANGELOG.md index 15ebabea..3da4bee3 100644 --- a/packages/models/CHANGELOG.md +++ b/packages/models/CHANGELOG.md @@ -2,6 +2,10 @@ ## Unreleased +## v0.0.12 +- Update @sensebox/node-sketch-templater to 1.4.0 +- set lastMeasurementAt on single measruement upload fixes #177 + ## v0.0.11 - **BREAKING CHANGE**: `/boxes` sensor does not contain `lastMeasurement` anymore - introduce `minimal` parameter to reduce payload on `/boxes` #164 diff --git a/packages/models/package.json b/packages/models/package.json index 604bea5c..8904b6bf 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -1,7 +1,7 @@ { "name": "@sensebox/opensensemap-api-models", "description": "openSenseMap data models and database connection", - "version": "0.0.11", + "version": "0.0.12", "main": "index.js", "license": "MIT", "dependencies": { @@ -27,4 +27,4 @@ "publishConfig": { "access": "public" } -} \ No newline at end of file +} From 2617cb0f99787a73577bc903ed91d259653d28fe Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Sat, 16 Mar 2019 00:07:30 +0100 Subject: [PATCH 044/337] (api) release v7 --- CHANGELOG.md | 4 ++++ packages/api/package.json | 4 ++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 68c3302e..3146a2db 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,10 @@ ## Unreleased +## v7 +- Use @sensebox/opensensemap-api-models v0.0.12 +- fix some bugs check CHANGELOG of models + ## v6 - Use @sensebox/opensensemap-api-models v0.0.11 - Support for `hackAIR` devices diff --git a/packages/api/package.json b/packages/api/package.json index dd8fe8ee..68c33227 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -10,7 +10,7 @@ "Norwin Roosen" ], "dependencies": { - "@sensebox/opensensemap-api-models": "^0.0.11", + "@sensebox/opensensemap-api-models": "^0.0.12", "@turf/area": "^4.6.0", "@turf/bbox": "^4.6.0", "@turf/centroid": "^4.6.1", @@ -38,4 +38,4 @@ "uuid": "^3.2.1" }, "private": true -} +} \ No newline at end of file From ba8a5b9ce034631b3cba8ca018ed5887de8f3956 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Sat, 13 Apr 2019 17:06:47 +0200 Subject: [PATCH 045/337] (models) Extend HackAir decoder and decode DHT22 values closes #181 --- .../models/src/measurement/decoding/hackairHandler.js | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/packages/models/src/measurement/decoding/hackairHandler.js b/packages/models/src/measurement/decoding/hackairHandler.js index e33488a1..c1a18e12 100644 --- a/packages/models/src/measurement/decoding/hackairHandler.js +++ b/packages/models/src/measurement/decoding/hackairHandler.js @@ -11,7 +11,9 @@ const { transformAndValidateMeasurements } = require('./validators'); * { * "reading": { * "PM2.5_AirPollutantValue": "7.93", - * "PM10_AirPollutantValue": "32.63" + * "PM10_AirPollutantValue": "32.63", + * "Temperature_Value": "21.60", + * "Humidity_Value":"80.10" * }, * "battery": "5.99", * "tamper": "0", @@ -28,7 +30,9 @@ const { transformAndValidateMeasurements } = require('./validators'); const matchings = { pm10: ['pm10', 'p10', 'p1'], - pm25: ['pm2.5', 'pm25', 'p2.5', 'p25', 'p2'] + pm25: ['pm2.5', 'pm25', 'p2.5', 'p25', 'p2'], + temperature: ['temperatur'], + humidity: ['rel. luftfeuchte', 'luftfeuchtigkeit', 'luftfeuchte'] }; const findSensorId = function findSensorId (sensors, reading) { From a1a05a151e9195eb5acf01f148ab79b8a78b858b Mon Sep 17 00:00:00 2001 From: Norwin Date: Fri, 26 Apr 2019 20:15:22 +0200 Subject: [PATCH 046/337] fix Content-Type header values in api doc cc https://github.com/sensebox/openSenseMap/issues/313 --- packages/api/lib/controllers/measurementsController.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/api/lib/controllers/measurementsController.js b/packages/api/lib/controllers/measurementsController.js index e2b412bf..58c7d2fa 100644 --- a/packages/api/lib/controllers/measurementsController.js +++ b/packages/api/lib/controllers/measurementsController.js @@ -221,10 +221,10 @@ const postNewMeasurement = async function postNewMeasurement (req, res, next) { * Decoding of hackAIR json format. Activate by specifying `hackair=true` in the query string. The API now tries to convert the values in the `reading` key to the openSenseMap JSON Array format. Sensors are matched by the key `sensor_description` against the `title` of the sensors of this box. `PM2.5_AirPollutantValue` matches sensors with title `PM2.5`, `PM10_AirPollutantValue` matches sensors with title `PM10`. You can find all matchings in the source code of the openSenseMap-API (`lib/decoding/hackAirHandler.js`) * * **senseBox Bytes Format**
- * Submit measurements as raw bytes. Set the "content-type" header to `application/snsbx-bytes`. Send measurements as 12 byte sensor Id with most significant byte first followed by 4 byte float measurement in little endian (least significant byte first) notation. A valid measurement could look like this:
[ 0x59, 0x5f, 0x9a, 0x28, 0x2d, 0xcb, 0xee, 0x77, 0xac, 0x0e, 0x5d, 0xc4, 0x9a, 0x99, 0x89, 0x40 ] but encoded as raw bytes. Multiple measurements are just multiple tuples of id and value. The number of bytes should be a multiple of 16. + * Submit measurements as raw bytes. Set the "content-type" header to `application/sbx-bytes`. Send measurements as 12 byte sensor Id with most significant byte first followed by 4 byte float measurement in little endian (least significant byte first) notation. A valid measurement could look like this:
[ 0x59, 0x5f, 0x9a, 0x28, 0x2d, 0xcb, 0xee, 0x77, 0xac, 0x0e, 0x5d, 0xc4, 0x9a, 0x99, 0x89, 0x40 ] but encoded as raw bytes. Multiple measurements are just multiple tuples of id and value. The number of bytes should be a multiple of 16. * * **senseBox Bytes with Timestamp Format**
- * Submit measurements with timestamp as raw bytes. Set the "content-type" header to `application/snsbx-bytes-ts`. Send measurements as 12 byte sensor Id with most significant byte first followed by 4 byte float measurement in little endian (least significant byte first) notation followed by a 4 byte uint32_t unix timestamp in little endian (least significant byte first) notation. A valid measurement could look like this:
[ 0x59, 0x5f, 0x9a, 0x28, 0x2d, 0xcb, 0xee, 0x77, 0xac, 0x0e, 0x5d, 0xc4, 0x9a, 0x99, 0x89, 0x40, 0x34, 0x0c, 0x60, 0x59 ] but encoded as raw bytes. Multiple measurements are just multiple tuples of id, value and timestamp. The number of bytes should be a multiple of 20. + * Submit measurements with timestamp as raw bytes. Set the "content-type" header to `application/sbx-bytes-ts`. Send measurements as 12 byte sensor Id with most significant byte first followed by 4 byte float measurement in little endian (least significant byte first) notation followed by a 4 byte uint32_t unix timestamp in little endian (least significant byte first) notation. A valid measurement could look like this:
[ 0x59, 0x5f, 0x9a, 0x28, 0x2d, 0xcb, 0xee, 0x77, 0xac, 0x0e, 0x5d, 0xc4, 0x9a, 0x99, 0x89, 0x40, 0x34, 0x0c, 0x60, 0x59 ] but encoded as raw bytes. Multiple measurements are just multiple tuples of id, value and timestamp. The number of bytes should be a multiple of 20. * * For all encodings, the maximum count of values in one request is 2500. * From 9ecf16054ef0b66903bb7c9a58fc8f22667701dc Mon Sep 17 00:00:00 2001 From: Paul Reichmuth <50195869+PaulReichmuth@users.noreply.github.com> Date: Tue, 14 May 2019 14:28:41 +0200 Subject: [PATCH 047/337] Fixed Docs missunderstanding Added Lines to discribe the obligatory use of the Timestamp when posting with a Location --- packages/api/lib/controllers/measurementsController.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/api/lib/controllers/measurementsController.js b/packages/api/lib/controllers/measurementsController.js index e2b412bf..9c12cc03 100644 --- a/packages/api/lib/controllers/measurementsController.js +++ b/packages/api/lib/controllers/measurementsController.js @@ -179,7 +179,7 @@ const getDataMulti = async function getDataMulti (req, res, next) { * @apiUse LocationBody * @apiUse ContentTypeJSON * @apiParam (RequestBody) {String} value the measured value of the sensor. Also accepts JSON float numbers. - * @apiParam (RequestBody) {RFC3339Date} [createdAt] the timestamp of the measurement. Should conform to RFC 3339. + * @apiParam (RequestBody) {RFC3339Date} [createdAt] the timestamp of the measurement. Should conform to RFC 3339. Is needed when posting with Location Values! * @apiParam (RequestBody) {Location} [location] the WGS84-coordinates of the measurement. */ const postNewMeasurement = async function postNewMeasurement (req, res, next) { @@ -209,7 +209,7 @@ const postNewMeasurement = async function postNewMeasurement (req, res, next) { * Timestamp is optional. Do not submit a header. * * **JSON Array:**
- * You can submit your data as array. Your measurements should be objects with the keys `sensor`, `value` and optionally `createdAt` and `location`. Specify the header `content-type: application/json`. + * You can submit your data as array. Your measurements should be objects with the keys `sensor`, `value` and optionally `createdAt` and `location`. Specify the header `content-type: application/json`. If Location Values are posted, the Timestamp becomes obligatory. * * **JSON Object:**
* The third form is to encode your measurements in an object. Here, the keys of the object are the sensorIds, the values of the object are either just the `value` of your measurement or an array of the form `[value, createdAt, location]`, where the latter two values are optional. From 1ba871ce6c171d94e9168a0c075929efba50e691 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Fri, 6 Dec 2019 20:51:42 +0100 Subject: [PATCH 048/337] Added new sensors --- .../src/box/sensorLayouts/sensebox.home.mcu.js | 18 ++++++++++++++++-- .../sensorDefinitions/bme680_humidity.js | 8 ++++++++ .../sensorDefinitions/bme680_pressure.js | 8 ++++++++ .../sensorDefinitions/bme680_temperature.js | 8 ++++++++ .../sensorDefinitions/bme680_voc.js | 8 ++++++++ .../sensorLayouts/sensorDefinitions/index.js | 18 ++++++++++++++++-- .../sensorDefinitions/smt50_soilmoisture.js | 8 ++++++++ .../sensorDefinitions/smt50_soiltemperature.js | 8 ++++++++ .../sensorDefinitions/soundlevelmeter.js | 8 ++++++++ 9 files changed, 88 insertions(+), 4 deletions(-) create mode 100644 packages/models/src/box/sensorLayouts/sensorDefinitions/bme680_humidity.js create mode 100644 packages/models/src/box/sensorLayouts/sensorDefinitions/bme680_pressure.js create mode 100644 packages/models/src/box/sensorLayouts/sensorDefinitions/bme680_temperature.js create mode 100644 packages/models/src/box/sensorLayouts/sensorDefinitions/bme680_voc.js create mode 100644 packages/models/src/box/sensorLayouts/sensorDefinitions/smt50_soilmoisture.js create mode 100644 packages/models/src/box/sensorLayouts/sensorDefinitions/smt50_soiltemperature.js create mode 100644 packages/models/src/box/sensorLayouts/sensorDefinitions/soundlevelmeter.js diff --git a/packages/models/src/box/sensorLayouts/sensebox.home.mcu.js b/packages/models/src/box/sensorLayouts/sensebox.home.mcu.js index d20556f0..4e6ff50b 100644 --- a/packages/models/src/box/sensorLayouts/sensebox.home.mcu.js +++ b/packages/models/src/box/sensorLayouts/sensebox.home.mcu.js @@ -9,7 +9,14 @@ const { tsl45315_lightintensity, veml6070_uvintensity, sds011_pm10, - sds011_pm25 + sds011_pm25, + bme680_humidity, + bme680_temperature, + bme680_pressure, + bme680_voc, + smt50_soilmoisture, + smt50_soiltemperature, + soundlevelmeter } = sensorDefinitions; module.exports = [ @@ -19,5 +26,12 @@ module.exports = [ tsl45315_lightintensity, veml6070_uvintensity, sds011_pm10, - sds011_pm25 + sds011_pm25, + bme680_humidity, + bme680_temperature, + bme680_pressure, + bme680_voc, + smt50_soilmoisture, + smt50_soiltemperature, + soundlevelmeter ]; diff --git a/packages/models/src/box/sensorLayouts/sensorDefinitions/bme680_humidity.js b/packages/models/src/box/sensorLayouts/sensorDefinitions/bme680_humidity.js new file mode 100644 index 00000000..d3cfb565 --- /dev/null +++ b/packages/models/src/box/sensorLayouts/sensorDefinitions/bme680_humidity.js @@ -0,0 +1,8 @@ +'use strict'; + +module.exports = { + title: 'rel. Luftfeuchte', + unit: '%', + sensorType: 'BME680', + icon: 'osem-humidity' +}; diff --git a/packages/models/src/box/sensorLayouts/sensorDefinitions/bme680_pressure.js b/packages/models/src/box/sensorLayouts/sensorDefinitions/bme680_pressure.js new file mode 100644 index 00000000..e857963d --- /dev/null +++ b/packages/models/src/box/sensorLayouts/sensorDefinitions/bme680_pressure.js @@ -0,0 +1,8 @@ +'use strict'; + +module.exports = { + title: 'Luftdruck', + unit: 'hPa', + sensorType: 'BME680', + icon: 'osem-barometer' +}; diff --git a/packages/models/src/box/sensorLayouts/sensorDefinitions/bme680_temperature.js b/packages/models/src/box/sensorLayouts/sensorDefinitions/bme680_temperature.js new file mode 100644 index 00000000..a716e221 --- /dev/null +++ b/packages/models/src/box/sensorLayouts/sensorDefinitions/bme680_temperature.js @@ -0,0 +1,8 @@ +'use strict'; + +module.exports = { + title: 'Temperatur', + unit: '°C', + sensorType: 'BME680', + icon: 'osem-thermometer' +}; diff --git a/packages/models/src/box/sensorLayouts/sensorDefinitions/bme680_voc.js b/packages/models/src/box/sensorLayouts/sensorDefinitions/bme680_voc.js new file mode 100644 index 00000000..861b6ab5 --- /dev/null +++ b/packages/models/src/box/sensorLayouts/sensorDefinitions/bme680_voc.js @@ -0,0 +1,8 @@ +'use strict'; + +module.exports = { + title: 'VOC', + unit: 'kOhm', + sensorType: 'BME680', + icon: 'osem-thermometer' +}; diff --git a/packages/models/src/box/sensorLayouts/sensorDefinitions/index.js b/packages/models/src/box/sensorLayouts/sensorDefinitions/index.js index 711c46f7..89957ea0 100644 --- a/packages/models/src/box/sensorLayouts/sensorDefinitions/index.js +++ b/packages/models/src/box/sensorLayouts/sensorDefinitions/index.js @@ -31,7 +31,14 @@ const veml6070_uvintensity = require('./veml6070_uvintensity'), bme280_temperature = require('./bme280_temperature'), bme280_humidity = require('./bme280_humidity'), bme280_pressure_pa = require('./bme280_pressure_pa'), - bme280_pressure_hpa = require('./bme280_pressure_hpa'); + bme280_pressure_hpa = require('./bme280_pressure_hpa'), + bme680_humidity = require('./bme680_humidity'), + bme680_pressure = require('./bme680_pressure'), + bme680_temperature = require('./bme680_temperature'), + bme680_voc = require('./bme680_voc'), + smt50_soilmoisture = require('./smt50_soilmoisture'), + smt50_soiltemperature = require('./smt50_soiltemperature'), + soundlevelmeter = require('./soundlevelmeter'); module.exports = { hdc1008_temperature, @@ -65,5 +72,12 @@ module.exports = { bme280_temperature, bme280_humidity, bme280_pressure_pa, - bme280_pressure_hpa + bme280_pressure_hpa, + bme680_humidity, + bme680_pressure, + bme680_temperature, + bme680_voc, + smt50_soilmoisture, + smt50_soiltemperature, + soundlevelmeter }; diff --git a/packages/models/src/box/sensorLayouts/sensorDefinitions/smt50_soilmoisture.js b/packages/models/src/box/sensorLayouts/sensorDefinitions/smt50_soilmoisture.js new file mode 100644 index 00000000..e1ff6f55 --- /dev/null +++ b/packages/models/src/box/sensorLayouts/sensorDefinitions/smt50_soilmoisture.js @@ -0,0 +1,8 @@ +'use strict'; + +module.exports = { + title: 'Bodenfeuchte', + unit: '%', + sensorType: 'SMT50', + icon: 'osem-thermometer' +}; diff --git a/packages/models/src/box/sensorLayouts/sensorDefinitions/smt50_soiltemperature.js b/packages/models/src/box/sensorLayouts/sensorDefinitions/smt50_soiltemperature.js new file mode 100644 index 00000000..9069f7eb --- /dev/null +++ b/packages/models/src/box/sensorLayouts/sensorDefinitions/smt50_soiltemperature.js @@ -0,0 +1,8 @@ +'use strict'; + +module.exports = { + title: 'Bodentemperatur', + unit: '°C', + sensorType: 'SMT50', + icon: 'osem-thermometer' +}; diff --git a/packages/models/src/box/sensorLayouts/sensorDefinitions/soundlevelmeter.js b/packages/models/src/box/sensorLayouts/sensorDefinitions/soundlevelmeter.js new file mode 100644 index 00000000..1cc219cb --- /dev/null +++ b/packages/models/src/box/sensorLayouts/sensorDefinitions/soundlevelmeter.js @@ -0,0 +1,8 @@ +'use strict'; + +module.exports = { + title: 'Lautstärke', + unit: 'dB (A)', + sensorType: 'SOUNDLEVELMETER', + icon: 'osem-thermometer' +}; From 14ad25ded965b0756196f29dd539c3cb81cdb66f Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Fri, 6 Dec 2019 20:52:21 +0100 Subject: [PATCH 049/337] update sketch templater --- packages/models/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/models/package.json b/packages/models/package.json index 604bea5c..0f23d9eb 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -6,7 +6,7 @@ "license": "MIT", "dependencies": { "@sensebox/osem-protos": "^1.1.0", - "@sensebox/sketch-templater": "^1.4.0", + "@sensebox/sketch-templater": "^1.5.0", "bcrypt": "^1.0.2", "bunyan": "^1.8.12", "config": "^1.29.2", From 43a999634e177617229c758daba4522f5557d384 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Fri, 6 Dec 2019 20:53:09 +0100 Subject: [PATCH 050/337] update allowed sensorTemplate values --- .../api/lib/controllers/boxesController.js | 4 +- yarn.lock | 518 +----------------- 2 files changed, 5 insertions(+), 517 deletions(-) diff --git a/packages/api/lib/controllers/boxesController.js b/packages/api/lib/controllers/boxesController.js index f70f32e3..cbed0c06 100644 --- a/packages/api/lib/controllers/boxesController.js +++ b/packages/api/lib/controllers/boxesController.js @@ -380,7 +380,7 @@ const getBox = async function getBox (req, res, next) { * @apiParam (RequestBody) {Location} location the coordinates of this senseBox. * @apiParam (RequestBody) {String="homeV2Lora","homeV2Ethernet","homeV2Wifi","homeEthernet","homeWifi","homeEthernetFeinstaub","homeWifiFeinstaub","luftdaten_sds011","luftdaten_sds011_dht11","luftdaten_sds011_dht22","luftdaten_sds011_bmp180","luftdaten_sds011_bme280","hackair_home_v2"} [model] specify the model if you want to use a predefined senseBox model, autocreating sensor definitions. * @apiParam (RequestBody) {Sensor[]} [sensors] an array containing the sensors of this senseBox. Only use if `model` is unspecified. - * @apiParam (RequestBody) {String="hdc1080","bmp280","tsl45315","veml6070","sds011"} [sensorTemplates] Specify which sensors should be included. + * @apiParam (RequestBody) {String="hdc1080","bmp280","tsl45315","veml6070","sds011","bme680","smt50","soundlevelmeter"} [sensorTemplates] Specify which sensors should be included. * @apiParam (RequestBody) {Object} [mqtt] specify parameters of the MQTT integration for external measurement upload. Please see below for the accepted parameters * @apiParam (RequestBody) {Object} [ttn] specify parameters for the TTN integration for measurement from TheThingsNetwork.org upload. Please see below for the accepted parameters * @@ -504,7 +504,7 @@ module.exports = { { name: 'exposure', allowedValues: Box.BOX_VALID_EXPOSURES }, { name: 'model', allowedValues: Box.BOX_VALID_MODELS }, { name: 'sensors', dataType: ['object'] }, - { name: 'sensorTemplates', dataType: ['String'], allowedValues: ['hdc1080', 'bmp280', 'sds 011', 'tsl45315', 'veml6070'] }, + { name: 'sensorTemplates', dataType: ['String'], allowedValues: ['hdc1080', 'bmp280', 'sds 011', 'tsl45315', 'veml6070', 'bme680', 'smt50', 'soundlevelmeter'] }, { name: 'serialPort', dataType: 'String', defaultValue: 'Serial1', allowedValues: ['Serial1', 'Serial2'] }, { name: 'mqtt', dataType: 'object' }, { name: 'ttn', dataType: 'object' }, diff --git a/yarn.lock b/yarn.lock index f52e0cf2..a82a8be8 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5,24 +5,20 @@ "@mapbox/geojson-area@^0.2.2": version "0.2.2" resolved "https://registry.yarnpkg.com/@mapbox/geojson-area/-/geojson-area-0.2.2.tgz#18d7814aa36bf23fbbcc379f8e26a22927debf10" - integrity sha1-GNeBSqNr8j+7zDefjiaiKSfevxA= dependencies: wgs84 "0.0.0" "@sensebox/eslint-config-sensebox@^1.1.0": version "1.1.0" resolved "https://registry.yarnpkg.com/@sensebox/eslint-config-sensebox/-/eslint-config-sensebox-1.1.0.tgz#2fec4ec7945f34e7296c619fabd589d722ecd984" - integrity sha512-MhwFHGmt7X/Wb/aISS/pJvBuO8HqpkVfB8GsUKOosWEfvug4cTN7N/pXBOxINukG34LcKDLp1xdyxuEo64CMSw== "@sensebox/osem-protos@^1.1.0": version "1.1.0" resolved "https://registry.yarnpkg.com/@sensebox/osem-protos/-/osem-protos-1.1.0.tgz#a7de8bc6be867953f1309181a012063c23299e79" - integrity sha512-H+nUVcWlT0dvIqfJnYHuX9JBcCkP1ZKGE5YTRNWPbAEdZ11h+srpQsmeI58wK5hJcdukaZAjc4Dy96IeGM77aA== -"@sensebox/sketch-templater@^1.4.0": - version "1.4.0" - resolved "https://registry.yarnpkg.com/@sensebox/sketch-templater/-/sketch-templater-1.4.0.tgz#f6b91651a372b5961dcae9c1490916953fc7b092" - integrity sha512-vRI6h1/UKxQ/suIu7ZTscYpfFQdroyeItX5NslA/4ZWtDrq0bDWD7L/I7VXkLgpYkc090D8GradF8heHaScgBQ== +"@sensebox/sketch-templater@^1.5.0": + version "1.5.0" + resolved "https://registry.yarnpkg.com/@sensebox/sketch-templater/-/sketch-templater-1.5.0.tgz#fc84a037e3019f3357d1798515c437e59e849d64" dependencies: config "^1.29.2" dedent "^0.7.0" @@ -30,12 +26,10 @@ "@sindresorhus/is@^0.7.0": version "0.7.0" resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-0.7.0.tgz#9a06f4f137ee84d7df0460c1fdb1135ffa6c50fd" - integrity sha512-ONhaKPIufzzrlNbqtWFFd+jlnemX6lJAgq9ZeiZtS7I1PIf/la7CW4m83rTXRnVnsMbW2k56pGYu7AUFJD9Pow== "@turf/area@^4.6.0": version "4.7.3" resolved "https://registry.yarnpkg.com/@turf/area/-/area-4.7.3.tgz#5cc45b5a524e98e1c171e7190709c669ca699305" - integrity sha1-XMRbWlJOmOHBcecZBwnGacppkwU= dependencies: "@mapbox/geojson-area" "^0.2.2" "@turf/meta" "^4.7.3" @@ -43,14 +37,12 @@ "@turf/bbox@^4.6.0", "@turf/bbox@^4.7.3": version "4.7.3" resolved "https://registry.yarnpkg.com/@turf/bbox/-/bbox-4.7.3.tgz#e3ad4f10a7e9b41b522880d33083198199059067" - integrity sha1-461PEKfptBtSKIDTMIMZgZkFkGc= dependencies: "@turf/meta" "^4.7.3" "@turf/centroid@^4.6.1": version "4.7.3" resolved "https://registry.yarnpkg.com/@turf/centroid/-/centroid-4.7.3.tgz#205a7675719b0c8e175bb7565c5d6fe267d88175" - integrity sha1-IFp2dXGbDI4XW7dWXF1v4mfYgXU= dependencies: "@turf/helpers" "^4.7.3" "@turf/meta" "^4.7.3" @@ -58,7 +50,6 @@ "@turf/distance@^4.6.0", "@turf/distance@^4.7.3": version "4.7.3" resolved "https://registry.yarnpkg.com/@turf/distance/-/distance-4.7.3.tgz#b5ab48a09a642706d65c39b919433d5d2cc571b1" - integrity sha1-tatIoJpkJwbWXDm5GUM9XSzFcbE= dependencies: "@turf/helpers" "^4.7.3" "@turf/invariant" "^4.7.3" @@ -66,12 +57,10 @@ "@turf/helpers@^4.6.0", "@turf/helpers@^4.7.3": version "4.7.3" resolved "https://registry.yarnpkg.com/@turf/helpers/-/helpers-4.7.3.tgz#bc312ac43cab3c532a483151c4c382c5649429e9" - integrity sha1-vDEqxDyrPFMqSDFRxMOCxWSUKek= "@turf/hex-grid@^4.6.1": version "4.7.3" resolved "https://registry.yarnpkg.com/@turf/hex-grid/-/hex-grid-4.7.3.tgz#6eacc4d153cf430777deae7a48698cfb27ae7ec6" - integrity sha1-bqzE0VPPQwd33q56SGmM+yeufsY= dependencies: "@turf/distance" "^4.7.3" "@turf/helpers" "^4.7.3" @@ -79,17 +68,14 @@ "@turf/invariant@^4.6.0", "@turf/invariant@^4.7.3": version "4.7.3" resolved "https://registry.yarnpkg.com/@turf/invariant/-/invariant-4.7.3.tgz#538f367d23c113fc849d70c9a524b8563874601d" - integrity sha1-U482fSPBE/yEnXDJpSS4Vjh0YB0= "@turf/meta@^4.7.3": version "4.7.4" resolved "https://registry.yarnpkg.com/@turf/meta/-/meta-4.7.4.tgz#6de2f1e9890b8f64b669e4b47c09b20893063977" - integrity sha1-beLx6YkLj2S2aeS0fAmyCJMGOXc= "@turf/square-grid@^4.6.0": version "4.7.3" resolved "https://registry.yarnpkg.com/@turf/square-grid/-/square-grid-4.7.3.tgz#b3e896b132a34fcc77ed3907efd9a4444db62259" - integrity sha1-s+iWsTKjT8x37TkH79mkRE22Ilk= dependencies: "@turf/bbox" "^4.7.3" "@turf/distance" "^4.7.3" @@ -98,7 +84,6 @@ "@turf/triangle-grid@^4.6.0": version "4.7.3" resolved "https://registry.yarnpkg.com/@turf/triangle-grid/-/triangle-grid-4.7.3.tgz#ced61311c51c0d1483ec038fedc9bbd0017e8900" - integrity sha1-ztYTEcUcDRSD7AOP7cm70AF+iQA= dependencies: "@turf/distance" "^4.7.3" "@turf/helpers" "^4.7.3" @@ -106,49 +91,40 @@ "@types/node@^6.0.46": version "6.0.88" resolved "https://registry.yarnpkg.com/@types/node/-/node-6.0.88.tgz#f618f11a944f6a18d92b5c472028728a3e3d4b66" - integrity sha512-bYDPZTX0/s1aihdjLuAgogUAT5M+TpoWChEMea2p0yOcfn5bu3k6cJb9cp6nw268XeSNIGGr+4+/8V5K6BGzLQ== JSONSelect@0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/JSONSelect/-/JSONSelect-0.4.0.tgz#a08edcc67eb3fcbe99ed630855344a0cf282bb8d" - integrity sha1-oI7cxn6z/L6Z7WMIVTRKDPKCu40= abbrev@1: version "1.1.1" resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" - integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q== acorn-jsx@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-3.0.1.tgz#afdf9488fb1ecefc8348f6fb22f464e32a58b36b" - integrity sha1-r9+UiPsezvyDSPb7IvRk4ypYs2s= dependencies: acorn "^3.0.4" acorn@^3.0.4: version "3.3.0" resolved "https://registry.yarnpkg.com/acorn/-/acorn-3.3.0.tgz#45e37fb39e8da3f25baee3ff5369e2bb5f22017a" - integrity sha1-ReN/s56No/JbruP/U2niu18iAXo= acorn@^5.2.1: version "5.3.0" resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.3.0.tgz#7446d39459c54fb49a80e6ee6478149b940ec822" - integrity sha512-Yej+zOJ1Dm/IMZzzj78OntP/r3zHEaKcyNoU2lAaxPtrseM6rF0xwqoz5Q5ysAiED9hTjI2hgtvLXitlCN1/Ug== addressparser@~1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/addressparser/-/addressparser-1.0.1.tgz#47afbe1a2a9262191db6838e4fd1d39b40821746" - integrity sha1-R6++GiqSYhkdtoOOT9HTm0CCF0Y= ajv-keywords@^2.1.0: version "2.1.1" resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-2.1.1.tgz#617997fc5f60576894c435f940d819e135b80762" - integrity sha1-YXmX/F9gV2iUxDX5QNgZ4TW4B2I= ajv@^4.9.1: version "4.11.8" resolved "https://registry.yarnpkg.com/ajv/-/ajv-4.11.8.tgz#82ffb02b29e662ae53bdc20af15947706739c536" - integrity sha1-gv+wKynmYq5TvcIK8VlHcGc5xTY= dependencies: co "^4.6.0" json-stable-stringify "^1.0.1" @@ -156,7 +132,6 @@ ajv@^4.9.1: ajv@^5.1.0: version "5.5.1" resolved "https://registry.yarnpkg.com/ajv/-/ajv-5.5.1.tgz#b38bb8876d9e86bee994956a04e721e88b248eb2" - integrity sha1-s4u4h22ehr7plJVqBOch6IskjrI= dependencies: co "^4.6.0" fast-deep-equal "^1.0.0" @@ -166,7 +141,6 @@ ajv@^5.1.0: ajv@^5.2.3, ajv@^5.3.0: version "5.5.2" resolved "https://registry.yarnpkg.com/ajv/-/ajv-5.5.2.tgz#73b5eeca3fab653e3d3f9422b341ad42205dc965" - integrity sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU= dependencies: co "^4.6.0" fast-deep-equal "^1.0.0" @@ -176,44 +150,36 @@ ajv@^5.2.3, ajv@^5.3.0: ansi-escapes@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.0.0.tgz#ec3e8b4e9f8064fc02c3ac9b65f1c275bda8ef92" - integrity sha512-O/klc27mWNUigtv0F8NJWbLF00OcegQalkqKURWdosW08YZKi4m6CnSUSvIZG1otNJbTWhN01Hhz389DW7mvDQ== ansi-regex@^2.0.0: version "2.1.1" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" - integrity sha1-w7M6te42DYbg5ijwRorn7yfWVN8= ansi-regex@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998" - integrity sha1-7QMXwyIGT3lGbAKWa922Bas32Zg= ansi-styles@^2.2.1: version "2.2.1" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" - integrity sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4= ansi-styles@^3.1.0: version "3.2.0" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.0.tgz#c159b8d5be0f9e5a6f346dab94f16ce022161b88" - integrity sha512-NnSOmMEYtVR2JVMIGTzynRkkaxtiq1xnFBcdQD/DnNCYPoEPsVJhM98BDyaoNOQIi7p4okdi3E27eN7GQbsUug== dependencies: color-convert "^1.9.0" apicache@^0.10.0: version "0.10.0" resolved "https://registry.yarnpkg.com/apicache/-/apicache-0.10.0.tgz#79687842020647a91aa87e0e74680bcc0610584e" - integrity sha512-7u2OdPlqTwlvqTC7ztCT1rfUB+0hDSSwKIH89fEOUWzvpwDyfOXbchKsSzUXH3sX/YW93ti4mcRC2mAk0PMkzQ== aproba@^1.0.3: version "1.2.0" resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" - integrity sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw== are-we-there-yet@~1.1.2: version "1.1.4" resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz#bb5dca382bb94f05e15194373d16fd3ba1ca110d" - integrity sha1-u13KOCu5TwXhUZQ3PRb9O6HKEQ0= dependencies: delegates "^1.0.0" readable-stream "^2.0.6" @@ -221,31 +187,26 @@ are-we-there-yet@~1.1.2: argparse@^1.0.7: version "1.0.9" resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.9.tgz#73d83bc263f86e97f8cc4f6bae1b0e90a7d22c86" - integrity sha1-c9g7wmP4bpf4zE9rrhsOkKfSLIY= dependencies: sprintf-js "~1.0.2" array-union@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39" - integrity sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk= dependencies: array-uniq "^1.0.1" array-uniq@^1.0.1: version "1.0.3" resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6" - integrity sha1-r2rId6Jcx/dOBYiUdThY39sk/bY= arrify@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" - integrity sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0= ascli@~1: version "1.0.1" resolved "https://registry.yarnpkg.com/ascli/-/ascli-1.0.1.tgz#bcfa5974a62f18e81cabaeb49732ab4a88f906bc" - integrity sha1-vPpZdKYvGOgcq660lzKrSoj5Brw= dependencies: colour "~0.7.1" optjs "~3.2.2" @@ -253,59 +214,48 @@ ascli@~1: asn1@~0.2.3: version "0.2.3" resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.3.tgz#dac8787713c9966849fc8180777ebe9c1ddf3b86" - integrity sha1-2sh4dxPJlmhJ/IGAd36+nB3fO4Y= assert-plus@1.0.0, assert-plus@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" - integrity sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU= assert-plus@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-0.2.0.tgz#d74e1b87e7affc0db8aadb7021f3fe48101ab234" - integrity sha1-104bh+ev/A24qttwIfP+SBAasjQ= assertion-error@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/assertion-error/-/assertion-error-1.0.2.tgz#13ca515d86206da0bac66e834dd397d87581094c" - integrity sha1-E8pRXYYgbaC6xm6DTdOX2HWBCUw= async-limiter@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/async-limiter/-/async-limiter-1.0.0.tgz#78faed8c3d074ab81f22b4e985d79e8738f720f8" - integrity sha512-jp/uFnooOiO+L211eZOoSyzpOITMXx1rBITauYykG3BRYPu8h0UcxsPNB04RR5vo4Tyz3+ay17tR6JVf9qzYWg== async@2.1.4: version "2.1.4" resolved "https://registry.yarnpkg.com/async/-/async-2.1.4.tgz#2d2160c7788032e4dd6cbe2502f1f9a2c8f6cde4" - integrity sha1-LSFgx3iAMuTdbL4lAvH5osj2zeQ= dependencies: lodash "^4.14.0" asynckit@^0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" - integrity sha1-x57Zf380y48robyXkLzDZkdLS3k= aws-sign2@~0.6.0: version "0.6.0" resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.6.0.tgz#14342dd38dbcc94d0e5b87d763cd63612c0e794f" - integrity sha1-FDQt0428yU0OW4fXY81jYSwOeU8= aws-sign2@~0.7.0: version "0.7.0" resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8" - integrity sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg= aws4@^1.2.1, aws4@^1.6.0: version "1.6.0" resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.6.0.tgz#83ef5ca860b2b32e4a0deedee8c771b9db57471e" - integrity sha1-g+9cqGCysy5KDe7e6MdxudtXRx4= babel-code-frame@^6.22.0: version "6.26.0" resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.26.0.tgz#63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b" - integrity sha1-Y/1D99weO7fONZR9uP42mj9Yx0s= dependencies: chalk "^1.1.3" esutils "^2.0.2" @@ -314,24 +264,20 @@ babel-code-frame@^6.22.0: balanced-match@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" - integrity sha1-ibTRmasr7kneFk6gK4nORi1xt2c= base64url@2.0.0, base64url@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/base64url/-/base64url-2.0.0.tgz#eac16e03ea1438eff9423d69baa36262ed1f70bb" - integrity sha1-6sFuA+oUOO/5Qj1puqNiYu0fcLs= bcrypt-pbkdf@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz#63bc5dcb61331b92bc05fd528953c33462a06f8d" - integrity sha1-Y7xdy2EzG5K8Bf1SiVPDNGKgb40= dependencies: tweetnacl "^0.14.3" bcrypt@^1.0.2: version "1.0.3" resolved "https://registry.yarnpkg.com/bcrypt/-/bcrypt-1.0.3.tgz#b02ddc6c0b52ea16b8d3cf375d5a32e780dab548" - integrity sha512-pRyDdo73C8Nim3jwFJ7DWe3TZCgwDfWZ6nHS5LSdU77kWbj1frruvdndP02AOavtD4y8v6Fp2dolbHgp4SDrfg== dependencies: nan "2.6.2" node-pre-gyp "0.6.36" @@ -339,52 +285,44 @@ bcrypt@^1.0.2: bl@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/bl/-/bl-1.2.1.tgz#cac328f7bee45730d404b692203fcb590e172d5e" - integrity sha1-ysMo977kVzDUBLaSID/LWQ4XLV4= dependencies: readable-stream "^2.0.5" block-stream@*: version "0.0.9" resolved "https://registry.yarnpkg.com/block-stream/-/block-stream-0.0.9.tgz#13ebfe778a03205cfe03751481ebb4b3300c126a" - integrity sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo= dependencies: inherits "~2.0.0" bluebird@3.5.0: version "3.5.0" resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.0.tgz#791420d7f551eea2897453a8a77653f96606d67c" - integrity sha1-eRQg1/VR7qKJdFOop3ZT+WYG1nw= boolbase@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" - integrity sha1-aN/1++YMUes3cl6p4+0xDcwed24= boom@2.x.x: version "2.10.1" resolved "https://registry.yarnpkg.com/boom/-/boom-2.10.1.tgz#39c8918ceff5799f83f9492a848f625add0c766f" - integrity sha1-OciRjO/1eZ+D+UkqhI9iWt0Mdm8= dependencies: hoek "2.x.x" boom@4.x.x: version "4.3.1" resolved "https://registry.yarnpkg.com/boom/-/boom-4.3.1.tgz#4f8a3005cb4a7e3889f749030fd25b96e01d2e31" - integrity sha1-T4owBctKfjiJ90kDD9JbluAdLjE= dependencies: hoek "4.x.x" boom@5.x.x: version "5.2.0" resolved "https://registry.yarnpkg.com/boom/-/boom-5.2.0.tgz#5dd9da6ee3a5f302077436290cb717d3f4a54e02" - integrity sha512-Z5BTk6ZRe4tXXQlkqftmsAUANpXmuwlsF5Oov8ThoMbQRzdGTA1ngYRW160GexgOgjsFOKJz0LYhoNi+2AMBUw== dependencies: hoek "4.x.x" brace-expansion@^1.1.7: version "1.1.11" resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" - integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== dependencies: balanced-match "^1.0.0" concat-map "0.0.1" @@ -392,27 +330,22 @@ brace-expansion@^1.1.7: browser-stdout@1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/browser-stdout/-/browser-stdout-1.3.0.tgz#f351d32969d32fa5d7a5567154263d928ae3bd1f" - integrity sha1-81HTKWnTL6XXpVZxVCY9korjvR8= bson@~1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/bson/-/bson-1.0.4.tgz#93c10d39eaa5b58415cbc4052f3e53e562b0b72c" - integrity sha1-k8ENOeqltYQVy8QFLz5T5WKwtyw= buffer-equal-constant-time@1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz#f8e71132f7ffe6e01a5c9697a4c6f3e48d5cc819" - integrity sha1-+OcRMvf/5uAaXJaXpMbz5I1cyBk= buffer-shims@^1.0.0, buffer-shims@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/buffer-shims/-/buffer-shims-1.0.0.tgz#9978ce317388c649ad8793028c3477ef044a8b51" - integrity sha1-mXjOMXOIxkmth5MCjDR37wRKi1E= bunyan@^1.8.1, bunyan@^1.8.12: version "1.8.12" resolved "https://registry.yarnpkg.com/bunyan/-/bunyan-1.8.12.tgz#f150f0f6748abdd72aeae84f04403be2ef113797" - integrity sha1-8VDw9nSKvdcq6uhPBEA74u8RN5c= optionalDependencies: dtrace-provider "~0.8" moment "^2.10.6" @@ -422,14 +355,12 @@ bunyan@^1.8.1, bunyan@^1.8.12: bytebuffer@~5: version "5.0.1" resolved "https://registry.yarnpkg.com/bytebuffer/-/bytebuffer-5.0.1.tgz#582eea4b1a873b6d020a48d58df85f0bba6cfddd" - integrity sha1-WC7qSxqHO20CCkjVjfhfC7ps/d0= dependencies: long "~3" cacheable-request@^2.1.1: version "2.1.4" resolved "https://registry.yarnpkg.com/cacheable-request/-/cacheable-request-2.1.4.tgz#0d808801b6342ad33c91df9d0b44dc09b91e5c3d" - integrity sha1-DYCIAbY0KtM8kd+dC0TcCbkeXD0= dependencies: clone-response "1.0.2" get-stream "3.0.0" @@ -442,7 +373,6 @@ cacheable-request@^2.1.1: callback-stream@^1.0.2: version "1.1.0" resolved "https://registry.yarnpkg.com/callback-stream/-/callback-stream-1.1.0.tgz#4701a51266f06e06eaa71fc17233822d875f4908" - integrity sha1-RwGlEmbwbgbqpx/BcjOCLYdfSQg= dependencies: inherits "^2.0.1" readable-stream "> 1.0.0 < 3.0.0" @@ -450,44 +380,36 @@ callback-stream@^1.0.2: caller-path@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/caller-path/-/caller-path-0.1.0.tgz#94085ef63581ecd3daa92444a8fe94e82577751f" - integrity sha1-lAhe9jWB7NPaqSREqP6U6CV3dR8= dependencies: callsites "^0.2.0" callsites@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/callsites/-/callsites-0.2.0.tgz#afab96262910a7f33c19a5775825c69f34e350ca" - integrity sha1-r6uWJikQp/M8GaV3WCXGnzTjUMo= camelcase@^2.0.1: version "2.1.1" resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-2.1.1.tgz#7c1d16d679a1bbe59ca02cacecfb011e201f5a1f" - integrity sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8= caseless@~0.11.0: version "0.11.0" resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.11.0.tgz#715b96ea9841593cc33067923f5ec60ebda4f7d7" - integrity sha1-cVuW6phBWTzDMGeSP17GDr2k99c= caseless@~0.12.0: version "0.12.0" resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" - integrity sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw= chai-as-promised@5.x.x: version "5.3.0" resolved "https://registry.yarnpkg.com/chai-as-promised/-/chai-as-promised-5.3.0.tgz#09d7a402908aa70dfdbead53e5853fc79d3ef21c" - integrity sha1-CdekApCKpw39vq1T5YU/x50+8hw= chai-subset@1.x.x: version "1.5.0" resolved "https://registry.yarnpkg.com/chai-subset/-/chai-subset-1.5.0.tgz#d03dbcfa8c9daad848643bbde4e63376b7882427" - integrity sha1-0D28+oydqthIZDu95OYzdreIJCc= chai@3.x.x: version "3.5.0" resolved "https://registry.yarnpkg.com/chai/-/chai-3.5.0.tgz#4d02637b067fe958bdbfdd3a40ec56fef7373247" - integrity sha1-TQJjewZ/6Vi9v906QOxW/vc3Mkc= dependencies: assertion-error "^1.0.1" deep-eql "^0.1.3" @@ -496,7 +418,6 @@ chai@3.x.x: chai@^4.1.2: version "4.1.2" resolved "https://registry.yarnpkg.com/chai/-/chai-4.1.2.tgz#0f64584ba642f0f2ace2806279f4f06ca23ad73c" - integrity sha1-D2RYS6ZC8PKs4oBiefTwbKI61zw= dependencies: assertion-error "^1.0.1" check-error "^1.0.1" @@ -508,7 +429,6 @@ chai@^4.1.2: chakram@^1.5.0: version "1.5.0" resolved "https://registry.yarnpkg.com/chakram/-/chakram-1.5.0.tgz#3d8b0a88f768dd6ada592a524663cc0dc14ac1cf" - integrity sha1-PYsKiPdo3WraWSpSRmPMDcFKwc8= dependencies: chai "3.x.x" chai-as-promised "5.x.x" @@ -522,7 +442,6 @@ chakram@^1.5.0: chalk@^1.1.1, chalk@^1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" - integrity sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg= dependencies: ansi-styles "^2.2.1" escape-string-regexp "^1.0.2" @@ -533,7 +452,6 @@ chalk@^1.1.1, chalk@^1.1.3: chalk@^2.0.0, chalk@^2.1.0: version "2.3.0" resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.3.0.tgz#b5ea48efc9c1793dccc9b4767c93914d3f2d52ba" - integrity sha512-Az5zJR2CBujap2rqXGaJKaPHyJ0IrUimvYNX+ncCy8PJP4ltOGTrHUIo097ZaL2zMeKYpiCdqDvS6zdrTFok3Q== dependencies: ansi-styles "^3.1.0" escape-string-regexp "^1.0.5" @@ -542,17 +460,14 @@ chalk@^2.0.0, chalk@^2.1.0: chardet@^0.4.0: version "0.4.2" resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.4.2.tgz#b5473b33dc97c424e5d98dc87d55d4d8a29c8bf2" - integrity sha1-tUc7M9yXxCTl2Y3IfVXU2KKci/I= check-error@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/check-error/-/check-error-1.0.2.tgz#574d312edd88bb5dd8912e9286dd6c0aed4aac82" - integrity sha1-V00xLt2Iu13YkS6Sht1sCu1KrII= cheerio@^1.0.0-rc.2: version "1.0.0-rc.2" resolved "https://registry.yarnpkg.com/cheerio/-/cheerio-1.0.0-rc.2.tgz#4b9f53a81b27e4d5dac31c0ffd0cfa03cc6830db" - integrity sha1-S59TqBsn5NXawxwP/Qz6A8xoMNs= dependencies: css-select "~1.2.0" dom-serializer "~0.1.0" @@ -564,29 +479,24 @@ cheerio@^1.0.0-rc.2: circular-json@^0.3.1: version "0.3.3" resolved "https://registry.yarnpkg.com/circular-json/-/circular-json-0.3.3.tgz#815c99ea84f6809529d2f45791bdf82711352d66" - integrity sha512-UZK3NBx2Mca+b5LsG7bY183pHWt5Y1xts4P3Pz7ENTwGVnJOUWbRb3ocjvX7hx9tq/yTAdclXm9sZ38gNuem4A== cjson@~0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/cjson/-/cjson-0.2.1.tgz#73cd8aad65d9e1505f9af1744d3b79c1527682a5" - integrity sha1-c82KrWXZ4VBfmvF0TTt5wVJ2gqU= cli-cursor@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz#b35dac376479facc3e94747d41d0d0f5238ffcb5" - integrity sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU= dependencies: restore-cursor "^2.0.0" cli-width@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.0.tgz#ff19ede8a9a5e579324147b0c11f0fbcbabed639" - integrity sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk= cliui@^3.0.3: version "3.2.0" resolved "https://registry.yarnpkg.com/cliui/-/cliui-3.2.0.tgz#120601537a916d29940f934da3b48d585a39213d" - integrity sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0= dependencies: string-width "^1.0.1" strip-ansi "^3.0.1" @@ -595,7 +505,6 @@ cliui@^3.0.3: clone-regexp@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/clone-regexp/-/clone-regexp-1.0.0.tgz#eae0a2413f55c0942f818c229fefce845d7f3b1c" - integrity sha1-6uCiQT9VwJQvgYwin+/OhF1/Oxw= dependencies: is-regexp "^1.0.0" is-supported-regexp-flag "^1.0.0" @@ -603,63 +512,52 @@ clone-regexp@^1.0.0: clone-response@1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/clone-response/-/clone-response-1.0.2.tgz#d1dc973920314df67fbeb94223b4ee350239e96b" - integrity sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws= dependencies: mimic-response "^1.0.0" clone@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.2.tgz#260b7a99ebb1edfe247538175f783243cb19d149" - integrity sha1-Jgt6meux7f4kdTgXX3gyQ8sZ0Uk= co@^4.6.0: version "4.6.0" resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" - integrity sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ= code-point-at@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" - integrity sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c= color-convert@^1.9.0: version "1.9.1" resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.1.tgz#c1261107aeb2f294ebffec9ed9ecad529a6097ed" - integrity sha512-mjGanIiwQJskCC18rPR6OmrZ6fm2Lc7PeGFYwCmy5J34wC6F1PzdGL6xeMfmgicfYcNLGuVFA3WzXtIDCQSZxQ== dependencies: color-name "^1.1.1" color-name@^1.1.1: version "1.1.3" resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" - integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= colors@0.5.x: version "0.5.1" resolved "https://registry.yarnpkg.com/colors/-/colors-0.5.1.tgz#7d0023eaeb154e8ee9fce75dcb923d0ed1667774" - integrity sha1-fQAj6usVTo7p/Oddy5I9DtFmd3Q= colour@~0.7.1: version "0.7.1" resolved "https://registry.yarnpkg.com/colour/-/colour-0.7.1.tgz#9cb169917ec5d12c0736d3e8685746df1cadf778" - integrity sha1-nLFpkX7F0SwHNtPoaFdG3xyt93g= combined-stream@^1.0.5, combined-stream@~1.0.5: version "1.0.6" resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.6.tgz#723e7df6e801ac5613113a7e445a9b69cb632818" - integrity sha1-cj599ugBrFYTETp+RFqbactjKBg= dependencies: delayed-stream "~1.0.0" commander@2.11.0, commander@^2.9.0: version "2.11.0" resolved "https://registry.yarnpkg.com/commander/-/commander-2.11.0.tgz#157152fd1e7a6c8d98a5b715cf376df928004563" - integrity sha512-b0553uYA5YAEGgyYIGYROzKQ7X5RAqedkfjiZxwi0kL1g3bOaBNNZfYkzt/CL0umgD5wc9Jec2FbB98CjkMRvQ== commist@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/commist/-/commist-1.0.0.tgz#c0c352501cf6f52e9124e3ef89c9806e2022ebef" - integrity sha1-wMNSUBz29S6RJOPvicmAbiAi6+8= dependencies: leven "^1.0.0" minimist "^1.1.0" @@ -667,12 +565,10 @@ commist@^1.0.0: concat-map@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" - integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= concat-stream@^1.6.0: version "1.6.0" resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.0.tgz#0aac662fd52be78964d5532f694784e70110acf7" - integrity sha1-CqxmL9Ur54lk1VMvaUeE5wEQrPc= dependencies: inherits "^2.0.3" readable-stream "^2.2.2" @@ -681,7 +577,6 @@ concat-stream@^1.6.0: config@^1.29.2: version "1.30.0" resolved "https://registry.yarnpkg.com/config/-/config-1.30.0.tgz#1d60a9f35348a13c175798d384e81a5a16c3ba6e" - integrity sha1-HWCp81NIoTwXV5jThOgaWhbDum4= dependencies: json5 "0.4.0" os-homedir "1.0.2" @@ -689,17 +584,14 @@ config@^1.29.2: console-control-strings@^1.0.0, console-control-strings@~1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" - integrity sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4= core-util-is@1.0.2, core-util-is@~1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" - integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= cross-spawn@^5.1.0: version "5.1.0" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-5.1.0.tgz#e8bd0efee58fcff6f8f94510a0a554bbfa235449" - integrity sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk= dependencies: lru-cache "^4.0.1" shebang-command "^1.2.0" @@ -708,21 +600,18 @@ cross-spawn@^5.1.0: cryptiles@2.x.x: version "2.0.5" resolved "https://registry.yarnpkg.com/cryptiles/-/cryptiles-2.0.5.tgz#3bdfecdc608147c1c67202fa291e7dca59eaa3b8" - integrity sha1-O9/s3GCBR8HGcgL6KR59ylnqo7g= dependencies: boom "2.x.x" cryptiles@3.x.x: version "3.1.2" resolved "https://registry.yarnpkg.com/cryptiles/-/cryptiles-3.1.2.tgz#a89fbb220f5ce25ec56e8c4aa8a4fd7b5b0d29fe" - integrity sha1-qJ+7Ig9c4l7FboxKqKT9e1sNKf4= dependencies: boom "5.x.x" css-select@~1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/css-select/-/css-select-1.2.0.tgz#2b3a110539c5355f1cd8d314623e870b121ec858" - integrity sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg= dependencies: boolbase "~1.0.0" css-what "2.1" @@ -732,29 +621,24 @@ css-select@~1.2.0: css-what@2.1: version "2.1.0" resolved "https://registry.yarnpkg.com/css-what/-/css-what-2.1.0.tgz#9467d032c38cfaefb9f2d79501253062f87fa1bd" - integrity sha1-lGfQMsOM+u+58teVASUwYvh/ob0= csv-generate@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/csv-generate/-/csv-generate-1.1.2.tgz#ec6b00edaed6e59ad9c20582f4c364e28b146240" - integrity sha1-7GsA7a7W5ZrZwgWC9MNk4osUYkA= csv-parse@^1.2.1, csv-parse@^1.3.3: version "1.3.3" resolved "https://registry.yarnpkg.com/csv-parse/-/csv-parse-1.3.3.tgz#d1cfd8743c2f849a0abb2fd544db56695d19a490" - integrity sha1-0c/YdDwvhJoKuy/VRNtWaV0ZpJA= csv-stringify@^1.0.4, csv-stringify@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/csv-stringify/-/csv-stringify-1.1.2.tgz#77a41526581bce3380f12b00d7c5bbac70c82b58" - integrity sha1-d6QVJlgbzjOA8SsA18W7rHDIK1g= dependencies: lodash.get "~4.4.2" csv@^1.1.0: version "1.2.1" resolved "https://registry.yarnpkg.com/csv/-/csv-1.2.1.tgz#5231edfc1c7152512ec45781076a7a97ff525c0c" - integrity sha1-UjHt/BxxUlEuxFeBB2p6l/9SXAw= dependencies: csv-generate "^1.1.2" csv-parse "^1.3.3" @@ -764,86 +648,72 @@ csv@^1.1.0: dashdash@^1.12.0: version "1.14.1" resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" - integrity sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA= dependencies: assert-plus "^1.0.0" dashify@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/dashify/-/dashify-1.0.0.tgz#faa9365fbe72a688bcb5d6f2b270d370c96d575e" - integrity sha512-3uyC9AzRYm/9u2nqD8BpIBKsvHg/OfW3FLKS97mJPil2KzFNHgKta3yL2NfzMDY+0ArSLbKfgNXhgq0FyjOhoA== debug@2.6.9, debug@^2.2.0, debug@^2.6.8: version "2.6.9" resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" - integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== dependencies: ms "2.0.0" debug@3.1.0, debug@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261" - integrity sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g== dependencies: ms "2.0.0" decamelize@^1.1.1: version "1.2.0" resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" - integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= decode-uri-component@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545" - integrity sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU= decompress-response@^3.3.0: version "3.3.0" resolved "https://registry.yarnpkg.com/decompress-response/-/decompress-response-3.3.0.tgz#80a4dd323748384bfa248083622aedec982adff3" - integrity sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M= dependencies: mimic-response "^1.0.0" dedent@^0.7.0: version "0.7.0" resolved "https://registry.yarnpkg.com/dedent/-/dedent-0.7.0.tgz#2495ddbaf6eb874abb0e1be9df22d2e5a544326c" - integrity sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw= deep-eql@^0.1.3: version "0.1.3" resolved "https://registry.yarnpkg.com/deep-eql/-/deep-eql-0.1.3.tgz#ef558acab8de25206cd713906d74e56930eb69f2" - integrity sha1-71WKyrjeJSBs1xOQbXTlaTDrafI= dependencies: type-detect "0.1.1" deep-eql@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/deep-eql/-/deep-eql-3.0.1.tgz#dfc9404400ad1c8fe023e7da1df1c147c4b444df" - integrity sha512-+QeIQyN5ZuO+3Uk5DYh6/1eKO0m0YmJFGNmFHGACpf1ClL1nmlV/p4gNgbl2pJGxgXb4faqo6UE+M5ACEMyVcw== dependencies: type-detect "^4.0.0" deep-extend@~0.4.0: version "0.4.2" resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.4.2.tgz#48b699c27e334bf89f10892be432f6e4c7d34a7f" - integrity sha1-SLaZwn4zS/ifEIkr5DL25MfTSn8= deep-is@~0.1.3: version "0.1.3" resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" - integrity sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ= defaults@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/defaults/-/defaults-1.0.3.tgz#c656051e9817d9ff08ed881477f3fe4019f3ef7d" - integrity sha1-xlYFHpgX2f8I7YgUd/P+QBnz730= dependencies: clone "^1.0.2" del@^2.0.2: version "2.2.2" resolved "https://registry.yarnpkg.com/del/-/del-2.2.2.tgz#c12c981d067846c84bcaf862cff930d907ffd1a8" - integrity sha1-wSyYHQZ4RshLyvhiz/kw2Qf/0ag= dependencies: globby "^5.0.0" is-path-cwd "^1.0.0" @@ -856,39 +726,32 @@ del@^2.0.2: delayed-stream@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" - integrity sha1-3zrhmayt+31ECqrgsp4icrJOxhk= delegates@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" - integrity sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o= detect-libc@^1.0.2: version "1.0.3" resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b" - integrity sha1-+hN8S9aY7fVc1c0CrFWfkaTEups= detect-node@^2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/detect-node/-/detect-node-2.0.3.tgz#a2033c09cc8e158d37748fbde7507832bd6ce127" - integrity sha1-ogM8CcyOFY03dI+951B4Mr1s4Sc= diff@3.3.1: version "3.3.1" resolved "https://registry.yarnpkg.com/diff/-/diff-3.3.1.tgz#aa8567a6eed03c531fc89d3f711cd0e5259dec75" - integrity sha512-MKPHZDMB0o6yHyDryUOScqZibp914ksXwAMYMTHj6KO8UeKsRYNJD3oNCKjTqZon+V488P7N/HzXF8t7ZR95ww== doctrine@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-2.1.0.tgz#5cd01fc101621b42c4cd7f5d1a66243716d3f39d" - integrity sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw== dependencies: esutils "^2.0.2" dom-serializer@0, dom-serializer@~0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.1.0.tgz#073c697546ce0780ce23be4a28e293e40bc30c82" - integrity sha1-BzxpdUbOB4DOI75KKOKT5AvDDII= dependencies: domelementtype "~1.1.1" entities "~1.1.1" @@ -896,24 +759,20 @@ dom-serializer@0, dom-serializer@~0.1.0: domelementtype@1, domelementtype@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.3.0.tgz#b17aed82e8ab59e52dd9c19b1756e0fc187204c2" - integrity sha1-sXrtguirWeUt2cGbF1bg/BhyBMI= domelementtype@~1.1.1: version "1.1.3" resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.1.3.tgz#bd28773e2642881aec51544924299c5cd822185b" - integrity sha1-vSh3PiZCiBrsUVRJJCmcXNgiGFs= domhandler@^2.3.0: version "2.4.1" resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-2.4.1.tgz#892e47000a99be55bbf3774ffea0561d8879c259" - integrity sha1-iS5HAAqZvlW783dP/qBWHYh5wlk= dependencies: domelementtype "1" domutils@1.5.1: version "1.5.1" resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.5.1.tgz#dcd8488a26f563d61079e48c9f7b7e32373682cf" - integrity sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8= dependencies: dom-serializer "0" domelementtype "1" @@ -921,7 +780,6 @@ domutils@1.5.1: domutils@^1.5.1: version "1.6.2" resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.6.2.tgz#1958cc0b4c9426e9ed367fb1c8e854891b0fa3ff" - integrity sha1-GVjMC0yUJuntNn+xyOhUiRsPo/8= dependencies: dom-serializer "0" domelementtype "1" @@ -929,19 +787,16 @@ domutils@^1.5.1: dtrace-provider@^0.8.1, dtrace-provider@~0.8: version "0.8.5" resolved "https://registry.yarnpkg.com/dtrace-provider/-/dtrace-provider-0.8.5.tgz#98ebba221afac46e1c39fd36858d8f9367524b92" - integrity sha1-mOu6Ihr6xG4cOf02hY2Pk2dSS5I= dependencies: nan "^2.3.3" duplexer3@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/duplexer3/-/duplexer3-0.1.4.tgz#ee01dd1cac0ed3cbc7fdbea37dc0a8f1ce002ce2" - integrity sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI= duplexify@^3.5.1, duplexify@^3.5.3: version "3.5.3" resolved "https://registry.yarnpkg.com/duplexify/-/duplexify-3.5.3.tgz#8b5818800df92fd0125b27ab896491912858243e" - integrity sha512-g8ID9OroF9hKt2POf8YLayy+9594PzmM3scI00/uBXocX3TWNgoB67hjzkFe9ITAbQOne/lLdBxHXvYUM4ZgGA== dependencies: end-of-stream "^1.0.0" inherits "^2.0.1" @@ -951,19 +806,16 @@ duplexify@^3.5.1, duplexify@^3.5.3: ebnf-parser@~0.1.9: version "0.1.10" resolved "https://registry.yarnpkg.com/ebnf-parser/-/ebnf-parser-0.1.10.tgz#cd1f6ba477c5638c40c97ed9b572db5bab5d8331" - integrity sha1-zR9rpHfFY4xAyX7ZtXLbW6tdgzE= ecc-jsbn@~0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz#0fc73a9ed5f0d53c38193398523ef7e543777505" - integrity sha1-D8c6ntXw1Tw4GTOYUj735UN3dQU= dependencies: jsbn "~0.1.0" ecdsa-sig-formatter@1.0.9: version "1.0.9" resolved "https://registry.yarnpkg.com/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.9.tgz#4bc926274ec3b5abb5016e7e1d60921ac262b2a1" - integrity sha1-S8kmJ07Dtau1AW5+HWCSGsJisqE= dependencies: base64url "^2.0.0" safe-buffer "^5.0.1" @@ -971,41 +823,34 @@ ecdsa-sig-formatter@1.0.9: encoding@~0.1.12: version "0.1.12" resolved "https://registry.yarnpkg.com/encoding/-/encoding-0.1.12.tgz#538b66f3ee62cd1ab51ec323829d1f9480c74beb" - integrity sha1-U4tm8+5izRq1HsMjgp0flIDHS+s= dependencies: iconv-lite "~0.4.13" end-of-stream@^1.0.0, end-of-stream@^1.1.0: version "1.4.1" resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.1.tgz#ed29634d19baba463b6ce6b80a37213eab71ec43" - integrity sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q== dependencies: once "^1.4.0" entities@^1.1.1, entities@~1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.1.tgz#6e5c2d0a5621b5dadaecef80b90edfb5cd7772f0" - integrity sha1-blwtClYhtdra7O+AuQ7ftc13cvA= es6-promise@3.2.1: version "3.2.1" resolved "https://registry.yarnpkg.com/es6-promise/-/es6-promise-3.2.1.tgz#ec56233868032909207170c39448e24449dd1fc4" - integrity sha1-7FYjOGgDKQkgcXDDlEjiREndH8Q= escape-regexp-component@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/escape-regexp-component/-/escape-regexp-component-1.0.2.tgz#9c63b6d0b25ff2a88c3adbd18c5b61acc3b9faa2" - integrity sha1-nGO20LJf8qiMOtvRjFthrMO5+qI= escape-string-regexp@1.0.5, escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" - integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= escodegen@0.0.21: version "0.0.21" resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-0.0.21.tgz#53d652cfa1030388279458a5266c5ffc709c63c3" - integrity sha1-U9ZSz6EDA4gnlFilJmxf/HCcY8M= dependencies: esprima "~1.0.2" estraverse "~0.0.4" @@ -1015,7 +860,6 @@ escodegen@0.0.21: escodegen@^1.8.1: version "1.9.0" resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.9.0.tgz#9811a2f265dc1cd3894420ee3717064b632b8852" - integrity sha512-v0MYvNQ32bzwoG2OSFzWAkuahDQHK92JBN0pTAALJ4RIxEZe766QJPDR8Hqy7XNUy5K3fnVL76OqYAdc4TZEIw== dependencies: esprima "^3.1.3" estraverse "^4.2.0" @@ -1027,7 +871,6 @@ escodegen@^1.8.1: eslint-scope@^3.7.1: version "3.7.1" resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-3.7.1.tgz#3d63c3edfda02e06e01a452ad88caacc7cdcb6e8" - integrity sha1-PWPD7f2gLgbgGkUq2IyqzHzctug= dependencies: esrecurse "^4.1.0" estraverse "^4.1.1" @@ -1035,12 +878,10 @@ eslint-scope@^3.7.1: eslint-visitor-keys@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz#3f3180fb2e291017716acb4c9d6d5b5c34a6a81d" - integrity sha512-qzm/XxIbxm/FHyH341ZrbnMUpe+5Bocte9xkmFMzPMjRaZMcXww+MpBptFvtU+79L362nqiLhekCxCxDPaUMBQ== eslint@4.16.0: version "4.16.0" resolved "https://registry.yarnpkg.com/eslint/-/eslint-4.16.0.tgz#934ada9e98715e1d7bbfd6f6f0519ed2fab35cc1" - integrity sha512-YVXV4bDhNoHHcv0qzU4Meof7/P26B4EuaktMi5L1Tnt52Aov85KmYA8c5D+xyZr/BkhvwUqr011jDSD/QTULxg== dependencies: ajv "^5.3.0" babel-code-frame "^6.22.0" @@ -1083,7 +924,6 @@ eslint@4.16.0: espree@^3.5.2: version "3.5.2" resolved "https://registry.yarnpkg.com/espree/-/espree-3.5.2.tgz#756ada8b979e9dcfcdb30aad8d1a9304a905e1ca" - integrity sha512-sadKeYwaR/aJ3stC2CdvgXu1T16TdYN+qwCpcWbMnGJ8s0zNWemzrvb2GbD4OhmJ/fwpJjudThAlLobGbWZbCQ== dependencies: acorn "^5.2.1" acorn-jsx "^3.0.0" @@ -1091,34 +931,28 @@ espree@^3.5.2: esprima@1.0.x, esprima@~1.0.2: version "1.0.4" resolved "https://registry.yarnpkg.com/esprima/-/esprima-1.0.4.tgz#9f557e08fc3b4d26ece9dd34f8fbf476b62585ad" - integrity sha1-n1V+CPw7TSbs6d00+Pv0drYlha0= esprima@1.2.2: version "1.2.2" resolved "https://registry.yarnpkg.com/esprima/-/esprima-1.2.2.tgz#76a0fd66fcfe154fd292667dc264019750b1657b" - integrity sha1-dqD9Zvz+FU/SkmZ9wmQBl1CxZXs= esprima@^3.1.3: version "3.1.3" resolved "https://registry.yarnpkg.com/esprima/-/esprima-3.1.3.tgz#fdca51cee6133895e3c88d535ce49dbff62a4633" - integrity sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM= esprima@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.0.tgz#4499eddcd1110e0b218bacf2fa7f7f59f55ca804" - integrity sha512-oftTcaMu/EGrEIu904mWteKIv8vMuOgGYo7EhVJJN00R/EED9DCua/xxHRdYnKtcECzVg7xOWhflvJMnqcFZjw== esquery@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.0.0.tgz#cfba8b57d7fba93f17298a8a006a04cda13d80fa" - integrity sha1-z7qLV9f7qT8XKYqKAGoEzaE9gPo= dependencies: estraverse "^4.0.0" esrecurse@^4.1.0: version "4.2.0" resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.2.0.tgz#fa9568d98d3823f9a41d91e902dcab9ea6e5b163" - integrity sha1-+pVo2Y04I/mkHZHpAtyrnqblsWM= dependencies: estraverse "^4.1.0" object-assign "^4.0.1" @@ -1126,32 +960,26 @@ esrecurse@^4.1.0: estraverse@^4.0.0, estraverse@^4.1.0, estraverse@^4.1.1, estraverse@^4.2.0: version "4.2.0" resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.2.0.tgz#0dee3fed31fcd469618ce7342099fc1afa0bdb13" - integrity sha1-De4/7TH81GlhjOc0IJn8GvoL2xM= estraverse@~0.0.4: version "0.0.4" resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-0.0.4.tgz#01a0932dfee574684a598af5a67c3bf9b6428db2" - integrity sha1-AaCTLf7ldGhKWYr1pnw7+bZCjbI= esutils@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b" - integrity sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs= extend-object@1.x.x: version "1.0.0" resolved "https://registry.yarnpkg.com/extend-object/-/extend-object-1.0.0.tgz#42514f84015d1356caf5187969dfb2bc1bda0823" - integrity sha1-QlFPhAFdE1bK9Rh5ad+yvBvaCCM= extend@^3.0.0, extend@~3.0.0, extend@~3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.1.tgz#a755ea7bc1adfcc5a31ce7e762dbaadc5e636444" - integrity sha1-p1Xqe8Gt/MWjHOfnYtuq3F5jZEQ= external-editor@^2.0.4: version "2.1.0" resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-2.1.0.tgz#3d026a21b7f95b5726387d4200ac160d372c3b48" - integrity sha512-E44iT5QVOUJBKij4IIV3uvxuNlbKS38Tw1HiupxEIHPv9qtC2PrDYohbXV5U+1jnfIXttny8gUhj+oZvflFlzA== dependencies: chardet "^0.4.0" iconv-lite "^0.4.17" @@ -1160,44 +988,36 @@ external-editor@^2.0.4: extsprintf@1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.2.0.tgz#5ad946c22f5b32ba7f8cd7426711c6e8a3fc2529" - integrity sha1-WtlGwi9bMrp/jNdCZxHG6KP8JSk= extsprintf@1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05" - integrity sha1-lpGEQOMEGnpBT4xS48V06zw+HgU= extsprintf@^1.2.0: version "1.4.0" resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.0.tgz#e2689f8f356fad62cca65a3a91c5df5f9551692f" - integrity sha1-4mifjzVvrWLMplo6kcXfX5VRaS8= fast-deep-equal@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-1.0.0.tgz#96256a3bc975595eb36d82e9929d060d893439ff" - integrity sha1-liVqO8l1WV6zbYLpkp0GDYk0Of8= fast-json-stable-stringify@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz#d5142c0caee6b1189f87d3a76111064f86c8bbf2" - integrity sha1-1RQsDK7msRifh9OnYREGT4bIu/I= fast-levenshtein@~2.0.4: version "2.0.6" resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" - integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= figures@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/figures/-/figures-2.0.0.tgz#3ab1a2d2a62c8bfb431a0c94cb797a2fce27c962" - integrity sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI= dependencies: escape-string-regexp "^1.0.5" file-entry-cache@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-2.0.0.tgz#c392990c3e684783d838b8c84a45d8a048458361" - integrity sha1-w5KZDD5oR4PYOLjISkXYoEhFg2E= dependencies: flat-cache "^1.2.1" object-assign "^4.0.1" @@ -1205,7 +1025,6 @@ file-entry-cache@^2.0.0: flat-cache@^1.2.1: version "1.3.0" resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-1.3.0.tgz#d3030b32b38154f4e3b7e9c709f490f7ef97c481" - integrity sha1-0wMLMrOBVPTjt+nHCfSQ9++XxIE= dependencies: circular-json "^0.3.1" del "^2.0.2" @@ -1215,12 +1034,10 @@ flat-cache@^1.2.1: forever-agent@~0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" - integrity sha1-+8cfDEGt6zf5bFd60e1C2P2sypE= form-data@~2.1.1: version "2.1.4" resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.1.4.tgz#33c183acf193276ecaa98143a69e94bfee1750d1" - integrity sha1-M8GDrPGTJ27KqYFDpp6Uv+4XUNE= dependencies: asynckit "^0.4.0" combined-stream "^1.0.5" @@ -1229,7 +1046,6 @@ form-data@~2.1.1: form-data@~2.3.1: version "2.3.1" resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.1.tgz#6fb94fbd71885306d73d15cc497fe4cc4ecd44bf" - integrity sha1-b7lPvXGIUwbXPRXMSX/kzE7NRL8= dependencies: asynckit "^0.4.0" combined-stream "^1.0.5" @@ -1238,12 +1054,10 @@ form-data@~2.3.1: formidable@^1.0.17: version "1.1.1" resolved "https://registry.yarnpkg.com/formidable/-/formidable-1.1.1.tgz#96b8886f7c3c3508b932d6bd70c4d3a88f35f1a9" - integrity sha1-lriIb3w8NQi5Mta9cMTTqI818ak= from2@^2.1.1: version "2.3.0" resolved "https://registry.yarnpkg.com/from2/-/from2-2.3.0.tgz#8bfb5502bde4a4d36cfdeea007fcca21d7e382af" - integrity sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8= dependencies: inherits "^2.0.1" readable-stream "^2.0.0" @@ -1251,12 +1065,10 @@ from2@^2.1.1: fs.realpath@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" - integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= fstream-ignore@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/fstream-ignore/-/fstream-ignore-1.0.5.tgz#9c31dae34767018fe1d249b24dada67d092da105" - integrity sha1-nDHa40dnAY/h0kmyTa2mfQktoQU= dependencies: fstream "^1.0.0" inherits "2" @@ -1265,7 +1077,6 @@ fstream-ignore@^1.0.5: fstream@^1.0.0, fstream@^1.0.10, fstream@^1.0.2: version "1.0.11" resolved "https://registry.yarnpkg.com/fstream/-/fstream-1.0.11.tgz#5c1fb1f117477114f0632a0eb4b71b3cb0fd3171" - integrity sha1-XB+x8RdHcRTwYyoOtLcbPLD9MXE= dependencies: graceful-fs "^4.1.2" inherits "~2.0.0" @@ -1275,12 +1086,10 @@ fstream@^1.0.0, fstream@^1.0.10, fstream@^1.0.2: functional-red-black-tree@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" - integrity sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc= gauge@~2.7.3: version "2.7.4" resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7" - integrity sha1-LANAXHU4w51+s3sxcCLjJfsBi/c= dependencies: aproba "^1.0.3" console-control-strings "^1.0.0" @@ -1294,36 +1103,30 @@ gauge@~2.7.3: generate-function@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/generate-function/-/generate-function-2.0.0.tgz#6858fe7c0969b7d4e9093337647ac79f60dfbe74" - integrity sha1-aFj+fAlpt9TpCTM3ZHrHn2DfvnQ= generate-object-property@^1.1.0: version "1.2.0" resolved "https://registry.yarnpkg.com/generate-object-property/-/generate-object-property-1.2.0.tgz#9c0e1c40308ce804f4783618b937fa88f99d50d0" - integrity sha1-nA4cQDCM6AT0eDYYuTf6iPmdUNA= dependencies: is-property "^1.0.0" get-func-name@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/get-func-name/-/get-func-name-2.0.0.tgz#ead774abee72e20409433a066366023dd6887a41" - integrity sha1-6td0q+5y4gQJQzoGY2YCPdaIekE= get-stream@3.0.0, get-stream@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-3.0.0.tgz#8e943d1358dc37555054ecbe2edb05aa174ede14" - integrity sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ= getpass@^0.1.1: version "0.1.7" resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa" - integrity sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo= dependencies: assert-plus "^1.0.0" glob-parent@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-3.1.0.tgz#9e6af6299d8d3bd2bd40430832bd113df906c5ae" - integrity sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4= dependencies: is-glob "^3.1.0" path-dirname "^1.0.0" @@ -1331,7 +1134,6 @@ glob-parent@^3.1.0: glob-stream@^6.1.0: version "6.1.0" resolved "https://registry.yarnpkg.com/glob-stream/-/glob-stream-6.1.0.tgz#7045c99413b3eb94888d83ab46d0b404cc7bdde4" - integrity sha1-cEXJlBOz65SIjYOrRtC0BMx73eQ= dependencies: extend "^3.0.0" glob "^7.1.1" @@ -1347,7 +1149,6 @@ glob-stream@^6.1.0: glob@7.1.2, glob@^7.0.3, glob@^7.0.5, glob@^7.1.1, glob@^7.1.2: version "7.1.2" resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.2.tgz#c19c9df9a028702d678612384a6552404c636d15" - integrity sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ== dependencies: fs.realpath "^1.0.0" inflight "^1.0.4" @@ -1359,7 +1160,6 @@ glob@7.1.2, glob@^7.0.3, glob@^7.0.5, glob@^7.1.1, glob@^7.1.2: glob@^6.0.1: version "6.0.4" resolved "https://registry.yarnpkg.com/glob/-/glob-6.0.4.tgz#0f08860f6a155127b2fadd4f9ce24b1aab6e4d22" - integrity sha1-DwiGD2oVUSey+t1PnOJLGqtuTSI= dependencies: inflight "^1.0.4" inherits "2" @@ -1370,12 +1170,10 @@ glob@^6.0.1: globals@^11.0.1: version "11.1.0" resolved "https://registry.yarnpkg.com/globals/-/globals-11.1.0.tgz#632644457f5f0e3ae711807183700ebf2e4633e4" - integrity sha512-uEuWt9mqTlPDwSqi+sHjD4nWU/1N+q0fiWI9T1mZpD2UENqX20CFD5T/ziLZvztPaBKl7ZylUi1q6Qfm7E2CiQ== globby@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/globby/-/globby-5.0.0.tgz#ebd84667ca0dbb330b99bcfc68eac2bc54370e0d" - integrity sha1-69hGZ8oNuzMLmbz8aOrCvFQ3Dg0= dependencies: array-union "^1.0.1" arrify "^1.0.0" @@ -1387,7 +1185,6 @@ globby@^5.0.0: got@^8.0.2, got@^8.0.3: version "8.0.3" resolved "https://registry.yarnpkg.com/got/-/got-8.0.3.tgz#15d038e8101f89e93585d1639d9c49e8a55ae6bc" - integrity sha512-U9GopEw0RLE8c3rbMmQ5/LtM2pLMopRxV7cVh6pNcX6ITLsH/iweqEn6GqoFxoGJHRbNZFvpFJ/knc+RITL6lg== dependencies: "@sindresorhus/is" "^0.7.0" cacheable-request "^2.1.1" @@ -1410,17 +1207,14 @@ got@^8.0.2, got@^8.0.3: graceful-fs@^4.1.2: version "4.1.11" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658" - integrity sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg= growl@1.10.3: version "1.10.3" resolved "https://registry.yarnpkg.com/growl/-/growl-1.10.3.tgz#1926ba90cf3edfe2adb4927f5880bc22c66c790f" - integrity sha512-hKlsbA5Vu3xsh1Cg3J7jSmX/WaW6A5oBeqzM88oNbCRQFz+zUaXm6yxS4RVytp1scBoJzSYl4YAEOQIt6O8V1Q== grpc@^1.9.0: version "1.9.1" resolved "https://registry.yarnpkg.com/grpc/-/grpc-1.9.1.tgz#18d7cfce153ebf952559e62dadbc8bbb85da1eac" - integrity sha512-WNW3MWMuAoo63AwIlzFE3T0KzzvNBSvOkg67Hm8WhvHNkXFBlIk1QyJRE3Ocm0O5eIwS7JU8Ssota53QR1zllg== dependencies: lodash "^4.15.0" nan "^2.0.0" @@ -1430,22 +1224,18 @@ grpc@^1.9.0: handle-thing@^1.2.5: version "1.2.5" resolved "https://registry.yarnpkg.com/handle-thing/-/handle-thing-1.2.5.tgz#fd7aad726bf1a5fd16dfc29b2f7a6601d27139c4" - integrity sha1-/Xqtcmvxpf0W38KbL3pmAdJxOcQ= har-schema@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-1.0.5.tgz#d263135f43307c02c602afc8fe95970c0151369e" - integrity sha1-0mMTX0MwfALGAq/I/pWXDAFRNp4= har-schema@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92" - integrity sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI= har-validator@~2.0.6: version "2.0.6" resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-2.0.6.tgz#cdcbc08188265ad119b6a5a7c8ab70eecfb5d27d" - integrity sha1-zcvAgYgmWtEZtqWnyKtw7s+10n0= dependencies: chalk "^1.1.1" commander "^2.9.0" @@ -1455,7 +1245,6 @@ har-validator@~2.0.6: har-validator@~4.2.1: version "4.2.1" resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-4.2.1.tgz#33481d0f1bbff600dd203d75812a6a5fba002e2a" - integrity sha1-M0gdDxu/9gDdID11gSpqX7oALio= dependencies: ajv "^4.9.1" har-schema "^1.0.5" @@ -1463,7 +1252,6 @@ har-validator@~4.2.1: har-validator@~5.0.3: version "5.0.3" resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-5.0.3.tgz#ba402c266194f15956ef15e0fcf242993f6a7dfd" - integrity sha1-ukAsJmGU8VlW7xXg/PJCmT9qff0= dependencies: ajv "^5.1.0" har-schema "^2.0.0" @@ -1471,36 +1259,30 @@ har-validator@~5.0.3: has-ansi@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91" - integrity sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE= dependencies: ansi-regex "^2.0.0" has-flag@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-2.0.0.tgz#e8207af1cc7b30d446cc70b734b5e8be18f88d51" - integrity sha1-6CB68cx7MNRGzHC3NLXovhj4jVE= has-symbol-support-x@^1.4.1: version "1.4.1" resolved "https://registry.yarnpkg.com/has-symbol-support-x/-/has-symbol-support-x-1.4.1.tgz#66ec2e377e0c7d7ccedb07a3a84d77510ff1bc4c" - integrity sha512-JkaetveU7hFbqnAC1EV1sF4rlojU2D4Usc5CmS69l6NfmPDnpnFUegzFg33eDkkpNCxZ0mQp65HwUDrNFS/8MA== has-to-string-tag-x@^1.2.0: version "1.4.1" resolved "https://registry.yarnpkg.com/has-to-string-tag-x/-/has-to-string-tag-x-1.4.1.tgz#a045ab383d7b4b2012a00148ab0aa5f290044d4d" - integrity sha512-vdbKfmw+3LoOYVr+mtxHaX5a96+0f3DljYd8JOqvOLsf5mw2Otda2qCDT9qRqLAhrjyQ0h7ual5nOiASpsGNFw== dependencies: has-symbol-support-x "^1.4.1" has-unicode@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" - integrity sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk= hawk@3.1.3, hawk@~3.1.3: version "3.1.3" resolved "https://registry.yarnpkg.com/hawk/-/hawk-3.1.3.tgz#078444bd7c1640b0fe540d2c9b73d59678e8e1c4" - integrity sha1-B4REvXwWQLD+VA0sm3PVlnjo4cQ= dependencies: boom "2.x.x" cryptiles "2.x.x" @@ -1510,7 +1292,6 @@ hawk@3.1.3, hawk@~3.1.3: hawk@~6.0.2: version "6.0.2" resolved "https://registry.yarnpkg.com/hawk/-/hawk-6.0.2.tgz#af4d914eb065f9b5ce4d9d11c1cb2126eecc3038" - integrity sha512-miowhl2+U7Qle4vdLqDdPt9m09K6yZhkLDTWGoUiUzrQCn+mHHSmfJgAyGaLRZbPmTqfFFjRV1QWCW0VWUJBbQ== dependencies: boom "4.x.x" cryptiles "3.x.x" @@ -1520,12 +1301,10 @@ hawk@~6.0.2: he@1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/he/-/he-1.1.1.tgz#93410fd21b009735151f8868c2f271f3427e23fd" - integrity sha1-k0EP0hsAlzUVH4howvJx80J+I/0= help-me@^1.0.1: version "1.1.0" resolved "https://registry.yarnpkg.com/help-me/-/help-me-1.1.0.tgz#8f2d508d0600b4a456da2f086556e7e5c056a3c6" - integrity sha1-jy1QjQYAtKRW2i8IZVbn5cBWo8Y= dependencies: callback-stream "^1.0.2" glob-stream "^6.1.0" @@ -1535,17 +1314,14 @@ help-me@^1.0.1: hoek@2.x.x: version "2.16.3" resolved "https://registry.yarnpkg.com/hoek/-/hoek-2.16.3.tgz#20bb7403d3cea398e91dc4710a8ff1b8274a25ed" - integrity sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0= hoek@4.x.x: version "4.2.0" resolved "https://registry.yarnpkg.com/hoek/-/hoek-4.2.0.tgz#72d9d0754f7fe25ca2d01ad8f8f9a9449a89526d" - integrity sha512-v0XCLxICi9nPfYrS9RL8HbYnXi9obYAeLbSP00BmnZwCK9+Ih9WOjoZ8YoHCoav2csqn4FOz4Orldsy2dmDwmQ== honeybadger@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/honeybadger/-/honeybadger-1.2.1.tgz#ad54b4ebf07ad41038cc9b4bb4a753c11317acb4" - integrity sha1-rVS06/B61BA4zJtLtKdTwRMXrLQ= dependencies: request "~2.79.0" stack-trace "~0.0.9" @@ -1553,12 +1329,10 @@ honeybadger@^1.2.1: hooks-fixed@2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/hooks-fixed/-/hooks-fixed-2.0.2.tgz#20076daa07e77d8a6106883ce3f1722e051140b0" - integrity sha512-YurCM4gQSetcrhwEtpQHhQ4M7Zo7poNGqY4kQGeBS6eZtOcT3tnNs01ThFa0jYBByAiYt1MjMjP/YApG0EnAvQ== hpack.js@^2.1.6: version "2.1.6" resolved "https://registry.yarnpkg.com/hpack.js/-/hpack.js-2.1.6.tgz#87774c0949e513f42e84575b3c45681fade2a0b2" - integrity sha1-h3dMCUnlE/QuhFdbPEVoH63ioLI= dependencies: inherits "^2.0.1" obuf "^1.0.0" @@ -1568,7 +1342,6 @@ hpack.js@^2.1.6: htmlparser2@^3.9.1: version "3.9.2" resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-3.9.2.tgz#1bdf87acca0f3f9e53fa4fcceb0f4b4cbb00b338" - integrity sha1-G9+HrMoPP55T+k/M6w9LTLsAszg= dependencies: domelementtype "^1.3.0" domhandler "^2.3.0" @@ -1580,17 +1353,14 @@ htmlparser2@^3.9.1: http-cache-semantics@3.8.1: version "3.8.1" resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-3.8.1.tgz#39b0e16add9b605bf0a9ef3d9daaf4843b4cacd2" - integrity sha512-5ai2iksyV8ZXmnZhHH4rWPoxxistEexSi5936zIQ1bnNTW5VnA85B6P/VpXiRM017IgRvb2kKo1a//y+0wSp3w== http-deceiver@^1.2.7: version "1.2.7" resolved "https://registry.yarnpkg.com/http-deceiver/-/http-deceiver-1.2.7.tgz#fa7168944ab9a519d337cb0bec7284dc3e723d87" - integrity sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc= http-signature@^1.0.0, http-signature@~1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1" - integrity sha1-muzZJRFHcvPZW2WmCruPfBj7rOE= dependencies: assert-plus "^1.0.0" jsprim "^1.2.2" @@ -1599,7 +1369,6 @@ http-signature@^1.0.0, http-signature@~1.2.0: http-signature@~1.1.0: version "1.1.1" resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.1.1.tgz#df72e267066cd0ac67fb76adf8e134a8fbcf91bf" - integrity sha1-33LiZwZs0Kxn+3at+OE0qPvPkb8= dependencies: assert-plus "^0.2.0" jsprim "^1.2.2" @@ -1608,27 +1377,22 @@ http-signature@~1.1.0: iconv-lite@^0.4.17: version "0.4.19" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.19.tgz#f7468f60135f5e5dad3399c0a81be9a1603a082b" - integrity sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ== iconv-lite@~0.4.13: version "0.4.18" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.18.tgz#23d8656b16aae6742ac29732ea8f0336a4789cf2" - integrity sha512-sr1ZQph3UwHTR0XftSbK85OvBbxe/abLGzEnPENCQwmHf7sck8Oyu4ob3LgBxWWxRoM+QszeUyl7jbqapu2TqA== ignore@^3.3.3: version "3.3.7" resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.7.tgz#612289bfb3c220e186a58118618d5be8c1bab021" - integrity sha512-YGG3ejvBNHRqu0559EOxxNFihD0AjpvHlC/pdGKd3X3ofe+CoJkYazwNJYTNebqpPKN+VVQbh4ZFn1DivMNuHA== imurmurhash@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" - integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= inflight@^1.0.4: version "1.0.6" resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" - integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= dependencies: once "^1.3.0" wrappy "1" @@ -1636,17 +1400,14 @@ inflight@^1.0.4: inherits@2, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.0, inherits@~2.0.1, inherits@~2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" - integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4= ini@~1.3.0: version "1.3.5" resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927" - integrity sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw== inquirer@^3.0.6: version "3.3.0" resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-3.3.0.tgz#9dd2f2ad765dcab1ff0443b491442a20ba227dc9" - integrity sha512-h+xtnyk4EwKvFWHrUYsWErEVR+igKtLdchu+o0Z1RL7VU/jVMFbYir2bp6bAj8efFNxWqHX0dIss6fJQ+/+qeQ== dependencies: ansi-escapes "^3.0.0" chalk "^2.0.0" @@ -1666,7 +1427,6 @@ inquirer@^3.0.6: into-stream@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/into-stream/-/into-stream-3.1.0.tgz#96fb0a936c12babd6ff1752a17d05616abd094c6" - integrity sha1-lvsKk2wSur1v8XUqF9BWFqvQlMY= dependencies: from2 "^2.1.1" p-is-promise "^1.1.0" @@ -1674,12 +1434,10 @@ into-stream@^3.1.0: invert-kv@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-1.0.0.tgz#104a8e4aaca6d3d8cd157a8ef8bfab2d7a3ffdb6" - integrity sha1-EEqOSqym09jNFXqO+L+rLXo//bY= is-absolute@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-absolute/-/is-absolute-1.0.0.tgz#395e1ae84b11f26ad1795e73c17378e48a301576" - integrity sha512-dOWoqflvcydARa360Gvv18DZ/gRuHKi2NU/wU5X1ZFzdYfH29nkiNZsF3mp4OJ3H4yo9Mx8A/uAGNzpzPN3yBA== dependencies: is-relative "^1.0.0" is-windows "^1.0.1" @@ -1687,31 +1445,26 @@ is-absolute@^1.0.0: is-extglob@^2.1.0: version "2.1.1" resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" - integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= is-fullwidth-code-point@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb" - integrity sha1-754xOG8DGn8NZDr4L95QxFfvAMs= dependencies: number-is-nan "^1.0.0" is-fullwidth-code-point@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" - integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8= is-glob@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a" - integrity sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo= dependencies: is-extglob "^2.1.0" is-my-json-valid@^2.12.4: version "2.16.1" resolved "https://registry.yarnpkg.com/is-my-json-valid/-/is-my-json-valid-2.16.1.tgz#5a846777e2c2620d1e69104e5d3a03b1f6088f11" - integrity sha512-ochPsqWS1WXj8ZnMIV0vnNXooaMhp7cyL4FMSIPKTtnV0Ha/T19G2b9kkhcNsabV9bxYkze7/aLZJb/bYuFduQ== dependencies: generate-function "^2.0.0" generate-object-property "^1.1.0" @@ -1721,117 +1474,96 @@ is-my-json-valid@^2.12.4: is-negated-glob@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-negated-glob/-/is-negated-glob-1.0.0.tgz#6910bca5da8c95e784b5751b976cf5a10fee36d2" - integrity sha1-aRC8pdqMleeEtXUbl2z1oQ/uNtI= is-object@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/is-object/-/is-object-1.0.1.tgz#8952688c5ec2ffd6b03ecc85e769e02903083470" - integrity sha1-iVJojF7C/9awPsyF52ngKQMINHA= is-path-cwd@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-1.0.0.tgz#d225ec23132e89edd38fda767472e62e65f1106d" - integrity sha1-0iXsIxMuie3Tj9p2dHLmLmXxEG0= is-path-in-cwd@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-path-in-cwd/-/is-path-in-cwd-1.0.0.tgz#6477582b8214d602346094567003be8a9eac04dc" - integrity sha1-ZHdYK4IU1gI0YJRWcAO+ip6sBNw= dependencies: is-path-inside "^1.0.0" is-path-inside@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-1.0.1.tgz#8ef5b7de50437a3fdca6b4e865ef7aa55cb48036" - integrity sha1-jvW33lBDej/cprToZe96pVy0gDY= dependencies: path-is-inside "^1.0.1" is-plain-obj@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" - integrity sha1-caUMhCnfync8kqOQpKA7OfzVHT4= is-promise@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.1.0.tgz#79a2a9ece7f096e80f36d2b2f3bc16c1ff4bf3fa" - integrity sha1-eaKp7OfwlugPNtKy87wWwf9L8/o= is-property@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/is-property/-/is-property-1.0.2.tgz#57fe1c4e48474edd65b09911f26b1cd4095dda84" - integrity sha1-V/4cTkhHTt1lsJkR8msc1Ald2oQ= is-regexp@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-regexp/-/is-regexp-1.0.0.tgz#fd2d883545c46bac5a633e7b9a09e87fa2cb5069" - integrity sha1-/S2INUXEa6xaYz57mgnof6LLUGk= is-relative@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-relative/-/is-relative-1.0.0.tgz#a1bb6935ce8c5dba1e8b9754b9b2dcc020e2260d" - integrity sha512-Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA== dependencies: is-unc-path "^1.0.0" is-resolvable@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/is-resolvable/-/is-resolvable-1.1.0.tgz#fb18f87ce1feb925169c9a407c19318a3206ed88" - integrity sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg== is-retry-allowed@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/is-retry-allowed/-/is-retry-allowed-1.1.0.tgz#11a060568b67339444033d0125a61a20d564fb34" - integrity sha1-EaBgVotnM5REAz0BJaYaINVk+zQ= is-supported-regexp-flag@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-supported-regexp-flag/-/is-supported-regexp-flag-1.0.0.tgz#8b520c85fae7a253382d4b02652e045576e13bb8" - integrity sha1-i1IMhfrnolM4LUsCZS4EVXbhO7g= is-typedarray@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" - integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo= is-unc-path@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-unc-path/-/is-unc-path-1.0.0.tgz#d731e8898ed090a12c352ad2eaed5095ad322c9d" - integrity sha512-mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ== dependencies: unc-path-regex "^0.1.2" is-windows@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.1.tgz#310db70f742d259a16a369202b51af84233310d9" - integrity sha1-MQ23D3QtJZoWo2kgK1GvhCMzENk= isarray@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" - integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= isemail@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/isemail/-/isemail-3.1.0.tgz#d15156d67529d48241bc0e644df28281e21dd458" - integrity sha512-Ke15MBbbhyIhZzWheiWuRlTO81tTH4RQvrbJFpVzJce8oyVrCVSDdrcw4TcyMsaS/fMGJSbU3lTsqCGDKwrzww== dependencies: punycode "2.x.x" isexe@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" - integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= isstream@~0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" - integrity sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo= isurl@^1.0.0-alpha5: version "1.0.0" resolved "https://registry.yarnpkg.com/isurl/-/isurl-1.0.0.tgz#b27f4f49f3cdaa3ea44a0a5b7f3462e6edc39d67" - integrity sha512-1P/yWsxPlDtn7QeRD+ULKQPaIaN6yF368GZ2vDfv0AL0NwpStafjWCDDdn0k8wgFMWpVAqG7oJhxHnlud42i9w== dependencies: has-to-string-tag-x "^1.2.0" is-object "^1.0.1" @@ -1839,7 +1571,6 @@ isurl@^1.0.0-alpha5: jison-lex@0.2.x: version "0.2.1" resolved "https://registry.yarnpkg.com/jison-lex/-/jison-lex-0.2.1.tgz#ac4b815e8cce5132eb12b5dfcfe8d707b8844dfe" - integrity sha1-rEuBXozOUTLrErXfz+jXB7iETf4= dependencies: lex-parser "0.1.x" nomnom "1.5.2" @@ -1847,7 +1578,6 @@ jison-lex@0.2.x: jison@0.4.13: version "0.4.13" resolved "https://registry.yarnpkg.com/jison/-/jison-0.4.13.tgz#9041707d62241367f58834532b9f19c2c36fac78" - integrity sha1-kEFwfWIkE2f1iDRTK58ZwsNvrHg= dependencies: JSONSelect "0.4.0" cjson "~0.2.1" @@ -1861,12 +1591,10 @@ jison@0.4.13: js-tokens@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b" - integrity sha1-mGbfOVECEw449/mWvOtlRDIJwls= js-yaml@^3.9.1: version "3.10.0" resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.10.0.tgz#2e78441646bd4682e963f22b6e92823c309c62dc" - integrity sha512-O2v52ffjLa9VeM43J4XocZE//WT9N0IiwDa3KSHH7Tu8CtH+1qM8SIZvnsTh6v+4yFy5KUY3BHUVwjpfAWsjIA== dependencies: argparse "^1.0.7" esprima "^4.0.0" @@ -1874,54 +1602,44 @@ js-yaml@^3.9.1: jsbn@~0.1.0: version "0.1.1" resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" - integrity sha1-peZUwuWi3rXyAdls77yoDA7y9RM= json-buffer@3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.0.tgz#5b1f397afc75d677bde8bcfc0e47e1f9a3d9a898" - integrity sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg= json-schema-traverse@^0.3.0: version "0.3.1" resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz#349a6d44c53a51de89b40805c5d5e59b417d3340" - integrity sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A= json-schema@0.2.3: version "0.2.3" resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13" - integrity sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM= json-stable-stringify-without-jsonify@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" - integrity sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE= json-stable-stringify@^1.0.0, json-stable-stringify@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz#9a759d39c5f2ff503fd5300646ed445f88c4f9af" - integrity sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8= dependencies: jsonify "~0.0.0" json-stringify-safe@~5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" - integrity sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus= json5@0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/json5/-/json5-0.4.0.tgz#054352e4c4c80c86c0923877d449de176a732c8d" - integrity sha1-BUNS5MTIDIbAkjh31EneF2pzLI0= jsonify@~0.0.0: version "0.0.0" resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.0.tgz#2c74b6ee41d93ca51b7b5aaee8f503631d252a73" - integrity sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM= jsonpath@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/jsonpath/-/jsonpath-1.0.0.tgz#45cd9d4c4d0d6825d90bd7e40f83f1182b13dd07" - integrity sha1-Rc2dTE0NaCXZC9fkD4PxGCsT3Qc= dependencies: esprima "1.2.2" jison "0.4.13" @@ -1931,12 +1649,10 @@ jsonpath@^1.0.0: jsonpointer@^4.0.0: version "4.0.1" resolved "https://registry.yarnpkg.com/jsonpointer/-/jsonpointer-4.0.1.tgz#4fd92cb34e0e9db3c89c8622ecf51f9b978c6cb9" - integrity sha1-T9kss04OnbPInIYi7PUfm5eMbLk= jsonwebtoken@^8.1.0: version "8.1.1" resolved "https://registry.yarnpkg.com/jsonwebtoken/-/jsonwebtoken-8.1.1.tgz#b04d8bb2ad847bc93238c3c92170ffdbdd1cb2ea" - integrity sha512-+ijVOtfLMlCII8LJkvabaKX3+8tGrGjiCTfzoed2D1b/ebKTO1hIYBQUJHbd9dJ9Fa4kH+dhYEd1qDwyzDLUUw== dependencies: jws "^3.1.4" lodash.includes "^4.3.0" @@ -1952,7 +1668,6 @@ jsonwebtoken@^8.1.0: jsprim@^1.2.2: version "1.4.1" resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.1.tgz#313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2" - integrity sha1-MT5mvB5cwG5Di8G3SZwuXFastqI= dependencies: assert-plus "1.0.0" extsprintf "1.3.0" @@ -1962,7 +1677,6 @@ jsprim@^1.2.2: jwa@^1.1.4: version "1.1.5" resolved "https://registry.yarnpkg.com/jwa/-/jwa-1.1.5.tgz#a0552ce0220742cd52e153774a32905c30e756e5" - integrity sha1-oFUs4CIHQs1S4VN3SjKQXDDnVuU= dependencies: base64url "2.0.0" buffer-equal-constant-time "1.0.1" @@ -1972,7 +1686,6 @@ jwa@^1.1.4: jws@^3.1.4: version "3.1.4" resolved "https://registry.yarnpkg.com/jws/-/jws-3.1.4.tgz#f9e8b9338e8a847277d6444b1464f61880e050a2" - integrity sha1-+ei5M46KhHJ31kRLFGT2GIDgUKI= dependencies: base64url "^2.0.0" jwa "^1.1.4" @@ -1981,31 +1694,26 @@ jws@^3.1.4: kareem@1.5.0: version "1.5.0" resolved "https://registry.yarnpkg.com/kareem/-/kareem-1.5.0.tgz#e3e4101d9dcfde299769daf4b4db64d895d17448" - integrity sha1-4+QQHZ3P3imXadr0tNtk2JXRdEg= keyv@3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/keyv/-/keyv-3.0.0.tgz#44923ba39e68b12a7cec7df6c3268c031f2ef373" - integrity sha512-eguHnq22OE3uVoSYG0LVWNP+4ppamWr9+zWBe1bsNcovIMy6huUJFPgy4mGwCd/rnl3vOLGW1MTlu4c57CT1xA== dependencies: json-buffer "3.0.0" lcid@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/lcid/-/lcid-1.0.0.tgz#308accafa0bc483a3867b4b6f2b9506251d1b835" - integrity sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU= dependencies: invert-kv "^1.0.0" leven@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/leven/-/leven-1.0.2.tgz#9144b6eebca5f1d0680169f1a6770dcea60b75c3" - integrity sha1-kUS27ryl8dBoAWnxpncNzqYLdcM= levn@^0.3.0, levn@~0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee" - integrity sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4= dependencies: prelude-ls "~1.1.2" type-check "~0.3.2" @@ -2013,77 +1721,62 @@ levn@^0.3.0, levn@~0.3.0: lex-parser@0.1.x, lex-parser@~0.1.3: version "0.1.4" resolved "https://registry.yarnpkg.com/lex-parser/-/lex-parser-0.1.4.tgz#64c4f025f17fd53bfb45763faeb16f015a747550" - integrity sha1-ZMTwJfF/1Tv7RXY/rrFvAVp0dVA= lodash.get@4.4.2, lodash.get@~4.4.2: version "4.4.2" resolved "https://registry.yarnpkg.com/lodash.get/-/lodash.get-4.4.2.tgz#2d177f652fa31e939b4438d5341499dfa3825e99" - integrity sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk= lodash.includes@^4.3.0: version "4.3.0" resolved "https://registry.yarnpkg.com/lodash.includes/-/lodash.includes-4.3.0.tgz#60bb98a87cb923c68ca1e51325483314849f553f" - integrity sha1-YLuYqHy5I8aMoeUTJUgzFISfVT8= lodash.isboolean@^3.0.3: version "3.0.3" resolved "https://registry.yarnpkg.com/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz#6c2e171db2a257cd96802fd43b01b20d5f5870f6" - integrity sha1-bC4XHbKiV82WgC/UOwGyDV9YcPY= lodash.isequal@^4.5.0: version "4.5.0" resolved "https://registry.yarnpkg.com/lodash.isequal/-/lodash.isequal-4.5.0.tgz#415c4478f2bcc30120c22ce10ed3226f7d3e18e0" - integrity sha1-QVxEePK8wwEgwizhDtMib30+GOA= lodash.isinteger@^4.0.4: version "4.0.4" resolved "https://registry.yarnpkg.com/lodash.isinteger/-/lodash.isinteger-4.0.4.tgz#619c0af3d03f8b04c31f5882840b77b11cd68343" - integrity sha1-YZwK89A/iwTDH1iChAt3sRzWg0M= lodash.isnumber@^3.0.3: version "3.0.3" resolved "https://registry.yarnpkg.com/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz#3ce76810c5928d03352301ac287317f11c0b1ffc" - integrity sha1-POdoEMWSjQM1IwGsKHMX8RwLH/w= lodash.isplainobject@^4.0.6: version "4.0.6" resolved "https://registry.yarnpkg.com/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz#7c526a52d89b45c45cc690b88163be0497f550cb" - integrity sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs= lodash.isstring@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/lodash.isstring/-/lodash.isstring-4.0.1.tgz#d527dfb5456eca7cc9bb95d5daeaf88ba54a5451" - integrity sha1-1SfftUVuynzJu5XV2ur4i6VKVFE= lodash.once@^4.0.0: version "4.1.1" resolved "https://registry.yarnpkg.com/lodash.once/-/lodash.once-4.1.1.tgz#0dd3971213c7c56df880977d504c88fb471a97ac" - integrity sha1-DdOXEhPHxW34gJd9UEyI+0cal6w= lodash@^4.14.0, lodash@^4.17.4, lodash@^4.2.1, lodash@^4.3.0: version "4.17.4" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae" - integrity sha1-eCA6TRwyiuHYbcpkYONptX9AVa4= lodash@^4.15.0: version "4.17.5" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.5.tgz#99a92d65c0272debe8c96b6057bc8fbfa3bed511" - integrity sha512-svL3uiZf1RwhH+cWrfZn3A4+U58wbP0tGVTLQPbjplZxZ8ROD9VLuNgsRniTlLe7OlSqR79RUehXgpBW/s0IQw== long@~3: version "3.2.0" resolved "https://registry.yarnpkg.com/long/-/long-3.2.0.tgz#d821b7138ca1cb581c172990ef14db200b5c474b" - integrity sha1-2CG3E4yhy1gcFymQ7xTbIAtcR0s= lowercase-keys@1.0.0, lowercase-keys@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-1.0.0.tgz#4e3366b39e7f5457e35f1324bdf6f88d0bfc7306" - integrity sha1-TjNms55/VFfjXxMkvfb4jQv8cwY= lru-cache@^4.0.1: version "4.1.1" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.1.tgz#622e32e82488b49279114a4f9ecf45e7cd6bba55" - integrity sha512-q4spe4KTfsAS1SUHLO0wz8Qiyf1+vMIAgpRYioFYDMNqKfHQbg+AVDH3i4fvpl71/P1L0dBl+fQi+P37UYf0ew== dependencies: pseudomap "^1.0.2" yallist "^2.1.2" @@ -2091,41 +1784,34 @@ lru-cache@^4.0.1: millify@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/millify/-/millify-2.0.1.tgz#3cfde496b23904b357c620ae71409ffd8eafdd02" - integrity sha1-PP3klrI5BLNXxiCucUCf/Y6v3QI= mime-db@~1.30.0: version "1.30.0" resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.30.0.tgz#74c643da2dd9d6a45399963465b26d5ca7d71f01" - integrity sha1-dMZD2i3Z1qRTmZY0ZbJtXKfXHwE= mime-db@~1.33.0: version "1.33.0" resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.33.0.tgz#a3492050a5cb9b63450541e39d9788d2272783db" - integrity sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ== mime-types@^2.1.12, mime-types@~2.1.7: version "2.1.18" resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.18.tgz#6f323f60a83d11146f831ff11fd66e2fe5503bb8" - integrity sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ== dependencies: mime-db "~1.33.0" mime-types@~2.1.17: version "2.1.17" resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.17.tgz#09d7a393f03e995a79f8af857b70a9e0ab16557a" - integrity sha1-Cdejk/A+mVp5+K+Fe3Cp4KsWVXo= dependencies: mime-db "~1.30.0" mime@^1.2.11: version "1.6.0" resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" - integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== mimelib@^0.3.1: version "0.3.1" resolved "https://registry.yarnpkg.com/mimelib/-/mimelib-0.3.1.tgz#787add2415d827acb3af6ec4bca1ea9596418853" - integrity sha1-eHrdJBXYJ6yzr27EvKHqlZZBiFM= dependencies: addressparser "~1.0.1" encoding "~0.1.12" @@ -2133,46 +1819,38 @@ mimelib@^0.3.1: mimic-fn@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.1.0.tgz#e667783d92e89dbd342818b5230b9d62a672ad18" - integrity sha1-5md4PZLonb00KBi1IwudYqZyrRg= mimic-response@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-1.0.0.tgz#df3d3652a73fded6b9b0b24146e6fd052353458e" - integrity sha1-3z02Uqc/3ta5sLJBRub9BSNTRY4= minimalistic-assert@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.0.tgz#702be2dda6b37f4836bcb3f5db56641b64a1d3d3" - integrity sha1-cCvi3aazf0g2vLP121ZkG2Sh09M= "minimatch@2 || 3", minimatch@^3.0.0, minimatch@^3.0.2, minimatch@^3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" - integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== dependencies: brace-expansion "^1.1.7" minimist@0.0.8: version "0.0.8" resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" - integrity sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0= minimist@^1.1.0, minimist@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" - integrity sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ= mkdirp@0.5.1, "mkdirp@>=0.5 0", mkdirp@^0.5.1, mkdirp@~0.5.1: version "0.5.1" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" - integrity sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM= dependencies: minimist "0.0.8" mocha@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/mocha/-/mocha-5.0.0.tgz#cccac988b0bc5477119cba0e43de7af6d6ad8f4e" - integrity sha512-ukB2dF+u4aeJjc6IGtPNnJXfeby5d4ZqySlIBT0OEyva/DrMjVm5HkQxKnHDLKEfEQBsEnwTg9HHhtPHJdTd8w== dependencies: browser-stdout "1.3.0" commander "2.11.0" @@ -2188,17 +1866,14 @@ mocha@^5.0.0: moment@^2.10.6: version "2.19.3" resolved "https://registry.yarnpkg.com/moment/-/moment-2.19.3.tgz#bdb99d270d6d7fda78cc0fbace855e27fe7da69f" - integrity sha1-vbmdJw1tf9p4zA+6zoVeJ/59pp8= moment@^2.18.1: version "2.20.1" resolved "https://registry.yarnpkg.com/moment/-/moment-2.20.1.tgz#d6eb1a46cbcc14a2b2f9434112c1ff8907f313fd" - integrity sha512-Yh9y73JRljxW5QxN08Fner68eFLxM5ynNOAw2LbIB1YAGeQzZT8QFSUvkAz609Zf+IHhhaUxqZK8dG3W/+HEvg== mongodb-core@2.1.18: version "2.1.18" resolved "https://registry.yarnpkg.com/mongodb-core/-/mongodb-core-2.1.18.tgz#4c46139bdf3a1f032ded91db49f38eec01659050" - integrity sha1-TEYTm986HwMt7ZHbSfOO7AFlkFA= dependencies: bson "~1.0.4" require_optional "~1.0.0" @@ -2206,7 +1881,6 @@ mongodb-core@2.1.18: mongodb@2.2.34: version "2.2.34" resolved "https://registry.yarnpkg.com/mongodb/-/mongodb-2.2.34.tgz#a34f59bbeb61754aec432de72c3fe21526a44c1a" - integrity sha1-o09Zu+thdUrsQy3nLD/iFSakTBo= dependencies: es6-promise "3.2.1" mongodb-core "2.1.18" @@ -2215,14 +1889,12 @@ mongodb@2.2.34: mongoose-timestamp@^0.6: version "0.6.0" resolved "https://registry.yarnpkg.com/mongoose-timestamp/-/mongoose-timestamp-0.6.0.tgz#da54110ca8e6d4c2b9957a0366836c362ed272be" - integrity sha1-2lQRDKjm1MK5lXoDZoNsNi7Scr4= dependencies: defaults "^1.0.3" mongoose@^4.13.6: version "4.13.9" resolved "https://registry.yarnpkg.com/mongoose/-/mongoose-4.13.9.tgz#ca4d99aed6e36e87854c2295387e7ea17966cfe3" - integrity sha512-UGkSJR5iYHfHGlAyNNJS/mX5HoukDssQoy2pyJTpdyOXnxSw1ujYvMlxEuiIOQEWH2oZSAmHfjH+/igxG1MXLQ== dependencies: async "2.1.4" bson "~1.0.4" @@ -2241,17 +1913,14 @@ mongoose@^4.13.6: mpath@0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/mpath/-/mpath-0.3.0.tgz#7a58f789e9b5fd3c94520634157960f26bd5ef44" - integrity sha1-elj3iem1/TyUUgY0FXlg8mvV70Q= mpromise@0.5.5: version "0.5.5" resolved "https://registry.yarnpkg.com/mpromise/-/mpromise-0.5.5.tgz#f5b24259d763acc2257b0a0c8c6d866fd51732e6" - integrity sha1-9bJCWddjrMIlewoMjG2Gb9UXMuY= mqtt-packet@^5.4.0: version "5.4.0" resolved "https://registry.yarnpkg.com/mqtt-packet/-/mqtt-packet-5.4.0.tgz#387104c06aa68fbb9f8159d0c722dd5c3e45df22" - integrity sha512-ziN7uVysLdn7fYbOhEaKOhcZC3yIRTTakY4TFd2w+UvZIx9dPr8NCqbBYoC4WYDlzWHTn5EqR5x20pC+K24Ymg== dependencies: bl "^1.2.1" inherits "^2.0.3" @@ -2261,7 +1930,6 @@ mqtt-packet@^5.4.0: mqtt@^2.15.1: version "2.15.1" resolved "https://registry.yarnpkg.com/mqtt/-/mqtt-2.15.1.tgz#86fc34e387495df60cd0ccb75cd97743344a4b28" - integrity sha512-wcU1Ec/PqdgmWZ8InKd9298UlHbsL4ujnUdkkN1JIee0HI1Qe+JvZhO66qCYQKEH+U2XsJMcr9GncQPKUEfmRw== dependencies: commist "^1.0.0" concat-stream "^1.6.0" @@ -2280,7 +1948,6 @@ mqtt@^2.15.1: mquery@2.3.3: version "2.3.3" resolved "https://registry.yarnpkg.com/mquery/-/mquery-2.3.3.tgz#221412e5d4e7290ca5582dd16ea8f190a506b518" - integrity sha512-NC8L14kn+qxJbbJ1gbcEMDxF0sC3sv+1cbRReXXwVvowcwY1y9KoVZFq0ebwARibsadu8lx8nWGvm3V0Pf0ZWQ== dependencies: bluebird "3.5.0" debug "2.6.9" @@ -2290,27 +1957,22 @@ mquery@2.3.3: ms@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" - integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= ms@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.1.tgz#30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a" - integrity sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg== muri@1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/muri/-/muri-1.3.0.tgz#aeccf3db64c56aa7c5b34e00f95b7878527a4721" - integrity sha512-FiaFwKl864onHFFUV/a2szAl7X0fxVlSKNdhTf+BM8i8goEgYut8u5P9MqQqIYwvaMxjzVESsoEm/2kfkFH1rg== mute-stream@0.0.7: version "0.0.7" resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab" - integrity sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s= mv@~2: version "2.1.1" resolved "https://registry.yarnpkg.com/mv/-/mv-2.1.1.tgz#ae6ce0d6f6d5e0a4f7d893798d03c1ea9559b6a2" - integrity sha1-rmzg1vbV4KT32JN5jQPB6pVZtqI= dependencies: mkdirp "~0.5.1" ncp "~2.0.0" @@ -2319,37 +1981,30 @@ mv@~2: nan@2.6.2: version "2.6.2" resolved "https://registry.yarnpkg.com/nan/-/nan-2.6.2.tgz#e4ff34e6c95fdfb5aecc08de6596f43605a7db45" - integrity sha1-5P805slf37WuzAjeZZb0NgWn20U= nan@^2.0.0: version "2.9.2" resolved "https://registry.yarnpkg.com/nan/-/nan-2.9.2.tgz#f564d75f5f8f36a6d9456cca7a6c4fe488ab7866" - integrity sha512-ltW65co7f3PQWBDbqVvaU1WtFJUsNW7sWWm4HINhbMQIyVyzIeyZ8toX5TC5eeooE6piZoaEh4cZkueSKG3KYw== nan@^2.3.3: version "2.8.0" resolved "https://registry.yarnpkg.com/nan/-/nan-2.8.0.tgz#ed715f3fe9de02b57a5e6252d90a96675e1f085a" - integrity sha1-7XFfP+neArV6XmJS2QqWZ14fCFo= natural-compare@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" - integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc= ncp@~2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/ncp/-/ncp-2.0.0.tgz#195a21d6c46e361d2fb1281ba38b91e9df7bdbb3" - integrity sha1-GVoh1sRuNh0vsSgbo4uR6d9727M= negotiator@^0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.1.tgz#2b327184e8992101177b28563fb5e7102acd0ca9" - integrity sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk= node-pre-gyp@0.6.36: version "0.6.36" resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.6.36.tgz#db604112cb74e0d477554e9b505b17abddfab786" - integrity sha1-22BBEst04NR3VU6bUFsXq936t4Y= dependencies: mkdirp "^0.5.1" nopt "^4.0.1" @@ -2364,7 +2019,6 @@ node-pre-gyp@0.6.36: node-pre-gyp@^0.6.39: version "0.6.39" resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.6.39.tgz#c00e96860b23c0e1420ac7befc5044e1d78d8649" - integrity sha512-OsJV74qxnvz/AMGgcfZoDaeDXKD3oY3QVIbBmwszTFkRisTSXbMQyn4UWzUMOtA5SVhrBZOTp0wcoSBgfMfMmQ== dependencies: detect-libc "^1.0.2" hawk "3.1.3" @@ -2381,7 +2035,6 @@ node-pre-gyp@^0.6.39: nomnom@1.5.2: version "1.5.2" resolved "https://registry.yarnpkg.com/nomnom/-/nomnom-1.5.2.tgz#f4345448a853cfbd5c0d26320f2477ab0526fe2f" - integrity sha1-9DRUSKhTz71cDSYyDyR3qwUm/i8= dependencies: colors "0.5.x" underscore "1.1.x" @@ -2389,7 +2042,6 @@ nomnom@1.5.2: nopt@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.1.tgz#d0d4685afd5415193c8c7505602d0d17cd64474d" - integrity sha1-0NRoWv1UFRk8jHUFYC0NF81kR00= dependencies: abbrev "1" osenv "^0.1.4" @@ -2397,7 +2049,6 @@ nopt@^4.0.1: normalize-url@2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-2.0.1.tgz#835a9da1551fa26f70e92329069a23aa6574d7e6" - integrity sha512-D6MUW4K/VzoJ4rJ01JFKxDrtY1v9wrgzCX5f2qj/lzH1m/lW6MhUZFKerVsnyjOhOsYzI9Kqqak+10l4LvLpMw== dependencies: prepend-http "^2.0.0" query-string "^5.0.1" @@ -2406,7 +2057,6 @@ normalize-url@2.0.1: npmlog@^4.0.2: version "4.1.2" resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" - integrity sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg== dependencies: are-we-there-yet "~1.1.2" console-control-strings "~1.1.0" @@ -2416,48 +2066,40 @@ npmlog@^4.0.2: nth-check@~1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-1.0.1.tgz#9929acdf628fc2c41098deab82ac580cf149aae4" - integrity sha1-mSms32KPwsQQmN6rgqxYDPFJquQ= dependencies: boolbase "~1.0.0" number-is-nan@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" - integrity sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0= oauth-sign@~0.8.1, oauth-sign@~0.8.2: version "0.8.2" resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.8.2.tgz#46a6ab7f0aead8deae9ec0565780b7d4efeb9d43" - integrity sha1-Rqarfwrq2N6unsBWV4C31O/rnUM= object-assign@^4.0.1, object-assign@^4.1.0: version "4.1.1" resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" - integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= obuf@^1.0.0, obuf@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/obuf/-/obuf-1.1.1.tgz#104124b6c602c6796881a042541d36db43a5264e" - integrity sha1-EEEktsYCxnlogaBCVB0220OlJk4= once@^1.3.0, once@^1.3.1, once@^1.3.3, once@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" - integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= dependencies: wrappy "1" onetime@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/onetime/-/onetime-2.0.1.tgz#067428230fd67443b2794b22bba528b6867962d4" - integrity sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ= dependencies: mimic-fn "^1.0.0" optionator@^0.8.1, optionator@^0.8.2: version "0.8.2" resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.2.tgz#364c5e409d3f4d6301d6c0b4c05bba50180aeb64" - integrity sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q= dependencies: deep-is "~0.1.3" fast-levenshtein "~2.0.4" @@ -2469,36 +2111,30 @@ optionator@^0.8.1, optionator@^0.8.2: optjs@~3.2.2: version "3.2.2" resolved "https://registry.yarnpkg.com/optjs/-/optjs-3.2.2.tgz#69a6ce89c442a44403141ad2f9b370bd5bb6f4ee" - integrity sha1-aabOicRCpEQDFBrS+bNwvVu29O4= ordered-read-streams@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/ordered-read-streams/-/ordered-read-streams-1.0.1.tgz#77c0cb37c41525d64166d990ffad7ec6a0e1363e" - integrity sha1-d8DLN8QVJdZBZtmQ/61+xqDhNj4= dependencies: readable-stream "^2.0.1" os-homedir@1.0.2, os-homedir@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" - integrity sha1-/7xJiDNuDoM94MFox+8VISGqf7M= os-locale@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-1.4.0.tgz#20f9f17ae29ed345e8bde583b13d2009803c14d9" - integrity sha1-IPnxeuKe00XoveWDsT0gCYA8FNk= dependencies: lcid "^1.0.0" os-tmpdir@^1.0.0, os-tmpdir@~1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" - integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ= osenv@^0.1.4: version "0.1.5" resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.5.tgz#85cdfafaeb28e8677f416e287592b5f3f49ea410" - integrity sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g== dependencies: os-homedir "^1.0.0" os-tmpdir "^1.0.0" @@ -2506,118 +2142,96 @@ osenv@^0.1.4: p-cancelable@^0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/p-cancelable/-/p-cancelable-0.3.0.tgz#b9e123800bcebb7ac13a479be195b507b98d30fa" - integrity sha512-RVbZPLso8+jFeq1MfNvgXtCRED2raz/dKpacfTNxsx6pLEpEomM7gah6VeHSYV3+vo0OAi4MkArtQcWWXuQoyw== p-finally@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" - integrity sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4= p-is-promise@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/p-is-promise/-/p-is-promise-1.1.0.tgz#9c9456989e9f6588017b0434d56097675c3da05e" - integrity sha1-nJRWmJ6fZYgBewQ01WCXZ1w9oF4= p-timeout@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/p-timeout/-/p-timeout-2.0.1.tgz#d8dd1979595d2dc0139e1fe46b8b646cb3cdf038" - integrity sha512-88em58dDVB/KzPEx1X0N3LwFfYZPyDc4B6eF38M1rk9VTZMbxXXgjugz8mmwpS9Ox4BDZ+t6t3QP5+/gazweIA== dependencies: p-finally "^1.0.0" parse5@^3.0.1: version "3.0.2" resolved "https://registry.yarnpkg.com/parse5/-/parse5-3.0.2.tgz#05eff57f0ef4577fb144a79f8b9a967a6cc44510" - integrity sha1-Be/1fw70V3+xRKefi5qWemzERRA= dependencies: "@types/node" "^6.0.46" path-dirname@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/path-dirname/-/path-dirname-1.0.2.tgz#cc33d24d525e099a5388c0336c6e32b9160609e0" - integrity sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA= path-is-absolute@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" - integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= path-is-inside@^1.0.1, path-is-inside@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53" - integrity sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM= pathval@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/pathval/-/pathval-1.1.0.tgz#b942e6d4bde653005ef6b71361def8727d0645e0" - integrity sha1-uULm1L3mUwBe9rcTYd74cn0GReA= performance-now@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-0.2.0.tgz#33ef30c5c77d4ea21c5a53869d91b56d8f2555e5" - integrity sha1-M+8wxcd9TqIcWlOGnZG1bY8lVeU= performance-now@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" - integrity sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns= pify@^2.0.0: version "2.3.0" resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" - integrity sha1-7RQaasBDqEnqWISY59yosVMw6Qw= pify@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176" - integrity sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY= pinkie-promise@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa" - integrity sha1-ITXW36ejWMBprJsXh3YogihFD/o= dependencies: pinkie "^2.0.0" pinkie@^2.0.0: version "2.0.4" resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" - integrity sha1-clVrgM+g1IqXToDnckjoDtT3+HA= pluralize@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/pluralize/-/pluralize-7.0.0.tgz#298b89df8b93b0221dbf421ad2b1b1ea23fc6777" - integrity sha512-ARhBOdzS3e41FbkW/XWrTEtukqqLoK5+Z/4UeDaLuSW+39JPeFgs4gCGqsrJHVZX0fUrx//4OF0K1CUGwlIFow== prelude-ls@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" - integrity sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ= prepend-http@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-2.0.0.tgz#e92434bfa5ea8c19f41cdfd401d741a3c819d897" - integrity sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc= process-nextick-args@^1.0.7, process-nextick-args@~1.0.6: version "1.0.7" resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-1.0.7.tgz#150e20b756590ad3f91093f25a4f2ad8bff30ba3" - integrity sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M= process-nextick-args@~2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.0.tgz#a37d732f4271b4ab1ad070d35508e8290788ffaa" - integrity sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw== progress@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.0.tgz#8a1be366bf8fc23db2bd23f10c6fe920b4389d1f" - integrity sha1-ihvjZr+Pwj2yvSPxDG/pILQ4nR8= protobufjs@^5.0.0: version "5.0.2" resolved "https://registry.yarnpkg.com/protobufjs/-/protobufjs-5.0.2.tgz#59748d7dcf03d2db22c13da9feb024e16ab80c91" - integrity sha1-WXSNfc8D0tsiwT2p/rAk4Wq4DJE= dependencies: ascli "~1" bytebuffer "~5" @@ -2627,12 +2241,10 @@ protobufjs@^5.0.0: pseudomap@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" - integrity sha1-8FKijacOYYkX7wqKw0wa5aaChrM= pump@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/pump/-/pump-2.0.1.tgz#12399add6e4cf7526d973cbc8b5ce2e2908b3909" - integrity sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA== dependencies: end-of-stream "^1.1.0" once "^1.3.1" @@ -2640,7 +2252,6 @@ pump@^2.0.0: pumpify@^1.3.5: version "1.4.0" resolved "https://registry.yarnpkg.com/pumpify/-/pumpify-1.4.0.tgz#80b7c5df7e24153d03f0e7ac8a05a5d068bd07fb" - integrity sha512-2kmNR9ry+Pf45opRVirpNuIFotsxUGLaYqxIwuR77AYrYRMuFCz9eryHBS52L360O+NcR383CL4QYlMKPq4zYA== dependencies: duplexify "^3.5.3" inherits "^2.0.3" @@ -2649,37 +2260,30 @@ pumpify@^1.3.5: punycode@2.x.x: version "2.1.0" resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.0.tgz#5f863edc89b96db09074bad7947bf09056ca4e7d" - integrity sha1-X4Y+3Im5bbCQdLrXlHvwkFbKTn0= punycode@^1.4.1: version "1.4.1" resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" - integrity sha1-wNWmOycYgArY4esPpSachN1BhF4= q@1.x.x: version "1.5.0" resolved "https://registry.yarnpkg.com/q/-/q-1.5.0.tgz#dd01bac9d06d30e6f219aecb8253ee9ebdc308f1" - integrity sha1-3QG6ydBtMObyGa7LglPunr3DCPE= qs@^6.2.1, qs@~6.5.1: version "6.5.1" resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.1.tgz#349cdf6eef89ec45c12d7d5eb3fc0c870343a6d8" - integrity sha512-eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A== qs@~6.3.0: version "6.3.2" resolved "https://registry.yarnpkg.com/qs/-/qs-6.3.2.tgz#e75bd5f6e268122a2a0e0bda630b2550c166502c" - integrity sha1-51vV9uJoEioqDgvaYwslUMFmUCw= qs@~6.4.0: version "6.4.0" resolved "https://registry.yarnpkg.com/qs/-/qs-6.4.0.tgz#13e26d28ad6b0ffaa91312cd3bf708ed351e7233" - integrity sha1-E+JtKK1rD/qpExLNO/cI7TUecjM= query-string@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/query-string/-/query-string-5.0.1.tgz#6e2b86fe0e08aef682ecbe86e85834765402bd88" - integrity sha512-aM+MkQClojlNiKkO09tiN2Fv8jM/L7GWIjG2liWeKljlOdOPNWr+bW3KQ+w5V/uKprpezC7fAsAMsJtJ+2rLKA== dependencies: decode-uri-component "^0.2.0" object-assign "^4.1.0" @@ -2688,12 +2292,10 @@ query-string@^5.0.1: randomgeojson@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/randomgeojson/-/randomgeojson-1.0.0.tgz#2446f5a5cd88365365a10ebdda9fe76656fa6b1f" - integrity sha1-JEb1pc2INlNloQ692p/nZlb6ax8= rc@^1.1.7: version "1.2.5" resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.5.tgz#275cd687f6e3b36cc756baa26dfee80a790301fd" - integrity sha1-J1zWh/bjs2zHVrqibf7oCnkDAf0= dependencies: deep-extend "~0.4.0" ini "~1.3.0" @@ -2703,7 +2305,6 @@ rc@^1.1.7: readable-stream@2.2.7: version "2.2.7" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.2.7.tgz#07057acbe2467b22042d36f98c5ad507054e95b1" - integrity sha1-BwV6y+JGeyIELTb5jFrVBwVOlbE= dependencies: buffer-shims "~1.0.0" core-util-is "~1.0.0" @@ -2716,7 +2317,6 @@ readable-stream@2.2.7: "readable-stream@> 1.0.0 < 3.0.0", readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.5, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.2.9, readable-stream@^2.3.3: version "2.3.3" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.3.tgz#368f2512d79f9d46fdfc71349ae7878bbc1eb95c" - integrity sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ== dependencies: core-util-is "~1.0.0" inherits "~2.0.3" @@ -2729,7 +2329,6 @@ readable-stream@2.2.7: readable-stream@^2.0.6, readable-stream@^2.1.4: version "2.3.4" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.4.tgz#c946c3f47fa7d8eabc0b6150f4a12f69a4574071" - integrity sha512-vuYxeWYM+fde14+rajzqgeohAI7YoJcHE7kXDAc4Nk0EbuKnJfqtY9YtRkLo/tqkuF7MsBQRhPnPeyjYITp3ZQ== dependencies: core-util-is "~1.0.0" inherits "~2.0.3" @@ -2742,7 +2341,6 @@ readable-stream@^2.0.6, readable-stream@^2.1.4: readable-stream@~2.1.0: version "2.1.5" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.1.5.tgz#66fa8b720e1438b364681f2ad1a63c618448c9d0" - integrity sha1-ZvqLcg4UOLNkaB8q0aY8YYRIydA= dependencies: buffer-shims "^1.0.0" core-util-is "~1.0.0" @@ -2755,29 +2353,24 @@ readable-stream@~2.1.0: regexp-clone@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/regexp-clone/-/regexp-clone-0.0.1.tgz#a7c2e09891fdbf38fbb10d376fb73003e68ac589" - integrity sha1-p8LgmJH9vzj7sQ03b7cwA+aKxYk= reinterval@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/reinterval/-/reinterval-1.1.0.tgz#3361ecfa3ca6c18283380dd0bb9546f390f5ece7" - integrity sha1-M2Hs+jymwYKDOA3Qu5VG85D17Oc= remove-trailing-separator@^1.0.1: version "1.1.0" resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" - integrity sha1-wkvOKig62tW8P1jg1IJJuSN52O8= request-debug@0.x.x: version "0.2.0" resolved "https://registry.yarnpkg.com/request-debug/-/request-debug-0.2.0.tgz#fc054ec817181b04ca41a052c136f61c48abaf78" - integrity sha1-/AVOyBcYGwTKQaBSwTb2HEirr3g= dependencies: stringify-clone "^1.0.0" request@2.81.0, request@2.x.x: version "2.81.0" resolved "https://registry.yarnpkg.com/request/-/request-2.81.0.tgz#c6928946a0e06c5f8d6f8a9333469ffda46298a0" - integrity sha1-xpKJRqDgbF+Nb4qTM0af/aRimKA= dependencies: aws-sign2 "~0.6.0" aws4 "^1.2.1" @@ -2805,7 +2398,6 @@ request@2.81.0, request@2.x.x: request@^2.81.0: version "2.83.0" resolved "https://registry.yarnpkg.com/request/-/request-2.83.0.tgz#ca0b65da02ed62935887808e6f510381034e3356" - integrity sha512-lR3gD69osqm6EYLk9wB/G1W/laGWjzH90t1vEa2xuxHD5KUrSzp9pUSfTm+YC5Nxt2T8nMPEvKlhbQayU7bgFw== dependencies: aws-sign2 "~0.7.0" aws4 "^1.6.0" @@ -2833,7 +2425,6 @@ request@^2.81.0: request@~2.79.0: version "2.79.0" resolved "https://registry.yarnpkg.com/request/-/request-2.79.0.tgz#4dfe5bf6be8b8cdc37fcf93e04b65577722710de" - integrity sha1-Tf5b9r6LjNw3/Pk+BLZVd3InEN4= dependencies: aws-sign2 "~0.6.0" aws4 "^1.2.1" @@ -2859,7 +2450,6 @@ request@~2.79.0: require-uncached@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/require-uncached/-/require-uncached-1.0.3.tgz#4e0d56d6c9662fd31e43011c4b95aa49955421d3" - integrity sha1-Tg1W1slmL9MeQwEcS5WqSZVUIdM= dependencies: caller-path "^0.1.0" resolve-from "^1.0.0" @@ -2867,7 +2457,6 @@ require-uncached@^1.0.3: require_optional@~1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/require_optional/-/require_optional-1.0.1.tgz#4cf35a4247f64ca3df8c2ef208cc494b1ca8fc2e" - integrity sha512-qhM/y57enGWHAe3v/NcwML6a3/vfESLe/sGM2dII+gEO0BpKRUkWZow/tyloNqJyN6kXSl3RyyM8Ll5D/sJP8g== dependencies: resolve-from "^2.0.0" semver "^5.1.0" @@ -2875,24 +2464,20 @@ require_optional@~1.0.0: resolve-from@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-1.0.1.tgz#26cbfe935d1aeeeabb29bc3fe5aeb01e93d44226" - integrity sha1-Jsv+k10a7uq7Kbw/5a6wHpPUQiY= resolve-from@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-2.0.0.tgz#9480ab20e94ffa1d9e80a804c7ea147611966b57" - integrity sha1-lICrIOlP+h2egKgEx+oUdhGWa1c= responselike@1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/responselike/-/responselike-1.0.2.tgz#918720ef3b631c5642be068f15ade5a46f4ba1e7" - integrity sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec= dependencies: lowercase-keys "^1.0.0" restify-errors@^4.2.3: version "4.3.0" resolved "https://registry.yarnpkg.com/restify-errors/-/restify-errors-4.3.0.tgz#ec90f30934d7f3119135181dfc303e30be601abe" - integrity sha1-7JDzCTTX8xGRNRgd/DA+ML5gGr4= dependencies: assert-plus "^1.0.0" lodash "^4.2.1" @@ -2903,7 +2488,6 @@ restify-errors@^4.2.3: restify-errors@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/restify-errors/-/restify-errors-5.0.0.tgz#668717e100683eec6ce0d515f89ff1dbec254a8d" - integrity sha512-+vby9Kxf7qlzvbZSTIEGkIixkeHG+pVCl34dk6eKnL+ua4pCezpdLT/1/eabzPZb65ADrgoc04jeWrrF1E1pvQ== dependencies: assert-plus "^1.0.0" lodash "^4.2.1" @@ -2914,7 +2498,6 @@ restify-errors@^5.0.0: restify@^5.2.0: version "5.2.1" resolved "https://registry.yarnpkg.com/restify/-/restify-5.2.1.tgz#f04cdc1bcf763ec085b5e5a01610819b21d1f148" - integrity sha512-OZbqEvRm04Px+vXm3d31sI58HjN2qRaY6O6tA9LGRgyLZJ5+oW4qaLCdKddXfUX6MjtwAc+LLkDQmDbYUifLXA== dependencies: assert-plus "^1.0.0" bunyan "^1.8.1" @@ -2941,7 +2524,6 @@ restify@^5.2.0: restore-cursor@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-2.0.0.tgz#9f7ee287f82fd326d4fd162923d62129eee0dfaf" - integrity sha1-n37ih/gv0ybU/RYpI9YhKe7g368= dependencies: onetime "^2.0.0" signal-exit "^3.0.2" @@ -2949,135 +2531,112 @@ restore-cursor@^2.0.0: rimraf@2, rimraf@^2.2.8, rimraf@^2.5.1, rimraf@^2.6.1: version "2.6.2" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.2.tgz#2ed8150d24a16ea8651e6d6ef0f47c4158ce7a36" - integrity sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w== dependencies: glob "^7.0.5" rimraf@~2.4.0: version "2.4.5" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.4.5.tgz#ee710ce5d93a8fdb856fb5ea8ff0e2d75934b2da" - integrity sha1-7nEM5dk6j9uFb7Xqj/Di11k0sto= dependencies: glob "^6.0.1" run-async@^2.2.0: version "2.3.0" resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.3.0.tgz#0371ab4ae0bdd720d4166d7dfda64ff7a445a6c0" - integrity sha1-A3GrSuC91yDUFm19/aZP96RFpsA= dependencies: is-promise "^2.1.0" rx-lite-aggregates@^4.0.8: version "4.0.8" resolved "https://registry.yarnpkg.com/rx-lite-aggregates/-/rx-lite-aggregates-4.0.8.tgz#753b87a89a11c95467c4ac1626c4efc4e05c67be" - integrity sha1-dTuHqJoRyVRnxKwWJsTvxOBcZ74= dependencies: rx-lite "*" rx-lite@*, rx-lite@^4.0.8: version "4.0.8" resolved "https://registry.yarnpkg.com/rx-lite/-/rx-lite-4.0.8.tgz#0b1e11af8bc44836f04a6407e92da42467b79444" - integrity sha1-Cx4Rr4vESDbwSmQH6S2kJGe3lEQ= safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@~5.1.0, safe-buffer@~5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.1.tgz#893312af69b2123def71f57889001671eeb2c853" - integrity sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg== safe-json-stringify@^1.0.3, safe-json-stringify@~1: version "1.0.4" resolved "https://registry.yarnpkg.com/safe-json-stringify/-/safe-json-stringify-1.0.4.tgz#81a098f447e4bbc3ff3312a243521bc060ef5911" - integrity sha1-gaCY9Efku8P/MxKiQ1IbwGDvWRE= select-hose@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/select-hose/-/select-hose-2.0.0.tgz#625d8658f865af43ec962bfc376a37359a4994ca" - integrity sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo= semver@^5.0.1: version "5.4.1" resolved "https://registry.yarnpkg.com/semver/-/semver-5.4.1.tgz#e059c09d8571f0540823733433505d3a2f00b18e" - integrity sha512-WfG/X9+oATh81XtllIo/I8gOiY9EXRdv1cQdyykeXK17YcUW3EXUAi2To4pcH6nZtJPr7ZOpM5OMyWJZm+8Rsg== semver@^5.1.0, semver@^5.3.0: version "5.5.0" resolved "https://registry.yarnpkg.com/semver/-/semver-5.5.0.tgz#dc4bbc7a6ca9d916dee5d43516f0092b58f7b8ab" - integrity sha512-4SJ3dm0WAwWy/NVeioZh5AntkdJoWKxHxcmyP622fOkgHa4z3R0TdBJICINyaSDE6uNwVc8gZr+ZinwZAH4xIA== set-blocking@~2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" - integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc= shebang-command@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" - integrity sha1-RKrGW2lbAzmJaMOfNj/uXer98eo= dependencies: shebang-regex "^1.0.0" shebang-regex@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" - integrity sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM= signal-exit@^3.0.0, signal-exit@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" - integrity sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0= simple-statistics@^5.2.1: version "5.2.1" resolved "https://registry.yarnpkg.com/simple-statistics/-/simple-statistics-5.2.1.tgz#b1a93a336c02053e04273c7ee84606b33b907c46" - integrity sha512-3GoUxxnGznTByzfHWroolVvRQ9/OXISUKjJYcBioLRDnGX7oJSkepxmvUyBIBDZaU1WoWMEIa9WxCo/tz96bEQ== slice-ansi@1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-1.0.0.tgz#044f1a49d8842ff307aad6b505ed178bd950134d" - integrity sha512-POqxBK6Lb3q6s047D/XsDVNPnF9Dl8JSaqe9h9lURl0OdNqy/ujDrOiIHtsqXMGbWWTIomRzAMaTyawAU//Reg== dependencies: is-fullwidth-code-point "^2.0.0" sliced@0.0.5: version "0.0.5" resolved "https://registry.yarnpkg.com/sliced/-/sliced-0.0.5.tgz#5edc044ca4eb6f7816d50ba2fc63e25d8fe4707f" - integrity sha1-XtwETKTrb3gW1Qui/GPiXY/kcH8= sliced@1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/sliced/-/sliced-1.0.1.tgz#0b3a662b5d04c3177b1926bea82b03f837a2ef41" - integrity sha1-CzpmK10Ewxd7GSa+qCsD+Dei70E= sntp@1.x.x: version "1.0.9" resolved "https://registry.yarnpkg.com/sntp/-/sntp-1.0.9.tgz#6541184cc90aeea6c6e7b35e2659082443c66198" - integrity sha1-ZUEYTMkK7qbG57NeJlkIJEPGYZg= dependencies: hoek "2.x.x" sntp@2.x.x: version "2.1.0" resolved "https://registry.yarnpkg.com/sntp/-/sntp-2.1.0.tgz#2c6cec14fedc2222739caf9b5c3d85d1cc5a2cc8" - integrity sha512-FL1b58BDrqS3A11lJ0zEdnJ3UOKqVxawAkF3k7F0CVN7VQ34aZrV+G8BZ1WC9ZL7NyrwsW0oviwsWDgRuVYtJg== dependencies: hoek "4.x.x" sort-keys@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/sort-keys/-/sort-keys-2.0.0.tgz#658535584861ec97d730d6cf41822e1f56684128" - integrity sha1-ZYU1WEhh7JfXMNbPQYIuH1ZoQSg= dependencies: is-plain-obj "^1.0.0" "source-map@>= 0.1.2", source-map@~0.5.6: version "0.5.7" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" - integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w= spdy-transport@^2.0.18: version "2.0.20" resolved "https://registry.yarnpkg.com/spdy-transport/-/spdy-transport-2.0.20.tgz#735e72054c486b2354fe89e702256004a39ace4d" - integrity sha1-c15yBUxIayNU/onnAiVgBKOazk0= dependencies: debug "^2.6.8" detect-node "^2.0.3" @@ -3090,7 +2649,6 @@ spdy-transport@^2.0.18: spdy@^3.3.3: version "3.4.7" resolved "https://registry.yarnpkg.com/spdy/-/spdy-3.4.7.tgz#42ff41ece5cc0f99a3a6c28aabb73f5c3b03acbc" - integrity sha1-Qv9B7OXMD5mjpsKKq7c/XDsDrLw= dependencies: debug "^2.6.8" handle-thing "^1.2.5" @@ -3102,19 +2660,16 @@ spdy@^3.3.3: split2@^2.1.1: version "2.2.0" resolved "https://registry.yarnpkg.com/split2/-/split2-2.2.0.tgz#186b2575bcf83e85b7d18465756238ee4ee42493" - integrity sha512-RAb22TG39LhI31MbreBgIuKiIKhVsawfTgEGqKHTK87aG+ul/PB8Sqoi3I7kVdRWiCfrKxK3uo4/YUkpNvhPbw== dependencies: through2 "^2.0.2" sprintf-js@~1.0.2: version "1.0.3" resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" - integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= sshpk@^1.7.0: version "1.13.1" resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.13.1.tgz#512df6da6287144316dc4c18fe1cf1d940739be3" - integrity sha1-US322mKHFEMW3EwY/hzx2UBzm+M= dependencies: asn1 "~0.2.3" assert-plus "^1.0.0" @@ -3129,34 +2684,28 @@ sshpk@^1.7.0: stack-trace@~0.0.9: version "0.0.10" resolved "https://registry.yarnpkg.com/stack-trace/-/stack-trace-0.0.10.tgz#547c70b347e8d32b4e108ea1a2a159e5fdde19c0" - integrity sha1-VHxws0fo0ytOEI6hoqFZ5f3eGcA= static-eval@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/static-eval/-/static-eval-2.0.0.tgz#0e821f8926847def7b4b50cda5d55c04a9b13864" - integrity sha512-6flshd3F1Gwm+Ksxq463LtFd1liC77N/PX1FVVc3OzL3hAmo2fwHFbuArkcfi7s9rTNsLEhcRmXGFZhlgy40uw== dependencies: escodegen "^1.8.1" stream-shift@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.0.tgz#d5c752825e5367e786f78e18e445ea223a155952" - integrity sha1-1cdSgl5TZ+eG944Y5EXqIjoVWVI= stream-transform@^0.2.2: version "0.2.2" resolved "https://registry.yarnpkg.com/stream-transform/-/stream-transform-0.2.2.tgz#75867487f49528f8bf1d82499658753d02df7838" - integrity sha1-dYZ0h/SVKPi/HYJJllh1PQLfeDg= strict-uri-encode@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz#279b225df1d582b1f54e65addd4352e18faa0713" - integrity sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM= string-width@^1.0.1, string-width@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" - integrity sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M= dependencies: code-point-at "^1.0.0" is-fullwidth-code-point "^1.0.0" @@ -3165,7 +2714,6 @@ string-width@^1.0.1, string-width@^1.0.2: string-width@^2.1.0, string-width@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" - integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw== dependencies: is-fullwidth-code-point "^2.0.0" strip-ansi "^4.0.0" @@ -3173,74 +2721,62 @@ string-width@^2.1.0, string-width@^2.1.1: string_decoder@~0.10.x: version "0.10.31" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94" - integrity sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ= string_decoder@~1.0.0, string_decoder@~1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.0.3.tgz#0fc67d7c141825de94282dd536bec6b9bce860ab" - integrity sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ== dependencies: safe-buffer "~5.1.0" stringify-clone@^1.0.0: version "1.1.1" resolved "https://registry.yarnpkg.com/stringify-clone/-/stringify-clone-1.1.1.tgz#309a235fb4ecfccd7d388dbe18ba904facaf433b" - integrity sha1-MJojX7Ts/M19OI2+GLqQT6yvQzs= stringify-stream@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/stringify-stream/-/stringify-stream-1.0.5.tgz#e51407a8fdc4ca0e1c62f149868bacf5cf204050" - integrity sha1-5RQHqP3Eyg4cYvFJhous9c8gQFA= dependencies: readable-stream "~2.1.0" stringstream@~0.0.4, stringstream@~0.0.5: version "0.0.5" resolved "https://registry.yarnpkg.com/stringstream/-/stringstream-0.0.5.tgz#4e484cd4de5a0bbbee18e46307710a8a81621878" - integrity sha1-TkhM1N5aC7vuGORjB3EKioFiGHg= strip-ansi@^3.0.0, strip-ansi@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" - integrity sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8= dependencies: ansi-regex "^2.0.0" strip-ansi@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f" - integrity sha1-qEeQIusaw2iocTibY1JixQXuNo8= dependencies: ansi-regex "^3.0.0" strip-json-comments@~2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" - integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo= supports-color@4.4.0: version "4.4.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-4.4.0.tgz#883f7ddabc165142b2a61427f3352ded195d1a3e" - integrity sha512-rKC3+DyXWgK0ZLKwmRsrkyHVZAjNkfzeehuFWdGGcqGDTZFH73+RH6S/RDAAxl9GusSjZSUWYLmT9N5pzXFOXQ== dependencies: has-flag "^2.0.0" supports-color@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" - integrity sha1-U10EXOa2Nj+kARcIRimZXp3zJMc= supports-color@^4.0.0: version "4.5.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-4.5.0.tgz#be7a0de484dec5c5cddf8b3d59125044912f635b" - integrity sha1-vnoN5ITexcXN34s9WRJQRJEvY1s= dependencies: has-flag "^2.0.0" table@^4.0.1: version "4.0.2" resolved "https://registry.yarnpkg.com/table/-/table-4.0.2.tgz#a33447375391e766ad34d3486e6e2aedc84d2e36" - integrity sha512-UUkEAPdSGxtRpiV9ozJ5cMTtYiqz7Ni1OGqLXRCynrvzdtR1p+cfOWe2RJLwvUG8hNanaSRjecIqwOjqeatDsA== dependencies: ajv "^5.2.3" ajv-keywords "^2.1.0" @@ -3252,7 +2788,6 @@ table@^4.0.1: tar-pack@^3.4.0: version "3.4.1" resolved "https://registry.yarnpkg.com/tar-pack/-/tar-pack-3.4.1.tgz#e1dbc03a9b9d3ba07e896ad027317eb679a10a1f" - integrity sha512-PPRybI9+jM5tjtCbN2cxmmRU7YmqT3Zv/UDy48tAh2XRkLa9bAORtSWLkVc13+GJF+cdTh1yEnHEk3cpTaL5Kg== dependencies: debug "^2.2.0" fstream "^1.0.10" @@ -3266,7 +2801,6 @@ tar-pack@^3.4.0: tar@^2.2.1: version "2.2.1" resolved "https://registry.yarnpkg.com/tar/-/tar-2.2.1.tgz#8e4d2a256c0e2185c6b18ad694aec968b83cb1d1" - integrity sha1-jk0qJWwOIYXGsYrWlK7JaLg8sdE= dependencies: block-stream "*" fstream "^1.0.2" @@ -3275,12 +2809,10 @@ tar@^2.2.1: text-table@~0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" - integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= through2-filter@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/through2-filter/-/through2-filter-2.0.0.tgz#60bc55a0dacb76085db1f9dae99ab43f83d622ec" - integrity sha1-YLxVoNrLdghdsfna6Zq0P4PWIuw= dependencies: through2 "~2.0.0" xtend "~4.0.0" @@ -3288,7 +2820,6 @@ through2-filter@^2.0.0: through2@^2.0.1, through2@^2.0.2, through2@~2.0.0: version "2.0.3" resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.3.tgz#0004569b37c7c74ba39c43f3ced78d1ad94140be" - integrity sha1-AARWmzfHx0ujnEPzzteNGtlBQL4= dependencies: readable-stream "^2.1.5" xtend "~4.0.1" @@ -3296,24 +2827,20 @@ through2@^2.0.1, through2@^2.0.2, through2@~2.0.0: through@^2.3.6: version "2.3.8" resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" - integrity sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU= timed-out@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/timed-out/-/timed-out-4.0.1.tgz#f32eacac5a175bea25d7fab565ab3ed8741ef56f" - integrity sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8= tmp@^0.0.33: version "0.0.33" resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9" - integrity sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw== dependencies: os-tmpdir "~1.0.2" to-absolute-glob@^2.0.0: version "2.0.2" resolved "https://registry.yarnpkg.com/to-absolute-glob/-/to-absolute-glob-2.0.2.tgz#1865f43d9e74b0822db9f145b78cff7d0f7c849b" - integrity sha1-GGX0PZ50sIItufFFt4z/fQ98hJs= dependencies: is-absolute "^1.0.0" is-negated-glob "^1.0.0" @@ -3321,95 +2848,78 @@ to-absolute-glob@^2.0.0: tough-cookie@~2.3.0: version "2.3.4" resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.4.tgz#ec60cee38ac675063ffc97a5c18970578ee83655" - integrity sha512-TZ6TTfI5NtZnuyy/Kecv+CnoROnyXn2DN97LontgQpCwsX2XyLYCC0ENhYkehSOwAp8rTQKc/NUIF7BkQ5rKLA== dependencies: punycode "^1.4.1" tough-cookie@~2.3.3: version "2.3.3" resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.3.tgz#0b618a5565b6dea90bf3425d04d55edc475a7561" - integrity sha1-C2GKVWW23qkL80JdBNVe3EdadWE= dependencies: punycode "^1.4.1" tunnel-agent@^0.6.0: version "0.6.0" resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" - integrity sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0= dependencies: safe-buffer "^5.0.1" tunnel-agent@~0.4.1: version "0.4.3" resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.4.3.tgz#6373db76909fe570e08d73583365ed828a74eeeb" - integrity sha1-Y3PbdpCf5XDgjXNYM2Xtgop07us= tv4@1.x.x: version "1.3.0" resolved "https://registry.yarnpkg.com/tv4/-/tv4-1.3.0.tgz#d020c846fadd50c855abb25ebaecc68fc10f7963" - integrity sha1-0CDIRvrdUMhVq7JeuuzGj8EPeWM= tweetnacl@^0.14.3, tweetnacl@~0.14.0: version "0.14.5" resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" - integrity sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q= type-check@~0.3.2: version "0.3.2" resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72" - integrity sha1-WITKtRLPHTVeP7eE8wgEsrUg23I= dependencies: prelude-ls "~1.1.2" type-detect@0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-0.1.1.tgz#0ba5ec2a885640e470ea4e8505971900dac58822" - integrity sha1-C6XsKohWQORw6k6FBZcZANrFiCI= type-detect@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-1.0.0.tgz#762217cc06db258ec48908a1298e8b95121e8ea2" - integrity sha1-diIXzAbbJY7EiQihKY6LlRIejqI= type-detect@^4.0.0: version "4.0.5" resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.5.tgz#d70e5bc81db6de2a381bcaca0c6e0cbdc7635de2" - integrity sha512-N9IvkQslUGYGC24RkJk1ba99foK6TkwC2FHAEBlQFBP0RxQZS8ZpJuAZcwiY/w9ZJHFQb1aOXBI60OdxhTrwEQ== typedarray@^0.0.6: version "0.0.6" resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" - integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c= uid-number@^0.0.6: version "0.0.6" resolved "https://registry.yarnpkg.com/uid-number/-/uid-number-0.0.6.tgz#0ea10e8035e8eb5b8e4449f06da1c730663baa81" - integrity sha1-DqEOgDXo61uOREnwbaHHMGY7qoE= ultron@~1.1.0: version "1.1.1" resolved "https://registry.yarnpkg.com/ultron/-/ultron-1.1.1.tgz#9fe1536a10a664a65266a1e3ccf85fd36302bc9c" - integrity sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og== unc-path-regex@^0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/unc-path-regex/-/unc-path-regex-0.1.2.tgz#e73dd3d7b0d7c5ed86fbac6b0ae7d8c6a69d50fa" - integrity sha1-5z3T17DXxe2G+6xrCufYxqadUPo= underscore@1.1.x: version "1.1.7" resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.1.7.tgz#40bab84bad19d230096e8d6ef628bff055d83db0" - integrity sha1-QLq4S60Z0jAJbo1u9ii/8FXYPbA= underscore@1.7.0: version "1.7.0" resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.7.0.tgz#6bbaf0877500d36be34ecaa584e0db9fef035209" - integrity sha1-a7rwh3UA02vjTsqlhODbn+8DUgk= unique-stream@^2.0.2: version "2.2.1" resolved "https://registry.yarnpkg.com/unique-stream/-/unique-stream-2.2.1.tgz#5aa003cfbe94c5ff866c4e7d668bb1c4dbadb369" - integrity sha1-WqADz76Uxf+GbE59ZouxxNuts2k= dependencies: json-stable-stringify "^1.0.0" through2-filter "^2.0.0" @@ -3417,36 +2927,30 @@ unique-stream@^2.0.2: url-parse-lax@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/url-parse-lax/-/url-parse-lax-3.0.0.tgz#16b5cafc07dbe3676c1b1999177823d6503acb0c" - integrity sha1-FrXK/Afb42dsGxmZF3gj1lA6yww= dependencies: prepend-http "^2.0.0" url-to-options@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/url-to-options/-/url-to-options-1.0.1.tgz#1505a03a289a48cbd7a434efbaeec5055f5633a9" - integrity sha1-FQWgOiiaSMvXpDTvuu7FBV9WM6k= util-deprecate@~1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" - integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= uuid@^3.0.0, uuid@^3.1.0, uuid@^3.2.1: version "3.2.1" resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.2.1.tgz#12c528bb9d58d0b9265d9a2f6f0fe8be17ff1f14" - integrity sha512-jZnMwlb9Iku/O3smGWvZhauCf6cvvpKi4BKRiliS3cxnI+Gz9j5MEpTz2UFuXiKPJocb7gnsLHwiS05ige5BEA== vasync@^1.6.4: version "1.6.4" resolved "https://registry.yarnpkg.com/vasync/-/vasync-1.6.4.tgz#dfe93616ad0e7ae801b332a9d88bfc5cdc8e1d1f" - integrity sha1-3+k2Fq0OeugBszKp2Iv8XNyOHR8= dependencies: verror "1.6.0" verror@1.10.0, verror@^1.8.1, verror@^1.9.0: version "1.10.0" resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400" - integrity sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA= dependencies: assert-plus "^1.0.0" core-util-is "1.0.2" @@ -3455,21 +2959,18 @@ verror@1.10.0, verror@^1.8.1, verror@^1.9.0: verror@1.6.0: version "1.6.0" resolved "https://registry.yarnpkg.com/verror/-/verror-1.6.0.tgz#7d13b27b1facc2e2da90405eb5ea6e5bdd252ea5" - integrity sha1-fROyex+swuLakEBetepuW90lLqU= dependencies: extsprintf "1.2.0" wbuf@^1.1.0, wbuf@^1.7.2: version "1.7.2" resolved "https://registry.yarnpkg.com/wbuf/-/wbuf-1.7.2.tgz#d697b99f1f59512df2751be42769c1580b5801fe" - integrity sha1-1pe5nx9ZUS3ydRvkJ2nBWAtYAf4= dependencies: minimalistic-assert "^1.0.0" websocket-stream@^5.0.1: version "5.1.1" resolved "https://registry.yarnpkg.com/websocket-stream/-/websocket-stream-5.1.1.tgz#68d23916cdf53689cff73e213fa2178dbcea6169" - integrity sha512-ypQ50zVCnikSvJcRFWaZh7xeCufSje5+mbJRq3mdvdNx+06TD98C+bQsSKc7FkI6y1PVuNbzkenGywxlFiQeUQ== dependencies: duplexify "^3.5.1" inherits "^2.0.1" @@ -3481,36 +2982,30 @@ websocket-stream@^5.0.1: wgs84@0.0.0: version "0.0.0" resolved "https://registry.yarnpkg.com/wgs84/-/wgs84-0.0.0.tgz#34fdc555917b6e57cf2a282ed043710c049cdc76" - integrity sha1-NP3FVZF7blfPKigu0ENxDASc3HY= which@^1.2.9: version "1.3.0" resolved "https://registry.yarnpkg.com/which/-/which-1.3.0.tgz#ff04bdfc010ee547d780bec38e1ac1c2777d253a" - integrity sha512-xcJpopdamTuY5duC/KnTTNBraPK54YwpenP4lzxU8H91GudWpFv38u0CKjclE1Wi2EH2EDz5LRcHcKbCIzqGyg== dependencies: isexe "^2.0.0" wide-align@^1.1.0: version "1.1.2" resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.2.tgz#571e0f1b0604636ebc0dfc21b0339bbe31341710" - integrity sha512-ijDLlyQ7s6x1JgCLur53osjm/UXUYD9+0PbYKrBsYisYXzCxN+HC3mYDNy/dWdmf3AwqwU3CXwDCvsNgGK1S0w== dependencies: string-width "^1.0.2" window-size@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.1.4.tgz#f8e1aa1ee5a53ec5bf151ffa09742a6ad7697876" - integrity sha1-+OGqHuWlPsW/FR/6CXQqatdpeHY= wordwrap@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" - integrity sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus= wrap-ansi@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-2.1.0.tgz#d8fc3d284dd05794fe84973caecdd1cf824fdd85" - integrity sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU= dependencies: string-width "^1.0.1" strip-ansi "^3.0.1" @@ -3518,19 +3013,16 @@ wrap-ansi@^2.0.0: wrappy@1: version "1.0.2" resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" - integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= write@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/write/-/write-0.2.1.tgz#5fc03828e264cea3fe91455476f7a3c566cb0757" - integrity sha1-X8A4KOJkzqP+kUVUdvejxWbLB1c= dependencies: mkdirp "^0.5.1" ws@^3.2.0: version "3.3.3" resolved "https://registry.yarnpkg.com/ws/-/ws-3.3.3.tgz#f1cf84fe2d5e901ebce94efaece785f187a228f2" - integrity sha512-nnWLa/NwZSt4KQJu51MYlCcSQ5g7INpOrOMt4XV8j4dqTXdmlUmSHQ8/oLC069ckre0fRsgfvsKwbTdtKLCDkA== dependencies: async-limiter "~1.0.0" safe-buffer "~5.1.0" @@ -3539,22 +3031,18 @@ ws@^3.2.0: xtend@^4.0.0, xtend@^4.0.1, xtend@~4.0.0, xtend@~4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af" - integrity sha1-pcbVMr5lbiPbgg77lDofBJmNY68= y18n@^3.2.0: version "3.2.1" resolved "https://registry.yarnpkg.com/y18n/-/y18n-3.2.1.tgz#6d15fba884c08679c0d77e88e7759e811e07fa41" - integrity sha1-bRX7qITAhnnA136I53WegR4H+kE= yallist@^2.1.2: version "2.1.2" resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" - integrity sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI= yargs@^3.10.0: version "3.32.0" resolved "https://registry.yarnpkg.com/yargs/-/yargs-3.32.0.tgz#03088e9ebf9e756b69751611d2a5ef591482c995" - integrity sha1-AwiOnr+edWtpdRYR0qXvWRSCyZU= dependencies: camelcase "^2.0.1" cliui "^3.0.3" From 0f5f470fb6700757ed54829c6a06c599dc45a50b Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Fri, 6 Dec 2019 20:53:25 +0100 Subject: [PATCH 051/337] extend tests --- tests/data/valid_sensebox.js | 6 +++++- tests/tests/005-create-boxes-test.js | 2 +- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/tests/data/valid_sensebox.js b/tests/data/valid_sensebox.js index 934e6c10..3c2173be 100644 --- a/tests/data/valid_sensebox.js +++ b/tests/data/valid_sensebox.js @@ -1,7 +1,7 @@ 'use strict'; const randomGeojson = require('randomgeojson'); -module.exports = function ({ bbox, model, sensors, lonlat, name = '' } = {}) { +module.exports = function ({ bbox, model, sensors, lonlat, name = '', sensorTemplates } = {}) { const randomGeojsonOptions = { featureTypes: ['Point'] }; let loc; if (lonlat) { @@ -40,5 +40,9 @@ module.exports = function ({ bbox, model, sensors, lonlat, name = '' } = {}) { box.sensors = sensors; } + if (sensorTemplates) { + box.sensorTemplates = sensorTemplates; + } + return box; }; diff --git a/tests/tests/005-create-boxes-test.js b/tests/tests/005-create-boxes-test.js index 92d14279..07b4d4f1 100644 --- a/tests/tests/005-create-boxes-test.js +++ b/tests/tests/005-create-boxes-test.js @@ -605,7 +605,7 @@ describe('openSenseMap API Routes: /boxes', function () { expect(response).to.have.status(200); expect(response).to.have.header('content-type', 'application/json; charset=utf-8'); expect(Array.isArray(response.body)).to.be.true; - expect(response.body.length).to.be.equal(3); + expect(response.body.length).to.be.equal(boxCount); for (const box of response.body) { expect(Object.keys(box)) .to.not.include('loc') From 75e7c2fad7d2ff9de673d9129719ce65e56bf123 Mon Sep 17 00:00:00 2001 From: felixerdy Date: Tue, 10 Dec 2019 15:04:52 +0100 Subject: [PATCH 052/337] bump sketch templater version --- packages/models/package.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/models/package.json b/packages/models/package.json index 0f23d9eb..5d6d80b5 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -6,7 +6,7 @@ "license": "MIT", "dependencies": { "@sensebox/osem-protos": "^1.1.0", - "@sensebox/sketch-templater": "^1.5.0", + "@sensebox/sketch-templater": "^1.5.1", "bcrypt": "^1.0.2", "bunyan": "^1.8.12", "config": "^1.29.2", @@ -27,4 +27,4 @@ "publishConfig": { "access": "public" } -} \ No newline at end of file +} From 8f2394e4a7d6da3d214b8d558b7dfeff6011329f Mon Sep 17 00:00:00 2001 From: felixerdy Date: Tue, 10 Dec 2019 15:06:18 +0100 Subject: [PATCH 053/337] selection of soil sensor digital port --- packages/api/lib/controllers/boxesController.js | 12 +++++++++++- packages/models/src/box/box.js | 10 +++++++++- 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/packages/api/lib/controllers/boxesController.js b/packages/api/lib/controllers/boxesController.js index cbed0c06..fbf55cac 100644 --- a/packages/api/lib/controllers/boxesController.js +++ b/packages/api/lib/controllers/boxesController.js @@ -414,7 +414,13 @@ const getSketch = async function getSketch (req, res, next) { res.header('Content-Type', 'text/plain; charset=utf-8'); try { const box = await Box.findBoxById(req._userParams.boxId, { populate: false, lean: false }); - res.send(box.getSketch({ serialPort: req._userParams.serialPort, ssid: req._userParams.ssid, password: req._userParams.password })); + res.send(box.getSketch({ + serialPort: req._userParams.serialPort, + soilDigitalPort: req._userParams.soilDigitalPort, + soundMeterPort: req._userParams.soundMeterPort, + ssid: req._userParams.ssid, + password: req._userParams.password + })); } catch (err) { handleError(err, next); } @@ -460,6 +466,8 @@ module.exports = { retrieveParameters([ { predef: 'boxId', required: true }, { name: 'serialPort', dataType: 'String', allowedValues: ['Serial1', 'Serial2'] }, + { name: 'soilDigitalPort', dataType: 'String', allowedValues: ['A', 'B', 'C'] }, + { name: 'soundMeterPort', dataType: 'String', allowedValues: ['A', 'B', 'C'] }, { name: 'ssid', dataType: 'StringWithEmpty' }, { name: 'password', dataType: 'StringWithEmpty' } ]), @@ -506,6 +514,8 @@ module.exports = { { name: 'sensors', dataType: ['object'] }, { name: 'sensorTemplates', dataType: ['String'], allowedValues: ['hdc1080', 'bmp280', 'sds 011', 'tsl45315', 'veml6070', 'bme680', 'smt50', 'soundlevelmeter'] }, { name: 'serialPort', dataType: 'String', defaultValue: 'Serial1', allowedValues: ['Serial1', 'Serial2'] }, + { name: 'soilDigitalPort', dataType: 'String', defaultValue: 'A', allowedValues: ['A', 'B', 'C'] }, + { name: 'soundMeterPort', dataType: 'String', defaultValue: 'B', allowedValues: ['A', 'B', 'C'] }, { name: 'mqtt', dataType: 'object' }, { name: 'ttn', dataType: 'object' }, { predef: 'location', required: true } diff --git a/packages/models/src/box/box.js b/packages/models/src/box/box.js index fa233c3c..b4f28a60 100644 --- a/packages/models/src/box/box.js +++ b/packages/models/src/box/box.js @@ -800,14 +800,22 @@ boxSchema.methods.updateSensors = function updateSensors (sensors) { } }; -boxSchema.methods.getSketch = function getSketch ({ encoding, serialPort, ssid, password } = {}) { +boxSchema.methods.getSketch = function getSketch ({ encoding, serialPort, soilDigitalPort, soundMeterPort, ssid, password } = {}) { if (serialPort) { this.serialPort = serialPort; } + if (soilDigitalPort) { + this.soilDigitalPort = soilDigitalPort; + } + if (soundMeterPort) { + this.soundMeterPort = soundMeterPort; + } this.ssid = ssid; this.password = password; + console.log(this); + return templateSketcher.generateSketch(this, { encoding }); }; From b247abc4fd6eeb208b5e8eeaa571b857e3714e6a Mon Sep 17 00:00:00 2001 From: felixerdy Date: Tue, 10 Dec 2019 15:10:50 +0100 Subject: [PATCH 054/337] resolve linting error --- packages/models/src/box/box.js | 2 -- 1 file changed, 2 deletions(-) diff --git a/packages/models/src/box/box.js b/packages/models/src/box/box.js index b4f28a60..33858624 100644 --- a/packages/models/src/box/box.js +++ b/packages/models/src/box/box.js @@ -814,8 +814,6 @@ boxSchema.methods.getSketch = function getSketch ({ encoding, serialPort, soilDi this.ssid = ssid; this.password = password; - console.log(this); - return templateSketcher.generateSketch(this, { encoding }); }; From b2f53a5dbd879424ddd0038e64f2238eebe70321 Mon Sep 17 00:00:00 2001 From: felixerdy Date: Wed, 11 Dec 2019 09:35:29 +0100 Subject: [PATCH 055/337] add url params to getSketch documentation --- packages/api/lib/controllers/boxesController.js | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/packages/api/lib/controllers/boxesController.js b/packages/api/lib/controllers/boxesController.js index fbf55cac..c1148163 100644 --- a/packages/api/lib/controllers/boxesController.js +++ b/packages/api/lib/controllers/boxesController.js @@ -407,6 +407,11 @@ const postNewBox = async function postNewBox (req, res, next) { * @api {get} /boxes/:senseBoxId/script Download the Arduino script for your senseBox * @apiName getSketch * @apiGroup Boxes + * @apiParam {String="Serial1","Serial2"} serialPort the serial port the SDS011 sensor is connected to + * @apiParam {String="A","B","C"} soilDigitalPort the digital port the SMT50 sensor is connected to + * @apiParam {String="A","B","C"} soundMeterPort the digital port the soundlevelmeter sensor is connected to + * @apiParam {String} ssid the ssid of your wifi network + * @apiParam {String} password the password of your wifi network * @apiUse JWTokenAuth * @apiUse BoxIdParam */ From 7913d418f266ed00366122cba4802d5c1266e814 Mon Sep 17 00:00:00 2001 From: felixerdy Date: Wed, 11 Dec 2019 11:57:18 +0100 Subject: [PATCH 056/337] match sensor titles with sensor ids from sketch-templater --- .../src/box/sensorLayouts/sensorDefinitions/bme680_humidity.js | 2 +- .../src/box/sensorLayouts/sensorDefinitions/bme680_pressure.js | 2 +- .../box/sensorLayouts/sensorDefinitions/bme680_temperature.js | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/models/src/box/sensorLayouts/sensorDefinitions/bme680_humidity.js b/packages/models/src/box/sensorLayouts/sensorDefinitions/bme680_humidity.js index d3cfb565..7abee635 100644 --- a/packages/models/src/box/sensorLayouts/sensorDefinitions/bme680_humidity.js +++ b/packages/models/src/box/sensorLayouts/sensorDefinitions/bme680_humidity.js @@ -1,7 +1,7 @@ 'use strict'; module.exports = { - title: 'rel. Luftfeuchte', + title: 'Luftfeuchte', unit: '%', sensorType: 'BME680', icon: 'osem-humidity' diff --git a/packages/models/src/box/sensorLayouts/sensorDefinitions/bme680_pressure.js b/packages/models/src/box/sensorLayouts/sensorDefinitions/bme680_pressure.js index e857963d..55bccde5 100644 --- a/packages/models/src/box/sensorLayouts/sensorDefinitions/bme680_pressure.js +++ b/packages/models/src/box/sensorLayouts/sensorDefinitions/bme680_pressure.js @@ -1,7 +1,7 @@ 'use strict'; module.exports = { - title: 'Luftdruck', + title: 'atm. Luftdruck', unit: 'hPa', sensorType: 'BME680', icon: 'osem-barometer' diff --git a/packages/models/src/box/sensorLayouts/sensorDefinitions/bme680_temperature.js b/packages/models/src/box/sensorLayouts/sensorDefinitions/bme680_temperature.js index a716e221..83b22170 100644 --- a/packages/models/src/box/sensorLayouts/sensorDefinitions/bme680_temperature.js +++ b/packages/models/src/box/sensorLayouts/sensorDefinitions/bme680_temperature.js @@ -1,7 +1,7 @@ 'use strict'; module.exports = { - title: 'Temperatur', + title: 'Lufttemperatur', unit: '°C', sensorType: 'BME680', icon: 'osem-thermometer' From 05c09833807a5841f2ecd57bc53db449a00e5011 Mon Sep 17 00:00:00 2001 From: Umut Tas Date: Thu, 12 Dec 2019 11:28:11 +0100 Subject: [PATCH 057/337] v0.0.12 --- packages/models/CHANGELOG.md | 4 ++++ packages/models/package.json | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/packages/models/CHANGELOG.md b/packages/models/CHANGELOG.md index 15ebabea..823fb4e2 100644 --- a/packages/models/CHANGELOG.md +++ b/packages/models/CHANGELOG.md @@ -2,6 +2,10 @@ ## Unreleased +## v0.0.12 +- Add BME680 Sensor +- Update @sensebox/node-sketch-templater to v1.5.1 + ## v0.0.11 - **BREAKING CHANGE**: `/boxes` sensor does not contain `lastMeasurement` anymore - introduce `minimal` parameter to reduce payload on `/boxes` #164 diff --git a/packages/models/package.json b/packages/models/package.json index 5d6d80b5..723fff96 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -1,7 +1,7 @@ { "name": "@sensebox/opensensemap-api-models", "description": "openSenseMap data models and database connection", - "version": "0.0.11", + "version": "0.0.12", "main": "index.js", "license": "MIT", "dependencies": { From 719a412358abece84e8bcf030476e754cbedb1ef Mon Sep 17 00:00:00 2001 From: Umut Tas Date: Thu, 12 Dec 2019 11:31:39 +0100 Subject: [PATCH 058/337] v0.0.13 --- packages/models/CHANGELOG.md | 2 ++ packages/models/package.json | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/models/CHANGELOG.md b/packages/models/CHANGELOG.md index 823fb4e2..81ed89eb 100644 --- a/packages/models/CHANGELOG.md +++ b/packages/models/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +## v0.0.13 + ## v0.0.12 - Add BME680 Sensor - Update @sensebox/node-sketch-templater to v1.5.1 diff --git a/packages/models/package.json b/packages/models/package.json index 723fff96..d17b756c 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -1,7 +1,7 @@ { "name": "@sensebox/opensensemap-api-models", "description": "openSenseMap data models and database connection", - "version": "0.0.12", + "version": "0.0.13", "main": "index.js", "license": "MIT", "dependencies": { From 9c0faf9d8d57990cffe9e0bc82f7820ee9ff7c62 Mon Sep 17 00:00:00 2001 From: Umut Tas Date: Thu, 12 Dec 2019 11:54:55 +0100 Subject: [PATCH 059/337] (models) new version of @sensebox/opensensemap-api-models --- packages/api/package.json | 2 +- packages/models/CHANGELOG.md | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/api/package.json b/packages/api/package.json index dd8fe8ee..39fc0061 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -10,7 +10,7 @@ "Norwin Roosen" ], "dependencies": { - "@sensebox/opensensemap-api-models": "^0.0.11", + "@sensebox/opensensemap-api-models": "^0.0.13", "@turf/area": "^4.6.0", "@turf/bbox": "^4.6.0", "@turf/centroid": "^4.6.1", diff --git a/packages/models/CHANGELOG.md b/packages/models/CHANGELOG.md index 81ed89eb..8acc7054 100644 --- a/packages/models/CHANGELOG.md +++ b/packages/models/CHANGELOG.md @@ -3,11 +3,11 @@ ## Unreleased ## v0.0.13 - -## v0.0.12 - Add BME680 Sensor - Update @sensebox/node-sketch-templater to v1.5.1 +## v0.0.12 + ## v0.0.11 - **BREAKING CHANGE**: `/boxes` sensor does not contain `lastMeasurement` anymore - introduce `minimal` parameter to reduce payload on `/boxes` #164 From 7d5c591d68ddd915f8bf73bc9a0348d6731a8042 Mon Sep 17 00:00:00 2001 From: umut0 Date: Thu, 12 Dec 2019 14:43:49 +0100 Subject: [PATCH 060/337] yarn lock file --- yarn.lock | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index a82a8be8..4484707f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -16,9 +16,10 @@ version "1.1.0" resolved "https://registry.yarnpkg.com/@sensebox/osem-protos/-/osem-protos-1.1.0.tgz#a7de8bc6be867953f1309181a012063c23299e79" -"@sensebox/sketch-templater@^1.5.0": - version "1.5.0" - resolved "https://registry.yarnpkg.com/@sensebox/sketch-templater/-/sketch-templater-1.5.0.tgz#fc84a037e3019f3357d1798515c437e59e849d64" +"@sensebox/sketch-templater@^1.5.1": + version "1.5.1" + resolved "https://registry.yarnpkg.com/@sensebox/sketch-templater/-/sketch-templater-1.5.1.tgz#8a2827bf17eb8611c9595732f0444a38b4dfb450" + integrity sha512-xt9GBhAYkPo+2xqzYsI1mY/MKzll2hPobzYub16jrJuetS8ZU35IIzVDyIhU/gtA79OsuER6b3EBhl2ffpWxww== dependencies: config "^1.29.2" dedent "^0.7.0" From 13514a551887e4d19723a2dca0074167c412e7ee Mon Sep 17 00:00:00 2001 From: umut0 Date: Thu, 19 Dec 2019 17:12:13 +0100 Subject: [PATCH 061/337] upgrade grpc --- yarn.lock | 471 ++++++++++++++++++++++++++++++++++++++++++++---------- 1 file changed, 390 insertions(+), 81 deletions(-) diff --git a/yarn.lock b/yarn.lock index 4484707f..166fa109 100644 --- a/yarn.lock +++ b/yarn.lock @@ -89,6 +89,24 @@ "@turf/distance" "^4.7.3" "@turf/helpers" "^4.7.3" +"@types/bytebuffer@^5.0.40": + version "5.0.40" + resolved "https://registry.yarnpkg.com/@types/bytebuffer/-/bytebuffer-5.0.40.tgz#d6faac40dcfb09cd856cdc4c01d3690ba536d3ee" + integrity sha512-h48dyzZrPMz25K6Q4+NCwWaxwXany2FhQg/ErOcdZS1ZpsaDnDMZg8JYLMTGz7uvXKrcKGJUZJlZObyfgdaN9g== + dependencies: + "@types/long" "*" + "@types/node" "*" + +"@types/long@*": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@types/long/-/long-4.0.0.tgz#719551d2352d301ac8b81db732acb6bdc28dbdef" + integrity sha512-1w52Nyx4Gq47uuu0EVcsHBxZFJgurQ+rTKS3qMHxR1GY2T8c2AJYd6vZoZ9q1rupaDjU0yT+Jc2XTyXkjeMA+Q== + +"@types/node@*": + version "12.12.21" + resolved "https://registry.yarnpkg.com/@types/node/-/node-12.12.21.tgz#aa44a6363291c7037111c47e4661ad210aded23f" + integrity sha512-8sRGhbpU+ck1n0PGAUgVrWrWdjSW2aqNeyC15W88GRsMpSwzv6RJGlLhE7s2RhVSOdyDmxbqlWSeThq4/7xqlA== + "@types/node@^6.0.46": version "6.0.88" resolved "https://registry.yarnpkg.com/@types/node/-/node-6.0.88.tgz#f618f11a944f6a18d92b5c472028728a3e3d4b66" @@ -100,6 +118,7 @@ JSONSelect@0.4.0: abbrev@1: version "1.1.1" resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" + integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q== acorn-jsx@^3.0.0: version "3.0.1" @@ -126,6 +145,7 @@ ajv-keywords@^2.1.0: ajv@^4.9.1: version "4.11.8" resolved "https://registry.yarnpkg.com/ajv/-/ajv-4.11.8.tgz#82ffb02b29e662ae53bdc20af15947706739c536" + integrity sha1-gv+wKynmYq5TvcIK8VlHcGc5xTY= dependencies: co "^4.6.0" json-stable-stringify "^1.0.1" @@ -155,6 +175,7 @@ ansi-escapes@^3.0.0: ansi-regex@^2.0.0: version "2.1.1" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" + integrity sha1-w7M6te42DYbg5ijwRorn7yfWVN8= ansi-regex@^3.0.0: version "3.0.0" @@ -177,10 +198,12 @@ apicache@^0.10.0: aproba@^1.0.3: version "1.2.0" resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" + integrity sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw== are-we-there-yet@~1.1.2: - version "1.1.4" - resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz#bb5dca382bb94f05e15194373d16fd3ba1ca110d" + version "1.1.5" + resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz#4b35c2944f062a8bfcda66410760350fe9ddfc21" + integrity sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w== dependencies: delegates "^1.0.0" readable-stream "^2.0.6" @@ -208,21 +231,27 @@ arrify@^1.0.0: ascli@~1: version "1.0.1" resolved "https://registry.yarnpkg.com/ascli/-/ascli-1.0.1.tgz#bcfa5974a62f18e81cabaeb49732ab4a88f906bc" + integrity sha1-vPpZdKYvGOgcq660lzKrSoj5Brw= dependencies: colour "~0.7.1" optjs "~3.2.2" asn1@~0.2.3: - version "0.2.3" - resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.3.tgz#dac8787713c9966849fc8180777ebe9c1ddf3b86" + version "0.2.4" + resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.4.tgz#8d2475dfab553bb33e77b54e59e880bb8ce23136" + integrity sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg== + dependencies: + safer-buffer "~2.1.0" assert-plus@1.0.0, assert-plus@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" + integrity sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU= assert-plus@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-0.2.0.tgz#d74e1b87e7affc0db8aadb7021f3fe48101ab234" + integrity sha1-104bh+ev/A24qttwIfP+SBAasjQ= assertion-error@^1.0.1: version "1.0.2" @@ -241,16 +270,23 @@ async@2.1.4: asynckit@^0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" + integrity sha1-x57Zf380y48robyXkLzDZkdLS3k= aws-sign2@~0.6.0: version "0.6.0" resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.6.0.tgz#14342dd38dbcc94d0e5b87d763cd63612c0e794f" + integrity sha1-FDQt0428yU0OW4fXY81jYSwOeU8= aws-sign2@~0.7.0: version "0.7.0" resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8" -aws4@^1.2.1, aws4@^1.6.0: +aws4@^1.2.1: + version "1.9.0" + resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.9.0.tgz#24390e6ad61386b0a747265754d2a17219de862c" + integrity sha512-Uvq6hVe90D0B2WEnUqtdgY1bATGz3mw33nH9Y+dmA+w5DHvUmBgkr5rM/KCHpCsiFNRUfokW/szpPPgMK2hm4A== + +aws4@^1.6.0: version "1.6.0" resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.6.0.tgz#83ef5ca860b2b32e4a0deedee8c771b9db57471e" @@ -265,14 +301,16 @@ babel-code-frame@^6.22.0: balanced-match@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" + integrity sha1-ibTRmasr7kneFk6gK4nORi1xt2c= base64url@2.0.0, base64url@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/base64url/-/base64url-2.0.0.tgz#eac16e03ea1438eff9423d69baa36262ed1f70bb" bcrypt-pbkdf@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz#63bc5dcb61331b92bc05fd528953c33462a06f8d" + version "1.0.2" + resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz#a4301d389b6a43f9b67ff3ca11a3f6637e360e9e" + integrity sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4= dependencies: tweetnacl "^0.14.3" @@ -292,6 +330,7 @@ bl@^1.2.1: block-stream@*: version "0.0.9" resolved "https://registry.yarnpkg.com/block-stream/-/block-stream-0.0.9.tgz#13ebfe778a03205cfe03751481ebb4b3300c126a" + integrity sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo= dependencies: inherits "~2.0.0" @@ -306,6 +345,7 @@ boolbase@~1.0.0: boom@2.x.x: version "2.10.1" resolved "https://registry.yarnpkg.com/boom/-/boom-2.10.1.tgz#39c8918ceff5799f83f9492a848f625add0c766f" + integrity sha1-OciRjO/1eZ+D+UkqhI9iWt0Mdm8= dependencies: hoek "2.x.x" @@ -324,6 +364,7 @@ boom@5.x.x: brace-expansion@^1.1.7: version "1.1.11" resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" + integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== dependencies: balanced-match "^1.0.0" concat-map "0.0.1" @@ -356,6 +397,7 @@ bunyan@^1.8.1, bunyan@^1.8.12: bytebuffer@~5: version "5.0.1" resolved "https://registry.yarnpkg.com/bytebuffer/-/bytebuffer-5.0.1.tgz#582eea4b1a873b6d020a48d58df85f0bba6cfddd" + integrity sha1-WC7qSxqHO20CCkjVjfhfC7ps/d0= dependencies: long "~3" @@ -391,6 +433,7 @@ callsites@^0.2.0: camelcase@^2.0.1: version "2.1.1" resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-2.1.1.tgz#7c1d16d679a1bbe59ca02cacecfb011e201f5a1f" + integrity sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8= caseless@~0.11.0: version "0.11.0" @@ -399,6 +442,7 @@ caseless@~0.11.0: caseless@~0.12.0: version "0.12.0" resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" + integrity sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw= chai-as-promised@5.x.x: version "5.3.0" @@ -477,6 +521,11 @@ cheerio@^1.0.0-rc.2: lodash "^4.15.0" parse5 "^3.0.1" +chownr@^1.1.1: + version "1.1.3" + resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.3.tgz#42d837d5239688d55f303003a508230fa6727142" + integrity sha512-i70fVHhmV3DtTl6nqvZOnIjbY0Pe4kAUjwHj8z0zAdgBtYrJyYwLKCCuRBQ5ppkyL0AkN7HKRnETdmdp1zqNXw== + circular-json@^0.3.1: version "0.3.3" resolved "https://registry.yarnpkg.com/circular-json/-/circular-json-0.3.3.tgz#815c99ea84f6809529d2f45791bdf82711352d66" @@ -498,6 +547,7 @@ cli-width@^2.0.0: cliui@^3.0.3: version "3.2.0" resolved "https://registry.yarnpkg.com/cliui/-/cliui-3.2.0.tgz#120601537a916d29940f934da3b48d585a39213d" + integrity sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0= dependencies: string-width "^1.0.1" strip-ansi "^3.0.1" @@ -523,10 +573,12 @@ clone@^1.0.2: co@^4.6.0: version "4.6.0" resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" + integrity sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ= code-point-at@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" + integrity sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c= color-convert@^1.9.0: version "1.9.1" @@ -545,10 +597,12 @@ colors@0.5.x: colour@~0.7.1: version "0.7.1" resolved "https://registry.yarnpkg.com/colour/-/colour-0.7.1.tgz#9cb169917ec5d12c0736d3e8685746df1cadf778" + integrity sha1-nLFpkX7F0SwHNtPoaFdG3xyt93g= combined-stream@^1.0.5, combined-stream@~1.0.5: - version "1.0.6" - resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.6.tgz#723e7df6e801ac5613113a7e445a9b69cb632818" + version "1.0.8" + resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" + integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg== dependencies: delayed-stream "~1.0.0" @@ -566,6 +620,7 @@ commist@^1.0.0: concat-map@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" + integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= concat-stream@^1.6.0: version "1.6.0" @@ -585,10 +640,12 @@ config@^1.29.2: console-control-strings@^1.0.0, console-control-strings@~1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" + integrity sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4= core-util-is@1.0.2, core-util-is@~1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" + integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= cross-spawn@^5.1.0: version "5.1.0" @@ -601,6 +658,7 @@ cross-spawn@^5.1.0: cryptiles@2.x.x: version "2.0.5" resolved "https://registry.yarnpkg.com/cryptiles/-/cryptiles-2.0.5.tgz#3bdfecdc608147c1c67202fa291e7dca59eaa3b8" + integrity sha1-O9/s3GCBR8HGcgL6KR59ylnqo7g= dependencies: boom "2.x.x" @@ -649,6 +707,7 @@ csv@^1.1.0: dashdash@^1.12.0: version "1.14.1" resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" + integrity sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA= dependencies: assert-plus "^1.0.0" @@ -668,9 +727,17 @@ debug@3.1.0, debug@^3.1.0: dependencies: ms "2.0.0" +debug@^3.2.6: + version "3.2.6" + resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b" + integrity sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ== + dependencies: + ms "^2.1.1" + decamelize@^1.1.1: version "1.2.0" resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" + integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= decode-uri-component@^0.2.0: version "0.2.0" @@ -698,9 +765,10 @@ deep-eql@^3.0.0: dependencies: type-detect "^4.0.0" -deep-extend@~0.4.0: - version "0.4.2" - resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.4.2.tgz#48b699c27e334bf89f10892be432f6e4c7d34a7f" +deep-extend@^0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac" + integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA== deep-is@~0.1.3: version "0.1.3" @@ -727,14 +795,17 @@ del@^2.0.2: delayed-stream@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" + integrity sha1-3zrhmayt+31ECqrgsp4icrJOxhk= delegates@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" + integrity sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o= detect-libc@^1.0.2: version "1.0.3" resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b" + integrity sha1-+hN8S9aY7fVc1c0CrFWfkaTEups= detect-node@^2.0.3: version "2.0.3" @@ -809,10 +880,12 @@ ebnf-parser@~0.1.9: resolved "https://registry.yarnpkg.com/ebnf-parser/-/ebnf-parser-0.1.10.tgz#cd1f6ba477c5638c40c97ed9b572db5bab5d8331" ecc-jsbn@~0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz#0fc73a9ed5f0d53c38193398523ef7e543777505" + version "0.1.2" + resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz#3a83a904e54353287874c564b7549386849a98c9" + integrity sha1-OoOpBOVDUyh4dMVkt1SThoSamMk= dependencies: jsbn "~0.1.0" + safer-buffer "^2.1.0" ecdsa-sig-formatter@1.0.9: version "1.0.9" @@ -974,10 +1047,15 @@ extend-object@1.x.x: version "1.0.0" resolved "https://registry.yarnpkg.com/extend-object/-/extend-object-1.0.0.tgz#42514f84015d1356caf5187969dfb2bc1bda0823" -extend@^3.0.0, extend@~3.0.0, extend@~3.0.1: +extend@^3.0.0, extend@~3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.1.tgz#a755ea7bc1adfcc5a31ce7e762dbaadc5e636444" +extend@~3.0.0: + version "3.0.2" + resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" + integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== + external-editor@^2.0.4: version "2.1.0" resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-2.1.0.tgz#3d026a21b7f95b5726387d4200ac160d372c3b48" @@ -993,10 +1071,12 @@ extsprintf@1.2.0: extsprintf@1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05" + integrity sha1-lpGEQOMEGnpBT4xS48V06zw+HgU= extsprintf@^1.2.0: version "1.4.0" resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.0.tgz#e2689f8f356fad62cca65a3a91c5df5f9551692f" + integrity sha1-4mifjzVvrWLMplo6kcXfX5VRaS8= fast-deep-equal@^1.0.0: version "1.0.0" @@ -1035,10 +1115,12 @@ flat-cache@^1.2.1: forever-agent@~0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" + integrity sha1-+8cfDEGt6zf5bFd60e1C2P2sypE= form-data@~2.1.1: version "2.1.4" resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.1.4.tgz#33c183acf193276ecaa98143a69e94bfee1750d1" + integrity sha1-M8GDrPGTJ27KqYFDpp6Uv+4XUNE= dependencies: asynckit "^0.4.0" combined-stream "^1.0.5" @@ -1063,21 +1145,31 @@ from2@^2.1.1: inherits "^2.0.1" readable-stream "^2.0.0" +fs-minipass@^1.2.5: + version "1.2.7" + resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-1.2.7.tgz#ccff8570841e7fe4265693da88936c55aed7f7c7" + integrity sha512-GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA== + dependencies: + minipass "^2.6.0" + fs.realpath@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" + integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= fstream-ignore@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/fstream-ignore/-/fstream-ignore-1.0.5.tgz#9c31dae34767018fe1d249b24dada67d092da105" + integrity sha1-nDHa40dnAY/h0kmyTa2mfQktoQU= dependencies: fstream "^1.0.0" inherits "2" minimatch "^3.0.0" -fstream@^1.0.0, fstream@^1.0.10, fstream@^1.0.2: - version "1.0.11" - resolved "https://registry.yarnpkg.com/fstream/-/fstream-1.0.11.tgz#5c1fb1f117477114f0632a0eb4b71b3cb0fd3171" +fstream@^1.0.0, fstream@^1.0.10, fstream@^1.0.12: + version "1.0.12" + resolved "https://registry.yarnpkg.com/fstream/-/fstream-1.0.12.tgz#4e8ba8ee2d48be4f7d0de505455548eae5932045" + integrity sha512-WvJ193OHa0GHPEL+AycEJgxvBEwyfRkN1vhjca23OaPVMCaLCXTd5qAu82AjTcgP1UJmytkOKb63Ypde7raDIg== dependencies: graceful-fs "^4.1.2" inherits "~2.0.0" @@ -1091,6 +1183,7 @@ functional-red-black-tree@^1.0.1: gauge@~2.7.3: version "2.7.4" resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7" + integrity sha1-LANAXHU4w51+s3sxcCLjJfsBi/c= dependencies: aproba "^1.0.3" console-control-strings "^1.0.0" @@ -1122,6 +1215,7 @@ get-stream@3.0.0, get-stream@^3.0.0: getpass@^0.1.1: version "0.1.7" resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa" + integrity sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo= dependencies: assert-plus "^1.0.0" @@ -1147,7 +1241,7 @@ glob-stream@^6.1.0: to-absolute-glob "^2.0.0" unique-stream "^2.0.2" -glob@7.1.2, glob@^7.0.3, glob@^7.0.5, glob@^7.1.1, glob@^7.1.2: +glob@7.1.2, glob@^7.0.3, glob@^7.1.1, glob@^7.1.2: version "7.1.2" resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.2.tgz#c19c9df9a028702d678612384a6552404c636d15" dependencies: @@ -1168,6 +1262,18 @@ glob@^6.0.1: once "^1.3.0" path-is-absolute "^1.0.0" +glob@^7.0.5, glob@^7.1.3: + version "7.1.6" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6" + integrity sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA== + dependencies: + fs.realpath "^1.0.0" + inflight "^1.0.4" + inherits "2" + minimatch "^3.0.4" + once "^1.3.0" + path-is-absolute "^1.0.0" + globals@^11.0.1: version "11.1.0" resolved "https://registry.yarnpkg.com/globals/-/globals-11.1.0.tgz#632644457f5f0e3ae711807183700ebf2e4633e4" @@ -1206,21 +1312,25 @@ got@^8.0.2, got@^8.0.3: url-to-options "^1.0.1" graceful-fs@^4.1.2: - version "4.1.11" - resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658" + version "4.2.3" + resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.3.tgz#4a12ff1b60376ef09862c2093edd908328be8423" + integrity sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ== growl@1.10.3: version "1.10.3" resolved "https://registry.yarnpkg.com/growl/-/growl-1.10.3.tgz#1926ba90cf3edfe2adb4927f5880bc22c66c790f" grpc@^1.9.0: - version "1.9.1" - resolved "https://registry.yarnpkg.com/grpc/-/grpc-1.9.1.tgz#18d7cfce153ebf952559e62dadbc8bbb85da1eac" + version "1.24.2" + resolved "https://registry.yarnpkg.com/grpc/-/grpc-1.24.2.tgz#76d047bfa7b05b607cbbe3abb99065dcefe0c099" + integrity sha512-EG3WH6AWMVvAiV15d+lr+K77HJ/KV/3FvMpjKjulXHbTwgDZkhkcWbwhxFAoTdxTkQvy0WFcO3Nog50QBbHZWw== dependencies: - lodash "^4.15.0" - nan "^2.0.0" - node-pre-gyp "^0.6.39" - protobufjs "^5.0.0" + "@types/bytebuffer" "^5.0.40" + lodash.camelcase "^4.3.0" + lodash.clone "^4.5.0" + nan "^2.13.2" + node-pre-gyp "^0.14.0" + protobufjs "^5.0.3" handle-thing@^1.2.5: version "1.2.5" @@ -1229,6 +1339,7 @@ handle-thing@^1.2.5: har-schema@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-1.0.5.tgz#d263135f43307c02c602afc8fe95970c0151369e" + integrity sha1-0mMTX0MwfALGAq/I/pWXDAFRNp4= har-schema@^2.0.0: version "2.0.0" @@ -1246,6 +1357,7 @@ har-validator@~2.0.6: har-validator@~4.2.1: version "4.2.1" resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-4.2.1.tgz#33481d0f1bbff600dd203d75812a6a5fba002e2a" + integrity sha1-M0gdDxu/9gDdID11gSpqX7oALio= dependencies: ajv "^4.9.1" har-schema "^1.0.5" @@ -1280,10 +1392,12 @@ has-to-string-tag-x@^1.2.0: has-unicode@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" + integrity sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk= -hawk@3.1.3, hawk@~3.1.3: +hawk@~3.1.3: version "3.1.3" resolved "https://registry.yarnpkg.com/hawk/-/hawk-3.1.3.tgz#078444bd7c1640b0fe540d2c9b73d59678e8e1c4" + integrity sha1-B4REvXwWQLD+VA0sm3PVlnjo4cQ= dependencies: boom "2.x.x" cryptiles "2.x.x" @@ -1315,6 +1429,7 @@ help-me@^1.0.1: hoek@2.x.x: version "2.16.3" resolved "https://registry.yarnpkg.com/hoek/-/hoek-2.16.3.tgz#20bb7403d3cea398e91dc4710a8ff1b8274a25ed" + integrity sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0= hoek@4.x.x: version "4.2.0" @@ -1370,6 +1485,7 @@ http-signature@^1.0.0, http-signature@~1.2.0: http-signature@~1.1.0: version "1.1.1" resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.1.1.tgz#df72e267066cd0ac67fb76adf8e134a8fbcf91bf" + integrity sha1-33LiZwZs0Kxn+3at+OE0qPvPkb8= dependencies: assert-plus "^0.2.0" jsprim "^1.2.2" @@ -1379,10 +1495,24 @@ iconv-lite@^0.4.17: version "0.4.19" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.19.tgz#f7468f60135f5e5dad3399c0a81be9a1603a082b" +iconv-lite@^0.4.4: + version "0.4.24" + resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" + integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== + dependencies: + safer-buffer ">= 2.1.2 < 3" + iconv-lite@~0.4.13: version "0.4.18" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.18.tgz#23d8656b16aae6742ac29732ea8f0336a4789cf2" +ignore-walk@^3.0.1: + version "3.0.3" + resolved "https://registry.yarnpkg.com/ignore-walk/-/ignore-walk-3.0.3.tgz#017e2447184bfeade7c238e4aefdd1e8f95b1e37" + integrity sha512-m7o6xuOaT1aqheYHKf8W6J5pYH85ZI9w077erOzLje3JsB1gkafkAhHHY19dqjulgIZHFm32Cp5uNZgcQqdJKw== + dependencies: + minimatch "^3.0.4" + ignore@^3.3.3: version "3.3.7" resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.7.tgz#612289bfb3c220e186a58118618d5be8c1bab021" @@ -1394,17 +1524,24 @@ imurmurhash@^0.1.4: inflight@^1.0.4: version "1.0.6" resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" + integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= dependencies: once "^1.3.0" wrappy "1" -inherits@2, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.0, inherits@~2.0.1, inherits@~2.0.3: +inherits@2, inherits@~2.0.0, inherits@~2.0.3: + version "2.0.4" + resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" + integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== + +inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.1: version "2.0.3" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" ini@~1.3.0: version "1.3.5" resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927" + integrity sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw== inquirer@^3.0.6: version "3.3.0" @@ -1435,6 +1572,7 @@ into-stream@^3.1.0: invert-kv@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-1.0.0.tgz#104a8e4aaca6d3d8cd157a8ef8bfab2d7a3ffdb6" + integrity sha1-EEqOSqym09jNFXqO+L+rLXo//bY= is-absolute@^1.0.0: version "1.0.0" @@ -1450,6 +1588,7 @@ is-extglob@^2.1.0: is-fullwidth-code-point@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb" + integrity sha1-754xOG8DGn8NZDr4L95QxFfvAMs= dependencies: number-is-nan "^1.0.0" @@ -1533,6 +1672,7 @@ is-supported-regexp-flag@^1.0.0: is-typedarray@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" + integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo= is-unc-path@^1.0.0: version "1.0.0" @@ -1547,6 +1687,7 @@ is-windows@^1.0.1: isarray@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" + integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= isemail@^3.0.0: version "3.1.0" @@ -1561,6 +1702,7 @@ isexe@^2.0.0: isstream@~0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" + integrity sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo= isurl@^1.0.0-alpha5: version "1.0.0" @@ -1603,6 +1745,7 @@ js-yaml@^3.9.1: jsbn@~0.1.0: version "0.1.1" resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" + integrity sha1-peZUwuWi3rXyAdls77yoDA7y9RM= json-buffer@3.0.0: version "3.0.0" @@ -1615,6 +1758,7 @@ json-schema-traverse@^0.3.0: json-schema@0.2.3: version "0.2.3" resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13" + integrity sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM= json-stable-stringify-without-jsonify@^1.0.1: version "1.0.1" @@ -1629,6 +1773,7 @@ json-stable-stringify@^1.0.0, json-stable-stringify@^1.0.1: json-stringify-safe@~5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" + integrity sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus= json5@0.4.0: version "0.4.0" @@ -1637,6 +1782,7 @@ json5@0.4.0: jsonify@~0.0.0: version "0.0.0" resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.0.tgz#2c74b6ee41d93ca51b7b5aaee8f503631d252a73" + integrity sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM= jsonpath@^1.0.0: version "1.0.0" @@ -1669,6 +1815,7 @@ jsonwebtoken@^8.1.0: jsprim@^1.2.2: version "1.4.1" resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.1.tgz#313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2" + integrity sha1-MT5mvB5cwG5Di8G3SZwuXFastqI= dependencies: assert-plus "1.0.0" extsprintf "1.3.0" @@ -1705,6 +1852,7 @@ keyv@3.0.0: lcid@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/lcid/-/lcid-1.0.0.tgz#308accafa0bc483a3867b4b6f2b9506251d1b835" + integrity sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU= dependencies: invert-kv "^1.0.0" @@ -1723,6 +1871,16 @@ lex-parser@0.1.x, lex-parser@~0.1.3: version "0.1.4" resolved "https://registry.yarnpkg.com/lex-parser/-/lex-parser-0.1.4.tgz#64c4f025f17fd53bfb45763faeb16f015a747550" +lodash.camelcase@^4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz#b28aa6288a2b9fc651035c7711f65ab6190331a6" + integrity sha1-soqmKIorn8ZRA1x3EfZathkDMaY= + +lodash.clone@^4.5.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/lodash.clone/-/lodash.clone-4.5.0.tgz#195870450f5a13192478df4bc3d23d2dea1907b6" + integrity sha1-GVhwRQ9aExkkeN9Lw9I9LeoZB7Y= + lodash.get@4.4.2, lodash.get@~4.4.2: version "4.4.2" resolved "https://registry.yarnpkg.com/lodash.get/-/lodash.get-4.4.2.tgz#2d177f652fa31e939b4438d5341499dfa3825e99" @@ -1764,12 +1922,14 @@ lodash@^4.14.0, lodash@^4.17.4, lodash@^4.2.1, lodash@^4.3.0: resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae" lodash@^4.15.0: - version "4.17.5" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.5.tgz#99a92d65c0272debe8c96b6057bc8fbfa3bed511" + version "4.17.15" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.15.tgz#b447f6670a0455bbfeedd11392eff330ea097548" + integrity sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A== long@~3: version "3.2.0" resolved "https://registry.yarnpkg.com/long/-/long-3.2.0.tgz#d821b7138ca1cb581c172990ef14db200b5c474b" + integrity sha1-2CG3E4yhy1gcFymQ7xTbIAtcR0s= lowercase-keys@1.0.0, lowercase-keys@^1.0.0: version "1.0.0" @@ -1786,19 +1946,21 @@ millify@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/millify/-/millify-2.0.1.tgz#3cfde496b23904b357c620ae71409ffd8eafdd02" +mime-db@1.42.0: + version "1.42.0" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.42.0.tgz#3e252907b4c7adb906597b4b65636272cf9e7bac" + integrity sha512-UbfJCR4UAVRNgMpfImz05smAXK7+c+ZntjaA26ANtkXLlOe947Aag5zdIcKQULAiF9Cq4WxBi9jUs5zkA84bYQ== + mime-db@~1.30.0: version "1.30.0" resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.30.0.tgz#74c643da2dd9d6a45399963465b26d5ca7d71f01" -mime-db@~1.33.0: - version "1.33.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.33.0.tgz#a3492050a5cb9b63450541e39d9788d2272783db" - mime-types@^2.1.12, mime-types@~2.1.7: - version "2.1.18" - resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.18.tgz#6f323f60a83d11146f831ff11fd66e2fe5503bb8" + version "2.1.25" + resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.25.tgz#39772d46621f93e2a80a856c53b86a62156a6437" + integrity sha512-5KhStqB5xpTAeGqKBAMgwaYMnQik7teQN4IAzC7npDv6kzeU6prfkR67bc87J1kWMPGkoaZSq1npmexMgkmEVg== dependencies: - mime-db "~1.33.0" + mime-db "1.42.0" mime-types@~2.1.17: version "2.1.17" @@ -1838,12 +2000,28 @@ minimalistic-assert@^1.0.0: minimist@0.0.8: version "0.0.8" resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" + integrity sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0= minimist@^1.1.0, minimist@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" -mkdirp@0.5.1, "mkdirp@>=0.5 0", mkdirp@^0.5.1, mkdirp@~0.5.1: +minipass@^2.6.0, minipass@^2.8.6, minipass@^2.9.0: + version "2.9.0" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-2.9.0.tgz#e713762e7d3e32fed803115cf93e04bca9fcc9a6" + integrity sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg== + dependencies: + safe-buffer "^5.1.2" + yallist "^3.0.0" + +minizlib@^1.2.1: + version "1.3.3" + resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-1.3.3.tgz#2290de96818a34c29551c8a8d301216bd65a861d" + integrity sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q== + dependencies: + minipass "^2.9.0" + +mkdirp@0.5.1, "mkdirp@>=0.5 0", mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.1: version "0.5.1" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" dependencies: @@ -1958,6 +2136,7 @@ mquery@2.3.3: ms@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" + integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= ms@^2.1.1: version "2.1.1" @@ -1983,9 +2162,10 @@ nan@2.6.2: version "2.6.2" resolved "https://registry.yarnpkg.com/nan/-/nan-2.6.2.tgz#e4ff34e6c95fdfb5aecc08de6596f43605a7db45" -nan@^2.0.0: - version "2.9.2" - resolved "https://registry.yarnpkg.com/nan/-/nan-2.9.2.tgz#f564d75f5f8f36a6d9456cca7a6c4fe488ab7866" +nan@^2.13.2: + version "2.14.0" + resolved "https://registry.yarnpkg.com/nan/-/nan-2.14.0.tgz#7818f722027b2459a86f0295d434d1fc2336c52c" + integrity sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg== nan@^2.3.3: version "2.8.0" @@ -1999,6 +2179,15 @@ ncp@~2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/ncp/-/ncp-2.0.0.tgz#195a21d6c46e361d2fb1281ba38b91e9df7bdbb3" +needle@^2.2.1: + version "2.4.0" + resolved "https://registry.yarnpkg.com/needle/-/needle-2.4.0.tgz#6833e74975c444642590e15a750288c5f939b57c" + integrity sha512-4Hnwzr3mi5L97hMYeNl8wRW/Onhy4nUKR/lVemJ8gJedxxUyBLm9kkrDColJvoSfwi0jCNhD+xCdOtiGDQiRZg== + dependencies: + debug "^3.2.6" + iconv-lite "^0.4.4" + sax "^1.2.4" + negotiator@^0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.1.tgz#2b327184e8992101177b28563fb5e7102acd0ca9" @@ -2017,21 +2206,21 @@ node-pre-gyp@0.6.36: tar "^2.2.1" tar-pack "^3.4.0" -node-pre-gyp@^0.6.39: - version "0.6.39" - resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.6.39.tgz#c00e96860b23c0e1420ac7befc5044e1d78d8649" +node-pre-gyp@^0.14.0: + version "0.14.0" + resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.14.0.tgz#9a0596533b877289bcad4e143982ca3d904ddc83" + integrity sha512-+CvDC7ZttU/sSt9rFjix/P05iS43qHCOOGzcr3Ry99bXG7VX953+vFyEuph/tfqoYu8dttBkE86JSKBO2OzcxA== dependencies: detect-libc "^1.0.2" - hawk "3.1.3" mkdirp "^0.5.1" + needle "^2.2.1" nopt "^4.0.1" + npm-packlist "^1.1.6" npmlog "^4.0.2" - rc "^1.1.7" - request "2.81.0" + rc "^1.2.7" rimraf "^2.6.1" semver "^5.3.0" - tar "^2.2.1" - tar-pack "^3.4.0" + tar "^4.4.2" nomnom@1.5.2: version "1.5.2" @@ -2043,6 +2232,7 @@ nomnom@1.5.2: nopt@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.1.tgz#d0d4685afd5415193c8c7505602d0d17cd64474d" + integrity sha1-0NRoWv1UFRk8jHUFYC0NF81kR00= dependencies: abbrev "1" osenv "^0.1.4" @@ -2055,9 +2245,30 @@ normalize-url@2.0.1: query-string "^5.0.1" sort-keys "^2.0.0" +npm-bundled@^1.0.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/npm-bundled/-/npm-bundled-1.1.1.tgz#1edd570865a94cdb1bc8220775e29466c9fb234b" + integrity sha512-gqkfgGePhTpAEgUsGEgcq1rqPXA+tv/aVBlgEzfXwA1yiUJF7xtEt3CtVwOjNYQOVknDk0F20w58Fnm3EtG0fA== + dependencies: + npm-normalize-package-bin "^1.0.1" + +npm-normalize-package-bin@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz#6e79a41f23fd235c0623218228da7d9c23b8f6e2" + integrity sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA== + +npm-packlist@^1.1.6: + version "1.4.7" + resolved "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-1.4.7.tgz#9e954365a06b80b18111ea900945af4f88ed4848" + integrity sha512-vAj7dIkp5NhieaGZxBJB8fF4R0078rqsmhJcAfXZ6O7JJhjhPK96n5Ry1oZcfLXgfun0GWTZPOxaEyqv8GBykQ== + dependencies: + ignore-walk "^3.0.1" + npm-bundled "^1.0.1" + npmlog@^4.0.2: version "4.1.2" resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" + integrity sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg== dependencies: are-we-there-yet "~1.1.2" console-control-strings "~1.1.0" @@ -2073,6 +2284,7 @@ nth-check@~1.0.1: number-is-nan@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" + integrity sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0= oauth-sign@~0.8.1, oauth-sign@~0.8.2: version "0.8.2" @@ -2112,6 +2324,7 @@ optionator@^0.8.1, optionator@^0.8.2: optjs@~3.2.2: version "3.2.2" resolved "https://registry.yarnpkg.com/optjs/-/optjs-3.2.2.tgz#69a6ce89c442a44403141ad2f9b370bd5bb6f4ee" + integrity sha1-aabOicRCpEQDFBrS+bNwvVu29O4= ordered-read-streams@^1.0.0: version "1.0.1" @@ -2126,6 +2339,7 @@ os-homedir@1.0.2, os-homedir@^1.0.0: os-locale@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-1.4.0.tgz#20f9f17ae29ed345e8bde583b13d2009803c14d9" + integrity sha1-IPnxeuKe00XoveWDsT0gCYA8FNk= dependencies: lcid "^1.0.0" @@ -2136,6 +2350,7 @@ os-tmpdir@^1.0.0, os-tmpdir@~1.0.2: osenv@^0.1.4: version "0.1.5" resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.5.tgz#85cdfafaeb28e8677f416e287592b5f3f49ea410" + integrity sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g== dependencies: os-homedir "^1.0.0" os-tmpdir "^1.0.0" @@ -2171,6 +2386,7 @@ path-dirname@^1.0.0: path-is-absolute@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" + integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= path-is-inside@^1.0.1, path-is-inside@^1.0.2: version "1.0.2" @@ -2183,6 +2399,7 @@ pathval@^1.0.0: performance-now@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-0.2.0.tgz#33ef30c5c77d4ea21c5a53869d91b56d8f2555e5" + integrity sha1-M+8wxcd9TqIcWlOGnZG1bY8lVeU= performance-now@^2.1.0: version "2.1.0" @@ -2223,16 +2440,18 @@ process-nextick-args@^1.0.7, process-nextick-args@~1.0.6: resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-1.0.7.tgz#150e20b756590ad3f91093f25a4f2ad8bff30ba3" process-nextick-args@~2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.0.tgz#a37d732f4271b4ab1ad070d35508e8290788ffaa" + version "2.0.1" + resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" + integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag== progress@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.0.tgz#8a1be366bf8fc23db2bd23f10c6fe920b4389d1f" -protobufjs@^5.0.0: - version "5.0.2" - resolved "https://registry.yarnpkg.com/protobufjs/-/protobufjs-5.0.2.tgz#59748d7dcf03d2db22c13da9feb024e16ab80c91" +protobufjs@^5.0.3: + version "5.0.3" + resolved "https://registry.yarnpkg.com/protobufjs/-/protobufjs-5.0.3.tgz#e4dfe9fb67c90b2630d15868249bcc4961467a17" + integrity sha512-55Kcx1MhPZX0zTbVosMQEO5R6/rikNXd9b6RQK4KSPcrSIIwoXTtebIczUrXlwaSrbz4x8XUVThGPob1n8I4QA== dependencies: ascli "~1" bytebuffer "~5" @@ -2265,6 +2484,7 @@ punycode@2.x.x: punycode@^1.4.1: version "1.4.1" resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" + integrity sha1-wNWmOycYgArY4esPpSachN1BhF4= q@1.x.x: version "1.5.0" @@ -2281,6 +2501,7 @@ qs@~6.3.0: qs@~6.4.0: version "6.4.0" resolved "https://registry.yarnpkg.com/qs/-/qs-6.4.0.tgz#13e26d28ad6b0ffaa91312cd3bf708ed351e7233" + integrity sha1-E+JtKK1rD/qpExLNO/cI7TUecjM= query-string@^5.0.1: version "5.0.1" @@ -2294,11 +2515,12 @@ randomgeojson@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/randomgeojson/-/randomgeojson-1.0.0.tgz#2446f5a5cd88365365a10ebdda9fe76656fa6b1f" -rc@^1.1.7: - version "1.2.5" - resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.5.tgz#275cd687f6e3b36cc756baa26dfee80a790301fd" +rc@^1.1.7, rc@^1.2.7: + version "1.2.8" + resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed" + integrity sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw== dependencies: - deep-extend "~0.4.0" + deep-extend "^0.6.0" ini "~1.3.0" minimist "^1.2.0" strip-json-comments "~2.0.1" @@ -2328,15 +2550,16 @@ readable-stream@2.2.7: util-deprecate "~1.0.1" readable-stream@^2.0.6, readable-stream@^2.1.4: - version "2.3.4" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.4.tgz#c946c3f47fa7d8eabc0b6150f4a12f69a4574071" + version "2.3.6" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.6.tgz#b11c27d88b8ff1fbe070643cf94b0c79ae1b0aaf" + integrity sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw== dependencies: core-util-is "~1.0.0" inherits "~2.0.3" isarray "~1.0.0" process-nextick-args "~2.0.0" safe-buffer "~5.1.1" - string_decoder "~1.0.3" + string_decoder "~1.1.1" util-deprecate "~1.0.1" readable-stream@~2.1.0: @@ -2369,7 +2592,7 @@ request-debug@0.x.x: dependencies: stringify-clone "^1.0.0" -request@2.81.0, request@2.x.x: +request@2.x.x: version "2.81.0" resolved "https://registry.yarnpkg.com/request/-/request-2.81.0.tgz#c6928946a0e06c5f8d6f8a9333469ffda46298a0" dependencies: @@ -2529,7 +2752,14 @@ restore-cursor@^2.0.0: onetime "^2.0.0" signal-exit "^3.0.2" -rimraf@2, rimraf@^2.2.8, rimraf@^2.5.1, rimraf@^2.6.1: +rimraf@2, rimraf@^2.5.1, rimraf@^2.6.1: + version "2.7.1" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec" + integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w== + dependencies: + glob "^7.1.3" + +rimraf@^2.2.8: version "2.6.2" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.2.tgz#2ed8150d24a16ea8651e6d6ef0f47c4158ce7a36" dependencies: @@ -2557,14 +2787,34 @@ rx-lite@*, rx-lite@^4.0.8: version "4.0.8" resolved "https://registry.yarnpkg.com/rx-lite/-/rx-lite-4.0.8.tgz#0b1e11af8bc44836f04a6407e92da42467b79444" -safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@~5.1.0, safe-buffer@~5.1.1: +safe-buffer@^5.0.1, safe-buffer@^5.1.2: + version "5.2.0" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.0.tgz#b74daec49b1148f88c64b68d49b1e815c1f2f519" + integrity sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg== + +safe-buffer@^5.1.0, safe-buffer@^5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.1.tgz#893312af69b2123def71f57889001671eeb2c853" +safe-buffer@~5.1.0, safe-buffer@~5.1.1: + version "5.1.2" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" + integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== + safe-json-stringify@^1.0.3, safe-json-stringify@~1: version "1.0.4" resolved "https://registry.yarnpkg.com/safe-json-stringify/-/safe-json-stringify-1.0.4.tgz#81a098f447e4bbc3ff3312a243521bc060ef5911" +"safer-buffer@>= 2.1.2 < 3", safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0: + version "2.1.2" + resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" + integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== + +sax@^1.2.4: + version "1.2.4" + resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" + integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== + select-hose@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/select-hose/-/select-hose-2.0.0.tgz#625d8658f865af43ec962bfc376a37359a4994ca" @@ -2573,13 +2823,19 @@ semver@^5.0.1: version "5.4.1" resolved "https://registry.yarnpkg.com/semver/-/semver-5.4.1.tgz#e059c09d8571f0540823733433505d3a2f00b18e" -semver@^5.1.0, semver@^5.3.0: +semver@^5.1.0: version "5.5.0" resolved "https://registry.yarnpkg.com/semver/-/semver-5.5.0.tgz#dc4bbc7a6ca9d916dee5d43516f0092b58f7b8ab" +semver@^5.3.0: + version "5.7.1" + resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" + integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== + set-blocking@~2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" + integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc= shebang-command@^1.2.0: version "1.2.0" @@ -2616,6 +2872,7 @@ sliced@1.0.1: sntp@1.x.x: version "1.0.9" resolved "https://registry.yarnpkg.com/sntp/-/sntp-1.0.9.tgz#6541184cc90aeea6c6e7b35e2659082443c66198" + integrity sha1-ZUEYTMkK7qbG57NeJlkIJEPGYZg= dependencies: hoek "2.x.x" @@ -2669,17 +2926,18 @@ sprintf-js@~1.0.2: resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" sshpk@^1.7.0: - version "1.13.1" - resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.13.1.tgz#512df6da6287144316dc4c18fe1cf1d940739be3" + version "1.16.1" + resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.16.1.tgz#fb661c0bef29b39db40769ee39fa70093d6f6877" + integrity sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg== dependencies: asn1 "~0.2.3" assert-plus "^1.0.0" - dashdash "^1.12.0" - getpass "^0.1.1" - optionalDependencies: bcrypt-pbkdf "^1.0.0" + dashdash "^1.12.0" ecc-jsbn "~0.1.1" + getpass "^0.1.1" jsbn "~0.1.0" + safer-buffer "^2.0.2" tweetnacl "~0.14.0" stack-trace@~0.0.9: @@ -2704,15 +2962,16 @@ strict-uri-encode@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz#279b225df1d582b1f54e65addd4352e18faa0713" -string-width@^1.0.1, string-width@^1.0.2: +string-width@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" + integrity sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M= dependencies: code-point-at "^1.0.0" is-fullwidth-code-point "^1.0.0" strip-ansi "^3.0.0" -string-width@^2.1.0, string-width@^2.1.1: +"string-width@^1.0.2 || 2", string-width@^2.1.0, string-width@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" dependencies: @@ -2729,6 +2988,13 @@ string_decoder@~1.0.0, string_decoder@~1.0.3: dependencies: safe-buffer "~5.1.0" +string_decoder@~1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" + integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg== + dependencies: + safe-buffer "~5.1.0" + stringify-clone@^1.0.0: version "1.1.1" resolved "https://registry.yarnpkg.com/stringify-clone/-/stringify-clone-1.1.1.tgz#309a235fb4ecfccd7d388dbe18ba904facaf433b" @@ -2739,13 +3005,19 @@ stringify-stream@^1.0.5: dependencies: readable-stream "~2.1.0" -stringstream@~0.0.4, stringstream@~0.0.5: +stringstream@~0.0.4: + version "0.0.6" + resolved "https://registry.yarnpkg.com/stringstream/-/stringstream-0.0.6.tgz#7880225b0d4ad10e30927d167a1d6f2fd3b33a72" + integrity sha512-87GEBAkegbBcweToUrdzf3eLhWNg06FJTebl4BVJz/JgWy8CvEr9dRtX5qWphiynMSQlxxi+QqN0z5T32SLlhA== + +stringstream@~0.0.5: version "0.0.5" resolved "https://registry.yarnpkg.com/stringstream/-/stringstream-0.0.5.tgz#4e484cd4de5a0bbbee18e46307710a8a81621878" strip-ansi@^3.0.0, strip-ansi@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" + integrity sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8= dependencies: ansi-regex "^2.0.0" @@ -2758,6 +3030,7 @@ strip-ansi@^4.0.0: strip-json-comments@~2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" + integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo= supports-color@4.4.0: version "4.4.0" @@ -2789,6 +3062,7 @@ table@^4.0.1: tar-pack@^3.4.0: version "3.4.1" resolved "https://registry.yarnpkg.com/tar-pack/-/tar-pack-3.4.1.tgz#e1dbc03a9b9d3ba07e896ad027317eb679a10a1f" + integrity sha512-PPRybI9+jM5tjtCbN2cxmmRU7YmqT3Zv/UDy48tAh2XRkLa9bAORtSWLkVc13+GJF+cdTh1yEnHEk3cpTaL5Kg== dependencies: debug "^2.2.0" fstream "^1.0.10" @@ -2800,13 +3074,27 @@ tar-pack@^3.4.0: uid-number "^0.0.6" tar@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/tar/-/tar-2.2.1.tgz#8e4d2a256c0e2185c6b18ad694aec968b83cb1d1" + version "2.2.2" + resolved "https://registry.yarnpkg.com/tar/-/tar-2.2.2.tgz#0ca8848562c7299b8b446ff6a4d60cdbb23edc40" + integrity sha512-FCEhQ/4rE1zYv9rYXJw/msRqsnmlje5jHP6huWeBZ704jUTy02c5AZyWujpMR1ax6mVw9NyJMfuK2CMDWVIfgA== dependencies: block-stream "*" - fstream "^1.0.2" + fstream "^1.0.12" inherits "2" +tar@^4.4.2: + version "4.4.13" + resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.13.tgz#43b364bc52888d555298637b10d60790254ab525" + integrity sha512-w2VwSrBoHa5BsSyH+KxEqeQBAllHhccyMFVHtGtdMpF4W7IRWfZjFiQceJPChOeTsSDVUpER2T8FA93pr0L+QA== + dependencies: + chownr "^1.1.1" + fs-minipass "^1.2.5" + minipass "^2.8.6" + minizlib "^1.2.1" + mkdirp "^0.5.0" + safe-buffer "^5.1.2" + yallist "^3.0.3" + text-table@~0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" @@ -2849,6 +3137,7 @@ to-absolute-glob@^2.0.0: tough-cookie@~2.3.0: version "2.3.4" resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.4.tgz#ec60cee38ac675063ffc97a5c18970578ee83655" + integrity sha512-TZ6TTfI5NtZnuyy/Kecv+CnoROnyXn2DN97LontgQpCwsX2XyLYCC0ENhYkehSOwAp8rTQKc/NUIF7BkQ5rKLA== dependencies: punycode "^1.4.1" @@ -2861,6 +3150,7 @@ tough-cookie@~2.3.3: tunnel-agent@^0.6.0: version "0.6.0" resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" + integrity sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0= dependencies: safe-buffer "^5.0.1" @@ -2875,6 +3165,7 @@ tv4@1.x.x: tweetnacl@^0.14.3, tweetnacl@~0.14.0: version "0.14.5" resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" + integrity sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q= type-check@~0.3.2: version "0.3.2" @@ -2901,6 +3192,7 @@ typedarray@^0.0.6: uid-number@^0.0.6: version "0.0.6" resolved "https://registry.yarnpkg.com/uid-number/-/uid-number-0.0.6.tgz#0ea10e8035e8eb5b8e4449f06da1c730663baa81" + integrity sha1-DqEOgDXo61uOREnwbaHHMGY7qoE= ultron@~1.1.0: version "1.1.1" @@ -2938,8 +3230,14 @@ url-to-options@^1.0.1: util-deprecate@~1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" + integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= + +uuid@^3.0.0: + version "3.3.3" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.3.3.tgz#4568f0216e78760ee1dbf3a4d2cf53e224112866" + integrity sha512-pW0No1RGHgzlpHJO1nsVrHKpOEIxkGg1xB+v0ZmdNH5OAeAwzAVrCnI2/6Mtx+Uys6iaylxa+D3g4j63IKKjSQ== -uuid@^3.0.0, uuid@^3.1.0, uuid@^3.2.1: +uuid@^3.1.0, uuid@^3.2.1: version "3.2.1" resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.2.1.tgz#12c528bb9d58d0b9265d9a2f6f0fe8be17ff1f14" @@ -2991,14 +3289,16 @@ which@^1.2.9: isexe "^2.0.0" wide-align@^1.1.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.2.tgz#571e0f1b0604636ebc0dfc21b0339bbe31341710" + version "1.1.3" + resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.3.tgz#ae074e6bdc0c14a431e804e624549c633b000457" + integrity sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA== dependencies: - string-width "^1.0.2" + string-width "^1.0.2 || 2" window-size@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.1.4.tgz#f8e1aa1ee5a53ec5bf151ffa09742a6ad7697876" + integrity sha1-+OGqHuWlPsW/FR/6CXQqatdpeHY= wordwrap@~1.0.0: version "1.0.0" @@ -3007,6 +3307,7 @@ wordwrap@~1.0.0: wrap-ansi@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-2.1.0.tgz#d8fc3d284dd05794fe84973caecdd1cf824fdd85" + integrity sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU= dependencies: string-width "^1.0.1" strip-ansi "^3.0.1" @@ -3014,6 +3315,7 @@ wrap-ansi@^2.0.0: wrappy@1: version "1.0.2" resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" + integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= write@^0.2.1: version "0.2.1" @@ -3036,14 +3338,21 @@ xtend@^4.0.0, xtend@^4.0.1, xtend@~4.0.0, xtend@~4.0.1: y18n@^3.2.0: version "3.2.1" resolved "https://registry.yarnpkg.com/y18n/-/y18n-3.2.1.tgz#6d15fba884c08679c0d77e88e7759e811e07fa41" + integrity sha1-bRX7qITAhnnA136I53WegR4H+kE= yallist@^2.1.2: version "2.1.2" resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" +yallist@^3.0.0, yallist@^3.0.3: + version "3.1.1" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" + integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== + yargs@^3.10.0: version "3.32.0" resolved "https://registry.yarnpkg.com/yargs/-/yargs-3.32.0.tgz#03088e9ebf9e756b69751611d2a5ef591482c995" + integrity sha1-AwiOnr+edWtpdRYR0qXvWRSCyZU= dependencies: camelcase "^2.0.1" cliui "^3.0.3" From 71d4e7faa2ae6e2696337dc3be39cf61efc2a422 Mon Sep 17 00:00:00 2001 From: umut0 Date: Fri, 20 Dec 2019 10:44:44 +0100 Subject: [PATCH 062/337] revert to node 8.15.1 because of grpc segmentation fault --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 338cb9cc..10f509f1 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM node:8-alpine as build +FROM node:8.15.1-alpine as build RUN apk --no-cache --virtual .build add build-base python git From 8b8d1e1709ee672c8d5e87b8e00fd2e6f2f6d07e Mon Sep 17 00:00:00 2001 From: umut0 Date: Fri, 20 Dec 2019 11:01:12 +0100 Subject: [PATCH 063/337] node 8.15.1 everywhere --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 10f509f1..ccbb0d9a 100644 --- a/Dockerfile +++ b/Dockerfile @@ -24,7 +24,7 @@ RUN yarn create-version-file \ && rm -rf .git .scripts # Final stage -FROM node:8-alpine +FROM node:8.15.1-alpine WORKDIR /usr/src/app COPY --from=build /usr/src/app /usr/src/app From a737d3fd866ed1c71b02fa0412d61e269f49bb6d Mon Sep 17 00:00:00 2001 From: Gerald Pape Date: Mon, 13 Jan 2020 16:01:14 +0100 Subject: [PATCH 064/337] Upgrade Dependencies (Node and some packages) (#182) * upgrade tests to node:10, upgrade bcrypt & grpc packages * add luftdaten test mock I found on my computer * use specific tag of mailer in tests * make mongo container tag in testing configurable * upgrade test dependencies & fix failing test in models * use node 10 base image for production container image * fix schemas for mongo >3.4 * upgrade more dependencies * fix testing instructions * safe upgrades * remove Object.values polyfill * upgrade mqtt dependency * upgrade dependency got * upgrade eslint devDepdendency * use mongo 3.4 in tests * use node 10 in travis * debug travis * use node 12 in tests * use node 12 in travis.yml * use node:12-alpine baseimage for container image * change readme to reflect recent changes * use newest @sensebox/sketch-templater package * upgrade deps & check with v12.14.1 node --- .scripts/run-tests.sh | 14 +- .travis.yml | 4 +- Dockerfile | 13 +- README.md | 7 +- package.json | 16 +- .../lib/controllers/measurementsController.js | 1 - .../lib/controllers/statisticsController.js | 4 +- packages/api/lib/helpers/apiUtils.js | 9 +- packages/api/lib/helpers/userParamHelpers.js | 2 +- .../api/lib/transformers/idwTransformer.js | 26 +- packages/api/package.json | 32 +- packages/models/package.json | 8 +- packages/models/src/box/box.js | 7 +- packages/models/src/box/integrations.js | 6 +- .../measurement/decoding/hackairHandler.js | 2 +- .../models/src/measurement/measurement.js | 4 +- packages/models/src/sensor/sensor.js | 2 +- packages/models/src/user/mails.js | 6 +- packages/models/src/user/user.js | 2 +- packages/models/test/tests/1-box.js | 3 +- .../luftdaten_example_data_NRZ-2018-121.js | 39 + tests/docker-compose.yml | 10 +- tests/tests-Dockerfile | 5 +- tests/tests/006-submit-measurements-test.js | 2 +- tests/tests/010-luftdaten-test.js | 29 +- tests/waitForHttp.js | 8 +- yarn.lock | 3147 ++++++++++------- 27 files changed, 1987 insertions(+), 1421 deletions(-) create mode 100644 tests/data/luftdaten_example_data_NRZ-2018-121.js diff --git a/.scripts/run-tests.sh b/.scripts/run-tests.sh index 2d383978..f97ad01b 100755 --- a/.scripts/run-tests.sh +++ b/.scripts/run-tests.sh @@ -21,18 +21,8 @@ show_logs=${show_logs:-} only_models_tests=${only_models_tests:-} git_branch=$(git rev-parse --abbrev-ref HEAD) -# Decide which mailer tag to use -# on branch master, use the latest tag -# on all other branches, use the development tag -if [[ $git_branch == "master" ]]; then - export SENSEBOX_MAILER_TAG="latest" -else - export SENSEBOX_MAILER_TAG="development" -fi -echo "Using sensebox/sensebox-mailer:${SENSEBOX_MAILER_TAG}" - function runComposeCommand() { - docker-compose -p osemapitest -f ./tests/docker-compose.yml "$@" + sudo docker-compose -p osemapitest -f ./tests/docker-compose.yml "$@" } function cleanup() { @@ -46,7 +36,7 @@ function cleanup() { if [[ -z $dont_clean_up ]]; then echo 'cleanup!' - runComposeCommand down -v + runComposeCommand down -v --remove-orphans fi } trap cleanup EXIT diff --git a/.travis.yml b/.travis.yml index dc1de4ee..a4096597 100644 --- a/.travis.yml +++ b/.travis.yml @@ -8,11 +8,11 @@ git: language: node_js node_js: - - "8" + - "12" install: true script: -- yarn test && yarn deploy-docs +- yarn test logs osem-api && yarn deploy-docs env: global: diff --git a/Dockerfile b/Dockerfile index ccbb0d9a..d3fba53d 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,6 @@ -FROM node:8.15.1-alpine as build +FROM node:12-alpine as build + +ENV NODE_ENV=production RUN apk --no-cache --virtual .build add build-base python git @@ -13,10 +15,7 @@ COPY yarn.lock /usr/src/app/ COPY packages/api/package.json /usr/src/app/packages/api/ COPY packages/models/package.json /usr/src/app/packages/models/ -# npm rebuild is required because the prebuilt binaries are not compatible with musl -# remove when https://github.com/kelektiv/node.bcrypt.js/issues/528 is resolved -RUN yarn install --pure-lockfile --production \ - && npm rebuild bcrypt --build-from-source +RUN yarn install --pure-lockfile --production COPY . /usr/src/app @@ -24,7 +23,9 @@ RUN yarn create-version-file \ && rm -rf .git .scripts # Final stage -FROM node:8.15.1-alpine +FROM node:12-alpine + +ENV NODE_ENV=production WORKDIR /usr/src/app COPY --from=build /usr/src/app /usr/src/app diff --git a/README.md b/README.md index de109e24..d5752cba 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ This repository contains the code of the openSenseMap API, which is the HTTP REST API used by [https://opensensemap.org](https://opensensemap.org) running at [https://api.opensensemap.org](https://api.opensensemap.org). To get more information about openSenseMap and senseBox visit the before mentioned links or have a look at this [video](https://www.youtube.com/watch?v=uTOWYa42_rI), read the [API docs](https://docs.opensensemap.org) or the [openSenseMap](https://osem.books.sensebox.de/) chapter in our [books](https://books.sensebox.de/). openSenseMap is part of the [senseBox] project. -Originally, this API has been built as part of the bachelor thesis of [@mpfeil](https://github.com/mpfeil) at the ifgi (Institute for Geoinformatics, WWU Münster) and is currently maintained by [@ubergesundheit](https://github.com/ubergesundheit). +Originally, this API has been built as part of the bachelor thesis of [@mpfeil](https://github.com/mpfeil) at the ifgi (Institute for Geoinformatics, WWU Münster). Developers and previous maintainer include [@umut0](https://github.com/umut0), [@felixerdy](https://github.com/felixerdy), [@noerw](https://github.com/noerw), [@chk1](https://github.com/chk1) and [@ubergesundheit](https://github.com/ubergesundheit). You'll find that the repostiory uses yarn workspaces to separate the [API](packages/api) and the [database models](packages/models) for reuse in other projects. While the API is not published on npm, the package [`@sensebox/opensensemap-api-models`](https://www.npmjs.com/package/@sensebox/opensensemap-api-models) is published from [packages/models](packages/models) folder. @@ -11,7 +11,7 @@ You'll find that the repostiory uses yarn workspaces to separate the [API](packa Configuration of both the api and the models is done using mechanisms provided by [lorenwest/node-config](https://github.com/lorenwest/node-config). You can find an annotated example configuration with all keys in [`config/config.example.json`](config/config.example.json). ## Development -- Have [Node.js] v8, [yarn](https://yarnpkg.com/), [Docker](https://docs.docker.com/engine/installation/) and [docker-compose](https://docs.docker.com/compose/install/) installed +- Have [Node.js] v12, [yarn](https://yarnpkg.com/), [Docker](https://docs.docker.com/engine/installation/) and [docker-compose](https://docs.docker.com/compose/install/) installed - Start your development database (`docker-compose up -d db`) - Check out `development` branch (`git checkout development`) - Run `yarn install` @@ -25,8 +25,7 @@ See also: [CONTRIBUTING](CONTRIBUTING.md) You can run the tests in containers using Docker and docker-compose. ``` # Run this the first time or every time you change dependencies in package.json -yarn install -yarn test build +yarn build-test-env yarn test ``` diff --git a/package.json b/package.json index 479d89a9..5adb1a0c 100644 --- a/package.json +++ b/package.json @@ -5,8 +5,8 @@ ], "scripts": { "start": "node packages/api/app.js", - "start-dev-db": "docker-compose up -d db", - "stop-dev-db": "docker-compose down db", + "start-dev-db": "sudo docker-compose up -d db", + "stop-dev-db": "sudo docker-compose down db", "build-test-env": "./.scripts/run-tests.sh build", "test": "./.scripts/run-tests.sh", "NOTpretest": "node tests/waitForHttp", @@ -17,15 +17,15 @@ }, "devDependencies": { "@sensebox/eslint-config-sensebox": "^1.1.0", - "@turf/invariant": "^4.6.0", + "@turf/invariant": "^6.1.2", "chai": "^4.1.2", "chakram": "^1.5.0", "cheerio": "^1.0.0-rc.2", - "csv-parse": "^1.2.1", - "eslint": "4.16.0", + "csv-parse": "^4.4.1", + "eslint": "6.8.0", "mimelib": "^0.3.1", - "mocha": "^5.0.0", - "mqtt": "^2.15.1", + "mocha": "^6.1.4", + "mqtt": "^3.0.0", "randomgeojson": "^1.0.0" } -} \ No newline at end of file +} diff --git a/packages/api/lib/controllers/measurementsController.js b/packages/api/lib/controllers/measurementsController.js index c3a68f89..0aa1a04b 100644 --- a/packages/api/lib/controllers/measurementsController.js +++ b/packages/api/lib/controllers/measurementsController.js @@ -365,4 +365,3 @@ module.exports = { getLatestMeasurements ] }; - diff --git a/packages/api/lib/controllers/statisticsController.js b/packages/api/lib/controllers/statisticsController.js index 1eb62c37..8aa74a36 100644 --- a/packages/api/lib/controllers/statisticsController.js +++ b/packages/api/lib/controllers/statisticsController.js @@ -5,7 +5,7 @@ const { Box, Measurement } = require('@sensebox/opensensemap-api-models'), idwTransformer = require('../transformers/idwTransformer'), { addCache, createDownloadFilename, computeTimestampTruncationLength, csvStringifier } = require('../helpers/apiUtils'), { retrieveParameters, validateFromToTimeParams } = require('../helpers/userParamHelpers'), - area = require('@turf/area'), + area = require('@turf/area').default, millify = require('millify'), handleError = require('../helpers/errorHandler'), ms = require('ms'), @@ -38,7 +38,7 @@ const getStatistics = async function getStatistics (req, res, next) { }) ]); if (human === 'true') { - results = results.map(r => millify(r).toString()); + results = results.map(r => millify.default(r).toString()); } res.send(200, results); diff --git a/packages/api/lib/helpers/apiUtils.js b/packages/api/lib/helpers/apiUtils.js index d855dbd3..f96257b3 100644 --- a/packages/api/lib/helpers/apiUtils.js +++ b/packages/api/lib/helpers/apiUtils.js @@ -119,10 +119,9 @@ if (config.get('honeybadger_apikey')) { const postToSlack = function postToSlack (text) { if (config.get('slack_url')) { text = `[${hostname}]: ${text}`; - got(config.get('slack_url'), { - json: true, - body: { text }, - retries: 0 + got.post(config.get('slack_url'), { + json: { text }, + retry: 0 }) // swallow errors, we don't care .catch(() => { }); @@ -185,7 +184,7 @@ const computeTimestampTruncationLength = function computeTimestampTruncationLeng const csvStringifier = function csvStringifier (columns, delimiter) { return csvstringify({ - columns, delimiter, header: 1, formatters: { + columns, delimiter, header: 1, cast: { date: d => d.toISOString() } }); diff --git a/packages/api/lib/helpers/userParamHelpers.js b/packages/api/lib/helpers/userParamHelpers.js index 000b0b97..22f011d7 100644 --- a/packages/api/lib/helpers/userParamHelpers.js +++ b/packages/api/lib/helpers/userParamHelpers.js @@ -5,7 +5,7 @@ const { BadRequestError, UnprocessableEntityError, InvalidArgumentError, Forbidd moment = require('moment'), isemail = require('isemail'), handleModelError = require('./errorHandler'), - area = require('@turf/area'), + area = require('@turf/area').default, config = require('config'); const decodeBase64Image = function (dataString) { diff --git a/packages/api/lib/transformers/idwTransformer.js b/packages/api/lib/transformers/idwTransformer.js index 79c8d67a..a720f194 100644 --- a/packages/api/lib/transformers/idwTransformer.js +++ b/packages/api/lib/transformers/idwTransformer.js @@ -3,16 +3,16 @@ const Transform = require('stream').Transform, inherits = require('util').inherits, point = require('@turf/helpers').point, - distance = require('@turf/distance'), + distance = require('@turf/distance').default, /* eslint-disable global-require */ grids = { - 'hex': require('@turf/hex-grid'), - 'square': require('@turf/square-grid'), - 'triangle': require('@turf/triangle-grid'), + 'hex': require('@turf/hex-grid').default, + 'square': require('@turf/square-grid').default, + 'triangle': require('@turf/triangle-grid').default, }, /* eslint-enable global-require */ - centroid = require('@turf/centroid'), - bbox = require('@turf/bbox'); + centroid = require('@turf/centroid').default, + bbox = require('@turf/bbox').default; const idwTransformer = function (idwTransformerOptions, streamOptions) { if (!(this instanceof idwTransformer)) { @@ -73,20 +73,6 @@ idwTransformer.prototype.calculateNextTimeStepLimit = function calculateNextTime this._currTimeStepStart.add(this._diffTimeSteps); }; -/** - * Object.values polyfill REMOVE ME when we switch to a higher node version - */ - -if (!Object.values) { - const reduce = Function.bind.call(Function.call, Array.prototype.reduce); - const isEnumerable = Function.bind.call(Function.call, Object.prototype.propertyIsEnumerable); - const concat = Function.bind.call(Function.call, Array.prototype.concat); - const keys = Reflect.ownKeys; - Object.values = function values (O) { - return reduce(keys(O), (v, k) => concat(v, typeof k === 'string' && isEnumerable(O, k) ? [O[k]] : []), []); - }; -} - idwTransformer.prototype.resetAverageAndReturnControlPoints = function resetAverageAndReturnControlPoints () { const controlPoints = Object.values(this._averages).map(a => a.geom); diff --git a/packages/api/package.json b/packages/api/package.json index 88723ee3..ebc6492c 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -11,31 +11,31 @@ ], "dependencies": { "@sensebox/opensensemap-api-models": "^0.0.13", - "@turf/area": "^4.6.0", - "@turf/bbox": "^4.6.0", - "@turf/centroid": "^4.6.1", - "@turf/distance": "^4.6.0", - "@turf/helpers": "^4.6.0", - "@turf/hex-grid": "^4.6.1", - "@turf/square-grid": "^4.6.0", - "@turf/triangle-grid": "^4.6.0", - "apicache": "^0.10.0", + "@turf/area": "^6.0.1", + "@turf/bbox": "^6.0.1", + "@turf/centroid": "^6.0.2", + "@turf/distance": "^6.0.1", + "@turf/helpers": "^6.1.4", + "@turf/hex-grid": "^6.0.2", + "@turf/square-grid": "^6.0.2", + "@turf/triangle-grid": "^6.0.1", + "apicache": "^1.4.0", "bunyan": "^1.8.12", - "config": "^1.29.2", - "csv-stringify": "^1.0.4", - "dashify": "^1.0.0", - "got": "^8.0.3", + "config": "^3.1.0", + "csv-stringify": "^5.3.0", + "dashify": "^2.0.0", + "got": "^10.2.1", "honeybadger": "^1.2.1", "isemail": "^3.0.0", "jsonwebtoken": "^8.1.0", - "millify": "^2.0.1", + "millify": "^3.0.2", "moment": "^2.18.1", "ms": "^2.1.1", "restify": "^5.2.0", "restify-errors": "^5.0.0", - "simple-statistics": "^5.2.1", + "simple-statistics": "^7.0.2", "stringify-stream": "^1.0.5", "uuid": "^3.2.1" }, "private": true -} \ No newline at end of file +} diff --git a/packages/models/package.json b/packages/models/package.json index d17b756c..77c8e630 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -7,11 +7,11 @@ "dependencies": { "@sensebox/osem-protos": "^1.1.0", "@sensebox/sketch-templater": "^1.5.1", - "bcrypt": "^1.0.2", + "bcrypt": "^3.0.5", "bunyan": "^1.8.12", - "config": "^1.29.2", - "got": "^8.0.2", - "grpc": "^1.9.0", + "config": "^3.1.0", + "got": "^10.2.1", + "grpc": "^1.19.0", "isemail": "^3.0.0", "jsonpath": "^1.0.0", "lodash.isequal": "^4.5.0", diff --git a/packages/models/src/box/box.js b/packages/models/src/box/box.js index 33858624..7dcb9e9f 100644 --- a/packages/models/src/box/box.js +++ b/packages/models/src/box/box.js @@ -39,7 +39,8 @@ const locationSchema = new Schema({ type: Date, } }, { - _id: false + _id: false, + usePushEach: true }); //senseBox schema @@ -126,7 +127,7 @@ const boxSchema = new Schema({ type: String, required: false } -}); +}, { usePushEach: true }); boxSchema.plugin(timestamp); const BOX_PROPS_FOR_POPULATION = { @@ -299,7 +300,7 @@ boxSchema.statics.findBoxById = function findBoxById (id, { lean = true, populat let findPromise = this.findById(id, projection); - if (fullBox === true || onlyLastMeasurements === true || projection.hasOwnProperty('sensors')) { + if (fullBox === true || onlyLastMeasurements === true || Object.prototype.hasOwnProperty.call(projection, 'sensors')) { findPromise = findPromise .populate(BOX_SUB_PROPS_FOR_POPULATION); } diff --git a/packages/models/src/box/integrations.js b/packages/models/src/box/integrations.js index f174327b..dd62c337 100644 --- a/packages/models/src/box/integrations.js +++ b/packages/models/src/box/integrations.js @@ -12,7 +12,7 @@ const mqttSchema = new mongoose.Schema({ messageFormat: { type: String, trim: true, enum: ['json', 'csv', 'application/json', 'text/csv', 'debug_plain', ''] }, decodeOptions: { type: String, trim: true, validate: isJSONParseableValidation }, connectionOptions: { type: String, trim: true, validate: isJSONParseableValidation } -}, { _id: false }); +}, { _id: false, usePushEach: true }); const ttnSchema = new mongoose.Schema({ dev_id: { type: String, trim: true, required: true }, @@ -20,7 +20,7 @@ const ttnSchema = new mongoose.Schema({ port: { type: Number, min: 0 }, profile: { type: String, trim: true, enum: ['json', 'debug', 'sensebox/home', 'lora-serialization'], required: true }, decodeOptions: [{}] -}, { _id: false }); +}, { _id: false, usePushEach: true }); const integrationSchema = new mongoose.Schema({ mqtt: { @@ -57,7 +57,7 @@ const integrationSchema = new mongoose.Schema({ msg: 'this profile requires an array \'decodeOptions\'' }] } -}, { _id: false }); +}, { _id: false, usePushEach: true }); const addIntegrationsToSchema = function addIntegrationsToSchema (schema) { diff --git a/packages/models/src/measurement/decoding/hackairHandler.js b/packages/models/src/measurement/decoding/hackairHandler.js index c1a18e12..1d939c9a 100644 --- a/packages/models/src/measurement/decoding/hackairHandler.js +++ b/packages/models/src/measurement/decoding/hackairHandler.js @@ -66,7 +66,7 @@ const transformHackairJson = function transformHackairJson (json, sensors) { const outArray = []; for (const rd in json.reading) { - if (json.reading.hasOwnProperty(rd)) { + if (Object.prototype.hasOwnProperty.call(json.reading, rd)) { const value = json.reading[rd]; const sensor_id = findSensorId(sensors, rd); if (sensor_id) { diff --git a/packages/models/src/measurement/measurement.js b/packages/models/src/measurement/measurement.js index ecaefa37..bf8d7e04 100644 --- a/packages/models/src/measurement/measurement.js +++ b/packages/models/src/measurement/measurement.js @@ -35,7 +35,7 @@ const measurementSchema = new mongoose.Schema({ }, '{PATH} has not length 2 or 3'] } } -}); +}, { usePushEach: true }); measurementSchema.index({ sensor_id: 1, createdAt: -1 }); @@ -99,7 +99,7 @@ measurementSchema.statics.getMeasurementsStream = function getMeasurementsStream return this .find(qry, { 'createdAt': 1, 'value': 1, 'location': 1, '_id': 0 }) - .cursor({ lean: true, limit: queryLimit }); + .cursor({ lean: true, limit: queryLimit, sort: { createdAt: -1 } }); }; const measurementModel = mongoose.model('Measurement', measurementSchema); diff --git a/packages/models/src/sensor/sensor.js b/packages/models/src/sensor/sensor.js index a3979458..c265f5f1 100644 --- a/packages/models/src/sensor/sensor.js +++ b/packages/models/src/sensor/sensor.js @@ -30,7 +30,7 @@ const sensorSchema = new mongoose.Schema({ type: mongoose.Schema.Types.ObjectId, ref: 'Measurement' } -}); +}, { usePushEach: true }); sensorSchema.methods.equals = function equals ({ unit, sensorType, title, _id }) { if (_id) { diff --git a/packages/models/src/user/mails.js b/packages/models/src/user/mails.js index fe77d49f..90e83b0d 100644 --- a/packages/models/src/user/mails.js +++ b/packages/models/src/user/mails.js @@ -111,12 +111,11 @@ if (config.get('mailer.url')) { }; const requestMailer = (payload) => { - return got(config.get('mailer.url'), { + return got.post(config.get('mailer.url'), { cert: config.get('cert'), key: config.get('key'), ca: config.get('ca_cert'), - json: true, - body: payload, + json: payload, ecdhCurve: 'auto' }) .then((response) => { @@ -157,4 +156,3 @@ if (config.get('mailer.url')) { } }; } - diff --git a/packages/models/src/user/user.js b/packages/models/src/user/user.js index 52f0749d..aa4b15c6 100644 --- a/packages/models/src/user/user.js +++ b/packages/models/src/user/user.js @@ -94,7 +94,7 @@ const userSchema = new mongoose.Schema({ emailIsConfirmed: { type: Boolean, default: false, required: true }, refreshToken: { type: String }, refreshTokenExpires: { type: Date } -}); +}, { usePushEach: true }); userSchema.plugin(timestamp); const toJSONProps = ['name', 'email', 'role', 'language', 'boxes', 'emailIsConfirmed'], diff --git a/packages/models/test/tests/1-box.js b/packages/models/test/tests/1-box.js index eae6b616..2fed6d90 100644 --- a/packages/models/test/tests/1-box.js +++ b/packages/models/test/tests/1-box.js @@ -321,9 +321,8 @@ describe('Box model', function () { return Box.findBoxesMinimal().then(function (queryCursor) { queryCursor.on('data', (box) => { - expect(Object.keys(box)).members([ + expect(Object.keys(box)).to.include.members([ '_id', - 'lastMeasurementAt', 'currentLocation', 'exposure', 'name', diff --git a/tests/data/luftdaten_example_data_NRZ-2018-121.js b/tests/data/luftdaten_example_data_NRZ-2018-121.js new file mode 100644 index 00000000..b52b60b5 --- /dev/null +++ b/tests/data/luftdaten_example_data_NRZ-2018-121.js @@ -0,0 +1,39 @@ +'use strict'; + +module.exports = { + software_version: 'NRZ-2018-121C', + sensordatavalues: [ + { + value_type: 'SDS_P1', + value: '1.87' + }, + { + value_type: 'SDS_P2', + value: '1.05' + }, + { + value_type: 'BMP_pressure', + value: '100659.00' + }, + { + value_type: 'BMP_temperature', + value: '26.80' + }, + { + value_type: 'samples', + value: '924605' + }, + { + value_type: 'min_micro', + value: '147' + }, + { + value_type: 'max_micro', + value: '1849213' + }, + { + value_type: 'signal', + value: '-52' + } + ] +}; diff --git a/tests/docker-compose.yml b/tests/docker-compose.yml index a4bcf242..895088c3 100644 --- a/tests/docker-compose.yml +++ b/tests/docker-compose.yml @@ -1,4 +1,4 @@ -version: "2" +version: "2.1" volumes: userimages: services: @@ -48,7 +48,7 @@ services: - db mailer: - image: sensebox/sensebox-mailer:${SENSEBOX_MAILER_TAG} + image: sensebox/sensebox-mailer:${SENSEBOX_MAILER_TAG:-v0.0.1} environment: SENSEBOX_MAILER_SERVER_CERT: |- -----BEGIN CERTIFICATE----- @@ -178,7 +178,7 @@ services: - "8025:8025" mqtt-osem-integration: - image: sensebox/mqtt-osem-integration:v0.0.5 + image: sensebox/mqtt-osem-integration:v0.0.7 depends_on: - db environment: @@ -199,7 +199,7 @@ services: } mosquitto: - image: eclipse-mosquitto:1.4.12 + image: eclipse-mosquitto:1.4.12 db: - image: mongo:3.2 + image: mongo:${MONGO_TAG:-3.4} diff --git a/tests/tests-Dockerfile b/tests/tests-Dockerfile index 23720879..bf6df34e 100644 --- a/tests/tests-Dockerfile +++ b/tests/tests-Dockerfile @@ -1,4 +1,4 @@ -FROM node:8-alpine +FROM node:12-alpine # YARN_PRODUCTION=false is a workaround for https://github.com/yarnpkg/yarn/issues/4557 ENV NODE_ENV=production \ @@ -11,11 +11,8 @@ WORKDIR /usr/src/app # COPY in dev versions COPY . /usr/src/app -# npm rebuild is required because the prebuilt binaries are not compatible with musl -# remove when https://github.com/kelektiv/node.bcrypt.js/issues/528 is resolved RUN apk --no-cache --virtual .build add build-base python git \ && yarn install --pure-lockfile --production=false \ - && npm rebuild bcrypt --build-from-source \ && apk del .build COPY . /usr/src/app diff --git a/tests/tests/006-submit-measurements-test.js b/tests/tests/006-submit-measurements-test.js index 35b2023a..4d6c6e5d 100644 --- a/tests/tests/006-submit-measurements-test.js +++ b/tests/tests/006-submit-measurements-test.js @@ -309,7 +309,7 @@ describe('submitting measurements', function () { expect(response).to.have.status(200); expect(response).to.have.header('content-type', 'application/json; charset=utf-8'); - payload.sort((a, b) => { return new Date(a.createdAt) < new Date(b.createdAt); }); + payload.sort((a, b) => { return new Date(b.createdAt).toISOString().localeCompare(new Date(a.createdAt).toISOString()); }); expect(response.body).lengthOf(payload.length); for (let i = 0; i < payload.length; i++) { diff --git a/tests/tests/010-luftdaten-test.js b/tests/tests/010-luftdaten-test.js index 45e81e1c..1bde225f 100644 --- a/tests/tests/010-luftdaten-test.js +++ b/tests/tests/010-luftdaten-test.js @@ -8,7 +8,8 @@ const chakram = require('chakram'), const BASE_URL = process.env.OSEM_TEST_BASE_URL, valid_sensebox = require('../data/valid_sensebox'), - luftdaten_example_data = require('../data/luftdaten_example_data'); + luftdaten_example_data = require('../data/luftdaten_example_data'), + luftdaten_example_data_NRZ_2018_121 = require('../data/luftdaten_example_data_NRZ-2018-121'); describe('openSenseMap API luftdaten.info devices', function () { let jwt, dht11_id, dht22_id, bmp180_id, bme280_id, custom_id; @@ -220,6 +221,32 @@ describe('openSenseMap API luftdaten.info devices', function () { }); }); + it('should accept measurements from luftdaten.info devices (NRZ_2018_121)', function () { + let submitTime; + + return chakram.post(`${BASE_URL}/boxes/${dht11_id}/data?luftdaten=true`, luftdaten_example_data_NRZ_2018_121) + .then(function (response) { + submitTime = moment.utc(response.response.headers.date, 'ddd, DD MMM YYYY HH:mm:ss GMT'); + expect(response).to.have.status(201); + + return chakram.get(`${BASE_URL}/boxes/${dht11_id}`); + }) + .then(function (response) { + expect(response).to.have.json('sensors', function (sensors) { + sensors.forEach(function (sensor) { + if (['PM10', 'PM2.5'].includes(sensor.title)) { + expect(sensor.lastMeasurement).not.to.be.null; + expect(sensor.lastMeasurement.createdAt).to.exist; + const createdAt = moment.utc(sensor.lastMeasurement.createdAt); + expect(submitTime.diff(createdAt, 'seconds')).to.be.below(10); + } + }); + }); + + return chakram.wait(); + }); + }); + it('should accept measurements from luftdaten.info devices (DHT11/22 test)', function () { let submitTime; const testdata = { sensordatavalues: [ { value_type: 'temperature', value: '5.4' }, { value_type: 'humidity', value: '5.4' }] }; diff --git a/tests/waitForHttp.js b/tests/waitForHttp.js index a1769ff0..0f929c0e 100644 --- a/tests/waitForHttp.js +++ b/tests/waitForHttp.js @@ -9,10 +9,12 @@ if (!process.env.OSEM_TEST_BASE_URL) { const connectWithRetry = function () { return got(`${process.env.OSEM_TEST_BASE_URL}/boxes`, { - retries: () => { - process.stdout.write('.'); + retry: { + limit: () => { + process.stdout.write('.'); - return 500; + return 500; + } } }); }; diff --git a/yarn.lock b/yarn.lock index 166fa109..5b61a8df 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2,19 +2,31 @@ # yarn lockfile v1 -"@mapbox/geojson-area@^0.2.2": - version "0.2.2" - resolved "https://registry.yarnpkg.com/@mapbox/geojson-area/-/geojson-area-0.2.2.tgz#18d7814aa36bf23fbbcc379f8e26a22927debf10" +"@babel/code-frame@^7.0.0": + version "7.5.5" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.5.5.tgz#bc0782f6d69f7b7d49531219699b988f669a8f9d" + integrity sha512-27d4lZoomVyo51VegxI20xZPuSHusqbQag/ztrBC7wegWoQ1nLREPVSKSW8byhTlzTKyNE4ifaTA6lCp7JjpFw== + dependencies: + "@babel/highlight" "^7.0.0" + +"@babel/highlight@^7.0.0": + version "7.5.0" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.5.0.tgz#56d11312bd9248fa619591d02472be6e8cb32540" + integrity sha512-7dV4eu9gBxoM0dAnj/BCFDW9LFU0zvTrkq0ugM7pnHEgguOEeOz1so2ZghEdzviYzQEED0r4EAgpsBChKy1TRQ== dependencies: - wgs84 "0.0.0" + chalk "^2.0.0" + esutils "^2.0.2" + js-tokens "^4.0.0" "@sensebox/eslint-config-sensebox@^1.1.0": version "1.1.0" resolved "https://registry.yarnpkg.com/@sensebox/eslint-config-sensebox/-/eslint-config-sensebox-1.1.0.tgz#2fec4ec7945f34e7296c619fabd589d722ecd984" + integrity sha512-MhwFHGmt7X/Wb/aISS/pJvBuO8HqpkVfB8GsUKOosWEfvug4cTN7N/pXBOxINukG34LcKDLp1xdyxuEo64CMSw== "@sensebox/osem-protos@^1.1.0": version "1.1.0" resolved "https://registry.yarnpkg.com/@sensebox/osem-protos/-/osem-protos-1.1.0.tgz#a7de8bc6be867953f1309181a012063c23299e79" + integrity sha512-H+nUVcWlT0dvIqfJnYHuX9JBcCkP1ZKGE5YTRNWPbAEdZ11h+srpQsmeI58wK5hJcdukaZAjc4Dy96IeGM77aA== "@sensebox/sketch-templater@^1.5.1": version "1.5.1" @@ -24,70 +36,163 @@ config "^1.29.2" dedent "^0.7.0" -"@sindresorhus/is@^0.7.0": - version "0.7.0" - resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-0.7.0.tgz#9a06f4f137ee84d7df0460c1fdb1135ffa6c50fd" +"@sindresorhus/is@^1.0.0": + version "1.2.0" + resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-1.2.0.tgz#63ce3638cb85231f3704164c90a18ef816da3fb7" + integrity sha512-mwhXGkRV5dlvQc4EgPDxDxO6WuMBVymGFd1CA+2Y+z5dG9MNspoQ+AWjl/Ld1MnpCL8AKbosZlDVohqcIwuWsw== -"@turf/area@^4.6.0": - version "4.7.3" - resolved "https://registry.yarnpkg.com/@turf/area/-/area-4.7.3.tgz#5cc45b5a524e98e1c171e7190709c669ca699305" +"@szmarczak/http-timer@^4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@szmarczak/http-timer/-/http-timer-4.0.0.tgz#309789ccb7842ff1e41848cf43da587f78068836" + integrity sha512-3yoXv8OtGr/r3R5gaWWNQ3VUoQ5G3Gmo8DXX95V14ZVvE2b7Pj6Ide9uIDON8ym4D/ItyfL9ejohYUPqOyvRXw== dependencies: - "@mapbox/geojson-area" "^0.2.2" - "@turf/meta" "^4.7.3" + defer-to-connect "^1.1.1" -"@turf/bbox@^4.6.0", "@turf/bbox@^4.7.3": - version "4.7.3" - resolved "https://registry.yarnpkg.com/@turf/bbox/-/bbox-4.7.3.tgz#e3ad4f10a7e9b41b522880d33083198199059067" +"@turf/area@^6.0.1": + version "6.0.1" + resolved "https://registry.yarnpkg.com/@turf/area/-/area-6.0.1.tgz#50ed63c70ef2bdb72952384f1594319d94f3b051" + integrity sha512-Zv+3N1ep9P5JvR0YOYagLANyapGWQBh8atdeR3bKpWcigVXFsEKNUw03U/5xnh+cKzm7yozHD6MFJkqQv55y0g== dependencies: - "@turf/meta" "^4.7.3" + "@turf/helpers" "6.x" + "@turf/meta" "6.x" -"@turf/centroid@^4.6.1": - version "4.7.3" - resolved "https://registry.yarnpkg.com/@turf/centroid/-/centroid-4.7.3.tgz#205a7675719b0c8e175bb7565c5d6fe267d88175" +"@turf/bbox@*", "@turf/bbox@^6.0.1": + version "6.0.1" + resolved "https://registry.yarnpkg.com/@turf/bbox/-/bbox-6.0.1.tgz#b966075771475940ee1c16be2a12cf389e6e923a" + integrity sha512-EGgaRLettBG25Iyx7VyUINsPpVj1x3nFQFiGS3ER8KCI1MximzNLsam3eXRabqQDjyAKyAE1bJ4EZEpGvspQxw== dependencies: - "@turf/helpers" "^4.7.3" - "@turf/meta" "^4.7.3" + "@turf/helpers" "6.x" + "@turf/meta" "6.x" -"@turf/distance@^4.6.0", "@turf/distance@^4.7.3": - version "4.7.3" - resolved "https://registry.yarnpkg.com/@turf/distance/-/distance-4.7.3.tgz#b5ab48a09a642706d65c39b919433d5d2cc571b1" +"@turf/boolean-disjoint@6.x": + version "6.0.2" + resolved "https://registry.yarnpkg.com/@turf/boolean-disjoint/-/boolean-disjoint-6.0.2.tgz#5d6d0f4b4b8d5fe03004d74d978044c7529b294f" + integrity sha512-xgdqPOXhvCwetoybkYZwBLKro1XxqZgS+xk6Ygb2Jt6btR5P/t0lJ5n85fN0YQuJlR8hEVvCGTYZ0IRTyIEvsQ== dependencies: - "@turf/helpers" "^4.7.3" - "@turf/invariant" "^4.7.3" + "@turf/boolean-point-in-polygon" "6.x" + "@turf/helpers" "6.x" + "@turf/line-intersect" "6.x" + "@turf/meta" "6.x" + "@turf/polygon-to-line" "6.x" -"@turf/helpers@^4.6.0", "@turf/helpers@^4.7.3": - version "4.7.3" - resolved "https://registry.yarnpkg.com/@turf/helpers/-/helpers-4.7.3.tgz#bc312ac43cab3c532a483151c4c382c5649429e9" +"@turf/boolean-intersects@6.x": + version "6.0.2" + resolved "https://registry.yarnpkg.com/@turf/boolean-intersects/-/boolean-intersects-6.0.2.tgz#101afd5b00255c15b0e835e1b9a90fc91466887e" + integrity sha512-GRC+N2QOP533MnMmauVDj+JNyZG3XwAdY1jtZuY3icxvJ8/47ZWb013Q90heoyGxV92kV5SW0baOooPzSpvT1g== + dependencies: + "@turf/boolean-disjoint" "6.x" + "@turf/helpers" "6.x" + "@turf/meta" "6.x" + +"@turf/boolean-point-in-polygon@6.x": + version "6.0.1" + resolved "https://registry.yarnpkg.com/@turf/boolean-point-in-polygon/-/boolean-point-in-polygon-6.0.1.tgz#5836677afd77d2ee391af0056a0c29b660edfa32" + integrity sha512-FKLOZ124vkJhjzNSDcqpwp2NvfnsbYoUOt5iAE7uskt4svix5hcjIEgX9sELFTJpbLGsD1mUbKdfns8tZxcMNg== + dependencies: + "@turf/helpers" "6.x" + "@turf/invariant" "6.x" -"@turf/hex-grid@^4.6.1": - version "4.7.3" - resolved "https://registry.yarnpkg.com/@turf/hex-grid/-/hex-grid-4.7.3.tgz#6eacc4d153cf430777deae7a48698cfb27ae7ec6" +"@turf/centroid@^6.0.2": + version "6.0.2" + resolved "https://registry.yarnpkg.com/@turf/centroid/-/centroid-6.0.2.tgz#c4eb16b4bc60b692f74e1809cf9a7c4a4f5ba1cc" + integrity sha512-auyDauOtC4eddH7GC3CHFTDu2PKhpSeKCRhwhHhXtJqn2dWCJQNIoCeJRmfXRIbzCWhWvgvQafvvhq8HNvmvWw== + dependencies: + "@turf/helpers" "6.x" + "@turf/meta" "6.x" + +"@turf/distance@6.x", "@turf/distance@^6.0.1": + version "6.0.1" + resolved "https://registry.yarnpkg.com/@turf/distance/-/distance-6.0.1.tgz#0761f28784286e7865a427c4e7e3593569c2dea8" + integrity sha512-q7t7rWIWfkg7MP1Vt4uLjSEhe5rPfCO2JjpKmk7JC+QZKEQkuvHEqy3ejW1iC7Kw5ZcZNR3qdMGGz+6HnVwqvg== dependencies: - "@turf/distance" "^4.7.3" - "@turf/helpers" "^4.7.3" + "@turf/helpers" "6.x" + "@turf/invariant" "6.x" -"@turf/invariant@^4.6.0", "@turf/invariant@^4.7.3": - version "4.7.3" - resolved "https://registry.yarnpkg.com/@turf/invariant/-/invariant-4.7.3.tgz#538f367d23c113fc849d70c9a524b8563874601d" +"@turf/helpers@6.x", "@turf/helpers@^6.1.4": + version "6.1.4" + resolved "https://registry.yarnpkg.com/@turf/helpers/-/helpers-6.1.4.tgz#d6fd7ebe6782dd9c87dca5559bda5c48ae4c3836" + integrity sha512-vJvrdOZy1ngC7r3MDA7zIGSoIgyrkWcGnNIEaqn/APmw+bVLF2gAW7HIsdTxd12s5wQMqEpqIQrmrbRRZ0xC7g== -"@turf/meta@^4.7.3": - version "4.7.4" - resolved "https://registry.yarnpkg.com/@turf/meta/-/meta-4.7.4.tgz#6de2f1e9890b8f64b669e4b47c09b20893063977" +"@turf/hex-grid@^6.0.2": + version "6.0.2" + resolved "https://registry.yarnpkg.com/@turf/hex-grid/-/hex-grid-6.0.2.tgz#d08ffcfe7aeb5fc48974f650075bab726121a268" + integrity sha512-kG09up73sGziBu4hU/0nhGRdN3Rue8k+aa9UwBfBXTbbgndEhEPpJJ1cdShLhexzrLUFu3Ee0JiXjYmlO0q7LA== + dependencies: + "@turf/distance" "6.x" + "@turf/helpers" "6.x" + "@turf/intersect" "6.x" + "@turf/invariant" "6.x" + +"@turf/intersect@6.x": + version "6.1.3" + resolved "https://registry.yarnpkg.com/@turf/intersect/-/intersect-6.1.3.tgz#c6574a2f00a38df6f81fc08d8103ad5295b7b6bc" + integrity sha512-SeAJG/zPRRTeyK2OifkPoyLq60q8tv8prpPIH3R8ZhyF4MdLOnMv5MURaQ6kQd+3UTDrL+pYm6rqbPvln1zqIw== + dependencies: + "@turf/helpers" "6.x" + "@turf/invariant" "6.x" + martinez-polygon-clipping "^0.4.3" + +"@turf/invariant@6.x", "@turf/invariant@^6.1.2": + version "6.1.2" + resolved "https://registry.yarnpkg.com/@turf/invariant/-/invariant-6.1.2.tgz#6013ed6219f9ac2edada9b31e1dfa5918eb0a2f7" + integrity sha512-WU08Ph8j0J2jVGlQCKChXoCtI50BB3yEH21V++V0T4cR1T27HKCxkehV2sYMwTierfMBgjwSwDIsxnR4/2mWXg== + dependencies: + "@turf/helpers" "6.x" + +"@turf/line-intersect@6.x": + version "6.0.2" + resolved "https://registry.yarnpkg.com/@turf/line-intersect/-/line-intersect-6.0.2.tgz#b45b7a4e7e08c39a0e4e91099580ed377ef7335f" + integrity sha512-pfL/lBu7ukBPdTjvSCmcNUzZ83V4R95htwqs5NqU8zeS4R+5KTwacbrOYKztjpmHBwUmPEIIpSbqkUoD0Fp7kg== + dependencies: + "@turf/helpers" "6.x" + "@turf/invariant" "6.x" + "@turf/line-segment" "6.x" + "@turf/meta" "6.x" + geojson-rbush "3.x" + +"@turf/line-segment@6.x": + version "6.0.2" + resolved "https://registry.yarnpkg.com/@turf/line-segment/-/line-segment-6.0.2.tgz#e280bcde70d28b694028ec1623dc406c928e59b6" + integrity sha512-8AkzDHoNw3X68y115josal+lvdAi4b2P1K0YNTKGyLRBaUhPXVSuMBpMd53FRF1hYEb9UJgMbugF9ZE7m5L6zg== + dependencies: + "@turf/helpers" "6.x" + "@turf/invariant" "6.x" + "@turf/meta" "6.x" + +"@turf/meta@6.x": + version "6.0.2" + resolved "https://registry.yarnpkg.com/@turf/meta/-/meta-6.0.2.tgz#eb92951126d24a613ac1b7b99d733fcc20fd30cf" + integrity sha512-VA7HJkx7qF1l3+GNGkDVn2oXy4+QoLP6LktXAaZKjuT1JI0YESat7quUkbCMy4zP9lAUuvS4YMslLyTtr919FA== + dependencies: + "@turf/helpers" "6.x" + +"@turf/polygon-to-line@6.x": + version "6.0.3" + resolved "https://registry.yarnpkg.com/@turf/polygon-to-line/-/polygon-to-line-6.0.3.tgz#a7c5416f61651d5d25ff51ee006522725cb1adf1" + integrity sha512-cJUy7VYLAhgnTBOtYFjNzh5bSlAS/qM8gUHXRGrIxI22RUJk4FXs/X2MEJ4Ki2flCiSeOjRIUEawEslNe7w7RA== + dependencies: + "@turf/helpers" "6.x" + "@turf/invariant" "6.x" -"@turf/square-grid@^4.6.0": - version "4.7.3" - resolved "https://registry.yarnpkg.com/@turf/square-grid/-/square-grid-4.7.3.tgz#b3e896b132a34fcc77ed3907efd9a4444db62259" +"@turf/square-grid@^6.0.2": + version "6.0.2" + resolved "https://registry.yarnpkg.com/@turf/square-grid/-/square-grid-6.0.2.tgz#c1445d59a5fb3b2e091e9a7fa3a0b01e2a727342" + integrity sha512-ju0bHbUC6MQcjap28S+3YLF1gQARakQVoOjYG/Qmvxf2T8K1a5ZKv387iTztT7zeoh5//JvWy8VbFoT3OZuubQ== dependencies: - "@turf/bbox" "^4.7.3" - "@turf/distance" "^4.7.3" - "@turf/helpers" "^4.7.3" + "@turf/boolean-intersects" "6.x" + "@turf/distance" "6.x" + "@turf/helpers" "6.x" + "@turf/invariant" "6.x" -"@turf/triangle-grid@^4.6.0": - version "4.7.3" - resolved "https://registry.yarnpkg.com/@turf/triangle-grid/-/triangle-grid-4.7.3.tgz#ced61311c51c0d1483ec038fedc9bbd0017e8900" +"@turf/triangle-grid@^6.0.1": + version "6.0.1" + resolved "https://registry.yarnpkg.com/@turf/triangle-grid/-/triangle-grid-6.0.1.tgz#270c32b3ddbe8ad0ef6a5d3377ca8f59abce86bc" + integrity sha512-4vr/qV7mtF/TpluCHK1F7TTmI5KlqaRNkcB59pDTqNragqvccsw17JCRp9h+IDSN7JRq2I0tJvcxW1P/Dk9zRg== dependencies: - "@turf/distance" "^4.7.3" - "@turf/helpers" "^4.7.3" + "@turf/distance" "6.x" + "@turf/helpers" "6.x" + "@turf/intersect" "6.x" + "@turf/invariant" "6.x" "@types/bytebuffer@^5.0.40": version "5.0.40" @@ -97,80 +202,96 @@ "@types/long" "*" "@types/node" "*" +"@types/cacheable-request@^6.0.1": + version "6.0.1" + resolved "https://registry.yarnpkg.com/@types/cacheable-request/-/cacheable-request-6.0.1.tgz#5d22f3dded1fd3a84c0bbeb5039a7419c2c91976" + integrity sha512-ykFq2zmBGOCbpIXtoVbz4SKY5QriWPh3AjyU4G74RYbtt5yOc5OfaY75ftjg7mikMOla1CTGpX3lLbuJh8DTrQ== + dependencies: + "@types/http-cache-semantics" "*" + "@types/keyv" "*" + "@types/node" "*" + "@types/responselike" "*" + +"@types/http-cache-semantics@*": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@types/http-cache-semantics/-/http-cache-semantics-4.0.0.tgz#9140779736aa2655635ee756e2467d787cfe8a2a" + integrity sha512-c3Xy026kOF7QOTn00hbIllV1dLR9hG9NkSrLQgCVs8NF6sBU+VGWjD3wLPhmh1TYAc7ugCFsvHYMN4VcBN1U1A== + +"@types/keyv@*": + version "3.1.1" + resolved "https://registry.yarnpkg.com/@types/keyv/-/keyv-3.1.1.tgz#e45a45324fca9dab716ab1230ee249c9fb52cfa7" + integrity sha512-MPtoySlAZQ37VoLaPcTHCu1RWJ4llDkULYZIzOYxlhxBqYPB0RsRlmMU0R6tahtFe27mIdkHV+551ZWV4PLmVw== + dependencies: + "@types/node" "*" + "@types/long@*": version "4.0.0" resolved "https://registry.yarnpkg.com/@types/long/-/long-4.0.0.tgz#719551d2352d301ac8b81db732acb6bdc28dbdef" integrity sha512-1w52Nyx4Gq47uuu0EVcsHBxZFJgurQ+rTKS3qMHxR1GY2T8c2AJYd6vZoZ9q1rupaDjU0yT+Jc2XTyXkjeMA+Q== "@types/node@*": - version "12.12.21" - resolved "https://registry.yarnpkg.com/@types/node/-/node-12.12.21.tgz#aa44a6363291c7037111c47e4661ad210aded23f" - integrity sha512-8sRGhbpU+ck1n0PGAUgVrWrWdjSW2aqNeyC15W88GRsMpSwzv6RJGlLhE7s2RhVSOdyDmxbqlWSeThq4/7xqlA== - -"@types/node@^6.0.46": - version "6.0.88" - resolved "https://registry.yarnpkg.com/@types/node/-/node-6.0.88.tgz#f618f11a944f6a18d92b5c472028728a3e3d4b66" + version "13.1.6" + resolved "https://registry.yarnpkg.com/@types/node/-/node-13.1.6.tgz#076028d0b0400be8105b89a0a55550c86684ffec" + integrity sha512-Jg1F+bmxcpENHP23sVKkNuU3uaxPnsBMW0cLjleiikFKomJQbsn0Cqk2yDvQArqzZN6ABfBkZ0To7pQ8sLdWDg== -JSONSelect@0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/JSONSelect/-/JSONSelect-0.4.0.tgz#a08edcc67eb3fcbe99ed630855344a0cf282bb8d" +"@types/responselike@*": + version "1.0.0" + resolved "https://registry.yarnpkg.com/@types/responselike/-/responselike-1.0.0.tgz#251f4fe7d154d2bad125abe1b429b23afd262e29" + integrity sha512-85Y2BjiufFzaMIlvJDvTTB8Fxl2xfLo4HgmHzVBz08w4wDePCTjYw66PdrolO0kzli3yam/YCgRufyo1DdQVTA== + dependencies: + "@types/node" "*" abbrev@1: version "1.1.1" resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q== -acorn-jsx@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-3.0.1.tgz#afdf9488fb1ecefc8348f6fb22f464e32a58b36b" - dependencies: - acorn "^3.0.4" - -acorn@^3.0.4: - version "3.3.0" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-3.3.0.tgz#45e37fb39e8da3f25baee3ff5369e2bb5f22017a" +acorn-jsx@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.1.0.tgz#294adb71b57398b0680015f0a38c563ee1db5384" + integrity sha512-tMUqwBWfLFbJbizRmEcWSLw6HnFzfdJs2sOJEOwwtVPMoH/0Ay+E703oZz78VSXZiiDcZrQ5XKjPIUQixhmgVw== -acorn@^5.2.1: - version "5.3.0" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.3.0.tgz#7446d39459c54fb49a80e6ee6478149b940ec822" +acorn@^7.1.0: + version "7.1.0" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.1.0.tgz#949d36f2c292535da602283586c2477c57eb2d6c" + integrity sha512-kL5CuoXA/dgxlBbVrflsflzQ3PAas7RYZB52NOm/6839iVYJgKMJ3cQJD+t2i5+qFa8h3MDpEOJiS64E8JLnSQ== addressparser@~1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/addressparser/-/addressparser-1.0.1.tgz#47afbe1a2a9262191db6838e4fd1d39b40821746" - -ajv-keywords@^2.1.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-2.1.1.tgz#617997fc5f60576894c435f940d819e135b80762" - -ajv@^4.9.1: - version "4.11.8" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-4.11.8.tgz#82ffb02b29e662ae53bdc20af15947706739c536" - integrity sha1-gv+wKynmYq5TvcIK8VlHcGc5xTY= - dependencies: - co "^4.6.0" - json-stable-stringify "^1.0.1" + integrity sha1-R6++GiqSYhkdtoOOT9HTm0CCF0Y= ajv@^5.1.0: - version "5.5.1" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-5.5.1.tgz#b38bb8876d9e86bee994956a04e721e88b248eb2" + version "5.5.2" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-5.5.2.tgz#73b5eeca3fab653e3d3f9422b341ad42205dc965" + integrity sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU= dependencies: co "^4.6.0" fast-deep-equal "^1.0.0" fast-json-stable-stringify "^2.0.0" json-schema-traverse "^0.3.0" -ajv@^5.2.3, ajv@^5.3.0: - version "5.5.2" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-5.5.2.tgz#73b5eeca3fab653e3d3f9422b341ad42205dc965" +ajv@^6.10.0, ajv@^6.10.2, ajv@^6.5.5: + version "6.10.2" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.10.2.tgz#d3cea04d6b017b2894ad69040fec8b623eb4bd52" + integrity sha512-TXtUUEYHuaTEbLZWIKUr5pmBuhDLy+8KYtPYdcV8qC+pOZL+NKqYwvWSRrVXHn+ZmRRAu8vJTAznH7Oag6RVRw== dependencies: - co "^4.6.0" - fast-deep-equal "^1.0.0" + fast-deep-equal "^2.0.1" fast-json-stable-stringify "^2.0.0" - json-schema-traverse "^0.3.0" + json-schema-traverse "^0.4.1" + uri-js "^4.2.2" -ansi-escapes@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.0.0.tgz#ec3e8b4e9f8064fc02c3ac9b65f1c275bda8ef92" +ansi-colors@3.2.3: + version "3.2.3" + resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-3.2.3.tgz#57d35b8686e851e2cc04c403f1c00203976a1813" + integrity sha512-LEHHyuhlPY3TmuUYMh2oz89lTShfvgbmzaBcxve9t/9Wuy7Dwf4yoAKcND7KFT1HAQfqZ12qtc+DUrBMeKF9nw== + +ansi-escapes@^4.2.1: + version "4.3.0" + resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.0.tgz#a4ce2b33d6b214b7950d8595c212f12ac9cc569d" + integrity sha512-EiYhwo0v255HUL6eDyuLrXEkTi7WwVCLAw+SeOQ7M7qdun1z1pum4DEm/nuqIVbPvi9RPPc9k9LbyBv6H0DwVg== + dependencies: + type-fest "^0.8.1" ansi-regex@^2.0.0: version "2.1.1" @@ -180,20 +301,29 @@ ansi-regex@^2.0.0: ansi-regex@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998" + integrity sha1-7QMXwyIGT3lGbAKWa922Bas32Zg= -ansi-styles@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" +ansi-regex@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-4.1.0.tgz#8b9f8f08cf1acb843756a839ca8c7e3168c51997" + integrity sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg== -ansi-styles@^3.1.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.0.tgz#c159b8d5be0f9e5a6f346dab94f16ce022161b88" +ansi-regex@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.0.tgz#388539f55179bf39339c81af30a654d69f87cb75" + integrity sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg== + +ansi-styles@^3.1.0, ansi-styles@^3.2.0, ansi-styles@^3.2.1: + version "3.2.1" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" + integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== dependencies: color-convert "^1.9.0" -apicache@^0.10.0: - version "0.10.0" - resolved "https://registry.yarnpkg.com/apicache/-/apicache-0.10.0.tgz#79687842020647a91aa87e0e74680bcc0610584e" +apicache@^1.4.0: + version "1.5.3" + resolved "https://registry.yarnpkg.com/apicache/-/apicache-1.5.3.tgz#8977b358bf7d579d55fe3d183c907ae5dbcfb357" + integrity sha512-n1h39Bt7tMiJMV0u0tFlhigig8Uo/wJmKoj6WE/OwvZ+WbFchn7jnXleotZOzZTUBtr0Tg9iJshHnJDAGQbAEQ== aproba@^1.0.3: version "1.2.0" @@ -209,25 +339,12 @@ are-we-there-yet@~1.1.2: readable-stream "^2.0.6" argparse@^1.0.7: - version "1.0.9" - resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.9.tgz#73d83bc263f86e97f8cc4f6bae1b0e90a7d22c86" + version "1.0.10" + resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" + integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== dependencies: sprintf-js "~1.0.2" -array-union@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39" - dependencies: - array-uniq "^1.0.1" - -array-uniq@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6" - -arrify@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" - ascli@~1: version "1.0.1" resolved "https://registry.yarnpkg.com/ascli/-/ascli-1.0.1.tgz#bcfa5974a62f18e81cabaeb49732ab4a88f906bc" @@ -248,22 +365,25 @@ assert-plus@1.0.0, assert-plus@^1.0.0: resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" integrity sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU= -assert-plus@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-0.2.0.tgz#d74e1b87e7affc0db8aadb7021f3fe48101ab234" - integrity sha1-104bh+ev/A24qttwIfP+SBAasjQ= +assertion-error@^1.0.1, assertion-error@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/assertion-error/-/assertion-error-1.1.0.tgz#e60b6b0e8f301bd97e5375215bda406c85118c0b" + integrity sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw== -assertion-error@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/assertion-error/-/assertion-error-1.0.2.tgz#13ca515d86206da0bac66e834dd397d87581094c" +astral-regex@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-1.0.0.tgz#6c8c3fb827dd43ee3918f27b82782ab7658a6fd9" + integrity sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg== async-limiter@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/async-limiter/-/async-limiter-1.0.0.tgz#78faed8c3d074ab81f22b4e985d79e8738f720f8" + version "1.0.1" + resolved "https://registry.yarnpkg.com/async-limiter/-/async-limiter-1.0.1.tgz#dd379e94f0db8310b08291f9d64c3209766617fd" + integrity sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ== -async@2.1.4: - version "2.1.4" - resolved "https://registry.yarnpkg.com/async/-/async-2.1.4.tgz#2d2160c7788032e4dd6cbe2502f1f9a2c8f6cde4" +async@2.6.0: + version "2.6.0" + resolved "https://registry.yarnpkg.com/async/-/async-2.6.0.tgz#61a29abb6fcc026fea77e56d1c6ec53a795951f4" + integrity sha512-xAfGg1/NTLBBKlHFmnd7PlmUW9KhVQIUuSrYem9xzFUZy13ScvtyGGejaae9iAVRiRq9+Cx7DPFaAAhCpyxyPw== dependencies: lodash "^4.14.0" @@ -272,40 +392,25 @@ asynckit@^0.4.0: resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" integrity sha1-x57Zf380y48robyXkLzDZkdLS3k= -aws-sign2@~0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.6.0.tgz#14342dd38dbcc94d0e5b87d763cd63612c0e794f" - integrity sha1-FDQt0428yU0OW4fXY81jYSwOeU8= - aws-sign2@~0.7.0: version "0.7.0" resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8" + integrity sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg= -aws4@^1.2.1: +aws4@^1.6.0, aws4@^1.8.0: version "1.9.0" resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.9.0.tgz#24390e6ad61386b0a747265754d2a17219de862c" integrity sha512-Uvq6hVe90D0B2WEnUqtdgY1bATGz3mw33nH9Y+dmA+w5DHvUmBgkr5rM/KCHpCsiFNRUfokW/szpPPgMK2hm4A== -aws4@^1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.6.0.tgz#83ef5ca860b2b32e4a0deedee8c771b9db57471e" - -babel-code-frame@^6.22.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.26.0.tgz#63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b" - dependencies: - chalk "^1.1.3" - esutils "^2.0.2" - js-tokens "^3.0.2" - balanced-match@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" integrity sha1-ibTRmasr7kneFk6gK4nORi1xt2c= -base64url@2.0.0, base64url@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/base64url/-/base64url-2.0.0.tgz#eac16e03ea1438eff9423d69baa36262ed1f70bb" +base64-js@^1.3.0: + version "1.3.1" + resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.3.1.tgz#58ece8cb75dd07e71ed08c736abc5fac4dbf8df1" + integrity sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g== bcrypt-pbkdf@^1.0.0: version "1.0.2" @@ -314,52 +419,31 @@ bcrypt-pbkdf@^1.0.0: dependencies: tweetnacl "^0.14.3" -bcrypt@^1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/bcrypt/-/bcrypt-1.0.3.tgz#b02ddc6c0b52ea16b8d3cf375d5a32e780dab548" - dependencies: - nan "2.6.2" - node-pre-gyp "0.6.36" - -bl@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/bl/-/bl-1.2.1.tgz#cac328f7bee45730d404b692203fcb590e172d5e" +bcrypt@^3.0.5: + version "3.0.7" + resolved "https://registry.yarnpkg.com/bcrypt/-/bcrypt-3.0.7.tgz#1187d29df2e1cde44268152b13e3d4a655a7c7de" + integrity sha512-K5UglF9VQvBMHl/1elNyyFvAfOY9Bj+rpKrCSR9sFwcW8FywAYJSRwTURNej5TaAK2TEJkcJ6r6lh1YPmspx5Q== dependencies: - readable-stream "^2.0.5" + nan "2.14.0" + node-pre-gyp "0.13.0" -block-stream@*: - version "0.0.9" - resolved "https://registry.yarnpkg.com/block-stream/-/block-stream-0.0.9.tgz#13ebfe778a03205cfe03751481ebb4b3300c126a" - integrity sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo= +bl@^1.2.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/bl/-/bl-1.2.2.tgz#a160911717103c07410cef63ef51b397c025af9c" + integrity sha512-e8tQYnZodmebYDWGH7KMRvtzKXaJHx3BbilrgZCfvyLUYdKpK1t5PSPmpkny/SgiTSCnjfLW7v5rlONXVFkQEA== dependencies: - inherits "~2.0.0" + readable-stream "^2.3.5" + safe-buffer "^5.1.1" bluebird@3.5.0: version "3.5.0" resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.0.tgz#791420d7f551eea2897453a8a77653f96606d67c" + integrity sha1-eRQg1/VR7qKJdFOop3ZT+WYG1nw= boolbase@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" - -boom@2.x.x: - version "2.10.1" - resolved "https://registry.yarnpkg.com/boom/-/boom-2.10.1.tgz#39c8918ceff5799f83f9492a848f625add0c766f" - integrity sha1-OciRjO/1eZ+D+UkqhI9iWt0Mdm8= - dependencies: - hoek "2.x.x" - -boom@4.x.x: - version "4.3.1" - resolved "https://registry.yarnpkg.com/boom/-/boom-4.3.1.tgz#4f8a3005cb4a7e3889f749030fd25b96e01d2e31" - dependencies: - hoek "4.x.x" - -boom@5.x.x: - version "5.2.0" - resolved "https://registry.yarnpkg.com/boom/-/boom-5.2.0.tgz#5dd9da6ee3a5f302077436290cb717d3f4a54e02" - dependencies: - hoek "4.x.x" + integrity sha1-aN/1++YMUes3cl6p4+0xDcwed24= brace-expansion@^1.1.7: version "1.1.11" @@ -369,25 +453,35 @@ brace-expansion@^1.1.7: balanced-match "^1.0.0" concat-map "0.0.1" -browser-stdout@1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/browser-stdout/-/browser-stdout-1.3.0.tgz#f351d32969d32fa5d7a5567154263d928ae3bd1f" +browser-stdout@1.3.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/browser-stdout/-/browser-stdout-1.3.1.tgz#baa559ee14ced73452229bad7326467c61fabd60" + integrity sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw== bson@~1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/bson/-/bson-1.0.4.tgz#93c10d39eaa5b58415cbc4052f3e53e562b0b72c" + version "1.0.9" + resolved "https://registry.yarnpkg.com/bson/-/bson-1.0.9.tgz#12319f8323b1254739b7c6bef8d3e89ae05a2f57" + integrity sha512-IQX9/h7WdMBIW/q/++tGd+emQr0XMdeZ6icnT/74Xk9fnabWn+gZgpE+9V+gujL3hhJOoNrnDVY7tWdzc7NUTg== buffer-equal-constant-time@1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz#f8e71132f7ffe6e01a5c9697a4c6f3e48d5cc819" + integrity sha1-+OcRMvf/5uAaXJaXpMbz5I1cyBk= + +buffer-from@^1.0.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.1.tgz#32713bc028f75c02fdb710d7c7bcec1f2c6070ef" + integrity sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A== buffer-shims@^1.0.0, buffer-shims@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/buffer-shims/-/buffer-shims-1.0.0.tgz#9978ce317388c649ad8793028c3477ef044a8b51" + integrity sha1-mXjOMXOIxkmth5MCjDR37wRKi1E= bunyan@^1.8.1, bunyan@^1.8.12: version "1.8.12" resolved "https://registry.yarnpkg.com/bunyan/-/bunyan-1.8.12.tgz#f150f0f6748abdd72aeae84f04403be2ef113797" + integrity sha1-8VDw9nSKvdcq6uhPBEA74u8RN5c= optionalDependencies: dtrace-provider "~0.8" moment "^2.10.6" @@ -401,43 +495,48 @@ bytebuffer@~5: dependencies: long "~3" -cacheable-request@^2.1.1: - version "2.1.4" - resolved "https://registry.yarnpkg.com/cacheable-request/-/cacheable-request-2.1.4.tgz#0d808801b6342ad33c91df9d0b44dc09b91e5c3d" +cacheable-lookup@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/cacheable-lookup/-/cacheable-lookup-0.2.1.tgz#f474ae2c686667d7ea08c43409ad31b2b31b26c2" + integrity sha512-BQ8MRjxJASEq2q+w0SusPU3B054gS278K8sj58QCLMZIso5qG05+MdCdmXxuyVlfvI8h4bPsNOavVUauVCGxrg== + dependencies: + keyv "^3.1.0" + +cacheable-request@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/cacheable-request/-/cacheable-request-7.0.0.tgz#12421aa084e943ec81eac8c93e56af90c624788a" + integrity sha512-UVG4gMn3WjnAeFBBx7RFoprgOANIAkMwN5Dta6ONmfSwrCxfm0Ip7g0mIBxIRJZX9aDsoID0Ry3dU5Pr0csKKA== dependencies: - clone-response "1.0.2" - get-stream "3.0.0" - http-cache-semantics "3.8.1" - keyv "3.0.0" - lowercase-keys "1.0.0" - normalize-url "2.0.1" - responselike "1.0.2" + clone-response "^1.0.2" + get-stream "^5.1.0" + http-cache-semantics "^4.0.0" + keyv "^3.0.0" + lowercase-keys "^2.0.0" + normalize-url "^4.1.0" + responselike "^2.0.0" callback-stream@^1.0.2: version "1.1.0" resolved "https://registry.yarnpkg.com/callback-stream/-/callback-stream-1.1.0.tgz#4701a51266f06e06eaa71fc17233822d875f4908" + integrity sha1-RwGlEmbwbgbqpx/BcjOCLYdfSQg= dependencies: inherits "^2.0.1" readable-stream "> 1.0.0 < 3.0.0" -caller-path@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/caller-path/-/caller-path-0.1.0.tgz#94085ef63581ecd3daa92444a8fe94e82577751f" - dependencies: - callsites "^0.2.0" - -callsites@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/callsites/-/callsites-0.2.0.tgz#afab96262910a7f33c19a5775825c69f34e350ca" +callsites@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" + integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== camelcase@^2.0.1: version "2.1.1" resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-2.1.1.tgz#7c1d16d679a1bbe59ca02cacecfb011e201f5a1f" integrity sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8= -caseless@~0.11.0: - version "0.11.0" - resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.11.0.tgz#715b96ea9841593cc33067923f5ec60ebda4f7d7" +camelcase@^5.0.0: + version "5.3.1" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" + integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== caseless@~0.12.0: version "0.12.0" @@ -447,33 +546,38 @@ caseless@~0.12.0: chai-as-promised@5.x.x: version "5.3.0" resolved "https://registry.yarnpkg.com/chai-as-promised/-/chai-as-promised-5.3.0.tgz#09d7a402908aa70dfdbead53e5853fc79d3ef21c" + integrity sha1-CdekApCKpw39vq1T5YU/x50+8hw= chai-subset@1.x.x: - version "1.5.0" - resolved "https://registry.yarnpkg.com/chai-subset/-/chai-subset-1.5.0.tgz#d03dbcfa8c9daad848643bbde4e63376b7882427" + version "1.6.0" + resolved "https://registry.yarnpkg.com/chai-subset/-/chai-subset-1.6.0.tgz#a5d0ca14e329a79596ed70058b6646bd6988cfe9" + integrity sha1-pdDKFOMpp5WW7XAFi2ZGvWmIz+k= chai@3.x.x: version "3.5.0" resolved "https://registry.yarnpkg.com/chai/-/chai-3.5.0.tgz#4d02637b067fe958bdbfdd3a40ec56fef7373247" + integrity sha1-TQJjewZ/6Vi9v906QOxW/vc3Mkc= dependencies: assertion-error "^1.0.1" deep-eql "^0.1.3" type-detect "^1.0.0" chai@^4.1.2: - version "4.1.2" - resolved "https://registry.yarnpkg.com/chai/-/chai-4.1.2.tgz#0f64584ba642f0f2ace2806279f4f06ca23ad73c" + version "4.2.0" + resolved "https://registry.yarnpkg.com/chai/-/chai-4.2.0.tgz#760aa72cf20e3795e84b12877ce0e83737aa29e5" + integrity sha512-XQU3bhBukrOsQCuwZndwGcCVQHyZi53fQ6Ys1Fym7E4olpIqqZZhhoFJoaKVvV17lWQoXYwgWN2nF5crA8J2jw== dependencies: - assertion-error "^1.0.1" - check-error "^1.0.1" - deep-eql "^3.0.0" + assertion-error "^1.1.0" + check-error "^1.0.2" + deep-eql "^3.0.1" get-func-name "^2.0.0" - pathval "^1.0.0" - type-detect "^4.0.0" + pathval "^1.1.0" + type-detect "^4.0.5" chakram@^1.5.0: version "1.5.0" resolved "https://registry.yarnpkg.com/chakram/-/chakram-1.5.0.tgz#3d8b0a88f768dd6ada592a524663cc0dc14ac1cf" + integrity sha1-PYsKiPdo3WraWSpSRmPMDcFKwc8= dependencies: chai "3.x.x" chai-as-promised "5.x.x" @@ -484,38 +588,41 @@ chakram@^1.5.0: request-debug "0.x.x" tv4 "1.x.x" -chalk@^1.1.1, chalk@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" - dependencies: - ansi-styles "^2.2.1" - escape-string-regexp "^1.0.2" - has-ansi "^2.0.0" - strip-ansi "^3.0.0" - supports-color "^2.0.0" - chalk@^2.0.0, chalk@^2.1.0: version "2.3.0" resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.3.0.tgz#b5ea48efc9c1793dccc9b4767c93914d3f2d52ba" + integrity sha512-Az5zJR2CBujap2rqXGaJKaPHyJ0IrUimvYNX+ncCy8PJP4ltOGTrHUIo097ZaL2zMeKYpiCdqDvS6zdrTFok3Q== dependencies: ansi-styles "^3.1.0" escape-string-regexp "^1.0.5" supports-color "^4.0.0" -chardet@^0.4.0: - version "0.4.2" - resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.4.2.tgz#b5473b33dc97c424e5d98dc87d55d4d8a29c8bf2" +chalk@^2.0.1, chalk@^2.4.2: + version "2.4.2" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" + integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== + dependencies: + ansi-styles "^3.2.1" + escape-string-regexp "^1.0.5" + supports-color "^5.3.0" -check-error@^1.0.1: +chardet@^0.7.0: + version "0.7.0" + resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" + integrity sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA== + +check-error@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/check-error/-/check-error-1.0.2.tgz#574d312edd88bb5dd8912e9286dd6c0aed4aac82" + integrity sha1-V00xLt2Iu13YkS6Sht1sCu1KrII= cheerio@^1.0.0-rc.2: - version "1.0.0-rc.2" - resolved "https://registry.yarnpkg.com/cheerio/-/cheerio-1.0.0-rc.2.tgz#4b9f53a81b27e4d5dac31c0ffd0cfa03cc6830db" + version "1.0.0-rc.3" + resolved "https://registry.yarnpkg.com/cheerio/-/cheerio-1.0.0-rc.3.tgz#094636d425b2e9c0f4eb91a46c05630c9a1a8bf6" + integrity sha512-0td5ijfUPuubwLUu0OBoe98gZj8C/AA+RW3v67GPlGOrvxWjZmBXiBCRU+I8VEiNyJzjth40POfHiz2RB3gImA== dependencies: css-select "~1.2.0" - dom-serializer "~0.1.0" + dom-serializer "~0.1.1" entities "~1.1.1" htmlparser2 "^3.9.1" lodash "^4.15.0" @@ -526,23 +633,17 @@ chownr@^1.1.1: resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.3.tgz#42d837d5239688d55f303003a508230fa6727142" integrity sha512-i70fVHhmV3DtTl6nqvZOnIjbY0Pe4kAUjwHj8z0zAdgBtYrJyYwLKCCuRBQ5ppkyL0AkN7HKRnETdmdp1zqNXw== -circular-json@^0.3.1: - version "0.3.3" - resolved "https://registry.yarnpkg.com/circular-json/-/circular-json-0.3.3.tgz#815c99ea84f6809529d2f45791bdf82711352d66" - -cjson@~0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/cjson/-/cjson-0.2.1.tgz#73cd8aad65d9e1505f9af1744d3b79c1527682a5" - -cli-cursor@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz#b35dac376479facc3e94747d41d0d0f5238ffcb5" +cli-cursor@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-3.1.0.tgz#264305a7ae490d1d03bf0c9ba7c925d1753af307" + integrity sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw== dependencies: - restore-cursor "^2.0.0" + restore-cursor "^3.1.0" cli-width@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.0.tgz#ff19ede8a9a5e579324147b0c11f0fbcbabed639" + integrity sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk= cliui@^3.0.3: version "3.2.0" @@ -553,22 +654,34 @@ cliui@^3.0.3: strip-ansi "^3.0.1" wrap-ansi "^2.0.0" +cliui@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-5.0.0.tgz#deefcfdb2e800784aa34f46fa08e06851c7bbbc5" + integrity sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA== + dependencies: + string-width "^3.1.0" + strip-ansi "^5.2.0" + wrap-ansi "^5.1.0" + clone-regexp@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/clone-regexp/-/clone-regexp-1.0.0.tgz#eae0a2413f55c0942f818c229fefce845d7f3b1c" + version "1.0.1" + resolved "https://registry.yarnpkg.com/clone-regexp/-/clone-regexp-1.0.1.tgz#051805cd33173375d82118fc0918606da39fd60f" + integrity sha512-Fcij9IwRW27XedRIJnSOEupS7RVcXtObJXbcUOX93UCLqqOdRpkvzKywOOSizmEK/Is3S/RHX9dLdfo6R1Q1mw== dependencies: is-regexp "^1.0.0" is-supported-regexp-flag "^1.0.0" -clone-response@1.0.2: +clone-response@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/clone-response/-/clone-response-1.0.2.tgz#d1dc973920314df67fbeb94223b4ee350239e96b" + integrity sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws= dependencies: mimic-response "^1.0.0" clone@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.2.tgz#260b7a99ebb1edfe247538175f783243cb19d149" + version "1.0.4" + resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.4.tgz#da309cc263df15994c688ca902179ca3c7cd7c7e" + integrity sha1-2jCcwmPfFZlMaIypAheco8fNfH4= co@^4.6.0: version "4.6.0" @@ -581,40 +694,35 @@ code-point-at@^1.0.0: integrity sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c= color-convert@^1.9.0: - version "1.9.1" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.1.tgz#c1261107aeb2f294ebffec9ed9ecad529a6097ed" + version "1.9.3" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" + integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== dependencies: - color-name "^1.1.1" + color-name "1.1.3" -color-name@^1.1.1: +color-name@1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" - -colors@0.5.x: - version "0.5.1" - resolved "https://registry.yarnpkg.com/colors/-/colors-0.5.1.tgz#7d0023eaeb154e8ee9fce75dcb923d0ed1667774" + integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= colour@~0.7.1: version "0.7.1" resolved "https://registry.yarnpkg.com/colour/-/colour-0.7.1.tgz#9cb169917ec5d12c0736d3e8685746df1cadf778" integrity sha1-nLFpkX7F0SwHNtPoaFdG3xyt93g= -combined-stream@^1.0.5, combined-stream@~1.0.5: +combined-stream@^1.0.6, combined-stream@~1.0.5, combined-stream@~1.0.6: version "1.0.8" resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg== dependencies: delayed-stream "~1.0.0" -commander@2.11.0, commander@^2.9.0: - version "2.11.0" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.11.0.tgz#157152fd1e7a6c8d98a5b715cf376df928004563" - commist@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/commist/-/commist-1.0.0.tgz#c0c352501cf6f52e9124e3ef89c9806e2022ebef" + version "1.1.0" + resolved "https://registry.yarnpkg.com/commist/-/commist-1.1.0.tgz#17811ec6978f6c15ee4de80c45c9beb77cee35d5" + integrity sha512-rraC8NXWOEjhADbZe9QBNzLAN5Q3fsTPQtBV+fEVj6xKIgDgNiEVE6ZNfHpZOqfQ21YUzfVNUXLOEZquYvQPPg== dependencies: - leven "^1.0.0" + leven "^2.1.0" minimist "^1.1.0" concat-map@0.0.1: @@ -622,20 +730,29 @@ concat-map@0.0.1: resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= -concat-stream@^1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.0.tgz#0aac662fd52be78964d5532f694784e70110acf7" +concat-stream@^1.6.2: + version "1.6.2" + resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.2.tgz#904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34" + integrity sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw== dependencies: + buffer-from "^1.0.0" inherits "^2.0.3" readable-stream "^2.2.2" typedarray "^0.0.6" config@^1.29.2: - version "1.30.0" - resolved "https://registry.yarnpkg.com/config/-/config-1.30.0.tgz#1d60a9f35348a13c175798d384e81a5a16c3ba6e" + version "1.31.0" + resolved "https://registry.yarnpkg.com/config/-/config-1.31.0.tgz#ab08aeba6536015d220cd0afe14b3e0501082542" + integrity sha512-Ep/l9Rd1J9IPueztJfpbOqVzuKHQh4ZODMNt9xqTYdBBNRXbV4oTu34kCkkfdRVcDq0ohtpaeXGgb+c0LQxFRA== + dependencies: + json5 "^1.0.1" + +config@^3.1.0: + version "3.2.4" + resolved "https://registry.yarnpkg.com/config/-/config-3.2.4.tgz#e60a908582991e800852f9cb60fcf424f3274a6c" + integrity sha512-H1XIGfnU1EAkfjSLn9ZvYDRx9lOezDViuzLDgiJ/lMeqjYe3q6iQfpcLt2NInckJgpAeekbNhQkmnnbdEDs9rw== dependencies: - json5 "0.4.0" - os-homedir "1.0.2" + json5 "^1.0.1" console-control-strings@^1.0.0, console-control-strings@~1.1.0: version "1.1.0" @@ -647,30 +764,21 @@ core-util-is@1.0.2, core-util-is@~1.0.0: resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= -cross-spawn@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-5.1.0.tgz#e8bd0efee58fcff6f8f94510a0a554bbfa235449" +cross-spawn@^6.0.5: + version "6.0.5" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4" + integrity sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ== dependencies: - lru-cache "^4.0.1" + nice-try "^1.0.4" + path-key "^2.0.1" + semver "^5.5.0" shebang-command "^1.2.0" which "^1.2.9" -cryptiles@2.x.x: - version "2.0.5" - resolved "https://registry.yarnpkg.com/cryptiles/-/cryptiles-2.0.5.tgz#3bdfecdc608147c1c67202fa291e7dca59eaa3b8" - integrity sha1-O9/s3GCBR8HGcgL6KR59ylnqo7g= - dependencies: - boom "2.x.x" - -cryptiles@3.x.x: - version "3.1.2" - resolved "https://registry.yarnpkg.com/cryptiles/-/cryptiles-3.1.2.tgz#a89fbb220f5ce25ec56e8c4aa8a4fd7b5b0d29fe" - dependencies: - boom "5.x.x" - css-select@~1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/css-select/-/css-select-1.2.0.tgz#2b3a110539c5355f1cd8d314623e870b121ec858" + integrity sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg= dependencies: boolbase "~1.0.0" css-what "2.1" @@ -678,32 +786,55 @@ css-select@~1.2.0: nth-check "~1.0.1" css-what@2.1: - version "2.1.0" - resolved "https://registry.yarnpkg.com/css-what/-/css-what-2.1.0.tgz#9467d032c38cfaefb9f2d79501253062f87fa1bd" + version "2.1.3" + resolved "https://registry.yarnpkg.com/css-what/-/css-what-2.1.3.tgz#a6d7604573365fe74686c3f311c56513d88285f2" + integrity sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg== csv-generate@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/csv-generate/-/csv-generate-1.1.2.tgz#ec6b00edaed6e59ad9c20582f4c364e28b146240" + integrity sha1-7GsA7a7W5ZrZwgWC9MNk4osUYkA= -csv-parse@^1.2.1, csv-parse@^1.3.3: +csv-parse@^1.3.3: version "1.3.3" resolved "https://registry.yarnpkg.com/csv-parse/-/csv-parse-1.3.3.tgz#d1cfd8743c2f849a0abb2fd544db56695d19a490" + integrity sha1-0c/YdDwvhJoKuy/VRNtWaV0ZpJA= + +csv-parse@^4.4.1: + version "4.8.3" + resolved "https://registry.yarnpkg.com/csv-parse/-/csv-parse-4.8.3.tgz#9f9b66c3e7e30409dba3d08ecd89eaa04b320659" + integrity sha512-0GPxubzYzSn08lhNTWDCkcDKn8krmw0WuscqB2RrW6sugGGskbwaaEz7PCFFwbQ0phNGTTieiyfzzu3S/jZZ7Q== -csv-stringify@^1.0.4, csv-stringify@^1.1.2: +csv-stringify@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/csv-stringify/-/csv-stringify-1.1.2.tgz#77a41526581bce3380f12b00d7c5bbac70c82b58" + integrity sha1-d6QVJlgbzjOA8SsA18W7rHDIK1g= dependencies: lodash.get "~4.4.2" +csv-stringify@^5.3.0: + version "5.3.6" + resolved "https://registry.yarnpkg.com/csv-stringify/-/csv-stringify-5.3.6.tgz#2655e2e1c01b97b3963bccbc9407b8fb876dc589" + integrity sha512-kPcRbMvo5NLLD71TAqW5K+g9kbM2HpIZJLAzm73Du8U+5TXmDp9YtXKCBLyxEh0q3Jbg8QhNFBz3b5VJzjZ/jw== + csv@^1.1.0: version "1.2.1" resolved "https://registry.yarnpkg.com/csv/-/csv-1.2.1.tgz#5231edfc1c7152512ec45781076a7a97ff525c0c" + integrity sha1-UjHt/BxxUlEuxFeBB2p6l/9SXAw= dependencies: csv-generate "^1.1.2" csv-parse "^1.3.3" csv-stringify "^1.1.2" stream-transform "^0.2.2" +d@1, d@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/d/-/d-1.0.1.tgz#8698095372d58dbee346ffd0c7093f99f8f9eb5a" + integrity sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA== + dependencies: + es5-ext "^0.10.50" + type "^1.0.1" + dashdash@^1.12.0: version "1.14.1" resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" @@ -711,57 +842,60 @@ dashdash@^1.12.0: dependencies: assert-plus "^1.0.0" -dashify@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/dashify/-/dashify-1.0.0.tgz#faa9365fbe72a688bcb5d6f2b270d370c96d575e" +dashify@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/dashify/-/dashify-2.0.0.tgz#fff270ca2868ca427fee571de35691d6e437a648" + integrity sha512-hpA5C/YrPjucXypHPPc0oJ1l9Hf6wWbiOL7Ik42cxnsUOhWiCB/fylKbKqqJalW9FgkNQCw16YO8uW9Hs0Iy1A== -debug@2.6.9, debug@^2.2.0, debug@^2.6.8: +debug@2.6.9, debug@^2.6.8: version "2.6.9" resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" + integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== dependencies: ms "2.0.0" -debug@3.1.0, debug@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261" - dependencies: - ms "2.0.0" - -debug@^3.2.6: +debug@3.2.6, debug@^3.2.6: version "3.2.6" resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b" integrity sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ== dependencies: ms "^2.1.1" -decamelize@^1.1.1: +debug@^4.0.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.1.1.tgz#3b72260255109c6b589cee050f1d516139664791" + integrity sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw== + dependencies: + ms "^2.1.1" + +decamelize@^1.1.1, decamelize@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= -decode-uri-component@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545" - -decompress-response@^3.3.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/decompress-response/-/decompress-response-3.3.0.tgz#80a4dd323748384bfa248083622aedec982adff3" +decompress-response@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/decompress-response/-/decompress-response-5.0.0.tgz#7849396e80e3d1eba8cb2f75ef4930f76461cb0f" + integrity sha512-TLZWWybuxWgoW7Lykv+gq9xvzOsUjQ9tF09Tj6NSTYGMTCHNXzrPnD6Hi+TgZq19PyTAGH4Ll/NIM/eTGglnMw== dependencies: - mimic-response "^1.0.0" + mimic-response "^2.0.0" dedent@^0.7.0: version "0.7.0" resolved "https://registry.yarnpkg.com/dedent/-/dedent-0.7.0.tgz#2495ddbaf6eb874abb0e1be9df22d2e5a544326c" + integrity sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw= deep-eql@^0.1.3: version "0.1.3" resolved "https://registry.yarnpkg.com/deep-eql/-/deep-eql-0.1.3.tgz#ef558acab8de25206cd713906d74e56930eb69f2" + integrity sha1-71WKyrjeJSBs1xOQbXTlaTDrafI= dependencies: type-detect "0.1.1" -deep-eql@^3.0.0: +deep-eql@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/deep-eql/-/deep-eql-3.0.1.tgz#dfc9404400ad1c8fe023e7da1df1c147c4b444df" + integrity sha512-+QeIQyN5ZuO+3Uk5DYh6/1eKO0m0YmJFGNmFHGACpf1ClL1nmlV/p4gNgbl2pJGxgXb4faqo6UE+M5ACEMyVcw== dependencies: type-detect "^4.0.0" @@ -773,24 +907,26 @@ deep-extend@^0.6.0: deep-is@~0.1.3: version "0.1.3" resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" + integrity sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ= defaults@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/defaults/-/defaults-1.0.3.tgz#c656051e9817d9ff08ed881477f3fe4019f3ef7d" + integrity sha1-xlYFHpgX2f8I7YgUd/P+QBnz730= dependencies: clone "^1.0.2" -del@^2.0.2: - version "2.2.2" - resolved "https://registry.yarnpkg.com/del/-/del-2.2.2.tgz#c12c981d067846c84bcaf862cff930d907ffd1a8" +defer-to-connect@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/defer-to-connect/-/defer-to-connect-1.1.1.tgz#88ae694b93f67b81815a2c8c769aef6574ac8f2f" + integrity sha512-J7thop4u3mRTkYRQ+Vpfwy2G5Ehoy82I14+14W4YMDLKdWloI9gSzRbV30s/NckQGVJtPkWNcW4oMAUigTdqiQ== + +define-properties@^1.1.2, define-properties@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1" + integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ== dependencies: - globby "^5.0.0" - is-path-cwd "^1.0.0" - is-path-in-cwd "^1.0.0" - object-assign "^4.0.1" - pify "^2.0.0" - pinkie-promise "^2.0.0" - rimraf "^2.2.8" + object-keys "^1.0.12" delayed-stream@~1.0.0: version "1.0.0" @@ -808,77 +944,93 @@ detect-libc@^1.0.2: integrity sha1-+hN8S9aY7fVc1c0CrFWfkaTEups= detect-node@^2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/detect-node/-/detect-node-2.0.3.tgz#a2033c09cc8e158d37748fbde7507832bd6ce127" + version "2.0.4" + resolved "https://registry.yarnpkg.com/detect-node/-/detect-node-2.0.4.tgz#014ee8f8f669c5c58023da64b8179c083a28c46c" + integrity sha512-ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw== -diff@3.3.1: - version "3.3.1" - resolved "https://registry.yarnpkg.com/diff/-/diff-3.3.1.tgz#aa8567a6eed03c531fc89d3f711cd0e5259dec75" +diff@3.5.0: + version "3.5.0" + resolved "https://registry.yarnpkg.com/diff/-/diff-3.5.0.tgz#800c0dd1e0a8bfbc95835c202ad220fe317e5a12" + integrity sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA== -doctrine@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-2.1.0.tgz#5cd01fc101621b42c4cd7f5d1a66243716d3f39d" +doctrine@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961" + integrity sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w== dependencies: esutils "^2.0.2" -dom-serializer@0, dom-serializer@~0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.1.0.tgz#073c697546ce0780ce23be4a28e293e40bc30c82" +dom-serializer@0: + version "0.2.2" + resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.2.2.tgz#1afb81f533717175d478655debc5e332d9f9bb51" + integrity sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g== dependencies: - domelementtype "~1.1.1" - entities "~1.1.1" + domelementtype "^2.0.1" + entities "^2.0.0" -domelementtype@1, domelementtype@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.3.0.tgz#b17aed82e8ab59e52dd9c19b1756e0fc187204c2" +dom-serializer@~0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.1.1.tgz#1ec4059e284babed36eec2941d4a970a189ce7c0" + integrity sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA== + dependencies: + domelementtype "^1.3.0" + entities "^1.1.1" -domelementtype@~1.1.1: - version "1.1.3" - resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.1.3.tgz#bd28773e2642881aec51544924299c5cd822185b" +domelementtype@1, domelementtype@^1.3.0, domelementtype@^1.3.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.3.1.tgz#d048c44b37b0d10a7f2a3d5fee3f4333d790481f" + integrity sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w== + +domelementtype@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.0.1.tgz#1f8bdfe91f5a78063274e803b4bdcedf6e94f94d" + integrity sha512-5HOHUDsYZWV8FGWN0Njbr/Rn7f/eWSQi1v7+HsUVwXgn8nWWlL64zKDkS0n8ZmQ3mlWOMuXOnR+7Nx/5tMO5AQ== domhandler@^2.3.0: - version "2.4.1" - resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-2.4.1.tgz#892e47000a99be55bbf3774ffea0561d8879c259" + version "2.4.2" + resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-2.4.2.tgz#8805097e933d65e85546f726d60f5eb88b44f803" + integrity sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA== dependencies: domelementtype "1" domutils@1.5.1: version "1.5.1" resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.5.1.tgz#dcd8488a26f563d61079e48c9f7b7e32373682cf" + integrity sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8= dependencies: dom-serializer "0" domelementtype "1" domutils@^1.5.1: - version "1.6.2" - resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.6.2.tgz#1958cc0b4c9426e9ed367fb1c8e854891b0fa3ff" + version "1.7.0" + resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.7.0.tgz#56ea341e834e06e6748af7a1cb25da67ea9f8c2a" + integrity sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg== dependencies: dom-serializer "0" domelementtype "1" dtrace-provider@^0.8.1, dtrace-provider@~0.8: - version "0.8.5" - resolved "https://registry.yarnpkg.com/dtrace-provider/-/dtrace-provider-0.8.5.tgz#98ebba221afac46e1c39fd36858d8f9367524b92" + version "0.8.8" + resolved "https://registry.yarnpkg.com/dtrace-provider/-/dtrace-provider-0.8.8.tgz#2996d5490c37e1347be263b423ed7b297fb0d97e" + integrity sha512-b7Z7cNtHPhH9EJhNNbbeqTcXB8LGFFZhq1PGgEvpeHlzd36bhbdTWoE/Ba/YguqpBSlAPKnARWhVlhunCMwfxg== dependencies: - nan "^2.3.3" + nan "^2.14.0" duplexer3@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/duplexer3/-/duplexer3-0.1.4.tgz#ee01dd1cac0ed3cbc7fdbea37dc0a8f1ce002ce2" + integrity sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI= -duplexify@^3.5.1, duplexify@^3.5.3: - version "3.5.3" - resolved "https://registry.yarnpkg.com/duplexify/-/duplexify-3.5.3.tgz#8b5818800df92fd0125b27ab896491912858243e" +duplexify@^3.5.1, duplexify@^3.6.0: + version "3.7.1" + resolved "https://registry.yarnpkg.com/duplexify/-/duplexify-3.7.1.tgz#2a4df5317f6ccfd91f86d6fd25d8d8a103b88309" + integrity sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g== dependencies: end-of-stream "^1.0.0" inherits "^2.0.1" readable-stream "^2.0.0" stream-shift "^1.0.0" -ebnf-parser@~0.1.9: - version "0.1.10" - resolved "https://registry.yarnpkg.com/ebnf-parser/-/ebnf-parser-0.1.10.tgz#cd1f6ba477c5638c40c97ed9b572db5bab5d8331" - ecc-jsbn@~0.1.1: version "0.1.2" resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz#3a83a904e54353287874c564b7549386849a98c9" @@ -887,186 +1039,306 @@ ecc-jsbn@~0.1.1: jsbn "~0.1.0" safer-buffer "^2.1.0" -ecdsa-sig-formatter@1.0.9: - version "1.0.9" - resolved "https://registry.yarnpkg.com/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.9.tgz#4bc926274ec3b5abb5016e7e1d60921ac262b2a1" +ecdsa-sig-formatter@1.0.11: + version "1.0.11" + resolved "https://registry.yarnpkg.com/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz#ae0f0fa2d85045ef14a817daa3ce9acd0489e5bf" + integrity sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ== dependencies: - base64url "^2.0.0" safe-buffer "^5.0.1" +emoji-regex@^7.0.1: + version "7.0.3" + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-7.0.3.tgz#933a04052860c85e83c122479c4748a8e4c72156" + integrity sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA== + +emoji-regex@^8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" + integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== + encoding@~0.1.12: version "0.1.12" resolved "https://registry.yarnpkg.com/encoding/-/encoding-0.1.12.tgz#538b66f3ee62cd1ab51ec323829d1f9480c74beb" + integrity sha1-U4tm8+5izRq1HsMjgp0flIDHS+s= dependencies: iconv-lite "~0.4.13" -end-of-stream@^1.0.0, end-of-stream@^1.1.0: - version "1.4.1" - resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.1.tgz#ed29634d19baba463b6ce6b80a37213eab71ec43" +end-of-stream@^1.0.0, end-of-stream@^1.1.0, end-of-stream@^1.4.1: + version "1.4.4" + resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0" + integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q== dependencies: once "^1.4.0" entities@^1.1.1, entities@~1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.1.tgz#6e5c2d0a5621b5dadaecef80b90edfb5cd7772f0" + version "1.1.2" + resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.2.tgz#bdfa735299664dfafd34529ed4f8522a275fea56" + integrity sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w== + +entities@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/entities/-/entities-2.0.0.tgz#68d6084cab1b079767540d80e56a39b423e4abf4" + integrity sha512-D9f7V0JSRwIxlRI2mjMqufDrRDnx8p+eEOz7aUM9SuvF8gsBzra0/6tbjl1m8eQHrZlYj6PxqE00hZ1SAIKPLw== + +es-abstract@^1.17.0-next.1: + version "1.17.0" + resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.17.0.tgz#f42a517d0036a5591dbb2c463591dc8bb50309b1" + integrity sha512-yYkE07YF+6SIBmg1MsJ9dlub5L48Ek7X0qz+c/CPCHS9EBXfESorzng4cJQjJW5/pB6vDF41u7F8vUhLVDqIug== + dependencies: + es-to-primitive "^1.2.1" + function-bind "^1.1.1" + has "^1.0.3" + has-symbols "^1.0.1" + is-callable "^1.1.5" + is-regex "^1.0.5" + object-inspect "^1.7.0" + object-keys "^1.1.1" + object.assign "^4.1.0" + string.prototype.trimleft "^2.1.1" + string.prototype.trimright "^2.1.1" + +es-to-primitive@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.1.tgz#e55cd4c9cdc188bcefb03b366c736323fc5c898a" + integrity sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA== + dependencies: + is-callable "^1.1.4" + is-date-object "^1.0.1" + is-symbol "^1.0.2" + +es5-ext@^0.10.35, es5-ext@^0.10.50, es5-ext@~0.10.14: + version "0.10.53" + resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.53.tgz#93c5a3acfdbef275220ad72644ad02ee18368de1" + integrity sha512-Xs2Stw6NiNHWypzRTY1MtaG/uJlwCk8kH81920ma8mvN8Xq1gsfhZvpkImLQArw8AHnv8MT2I45J3c0R8slE+Q== + dependencies: + es6-iterator "~2.0.3" + es6-symbol "~3.1.3" + next-tick "~1.0.0" + +es6-iterator@~2.0.1, es6-iterator@~2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/es6-iterator/-/es6-iterator-2.0.3.tgz#a7de889141a05a94b0854403b2d0a0fbfa98f3b7" + integrity sha1-p96IkUGgWpSwhUQDstCg+/qY87c= + dependencies: + d "1" + es5-ext "^0.10.35" + es6-symbol "^3.1.1" + +es6-map@^0.1.5: + version "0.1.5" + resolved "https://registry.yarnpkg.com/es6-map/-/es6-map-0.1.5.tgz#9136e0503dcc06a301690f0bb14ff4e364e949f0" + integrity sha1-kTbgUD3MBqMBaQ8LsU/042TpSfA= + dependencies: + d "1" + es5-ext "~0.10.14" + es6-iterator "~2.0.1" + es6-set "~0.1.5" + es6-symbol "~3.1.1" + event-emitter "~0.3.5" es6-promise@3.2.1: version "3.2.1" resolved "https://registry.yarnpkg.com/es6-promise/-/es6-promise-3.2.1.tgz#ec56233868032909207170c39448e24449dd1fc4" + integrity sha1-7FYjOGgDKQkgcXDDlEjiREndH8Q= + +es6-set@~0.1.5: + version "0.1.5" + resolved "https://registry.yarnpkg.com/es6-set/-/es6-set-0.1.5.tgz#d2b3ec5d4d800ced818db538d28974db0a73ccb1" + integrity sha1-0rPsXU2ADO2BjbU40ol02wpzzLE= + dependencies: + d "1" + es5-ext "~0.10.14" + es6-iterator "~2.0.1" + es6-symbol "3.1.1" + event-emitter "~0.3.5" + +es6-symbol@3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/es6-symbol/-/es6-symbol-3.1.1.tgz#bf00ef4fdab6ba1b46ecb7b629b4c7ed5715cc77" + integrity sha1-vwDvT9q2uhtG7Le2KbTH7VcVzHc= + dependencies: + d "1" + es5-ext "~0.10.14" + +es6-symbol@^3.1.1, es6-symbol@~3.1.1, es6-symbol@~3.1.3: + version "3.1.3" + resolved "https://registry.yarnpkg.com/es6-symbol/-/es6-symbol-3.1.3.tgz#bad5d3c1bcdac28269f4cb331e431c78ac705d18" + integrity sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA== + dependencies: + d "^1.0.1" + ext "^1.1.2" escape-regexp-component@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/escape-regexp-component/-/escape-regexp-component-1.0.2.tgz#9c63b6d0b25ff2a88c3adbd18c5b61acc3b9faa2" + integrity sha1-nGO20LJf8qiMOtvRjFthrMO5+qI= -escape-string-regexp@1.0.5, escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: +escape-string-regexp@1.0.5, escape-string-regexp@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" - -escodegen@0.0.21: - version "0.0.21" - resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-0.0.21.tgz#53d652cfa1030388279458a5266c5ffc709c63c3" - dependencies: - esprima "~1.0.2" - estraverse "~0.0.4" - optionalDependencies: - source-map ">= 0.1.2" + integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= escodegen@^1.8.1: - version "1.9.0" - resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.9.0.tgz#9811a2f265dc1cd3894420ee3717064b632b8852" + version "1.12.1" + resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.12.1.tgz#08770602a74ac34c7a90ca9229e7d51e379abc76" + integrity sha512-Q8t2YZ+0e0pc7NRVj3B4tSQ9rim1oi4Fh46k2xhJ2qOiEwhQfdjyEQddWdj7ZFaKmU+5104vn1qrcjEPWq+bgQ== dependencies: esprima "^3.1.3" estraverse "^4.2.0" esutils "^2.0.2" optionator "^0.8.1" optionalDependencies: - source-map "~0.5.6" + source-map "~0.6.1" -eslint-scope@^3.7.1: - version "3.7.1" - resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-3.7.1.tgz#3d63c3edfda02e06e01a452ad88caacc7cdcb6e8" +eslint-scope@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.0.0.tgz#e87c8887c73e8d1ec84f1ca591645c358bfc8fb9" + integrity sha512-oYrhJW7S0bxAFDvWqzvMPRm6pcgcnWc4QnofCAqRTRfQC0JcwenzGglTtsLyIuuWFfkqDG9vz67cnttSd53djw== dependencies: esrecurse "^4.1.0" estraverse "^4.1.1" -eslint-visitor-keys@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz#3f3180fb2e291017716acb4c9d6d5b5c34a6a81d" +eslint-utils@^1.4.3: + version "1.4.3" + resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-1.4.3.tgz#74fec7c54d0776b6f67e0251040b5806564e981f" + integrity sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q== + dependencies: + eslint-visitor-keys "^1.1.0" -eslint@4.16.0: - version "4.16.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-4.16.0.tgz#934ada9e98715e1d7bbfd6f6f0519ed2fab35cc1" +eslint-visitor-keys@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.1.0.tgz#e2a82cea84ff246ad6fb57f9bde5b46621459ec2" + integrity sha512-8y9YjtM1JBJU/A9Kc+SbaOV4y29sSWckBwMHa+FGtVj5gN/sbnKDf6xJUl+8g7FAij9LVaP8C24DUiH/f/2Z9A== + +eslint@6.8.0: + version "6.8.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-6.8.0.tgz#62262d6729739f9275723824302fb227c8c93ffb" + integrity sha512-K+Iayyo2LtyYhDSYwz5D5QdWw0hCacNzyq1Y821Xna2xSJj7cijoLLYmLxTQgcgZ9mC61nryMy9S7GRbYpI5Ig== dependencies: - ajv "^5.3.0" - babel-code-frame "^6.22.0" + "@babel/code-frame" "^7.0.0" + ajv "^6.10.0" chalk "^2.1.0" - concat-stream "^1.6.0" - cross-spawn "^5.1.0" - debug "^3.1.0" - doctrine "^2.1.0" - eslint-scope "^3.7.1" - eslint-visitor-keys "^1.0.0" - espree "^3.5.2" - esquery "^1.0.0" + cross-spawn "^6.0.5" + debug "^4.0.1" + doctrine "^3.0.0" + eslint-scope "^5.0.0" + eslint-utils "^1.4.3" + eslint-visitor-keys "^1.1.0" + espree "^6.1.2" + esquery "^1.0.1" esutils "^2.0.2" - file-entry-cache "^2.0.0" + file-entry-cache "^5.0.1" functional-red-black-tree "^1.0.1" - glob "^7.1.2" - globals "^11.0.1" - ignore "^3.3.3" + glob-parent "^5.0.0" + globals "^12.1.0" + ignore "^4.0.6" + import-fresh "^3.0.0" imurmurhash "^0.1.4" - inquirer "^3.0.6" - is-resolvable "^1.0.0" - js-yaml "^3.9.1" + inquirer "^7.0.0" + is-glob "^4.0.0" + js-yaml "^3.13.1" json-stable-stringify-without-jsonify "^1.0.1" levn "^0.3.0" - lodash "^4.17.4" - minimatch "^3.0.2" + lodash "^4.17.14" + minimatch "^3.0.4" mkdirp "^0.5.1" natural-compare "^1.4.0" - optionator "^0.8.2" - path-is-inside "^1.0.2" - pluralize "^7.0.0" + optionator "^0.8.3" progress "^2.0.0" - require-uncached "^1.0.3" - semver "^5.3.0" - strip-ansi "^4.0.0" - strip-json-comments "~2.0.1" - table "^4.0.1" - text-table "~0.2.0" - -espree@^3.5.2: - version "3.5.2" - resolved "https://registry.yarnpkg.com/espree/-/espree-3.5.2.tgz#756ada8b979e9dcfcdb30aad8d1a9304a905e1ca" - dependencies: - acorn "^5.2.1" - acorn-jsx "^3.0.0" - -esprima@1.0.x, esprima@~1.0.2: - version "1.0.4" - resolved "https://registry.yarnpkg.com/esprima/-/esprima-1.0.4.tgz#9f557e08fc3b4d26ece9dd34f8fbf476b62585ad" + regexpp "^2.0.1" + semver "^6.1.2" + strip-ansi "^5.2.0" + strip-json-comments "^3.0.1" + table "^5.2.3" + text-table "^0.2.0" + v8-compile-cache "^2.0.3" + +espree@^6.1.2: + version "6.1.2" + resolved "https://registry.yarnpkg.com/espree/-/espree-6.1.2.tgz#6c272650932b4f91c3714e5e7b5f5e2ecf47262d" + integrity sha512-2iUPuuPP+yW1PZaMSDM9eyVf8D5P0Hi8h83YtZ5bPc/zHYjII5khoixIUTMO794NOY8F/ThF1Bo8ncZILarUTA== + dependencies: + acorn "^7.1.0" + acorn-jsx "^5.1.0" + eslint-visitor-keys "^1.1.0" esprima@1.2.2: version "1.2.2" resolved "https://registry.yarnpkg.com/esprima/-/esprima-1.2.2.tgz#76a0fd66fcfe154fd292667dc264019750b1657b" + integrity sha1-dqD9Zvz+FU/SkmZ9wmQBl1CxZXs= esprima@^3.1.3: version "3.1.3" resolved "https://registry.yarnpkg.com/esprima/-/esprima-3.1.3.tgz#fdca51cee6133895e3c88d535ce49dbff62a4633" + integrity sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM= esprima@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.0.tgz#4499eddcd1110e0b218bacf2fa7f7f59f55ca804" + version "4.0.1" + resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" + integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== -esquery@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.0.0.tgz#cfba8b57d7fba93f17298a8a006a04cda13d80fa" +esquery@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.0.1.tgz#406c51658b1f5991a5f9b62b1dc25b00e3e5c708" + integrity sha512-SmiyZ5zIWH9VM+SRUReLS5Q8a7GxtRdxEBVZpm98rJM7Sb+A9DVCndXfkeFUd3byderg+EbDkfnevfCwynWaNA== dependencies: estraverse "^4.0.0" esrecurse@^4.1.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.2.0.tgz#fa9568d98d3823f9a41d91e902dcab9ea6e5b163" + version "4.2.1" + resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.2.1.tgz#007a3b9fdbc2b3bb87e4879ea19c92fdbd3942cf" + integrity sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ== dependencies: estraverse "^4.1.0" - object-assign "^4.0.1" estraverse@^4.0.0, estraverse@^4.1.0, estraverse@^4.1.1, estraverse@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.2.0.tgz#0dee3fed31fcd469618ce7342099fc1afa0bdb13" - -estraverse@~0.0.4: - version "0.0.4" - resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-0.0.4.tgz#01a0932dfee574684a598af5a67c3bf9b6428db2" + version "4.3.0" + resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d" + integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== esutils@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b" + version "2.0.3" + resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" + integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== + +event-emitter@~0.3.5: + version "0.3.5" + resolved "https://registry.yarnpkg.com/event-emitter/-/event-emitter-0.3.5.tgz#df8c69eef1647923c7157b9ce83840610b02cc39" + integrity sha1-34xp7vFkeSPHFXuc6DhAYQsCzDk= + dependencies: + d "1" + es5-ext "~0.10.14" + +ext@^1.1.2: + version "1.4.0" + resolved "https://registry.yarnpkg.com/ext/-/ext-1.4.0.tgz#89ae7a07158f79d35517882904324077e4379244" + integrity sha512-Key5NIsUxdqKg3vIsdw9dSuXpPCQ297y6wBjL30edxwPgt2E44WcWBZey/ZvUc6sERLTxKdyCu4gZFmUbk1Q7A== + dependencies: + type "^2.0.0" extend-object@1.x.x: version "1.0.0" resolved "https://registry.yarnpkg.com/extend-object/-/extend-object-1.0.0.tgz#42514f84015d1356caf5187969dfb2bc1bda0823" + integrity sha1-QlFPhAFdE1bK9Rh5ad+yvBvaCCM= -extend@^3.0.0, extend@~3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.1.tgz#a755ea7bc1adfcc5a31ce7e762dbaadc5e636444" - -extend@~3.0.0: +extend@^3.0.0, extend@~3.0.1, extend@~3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== -external-editor@^2.0.4: - version "2.1.0" - resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-2.1.0.tgz#3d026a21b7f95b5726387d4200ac160d372c3b48" +external-editor@^3.0.3: + version "3.1.0" + resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-3.1.0.tgz#cb03f740befae03ea4d283caed2741a83f335495" + integrity sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew== dependencies: - chardet "^0.4.0" - iconv-lite "^0.4.17" + chardet "^0.7.0" + iconv-lite "^0.4.24" tmp "^0.0.33" extsprintf@1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.2.0.tgz#5ad946c22f5b32ba7f8cd7426711c6e8a3fc2529" + integrity sha1-WtlGwi9bMrp/jNdCZxHG6KP8JSk= extsprintf@1.3.0: version "1.3.0" @@ -1079,71 +1351,85 @@ extsprintf@^1.2.0: integrity sha1-4mifjzVvrWLMplo6kcXfX5VRaS8= fast-deep-equal@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-1.0.0.tgz#96256a3bc975595eb36d82e9929d060d893439ff" + version "1.1.0" + resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz#c053477817c86b51daa853c81e059b733d023614" + integrity sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ= + +fast-deep-equal@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz#7b05218ddf9667bf7f370bf7fdb2cb15fdd0aa49" + integrity sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk= fast-json-stable-stringify@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz#d5142c0caee6b1189f87d3a76111064f86c8bbf2" + version "2.1.0" + resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" + integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== -fast-levenshtein@~2.0.4: +fast-levenshtein@~2.0.6: version "2.0.6" resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" + integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= -figures@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/figures/-/figures-2.0.0.tgz#3ab1a2d2a62c8bfb431a0c94cb797a2fce27c962" +figures@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/figures/-/figures-3.1.0.tgz#4b198dd07d8d71530642864af2d45dd9e459c4ec" + integrity sha512-ravh8VRXqHuMvZt/d8GblBeqDMkdJMBdv/2KntFH+ra5MXkO7nxNKpzQ3n6QD/2da1kH0aWmNISdvhM7gl2gVg== dependencies: escape-string-regexp "^1.0.5" -file-entry-cache@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-2.0.0.tgz#c392990c3e684783d838b8c84a45d8a048458361" +file-entry-cache@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-5.0.1.tgz#ca0f6efa6dd3d561333fb14515065c2fafdf439c" + integrity sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g== dependencies: - flat-cache "^1.2.1" - object-assign "^4.0.1" + flat-cache "^2.0.1" -flat-cache@^1.2.1: - version "1.3.0" - resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-1.3.0.tgz#d3030b32b38154f4e3b7e9c709f490f7ef97c481" +find-up@3.0.0, find-up@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" + integrity sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg== + dependencies: + locate-path "^3.0.0" + +flat-cache@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-2.0.1.tgz#5d296d6f04bda44a4630a301413bdbc2ec085ec0" + integrity sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA== + dependencies: + flatted "^2.0.0" + rimraf "2.6.3" + write "1.0.3" + +flat@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/flat/-/flat-4.1.0.tgz#090bec8b05e39cba309747f1d588f04dbaf98db2" + integrity sha512-Px/TiLIznH7gEDlPXcUD4KnBusa6kR6ayRUVcnEAbreRIuhkqow/mun59BuRXwoYk7ZQOLW1ZM05ilIvK38hFw== dependencies: - circular-json "^0.3.1" - del "^2.0.2" - graceful-fs "^4.1.2" - write "^0.2.1" + is-buffer "~2.0.3" + +flatted@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/flatted/-/flatted-2.0.1.tgz#69e57caa8f0eacbc281d2e2cb458d46fdb449e08" + integrity sha512-a1hQMktqW9Nmqr5aktAux3JMNqaucxGcjtjWnZLHX7yyPCmlSV3M54nGYbqT8K+0GhF3NBgmJCc3ma+WOgX8Jg== forever-agent@~0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" integrity sha1-+8cfDEGt6zf5bFd60e1C2P2sypE= -form-data@~2.1.1: - version "2.1.4" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.1.4.tgz#33c183acf193276ecaa98143a69e94bfee1750d1" - integrity sha1-M8GDrPGTJ27KqYFDpp6Uv+4XUNE= - dependencies: - asynckit "^0.4.0" - combined-stream "^1.0.5" - mime-types "^2.1.12" - -form-data@~2.3.1: - version "2.3.1" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.1.tgz#6fb94fbd71885306d73d15cc497fe4cc4ecd44bf" +form-data@~2.3.1, form-data@~2.3.2: + version "2.3.3" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.3.tgz#dcce52c05f644f298c6a7ab936bd724ceffbf3a6" + integrity sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ== dependencies: asynckit "^0.4.0" - combined-stream "^1.0.5" + combined-stream "^1.0.6" mime-types "^2.1.12" formidable@^1.0.17: - version "1.1.1" - resolved "https://registry.yarnpkg.com/formidable/-/formidable-1.1.1.tgz#96b8886f7c3c3508b932d6bd70c4d3a88f35f1a9" - -from2@^2.1.1: - version "2.3.0" - resolved "https://registry.yarnpkg.com/from2/-/from2-2.3.0.tgz#8bfb5502bde4a4d36cfdeea007fcca21d7e382af" - dependencies: - inherits "^2.0.1" - readable-stream "^2.0.0" + version "1.2.1" + resolved "https://registry.yarnpkg.com/formidable/-/formidable-1.2.1.tgz#70fb7ca0290ee6ff961090415f4b3df3d2082659" + integrity sha512-Fs9VRguL0gqGHkXS5GQiMCr1VhZBxz0JnJs4JmMp/2jL18Fmbzvv7vOFRU+U8TBkHEE/CX1qDXzJplVULgsLeg== fs-minipass@^1.2.5: version "1.2.7" @@ -1157,28 +1443,15 @@ fs.realpath@^1.0.0: resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= -fstream-ignore@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/fstream-ignore/-/fstream-ignore-1.0.5.tgz#9c31dae34767018fe1d249b24dada67d092da105" - integrity sha1-nDHa40dnAY/h0kmyTa2mfQktoQU= - dependencies: - fstream "^1.0.0" - inherits "2" - minimatch "^3.0.0" - -fstream@^1.0.0, fstream@^1.0.10, fstream@^1.0.12: - version "1.0.12" - resolved "https://registry.yarnpkg.com/fstream/-/fstream-1.0.12.tgz#4e8ba8ee2d48be4f7d0de505455548eae5932045" - integrity sha512-WvJ193OHa0GHPEL+AycEJgxvBEwyfRkN1vhjca23OaPVMCaLCXTd5qAu82AjTcgP1UJmytkOKb63Ypde7raDIg== - dependencies: - graceful-fs "^4.1.2" - inherits "~2.0.0" - mkdirp ">=0.5 0" - rimraf "2" +function-bind@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" + integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== functional-red-black-tree@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" + integrity sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc= gauge@~2.7.3: version "2.7.4" @@ -1194,23 +1467,32 @@ gauge@~2.7.3: strip-ansi "^3.0.1" wide-align "^1.1.0" -generate-function@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/generate-function/-/generate-function-2.0.0.tgz#6858fe7c0969b7d4e9093337647ac79f60dfbe74" - -generate-object-property@^1.1.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/generate-object-property/-/generate-object-property-1.2.0.tgz#9c0e1c40308ce804f4783618b937fa88f99d50d0" +geojson-rbush@3.x: + version "3.1.2" + resolved "https://registry.yarnpkg.com/geojson-rbush/-/geojson-rbush-3.1.2.tgz#577d6ec70ba986d4e60b741f1df5147faeb82c97" + integrity sha512-grkfdg3HIeTjwTfiJe5FT8+fGU3fABCc+vRJDBwdQz9kkLF0Sbif2gs2JUzjewwgmnvLGy9fInySDeADoNuk7w== dependencies: - is-property "^1.0.0" + "@turf/bbox" "*" + "@turf/helpers" "6.x" + "@turf/meta" "6.x" + rbush "^2.0.0" + +get-caller-file@^2.0.1: + version "2.0.5" + resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" + integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== get-func-name@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/get-func-name/-/get-func-name-2.0.0.tgz#ead774abee72e20409433a066366023dd6887a41" + integrity sha1-6td0q+5y4gQJQzoGY2YCPdaIekE= -get-stream@3.0.0, get-stream@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-3.0.0.tgz#8e943d1358dc37555054ecbe2edb05aa174ede14" +get-stream@^5.0.0, get-stream@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-5.1.0.tgz#01203cdc92597f9b909067c3e656cc1f4d3c4dc9" + integrity sha512-EXr1FOzrzTfGeL0gQdeFEvOMm2mzMOglyiOXSTpPC+iAjAKftbr3jpCMWynogwYnM+eSj9sHGc6wjIcDvYiygw== + dependencies: + pump "^3.0.0" getpass@^0.1.1: version "0.1.7" @@ -1222,13 +1504,22 @@ getpass@^0.1.1: glob-parent@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-3.1.0.tgz#9e6af6299d8d3bd2bd40430832bd113df906c5ae" + integrity sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4= dependencies: is-glob "^3.1.0" path-dirname "^1.0.0" +glob-parent@^5.0.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.0.tgz#5f4c1d1e748d30cd73ad2944b3577a81b081e8c2" + integrity sha512-qjtRgnIVmOfnKUE3NJAQEdk+lKrxfw8t5ke7SXtfMTHcjsBfOfWXCQfdb30zfDoZQ2IRSIiidmjtbHZPZ++Ihw== + dependencies: + is-glob "^4.0.1" + glob-stream@^6.1.0: version "6.1.0" resolved "https://registry.yarnpkg.com/glob-stream/-/glob-stream-6.1.0.tgz#7045c99413b3eb94888d83ab46d0b404cc7bdde4" + integrity sha1-cEXJlBOz65SIjYOrRtC0BMx73eQ= dependencies: extend "^3.0.0" glob "^7.1.1" @@ -1241,9 +1532,10 @@ glob-stream@^6.1.0: to-absolute-glob "^2.0.0" unique-stream "^2.0.2" -glob@7.1.2, glob@^7.0.3, glob@^7.1.1, glob@^7.1.2: - version "7.1.2" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.2.tgz#c19c9df9a028702d678612384a6552404c636d15" +glob@7.1.3: + version "7.1.3" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.3.tgz#3960832d3f1574108342dafd3a67b332c0969df1" + integrity sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ== dependencies: fs.realpath "^1.0.0" inflight "^1.0.4" @@ -1255,6 +1547,7 @@ glob@7.1.2, glob@^7.0.3, glob@^7.1.1, glob@^7.1.2: glob@^6.0.1: version "6.0.4" resolved "https://registry.yarnpkg.com/glob/-/glob-6.0.4.tgz#0f08860f6a155127b2fadd4f9ce24b1aab6e4d22" + integrity sha1-DwiGD2oVUSey+t1PnOJLGqtuTSI= dependencies: inflight "^1.0.4" inherits "2" @@ -1262,7 +1555,7 @@ glob@^6.0.1: once "^1.3.0" path-is-absolute "^1.0.0" -glob@^7.0.5, glob@^7.1.3: +glob@^7.0.5, glob@^7.1.1, glob@^7.1.3: version "7.1.6" resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6" integrity sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA== @@ -1274,53 +1567,39 @@ glob@^7.0.5, glob@^7.1.3: once "^1.3.0" path-is-absolute "^1.0.0" -globals@^11.0.1: - version "11.1.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-11.1.0.tgz#632644457f5f0e3ae711807183700ebf2e4633e4" +globals@^12.1.0: + version "12.3.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-12.3.0.tgz#1e564ee5c4dded2ab098b0f88f24702a3c56be13" + integrity sha512-wAfjdLgFsPZsklLJvOBUBmzYE8/CwhEqSBEMRXA3qxIiNtyqvjYurAtIfDh6chlEPUfmTY3MnZh5Hfh4q0UlIw== + dependencies: + type-fest "^0.8.1" -globby@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/globby/-/globby-5.0.0.tgz#ebd84667ca0dbb330b99bcfc68eac2bc54370e0d" - dependencies: - array-union "^1.0.1" - arrify "^1.0.0" - glob "^7.0.3" - object-assign "^4.0.1" - pify "^2.0.0" - pinkie-promise "^2.0.0" - -got@^8.0.2, got@^8.0.3: - version "8.0.3" - resolved "https://registry.yarnpkg.com/got/-/got-8.0.3.tgz#15d038e8101f89e93585d1639d9c49e8a55ae6bc" - dependencies: - "@sindresorhus/is" "^0.7.0" - cacheable-request "^2.1.1" - decompress-response "^3.3.0" +got@^10.2.1: + version "10.2.2" + resolved "https://registry.yarnpkg.com/got/-/got-10.2.2.tgz#3cd61dc07db0533c6190a2889b78e0c39c0f52d6" + integrity sha512-QibZN13xHH/mc7H5uuU2xq28xxs8moEPsJrW9AQQX0jAV4DkGdllHDVE9cxw1nntIPFk8xzzOrgJZBg194AWrg== + dependencies: + "@sindresorhus/is" "^1.0.0" + "@szmarczak/http-timer" "^4.0.0" + "@types/cacheable-request" "^6.0.1" + cacheable-lookup "^0.2.1" + cacheable-request "^7.0.0" + decompress-response "^5.0.0" duplexer3 "^0.1.4" - get-stream "^3.0.0" - into-stream "^3.1.0" - is-retry-allowed "^1.1.0" - isurl "^1.0.0-alpha5" - lowercase-keys "^1.0.0" - mimic-response "^1.0.0" - p-cancelable "^0.3.0" - p-timeout "^2.0.1" - pify "^3.0.0" - safe-buffer "^5.1.1" - timed-out "^4.0.1" - url-parse-lax "^3.0.0" - url-to-options "^1.0.1" - -graceful-fs@^4.1.2: - version "4.2.3" - resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.3.tgz#4a12ff1b60376ef09862c2093edd908328be8423" - integrity sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ== - -growl@1.10.3: - version "1.10.3" - resolved "https://registry.yarnpkg.com/growl/-/growl-1.10.3.tgz#1926ba90cf3edfe2adb4927f5880bc22c66c790f" - -grpc@^1.9.0: + get-stream "^5.0.0" + lowercase-keys "^2.0.0" + mimic-response "^2.0.0" + p-cancelable "^2.0.0" + responselike "^2.0.0" + to-readable-stream "^2.0.0" + type-fest "^0.8.0" + +growl@1.10.5: + version "1.10.5" + resolved "https://registry.yarnpkg.com/growl/-/growl-1.10.5.tgz#f2735dc2283674fa67478b10181059355c369e5e" + integrity sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA== + +grpc@^1.19.0: version "1.24.2" resolved "https://registry.yarnpkg.com/grpc/-/grpc-1.24.2.tgz#76d047bfa7b05b607cbbe3abb99065dcefe0c099" integrity sha512-EG3WH6AWMVvAiV15d+lr+K77HJ/KV/3FvMpjKjulXHbTwgDZkhkcWbwhxFAoTdxTkQvy0WFcO3Nog50QBbHZWw== @@ -1335,120 +1614,88 @@ grpc@^1.9.0: handle-thing@^1.2.5: version "1.2.5" resolved "https://registry.yarnpkg.com/handle-thing/-/handle-thing-1.2.5.tgz#fd7aad726bf1a5fd16dfc29b2f7a6601d27139c4" - -har-schema@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-1.0.5.tgz#d263135f43307c02c602afc8fe95970c0151369e" - integrity sha1-0mMTX0MwfALGAq/I/pWXDAFRNp4= + integrity sha1-/Xqtcmvxpf0W38KbL3pmAdJxOcQ= har-schema@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92" - -har-validator@~2.0.6: - version "2.0.6" - resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-2.0.6.tgz#cdcbc08188265ad119b6a5a7c8ab70eecfb5d27d" - dependencies: - chalk "^1.1.1" - commander "^2.9.0" - is-my-json-valid "^2.12.4" - pinkie-promise "^2.0.0" - -har-validator@~4.2.1: - version "4.2.1" - resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-4.2.1.tgz#33481d0f1bbff600dd203d75812a6a5fba002e2a" - integrity sha1-M0gdDxu/9gDdID11gSpqX7oALio= - dependencies: - ajv "^4.9.1" - har-schema "^1.0.5" + integrity sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI= har-validator@~5.0.3: version "5.0.3" resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-5.0.3.tgz#ba402c266194f15956ef15e0fcf242993f6a7dfd" + integrity sha1-ukAsJmGU8VlW7xXg/PJCmT9qff0= dependencies: ajv "^5.1.0" har-schema "^2.0.0" -has-ansi@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91" +har-validator@~5.1.0: + version "5.1.3" + resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-5.1.3.tgz#1ef89ebd3e4996557675eed9893110dc350fa080" + integrity sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g== dependencies: - ansi-regex "^2.0.0" + ajv "^6.5.5" + har-schema "^2.0.0" has-flag@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-2.0.0.tgz#e8207af1cc7b30d446cc70b734b5e8be18f88d51" + integrity sha1-6CB68cx7MNRGzHC3NLXovhj4jVE= -has-symbol-support-x@^1.4.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/has-symbol-support-x/-/has-symbol-support-x-1.4.1.tgz#66ec2e377e0c7d7ccedb07a3a84d77510ff1bc4c" +has-flag@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" + integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= -has-to-string-tag-x@^1.2.0: - version "1.4.1" - resolved "https://registry.yarnpkg.com/has-to-string-tag-x/-/has-to-string-tag-x-1.4.1.tgz#a045ab383d7b4b2012a00148ab0aa5f290044d4d" - dependencies: - has-symbol-support-x "^1.4.1" +has-symbols@^1.0.0, has-symbols@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.1.tgz#9f5214758a44196c406d9bd76cebf81ec2dd31e8" + integrity sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg== has-unicode@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" integrity sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk= -hawk@~3.1.3: - version "3.1.3" - resolved "https://registry.yarnpkg.com/hawk/-/hawk-3.1.3.tgz#078444bd7c1640b0fe540d2c9b73d59678e8e1c4" - integrity sha1-B4REvXwWQLD+VA0sm3PVlnjo4cQ= - dependencies: - boom "2.x.x" - cryptiles "2.x.x" - hoek "2.x.x" - sntp "1.x.x" - -hawk@~6.0.2: - version "6.0.2" - resolved "https://registry.yarnpkg.com/hawk/-/hawk-6.0.2.tgz#af4d914eb065f9b5ce4d9d11c1cb2126eecc3038" +has@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" + integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== dependencies: - boom "4.x.x" - cryptiles "3.x.x" - hoek "4.x.x" - sntp "2.x.x" + function-bind "^1.1.1" -he@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/he/-/he-1.1.1.tgz#93410fd21b009735151f8868c2f271f3427e23fd" +he@1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" + integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw== help-me@^1.0.1: version "1.1.0" resolved "https://registry.yarnpkg.com/help-me/-/help-me-1.1.0.tgz#8f2d508d0600b4a456da2f086556e7e5c056a3c6" + integrity sha1-jy1QjQYAtKRW2i8IZVbn5cBWo8Y= dependencies: callback-stream "^1.0.2" glob-stream "^6.1.0" through2 "^2.0.1" xtend "^4.0.0" -hoek@2.x.x: - version "2.16.3" - resolved "https://registry.yarnpkg.com/hoek/-/hoek-2.16.3.tgz#20bb7403d3cea398e91dc4710a8ff1b8274a25ed" - integrity sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0= - -hoek@4.x.x: - version "4.2.0" - resolved "https://registry.yarnpkg.com/hoek/-/hoek-4.2.0.tgz#72d9d0754f7fe25ca2d01ad8f8f9a9449a89526d" - honeybadger@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/honeybadger/-/honeybadger-1.2.1.tgz#ad54b4ebf07ad41038cc9b4bb4a753c11317acb4" + version "1.3.0" + resolved "https://registry.yarnpkg.com/honeybadger/-/honeybadger-1.3.0.tgz#e9f01314d52a26a6d615d65485a0a4d4e50ec8f8" + integrity sha512-LY24cmCzZ9QGInvO7FUk8p8eoVN12CwZGLhD1fkggZCJYxFVJeMK0ymlyWa3CYBIiAfQSDcdZekBVWdJTJ/IGg== dependencies: - request "~2.79.0" + request "~2.87.0" stack-trace "~0.0.9" hooks-fixed@2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/hooks-fixed/-/hooks-fixed-2.0.2.tgz#20076daa07e77d8a6106883ce3f1722e051140b0" + integrity sha512-YurCM4gQSetcrhwEtpQHhQ4M7Zo7poNGqY4kQGeBS6eZtOcT3tnNs01ThFa0jYBByAiYt1MjMjP/YApG0EnAvQ== hpack.js@^2.1.6: version "2.1.6" resolved "https://registry.yarnpkg.com/hpack.js/-/hpack.js-2.1.6.tgz#87774c0949e513f42e84575b3c45681fade2a0b2" + integrity sha1-h3dMCUnlE/QuhFdbPEVoH63ioLI= dependencies: inherits "^2.0.1" obuf "^1.0.0" @@ -1456,56 +1703,52 @@ hpack.js@^2.1.6: wbuf "^1.1.0" htmlparser2@^3.9.1: - version "3.9.2" - resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-3.9.2.tgz#1bdf87acca0f3f9e53fa4fcceb0f4b4cbb00b338" + version "3.10.1" + resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-3.10.1.tgz#bd679dc3f59897b6a34bb10749c855bb53a9392f" + integrity sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ== dependencies: - domelementtype "^1.3.0" + domelementtype "^1.3.1" domhandler "^2.3.0" domutils "^1.5.1" entities "^1.1.1" inherits "^2.0.1" - readable-stream "^2.0.2" + readable-stream "^3.1.1" -http-cache-semantics@3.8.1: - version "3.8.1" - resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-3.8.1.tgz#39b0e16add9b605bf0a9ef3d9daaf4843b4cacd2" +http-cache-semantics@^4.0.0: + version "4.0.3" + resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-4.0.3.tgz#495704773277eeef6e43f9ab2c2c7d259dda25c5" + integrity sha512-TcIMG3qeVLgDr1TEd2XvHaTnMPwYQUQMIBLy+5pLSDKYFc7UIqj39w8EGzZkaxoLv/l2K8HaI0t5AVA+YYgUew== http-deceiver@^1.2.7: version "1.2.7" resolved "https://registry.yarnpkg.com/http-deceiver/-/http-deceiver-1.2.7.tgz#fa7168944ab9a519d337cb0bec7284dc3e723d87" + integrity sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc= -http-signature@^1.0.0, http-signature@~1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1" +http-signature@^1.0.0: + version "1.3.1" + resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.3.1.tgz#739fe2f8897ba84798e3e54b699a9008a8724ff9" + integrity sha512-Y29YKEc8MQsjch/VzkUVJ+2MXd9WcR42fK5u36CZf4G8bXw2DXMTWuESiB0R6m59JAWxlPPw5/Fri/t/AyyueA== dependencies: assert-plus "^1.0.0" jsprim "^1.2.2" - sshpk "^1.7.0" + sshpk "^1.14.1" -http-signature@~1.1.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.1.1.tgz#df72e267066cd0ac67fb76adf8e134a8fbcf91bf" - integrity sha1-33LiZwZs0Kxn+3at+OE0qPvPkb8= +http-signature@~1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1" + integrity sha1-muzZJRFHcvPZW2WmCruPfBj7rOE= dependencies: - assert-plus "^0.2.0" + assert-plus "^1.0.0" jsprim "^1.2.2" sshpk "^1.7.0" -iconv-lite@^0.4.17: - version "0.4.19" - resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.19.tgz#f7468f60135f5e5dad3399c0a81be9a1603a082b" - -iconv-lite@^0.4.4: +iconv-lite@^0.4.24, iconv-lite@^0.4.4, iconv-lite@~0.4.13: version "0.4.24" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== dependencies: safer-buffer ">= 2.1.2 < 3" -iconv-lite@~0.4.13: - version "0.4.18" - resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.18.tgz#23d8656b16aae6742ac29732ea8f0336a4789cf2" - ignore-walk@^3.0.1: version "3.0.3" resolved "https://registry.yarnpkg.com/ignore-walk/-/ignore-walk-3.0.3.tgz#017e2447184bfeade7c238e4aefdd1e8f95b1e37" @@ -1513,13 +1756,23 @@ ignore-walk@^3.0.1: dependencies: minimatch "^3.0.4" -ignore@^3.3.3: - version "3.3.7" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.7.tgz#612289bfb3c220e186a58118618d5be8c1bab021" +ignore@^4.0.6: + version "4.0.6" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc" + integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg== + +import-fresh@^3.0.0: + version "3.2.1" + resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.2.1.tgz#633ff618506e793af5ac91bf48b72677e15cbe66" + integrity sha512-6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ== + dependencies: + parent-module "^1.0.0" + resolve-from "^4.0.0" imurmurhash@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" + integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= inflight@^1.0.4: version "1.0.6" @@ -1529,46 +1782,35 @@ inflight@^1.0.4: once "^1.3.0" wrappy "1" -inherits@2, inherits@~2.0.0, inherits@~2.0.3: +inherits@2, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.1, inherits@~2.0.3: version "2.0.4" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== -inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.1: - version "2.0.3" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" - ini@~1.3.0: version "1.3.5" resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927" integrity sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw== -inquirer@^3.0.6: - version "3.3.0" - resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-3.3.0.tgz#9dd2f2ad765dcab1ff0443b491442a20ba227dc9" +inquirer@^7.0.0: + version "7.0.1" + resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-7.0.1.tgz#13f7980eedc73c689feff3994b109c4e799c6ebb" + integrity sha512-V1FFQ3TIO15det8PijPLFR9M9baSlnRs9nL7zWu1MNVA2T9YVl9ZbrHJhYs7e9X8jeMZ3lr2JH/rdHFgNCBdYw== dependencies: - ansi-escapes "^3.0.0" - chalk "^2.0.0" - cli-cursor "^2.1.0" + ansi-escapes "^4.2.1" + chalk "^2.4.2" + cli-cursor "^3.1.0" cli-width "^2.0.0" - external-editor "^2.0.4" - figures "^2.0.0" - lodash "^4.3.0" - mute-stream "0.0.7" + external-editor "^3.0.3" + figures "^3.0.0" + lodash "^4.17.15" + mute-stream "0.0.8" run-async "^2.2.0" - rx-lite "^4.0.8" - rx-lite-aggregates "^4.0.8" - string-width "^2.1.0" - strip-ansi "^4.0.0" + rxjs "^6.5.3" + string-width "^4.1.0" + strip-ansi "^5.1.0" through "^2.3.6" -into-stream@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/into-stream/-/into-stream-3.1.0.tgz#96fb0a936c12babd6ff1752a17d05616abd094c6" - dependencies: - from2 "^2.1.1" - p-is-promise "^1.1.0" - invert-kv@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-1.0.0.tgz#104a8e4aaca6d3d8cd157a8ef8bfab2d7a3ffdb6" @@ -1577,13 +1819,30 @@ invert-kv@^1.0.0: is-absolute@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-absolute/-/is-absolute-1.0.0.tgz#395e1ae84b11f26ad1795e73c17378e48a301576" + integrity sha512-dOWoqflvcydARa360Gvv18DZ/gRuHKi2NU/wU5X1ZFzdYfH29nkiNZsF3mp4OJ3H4yo9Mx8A/uAGNzpzPN3yBA== dependencies: is-relative "^1.0.0" is-windows "^1.0.1" -is-extglob@^2.1.0: +is-buffer@~2.0.3: + version "2.0.4" + resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-2.0.4.tgz#3e572f23c8411a5cfd9557c849e3665e0b290623" + integrity sha512-Kq1rokWXOPXWuaMAqZiJW4XxsmD9zGx9q4aePabbn3qCRGedtH7Cm+zV8WETitMfu1wdh+Rvd6w5egwSngUX2A== + +is-callable@^1.1.4, is-callable@^1.1.5: + version "1.1.5" + resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.5.tgz#f7e46b596890456db74e7f6e976cb3273d06faab" + integrity sha512-ESKv5sMCJB2jnHTWZ3O5itG+O128Hsus4K4Qh1h2/cgn2vbgnLSVqfV46AeJA9D5EeeLa9w81KUXMtn34zhX+Q== + +is-date-object@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.2.tgz#bda736f2cd8fd06d32844e7743bfa7494c3bfd7e" + integrity sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g== + +is-extglob@^2.1.0, is-extglob@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" + integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= is-fullwidth-code-point@^1.0.0: version "1.0.0" @@ -1595,79 +1854,67 @@ is-fullwidth-code-point@^1.0.0: is-fullwidth-code-point@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" + integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8= + +is-fullwidth-code-point@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" + integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== is-glob@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a" + integrity sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo= dependencies: is-extglob "^2.1.0" -is-my-json-valid@^2.12.4: - version "2.16.1" - resolved "https://registry.yarnpkg.com/is-my-json-valid/-/is-my-json-valid-2.16.1.tgz#5a846777e2c2620d1e69104e5d3a03b1f6088f11" +is-glob@^4.0.0, is-glob@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.1.tgz#7567dbe9f2f5e2467bc77ab83c4a29482407a5dc" + integrity sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg== dependencies: - generate-function "^2.0.0" - generate-object-property "^1.1.0" - jsonpointer "^4.0.0" - xtend "^4.0.0" + is-extglob "^2.1.1" is-negated-glob@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-negated-glob/-/is-negated-glob-1.0.0.tgz#6910bca5da8c95e784b5751b976cf5a10fee36d2" - -is-object@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-object/-/is-object-1.0.1.tgz#8952688c5ec2ffd6b03ecc85e769e02903083470" - -is-path-cwd@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-1.0.0.tgz#d225ec23132e89edd38fda767472e62e65f1106d" - -is-path-in-cwd@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-path-in-cwd/-/is-path-in-cwd-1.0.0.tgz#6477582b8214d602346094567003be8a9eac04dc" - dependencies: - is-path-inside "^1.0.0" - -is-path-inside@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-1.0.1.tgz#8ef5b7de50437a3fdca6b4e865ef7aa55cb48036" - dependencies: - path-is-inside "^1.0.1" - -is-plain-obj@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" + integrity sha1-aRC8pdqMleeEtXUbl2z1oQ/uNtI= is-promise@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.1.0.tgz#79a2a9ece7f096e80f36d2b2f3bc16c1ff4bf3fa" + integrity sha1-eaKp7OfwlugPNtKy87wWwf9L8/o= -is-property@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-property/-/is-property-1.0.2.tgz#57fe1c4e48474edd65b09911f26b1cd4095dda84" +is-regex@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.5.tgz#39d589a358bf18967f726967120b8fc1aed74eae" + integrity sha512-vlKW17SNq44owv5AQR3Cq0bQPEb8+kF3UKZ2fiZNOWtztYE5i0CzCZxFDwO58qAOWtxdBRVO/V5Qin1wjCqFYQ== + dependencies: + has "^1.0.3" is-regexp@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-regexp/-/is-regexp-1.0.0.tgz#fd2d883545c46bac5a633e7b9a09e87fa2cb5069" + integrity sha1-/S2INUXEa6xaYz57mgnof6LLUGk= is-relative@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-relative/-/is-relative-1.0.0.tgz#a1bb6935ce8c5dba1e8b9754b9b2dcc020e2260d" + integrity sha512-Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA== dependencies: is-unc-path "^1.0.0" -is-resolvable@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-resolvable/-/is-resolvable-1.1.0.tgz#fb18f87ce1feb925169c9a407c19318a3206ed88" - -is-retry-allowed@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-retry-allowed/-/is-retry-allowed-1.1.0.tgz#11a060568b67339444033d0125a61a20d564fb34" - is-supported-regexp-flag@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-supported-regexp-flag/-/is-supported-regexp-flag-1.0.0.tgz#8b520c85fae7a253382d4b02652e045576e13bb8" + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-supported-regexp-flag/-/is-supported-regexp-flag-1.0.1.tgz#21ee16518d2c1dd3edd3e9a0d57e50207ac364ca" + integrity sha512-3vcJecUUrpgCqc/ca0aWeNu64UGgxcvO60K/Fkr1N6RSvfGCTU60UKN68JDmKokgba0rFFJs12EnzOQa14ubKQ== + +is-symbol@^1.0.2: + version "1.0.3" + resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.3.tgz#38e1014b9e6329be0de9d24a414fd7441ec61937" + integrity sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ== + dependencies: + has-symbols "^1.0.1" is-typedarray@~1.0.0: version "1.0.0" @@ -1677,12 +1924,14 @@ is-typedarray@~1.0.0: is-unc-path@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-unc-path/-/is-unc-path-1.0.0.tgz#d731e8898ed090a12c352ad2eaed5095ad322c9d" + integrity sha512-mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ== dependencies: unc-path-regex "^0.1.2" is-windows@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.1.tgz#310db70f742d259a16a369202b51af84233310d9" + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" + integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA== isarray@~1.0.0: version "1.0.0" @@ -1690,54 +1939,31 @@ isarray@~1.0.0: integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= isemail@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/isemail/-/isemail-3.1.0.tgz#d15156d67529d48241bc0e644df28281e21dd458" + version "3.2.0" + resolved "https://registry.yarnpkg.com/isemail/-/isemail-3.2.0.tgz#59310a021931a9fb06bbb51e155ce0b3f236832c" + integrity sha512-zKqkK+O+dGqevc93KNsbZ/TqTUFd46MwWjYOoMrjIMZ51eU7DtQG3Wmd9SQQT7i7RVnuTPEiYEWHU3MSbxC1Tg== dependencies: punycode "2.x.x" isexe@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" + integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= isstream@~0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" integrity sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo= -isurl@^1.0.0-alpha5: - version "1.0.0" - resolved "https://registry.yarnpkg.com/isurl/-/isurl-1.0.0.tgz#b27f4f49f3cdaa3ea44a0a5b7f3462e6edc39d67" - dependencies: - has-to-string-tag-x "^1.2.0" - is-object "^1.0.1" - -jison-lex@0.2.x: - version "0.2.1" - resolved "https://registry.yarnpkg.com/jison-lex/-/jison-lex-0.2.1.tgz#ac4b815e8cce5132eb12b5dfcfe8d707b8844dfe" - dependencies: - lex-parser "0.1.x" - nomnom "1.5.2" - -jison@0.4.13: - version "0.4.13" - resolved "https://registry.yarnpkg.com/jison/-/jison-0.4.13.tgz#9041707d62241367f58834532b9f19c2c36fac78" - dependencies: - JSONSelect "0.4.0" - cjson "~0.2.1" - ebnf-parser "~0.1.9" - escodegen "0.0.21" - esprima "1.0.x" - jison-lex "0.2.x" - lex-parser "~0.1.3" - nomnom "1.5.2" - -js-tokens@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b" +js-tokens@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" + integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== -js-yaml@^3.9.1: - version "3.10.0" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.10.0.tgz#2e78441646bd4682e963f22b6e92823c309c62dc" +js-yaml@3.13.1, js-yaml@^3.13.1: + version "3.13.1" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.13.1.tgz#aff151b30bfdfa8e49e05da22e7415e9dfa37847" + integrity sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw== dependencies: argparse "^1.0.7" esprima "^4.0.0" @@ -1750,10 +1976,17 @@ jsbn@~0.1.0: json-buffer@3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.0.tgz#5b1f397afc75d677bde8bcfc0e47e1f9a3d9a898" + integrity sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg= json-schema-traverse@^0.3.0: version "0.3.1" resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz#349a6d44c53a51de89b40805c5d5e59b417d3340" + integrity sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A= + +json-schema-traverse@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" + integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== json-schema@0.2.3: version "0.2.3" @@ -1763,45 +1996,35 @@ json-schema@0.2.3: json-stable-stringify-without-jsonify@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" - -json-stable-stringify@^1.0.0, json-stable-stringify@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz#9a759d39c5f2ff503fd5300646ed445f88c4f9af" - dependencies: - jsonify "~0.0.0" + integrity sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE= json-stringify-safe@~5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" integrity sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus= -json5@0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/json5/-/json5-0.4.0.tgz#054352e4c4c80c86c0923877d449de176a732c8d" - -jsonify@~0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.0.tgz#2c74b6ee41d93ca51b7b5aaee8f503631d252a73" - integrity sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM= +json5@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.1.tgz#779fb0018604fa854eacbf6252180d83543e3dbe" + integrity sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow== + dependencies: + minimist "^1.2.0" jsonpath@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/jsonpath/-/jsonpath-1.0.0.tgz#45cd9d4c4d0d6825d90bd7e40f83f1182b13dd07" + version "1.0.2" + resolved "https://registry.yarnpkg.com/jsonpath/-/jsonpath-1.0.2.tgz#e6aae681d03e9a77b4651d5d96eac5fc63b1fd13" + integrity sha512-rmzlgFZiQPc6q4HDyK8s9Qb4oxBnI5sF61y/Co5PV0lc3q2bIuRsNdueVbhoSHdKM4fxeimphOAtfz47yjCfeA== dependencies: esprima "1.2.2" - jison "0.4.13" - static-eval "2.0.0" + static-eval "2.0.2" underscore "1.7.0" -jsonpointer@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/jsonpointer/-/jsonpointer-4.0.1.tgz#4fd92cb34e0e9db3c89c8622ecf51f9b978c6cb9" - jsonwebtoken@^8.1.0: - version "8.1.1" - resolved "https://registry.yarnpkg.com/jsonwebtoken/-/jsonwebtoken-8.1.1.tgz#b04d8bb2ad847bc93238c3c92170ffdbdd1cb2ea" + version "8.5.1" + resolved "https://registry.yarnpkg.com/jsonwebtoken/-/jsonwebtoken-8.5.1.tgz#00e71e0b8df54c2121a1f26137df2280673bcc0d" + integrity sha512-XjwVfRS6jTMsqYs0EsuJ4LGxXV14zQybNd4L2r0UvbVnSF9Af8x7p5MzbJ90Ioz/9TI41/hTCvznF/loiSzn8w== dependencies: - jws "^3.1.4" + jws "^3.2.2" lodash.includes "^4.3.0" lodash.isboolean "^3.0.3" lodash.isinteger "^4.0.4" @@ -1810,7 +2033,7 @@ jsonwebtoken@^8.1.0: lodash.isstring "^4.0.1" lodash.once "^4.0.0" ms "^2.1.1" - xtend "^4.0.1" + semver "^5.6.0" jsprim@^1.2.2: version "1.4.1" @@ -1822,30 +2045,32 @@ jsprim@^1.2.2: json-schema "0.2.3" verror "1.10.0" -jwa@^1.1.4: - version "1.1.5" - resolved "https://registry.yarnpkg.com/jwa/-/jwa-1.1.5.tgz#a0552ce0220742cd52e153774a32905c30e756e5" +jwa@^1.4.1: + version "1.4.1" + resolved "https://registry.yarnpkg.com/jwa/-/jwa-1.4.1.tgz#743c32985cb9e98655530d53641b66c8645b039a" + integrity sha512-qiLX/xhEEFKUAJ6FiBMbes3w9ATzyk5W7Hvzpa/SLYdxNtng+gcurvrI7TbACjIXlsJyr05/S1oUhZrc63evQA== dependencies: - base64url "2.0.0" buffer-equal-constant-time "1.0.1" - ecdsa-sig-formatter "1.0.9" + ecdsa-sig-formatter "1.0.11" safe-buffer "^5.0.1" -jws@^3.1.4: - version "3.1.4" - resolved "https://registry.yarnpkg.com/jws/-/jws-3.1.4.tgz#f9e8b9338e8a847277d6444b1464f61880e050a2" +jws@^3.2.2: + version "3.2.2" + resolved "https://registry.yarnpkg.com/jws/-/jws-3.2.2.tgz#001099f3639468c9414000e99995fa52fb478304" + integrity sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA== dependencies: - base64url "^2.0.0" - jwa "^1.1.4" + jwa "^1.4.1" safe-buffer "^5.0.1" kareem@1.5.0: version "1.5.0" resolved "https://registry.yarnpkg.com/kareem/-/kareem-1.5.0.tgz#e3e4101d9dcfde299769daf4b4db64d895d17448" + integrity sha1-4+QQHZ3P3imXadr0tNtk2JXRdEg= -keyv@3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/keyv/-/keyv-3.0.0.tgz#44923ba39e68b12a7cec7df6c3268c031f2ef373" +keyv@^3.0.0, keyv@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/keyv/-/keyv-3.1.0.tgz#ecc228486f69991e49e9476485a5be1e8fc5c4d9" + integrity sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA== dependencies: json-buffer "3.0.0" @@ -1856,20 +2081,26 @@ lcid@^1.0.0: dependencies: invert-kv "^1.0.0" -leven@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/leven/-/leven-1.0.2.tgz#9144b6eebca5f1d0680169f1a6770dcea60b75c3" +leven@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/leven/-/leven-2.1.0.tgz#c2e7a9f772094dee9d34202ae8acce4687875580" + integrity sha1-wuep93IJTe6dNCAq6KzORoeHVYA= levn@^0.3.0, levn@~0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee" + integrity sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4= dependencies: prelude-ls "~1.1.2" type-check "~0.3.2" -lex-parser@0.1.x, lex-parser@~0.1.3: - version "0.1.4" - resolved "https://registry.yarnpkg.com/lex-parser/-/lex-parser-0.1.4.tgz#64c4f025f17fd53bfb45763faeb16f015a747550" +locate-path@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e" + integrity sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A== + dependencies: + p-locate "^3.0.0" + path-exists "^3.0.0" lodash.camelcase@^4.3.0: version "4.3.0" @@ -1884,116 +2115,152 @@ lodash.clone@^4.5.0: lodash.get@4.4.2, lodash.get@~4.4.2: version "4.4.2" resolved "https://registry.yarnpkg.com/lodash.get/-/lodash.get-4.4.2.tgz#2d177f652fa31e939b4438d5341499dfa3825e99" + integrity sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk= lodash.includes@^4.3.0: version "4.3.0" resolved "https://registry.yarnpkg.com/lodash.includes/-/lodash.includes-4.3.0.tgz#60bb98a87cb923c68ca1e51325483314849f553f" + integrity sha1-YLuYqHy5I8aMoeUTJUgzFISfVT8= lodash.isboolean@^3.0.3: version "3.0.3" resolved "https://registry.yarnpkg.com/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz#6c2e171db2a257cd96802fd43b01b20d5f5870f6" + integrity sha1-bC4XHbKiV82WgC/UOwGyDV9YcPY= lodash.isequal@^4.5.0: version "4.5.0" resolved "https://registry.yarnpkg.com/lodash.isequal/-/lodash.isequal-4.5.0.tgz#415c4478f2bcc30120c22ce10ed3226f7d3e18e0" + integrity sha1-QVxEePK8wwEgwizhDtMib30+GOA= lodash.isinteger@^4.0.4: version "4.0.4" resolved "https://registry.yarnpkg.com/lodash.isinteger/-/lodash.isinteger-4.0.4.tgz#619c0af3d03f8b04c31f5882840b77b11cd68343" + integrity sha1-YZwK89A/iwTDH1iChAt3sRzWg0M= lodash.isnumber@^3.0.3: version "3.0.3" resolved "https://registry.yarnpkg.com/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz#3ce76810c5928d03352301ac287317f11c0b1ffc" + integrity sha1-POdoEMWSjQM1IwGsKHMX8RwLH/w= lodash.isplainobject@^4.0.6: version "4.0.6" resolved "https://registry.yarnpkg.com/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz#7c526a52d89b45c45cc690b88163be0497f550cb" + integrity sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs= lodash.isstring@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/lodash.isstring/-/lodash.isstring-4.0.1.tgz#d527dfb5456eca7cc9bb95d5daeaf88ba54a5451" + integrity sha1-1SfftUVuynzJu5XV2ur4i6VKVFE= lodash.once@^4.0.0: version "4.1.1" resolved "https://registry.yarnpkg.com/lodash.once/-/lodash.once-4.1.1.tgz#0dd3971213c7c56df880977d504c88fb471a97ac" + integrity sha1-DdOXEhPHxW34gJd9UEyI+0cal6w= -lodash@^4.14.0, lodash@^4.17.4, lodash@^4.2.1, lodash@^4.3.0: - version "4.17.4" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae" - -lodash@^4.15.0: +lodash@^4.14.0, lodash@^4.17.14, lodash@^4.17.15: version "4.17.15" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.15.tgz#b447f6670a0455bbfeedd11392eff330ea097548" integrity sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A== +lodash@^4.15.0: + version "4.17.11" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.11.tgz#b39ea6229ef607ecd89e2c8df12536891cac9b8d" + integrity sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg== + +lodash@^4.17.4, lodash@^4.2.1: + version "4.17.4" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae" + integrity sha1-eCA6TRwyiuHYbcpkYONptX9AVa4= + +log-symbols@2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-2.2.0.tgz#5740e1c5d6f0dfda4ad9323b5332107ef6b4c40a" + integrity sha512-VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg== + dependencies: + chalk "^2.0.1" + long@~3: version "3.2.0" resolved "https://registry.yarnpkg.com/long/-/long-3.2.0.tgz#d821b7138ca1cb581c172990ef14db200b5c474b" integrity sha1-2CG3E4yhy1gcFymQ7xTbIAtcR0s= -lowercase-keys@1.0.0, lowercase-keys@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-1.0.0.tgz#4e3366b39e7f5457e35f1324bdf6f88d0bfc7306" +lowercase-keys@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-2.0.0.tgz#2603e78b7b4b0006cbca2fbcc8a3202558ac9479" + integrity sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA== lru-cache@^4.0.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.1.tgz#622e32e82488b49279114a4f9ecf45e7cd6bba55" + version "4.1.5" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.5.tgz#8bbe50ea85bed59bc9e33dcab8235ee9bcf443cd" + integrity sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g== dependencies: pseudomap "^1.0.2" yallist "^2.1.2" -millify@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/millify/-/millify-2.0.1.tgz#3cfde496b23904b357c620ae71409ffd8eafdd02" +martinez-polygon-clipping@^0.4.3: + version "0.4.3" + resolved "https://registry.yarnpkg.com/martinez-polygon-clipping/-/martinez-polygon-clipping-0.4.3.tgz#a3971ddf1da147104b5d0fbbf68f728bb62885c1" + integrity sha512-3ZNS0ksKhWTLsmCUkNf+/UimndZ5U2cVOS0I+IjiwF+M23E77TmeOZSmbRJbfCoQUog/vcQ42s3DXrhgOhgPqw== + dependencies: + splaytree "^0.1.4" + tinyqueue "^1.2.0" + +millify@^3.0.2: + version "3.1.3" + resolved "https://registry.yarnpkg.com/millify/-/millify-3.1.3.tgz#a10c1f78d2d052cf30e1f483dcec9c0d6e3c8f11" + integrity sha512-Duk2Esxv7m9lFMIYTbi3vqrX3EP3a3VMDAoDWCKrkafn/TIgdPPoHqQtpWIq56RDSm8zAcuF7DNsXcRjo6r/HQ== + dependencies: + yargs "^14.0.0" mime-db@1.42.0: version "1.42.0" resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.42.0.tgz#3e252907b4c7adb906597b4b65636272cf9e7bac" integrity sha512-UbfJCR4UAVRNgMpfImz05smAXK7+c+ZntjaA26ANtkXLlOe947Aag5zdIcKQULAiF9Cq4WxBi9jUs5zkA84bYQ== -mime-db@~1.30.0: - version "1.30.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.30.0.tgz#74c643da2dd9d6a45399963465b26d5ca7d71f01" - -mime-types@^2.1.12, mime-types@~2.1.7: +mime-types@^2.1.12, mime-types@~2.1.17, mime-types@~2.1.19: version "2.1.25" resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.25.tgz#39772d46621f93e2a80a856c53b86a62156a6437" integrity sha512-5KhStqB5xpTAeGqKBAMgwaYMnQik7teQN4IAzC7npDv6kzeU6prfkR67bc87J1kWMPGkoaZSq1npmexMgkmEVg== dependencies: mime-db "1.42.0" -mime-types@~2.1.17: - version "2.1.17" - resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.17.tgz#09d7a393f03e995a79f8af857b70a9e0ab16557a" - dependencies: - mime-db "~1.30.0" - mime@^1.2.11: version "1.6.0" resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" + integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== mimelib@^0.3.1: version "0.3.1" resolved "https://registry.yarnpkg.com/mimelib/-/mimelib-0.3.1.tgz#787add2415d827acb3af6ec4bca1ea9596418853" + integrity sha1-eHrdJBXYJ6yzr27EvKHqlZZBiFM= dependencies: addressparser "~1.0.1" encoding "~0.1.12" -mimic-fn@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.1.0.tgz#e667783d92e89dbd342818b5230b9d62a672ad18" +mimic-fn@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" + integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== mimic-response@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-1.0.0.tgz#df3d3652a73fded6b9b0b24146e6fd052353458e" + version "1.0.1" + resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-1.0.1.tgz#4923538878eef42063cb8a3e3b0798781487ab1b" + integrity sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ== + +mimic-response@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-2.0.0.tgz#996a51c60adf12cb8a87d7fb8ef24c2f3d5ebb46" + integrity sha512-8ilDoEapqA4uQ3TwS0jakGONKXVJqpy+RpM+3b7pLdOjghCrEiGp9SRkFbUHAmZW9vdnrENWHjaweIoTIJExSQ== minimalistic-assert@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.0.tgz#702be2dda6b37f4836bcb3f5db56641b64a1d3d3" + version "1.0.1" + resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7" + integrity sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A== -"minimatch@2 || 3", minimatch@^3.0.0, minimatch@^3.0.2, minimatch@^3.0.4: +"minimatch@2 || 3", minimatch@3.0.4, minimatch@^3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" + integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== dependencies: brace-expansion "^1.1.7" @@ -2005,6 +2272,7 @@ minimist@0.0.8: minimist@^1.1.0, minimist@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" + integrity sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ= minipass@^2.6.0, minipass@^2.8.6, minipass@^2.9.0: version "2.9.0" @@ -2021,38 +2289,51 @@ minizlib@^1.2.1: dependencies: minipass "^2.9.0" -mkdirp@0.5.1, "mkdirp@>=0.5 0", mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.1: +mkdirp@0.5.1, mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.1: version "0.5.1" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" + integrity sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM= dependencies: minimist "0.0.8" -mocha@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/mocha/-/mocha-5.0.0.tgz#cccac988b0bc5477119cba0e43de7af6d6ad8f4e" +mocha@^6.1.4: + version "6.2.2" + resolved "https://registry.yarnpkg.com/mocha/-/mocha-6.2.2.tgz#5d8987e28940caf8957a7d7664b910dc5b2fea20" + integrity sha512-FgDS9Re79yU1xz5d+C4rv1G7QagNGHZ+iXF81hO8zY35YZZcLEsJVfFolfsqKFWunATEvNzMK0r/CwWd/szO9A== dependencies: - browser-stdout "1.3.0" - commander "2.11.0" - debug "3.1.0" - diff "3.3.1" + ansi-colors "3.2.3" + browser-stdout "1.3.1" + debug "3.2.6" + diff "3.5.0" escape-string-regexp "1.0.5" - glob "7.1.2" - growl "1.10.3" - he "1.1.1" + find-up "3.0.0" + glob "7.1.3" + growl "1.10.5" + he "1.2.0" + js-yaml "3.13.1" + log-symbols "2.2.0" + minimatch "3.0.4" mkdirp "0.5.1" - supports-color "4.4.0" - -moment@^2.10.6: - version "2.19.3" - resolved "https://registry.yarnpkg.com/moment/-/moment-2.19.3.tgz#bdb99d270d6d7fda78cc0fbace855e27fe7da69f" - -moment@^2.18.1: - version "2.20.1" - resolved "https://registry.yarnpkg.com/moment/-/moment-2.20.1.tgz#d6eb1a46cbcc14a2b2f9434112c1ff8907f313fd" + ms "2.1.1" + node-environment-flags "1.0.5" + object.assign "4.1.0" + strip-json-comments "2.0.1" + supports-color "6.0.0" + which "1.3.1" + wide-align "1.1.3" + yargs "13.3.0" + yargs-parser "13.1.1" + yargs-unparser "1.6.0" + +moment@^2.10.6, moment@^2.18.1: + version "2.24.0" + resolved "https://registry.yarnpkg.com/moment/-/moment-2.24.0.tgz#0d055d53f5052aa653c9f6eb68bb5d12bf5c2b5b" + integrity sha512-bV7f+6l2QigeBBZSM/6yTNq4P2fNpSWj/0e7jQcy87A8e7o2nAfP/34/2ky5Vw4B9S446EtIhodAzkFCcR4dQg== mongodb-core@2.1.18: version "2.1.18" resolved "https://registry.yarnpkg.com/mongodb-core/-/mongodb-core-2.1.18.tgz#4c46139bdf3a1f032ded91db49f38eec01659050" + integrity sha1-TEYTm986HwMt7ZHbSfOO7AFlkFA= dependencies: bson "~1.0.4" require_optional "~1.0.0" @@ -2060,6 +2341,7 @@ mongodb-core@2.1.18: mongodb@2.2.34: version "2.2.34" resolved "https://registry.yarnpkg.com/mongodb/-/mongodb-2.2.34.tgz#a34f59bbeb61754aec432de72c3fe21526a44c1a" + integrity sha1-o09Zu+thdUrsQy3nLD/iFSakTBo= dependencies: es6-promise "3.2.1" mongodb-core "2.1.18" @@ -2068,20 +2350,22 @@ mongodb@2.2.34: mongoose-timestamp@^0.6: version "0.6.0" resolved "https://registry.yarnpkg.com/mongoose-timestamp/-/mongoose-timestamp-0.6.0.tgz#da54110ca8e6d4c2b9957a0366836c362ed272be" + integrity sha1-2lQRDKjm1MK5lXoDZoNsNi7Scr4= dependencies: defaults "^1.0.3" mongoose@^4.13.6: - version "4.13.9" - resolved "https://registry.yarnpkg.com/mongoose/-/mongoose-4.13.9.tgz#ca4d99aed6e36e87854c2295387e7ea17966cfe3" + version "4.13.20" + resolved "https://registry.yarnpkg.com/mongoose/-/mongoose-4.13.20.tgz#7d6cdc35eca23306bb7388a74a08be1dc1487a7d" + integrity sha512-lyOoXg/+S8VmW7gh816H9QcBSqLMCOXecVxflES729lb3qAU3W/AHLbCpHSIPFDJW5mXs4z5sCsjuLBa56w1Jg== dependencies: - async "2.1.4" + async "2.6.0" bson "~1.0.4" hooks-fixed "2.0.2" kareem "1.5.0" lodash.get "4.4.2" mongodb "2.2.34" - mpath "0.3.0" + mpath "0.5.1" mpromise "0.5.5" mquery "2.3.3" ms "2.0.0" @@ -2089,44 +2373,51 @@ mongoose@^4.13.6: regexp-clone "0.0.1" sliced "1.0.1" -mpath@0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/mpath/-/mpath-0.3.0.tgz#7a58f789e9b5fd3c94520634157960f26bd5ef44" +mpath@0.5.1: + version "0.5.1" + resolved "https://registry.yarnpkg.com/mpath/-/mpath-0.5.1.tgz#17131501f1ff9e6e4fbc8ffa875aa7065b5775ab" + integrity sha512-H8OVQ+QEz82sch4wbODFOz+3YQ61FYz/z3eJ5pIdbMEaUzDqA268Wd+Vt4Paw9TJfvDgVKaayC0gBzMIw2jhsg== mpromise@0.5.5: version "0.5.5" resolved "https://registry.yarnpkg.com/mpromise/-/mpromise-0.5.5.tgz#f5b24259d763acc2257b0a0c8c6d866fd51732e6" + integrity sha1-9bJCWddjrMIlewoMjG2Gb9UXMuY= -mqtt-packet@^5.4.0: - version "5.4.0" - resolved "https://registry.yarnpkg.com/mqtt-packet/-/mqtt-packet-5.4.0.tgz#387104c06aa68fbb9f8159d0c722dd5c3e45df22" +mqtt-packet@^6.0.0: + version "6.3.0" + resolved "https://registry.yarnpkg.com/mqtt-packet/-/mqtt-packet-6.3.0.tgz#ca8b387475c186dc05c52050a45d6eb0bbfccdb3" + integrity sha512-TjusSKu8uFZCmGZU8K6r4C3Ic+er/4r8rva+Mp5GQgWg/KjSdAfLK/GTucBwkdATE2Z0Da8AssI2WHzs0M9W0w== dependencies: - bl "^1.2.1" + bl "^1.2.2" inherits "^2.0.3" - process-nextick-args "^1.0.7" - safe-buffer "^5.1.0" + process-nextick-args "^2.0.0" + safe-buffer "^5.1.2" -mqtt@^2.15.1: - version "2.15.1" - resolved "https://registry.yarnpkg.com/mqtt/-/mqtt-2.15.1.tgz#86fc34e387495df60cd0ccb75cd97743344a4b28" +mqtt@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/mqtt/-/mqtt-3.0.0.tgz#7961e5f61efba3eec37d5aa9c4cbcdeb6f841380" + integrity sha512-0nKV6MAc1ibKZwaZQUTb3iIdT4NVpj541BsYrqrGBcQdQ7Jd0MnZD1/6/nj1UFdGTboK9ZEUXvkCu2nPCugHFA== dependencies: + base64-js "^1.3.0" commist "^1.0.0" - concat-stream "^1.6.0" - end-of-stream "^1.1.0" + concat-stream "^1.6.2" + end-of-stream "^1.4.1" + es6-map "^0.1.5" help-me "^1.0.1" inherits "^2.0.3" minimist "^1.2.0" - mqtt-packet "^5.4.0" - pump "^2.0.0" - readable-stream "^2.3.3" + mqtt-packet "^6.0.0" + pump "^3.0.0" + readable-stream "^2.3.6" reinterval "^1.1.0" - split2 "^2.1.1" - websocket-stream "^5.0.1" + split2 "^3.1.0" + websocket-stream "^5.1.2" xtend "^4.0.1" mquery@2.3.3: version "2.3.3" resolved "https://registry.yarnpkg.com/mquery/-/mquery-2.3.3.tgz#221412e5d4e7290ca5582dd16ea8f190a506b518" + integrity sha512-NC8L14kn+qxJbbJ1gbcEMDxF0sC3sv+1cbRReXXwVvowcwY1y9KoVZFq0ebwARibsadu8lx8nWGvm3V0Pf0ZWQ== dependencies: bluebird "3.5.0" debug "2.6.9" @@ -2138,46 +2429,49 @@ ms@2.0.0: resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= -ms@^2.1.1: +ms@2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.1.tgz#30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a" + integrity sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg== + +ms@^2.1.1: + version "2.1.2" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" + integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== muri@1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/muri/-/muri-1.3.0.tgz#aeccf3db64c56aa7c5b34e00f95b7878527a4721" + integrity sha512-FiaFwKl864onHFFUV/a2szAl7X0fxVlSKNdhTf+BM8i8goEgYut8u5P9MqQqIYwvaMxjzVESsoEm/2kfkFH1rg== -mute-stream@0.0.7: - version "0.0.7" - resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab" +mute-stream@0.0.8: + version "0.0.8" + resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.8.tgz#1630c42b2251ff81e2a283de96a5497ea92e5e0d" + integrity sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA== mv@~2: version "2.1.1" resolved "https://registry.yarnpkg.com/mv/-/mv-2.1.1.tgz#ae6ce0d6f6d5e0a4f7d893798d03c1ea9559b6a2" + integrity sha1-rmzg1vbV4KT32JN5jQPB6pVZtqI= dependencies: mkdirp "~0.5.1" ncp "~2.0.0" rimraf "~2.4.0" -nan@2.6.2: - version "2.6.2" - resolved "https://registry.yarnpkg.com/nan/-/nan-2.6.2.tgz#e4ff34e6c95fdfb5aecc08de6596f43605a7db45" - -nan@^2.13.2: +nan@2.14.0, nan@^2.13.2, nan@^2.14.0: version "2.14.0" resolved "https://registry.yarnpkg.com/nan/-/nan-2.14.0.tgz#7818f722027b2459a86f0295d434d1fc2336c52c" integrity sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg== -nan@^2.3.3: - version "2.8.0" - resolved "https://registry.yarnpkg.com/nan/-/nan-2.8.0.tgz#ed715f3fe9de02b57a5e6252d90a96675e1f085a" - natural-compare@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" + integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc= ncp@~2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/ncp/-/ncp-2.0.0.tgz#195a21d6c46e361d2fb1281ba38b91e9df7bdbb3" + integrity sha1-GVoh1sRuNh0vsSgbo4uR6d9727M= needle@^2.2.1: version "2.4.0" @@ -2189,22 +2483,43 @@ needle@^2.2.1: sax "^1.2.4" negotiator@^0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.1.tgz#2b327184e8992101177b28563fb5e7102acd0ca9" + version "0.6.2" + resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.2.tgz#feacf7ccf525a77ae9634436a64883ffeca346fb" + integrity sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw== -node-pre-gyp@0.6.36: - version "0.6.36" - resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.6.36.tgz#db604112cb74e0d477554e9b505b17abddfab786" +next-tick@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/next-tick/-/next-tick-1.0.0.tgz#ca86d1fe8828169b0120208e3dc8424b9db8342c" + integrity sha1-yobR/ogoFpsBICCOPchCS524NCw= + +nice-try@^1.0.4: + version "1.0.5" + resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" + integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ== + +node-environment-flags@1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/node-environment-flags/-/node-environment-flags-1.0.5.tgz#fa930275f5bf5dae188d6192b24b4c8bbac3d76a" + integrity sha512-VNYPRfGfmZLx0Ye20jWzHUjyTW/c+6Wq+iLhDzUI4XmhrDd9l/FozXV3F2xOaXjvp0co0+v1YSR3CMP6g+VvLQ== + dependencies: + object.getownpropertydescriptors "^2.0.3" + semver "^5.7.0" + +node-pre-gyp@0.13.0: + version "0.13.0" + resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.13.0.tgz#df9ab7b68dd6498137717838e4f92a33fc9daa42" + integrity sha512-Md1D3xnEne8b/HGVQkZZwV27WUi1ZRuZBij24TNaZwUPU3ZAFtvT6xxJGaUVillfmMKnn5oD1HoGsp2Ftik7SQ== dependencies: + detect-libc "^1.0.2" mkdirp "^0.5.1" + needle "^2.2.1" nopt "^4.0.1" + npm-packlist "^1.1.6" npmlog "^4.0.2" - rc "^1.1.7" - request "^2.81.0" + rc "^1.2.7" rimraf "^2.6.1" semver "^5.3.0" - tar "^2.2.1" - tar-pack "^3.4.0" + tar "^4" node-pre-gyp@^0.14.0: version "0.14.0" @@ -2222,13 +2537,6 @@ node-pre-gyp@^0.14.0: semver "^5.3.0" tar "^4.4.2" -nomnom@1.5.2: - version "1.5.2" - resolved "https://registry.yarnpkg.com/nomnom/-/nomnom-1.5.2.tgz#f4345448a853cfbd5c0d26320f2477ab0526fe2f" - dependencies: - colors "0.5.x" - underscore "1.1.x" - nopt@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.1.tgz#d0d4685afd5415193c8c7505602d0d17cd64474d" @@ -2237,13 +2545,10 @@ nopt@^4.0.1: abbrev "1" osenv "^0.1.4" -normalize-url@2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-2.0.1.tgz#835a9da1551fa26f70e92329069a23aa6574d7e6" - dependencies: - prepend-http "^2.0.0" - query-string "^5.0.1" - sort-keys "^2.0.0" +normalize-url@^4.1.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-4.5.0.tgz#453354087e6ca96957bd8f5baf753f5982142129" + integrity sha512-2s47yzUxdexf1OhyRi4Em83iQk0aPvwTddtFz4hnSSw9dCEsLEGf6SwIO8ss/19S9iBb5sJaOuTvTGDeZI00BQ== npm-bundled@^1.0.1: version "1.1.1" @@ -2276,8 +2581,9 @@ npmlog@^4.0.2: set-blocking "~2.0.0" nth-check@~1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-1.0.1.tgz#9929acdf628fc2c41098deab82ac580cf149aae4" + version "1.0.2" + resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-1.0.2.tgz#b2bd295c37e3dd58a3bf0700376663ba4d9cf05c" + integrity sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg== dependencies: boolbase "~1.0.0" @@ -2286,40 +2592,79 @@ number-is-nan@^1.0.0: resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" integrity sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0= -oauth-sign@~0.8.1, oauth-sign@~0.8.2: +oauth-sign@~0.8.2: version "0.8.2" resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.8.2.tgz#46a6ab7f0aead8deae9ec0565780b7d4efeb9d43" + integrity sha1-Rqarfwrq2N6unsBWV4C31O/rnUM= -object-assign@^4.0.1, object-assign@^4.1.0: +oauth-sign@~0.9.0: + version "0.9.0" + resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455" + integrity sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ== + +object-assign@^4.1.0: version "4.1.1" resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" + integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= -obuf@^1.0.0, obuf@^1.1.1: +object-inspect@^1.7.0: + version "1.7.0" + resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.7.0.tgz#f4f6bd181ad77f006b5ece60bd0b6f398ff74a67" + integrity sha512-a7pEHdh1xKIAgTySUGgLMx/xwDZskN1Ud6egYYN3EdRW4ZMPNEDUTF+hwy2LUC+Bl+SyLXANnwz/jyh/qutKUw== + +object-keys@^1.0.11, object-keys@^1.0.12, object-keys@^1.1.1: version "1.1.1" - resolved "https://registry.yarnpkg.com/obuf/-/obuf-1.1.1.tgz#104124b6c602c6796881a042541d36db43a5264e" + resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" + integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== + +object.assign@4.1.0, object.assign@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.0.tgz#968bf1100d7956bb3ca086f006f846b3bc4008da" + integrity sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w== + dependencies: + define-properties "^1.1.2" + function-bind "^1.1.1" + has-symbols "^1.0.0" + object-keys "^1.0.11" -once@^1.3.0, once@^1.3.1, once@^1.3.3, once@^1.4.0: +object.getownpropertydescriptors@^2.0.3: + version "2.1.0" + resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.0.tgz#369bf1f9592d8ab89d712dced5cb81c7c5352649" + integrity sha512-Z53Oah9A3TdLoblT7VKJaTDdXdT+lQO+cNpKVnya5JDe9uLvzu1YyY1yFDFrcxrlRgWrEFH0jJtD/IbuwjcEVg== + dependencies: + define-properties "^1.1.3" + es-abstract "^1.17.0-next.1" + +obuf@^1.0.0, obuf@^1.1.1: + version "1.1.2" + resolved "https://registry.yarnpkg.com/obuf/-/obuf-1.1.2.tgz#09bea3343d41859ebd446292d11c9d4db619084e" + integrity sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg== + +once@^1.3.0, once@^1.3.1, once@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" + integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= dependencies: wrappy "1" -onetime@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/onetime/-/onetime-2.0.1.tgz#067428230fd67443b2794b22bba528b6867962d4" +onetime@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.0.tgz#fff0f3c91617fe62bb50189636e99ac8a6df7be5" + integrity sha512-5NcSkPHhwTVFIQN+TUqXoS5+dlElHXdpAWu9I0HP20YOtIi+aZ0Ct82jdlILDxjLEAWwvm+qj1m6aEtsDVmm6Q== dependencies: - mimic-fn "^1.0.0" + mimic-fn "^2.1.0" -optionator@^0.8.1, optionator@^0.8.2: - version "0.8.2" - resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.2.tgz#364c5e409d3f4d6301d6c0b4c05bba50180aeb64" +optionator@^0.8.1, optionator@^0.8.3: + version "0.8.3" + resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.3.tgz#84fa1d036fe9d3c7e21d99884b601167ec8fb495" + integrity sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA== dependencies: deep-is "~0.1.3" - fast-levenshtein "~2.0.4" + fast-levenshtein "~2.0.6" levn "~0.3.0" prelude-ls "~1.1.2" type-check "~0.3.2" - wordwrap "~1.0.0" + word-wrap "~1.2.3" optjs@~3.2.2: version "3.2.2" @@ -2329,12 +2674,14 @@ optjs@~3.2.2: ordered-read-streams@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/ordered-read-streams/-/ordered-read-streams-1.0.1.tgz#77c0cb37c41525d64166d990ffad7ec6a0e1363e" + integrity sha1-d8DLN8QVJdZBZtmQ/61+xqDhNj4= dependencies: readable-stream "^2.0.1" -os-homedir@1.0.2, os-homedir@^1.0.0: +os-homedir@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" + integrity sha1-/7xJiDNuDoM94MFox+8VISGqf7M= os-locale@^1.4.0: version "1.4.0" @@ -2346,6 +2693,7 @@ os-locale@^1.4.0: os-tmpdir@^1.0.0, os-tmpdir@~1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" + integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ= osenv@^0.1.4: version "0.1.5" @@ -2355,89 +2703,88 @@ osenv@^0.1.4: os-homedir "^1.0.0" os-tmpdir "^1.0.0" -p-cancelable@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/p-cancelable/-/p-cancelable-0.3.0.tgz#b9e123800bcebb7ac13a479be195b507b98d30fa" +p-cancelable@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/p-cancelable/-/p-cancelable-2.0.0.tgz#4a3740f5bdaf5ed5d7c3e34882c6fb5d6b266a6e" + integrity sha512-wvPXDmbMmu2ksjkB4Z3nZWTSkJEb9lqVdMaCKpZUGJG9TMiNp9XcbG3fn9fPKjem04fJMJnXoyFPk2FmgiaiNg== -p-finally@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" +p-limit@^2.0.0: + version "2.2.2" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.2.2.tgz#61279b67721f5287aa1c13a9a7fbbc48c9291b1e" + integrity sha512-WGR+xHecKTr7EbUEhyLSh5Dube9JtdiG78ufaeLxTgpudf/20KqyMioIUZJAezlTIi6evxuoUs9YXc11cU+yzQ== + dependencies: + p-try "^2.0.0" -p-is-promise@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/p-is-promise/-/p-is-promise-1.1.0.tgz#9c9456989e9f6588017b0434d56097675c3da05e" +p-locate@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4" + integrity sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ== + dependencies: + p-limit "^2.0.0" -p-timeout@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/p-timeout/-/p-timeout-2.0.1.tgz#d8dd1979595d2dc0139e1fe46b8b646cb3cdf038" +p-try@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" + integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== + +parent-module@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" + integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g== dependencies: - p-finally "^1.0.0" + callsites "^3.0.0" parse5@^3.0.1: - version "3.0.2" - resolved "https://registry.yarnpkg.com/parse5/-/parse5-3.0.2.tgz#05eff57f0ef4577fb144a79f8b9a967a6cc44510" + version "3.0.3" + resolved "https://registry.yarnpkg.com/parse5/-/parse5-3.0.3.tgz#042f792ffdd36851551cf4e9e066b3874ab45b5c" + integrity sha512-rgO9Zg5LLLkfJF9E6CCmXlSE4UVceloys8JrFqCcHloC3usd/kJCyPDwH2SOlzix2j3xaP9sUX3e8+kvkuleAA== dependencies: - "@types/node" "^6.0.46" + "@types/node" "*" path-dirname@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/path-dirname/-/path-dirname-1.0.2.tgz#cc33d24d525e099a5388c0336c6e32b9160609e0" + integrity sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA= + +path-exists@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" + integrity sha1-zg6+ql94yxiSXqfYENe1mwEP1RU= path-is-absolute@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= -path-is-inside@^1.0.1, path-is-inside@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53" +path-key@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" + integrity sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A= -pathval@^1.0.0: +pathval@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/pathval/-/pathval-1.1.0.tgz#b942e6d4bde653005ef6b71361def8727d0645e0" - -performance-now@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-0.2.0.tgz#33ef30c5c77d4ea21c5a53869d91b56d8f2555e5" - integrity sha1-M+8wxcd9TqIcWlOGnZG1bY8lVeU= + integrity sha1-uULm1L3mUwBe9rcTYd74cn0GReA= performance-now@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" - -pify@^2.0.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" - -pify@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176" - -pinkie-promise@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa" - dependencies: - pinkie "^2.0.0" - -pinkie@^2.0.0: - version "2.0.4" - resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" - -pluralize@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/pluralize/-/pluralize-7.0.0.tgz#298b89df8b93b0221dbf421ad2b1b1ea23fc6777" + integrity sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns= prelude-ls@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" + integrity sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ= -prepend-http@^2.0.0: +process-nextick-args@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-2.0.0.tgz#e92434bfa5ea8c19f41cdfd401d741a3c819d897" + resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.0.tgz#a37d732f4271b4ab1ad070d35508e8290788ffaa" + integrity sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw== -process-nextick-args@^1.0.7, process-nextick-args@~1.0.6: +process-nextick-args@~1.0.6: version "1.0.7" resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-1.0.7.tgz#150e20b756590ad3f91093f25a4f2ad8bff30ba3" + integrity sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M= process-nextick-args@~2.0.0: version "2.0.1" @@ -2445,8 +2792,9 @@ process-nextick-args@~2.0.0: integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag== progress@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.0.tgz#8a1be366bf8fc23db2bd23f10c6fe920b4389d1f" + version "2.0.3" + resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" + integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== protobufjs@^5.0.3: version "5.0.3" @@ -2461,25 +2809,42 @@ protobufjs@^5.0.3: pseudomap@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" + integrity sha1-8FKijacOYYkX7wqKw0wa5aaChrM= + +psl@^1.1.24: + version "1.7.0" + resolved "https://registry.yarnpkg.com/psl/-/psl-1.7.0.tgz#f1c4c47a8ef97167dea5d6bbf4816d736e884a3c" + integrity sha512-5NsSEDv8zY70ScRnOTn7bK7eanl2MvFrOrS/R6x+dBt5g1ghnj9Zv90kO8GwT8gxcu2ANyFprnFYB85IogIJOQ== pump@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/pump/-/pump-2.0.1.tgz#12399add6e4cf7526d973cbc8b5ce2e2908b3909" + integrity sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA== + dependencies: + end-of-stream "^1.1.0" + once "^1.3.1" + +pump@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" + integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww== dependencies: end-of-stream "^1.1.0" once "^1.3.1" pumpify@^1.3.5: - version "1.4.0" - resolved "https://registry.yarnpkg.com/pumpify/-/pumpify-1.4.0.tgz#80b7c5df7e24153d03f0e7ac8a05a5d068bd07fb" + version "1.5.1" + resolved "https://registry.yarnpkg.com/pumpify/-/pumpify-1.5.1.tgz#36513be246ab27570b1a374a5ce278bfd74370ce" + integrity sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ== dependencies: - duplexify "^3.5.3" + duplexify "^3.6.0" inherits "^2.0.3" pump "^2.0.0" -punycode@2.x.x: - version "2.1.0" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.0.tgz#5f863edc89b96db09074bad7947bf09056ca4e7d" +punycode@2.x.x, punycode@^2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" + integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== punycode@^1.4.1: version "1.4.1" @@ -2487,35 +2852,38 @@ punycode@^1.4.1: integrity sha1-wNWmOycYgArY4esPpSachN1BhF4= q@1.x.x: - version "1.5.0" - resolved "https://registry.yarnpkg.com/q/-/q-1.5.0.tgz#dd01bac9d06d30e6f219aecb8253ee9ebdc308f1" - -qs@^6.2.1, qs@~6.5.1: - version "6.5.1" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.1.tgz#349cdf6eef89ec45c12d7d5eb3fc0c870343a6d8" + version "1.5.1" + resolved "https://registry.yarnpkg.com/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7" + integrity sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc= -qs@~6.3.0: - version "6.3.2" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.3.2.tgz#e75bd5f6e268122a2a0e0bda630b2550c166502c" +qs@^6.2.1: + version "6.9.1" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.9.1.tgz#20082c65cb78223635ab1a9eaca8875a29bf8ec9" + integrity sha512-Cxm7/SS/y/Z3MHWSxXb8lIFqgqBowP5JMlTUFyJN88y0SGQhVmZnqFK/PeuMX9LzUyWsqqhNxIyg0jlzq946yA== -qs@~6.4.0: - version "6.4.0" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.4.0.tgz#13e26d28ad6b0ffaa91312cd3bf708ed351e7233" - integrity sha1-E+JtKK1rD/qpExLNO/cI7TUecjM= +qs@~6.5.1, qs@~6.5.2: + version "6.5.2" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36" + integrity sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA== -query-string@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/query-string/-/query-string-5.0.1.tgz#6e2b86fe0e08aef682ecbe86e85834765402bd88" - dependencies: - decode-uri-component "^0.2.0" - object-assign "^4.1.0" - strict-uri-encode "^1.0.0" +quickselect@^1.0.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/quickselect/-/quickselect-1.1.1.tgz#852e412ce418f237ad5b660d70cffac647ae94c2" + integrity sha512-qN0Gqdw4c4KGPsBOQafj6yj/PA6c/L63f6CaZ/DCF/xF4Esu3jVmKLUDYxghFx8Kb/O7y9tI7x2RjTSXwdK1iQ== randomgeojson@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/randomgeojson/-/randomgeojson-1.0.0.tgz#2446f5a5cd88365365a10ebdda9fe76656fa6b1f" + integrity sha1-JEb1pc2INlNloQ692p/nZlb6ax8= + +rbush@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/rbush/-/rbush-2.0.2.tgz#bb6005c2731b7ba1d5a9a035772927d16a614605" + integrity sha512-XBOuALcTm+O/H8G90b6pzu6nX6v2zCKiFG4BJho8a+bY6AER6t8uQUZdi5bomQc0AprCWhEGa7ncAbbRap0bRA== + dependencies: + quickselect "^1.0.1" -rc@^1.1.7, rc@^1.2.7: +rc@^1.2.7: version "1.2.8" resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed" integrity sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw== @@ -2528,6 +2896,7 @@ rc@^1.1.7, rc@^1.2.7: readable-stream@2.2.7: version "2.2.7" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.2.7.tgz#07057acbe2467b22042d36f98c5ad507054e95b1" + integrity sha1-BwV6y+JGeyIELTb5jFrVBwVOlbE= dependencies: buffer-shims "~1.0.0" core-util-is "~1.0.0" @@ -2537,34 +2906,45 @@ readable-stream@2.2.7: string_decoder "~1.0.0" util-deprecate "~1.0.1" -"readable-stream@> 1.0.0 < 3.0.0", readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.5, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.2.9, readable-stream@^2.3.3: - version "2.3.3" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.3.tgz#368f2512d79f9d46fdfc71349ae7878bbc1eb95c" +"readable-stream@> 1.0.0 < 3.0.0", readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.6, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.3.3, readable-stream@^2.3.5, readable-stream@^2.3.6, readable-stream@~2.3.6: + version "2.3.6" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.6.tgz#b11c27d88b8ff1fbe070643cf94b0c79ae1b0aaf" + integrity sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw== dependencies: core-util-is "~1.0.0" inherits "~2.0.3" isarray "~1.0.0" - process-nextick-args "~1.0.6" + process-nextick-args "~2.0.0" safe-buffer "~5.1.1" - string_decoder "~1.0.3" + string_decoder "~1.1.1" util-deprecate "~1.0.1" -readable-stream@^2.0.6, readable-stream@^2.1.4: - version "2.3.6" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.6.tgz#b11c27d88b8ff1fbe070643cf94b0c79ae1b0aaf" - integrity sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw== +readable-stream@^2.2.9: + version "2.3.3" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.3.tgz#368f2512d79f9d46fdfc71349ae7878bbc1eb95c" + integrity sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ== dependencies: core-util-is "~1.0.0" inherits "~2.0.3" isarray "~1.0.0" - process-nextick-args "~2.0.0" + process-nextick-args "~1.0.6" safe-buffer "~5.1.1" - string_decoder "~1.1.1" + string_decoder "~1.0.3" util-deprecate "~1.0.1" +readable-stream@^3.0.0, readable-stream@^3.1.1: + version "3.4.0" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.4.0.tgz#a51c26754658e0a3c21dbf59163bd45ba6f447fc" + integrity sha512-jItXPLmrSR8jmTRmRWJXCnGJsfy85mB3Wd/uINMXA65yrnFo0cPClFIUWzo2najVNSl+mx7/4W8ttlLWJe99pQ== + dependencies: + inherits "^2.0.3" + string_decoder "^1.1.1" + util-deprecate "^1.0.1" + readable-stream@~2.1.0: version "2.1.5" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.1.5.tgz#66fa8b720e1438b364681f2ad1a63c618448c9d0" + integrity sha1-ZvqLcg4UOLNkaB8q0aY8YYRIydA= dependencies: buffer-shims "^1.0.0" core-util-is "~1.0.0" @@ -2577,51 +2957,60 @@ readable-stream@~2.1.0: regexp-clone@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/regexp-clone/-/regexp-clone-0.0.1.tgz#a7c2e09891fdbf38fbb10d376fb73003e68ac589" + integrity sha1-p8LgmJH9vzj7sQ03b7cwA+aKxYk= + +regexpp@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-2.0.1.tgz#8d19d31cf632482b589049f8281f93dbcba4d07f" + integrity sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw== reinterval@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/reinterval/-/reinterval-1.1.0.tgz#3361ecfa3ca6c18283380dd0bb9546f390f5ece7" + integrity sha1-M2Hs+jymwYKDOA3Qu5VG85D17Oc= remove-trailing-separator@^1.0.1: version "1.1.0" resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" + integrity sha1-wkvOKig62tW8P1jg1IJJuSN52O8= request-debug@0.x.x: version "0.2.0" resolved "https://registry.yarnpkg.com/request-debug/-/request-debug-0.2.0.tgz#fc054ec817181b04ca41a052c136f61c48abaf78" + integrity sha1-/AVOyBcYGwTKQaBSwTb2HEirr3g= dependencies: stringify-clone "^1.0.0" request@2.x.x: - version "2.81.0" - resolved "https://registry.yarnpkg.com/request/-/request-2.81.0.tgz#c6928946a0e06c5f8d6f8a9333469ffda46298a0" + version "2.88.0" + resolved "https://registry.yarnpkg.com/request/-/request-2.88.0.tgz#9c2fca4f7d35b592efe57c7f0a55e81052124fef" + integrity sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg== dependencies: - aws-sign2 "~0.6.0" - aws4 "^1.2.1" + aws-sign2 "~0.7.0" + aws4 "^1.8.0" caseless "~0.12.0" - combined-stream "~1.0.5" - extend "~3.0.0" + combined-stream "~1.0.6" + extend "~3.0.2" forever-agent "~0.6.1" - form-data "~2.1.1" - har-validator "~4.2.1" - hawk "~3.1.3" - http-signature "~1.1.0" + form-data "~2.3.2" + har-validator "~5.1.0" + http-signature "~1.2.0" is-typedarray "~1.0.0" isstream "~0.1.2" json-stringify-safe "~5.0.1" - mime-types "~2.1.7" - oauth-sign "~0.8.1" - performance-now "^0.2.0" - qs "~6.4.0" - safe-buffer "^5.0.1" - stringstream "~0.0.4" - tough-cookie "~2.3.0" + mime-types "~2.1.19" + oauth-sign "~0.9.0" + performance-now "^2.1.0" + qs "~6.5.2" + safe-buffer "^5.1.2" + tough-cookie "~2.4.3" tunnel-agent "^0.6.0" - uuid "^3.0.0" + uuid "^3.3.2" -request@^2.81.0: - version "2.83.0" - resolved "https://registry.yarnpkg.com/request/-/request-2.83.0.tgz#ca0b65da02ed62935887808e6f510381034e3356" +request@~2.87.0: + version "2.87.0" + resolved "https://registry.yarnpkg.com/request/-/request-2.87.0.tgz#32f00235cd08d482b4d0d68db93a829c0ed5756e" + integrity sha512-fcogkm7Az5bsS6Sl0sibkbhcKsnyon/jV1kF3ajGmF0c8HrttdKTPRT9hieOaQHA5HEq6r8OyWOo/o781C1tNw== dependencies: aws-sign2 "~0.7.0" aws4 "^1.6.0" @@ -2631,7 +3020,6 @@ request@^2.81.0: forever-agent "~0.6.1" form-data "~2.3.1" har-validator "~5.0.3" - hawk "~6.0.2" http-signature "~1.2.0" is-typedarray "~1.0.0" isstream "~0.1.2" @@ -2641,67 +3029,49 @@ request@^2.81.0: performance-now "^2.1.0" qs "~6.5.1" safe-buffer "^5.1.1" - stringstream "~0.0.5" tough-cookie "~2.3.3" tunnel-agent "^0.6.0" uuid "^3.1.0" -request@~2.79.0: - version "2.79.0" - resolved "https://registry.yarnpkg.com/request/-/request-2.79.0.tgz#4dfe5bf6be8b8cdc37fcf93e04b65577722710de" - dependencies: - aws-sign2 "~0.6.0" - aws4 "^1.2.1" - caseless "~0.11.0" - combined-stream "~1.0.5" - extend "~3.0.0" - forever-agent "~0.6.1" - form-data "~2.1.1" - har-validator "~2.0.6" - hawk "~3.1.3" - http-signature "~1.1.0" - is-typedarray "~1.0.0" - isstream "~0.1.2" - json-stringify-safe "~5.0.1" - mime-types "~2.1.7" - oauth-sign "~0.8.1" - qs "~6.3.0" - stringstream "~0.0.4" - tough-cookie "~2.3.0" - tunnel-agent "~0.4.1" - uuid "^3.0.0" +require-directory@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" + integrity sha1-jGStX9MNqxyXbiNE/+f3kqam30I= -require-uncached@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/require-uncached/-/require-uncached-1.0.3.tgz#4e0d56d6c9662fd31e43011c4b95aa49955421d3" - dependencies: - caller-path "^0.1.0" - resolve-from "^1.0.0" +require-main-filename@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-2.0.0.tgz#d0b329ecc7cc0f61649f62215be69af54aa8989b" + integrity sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg== require_optional@~1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/require_optional/-/require_optional-1.0.1.tgz#4cf35a4247f64ca3df8c2ef208cc494b1ca8fc2e" + integrity sha512-qhM/y57enGWHAe3v/NcwML6a3/vfESLe/sGM2dII+gEO0BpKRUkWZow/tyloNqJyN6kXSl3RyyM8Ll5D/sJP8g== dependencies: resolve-from "^2.0.0" semver "^5.1.0" -resolve-from@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-1.0.1.tgz#26cbfe935d1aeeeabb29bc3fe5aeb01e93d44226" - resolve-from@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-2.0.0.tgz#9480ab20e94ffa1d9e80a804c7ea147611966b57" + integrity sha1-lICrIOlP+h2egKgEx+oUdhGWa1c= -responselike@1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/responselike/-/responselike-1.0.2.tgz#918720ef3b631c5642be068f15ade5a46f4ba1e7" +resolve-from@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" + integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== + +responselike@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/responselike/-/responselike-2.0.0.tgz#26391bcc3174f750f9a79eacc40a12a5c42d7723" + integrity sha512-xH48u3FTB9VsZw7R+vvgaKeLKzT6jOogbQhEe/jewwnZgzPcnyWui2Av6JpoYZF/91uueC+lqhWqeURw5/qhCw== dependencies: - lowercase-keys "^1.0.0" + lowercase-keys "^2.0.0" restify-errors@^4.2.3: version "4.3.0" resolved "https://registry.yarnpkg.com/restify-errors/-/restify-errors-4.3.0.tgz#ec90f30934d7f3119135181dfc303e30be601abe" + integrity sha1-7JDzCTTX8xGRNRgd/DA+ML5gGr4= dependencies: assert-plus "^1.0.0" lodash "^4.2.1" @@ -2712,6 +3082,7 @@ restify-errors@^4.2.3: restify-errors@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/restify-errors/-/restify-errors-5.0.0.tgz#668717e100683eec6ce0d515f89ff1dbec254a8d" + integrity sha512-+vby9Kxf7qlzvbZSTIEGkIixkeHG+pVCl34dk6eKnL+ua4pCezpdLT/1/eabzPZb65ADrgoc04jeWrrF1E1pvQ== dependencies: assert-plus "^1.0.0" lodash "^4.2.1" @@ -2722,6 +3093,7 @@ restify-errors@^5.0.0: restify@^5.2.0: version "5.2.1" resolved "https://registry.yarnpkg.com/restify/-/restify-5.2.1.tgz#f04cdc1bcf763ec085b5e5a01610819b21d1f148" + integrity sha512-OZbqEvRm04Px+vXm3d31sI58HjN2qRaY6O6tA9LGRgyLZJ5+oW4qaLCdKddXfUX6MjtwAc+LLkDQmDbYUifLXA== dependencies: assert-plus "^1.0.0" bunyan "^1.8.1" @@ -2745,65 +3117,63 @@ restify@^5.2.0: optionalDependencies: dtrace-provider "^0.8.1" -restore-cursor@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-2.0.0.tgz#9f7ee287f82fd326d4fd162923d62129eee0dfaf" +restore-cursor@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-3.1.0.tgz#39f67c54b3a7a58cea5236d95cf0034239631f7e" + integrity sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA== dependencies: - onetime "^2.0.0" + onetime "^5.1.0" signal-exit "^3.0.2" -rimraf@2, rimraf@^2.5.1, rimraf@^2.6.1: +rimraf@2.6.3: + version "2.6.3" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.3.tgz#b2d104fe0d8fb27cf9e0a1cda8262dd3833c6cab" + integrity sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA== + dependencies: + glob "^7.1.3" + +rimraf@^2.6.1: version "2.7.1" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec" integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w== dependencies: glob "^7.1.3" -rimraf@^2.2.8: - version "2.6.2" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.2.tgz#2ed8150d24a16ea8651e6d6ef0f47c4158ce7a36" - dependencies: - glob "^7.0.5" - rimraf@~2.4.0: version "2.4.5" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.4.5.tgz#ee710ce5d93a8fdb856fb5ea8ff0e2d75934b2da" + integrity sha1-7nEM5dk6j9uFb7Xqj/Di11k0sto= dependencies: glob "^6.0.1" run-async@^2.2.0: version "2.3.0" resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.3.0.tgz#0371ab4ae0bdd720d4166d7dfda64ff7a445a6c0" + integrity sha1-A3GrSuC91yDUFm19/aZP96RFpsA= dependencies: is-promise "^2.1.0" -rx-lite-aggregates@^4.0.8: - version "4.0.8" - resolved "https://registry.yarnpkg.com/rx-lite-aggregates/-/rx-lite-aggregates-4.0.8.tgz#753b87a89a11c95467c4ac1626c4efc4e05c67be" +rxjs@^6.5.3: + version "6.5.4" + resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.5.4.tgz#e0777fe0d184cec7872df147f303572d414e211c" + integrity sha512-naMQXcgEo3csAEGvw/NydRA0fuS2nDZJiw1YUWFKU7aPPAPGZEsD4Iimit96qwCieH6y614MCLYwdkrWx7z/7Q== dependencies: - rx-lite "*" + tslib "^1.9.0" -rx-lite@*, rx-lite@^4.0.8: - version "4.0.8" - resolved "https://registry.yarnpkg.com/rx-lite/-/rx-lite-4.0.8.tgz#0b1e11af8bc44836f04a6407e92da42467b79444" +safe-buffer@^5.0.1, safe-buffer@^5.1.1, safe-buffer@~5.1.0, safe-buffer@~5.1.1: + version "5.1.2" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" + integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== -safe-buffer@^5.0.1, safe-buffer@^5.1.2: +safe-buffer@^5.1.2, safe-buffer@~5.2.0: version "5.2.0" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.0.tgz#b74daec49b1148f88c64b68d49b1e815c1f2f519" integrity sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg== -safe-buffer@^5.1.0, safe-buffer@^5.1.1: - version "5.1.1" - resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.1.tgz#893312af69b2123def71f57889001671eeb2c853" - -safe-buffer@~5.1.0, safe-buffer@~5.1.1: - version "5.1.2" - resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" - integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== - safe-json-stringify@^1.0.3, safe-json-stringify@~1: - version "1.0.4" - resolved "https://registry.yarnpkg.com/safe-json-stringify/-/safe-json-stringify-1.0.4.tgz#81a098f447e4bbc3ff3312a243521bc060ef5911" + version "1.2.0" + resolved "https://registry.yarnpkg.com/safe-json-stringify/-/safe-json-stringify-1.2.0.tgz#356e44bc98f1f93ce45df14bcd7c01cda86e0afd" + integrity sha512-gH8eh2nZudPQO6TytOvbxnuhYBOvDBBLW52tz5q6X58lJcd/tkmqFR+5Z9adS8aJtURSXWThWy/xJtJwixErvg== "safer-buffer@>= 2.1.2 < 3", safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0: version "2.1.2" @@ -2818,21 +3188,29 @@ sax@^1.2.4: select-hose@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/select-hose/-/select-hose-2.0.0.tgz#625d8658f865af43ec962bfc376a37359a4994ca" + integrity sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo= semver@^5.0.1: version "5.4.1" resolved "https://registry.yarnpkg.com/semver/-/semver-5.4.1.tgz#e059c09d8571f0540823733433505d3a2f00b18e" + integrity sha512-WfG/X9+oATh81XtllIo/I8gOiY9EXRdv1cQdyykeXK17YcUW3EXUAi2To4pcH6nZtJPr7ZOpM5OMyWJZm+8Rsg== -semver@^5.1.0: - version "5.5.0" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.5.0.tgz#dc4bbc7a6ca9d916dee5d43516f0092b58f7b8ab" - -semver@^5.3.0: +semver@^5.1.0, semver@^5.3.0, semver@^5.5.0, semver@^5.7.0: version "5.7.1" resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== -set-blocking@~2.0.0: +semver@^5.6.0: + version "5.7.0" + resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.0.tgz#790a7cf6fea5459bac96110b29b60412dc8ff96b" + integrity sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA== + +semver@^6.1.2: + version "6.3.0" + resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" + integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== + +set-blocking@^2.0.0, set-blocking@~2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc= @@ -2840,61 +3218,53 @@ set-blocking@~2.0.0: shebang-command@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" + integrity sha1-RKrGW2lbAzmJaMOfNj/uXer98eo= dependencies: shebang-regex "^1.0.0" shebang-regex@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" + integrity sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM= signal-exit@^3.0.0, signal-exit@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" + integrity sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0= -simple-statistics@^5.2.1: - version "5.2.1" - resolved "https://registry.yarnpkg.com/simple-statistics/-/simple-statistics-5.2.1.tgz#b1a93a336c02053e04273c7ee84606b33b907c46" +simple-statistics@^7.0.2: + version "7.0.7" + resolved "https://registry.yarnpkg.com/simple-statistics/-/simple-statistics-7.0.7.tgz#ee1c27f5c0d6ad1f9249606b13a8874eaad87447" + integrity sha512-UnBGuxYzduYZ9ab2ENug7Ht1iLJ/xw1sVHXeasrdIcNX/CIYxYmXk1QJyI/M/GF5vZ9W1MkbOgnL7fX1CSis4A== -slice-ansi@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-1.0.0.tgz#044f1a49d8842ff307aad6b505ed178bd950134d" +slice-ansi@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-2.1.0.tgz#cacd7693461a637a5788d92a7dd4fba068e81636" + integrity sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ== dependencies: + ansi-styles "^3.2.0" + astral-regex "^1.0.0" is-fullwidth-code-point "^2.0.0" sliced@0.0.5: version "0.0.5" resolved "https://registry.yarnpkg.com/sliced/-/sliced-0.0.5.tgz#5edc044ca4eb6f7816d50ba2fc63e25d8fe4707f" + integrity sha1-XtwETKTrb3gW1Qui/GPiXY/kcH8= sliced@1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/sliced/-/sliced-1.0.1.tgz#0b3a662b5d04c3177b1926bea82b03f837a2ef41" + integrity sha1-CzpmK10Ewxd7GSa+qCsD+Dei70E= -sntp@1.x.x: - version "1.0.9" - resolved "https://registry.yarnpkg.com/sntp/-/sntp-1.0.9.tgz#6541184cc90aeea6c6e7b35e2659082443c66198" - integrity sha1-ZUEYTMkK7qbG57NeJlkIJEPGYZg= - dependencies: - hoek "2.x.x" - -sntp@2.x.x: - version "2.1.0" - resolved "https://registry.yarnpkg.com/sntp/-/sntp-2.1.0.tgz#2c6cec14fedc2222739caf9b5c3d85d1cc5a2cc8" - dependencies: - hoek "4.x.x" - -sort-keys@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/sort-keys/-/sort-keys-2.0.0.tgz#658535584861ec97d730d6cf41822e1f56684128" - dependencies: - is-plain-obj "^1.0.0" - -"source-map@>= 0.1.2", source-map@~0.5.6: - version "0.5.7" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" +source-map@~0.6.1: + version "0.6.1" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" + integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== spdy-transport@^2.0.18: - version "2.0.20" - resolved "https://registry.yarnpkg.com/spdy-transport/-/spdy-transport-2.0.20.tgz#735e72054c486b2354fe89e702256004a39ace4d" + version "2.1.1" + resolved "https://registry.yarnpkg.com/spdy-transport/-/spdy-transport-2.1.1.tgz#c54815d73858aadd06ce63001e7d25fa6441623b" + integrity sha512-q7D8c148escoB3Z7ySCASadkegMmUZW8Wb/Q1u0/XBgDKMO880rLQDj8Twiew/tYi7ghemKUi/whSYOwE17f5Q== dependencies: debug "^2.6.8" detect-node "^2.0.3" @@ -2907,6 +3277,7 @@ spdy-transport@^2.0.18: spdy@^3.3.3: version "3.4.7" resolved "https://registry.yarnpkg.com/spdy/-/spdy-3.4.7.tgz#42ff41ece5cc0f99a3a6c28aabb73f5c3b03acbc" + integrity sha1-Qv9B7OXMD5mjpsKKq7c/XDsDrLw= dependencies: debug "^2.6.8" handle-thing "^1.2.5" @@ -2915,17 +3286,24 @@ spdy@^3.3.3: select-hose "^2.0.0" spdy-transport "^2.0.18" -split2@^2.1.1: - version "2.2.0" - resolved "https://registry.yarnpkg.com/split2/-/split2-2.2.0.tgz#186b2575bcf83e85b7d18465756238ee4ee42493" +splaytree@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/splaytree/-/splaytree-0.1.4.tgz#fc35475248edcc29d4938c9b67e43c6b7e55a659" + integrity sha512-D50hKrjZgBzqD3FT2Ek53f2dcDLAQT8SSGrzj3vidNH5ISRgceeGVJ2dQIthKOuayqFXfFjXheHNo4bbt9LhRQ== + +split2@^3.1.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/split2/-/split2-3.1.1.tgz#c51f18f3e06a8c4469aaab487687d8d956160bb6" + integrity sha512-emNzr1s7ruq4N+1993yht631/JH+jaj0NYBosuKmLcq+JkGQ9MmTw1RB1fGaTCzUuseRIClrlSLHRNYGwWQ58Q== dependencies: - through2 "^2.0.2" + readable-stream "^3.0.0" sprintf-js@~1.0.2: version "1.0.3" resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" + integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= -sshpk@^1.7.0: +sshpk@^1.14.1, sshpk@^1.7.0: version "1.16.1" resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.16.1.tgz#fb661c0bef29b39db40769ee39fa70093d6f6877" integrity sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg== @@ -2943,24 +3321,24 @@ sshpk@^1.7.0: stack-trace@~0.0.9: version "0.0.10" resolved "https://registry.yarnpkg.com/stack-trace/-/stack-trace-0.0.10.tgz#547c70b347e8d32b4e108ea1a2a159e5fdde19c0" + integrity sha1-VHxws0fo0ytOEI6hoqFZ5f3eGcA= -static-eval@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/static-eval/-/static-eval-2.0.0.tgz#0e821f8926847def7b4b50cda5d55c04a9b13864" +static-eval@2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/static-eval/-/static-eval-2.0.2.tgz#2d1759306b1befa688938454c546b7871f806a42" + integrity sha512-N/D219Hcr2bPjLxPiV+TQE++Tsmrady7TqAJugLy7Xk1EumfDWS/f5dtBbkRCGE7wKKXuYockQoj8Rm2/pVKyg== dependencies: escodegen "^1.8.1" stream-shift@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.0.tgz#d5c752825e5367e786f78e18e445ea223a155952" + version "1.0.1" + resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.1.tgz#d7088281559ab2778424279b0877da3c392d5a3d" + integrity sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ== stream-transform@^0.2.2: version "0.2.2" resolved "https://registry.yarnpkg.com/stream-transform/-/stream-transform-0.2.2.tgz#75867487f49528f8bf1d82499658753d02df7838" - -strict-uri-encode@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz#279b225df1d582b1f54e65addd4352e18faa0713" + integrity sha1-dYZ0h/SVKPi/HYJJllh1PQLfeDg= string-width@^1.0.1: version "1.0.2" @@ -2971,20 +3349,64 @@ string-width@^1.0.1: is-fullwidth-code-point "^1.0.0" strip-ansi "^3.0.0" -"string-width@^1.0.2 || 2", string-width@^2.1.0, string-width@^2.1.1: +"string-width@^1.0.2 || 2": version "2.1.1" resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" + integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw== dependencies: is-fullwidth-code-point "^2.0.0" strip-ansi "^4.0.0" +string-width@^3.0.0, string-width@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-3.1.0.tgz#22767be21b62af1081574306f69ac51b62203961" + integrity sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w== + dependencies: + emoji-regex "^7.0.1" + is-fullwidth-code-point "^2.0.0" + strip-ansi "^5.1.0" + +string-width@^4.1.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.0.tgz#952182c46cc7b2c313d1596e623992bd163b72b5" + integrity sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg== + dependencies: + emoji-regex "^8.0.0" + is-fullwidth-code-point "^3.0.0" + strip-ansi "^6.0.0" + +string.prototype.trimleft@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/string.prototype.trimleft/-/string.prototype.trimleft-2.1.1.tgz#9bdb8ac6abd6d602b17a4ed321870d2f8dcefc74" + integrity sha512-iu2AGd3PuP5Rp7x2kEZCrB2Nf41ehzh+goo8TV7z8/XDBbsvc6HQIlUl9RjkZ4oyrW1XM5UwlGl1oVEaDjg6Ag== + dependencies: + define-properties "^1.1.3" + function-bind "^1.1.1" + +string.prototype.trimright@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/string.prototype.trimright/-/string.prototype.trimright-2.1.1.tgz#440314b15996c866ce8a0341894d45186200c5d9" + integrity sha512-qFvWL3/+QIgZXVmJBfpHmxLB7xsUXz6HsUmP8+5dRaC3Q7oKUv9Vo6aMCRZC1smrtyECFsIT30PqBJ1gTjAs+g== + dependencies: + define-properties "^1.1.3" + function-bind "^1.1.1" + +string_decoder@^1.1.1: + version "1.3.0" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" + integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== + dependencies: + safe-buffer "~5.2.0" + string_decoder@~0.10.x: version "0.10.31" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94" + integrity sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ= string_decoder@~1.0.0, string_decoder@~1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.0.3.tgz#0fc67d7c141825de94282dd536bec6b9bce860ab" + integrity sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ== dependencies: safe-buffer "~5.1.0" @@ -2998,22 +3420,15 @@ string_decoder@~1.1.1: stringify-clone@^1.0.0: version "1.1.1" resolved "https://registry.yarnpkg.com/stringify-clone/-/stringify-clone-1.1.1.tgz#309a235fb4ecfccd7d388dbe18ba904facaf433b" + integrity sha1-MJojX7Ts/M19OI2+GLqQT6yvQzs= stringify-stream@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/stringify-stream/-/stringify-stream-1.0.5.tgz#e51407a8fdc4ca0e1c62f149868bacf5cf204050" + integrity sha1-5RQHqP3Eyg4cYvFJhous9c8gQFA= dependencies: readable-stream "~2.1.0" -stringstream@~0.0.4: - version "0.0.6" - resolved "https://registry.yarnpkg.com/stringstream/-/stringstream-0.0.6.tgz#7880225b0d4ad10e30927d167a1d6f2fd3b33a72" - integrity sha512-87GEBAkegbBcweToUrdzf3eLhWNg06FJTebl4BVJz/JgWy8CvEr9dRtX5qWphiynMSQlxxi+QqN0z5T32SLlhA== - -stringstream@~0.0.5: - version "0.0.5" - resolved "https://registry.yarnpkg.com/stringstream/-/stringstream-0.0.5.tgz#4e484cd4de5a0bbbee18e46307710a8a81621878" - strip-ansi@^3.0.0, strip-ansi@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" @@ -3024,65 +3439,66 @@ strip-ansi@^3.0.0, strip-ansi@^3.0.1: strip-ansi@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f" + integrity sha1-qEeQIusaw2iocTibY1JixQXuNo8= dependencies: ansi-regex "^3.0.0" -strip-json-comments@~2.0.1: +strip-ansi@^5.0.0, strip-ansi@^5.1.0, strip-ansi@^5.2.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-5.2.0.tgz#8c9a536feb6afc962bdfa5b104a5091c1ad9c0ae" + integrity sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA== + dependencies: + ansi-regex "^4.1.0" + +strip-ansi@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.0.tgz#0b1571dd7669ccd4f3e06e14ef1eed26225ae532" + integrity sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w== + dependencies: + ansi-regex "^5.0.0" + +strip-json-comments@2.0.1, strip-json-comments@~2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo= -supports-color@4.4.0: - version "4.4.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-4.4.0.tgz#883f7ddabc165142b2a61427f3352ded195d1a3e" - dependencies: - has-flag "^2.0.0" +strip-json-comments@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.0.1.tgz#85713975a91fb87bf1b305cca77395e40d2a64a7" + integrity sha512-VTyMAUfdm047mwKl+u79WIdrZxtFtn+nBxHeb844XBQ9uMNTuTHdx2hc5RiAJYqwTj3wc/xe5HLSdJSkJ+WfZw== -supports-color@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" +supports-color@6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-6.0.0.tgz#76cfe742cf1f41bb9b1c29ad03068c05b4c0e40a" + integrity sha512-on9Kwidc1IUQo+bQdhi8+Tijpo0e1SS6RoGo2guUwn5vdaxw8RXOF9Vb2ws+ihWOmh4JnCJOvaziZWP1VABaLg== + dependencies: + has-flag "^3.0.0" supports-color@^4.0.0: version "4.5.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-4.5.0.tgz#be7a0de484dec5c5cddf8b3d59125044912f635b" + integrity sha1-vnoN5ITexcXN34s9WRJQRJEvY1s= dependencies: has-flag "^2.0.0" -table@^4.0.1: - version "4.0.2" - resolved "https://registry.yarnpkg.com/table/-/table-4.0.2.tgz#a33447375391e766ad34d3486e6e2aedc84d2e36" +supports-color@^5.3.0: + version "5.5.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" + integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== dependencies: - ajv "^5.2.3" - ajv-keywords "^2.1.0" - chalk "^2.1.0" - lodash "^4.17.4" - slice-ansi "1.0.0" - string-width "^2.1.1" - -tar-pack@^3.4.0: - version "3.4.1" - resolved "https://registry.yarnpkg.com/tar-pack/-/tar-pack-3.4.1.tgz#e1dbc03a9b9d3ba07e896ad027317eb679a10a1f" - integrity sha512-PPRybI9+jM5tjtCbN2cxmmRU7YmqT3Zv/UDy48tAh2XRkLa9bAORtSWLkVc13+GJF+cdTh1yEnHEk3cpTaL5Kg== - dependencies: - debug "^2.2.0" - fstream "^1.0.10" - fstream-ignore "^1.0.5" - once "^1.3.3" - readable-stream "^2.1.4" - rimraf "^2.5.1" - tar "^2.2.1" - uid-number "^0.0.6" - -tar@^2.2.1: - version "2.2.2" - resolved "https://registry.yarnpkg.com/tar/-/tar-2.2.2.tgz#0ca8848562c7299b8b446ff6a4d60cdbb23edc40" - integrity sha512-FCEhQ/4rE1zYv9rYXJw/msRqsnmlje5jHP6huWeBZ704jUTy02c5AZyWujpMR1ax6mVw9NyJMfuK2CMDWVIfgA== + has-flag "^3.0.0" + +table@^5.2.3: + version "5.4.6" + resolved "https://registry.yarnpkg.com/table/-/table-5.4.6.tgz#1292d19500ce3f86053b05f0e8e7e4a3bb21079e" + integrity sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug== dependencies: - block-stream "*" - fstream "^1.0.12" - inherits "2" + ajv "^6.10.2" + lodash "^4.17.14" + slice-ansi "^2.1.0" + string-width "^3.0.0" -tar@^4.4.2: +tar@^4, tar@^4.4.2: version "4.4.13" resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.13.tgz#43b364bc52888d555298637b10d60790254ab525" integrity sha512-w2VwSrBoHa5BsSyH+KxEqeQBAllHhccyMFVHtGtdMpF4W7IRWfZjFiQceJPChOeTsSDVUpER2T8FA93pr0L+QA== @@ -3095,58 +3511,77 @@ tar@^4.4.2: safe-buffer "^5.1.2" yallist "^3.0.3" -text-table@~0.2.0: +text-table@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" + integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= -through2-filter@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/through2-filter/-/through2-filter-2.0.0.tgz#60bc55a0dacb76085db1f9dae99ab43f83d622ec" +through2-filter@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/through2-filter/-/through2-filter-3.0.0.tgz#700e786df2367c2c88cd8aa5be4cf9c1e7831254" + integrity sha512-jaRjI2WxN3W1V8/FMZ9HKIBXixtiqs3SQSX4/YGIiP3gL6djW48VoZq9tDqeCWs3MT8YY5wb/zli8VW8snY1CA== dependencies: through2 "~2.0.0" xtend "~4.0.0" -through2@^2.0.1, through2@^2.0.2, through2@~2.0.0: - version "2.0.3" - resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.3.tgz#0004569b37c7c74ba39c43f3ced78d1ad94140be" +through2@^2.0.1, through2@~2.0.0: + version "2.0.5" + resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.5.tgz#01c1e39eb31d07cb7d03a96a70823260b23132cd" + integrity sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ== dependencies: - readable-stream "^2.1.5" + readable-stream "~2.3.6" xtend "~4.0.1" through@^2.3.6: version "2.3.8" resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" + integrity sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU= -timed-out@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/timed-out/-/timed-out-4.0.1.tgz#f32eacac5a175bea25d7fab565ab3ed8741ef56f" +tinyqueue@^1.2.0: + version "1.2.3" + resolved "https://registry.yarnpkg.com/tinyqueue/-/tinyqueue-1.2.3.tgz#b6a61de23060584da29f82362e45df1ec7353f3d" + integrity sha512-Qz9RgWuO9l8lT+Y9xvbzhPT2efIUIFd69N7eF7tJ9lnQl0iLj1M7peK7IoUGZL9DJHw9XftqLreccfxcQgYLxA== tmp@^0.0.33: version "0.0.33" resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9" + integrity sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw== dependencies: os-tmpdir "~1.0.2" to-absolute-glob@^2.0.0: version "2.0.2" resolved "https://registry.yarnpkg.com/to-absolute-glob/-/to-absolute-glob-2.0.2.tgz#1865f43d9e74b0822db9f145b78cff7d0f7c849b" + integrity sha1-GGX0PZ50sIItufFFt4z/fQ98hJs= dependencies: is-absolute "^1.0.0" is-negated-glob "^1.0.0" -tough-cookie@~2.3.0: +to-readable-stream@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/to-readable-stream/-/to-readable-stream-2.1.0.tgz#82880316121bea662cdc226adb30addb50cb06e8" + integrity sha512-o3Qa6DGg1CEXshSdvWNX2sN4QHqg03SPq7U6jPXRahlQdl5dK8oXjkU/2/sGrnOZKeGV1zLSO8qPwyKklPPE7w== + +tough-cookie@~2.3.3: version "2.3.4" resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.4.tgz#ec60cee38ac675063ffc97a5c18970578ee83655" integrity sha512-TZ6TTfI5NtZnuyy/Kecv+CnoROnyXn2DN97LontgQpCwsX2XyLYCC0ENhYkehSOwAp8rTQKc/NUIF7BkQ5rKLA== dependencies: punycode "^1.4.1" -tough-cookie@~2.3.3: - version "2.3.3" - resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.3.tgz#0b618a5565b6dea90bf3425d04d55edc475a7561" +tough-cookie@~2.4.3: + version "2.4.3" + resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.4.3.tgz#53f36da3f47783b0925afa06ff9f3b165280f781" + integrity sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ== dependencies: + psl "^1.1.24" punycode "^1.4.1" +tslib@^1.9.0: + version "1.10.0" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.10.0.tgz#c3c19f95973fb0a62973fb09d90d961ee43e5c8a" + integrity sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ== + tunnel-agent@^0.6.0: version "0.6.0" resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" @@ -3154,13 +3589,10 @@ tunnel-agent@^0.6.0: dependencies: safe-buffer "^5.0.1" -tunnel-agent@~0.4.1: - version "0.4.3" - resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.4.3.tgz#6373db76909fe570e08d73583365ed828a74eeeb" - tv4@1.x.x: version "1.3.0" resolved "https://registry.yarnpkg.com/tv4/-/tv4-1.3.0.tgz#d020c846fadd50c855abb25ebaecc68fc10f7963" + integrity sha1-0CDIRvrdUMhVq7JeuuzGj8EPeWM= tweetnacl@^0.14.3, tweetnacl@~0.14.0: version "0.14.5" @@ -3170,86 +3602,101 @@ tweetnacl@^0.14.3, tweetnacl@~0.14.0: type-check@~0.3.2: version "0.3.2" resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72" + integrity sha1-WITKtRLPHTVeP7eE8wgEsrUg23I= dependencies: prelude-ls "~1.1.2" type-detect@0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-0.1.1.tgz#0ba5ec2a885640e470ea4e8505971900dac58822" + integrity sha1-C6XsKohWQORw6k6FBZcZANrFiCI= type-detect@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-1.0.0.tgz#762217cc06db258ec48908a1298e8b95121e8ea2" + integrity sha1-diIXzAbbJY7EiQihKY6LlRIejqI= + +type-detect@^4.0.0, type-detect@^4.0.5: + version "4.0.8" + resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c" + integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g== + +type-fest@^0.8.0, type-fest@^0.8.1: + version "0.8.1" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d" + integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA== + +type@^1.0.1: + version "1.2.0" + resolved "https://registry.yarnpkg.com/type/-/type-1.2.0.tgz#848dd7698dafa3e54a6c479e759c4bc3f18847a0" + integrity sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg== -type-detect@^4.0.0: - version "4.0.5" - resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.5.tgz#d70e5bc81db6de2a381bcaca0c6e0cbdc7635de2" +type@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/type/-/type-2.0.0.tgz#5f16ff6ef2eb44f260494dae271033b29c09a9c3" + integrity sha512-KBt58xCHry4Cejnc2ISQAF7QY+ORngsWfxezO68+12hKV6lQY8P/psIkcbjeHWn7MqcgciWJyCCevFMJdIXpow== typedarray@^0.0.6: version "0.0.6" resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" - -uid-number@^0.0.6: - version "0.0.6" - resolved "https://registry.yarnpkg.com/uid-number/-/uid-number-0.0.6.tgz#0ea10e8035e8eb5b8e4449f06da1c730663baa81" - integrity sha1-DqEOgDXo61uOREnwbaHHMGY7qoE= + integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c= ultron@~1.1.0: version "1.1.1" resolved "https://registry.yarnpkg.com/ultron/-/ultron-1.1.1.tgz#9fe1536a10a664a65266a1e3ccf85fd36302bc9c" + integrity sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og== unc-path-regex@^0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/unc-path-regex/-/unc-path-regex-0.1.2.tgz#e73dd3d7b0d7c5ed86fbac6b0ae7d8c6a69d50fa" - -underscore@1.1.x: - version "1.1.7" - resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.1.7.tgz#40bab84bad19d230096e8d6ef628bff055d83db0" + integrity sha1-5z3T17DXxe2G+6xrCufYxqadUPo= underscore@1.7.0: version "1.7.0" resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.7.0.tgz#6bbaf0877500d36be34ecaa584e0db9fef035209" + integrity sha1-a7rwh3UA02vjTsqlhODbn+8DUgk= unique-stream@^2.0.2: - version "2.2.1" - resolved "https://registry.yarnpkg.com/unique-stream/-/unique-stream-2.2.1.tgz#5aa003cfbe94c5ff866c4e7d668bb1c4dbadb369" + version "2.3.1" + resolved "https://registry.yarnpkg.com/unique-stream/-/unique-stream-2.3.1.tgz#c65d110e9a4adf9a6c5948b28053d9a8d04cbeac" + integrity sha512-2nY4TnBE70yoxHkDli7DMazpWiP7xMdCYqU2nBRO0UB+ZpEkGsSija7MvmvnZFUeC+mrgiUfcHSr3LmRFIg4+A== dependencies: - json-stable-stringify "^1.0.0" - through2-filter "^2.0.0" + json-stable-stringify-without-jsonify "^1.0.1" + through2-filter "^3.0.0" -url-parse-lax@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/url-parse-lax/-/url-parse-lax-3.0.0.tgz#16b5cafc07dbe3676c1b1999177823d6503acb0c" +uri-js@^4.2.2: + version "4.2.2" + resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.2.2.tgz#94c540e1ff772956e2299507c010aea6c8838eb0" + integrity sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ== dependencies: - prepend-http "^2.0.0" - -url-to-options@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/url-to-options/-/url-to-options-1.0.1.tgz#1505a03a289a48cbd7a434efbaeec5055f5633a9" + punycode "^2.1.0" -util-deprecate@~1.0.1: +util-deprecate@^1.0.1, util-deprecate@~1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= -uuid@^3.0.0: +uuid@^3.0.0, uuid@^3.1.0, uuid@^3.2.1, uuid@^3.3.2: version "3.3.3" resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.3.3.tgz#4568f0216e78760ee1dbf3a4d2cf53e224112866" integrity sha512-pW0No1RGHgzlpHJO1nsVrHKpOEIxkGg1xB+v0ZmdNH5OAeAwzAVrCnI2/6Mtx+Uys6iaylxa+D3g4j63IKKjSQ== -uuid@^3.1.0, uuid@^3.2.1: - version "3.2.1" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.2.1.tgz#12c528bb9d58d0b9265d9a2f6f0fe8be17ff1f14" +v8-compile-cache@^2.0.3: + version "2.1.0" + resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.1.0.tgz#e14de37b31a6d194f5690d67efc4e7f6fc6ab30e" + integrity sha512-usZBT3PW+LOjM25wbqIlZwPeJV+3OSz3M1k1Ws8snlW39dZyYL9lOGC5FgPVHfk0jKmjiDV8Z0mIbVQPiwFs7g== vasync@^1.6.4: version "1.6.4" resolved "https://registry.yarnpkg.com/vasync/-/vasync-1.6.4.tgz#dfe93616ad0e7ae801b332a9d88bfc5cdc8e1d1f" + integrity sha1-3+k2Fq0OeugBszKp2Iv8XNyOHR8= dependencies: verror "1.6.0" verror@1.10.0, verror@^1.8.1, verror@^1.9.0: version "1.10.0" resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400" + integrity sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA= dependencies: assert-plus "^1.0.0" core-util-is "1.0.2" @@ -3258,37 +3705,42 @@ verror@1.10.0, verror@^1.8.1, verror@^1.9.0: verror@1.6.0: version "1.6.0" resolved "https://registry.yarnpkg.com/verror/-/verror-1.6.0.tgz#7d13b27b1facc2e2da90405eb5ea6e5bdd252ea5" + integrity sha1-fROyex+swuLakEBetepuW90lLqU= dependencies: extsprintf "1.2.0" wbuf@^1.1.0, wbuf@^1.7.2: - version "1.7.2" - resolved "https://registry.yarnpkg.com/wbuf/-/wbuf-1.7.2.tgz#d697b99f1f59512df2751be42769c1580b5801fe" + version "1.7.3" + resolved "https://registry.yarnpkg.com/wbuf/-/wbuf-1.7.3.tgz#c1d8d149316d3ea852848895cb6a0bfe887b87df" + integrity sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA== dependencies: minimalistic-assert "^1.0.0" -websocket-stream@^5.0.1: - version "5.1.1" - resolved "https://registry.yarnpkg.com/websocket-stream/-/websocket-stream-5.1.1.tgz#68d23916cdf53689cff73e213fa2178dbcea6169" +websocket-stream@^5.1.2: + version "5.5.0" + resolved "https://registry.yarnpkg.com/websocket-stream/-/websocket-stream-5.5.0.tgz#9827f2846fc0d2b4dca7aab8f92980b2548b868e" + integrity sha512-EXy/zXb9kNHI07TIMz1oIUIrPZxQRA8aeJ5XYg5ihV8K4kD1DuA+FY6R96HfdIHzlSzS8HiISAfrm+vVQkZBug== dependencies: duplexify "^3.5.1" inherits "^2.0.1" readable-stream "^2.3.3" - safe-buffer "^5.1.1" + safe-buffer "^5.1.2" ws "^3.2.0" xtend "^4.0.0" -wgs84@0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/wgs84/-/wgs84-0.0.0.tgz#34fdc555917b6e57cf2a282ed043710c049cdc76" +which-module@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" + integrity sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho= -which@^1.2.9: - version "1.3.0" - resolved "https://registry.yarnpkg.com/which/-/which-1.3.0.tgz#ff04bdfc010ee547d780bec38e1ac1c2777d253a" +which@1.3.1, which@^1.2.9: + version "1.3.1" + resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" + integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== dependencies: isexe "^2.0.0" -wide-align@^1.1.0: +wide-align@1.1.3, wide-align@^1.1.0: version "1.1.3" resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.3.tgz#ae074e6bdc0c14a431e804e624549c633b000457" integrity sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA== @@ -3300,9 +3752,10 @@ window-size@^0.1.4: resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.1.4.tgz#f8e1aa1ee5a53ec5bf151ffa09742a6ad7697876" integrity sha1-+OGqHuWlPsW/FR/6CXQqatdpeHY= -wordwrap@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" +word-wrap@~1.2.3: + version "1.2.3" + resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c" + integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ== wrap-ansi@^2.0.0: version "2.1.0" @@ -3312,43 +3765,119 @@ wrap-ansi@^2.0.0: string-width "^1.0.1" strip-ansi "^3.0.1" +wrap-ansi@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-5.1.0.tgz#1fd1f67235d5b6d0fee781056001bfb694c03b09" + integrity sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q== + dependencies: + ansi-styles "^3.2.0" + string-width "^3.0.0" + strip-ansi "^5.0.0" + wrappy@1: version "1.0.2" resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= -write@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/write/-/write-0.2.1.tgz#5fc03828e264cea3fe91455476f7a3c566cb0757" +write@1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/write/-/write-1.0.3.tgz#0800e14523b923a387e415123c865616aae0f5c3" + integrity sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig== dependencies: mkdirp "^0.5.1" ws@^3.2.0: version "3.3.3" resolved "https://registry.yarnpkg.com/ws/-/ws-3.3.3.tgz#f1cf84fe2d5e901ebce94efaece785f187a228f2" + integrity sha512-nnWLa/NwZSt4KQJu51MYlCcSQ5g7INpOrOMt4XV8j4dqTXdmlUmSHQ8/oLC069ckre0fRsgfvsKwbTdtKLCDkA== dependencies: async-limiter "~1.0.0" safe-buffer "~5.1.0" ultron "~1.1.0" xtend@^4.0.0, xtend@^4.0.1, xtend@~4.0.0, xtend@~4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af" + version "4.0.2" + resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" + integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ== y18n@^3.2.0: version "3.2.1" resolved "https://registry.yarnpkg.com/y18n/-/y18n-3.2.1.tgz#6d15fba884c08679c0d77e88e7759e811e07fa41" integrity sha1-bRX7qITAhnnA136I53WegR4H+kE= +y18n@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.0.tgz#95ef94f85ecc81d007c264e190a120f0a3c8566b" + integrity sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w== + yallist@^2.1.2: version "2.1.2" resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" + integrity sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI= yallist@^3.0.0, yallist@^3.0.3: version "3.1.1" resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== +yargs-parser@13.1.1, yargs-parser@^13.1.1: + version "13.1.1" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-13.1.1.tgz#d26058532aa06d365fe091f6a1fc06b2f7e5eca0" + integrity sha512-oVAVsHz6uFrg3XQheFII8ESO2ssAf9luWuAd6Wexsu4F3OtIW0o8IribPXYrD4WC24LWtPrJlGy87y5udK+dxQ== + dependencies: + camelcase "^5.0.0" + decamelize "^1.2.0" + +yargs-parser@^15.0.0: + version "15.0.0" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-15.0.0.tgz#cdd7a97490ec836195f59f3f4dbe5ea9e8f75f08" + integrity sha512-xLTUnCMc4JhxrPEPUYD5IBR1mWCK/aT6+RJ/K29JY2y1vD+FhtgKK0AXRWvI262q3QSffAQuTouFIKUuHX89wQ== + dependencies: + camelcase "^5.0.0" + decamelize "^1.2.0" + +yargs-unparser@1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/yargs-unparser/-/yargs-unparser-1.6.0.tgz#ef25c2c769ff6bd09e4b0f9d7c605fb27846ea9f" + integrity sha512-W9tKgmSn0DpSatfri0nx52Joq5hVXgeLiqR/5G0sZNDoLZFOr/xjBUDcShCOGNsBnEMNo1KAMBkTej1Hm62HTw== + dependencies: + flat "^4.1.0" + lodash "^4.17.15" + yargs "^13.3.0" + +yargs@13.3.0, yargs@^13.3.0: + version "13.3.0" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-13.3.0.tgz#4c657a55e07e5f2cf947f8a366567c04a0dedc83" + integrity sha512-2eehun/8ALW8TLoIl7MVaRUrg+yCnenu8B4kBlRxj3GJGDKU1Og7sMXPNm1BYyM1DOJmTZ4YeN/Nwxv+8XJsUA== + dependencies: + cliui "^5.0.0" + find-up "^3.0.0" + get-caller-file "^2.0.1" + require-directory "^2.1.1" + require-main-filename "^2.0.0" + set-blocking "^2.0.0" + string-width "^3.0.0" + which-module "^2.0.0" + y18n "^4.0.0" + yargs-parser "^13.1.1" + +yargs@^14.0.0: + version "14.2.2" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-14.2.2.tgz#2769564379009ff8597cdd38fba09da9b493c4b5" + integrity sha512-/4ld+4VV5RnrynMhPZJ/ZpOCGSCeghMykZ3BhdFBDa9Wy/RH6uEGNWDJog+aUlq+9OM1CFTgtYRW5Is1Po9NOA== + dependencies: + cliui "^5.0.0" + decamelize "^1.2.0" + find-up "^3.0.0" + get-caller-file "^2.0.1" + require-directory "^2.1.1" + require-main-filename "^2.0.0" + set-blocking "^2.0.0" + string-width "^3.0.0" + which-module "^2.0.0" + y18n "^4.0.0" + yargs-parser "^15.0.0" + yargs@^3.10.0: version "3.32.0" resolved "https://registry.yarnpkg.com/yargs/-/yargs-3.32.0.tgz#03088e9ebf9e756b69751611d2a5ef591482c995" From b155db98179a886d1fb6ba5a400422a4cba0126b Mon Sep 17 00:00:00 2001 From: Umut Tas Date: Mon, 13 Jan 2020 17:00:07 +0100 Subject: [PATCH 065/337] full parameter to boxes request to get lastmeasurement values in the request --- packages/api/lib/controllers/boxesController.js | 2 ++ packages/models/src/box/box.js | 16 +++++++++++----- 2 files changed, 13 insertions(+), 5 deletions(-) diff --git a/packages/api/lib/controllers/boxesController.js b/packages/api/lib/controllers/boxesController.js index c1148163..92b6ba6c 100644 --- a/packages/api/lib/controllers/boxesController.js +++ b/packages/api/lib/controllers/boxesController.js @@ -199,6 +199,7 @@ const geoJsonStringifyReplacer = function geoJsonStringifyReplacer (key, box) { * @apiParam {String="homeEthernet","homeWifi","homeEthernetFeinstaub","homeWifiFeinstaub","luftdaten_sds011","luftdaten_sds011_dht11","luftdaten_sds011_dht22","luftdaten_sds011_bmp180","luftdaten_sds011_bme280"} [model] only return boxes with this model, allows to specify multiple separated with a comma * @apiParam {Boolean="true","false"} [classify=false] if specified, the api will classify the boxes accordingly to their last measurements. * @apiParam {Boolean="true","false"} [minimal=false] if specified, the api will only return a minimal set of box metadata consisting of [_id, updatedAt, currentLocation, exposure, name] for a fast response. + * @apiParam {Boolean="true","false"} [full=false] if true the API will return populated lastMeasurements (use this with caution for now, expensive on the database) * @apiUse ExposureFilterParam * @apiUse BBoxParam * @apiSampleRequest https://api.opensensemap.org/boxes @@ -544,6 +545,7 @@ module.exports = { { name: 'format', defaultValue: 'json', allowedValues: ['json', 'geojson'] }, { name: 'classify', defaultValue: 'false', allowedValues: ['true', 'false'] }, { name: 'minimal', defaultValue: 'false', allowedValues: ['true', 'false'] }, + { name: 'full', defaultValue: 'false', allowedValues: ['true', 'false'] }, { predef: 'bbox' }, ]), parseAndValidateTimeParamsForFindAllBoxes, diff --git a/packages/models/src/box/box.js b/packages/models/src/box/box.js index 7dcb9e9f..137f2c6e 100644 --- a/packages/models/src/box/box.js +++ b/packages/models/src/box/box.js @@ -946,13 +946,19 @@ boxSchema.statics.findBoxesMinimal = function findBoxesMinimal (opts = {}) { boxSchema.statics.findBoxesLastMeasurements = function findBoxesLastMeasurements (opts = {}) { const schema = this; - const { fromDate, toDate } = opts; + const { fromDate, toDate, full } = opts; const query = buildFindBoxesQuery(opts); - + if (!fromDate && !toDate) { - return Promise.resolve(schema.find(query, BOX_PROPS_FOR_POPULATION) - .cursor({ lean: true }) - ); + if(full) { + return Promise.resolve(schema.find(query, BOX_PROPS_FOR_POPULATION).populate(BOX_SUB_PROPS_FOR_POPULATION) + .cursor({ lean: true }) + ); + } else { + return Promise.resolve(schema.find(query, BOX_PROPS_FOR_POPULATION) + .cursor({ lean: true }) + ); + } } return Measurement.findLatestMeasurementsForSensors(fromDate, toDate) From d5734c210914141fa22940f6c60064a8e8bfdfa7 Mon Sep 17 00:00:00 2001 From: felixerdy Date: Wed, 22 Jan 2020 14:32:20 +0100 Subject: [PATCH 066/337] bump node-sketch-templater version --- packages/models/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/models/package.json b/packages/models/package.json index 77c8e630..82f3ab9f 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -6,7 +6,7 @@ "license": "MIT", "dependencies": { "@sensebox/osem-protos": "^1.1.0", - "@sensebox/sketch-templater": "^1.5.1", + "@sensebox/sketch-templater": "^1.5.2", "bcrypt": "^3.0.5", "bunyan": "^1.8.12", "config": "^3.1.0", From 6bd2d29e0bc0fdda36f5ccfacf8dbfadcb01cbbc Mon Sep 17 00:00:00 2001 From: felixerdy Date: Wed, 22 Jan 2020 15:38:05 +0100 Subject: [PATCH 067/337] make lastMeasurement of type string or object --- tests/data/findAllSchemaBoxes.js | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/tests/data/findAllSchemaBoxes.js b/tests/data/findAllSchemaBoxes.js index 176946bf..9997f9bd 100644 --- a/tests/data/findAllSchemaBoxes.js +++ b/tests/data/findAllSchemaBoxes.js @@ -45,7 +45,10 @@ module.exports = { 'type': 'string' }, 'lastMeasurement': { - 'type': 'string', + 'anyOf': [ + { 'type': 'string' }, + { 'type': 'object' } + ] } }, 'required': [ From 2273d57966a1551340ab12a09c6c6154c162d96a Mon Sep 17 00:00:00 2001 From: felixerdy Date: Wed, 22 Jan 2020 15:46:48 +0100 Subject: [PATCH 068/337] implement suggestions by @ubergesundheit --- packages/models/src/box/box.js | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/packages/models/src/box/box.js b/packages/models/src/box/box.js index 137f2c6e..4f4108de 100644 --- a/packages/models/src/box/box.js +++ b/packages/models/src/box/box.js @@ -948,17 +948,18 @@ boxSchema.statics.findBoxesLastMeasurements = function findBoxesLastMeasurements const schema = this; const { fromDate, toDate, full } = opts; const query = buildFindBoxesQuery(opts); - + if (!fromDate && !toDate) { - if(full) { - return Promise.resolve(schema.find(query, BOX_PROPS_FOR_POPULATION).populate(BOX_SUB_PROPS_FOR_POPULATION) - .cursor({ lean: true }) - ); - } else { + if (full === 'true') { return Promise.resolve(schema.find(query, BOX_PROPS_FOR_POPULATION) + .populate(BOX_SUB_PROPS_FOR_POPULATION) .cursor({ lean: true }) ); } + + return Promise.resolve(schema.find(query, BOX_PROPS_FOR_POPULATION) + .cursor({ lean: true }) + ); } return Measurement.findLatestMeasurementsForSensors(fromDate, toDate) From 9a02a5218b818fa80975cee299a23141298a3472 Mon Sep 17 00:00:00 2001 From: Gerald Pape Date: Wed, 22 Jan 2020 16:04:50 +0100 Subject: [PATCH 069/337] add dependabot config --- .dependabot/config.yml | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 .dependabot/config.yml diff --git a/.dependabot/config.yml b/.dependabot/config.yml new file mode 100644 index 00000000..130a93b5 --- /dev/null +++ b/.dependabot/config.yml @@ -0,0 +1,8 @@ +version: 1 +update_configs: + - package_manager: "javascript" + directory: "/" + update_schedule: "live" + target_branch: "development" + default_reviewers: + - "ubergesundheit" From b6d122e72bea924ec8184acd05dd2cb742397186 Mon Sep 17 00:00:00 2001 From: felixerdy Date: Mon, 3 Feb 2020 01:34:19 +0100 Subject: [PATCH 070/337] lint code --- tests/tests/006-submit-measurements-test.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/tests/tests/006-submit-measurements-test.js b/tests/tests/006-submit-measurements-test.js index 4d6c6e5d..cae31dcf 100644 --- a/tests/tests/006-submit-measurements-test.js +++ b/tests/tests/006-submit-measurements-test.js @@ -309,7 +309,8 @@ describe('submitting measurements', function () { expect(response).to.have.status(200); expect(response).to.have.header('content-type', 'application/json; charset=utf-8'); - payload.sort((a, b) => { return new Date(b.createdAt).toISOString().localeCompare(new Date(a.createdAt).toISOString()); }); + payload.sort((a, b) => { return new Date(b.createdAt).toISOString() + .localeCompare(new Date(a.createdAt).toISOString()); }); expect(response.body).lengthOf(payload.length); for (let i = 0; i < payload.length; i++) { From ae169dda74f2991a5fd00fc501c9f2b43e0fe492 Mon Sep 17 00:00:00 2001 From: felixerdy Date: Mon, 3 Feb 2020 01:51:21 +0100 Subject: [PATCH 071/337] v0.0.14 --- packages/models/CHANGELOG.md | 4 ++++ packages/models/package.json | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/packages/models/CHANGELOG.md b/packages/models/CHANGELOG.md index e7e80811..7ad1b065 100644 --- a/packages/models/CHANGELOG.md +++ b/packages/models/CHANGELOG.md @@ -2,6 +2,10 @@ ## Unreleased +## v0.0.14 +- Update @sensebox/node-sketch-templater to v1.5.2 +- Add SoundLevelMeter + ## v0.0.13 - Add BME680 Sensor - Update @sensebox/node-sketch-templater to v1.5.1 diff --git a/packages/models/package.json b/packages/models/package.json index 82f3ab9f..87c2fb2d 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -1,7 +1,7 @@ { "name": "@sensebox/opensensemap-api-models", "description": "openSenseMap data models and database connection", - "version": "0.0.13", + "version": "0.0.14", "main": "index.js", "license": "MIT", "dependencies": { From 982a7729bd52e9c15c046d3b8bdc4733a9e90ff1 Mon Sep 17 00:00:00 2001 From: Felix Erdmann Date: Wed, 5 Feb 2020 13:57:02 +0100 Subject: [PATCH 072/337] v9 (#221) * Bump config from 3.2.4 to 3.2.5 Bumps [config](https://github.com/lorenwest/node-config) from 3.2.4 to 3.2.5. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * [Security] Bump lodash from 4.17.4 to 4.17.15 (#210) Bumps [lodash](https://github.com/lodash/lodash) from 4.17.4 to 4.17.15. **This update includes security fixes.** - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.4...4.17.15) Signed-off-by: dependabot-preview[bot] * Bump got from 10.2.2 to 10.4.0 (#214) Bumps [got](https://github.com/sindresorhus/got) from 10.2.2 to 10.4.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.2.2...v10.4.0) Signed-off-by: dependabot-preview[bot] * Bump csv-parse from 4.8.3 to 4.8.5 (#211) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.3 to 4.8.5. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.3...v4.8.5) Signed-off-by: dependabot-preview[bot] * Bump uuid from 3.3.3 to 3.4.0 (#218) Bumps [uuid](https://github.com/uuidjs/uuid) from 3.3.3 to 3.4.0. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v3.3.3...v3.4.0) Signed-off-by: dependabot-preview[bot] * Bump restify-errors from 5.0.0 to 8.0.2 (#217) Bumps [restify-errors](https://github.com/restify/errors) from 5.0.0 to 8.0.2. - [Release notes](https://github.com/restify/errors/releases) - [Changelog](https://github.com/restify/errors/blob/master/CHANGELOG.md) - [Commits](https://github.com/restify/errors/compare/v5.0.0...v8.0.2) Signed-off-by: dependabot-preview[bot] * Bump mocha from 6.2.2 to 7.0.1 (#216) Bumps [mocha](https://github.com/mochajs/mocha) from 6.2.2 to 7.0.1. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v6.2.2...v7.0.1) Signed-off-by: dependabot-preview[bot] * Bump simple-statistics from 7.0.7 to 7.0.8 (#219) Bumps [simple-statistics](https://github.com/simple-statistics/simple-statistics) from 7.0.7 to 7.0.8. - [Release notes](https://github.com/simple-statistics/simple-statistics/releases) - [Changelog](https://github.com/simple-statistics/simple-statistics/blob/master/CHANGELOG.md) - [Commits](https://github.com/simple-statistics/simple-statistics/compare/v7.0.7...v7.0.8) Signed-off-by: dependabot-preview[bot] * v9 (#220) * v0.0.14 * bump api-models version * update changelog Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape --- CHANGELOG.md | 7 +- package.json | 4 +- packages/api/package.json | 12 +- packages/models/package.json | 6 +- yarn.lock | 244 ++++++++++++++++++++++++----------- 5 files changed, 183 insertions(+), 90 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 3146a2db..bf207866 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,11 @@ # openSenseMap API Changelog -## Unreleased +## v9 +- Use Node 12 +- Bump dependencies +- Bump sketch-templater for sound level meter + +## v8 ## v7 - Use @sensebox/opensensemap-api-models v0.0.12 diff --git a/package.json b/package.json index 5adb1a0c..44e4de39 100644 --- a/package.json +++ b/package.json @@ -21,10 +21,10 @@ "chai": "^4.1.2", "chakram": "^1.5.0", "cheerio": "^1.0.0-rc.2", - "csv-parse": "^4.4.1", + "csv-parse": "^4.8.5", "eslint": "6.8.0", "mimelib": "^0.3.1", - "mocha": "^6.1.4", + "mocha": "^7.0.1", "mqtt": "^3.0.0", "randomgeojson": "^1.0.0" } diff --git a/packages/api/package.json b/packages/api/package.json index ebc6492c..80b23c6e 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -10,7 +10,7 @@ "Norwin Roosen" ], "dependencies": { - "@sensebox/opensensemap-api-models": "^0.0.13", + "@sensebox/opensensemap-api-models": "^0.0.14", "@turf/area": "^6.0.1", "@turf/bbox": "^6.0.1", "@turf/centroid": "^6.0.2", @@ -21,10 +21,10 @@ "@turf/triangle-grid": "^6.0.1", "apicache": "^1.4.0", "bunyan": "^1.8.12", - "config": "^3.1.0", + "config": "^3.2.5", "csv-stringify": "^5.3.0", "dashify": "^2.0.0", - "got": "^10.2.1", + "got": "^10.4.0", "honeybadger": "^1.2.1", "isemail": "^3.0.0", "jsonwebtoken": "^8.1.0", @@ -32,10 +32,10 @@ "moment": "^2.18.1", "ms": "^2.1.1", "restify": "^5.2.0", - "restify-errors": "^5.0.0", - "simple-statistics": "^7.0.2", + "restify-errors": "^8.0.2", + "simple-statistics": "^7.0.8", "stringify-stream": "^1.0.5", - "uuid": "^3.2.1" + "uuid": "^3.4.0" }, "private": true } diff --git a/packages/models/package.json b/packages/models/package.json index 87c2fb2d..b303f578 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -9,8 +9,8 @@ "@sensebox/sketch-templater": "^1.5.2", "bcrypt": "^3.0.5", "bunyan": "^1.8.12", - "config": "^3.1.0", - "got": "^10.2.1", + "config": "^3.2.5", + "got": "^10.4.0", "grpc": "^1.19.0", "isemail": "^3.0.0", "jsonpath": "^1.0.0", @@ -18,7 +18,7 @@ "moment": "^2.18.1", "mongoose": "^4.13.6", "mongoose-timestamp": "^0.6", - "uuid": "^3.1.0" + "uuid": "^3.4.0" }, "scripts": { "version": "node .scripts/npm_version-update_changelog.js && git add CHANGELOG.md", diff --git a/yarn.lock b/yarn.lock index 5b61a8df..abc9b53a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -18,6 +18,15 @@ esutils "^2.0.2" js-tokens "^4.0.0" +"@netflix/nerror@^1.0.0": + version "1.1.3" + resolved "https://registry.yarnpkg.com/@netflix/nerror/-/nerror-1.1.3.tgz#9d88eccca442f1d544f2761d15ea557dc0a44ed2" + integrity sha512-b+MGNyP9/LXkapreJzNUzcvuzZslj/RGgdVVJ16P2wSlYatfLycPObImqVJSmNAdyeShvNeM/pl3sVZsObFueg== + dependencies: + assert-plus "^1.0.0" + extsprintf "^1.4.0" + lodash "^4.17.15" + "@sensebox/eslint-config-sensebox@^1.1.0": version "1.1.0" resolved "https://registry.yarnpkg.com/@sensebox/eslint-config-sensebox/-/eslint-config-sensebox-1.1.0.tgz#2fec4ec7945f34e7296c619fabd589d722ecd984" @@ -28,10 +37,10 @@ resolved "https://registry.yarnpkg.com/@sensebox/osem-protos/-/osem-protos-1.1.0.tgz#a7de8bc6be867953f1309181a012063c23299e79" integrity sha512-H+nUVcWlT0dvIqfJnYHuX9JBcCkP1ZKGE5YTRNWPbAEdZ11h+srpQsmeI58wK5hJcdukaZAjc4Dy96IeGM77aA== -"@sensebox/sketch-templater@^1.5.1": - version "1.5.1" - resolved "https://registry.yarnpkg.com/@sensebox/sketch-templater/-/sketch-templater-1.5.1.tgz#8a2827bf17eb8611c9595732f0444a38b4dfb450" - integrity sha512-xt9GBhAYkPo+2xqzYsI1mY/MKzll2hPobzYub16jrJuetS8ZU35IIzVDyIhU/gtA79OsuER6b3EBhl2ffpWxww== +"@sensebox/sketch-templater@^1.5.2": + version "1.5.2" + resolved "https://registry.yarnpkg.com/@sensebox/sketch-templater/-/sketch-templater-1.5.2.tgz#70d4f062842691ff4e1c961b9b1d065cb7c1f45e" + integrity sha512-b040rGrFNLSbETE5J32uAliLy/y0qrA784hqeUVZha0NqFSkxAJ0YXarEEbib+E4UnebY4TRR20EZngj12Fypg== dependencies: config "^1.29.2" dedent "^0.7.0" @@ -320,6 +329,14 @@ ansi-styles@^3.1.0, ansi-styles@^3.2.0, ansi-styles@^3.2.1: dependencies: color-convert "^1.9.0" +anymatch@~3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.1.tgz#c55ecf02185e2469259399310c173ce31233b142" + integrity sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg== + dependencies: + normalize-path "^3.0.0" + picomatch "^2.0.4" + apicache@^1.4.0: version "1.5.3" resolved "https://registry.yarnpkg.com/apicache/-/apicache-1.5.3.tgz#8977b358bf7d579d55fe3d183c907ae5dbcfb357" @@ -427,6 +444,11 @@ bcrypt@^3.0.5: nan "2.14.0" node-pre-gyp "0.13.0" +binary-extensions@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.0.0.tgz#23c0df14f6a88077f5f986c0d167ec03c3d5537c" + integrity sha512-Phlt0plgpIIBOGTT/ehfFnbNlfsDEiqmzE2KRXoX1bLIlir4X/MR+zSyBEkL05ffWgnRSf/DXv+WrUAVr93/ow== + bl@^1.2.2: version "1.2.2" resolved "https://registry.yarnpkg.com/bl/-/bl-1.2.2.tgz#a160911717103c07410cef63ef51b397c025af9c" @@ -453,6 +475,13 @@ brace-expansion@^1.1.7: balanced-match "^1.0.0" concat-map "0.0.1" +braces@~3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" + integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== + dependencies: + fill-range "^7.0.1" + browser-stdout@1.3.1: version "1.3.1" resolved "https://registry.yarnpkg.com/browser-stdout/-/browser-stdout-1.3.1.tgz#baa559ee14ced73452229bad7326467c61fabd60" @@ -495,22 +524,22 @@ bytebuffer@~5: dependencies: long "~3" -cacheable-lookup@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/cacheable-lookup/-/cacheable-lookup-0.2.1.tgz#f474ae2c686667d7ea08c43409ad31b2b31b26c2" - integrity sha512-BQ8MRjxJASEq2q+w0SusPU3B054gS278K8sj58QCLMZIso5qG05+MdCdmXxuyVlfvI8h4bPsNOavVUauVCGxrg== +cacheable-lookup@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/cacheable-lookup/-/cacheable-lookup-1.0.0.tgz#ae877296b7b43b720e4a4554c47ec85e74d0932a" + integrity sha512-Te7MkBWBEPUdLjFWLoIu61osWKjrvBdBrSxEso6T9iGLTDPhcA2PI6J++lF/Hmqi5HtZmkKN3q/C7gwa+U/EUg== dependencies: - keyv "^3.1.0" + keyv "^4.0.0" -cacheable-request@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/cacheable-request/-/cacheable-request-7.0.0.tgz#12421aa084e943ec81eac8c93e56af90c624788a" - integrity sha512-UVG4gMn3WjnAeFBBx7RFoprgOANIAkMwN5Dta6ONmfSwrCxfm0Ip7g0mIBxIRJZX9aDsoID0Ry3dU5Pr0csKKA== +cacheable-request@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/cacheable-request/-/cacheable-request-7.0.1.tgz#062031c2856232782ed694a257fa35da93942a58" + integrity sha512-lt0mJ6YAnsrBErpTMWeu5kl/tg9xMAWjavYTN6VQXM1A/teBITuNcccXsCxF0tDQQJf9DfAaX5O4e0zp0KlfZw== dependencies: clone-response "^1.0.2" get-stream "^5.1.0" http-cache-semantics "^4.0.0" - keyv "^3.0.0" + keyv "^4.0.0" lowercase-keys "^2.0.0" normalize-url "^4.1.0" responselike "^2.0.0" @@ -628,6 +657,21 @@ cheerio@^1.0.0-rc.2: lodash "^4.15.0" parse5 "^3.0.1" +chokidar@3.3.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.3.0.tgz#12c0714668c55800f659e262d4962a97faf554a6" + integrity sha512-dGmKLDdT3Gdl7fBUe8XK+gAtGmzy5Fn0XkkWQuYxGIgWVPPse2CxFA5mtrlD0TOHaHjEUqkWNyP1XdHoJES/4A== + dependencies: + anymatch "~3.1.1" + braces "~3.0.2" + glob-parent "~5.1.0" + is-binary-path "~2.1.0" + is-glob "~4.0.1" + normalize-path "~3.0.0" + readdirp "~3.2.0" + optionalDependencies: + fsevents "~2.1.1" + chownr@^1.1.1: version "1.1.3" resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.3.tgz#42d837d5239688d55f303003a508230fa6727142" @@ -747,10 +791,10 @@ config@^1.29.2: dependencies: json5 "^1.0.1" -config@^3.1.0: - version "3.2.4" - resolved "https://registry.yarnpkg.com/config/-/config-3.2.4.tgz#e60a908582991e800852f9cb60fcf424f3274a6c" - integrity sha512-H1XIGfnU1EAkfjSLn9ZvYDRx9lOezDViuzLDgiJ/lMeqjYe3q6iQfpcLt2NInckJgpAeekbNhQkmnnbdEDs9rw== +config@^3.2.5: + version "3.2.5" + resolved "https://registry.yarnpkg.com/config/-/config-3.2.5.tgz#ab10ab88b61a873fbf9a5f0c6b4a22750422f243" + integrity sha512-8itpjyR01lAJanhAlPncBngYRZez/LoRLW8wnGi+6SEcsUyA1wvHvbpIrAJYDJT+W9BScnj4mYoUgbtp9I+0+Q== dependencies: json5 "^1.0.1" @@ -800,10 +844,10 @@ csv-parse@^1.3.3: resolved "https://registry.yarnpkg.com/csv-parse/-/csv-parse-1.3.3.tgz#d1cfd8743c2f849a0abb2fd544db56695d19a490" integrity sha1-0c/YdDwvhJoKuy/VRNtWaV0ZpJA= -csv-parse@^4.4.1: - version "4.8.3" - resolved "https://registry.yarnpkg.com/csv-parse/-/csv-parse-4.8.3.tgz#9f9b66c3e7e30409dba3d08ecd89eaa04b320659" - integrity sha512-0GPxubzYzSn08lhNTWDCkcDKn8krmw0WuscqB2RrW6sugGGskbwaaEz7PCFFwbQ0phNGTTieiyfzzu3S/jZZ7Q== +csv-parse@^4.8.5: + version "4.8.5" + resolved "https://registry.yarnpkg.com/csv-parse/-/csv-parse-4.8.5.tgz#32e92a0e0acedab141bd5c5a3ad6fc3316f2c72d" + integrity sha512-rpsLmlLWJZifmLzZEVGbZ9phWnJyi+cCbCGYr4vX2NaHFtgbmQPFk+WmMkmMkQXgsIUn6CgnK9cTuUAfFjoXbA== csv-stringify@^1.1.2: version "1.1.2" @@ -1345,7 +1389,7 @@ extsprintf@1.3.0: resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05" integrity sha1-lpGEQOMEGnpBT4xS48V06zw+HgU= -extsprintf@^1.2.0: +extsprintf@^1.2.0, extsprintf@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.0.tgz#e2689f8f356fad62cca65a3a91c5df5f9551692f" integrity sha1-4mifjzVvrWLMplo6kcXfX5VRaS8= @@ -1384,6 +1428,13 @@ file-entry-cache@^5.0.1: dependencies: flat-cache "^2.0.1" +fill-range@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" + integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ== + dependencies: + to-regex-range "^5.0.1" + find-up@3.0.0, find-up@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" @@ -1443,6 +1494,11 @@ fs.realpath@^1.0.0: resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= +fsevents@~2.1.1: + version "2.1.2" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.1.2.tgz#4c0a1fb34bc68e543b4b82a9ec392bfbda840805" + integrity sha512-R4wDiBwZ0KzpgOWetKDug1FZcYhqYnUYKtfZYt4mD5SBz76q0KR4Q9o7GIPamsVPGmW3EYPPJ0dOOjvx32ldZA== + function-bind@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" @@ -1509,7 +1565,7 @@ glob-parent@^3.1.0: is-glob "^3.1.0" path-dirname "^1.0.0" -glob-parent@^5.0.0: +glob-parent@^5.0.0, glob-parent@~5.1.0: version "5.1.0" resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.0.tgz#5f4c1d1e748d30cd73ad2944b3577a81b081e8c2" integrity sha512-qjtRgnIVmOfnKUE3NJAQEdk+lKrxfw8t5ke7SXtfMTHcjsBfOfWXCQfdb30zfDoZQ2IRSIiidmjtbHZPZ++Ihw== @@ -1574,16 +1630,16 @@ globals@^12.1.0: dependencies: type-fest "^0.8.1" -got@^10.2.1: - version "10.2.2" - resolved "https://registry.yarnpkg.com/got/-/got-10.2.2.tgz#3cd61dc07db0533c6190a2889b78e0c39c0f52d6" - integrity sha512-QibZN13xHH/mc7H5uuU2xq28xxs8moEPsJrW9AQQX0jAV4DkGdllHDVE9cxw1nntIPFk8xzzOrgJZBg194AWrg== +got@^10.4.0: + version "10.4.0" + resolved "https://registry.yarnpkg.com/got/-/got-10.4.0.tgz#2bd869d3d965716a43bee89d6fc3d16b565109c4" + integrity sha512-yHxq0LgdLFmJcrl27wEOIvZaHbgtn1DYpYUUX/kovLZoQ8q+QwJH+i9zkldDxGUawu1cUsgNMp8Xxm5yKT2UyQ== dependencies: "@sindresorhus/is" "^1.0.0" "@szmarczak/http-timer" "^4.0.0" "@types/cacheable-request" "^6.0.1" - cacheable-lookup "^0.2.1" - cacheable-request "^7.0.0" + cacheable-lookup "^1.0.0" + cacheable-request "^7.0.1" decompress-response "^5.0.0" duplexer3 "^0.1.4" get-stream "^5.0.0" @@ -1592,7 +1648,7 @@ got@^10.2.1: p-cancelable "^2.0.0" responselike "^2.0.0" to-readable-stream "^2.0.0" - type-fest "^0.8.0" + type-fest "^0.9.0" growl@1.10.5: version "1.10.5" @@ -1824,6 +1880,13 @@ is-absolute@^1.0.0: is-relative "^1.0.0" is-windows "^1.0.1" +is-binary-path@~2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" + integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw== + dependencies: + binary-extensions "^2.0.0" + is-buffer@~2.0.3: version "2.0.4" resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-2.0.4.tgz#3e572f23c8411a5cfd9557c849e3665e0b290623" @@ -1868,7 +1931,7 @@ is-glob@^3.1.0: dependencies: is-extglob "^2.1.0" -is-glob@^4.0.0, is-glob@^4.0.1: +is-glob@^4.0.0, is-glob@^4.0.1, is-glob@~4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.1.tgz#7567dbe9f2f5e2467bc77ab83c4a29482407a5dc" integrity sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg== @@ -1880,6 +1943,11 @@ is-negated-glob@^1.0.0: resolved "https://registry.yarnpkg.com/is-negated-glob/-/is-negated-glob-1.0.0.tgz#6910bca5da8c95e784b5751b976cf5a10fee36d2" integrity sha1-aRC8pdqMleeEtXUbl2z1oQ/uNtI= +is-number@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" + integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== + is-promise@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.1.0.tgz#79a2a9ece7f096e80f36d2b2f3bc16c1ff4bf3fa" @@ -1973,10 +2041,10 @@ jsbn@~0.1.0: resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" integrity sha1-peZUwuWi3rXyAdls77yoDA7y9RM= -json-buffer@3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.0.tgz#5b1f397afc75d677bde8bcfc0e47e1f9a3d9a898" - integrity sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg= +json-buffer@3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.1.tgz#9338802a30d3b6605fbe0613e094008ca8c05a13" + integrity sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ== json-schema-traverse@^0.3.0: version "0.3.1" @@ -2067,12 +2135,12 @@ kareem@1.5.0: resolved "https://registry.yarnpkg.com/kareem/-/kareem-1.5.0.tgz#e3e4101d9dcfde299769daf4b4db64d895d17448" integrity sha1-4+QQHZ3P3imXadr0tNtk2JXRdEg= -keyv@^3.0.0, keyv@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/keyv/-/keyv-3.1.0.tgz#ecc228486f69991e49e9476485a5be1e8fc5c4d9" - integrity sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA== +keyv@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/keyv/-/keyv-4.0.0.tgz#2d1dab694926b2d427e4c74804a10850be44c12f" + integrity sha512-U7ioE8AimvRVLfw4LffyOIRhL2xVgmE8T22L6i0BucSnBUyv4w+I7VN/zVZwRKHOI6ZRUcdMdWHQ8KSUvGpEog== dependencies: - json-buffer "3.0.0" + json-buffer "3.0.1" lcid@^1.0.0: version "1.0.0" @@ -2157,21 +2225,11 @@ lodash.once@^4.0.0: resolved "https://registry.yarnpkg.com/lodash.once/-/lodash.once-4.1.1.tgz#0dd3971213c7c56df880977d504c88fb471a97ac" integrity sha1-DdOXEhPHxW34gJd9UEyI+0cal6w= -lodash@^4.14.0, lodash@^4.17.14, lodash@^4.17.15: +lodash@^4.14.0, lodash@^4.15.0, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.4, lodash@^4.2.1: version "4.17.15" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.15.tgz#b447f6670a0455bbfeedd11392eff330ea097548" integrity sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A== -lodash@^4.15.0: - version "4.17.11" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.11.tgz#b39ea6229ef607ecd89e2c8df12536891cac9b8d" - integrity sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg== - -lodash@^4.17.4, lodash@^4.2.1: - version "4.17.4" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae" - integrity sha1-eCA6TRwyiuHYbcpkYONptX9AVa4= - log-symbols@2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-2.2.0.tgz#5740e1c5d6f0dfda4ad9323b5332107ef6b4c40a" @@ -2296,13 +2354,14 @@ mkdirp@0.5.1, mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.1: dependencies: minimist "0.0.8" -mocha@^6.1.4: - version "6.2.2" - resolved "https://registry.yarnpkg.com/mocha/-/mocha-6.2.2.tgz#5d8987e28940caf8957a7d7664b910dc5b2fea20" - integrity sha512-FgDS9Re79yU1xz5d+C4rv1G7QagNGHZ+iXF81hO8zY35YZZcLEsJVfFolfsqKFWunATEvNzMK0r/CwWd/szO9A== +mocha@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/mocha/-/mocha-7.0.1.tgz#276186d35a4852f6249808c6dd4a1376cbf6c6ce" + integrity sha512-9eWmWTdHLXh72rGrdZjNbG3aa1/3NRPpul1z0D979QpEnFdCG0Q5tv834N+94QEN2cysfV72YocQ3fn87s70fg== dependencies: ansi-colors "3.2.3" browser-stdout "1.3.1" + chokidar "3.3.0" debug "3.2.6" diff "3.5.0" escape-string-regexp "1.0.5" @@ -2315,7 +2374,7 @@ mocha@^6.1.4: minimatch "3.0.4" mkdirp "0.5.1" ms "2.1.1" - node-environment-flags "1.0.5" + node-environment-flags "1.0.6" object.assign "4.1.0" strip-json-comments "2.0.1" supports-color "6.0.0" @@ -2497,10 +2556,10 @@ nice-try@^1.0.4: resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ== -node-environment-flags@1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/node-environment-flags/-/node-environment-flags-1.0.5.tgz#fa930275f5bf5dae188d6192b24b4c8bbac3d76a" - integrity sha512-VNYPRfGfmZLx0Ye20jWzHUjyTW/c+6Wq+iLhDzUI4XmhrDd9l/FozXV3F2xOaXjvp0co0+v1YSR3CMP6g+VvLQ== +node-environment-flags@1.0.6: + version "1.0.6" + resolved "https://registry.yarnpkg.com/node-environment-flags/-/node-environment-flags-1.0.6.tgz#a30ac13621f6f7d674260a54dede048c3982c088" + integrity sha512-5Evy2epuL+6TM0lCQGpFIj6KwiEsGh1SrHUhTbNX+sLbBtjidPZFAnVK9y5yU1+h//RitLbRHTIMyxQPtxMdHw== dependencies: object.getownpropertydescriptors "^2.0.3" semver "^5.7.0" @@ -2545,6 +2604,11 @@ nopt@^4.0.1: abbrev "1" osenv "^0.1.4" +normalize-path@^3.0.0, normalize-path@~3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" + integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== + normalize-url@^4.1.0: version "4.5.0" resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-4.5.0.tgz#453354087e6ca96957bd8f5baf753f5982142129" @@ -2771,6 +2835,11 @@ performance-now@^2.1.0: resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" integrity sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns= +picomatch@^2.0.4: + version "2.2.1" + resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.2.1.tgz#21bac888b6ed8601f831ce7816e335bc779f0a4a" + integrity sha512-ISBaA8xQNmwELC7eOjqFKMESB2VIqt4PPDD0nsS95b/9dZXvVKOlz9keMSnoGGKcOHXfTvDD6WMaRoSc9UuhRA== + prelude-ls@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" @@ -2954,6 +3023,13 @@ readable-stream@~2.1.0: string_decoder "~0.10.x" util-deprecate "~1.0.1" +readdirp@~3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.2.0.tgz#c30c33352b12c96dfb4b895421a49fd5a9593839" + integrity sha512-crk4Qu3pmXwgxdSgGhgA/eXiJAPQiX4GMOZZMXnqKxHX7TaoL+3gQVo/WeuAiogr07DpnfjIMpXXa+PAIvwPGQ== + dependencies: + picomatch "^2.0.4" + regexp-clone@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/regexp-clone/-/regexp-clone-0.0.1.tgz#a7c2e09891fdbf38fbb10d376fb73003e68ac589" @@ -3079,16 +3155,16 @@ restify-errors@^4.2.3: optionalDependencies: safe-json-stringify "^1.0.3" -restify-errors@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/restify-errors/-/restify-errors-5.0.0.tgz#668717e100683eec6ce0d515f89ff1dbec254a8d" - integrity sha512-+vby9Kxf7qlzvbZSTIEGkIixkeHG+pVCl34dk6eKnL+ua4pCezpdLT/1/eabzPZb65ADrgoc04jeWrrF1E1pvQ== +restify-errors@^8.0.2: + version "8.0.2" + resolved "https://registry.yarnpkg.com/restify-errors/-/restify-errors-8.0.2.tgz#0b9678738e37888e4fefe52aa6ee92771ec954e9" + integrity sha512-UsXUVQo7M26xoQzeUcZQ0+H8L2t9DGzrXcAgR3WB/1vnbl+UdI4tZ1PqYsN+sS5WnqHKZ0Xy9w0CKf83bbrwYA== dependencies: + "@netflix/nerror" "^1.0.0" assert-plus "^1.0.0" - lodash "^4.2.1" - verror "^1.8.1" + lodash "^4.17.15" optionalDependencies: - safe-json-stringify "^1.0.3" + safe-json-stringify "^1.0.4" restify@^5.2.0: version "5.2.1" @@ -3170,7 +3246,7 @@ safe-buffer@^5.1.2, safe-buffer@~5.2.0: resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.0.tgz#b74daec49b1148f88c64b68d49b1e815c1f2f519" integrity sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg== -safe-json-stringify@^1.0.3, safe-json-stringify@~1: +safe-json-stringify@^1.0.3, safe-json-stringify@^1.0.4, safe-json-stringify@~1: version "1.2.0" resolved "https://registry.yarnpkg.com/safe-json-stringify/-/safe-json-stringify-1.2.0.tgz#356e44bc98f1f93ce45df14bcd7c01cda86e0afd" integrity sha512-gH8eh2nZudPQO6TytOvbxnuhYBOvDBBLW52tz5q6X58lJcd/tkmqFR+5Z9adS8aJtURSXWThWy/xJtJwixErvg== @@ -3232,10 +3308,10 @@ signal-exit@^3.0.0, signal-exit@^3.0.2: resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" integrity sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0= -simple-statistics@^7.0.2: - version "7.0.7" - resolved "https://registry.yarnpkg.com/simple-statistics/-/simple-statistics-7.0.7.tgz#ee1c27f5c0d6ad1f9249606b13a8874eaad87447" - integrity sha512-UnBGuxYzduYZ9ab2ENug7Ht1iLJ/xw1sVHXeasrdIcNX/CIYxYmXk1QJyI/M/GF5vZ9W1MkbOgnL7fX1CSis4A== +simple-statistics@^7.0.8: + version "7.0.8" + resolved "https://registry.yarnpkg.com/simple-statistics/-/simple-statistics-7.0.8.tgz#662c56769945812237891adaec690f6da90fe372" + integrity sha512-cKK4U1ciuG7NG2P/FfbYtfoZYvn6VkIHxurRGuqW1bBOrKY0WK1Zr9C3EFjh8RAOldIRznm5kQvWTa3bsvkMIA== slice-ansi@^2.1.0: version "2.1.0" @@ -3562,6 +3638,13 @@ to-readable-stream@^2.0.0: resolved "https://registry.yarnpkg.com/to-readable-stream/-/to-readable-stream-2.1.0.tgz#82880316121bea662cdc226adb30addb50cb06e8" integrity sha512-o3Qa6DGg1CEXshSdvWNX2sN4QHqg03SPq7U6jPXRahlQdl5dK8oXjkU/2/sGrnOZKeGV1zLSO8qPwyKklPPE7w== +to-regex-range@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" + integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== + dependencies: + is-number "^7.0.0" + tough-cookie@~2.3.3: version "2.3.4" resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.4.tgz#ec60cee38ac675063ffc97a5c18970578ee83655" @@ -3621,11 +3704,16 @@ type-detect@^4.0.0, type-detect@^4.0.5: resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c" integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g== -type-fest@^0.8.0, type-fest@^0.8.1: +type-fest@^0.8.1: version "0.8.1" resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d" integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA== +type-fest@^0.9.0: + version "0.9.0" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.9.0.tgz#3b7904821e42b26377831a6e9b5d2930ab19c99a" + integrity sha512-j55pzONIdg7rdtJTRZPKIbV0FosUqYdhHK1aAYJIrUvejv1VVyBokrILE8KQDT4emW/1Ev9tx+yZG+AxuSBMmA== + type@^1.0.1: version "1.2.0" resolved "https://registry.yarnpkg.com/type/-/type-1.2.0.tgz#848dd7698dafa3e54a6c479e759c4bc3f18847a0" @@ -3676,10 +3764,10 @@ util-deprecate@^1.0.1, util-deprecate@~1.0.1: resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= -uuid@^3.0.0, uuid@^3.1.0, uuid@^3.2.1, uuid@^3.3.2: - version "3.3.3" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.3.3.tgz#4568f0216e78760ee1dbf3a4d2cf53e224112866" - integrity sha512-pW0No1RGHgzlpHJO1nsVrHKpOEIxkGg1xB+v0ZmdNH5OAeAwzAVrCnI2/6Mtx+Uys6iaylxa+D3g4j63IKKjSQ== +uuid@^3.0.0, uuid@^3.1.0, uuid@^3.3.2, uuid@^3.4.0: + version "3.4.0" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee" + integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A== v8-compile-cache@^2.0.3: version "2.1.0" From ff9cb8a5f81bc0959d2a86e243ce148520398c20 Mon Sep 17 00:00:00 2001 From: Felix Erdmann Date: Fri, 28 Feb 2020 11:46:39 +0100 Subject: [PATCH 073/337] v9.1 (#243) * Bump config from 3.2.4 to 3.2.5 Bumps [config](https://github.com/lorenwest/node-config) from 3.2.4 to 3.2.5. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * [Security] Bump lodash from 4.17.4 to 4.17.15 (#210) Bumps [lodash](https://github.com/lodash/lodash) from 4.17.4 to 4.17.15. **This update includes security fixes.** - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.4...4.17.15) Signed-off-by: dependabot-preview[bot] * Bump got from 10.2.2 to 10.4.0 (#214) Bumps [got](https://github.com/sindresorhus/got) from 10.2.2 to 10.4.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.2.2...v10.4.0) Signed-off-by: dependabot-preview[bot] * Bump csv-parse from 4.8.3 to 4.8.5 (#211) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.3 to 4.8.5. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.3...v4.8.5) Signed-off-by: dependabot-preview[bot] * Bump uuid from 3.3.3 to 3.4.0 (#218) Bumps [uuid](https://github.com/uuidjs/uuid) from 3.3.3 to 3.4.0. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v3.3.3...v3.4.0) Signed-off-by: dependabot-preview[bot] * Bump restify-errors from 5.0.0 to 8.0.2 (#217) Bumps [restify-errors](https://github.com/restify/errors) from 5.0.0 to 8.0.2. - [Release notes](https://github.com/restify/errors/releases) - [Changelog](https://github.com/restify/errors/blob/master/CHANGELOG.md) - [Commits](https://github.com/restify/errors/compare/v5.0.0...v8.0.2) Signed-off-by: dependabot-preview[bot] * Bump mocha from 6.2.2 to 7.0.1 (#216) Bumps [mocha](https://github.com/mochajs/mocha) from 6.2.2 to 7.0.1. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v6.2.2...v7.0.1) Signed-off-by: dependabot-preview[bot] * Bump simple-statistics from 7.0.7 to 7.0.8 (#219) Bumps [simple-statistics](https://github.com/simple-statistics/simple-statistics) from 7.0.7 to 7.0.8. - [Release notes](https://github.com/simple-statistics/simple-statistics/releases) - [Changelog](https://github.com/simple-statistics/simple-statistics/blob/master/CHANGELOG.md) - [Commits](https://github.com/simple-statistics/simple-statistics/compare/v7.0.7...v7.0.8) Signed-off-by: dependabot-preview[bot] * v9 (#220) * v0.0.14 * bump api-models version * update changelog * Bump bcrypt from 3.0.7 to 3.0.8 (#222) Bumps [bcrypt](https://github.com/kelektiv/node.bcrypt.js) from 3.0.7 to 3.0.8. - [Release notes](https://github.com/kelektiv/node.bcrypt.js/releases) - [Changelog](https://github.com/kelektiv/node.bcrypt.js/blob/master/CHANGELOG.md) - [Commits](https://github.com/kelektiv/node.bcrypt.js/compare/v3.0.7...v3.0.8) Signed-off-by: dependabot-preview[bot] * Bump got from 10.4.0 to 10.5.0 (#223) Bumps [got](https://github.com/sindresorhus/got) from 10.4.0 to 10.5.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.4.0...v10.5.0) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.0 to 10.5.2 (#224) Bumps [got](https://github.com/sindresorhus/got) from 10.5.0 to 10.5.2. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.0...v10.5.2) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.2 to 10.5.3 (#225) Bumps [got](https://github.com/sindresorhus/got) from 10.5.2 to 10.5.3. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.2...v10.5.3) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.3 to 10.5.4 (#226) Bumps [got](https://github.com/sindresorhus/got) from 10.5.3 to 10.5.4. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.3...v10.5.4) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.4 to 10.5.5 (#227) Bumps [got](https://github.com/sindresorhus/got) from 10.5.4 to 10.5.5. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.4...v10.5.5) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.5 to 10.5.6 (#228) Bumps [got](https://github.com/sindresorhus/got) from 10.5.5 to 10.5.6. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.5...v10.5.6) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.6 to 10.5.7 (#229) Bumps [got](https://github.com/sindresorhus/got) from 10.5.6 to 10.5.7. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.6...v10.5.7) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.7 to 10.6.0 (#230) Bumps [got](https://github.com/sindresorhus/got) from 10.5.7 to 10.6.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.7...v10.6.0) Signed-off-by: dependabot-preview[bot] * Bump config from 3.2.5 to 3.2.6 (#232) Bumps [config](https://github.com/lorenwest/node-config) from 3.2.5 to 3.2.6. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * Bump csv-parse from 4.8.5 to 4.8.6 (#233) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.5 to 4.8.6. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.5...v4.8.6) Signed-off-by: dependabot-preview[bot] * bump node-sketch-templater version (#234) * Bump models version (#236) * v0.0.15 * bump opensensemap-api-models version * Bump uuid from 3.4.0 to 7.0.0 (#237) * Bump uuid from 3.4.0 to 7.0.0 Bumps [uuid](https://github.com/uuidjs/uuid) from 3.4.0 to 7.0.0. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v3.4.0...v7.0.0) Signed-off-by: dependabot-preview[bot] * fix uuid usage for 7.0.0 Co-authored-by: Gerald Pape * Bump @sensebox/sketch-templater from 1.5.4 to 1.5.5 (#238) Bumps [@sensebox/sketch-templater](https://github.com/sensebox/node-sketch-templater) from 1.5.4 to 1.5.5. - [Release notes](https://github.com/sensebox/node-sketch-templater/releases) - [Changelog](https://github.com/sensebox/node-sketch-templater/blob/master/CHANGELOG.md) - [Commits](https://github.com/sensebox/node-sketch-templater/compare/v1.5.4...v1.5.5) Signed-off-by: dependabot-preview[bot] * bump opensensemap-api-models version (#239) * Bump uuid from 7.0.0 to 7.0.1 (#240) Bumps [uuid](https://github.com/uuidjs/uuid) from 7.0.0 to 7.0.1. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v7.0.0...v7.0.1) Signed-off-by: dependabot-preview[bot] * Bump mocha from 7.0.1 to 7.1.0 (#241) Bumps [mocha](https://github.com/mochajs/mocha) from 7.0.1 to 7.1.0. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v7.0.1...v7.1.0) Signed-off-by: dependabot-preview[bot] * Bump config from 3.2.6 to 3.3.0 (#242) Bumps [config](https://github.com/lorenwest/node-config) from 3.2.6 to 3.3.0. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * Merge master in development (#244) * v0.0.14 * v9 (#221) * Bump config from 3.2.4 to 3.2.5 Bumps [config](https://github.com/lorenwest/node-config) from 3.2.4 to 3.2.5. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * [Security] Bump lodash from 4.17.4 to 4.17.15 (#210) Bumps [lodash](https://github.com/lodash/lodash) from 4.17.4 to 4.17.15. **This update includes security fixes.** - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.4...4.17.15) Signed-off-by: dependabot-preview[bot] * Bump got from 10.2.2 to 10.4.0 (#214) Bumps [got](https://github.com/sindresorhus/got) from 10.2.2 to 10.4.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.2.2...v10.4.0) Signed-off-by: dependabot-preview[bot] * Bump csv-parse from 4.8.3 to 4.8.5 (#211) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.3 to 4.8.5. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.3...v4.8.5) Signed-off-by: dependabot-preview[bot] * Bump uuid from 3.3.3 to 3.4.0 (#218) Bumps [uuid](https://github.com/uuidjs/uuid) from 3.3.3 to 3.4.0. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v3.3.3...v3.4.0) Signed-off-by: dependabot-preview[bot] * Bump restify-errors from 5.0.0 to 8.0.2 (#217) Bumps [restify-errors](https://github.com/restify/errors) from 5.0.0 to 8.0.2. - [Release notes](https://github.com/restify/errors/releases) - [Changelog](https://github.com/restify/errors/blob/master/CHANGELOG.md) - [Commits](https://github.com/restify/errors/compare/v5.0.0...v8.0.2) Signed-off-by: dependabot-preview[bot] * Bump mocha from 6.2.2 to 7.0.1 (#216) Bumps [mocha](https://github.com/mochajs/mocha) from 6.2.2 to 7.0.1. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v6.2.2...v7.0.1) Signed-off-by: dependabot-preview[bot] * Bump simple-statistics from 7.0.7 to 7.0.8 (#219) Bumps [simple-statistics](https://github.com/simple-statistics/simple-statistics) from 7.0.7 to 7.0.8. - [Release notes](https://github.com/simple-statistics/simple-statistics/releases) - [Changelog](https://github.com/simple-statistics/simple-statistics/blob/master/CHANGELOG.md) - [Commits](https://github.com/simple-statistics/simple-statistics/compare/v7.0.7...v7.0.8) Signed-off-by: dependabot-preview[bot] * v9 (#220) * v0.0.14 * bump api-models version * update changelog Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape * Fix development (#245) * v0.0.14 * v9 (#221) * Bump config from 3.2.4 to 3.2.5 Bumps [config](https://github.com/lorenwest/node-config) from 3.2.4 to 3.2.5. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * [Security] Bump lodash from 4.17.4 to 4.17.15 (#210) Bumps [lodash](https://github.com/lodash/lodash) from 4.17.4 to 4.17.15. **This update includes security fixes.** - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.4...4.17.15) Signed-off-by: dependabot-preview[bot] * Bump got from 10.2.2 to 10.4.0 (#214) Bumps [got](https://github.com/sindresorhus/got) from 10.2.2 to 10.4.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.2.2...v10.4.0) Signed-off-by: dependabot-preview[bot] * Bump csv-parse from 4.8.3 to 4.8.5 (#211) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.3 to 4.8.5. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.3...v4.8.5) Signed-off-by: dependabot-preview[bot] * Bump uuid from 3.3.3 to 3.4.0 (#218) Bumps [uuid](https://github.com/uuidjs/uuid) from 3.3.3 to 3.4.0. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v3.3.3...v3.4.0) Signed-off-by: dependabot-preview[bot] * Bump restify-errors from 5.0.0 to 8.0.2 (#217) Bumps [restify-errors](https://github.com/restify/errors) from 5.0.0 to 8.0.2. - [Release notes](https://github.com/restify/errors/releases) - [Changelog](https://github.com/restify/errors/blob/master/CHANGELOG.md) - [Commits](https://github.com/restify/errors/compare/v5.0.0...v8.0.2) Signed-off-by: dependabot-preview[bot] * Bump mocha from 6.2.2 to 7.0.1 (#216) Bumps [mocha](https://github.com/mochajs/mocha) from 6.2.2 to 7.0.1. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v6.2.2...v7.0.1) Signed-off-by: dependabot-preview[bot] * Bump simple-statistics from 7.0.7 to 7.0.8 (#219) Bumps [simple-statistics](https://github.com/simple-statistics/simple-statistics) from 7.0.7 to 7.0.8. - [Release notes](https://github.com/simple-statistics/simple-statistics/releases) - [Changelog](https://github.com/simple-statistics/simple-statistics/blob/master/CHANGELOG.md) - [Commits](https://github.com/simple-statistics/simple-statistics/compare/v7.0.7...v7.0.8) Signed-off-by: dependabot-preview[bot] * v9 (#220) * v0.0.14 * bump api-models version * update changelog Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape Co-authored-by: Felix Erdmann Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape --- package.json | 4 +- packages/api/lib/helpers/jwtHelpers.js | 4 +- packages/api/package.json | 8 +- packages/models/CHANGELOG.md | 3 + .../2-node-make-users-unique.js | 6 +- packages/models/package.json | 12 +- packages/models/src/user/user.js | 8 +- yarn.lock | 173 ++++++++++-------- 8 files changed, 125 insertions(+), 93 deletions(-) diff --git a/package.json b/package.json index 44e4de39..19639715 100644 --- a/package.json +++ b/package.json @@ -21,10 +21,10 @@ "chai": "^4.1.2", "chakram": "^1.5.0", "cheerio": "^1.0.0-rc.2", - "csv-parse": "^4.8.5", + "csv-parse": "^4.8.6", "eslint": "6.8.0", "mimelib": "^0.3.1", - "mocha": "^7.0.1", + "mocha": "^7.1.0", "mqtt": "^3.0.0", "randomgeojson": "^1.0.0" } diff --git a/packages/api/lib/helpers/jwtHelpers.js b/packages/api/lib/helpers/jwtHelpers.js index 3465b87c..382c28cc 100644 --- a/packages/api/lib/helpers/jwtHelpers.js +++ b/packages/api/lib/helpers/jwtHelpers.js @@ -4,7 +4,7 @@ const config = require('config'), jwt = require('jsonwebtoken'), hashJWT = require('./jwtRefreshTokenHasher'), { addTokenToBlacklist, addTokenHashToBlacklist, isTokenBlacklisted } = require('./tokenBlacklist'), - uuid = require('uuid'), + { v4: uuidv4 } = require('uuid'), moment = require('moment'), { User } = require('@sensebox/opensensemap-api-models'), { ForbiddenError } = require('restify-errors'); @@ -25,7 +25,7 @@ const jwtVerifyOptions = { const createToken = function createToken (user) { const payload = { role: user.role }, - signOptions = Object.assign({ subject: user.email, jwtid: uuid() }, jwtSignOptions); + signOptions = Object.assign({ subject: user.email, jwtid: uuidv4() }, jwtSignOptions); return new Promise(function (resolve, reject) { jwt.sign(payload, jwt_secret, signOptions, async (err, token) => { diff --git a/packages/api/package.json b/packages/api/package.json index 80b23c6e..c1c5db8a 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -10,7 +10,7 @@ "Norwin Roosen" ], "dependencies": { - "@sensebox/opensensemap-api-models": "^0.0.14", + "@sensebox/opensensemap-api-models": "^0.0.16", "@turf/area": "^6.0.1", "@turf/bbox": "^6.0.1", "@turf/centroid": "^6.0.2", @@ -21,10 +21,10 @@ "@turf/triangle-grid": "^6.0.1", "apicache": "^1.4.0", "bunyan": "^1.8.12", - "config": "^3.2.5", + "config": "^3.3.0", "csv-stringify": "^5.3.0", "dashify": "^2.0.0", - "got": "^10.4.0", + "got": "^10.6.0", "honeybadger": "^1.2.1", "isemail": "^3.0.0", "jsonwebtoken": "^8.1.0", @@ -35,7 +35,7 @@ "restify-errors": "^8.0.2", "simple-statistics": "^7.0.8", "stringify-stream": "^1.0.5", - "uuid": "^3.4.0" + "uuid": "^7.0.1" }, "private": true } diff --git a/packages/models/CHANGELOG.md b/packages/models/CHANGELOG.md index 7ad1b065..45839621 100644 --- a/packages/models/CHANGELOG.md +++ b/packages/models/CHANGELOG.md @@ -2,6 +2,9 @@ ## Unreleased +## v0.0.15 +- Update @sensebox/node-sketch-templater to v1.5.4 + ## v0.0.14 - Update @sensebox/node-sketch-templater to v1.5.2 - Add SoundLevelMeter diff --git a/packages/models/migrations/0-3_usermanagement/2-node-make-users-unique.js b/packages/models/migrations/0-3_usermanagement/2-node-make-users-unique.js index 48c23544..9d9c2c24 100644 --- a/packages/models/migrations/0-3_usermanagement/2-node-make-users-unique.js +++ b/packages/models/migrations/0-3_usermanagement/2-node-make-users-unique.js @@ -2,7 +2,7 @@ 'use strict'; const models = require('../../lib/models'), - uuid = require('uuid'), + { v4: uuidv4 } = require('uuid'), moment = require('moment'), { mongoose, connect } = require('../../lib/db'); @@ -106,8 +106,8 @@ const migrate = function migrate () { } user.set('boxes', oid_boxes); - user.set('password', uuid()); - user.set('resetPasswordToken', uuid()); + user.set('password', uuidv4()); + user.set('resetPasswordToken', uuidv4()); user.set('resetPasswordExpires', moment.utc() .add(6, 'months') .toDate()); diff --git a/packages/models/package.json b/packages/models/package.json index b303f578..029dedff 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -1,16 +1,16 @@ { "name": "@sensebox/opensensemap-api-models", "description": "openSenseMap data models and database connection", - "version": "0.0.14", + "version": "0.0.15", "main": "index.js", "license": "MIT", "dependencies": { "@sensebox/osem-protos": "^1.1.0", - "@sensebox/sketch-templater": "^1.5.2", - "bcrypt": "^3.0.5", + "@sensebox/sketch-templater": "^1.5.5", + "bcrypt": "^3.0.8", "bunyan": "^1.8.12", - "config": "^3.2.5", - "got": "^10.4.0", + "config": "^3.3.0", + "got": "^10.6.0", "grpc": "^1.19.0", "isemail": "^3.0.0", "jsonpath": "^1.0.0", @@ -18,7 +18,7 @@ "moment": "^2.18.1", "mongoose": "^4.13.6", "mongoose-timestamp": "^0.6", - "uuid": "^3.4.0" + "uuid": "^7.0.1" }, "scripts": { "version": "node .scripts/npm_version-update_changelog.js && git add CHANGELOG.md", diff --git a/packages/models/src/user/user.js b/packages/models/src/user/user.js index aa4b15c6..6df46592 100644 --- a/packages/models/src/user/user.js +++ b/packages/models/src/user/user.js @@ -12,7 +12,7 @@ const { mongoose } = require('../db'), bcrypt = require('bcrypt'), crypto = require('crypto'), { min_length: password_min_length, salt_factor: password_salt_factor } = require('config').get('openSenseMap-API-models.password'), - uuid = require('uuid'), + { v4: uuidv4 } = require('uuid'), { model: Box } = require('../box/box'), mails = require('./mails'), moment = require('moment'), @@ -90,7 +90,7 @@ const userSchema = new mongoose.Schema({ required: true, default: 'System' }, - emailConfirmationToken: { type: String, default: uuid }, + emailConfirmationToken: { type: String, default: uuidv4 }, emailIsConfirmed: { type: Boolean, default: false, required: true }, refreshToken: { type: String }, refreshTokenExpires: { type: Date } @@ -262,7 +262,7 @@ userSchema.statics.initPasswordReset = function initPasswordReset ({ email }) { userSchema.methods.passwordReset = function passwordReset () { const user = this; - user.resetPasswordToken = uuid(); + user.resetPasswordToken = uuidv4(); user.resetPasswordExpires = moment.utc() .add(12, 'hours') .toDate(); @@ -376,7 +376,7 @@ userSchema.methods.resendEmailConfirmation = function resendEmailConfirmation () return Promise.reject(new ModelError(`Email address ${user.email} is already confirmed.`, { type: 'UnprocessableEntityError' })); } - user.set('emailConfirmationToken', uuid()); + user.set('emailConfirmationToken', uuidv4()); return user.save() .then(function (savedUser) { diff --git a/yarn.lock b/yarn.lock index abc9b53a..75d16a5b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -32,23 +32,43 @@ resolved "https://registry.yarnpkg.com/@sensebox/eslint-config-sensebox/-/eslint-config-sensebox-1.1.0.tgz#2fec4ec7945f34e7296c619fabd589d722ecd984" integrity sha512-MhwFHGmt7X/Wb/aISS/pJvBuO8HqpkVfB8GsUKOosWEfvug4cTN7N/pXBOxINukG34LcKDLp1xdyxuEo64CMSw== +"@sensebox/opensensemap-api-models@^0.0.16": + version "0.0.16" + resolved "https://registry.yarnpkg.com/@sensebox/opensensemap-api-models/-/opensensemap-api-models-0.0.16.tgz#7a6677bd242ab404520949908a51f8f6affa6118" + integrity sha512-KNzaaTNSjIaQZXOFFyX5FuB02axjiwSrmhwp1LhD4gNJVN7ASWur80dGGqSl1asmzQ45sS+Oj7rLG0dVOq1aPw== + dependencies: + "@sensebox/osem-protos" "^1.1.0" + "@sensebox/sketch-templater" "^1.5.5" + bcrypt "^3.0.8" + bunyan "^1.8.12" + config "^3.2.6" + got "^10.6.0" + grpc "^1.19.0" + isemail "^3.0.0" + jsonpath "^1.0.0" + lodash.isequal "^4.5.0" + moment "^2.18.1" + mongoose "^4.13.6" + mongoose-timestamp "^0.6" + uuid "^7.0.0" + "@sensebox/osem-protos@^1.1.0": version "1.1.0" resolved "https://registry.yarnpkg.com/@sensebox/osem-protos/-/osem-protos-1.1.0.tgz#a7de8bc6be867953f1309181a012063c23299e79" integrity sha512-H+nUVcWlT0dvIqfJnYHuX9JBcCkP1ZKGE5YTRNWPbAEdZ11h+srpQsmeI58wK5hJcdukaZAjc4Dy96IeGM77aA== -"@sensebox/sketch-templater@^1.5.2": - version "1.5.2" - resolved "https://registry.yarnpkg.com/@sensebox/sketch-templater/-/sketch-templater-1.5.2.tgz#70d4f062842691ff4e1c961b9b1d065cb7c1f45e" - integrity sha512-b040rGrFNLSbETE5J32uAliLy/y0qrA784hqeUVZha0NqFSkxAJ0YXarEEbib+E4UnebY4TRR20EZngj12Fypg== +"@sensebox/sketch-templater@^1.5.5": + version "1.5.5" + resolved "https://registry.yarnpkg.com/@sensebox/sketch-templater/-/sketch-templater-1.5.5.tgz#54c517976ef9936cd39ddcb8d911ccb5e5efc596" + integrity sha512-RQtf9cTGZaCNphLW1Uyvy0kW5bgCEQOzzGpIevAJD41sIL/r7f9f9aEvzbM33sc/QGwRk6jzZd1UNRu6WxPGgQ== dependencies: config "^1.29.2" dedent "^0.7.0" -"@sindresorhus/is@^1.0.0": - version "1.2.0" - resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-1.2.0.tgz#63ce3638cb85231f3704164c90a18ef816da3fb7" - integrity sha512-mwhXGkRV5dlvQc4EgPDxDxO6WuMBVymGFd1CA+2Y+z5dG9MNspoQ+AWjl/Ld1MnpCL8AKbosZlDVohqcIwuWsw== +"@sindresorhus/is@^2.0.0": + version "2.0.0" + resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-2.0.0.tgz#1a7d0e05905877a61440d4f15520a5f5b4fedfbf" + integrity sha512-bX03FiS5dr3cc01hhymlqDAjO5c5WcRPwY4BrghFFhUWI/3vsVlaq8GiSFsrcA3O07mPedlS6Mnr/whaJ44ubA== "@szmarczak/http-timer@^4.0.0": version "4.0.0" @@ -436,13 +456,13 @@ bcrypt-pbkdf@^1.0.0: dependencies: tweetnacl "^0.14.3" -bcrypt@^3.0.5: - version "3.0.7" - resolved "https://registry.yarnpkg.com/bcrypt/-/bcrypt-3.0.7.tgz#1187d29df2e1cde44268152b13e3d4a655a7c7de" - integrity sha512-K5UglF9VQvBMHl/1elNyyFvAfOY9Bj+rpKrCSR9sFwcW8FywAYJSRwTURNej5TaAK2TEJkcJ6r6lh1YPmspx5Q== +bcrypt@^3.0.8: + version "3.0.8" + resolved "https://registry.yarnpkg.com/bcrypt/-/bcrypt-3.0.8.tgz#fe437b7569faffc1105c3c3f6e7d2913e3d3bea5" + integrity sha512-jKV6RvLhI36TQnPDvUFqBEnGX9c8dRRygKxCZu7E+MgLfKZbmmXL8a7/SFFOyHoPNX9nV81cKRC5tbQfvEQtpw== dependencies: nan "2.14.0" - node-pre-gyp "0.13.0" + node-pre-gyp "0.14.0" binary-extensions@^2.0.0: version "2.0.0" @@ -524,10 +544,10 @@ bytebuffer@~5: dependencies: long "~3" -cacheable-lookup@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/cacheable-lookup/-/cacheable-lookup-1.0.0.tgz#ae877296b7b43b720e4a4554c47ec85e74d0932a" - integrity sha512-Te7MkBWBEPUdLjFWLoIu61osWKjrvBdBrSxEso6T9iGLTDPhcA2PI6J++lF/Hmqi5HtZmkKN3q/C7gwa+U/EUg== +cacheable-lookup@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/cacheable-lookup/-/cacheable-lookup-2.0.0.tgz#33b1e56f17507f5cf9bb46075112d65473fb7713" + integrity sha512-s2piO6LvA7xnL1AR03wuEdSx3BZT3tIJpZ56/lcJwzO/6DTJZlTs7X3lrvPxk6d1PlDe6PrVe2TjlUIZNFglAQ== dependencies: keyv "^4.0.0" @@ -626,7 +646,7 @@ chalk@^2.0.0, chalk@^2.1.0: escape-string-regexp "^1.0.5" supports-color "^4.0.0" -chalk@^2.0.1, chalk@^2.4.2: +chalk@^2.4.2: version "2.4.2" resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== @@ -791,10 +811,10 @@ config@^1.29.2: dependencies: json5 "^1.0.1" -config@^3.2.5: - version "3.2.5" - resolved "https://registry.yarnpkg.com/config/-/config-3.2.5.tgz#ab10ab88b61a873fbf9a5f0c6b4a22750422f243" - integrity sha512-8itpjyR01lAJanhAlPncBngYRZez/LoRLW8wnGi+6SEcsUyA1wvHvbpIrAJYDJT+W9BScnj4mYoUgbtp9I+0+Q== +config@^3.2.6, config@^3.3.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/config/-/config-3.3.0.tgz#574deb6ff1438807b7ecf6dbad20dd32dd5655ab" + integrity sha512-Xw++JjmYOLLX2HaYpySAveO8a9o+Af0jpDdEt1st8xtLeZI0bDfNsI90DGFyE/7mNnEjHiI8ivp/PieM6ODtdw== dependencies: json5 "^1.0.1" @@ -844,10 +864,10 @@ csv-parse@^1.3.3: resolved "https://registry.yarnpkg.com/csv-parse/-/csv-parse-1.3.3.tgz#d1cfd8743c2f849a0abb2fd544db56695d19a490" integrity sha1-0c/YdDwvhJoKuy/VRNtWaV0ZpJA= -csv-parse@^4.8.5: - version "4.8.5" - resolved "https://registry.yarnpkg.com/csv-parse/-/csv-parse-4.8.5.tgz#32e92a0e0acedab141bd5c5a3ad6fc3316f2c72d" - integrity sha512-rpsLmlLWJZifmLzZEVGbZ9phWnJyi+cCbCGYr4vX2NaHFtgbmQPFk+WmMkmMkQXgsIUn6CgnK9cTuUAfFjoXbA== +csv-parse@^4.8.6: + version "4.8.6" + resolved "https://registry.yarnpkg.com/csv-parse/-/csv-parse-4.8.6.tgz#e3e01c2c9593194f1b7aae6291c65304b35022c8" + integrity sha512-rSJlpgAjrB6pmlPaqiBAp3qVtQHN07VxI+ozs+knMsNvgh4bDQgENKLFYLFMvT+jn/wr/zvqsd7IVZ7Txdkr7w== csv-stringify@^1.1.2: version "1.1.2" @@ -1630,25 +1650,26 @@ globals@^12.1.0: dependencies: type-fest "^0.8.1" -got@^10.4.0: - version "10.4.0" - resolved "https://registry.yarnpkg.com/got/-/got-10.4.0.tgz#2bd869d3d965716a43bee89d6fc3d16b565109c4" - integrity sha512-yHxq0LgdLFmJcrl27wEOIvZaHbgtn1DYpYUUX/kovLZoQ8q+QwJH+i9zkldDxGUawu1cUsgNMp8Xxm5yKT2UyQ== +got@^10.6.0: + version "10.6.0" + resolved "https://registry.yarnpkg.com/got/-/got-10.6.0.tgz#ac3876261a4d8e5fc4f81186f79955ce7b0501dc" + integrity sha512-3LIdJNTdCFbbJc+h/EH0V5lpNpbJ6Bfwykk21lcQvQsEcrzdi/ltCyQehFHLzJ/ka0UMH4Slg0hkYvAZN9qUDg== dependencies: - "@sindresorhus/is" "^1.0.0" + "@sindresorhus/is" "^2.0.0" "@szmarczak/http-timer" "^4.0.0" "@types/cacheable-request" "^6.0.1" - cacheable-lookup "^1.0.0" + cacheable-lookup "^2.0.0" cacheable-request "^7.0.1" decompress-response "^5.0.0" duplexer3 "^0.1.4" get-stream "^5.0.0" lowercase-keys "^2.0.0" - mimic-response "^2.0.0" + mimic-response "^2.1.0" p-cancelable "^2.0.0" + p-event "^4.0.0" responselike "^2.0.0" to-readable-stream "^2.0.0" - type-fest "^0.9.0" + type-fest "^0.10.0" growl@1.10.5: version "1.10.5" @@ -2230,12 +2251,12 @@ lodash@^4.14.0, lodash@^4.15.0, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.4 resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.15.tgz#b447f6670a0455bbfeedd11392eff330ea097548" integrity sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A== -log-symbols@2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-2.2.0.tgz#5740e1c5d6f0dfda4ad9323b5332107ef6b4c40a" - integrity sha512-VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg== +log-symbols@3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-3.0.0.tgz#f3a08516a5dea893336a7dee14d18a1cfdab77c4" + integrity sha512-dSkNGuI7iG3mfvDzUuYZyvk5dD9ocYCYzNU6CYDE6+Xqd+gwme6Z00NS3dUh8mq/73HaEtT7m6W+yUPtU6BZnQ== dependencies: - chalk "^2.0.1" + chalk "^2.4.2" long@~3: version "3.2.0" @@ -2305,10 +2326,10 @@ mimic-response@^1.0.0: resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-1.0.1.tgz#4923538878eef42063cb8a3e3b0798781487ab1b" integrity sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ== -mimic-response@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-2.0.0.tgz#996a51c60adf12cb8a87d7fb8ef24c2f3d5ebb46" - integrity sha512-8ilDoEapqA4uQ3TwS0jakGONKXVJqpy+RpM+3b7pLdOjghCrEiGp9SRkFbUHAmZW9vdnrENWHjaweIoTIJExSQ== +mimic-response@^2.0.0, mimic-response@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-2.1.0.tgz#d13763d35f613d09ec37ebb30bac0469c0ee8f43" + integrity sha512-wXqjST+SLt7R009ySCglWBCFpjUygmCIfD790/kVbiGmUgfYGuB14PiTd5DwVxSV4NcYHjzMkoj5LjQZwTQLEA== minimalistic-assert@^1.0.0: version "1.0.1" @@ -2354,10 +2375,10 @@ mkdirp@0.5.1, mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.1: dependencies: minimist "0.0.8" -mocha@^7.0.1: - version "7.0.1" - resolved "https://registry.yarnpkg.com/mocha/-/mocha-7.0.1.tgz#276186d35a4852f6249808c6dd4a1376cbf6c6ce" - integrity sha512-9eWmWTdHLXh72rGrdZjNbG3aa1/3NRPpul1z0D979QpEnFdCG0Q5tv834N+94QEN2cysfV72YocQ3fn87s70fg== +mocha@^7.1.0: + version "7.1.0" + resolved "https://registry.yarnpkg.com/mocha/-/mocha-7.1.0.tgz#c784f579ad0904d29229ad6cb1e2514e4db7d249" + integrity sha512-MymHK8UkU0K15Q/zX7uflZgVoRWiTjy0fXE/QjKts6mowUvGxOdPhZ2qj3b0iZdUrNZlW9LAIMFHB4IW+2b3EQ== dependencies: ansi-colors "3.2.3" browser-stdout "1.3.1" @@ -2370,7 +2391,7 @@ mocha@^7.0.1: growl "1.10.5" he "1.2.0" js-yaml "3.13.1" - log-symbols "2.2.0" + log-symbols "3.0.0" minimatch "3.0.4" mkdirp "0.5.1" ms "2.1.1" @@ -2564,23 +2585,7 @@ node-environment-flags@1.0.6: object.getownpropertydescriptors "^2.0.3" semver "^5.7.0" -node-pre-gyp@0.13.0: - version "0.13.0" - resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.13.0.tgz#df9ab7b68dd6498137717838e4f92a33fc9daa42" - integrity sha512-Md1D3xnEne8b/HGVQkZZwV27WUi1ZRuZBij24TNaZwUPU3ZAFtvT6xxJGaUVillfmMKnn5oD1HoGsp2Ftik7SQ== - dependencies: - detect-libc "^1.0.2" - mkdirp "^0.5.1" - needle "^2.2.1" - nopt "^4.0.1" - npm-packlist "^1.1.6" - npmlog "^4.0.2" - rc "^1.2.7" - rimraf "^2.6.1" - semver "^5.3.0" - tar "^4" - -node-pre-gyp@^0.14.0: +node-pre-gyp@0.14.0, node-pre-gyp@^0.14.0: version "0.14.0" resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.14.0.tgz#9a0596533b877289bcad4e143982ca3d904ddc83" integrity sha512-+CvDC7ZttU/sSt9rFjix/P05iS43qHCOOGzcr3Ry99bXG7VX953+vFyEuph/tfqoYu8dttBkE86JSKBO2OzcxA== @@ -2772,6 +2777,18 @@ p-cancelable@^2.0.0: resolved "https://registry.yarnpkg.com/p-cancelable/-/p-cancelable-2.0.0.tgz#4a3740f5bdaf5ed5d7c3e34882c6fb5d6b266a6e" integrity sha512-wvPXDmbMmu2ksjkB4Z3nZWTSkJEb9lqVdMaCKpZUGJG9TMiNp9XcbG3fn9fPKjem04fJMJnXoyFPk2FmgiaiNg== +p-event@^4.0.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/p-event/-/p-event-4.1.0.tgz#e92bb866d7e8e5b732293b1c8269d38e9982bf8e" + integrity sha512-4vAd06GCsgflX4wHN1JqrMzBh/8QZ4j+rzp0cd2scXRwuBEv+QR3wrVA5aLhWDLw4y2WgDKvzWF3CCLmVM1UgA== + dependencies: + p-timeout "^2.0.1" + +p-finally@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" + integrity sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4= + p-limit@^2.0.0: version "2.2.2" resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.2.2.tgz#61279b67721f5287aa1c13a9a7fbbc48c9291b1e" @@ -2786,6 +2803,13 @@ p-locate@^3.0.0: dependencies: p-limit "^2.0.0" +p-timeout@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/p-timeout/-/p-timeout-2.0.1.tgz#d8dd1979595d2dc0139e1fe46b8b646cb3cdf038" + integrity sha512-88em58dDVB/KzPEx1X0N3LwFfYZPyDc4B6eF38M1rk9VTZMbxXXgjugz8mmwpS9Ox4BDZ+t6t3QP5+/gazweIA== + dependencies: + p-finally "^1.0.0" + p-try@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" @@ -3574,7 +3598,7 @@ table@^5.2.3: slice-ansi "^2.1.0" string-width "^3.0.0" -tar@^4, tar@^4.4.2: +tar@^4.4.2: version "4.4.13" resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.13.tgz#43b364bc52888d555298637b10d60790254ab525" integrity sha512-w2VwSrBoHa5BsSyH+KxEqeQBAllHhccyMFVHtGtdMpF4W7IRWfZjFiQceJPChOeTsSDVUpER2T8FA93pr0L+QA== @@ -3704,16 +3728,16 @@ type-detect@^4.0.0, type-detect@^4.0.5: resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c" integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g== +type-fest@^0.10.0: + version "0.10.0" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.10.0.tgz#7f06b2b9fbfc581068d1341ffabd0349ceafc642" + integrity sha512-EUV9jo4sffrwlg8s0zDhP0T2WD3pru5Xi0+HTE3zTUmBaZNhfkite9PdSJwdXLwPVW0jnAHT56pZHIOYckPEiw== + type-fest@^0.8.1: version "0.8.1" resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d" integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA== -type-fest@^0.9.0: - version "0.9.0" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.9.0.tgz#3b7904821e42b26377831a6e9b5d2930ab19c99a" - integrity sha512-j55pzONIdg7rdtJTRZPKIbV0FosUqYdhHK1aAYJIrUvejv1VVyBokrILE8KQDT4emW/1Ev9tx+yZG+AxuSBMmA== - type@^1.0.1: version "1.2.0" resolved "https://registry.yarnpkg.com/type/-/type-1.2.0.tgz#848dd7698dafa3e54a6c479e759c4bc3f18847a0" @@ -3764,11 +3788,16 @@ util-deprecate@^1.0.1, util-deprecate@~1.0.1: resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= -uuid@^3.0.0, uuid@^3.1.0, uuid@^3.3.2, uuid@^3.4.0: +uuid@^3.0.0, uuid@^3.1.0, uuid@^3.3.2: version "3.4.0" resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee" integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A== +uuid@^7.0.0, uuid@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-7.0.1.tgz#95ed6ff3d8c881cbf85f0f05cc3915ef994818ef" + integrity sha512-yqjRXZzSJm9Dbl84H2VDHpM3zMjzSJQ+hn6C4zqd5ilW+7P4ZmLEEqwho9LjP+tGuZlF4xrHQXT0h9QZUS/pWA== + v8-compile-cache@^2.0.3: version "2.1.0" resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.1.0.tgz#e14de37b31a6d194f5690d67efc4e7f6fc6ab30e" From 471f711fce810cb5b2f883d2f2357a76e633f31c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 14 Mar 2020 08:24:42 +0100 Subject: [PATCH 074/337] Bump acorn from 7.1.0 to 7.1.1 (#251) Bumps [acorn](https://github.com/acornjs/acorn) from 7.1.0 to 7.1.1. - [Release notes](https://github.com/acornjs/acorn/releases) - [Commits](https://github.com/acornjs/acorn/compare/7.1.0...7.1.1) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 75d16a5b..47d27beb 100644 --- a/yarn.lock +++ b/yarn.lock @@ -281,9 +281,9 @@ acorn-jsx@^5.1.0: integrity sha512-tMUqwBWfLFbJbizRmEcWSLw6HnFzfdJs2sOJEOwwtVPMoH/0Ay+E703oZz78VSXZiiDcZrQ5XKjPIUQixhmgVw== acorn@^7.1.0: - version "7.1.0" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.1.0.tgz#949d36f2c292535da602283586c2477c57eb2d6c" - integrity sha512-kL5CuoXA/dgxlBbVrflsflzQ3PAas7RYZB52NOm/6839iVYJgKMJ3cQJD+t2i5+qFa8h3MDpEOJiS64E8JLnSQ== + version "7.1.1" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.1.1.tgz#e35668de0b402f359de515c5482a1ab9f89a69bf" + integrity sha512-add7dgA5ppRPxCFJoAGfMDi7PIBXq1RtGo7BhbLaxwrXPOmw8gq48Y9ozT01hUKy9byMjlR20EJhu5zlkErEkg== addressparser@~1.0.1: version "1.0.1" From 4ea4f84d2a5a449e5af930aa5ea4e862814ecd72 Mon Sep 17 00:00:00 2001 From: Felix Erdmann Date: Wed, 29 Apr 2020 21:09:24 +0200 Subject: [PATCH 075/337] v9.2 (#278) * Bump config from 3.2.4 to 3.2.5 Bumps [config](https://github.com/lorenwest/node-config) from 3.2.4 to 3.2.5. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * [Security] Bump lodash from 4.17.4 to 4.17.15 (#210) Bumps [lodash](https://github.com/lodash/lodash) from 4.17.4 to 4.17.15. **This update includes security fixes.** - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.4...4.17.15) Signed-off-by: dependabot-preview[bot] * Bump got from 10.2.2 to 10.4.0 (#214) Bumps [got](https://github.com/sindresorhus/got) from 10.2.2 to 10.4.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.2.2...v10.4.0) Signed-off-by: dependabot-preview[bot] * Bump csv-parse from 4.8.3 to 4.8.5 (#211) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.3 to 4.8.5. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.3...v4.8.5) Signed-off-by: dependabot-preview[bot] * Bump uuid from 3.3.3 to 3.4.0 (#218) Bumps [uuid](https://github.com/uuidjs/uuid) from 3.3.3 to 3.4.0. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v3.3.3...v3.4.0) Signed-off-by: dependabot-preview[bot] * Bump restify-errors from 5.0.0 to 8.0.2 (#217) Bumps [restify-errors](https://github.com/restify/errors) from 5.0.0 to 8.0.2. - [Release notes](https://github.com/restify/errors/releases) - [Changelog](https://github.com/restify/errors/blob/master/CHANGELOG.md) - [Commits](https://github.com/restify/errors/compare/v5.0.0...v8.0.2) Signed-off-by: dependabot-preview[bot] * Bump mocha from 6.2.2 to 7.0.1 (#216) Bumps [mocha](https://github.com/mochajs/mocha) from 6.2.2 to 7.0.1. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v6.2.2...v7.0.1) Signed-off-by: dependabot-preview[bot] * Bump simple-statistics from 7.0.7 to 7.0.8 (#219) Bumps [simple-statistics](https://github.com/simple-statistics/simple-statistics) from 7.0.7 to 7.0.8. - [Release notes](https://github.com/simple-statistics/simple-statistics/releases) - [Changelog](https://github.com/simple-statistics/simple-statistics/blob/master/CHANGELOG.md) - [Commits](https://github.com/simple-statistics/simple-statistics/compare/v7.0.7...v7.0.8) Signed-off-by: dependabot-preview[bot] * v9 (#220) * v0.0.14 * bump api-models version * update changelog * Bump bcrypt from 3.0.7 to 3.0.8 (#222) Bumps [bcrypt](https://github.com/kelektiv/node.bcrypt.js) from 3.0.7 to 3.0.8. - [Release notes](https://github.com/kelektiv/node.bcrypt.js/releases) - [Changelog](https://github.com/kelektiv/node.bcrypt.js/blob/master/CHANGELOG.md) - [Commits](https://github.com/kelektiv/node.bcrypt.js/compare/v3.0.7...v3.0.8) Signed-off-by: dependabot-preview[bot] * Bump got from 10.4.0 to 10.5.0 (#223) Bumps [got](https://github.com/sindresorhus/got) from 10.4.0 to 10.5.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.4.0...v10.5.0) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.0 to 10.5.2 (#224) Bumps [got](https://github.com/sindresorhus/got) from 10.5.0 to 10.5.2. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.0...v10.5.2) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.2 to 10.5.3 (#225) Bumps [got](https://github.com/sindresorhus/got) from 10.5.2 to 10.5.3. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.2...v10.5.3) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.3 to 10.5.4 (#226) Bumps [got](https://github.com/sindresorhus/got) from 10.5.3 to 10.5.4. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.3...v10.5.4) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.4 to 10.5.5 (#227) Bumps [got](https://github.com/sindresorhus/got) from 10.5.4 to 10.5.5. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.4...v10.5.5) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.5 to 10.5.6 (#228) Bumps [got](https://github.com/sindresorhus/got) from 10.5.5 to 10.5.6. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.5...v10.5.6) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.6 to 10.5.7 (#229) Bumps [got](https://github.com/sindresorhus/got) from 10.5.6 to 10.5.7. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.6...v10.5.7) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.7 to 10.6.0 (#230) Bumps [got](https://github.com/sindresorhus/got) from 10.5.7 to 10.6.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.7...v10.6.0) Signed-off-by: dependabot-preview[bot] * Bump config from 3.2.5 to 3.2.6 (#232) Bumps [config](https://github.com/lorenwest/node-config) from 3.2.5 to 3.2.6. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * Bump csv-parse from 4.8.5 to 4.8.6 (#233) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.5 to 4.8.6. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.5...v4.8.6) Signed-off-by: dependabot-preview[bot] * bump node-sketch-templater version (#234) * Bump models version (#236) * v0.0.15 * bump opensensemap-api-models version * Bump uuid from 3.4.0 to 7.0.0 (#237) * Bump uuid from 3.4.0 to 7.0.0 Bumps [uuid](https://github.com/uuidjs/uuid) from 3.4.0 to 7.0.0. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v3.4.0...v7.0.0) Signed-off-by: dependabot-preview[bot] * fix uuid usage for 7.0.0 Co-authored-by: Gerald Pape * Bump @sensebox/sketch-templater from 1.5.4 to 1.5.5 (#238) Bumps [@sensebox/sketch-templater](https://github.com/sensebox/node-sketch-templater) from 1.5.4 to 1.5.5. - [Release notes](https://github.com/sensebox/node-sketch-templater/releases) - [Changelog](https://github.com/sensebox/node-sketch-templater/blob/master/CHANGELOG.md) - [Commits](https://github.com/sensebox/node-sketch-templater/compare/v1.5.4...v1.5.5) Signed-off-by: dependabot-preview[bot] * bump opensensemap-api-models version (#239) * Bump uuid from 7.0.0 to 7.0.1 (#240) Bumps [uuid](https://github.com/uuidjs/uuid) from 7.0.0 to 7.0.1. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v7.0.0...v7.0.1) Signed-off-by: dependabot-preview[bot] * Bump mocha from 7.0.1 to 7.1.0 (#241) Bumps [mocha](https://github.com/mochajs/mocha) from 7.0.1 to 7.1.0. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v7.0.1...v7.1.0) Signed-off-by: dependabot-preview[bot] * Bump config from 3.2.6 to 3.3.0 (#242) Bumps [config](https://github.com/lorenwest/node-config) from 3.2.6 to 3.3.0. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * Merge master in development (#244) * v0.0.14 * v9 (#221) * Bump config from 3.2.4 to 3.2.5 Bumps [config](https://github.com/lorenwest/node-config) from 3.2.4 to 3.2.5. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * [Security] Bump lodash from 4.17.4 to 4.17.15 (#210) Bumps [lodash](https://github.com/lodash/lodash) from 4.17.4 to 4.17.15. **This update includes security fixes.** - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.4...4.17.15) Signed-off-by: dependabot-preview[bot] * Bump got from 10.2.2 to 10.4.0 (#214) Bumps [got](https://github.com/sindresorhus/got) from 10.2.2 to 10.4.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.2.2...v10.4.0) Signed-off-by: dependabot-preview[bot] * Bump csv-parse from 4.8.3 to 4.8.5 (#211) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.3 to 4.8.5. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.3...v4.8.5) Signed-off-by: dependabot-preview[bot] * Bump uuid from 3.3.3 to 3.4.0 (#218) Bumps [uuid](https://github.com/uuidjs/uuid) from 3.3.3 to 3.4.0. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v3.3.3...v3.4.0) Signed-off-by: dependabot-preview[bot] * Bump restify-errors from 5.0.0 to 8.0.2 (#217) Bumps [restify-errors](https://github.com/restify/errors) from 5.0.0 to 8.0.2. - [Release notes](https://github.com/restify/errors/releases) - [Changelog](https://github.com/restify/errors/blob/master/CHANGELOG.md) - [Commits](https://github.com/restify/errors/compare/v5.0.0...v8.0.2) Signed-off-by: dependabot-preview[bot] * Bump mocha from 6.2.2 to 7.0.1 (#216) Bumps [mocha](https://github.com/mochajs/mocha) from 6.2.2 to 7.0.1. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v6.2.2...v7.0.1) Signed-off-by: dependabot-preview[bot] * Bump simple-statistics from 7.0.7 to 7.0.8 (#219) Bumps [simple-statistics](https://github.com/simple-statistics/simple-statistics) from 7.0.7 to 7.0.8. - [Release notes](https://github.com/simple-statistics/simple-statistics/releases) - [Changelog](https://github.com/simple-statistics/simple-statistics/blob/master/CHANGELOG.md) - [Commits](https://github.com/simple-statistics/simple-statistics/compare/v7.0.7...v7.0.8) Signed-off-by: dependabot-preview[bot] * v9 (#220) * v0.0.14 * bump api-models version * update changelog Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape * Fix development (#245) * v0.0.14 * v9 (#221) * Bump config from 3.2.4 to 3.2.5 Bumps [config](https://github.com/lorenwest/node-config) from 3.2.4 to 3.2.5. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * [Security] Bump lodash from 4.17.4 to 4.17.15 (#210) Bumps [lodash](https://github.com/lodash/lodash) from 4.17.4 to 4.17.15. **This update includes security fixes.** - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.4...4.17.15) Signed-off-by: dependabot-preview[bot] * Bump got from 10.2.2 to 10.4.0 (#214) Bumps [got](https://github.com/sindresorhus/got) from 10.2.2 to 10.4.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.2.2...v10.4.0) Signed-off-by: dependabot-preview[bot] * Bump csv-parse from 4.8.3 to 4.8.5 (#211) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.3 to 4.8.5. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.3...v4.8.5) Signed-off-by: dependabot-preview[bot] * Bump uuid from 3.3.3 to 3.4.0 (#218) Bumps [uuid](https://github.com/uuidjs/uuid) from 3.3.3 to 3.4.0. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v3.3.3...v3.4.0) Signed-off-by: dependabot-preview[bot] * Bump restify-errors from 5.0.0 to 8.0.2 (#217) Bumps [restify-errors](https://github.com/restify/errors) from 5.0.0 to 8.0.2. - [Release notes](https://github.com/restify/errors/releases) - [Changelog](https://github.com/restify/errors/blob/master/CHANGELOG.md) - [Commits](https://github.com/restify/errors/compare/v5.0.0...v8.0.2) Signed-off-by: dependabot-preview[bot] * Bump mocha from 6.2.2 to 7.0.1 (#216) Bumps [mocha](https://github.com/mochajs/mocha) from 6.2.2 to 7.0.1. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v6.2.2...v7.0.1) Signed-off-by: dependabot-preview[bot] * Bump simple-statistics from 7.0.7 to 7.0.8 (#219) Bumps [simple-statistics](https://github.com/simple-statistics/simple-statistics) from 7.0.7 to 7.0.8. - [Release notes](https://github.com/simple-statistics/simple-statistics/releases) - [Changelog](https://github.com/simple-statistics/simple-statistics/blob/master/CHANGELOG.md) - [Commits](https://github.com/simple-statistics/simple-statistics/compare/v7.0.7...v7.0.8) Signed-off-by: dependabot-preview[bot] * v9 (#220) * v0.0.14 * bump api-models version * update changelog Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape Co-authored-by: Felix Erdmann Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump csv-parse from 4.8.6 to 4.8.7 (#246) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.6 to 4.8.7. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.6...v4.8.7) Signed-off-by: dependabot-preview[bot] * Bump bcrypt from 3.0.8 to 4.0.1 (#247) Bumps [bcrypt](https://github.com/kelektiv/node.bcrypt.js) from 3.0.8 to 4.0.1. - [Release notes](https://github.com/kelektiv/node.bcrypt.js/releases) - [Changelog](https://github.com/kelektiv/node.bcrypt.js/blob/master/CHANGELOG.md) - [Commits](https://github.com/kelektiv/node.bcrypt.js/compare/v3.0.8...v4.0.1) Signed-off-by: dependabot-preview[bot] * Bump csv-parse from 4.8.7 to 4.8.8 (#248) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.7 to 4.8.8. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.7...v4.8.8) Signed-off-by: dependabot-preview[bot] * Bump uuid from 7.0.1 to 7.0.2 (#249) Bumps [uuid](https://github.com/uuidjs/uuid) from 7.0.1 to 7.0.2. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v7.0.1...v7.0.2) Signed-off-by: dependabot-preview[bot] * [Security] Bump acorn from 7.1.0 to 7.1.1 (#250) Bumps [acorn](https://github.com/acornjs/acorn) from 7.1.0 to 7.1.1. **This update includes a security fix.** - [Release notes](https://github.com/acornjs/acorn/releases) - [Commits](https://github.com/acornjs/acorn/compare/7.1.0...7.1.1) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump mocha from 7.1.0 to 7.1.1 (#252) Bumps [mocha](https://github.com/mochajs/mocha) from 7.1.0 to 7.1.1. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/v7.1.1/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v7.1.0...v7.1.1) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * [Security] Bump minimist from 1.2.0 to 1.2.5 (#253) Bumps [minimist](https://github.com/substack/minimist) from 1.2.0 to 1.2.5. **This update includes a security fix.** - [Release notes](https://github.com/substack/minimist/releases) - [Commits](https://github.com/substack/minimist/compare/1.2.0...1.2.5) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump honeybadger from 1.3.0 to 1.4.0 (#254) Bumps [honeybadger](https://github.com/honeybadger-io/honeybadger-node) from 1.3.0 to 1.4.0. - [Release notes](https://github.com/honeybadger-io/honeybadger-node/releases) - [Changelog](https://github.com/honeybadger-io/honeybadger-node/blob/master/CHANGELOG.md) - [Commits](https://github.com/honeybadger-io/honeybadger-node/compare/v1.3.0...v1.4.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump got from 10.6.0 to 10.7.0 (#255) Bumps [got](https://github.com/sindresorhus/got) from 10.6.0 to 10.7.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.6.0...v10.7.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump config from 3.3.0 to 3.3.1 (#256) Bumps [config](https://github.com/lorenwest/node-config) from 3.3.0 to 3.3.1. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump uuid from 7.0.2 to 7.0.3 (#257) Bumps [uuid](https://github.com/uuidjs/uuid) from 7.0.2 to 7.0.3. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v7.0.2...v7.0.3) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bsec (#259) * update bme phenomenons * v0.0.16 * v0.0.17 * Bsec (#261) * update bme phenomenons * v0.0.16 * v0.0.17 * fix spelling mistake * v0.0.18 * update api models version * bump sketch templater version * v0.0.19 * bump opensensemap-api-models version * Bump got from 10.7.0 to 11.0.0 (#263) Bumps [got](https://github.com/sindresorhus/got) from 10.7.0 to 11.0.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.7.0...v11.0.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump csv-stringify from 5.3.6 to 5.4.0 (#264) Bumps [csv-stringify](https://github.com/adaltas/node-csv-stringify) from 5.3.6 to 5.4.0. - [Release notes](https://github.com/adaltas/node-csv-stringify/releases) - [Changelog](https://github.com/adaltas/node-csv-stringify/blob/master/CHANGELOG.md) - [Commits](https://github.com/adaltas/node-csv-stringify/compare/v5.3.6...v5.4.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump csv-parse from 4.8.8 to 4.8.9 (#265) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.8 to 4.8.9. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.8...v4.8.9) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape * Bump got from 11.0.0 to 11.0.1 (#266) Bumps [got](https://github.com/sindresorhus/got) from 11.0.0 to 11.0.1. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/commits) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape * Bump simple-statistics from 7.0.8 to 7.0.9 (#267) Bumps [simple-statistics](https://github.com/simple-statistics/simple-statistics) from 7.0.8 to 7.0.9. - [Release notes](https://github.com/simple-statistics/simple-statistics/releases) - [Changelog](https://github.com/simple-statistics/simple-statistics/blob/master/CHANGELOG.md) - [Commits](https://github.com/simple-statistics/simple-statistics/compare/v7.0.8...v7.0.9) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape * Bump csv-stringify from 5.4.0 to 5.4.2 (#269) Bumps [csv-stringify](https://github.com/adaltas/node-csv-stringify) from 5.4.0 to 5.4.2. - [Release notes](https://github.com/adaltas/node-csv-stringify/releases) - [Changelog](https://github.com/adaltas/node-csv-stringify/blob/master/CHANGELOG.md) - [Commits](https://github.com/adaltas/node-csv-stringify/compare/v5.4.0...v5.4.2) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump csv-stringify from 5.4.2 to 5.4.3 (#270) Bumps [csv-stringify](https://github.com/adaltas/node-csv-stringify) from 5.4.2 to 5.4.3. - [Release notes](https://github.com/adaltas/node-csv-stringify/releases) - [Changelog](https://github.com/adaltas/node-csv-stringify/blob/master/CHANGELOG.md) - [Commits](https://github.com/adaltas/node-csv-stringify/compare/v5.4.2...v5.4.3) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump got from 11.0.1 to 11.0.2 (#271) Bumps [got](https://github.com/sindresorhus/got) from 11.0.1 to 11.0.2. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v11.0.1...v11.0.2) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Revert bsec (#272) * Revert "Bsec (#261)" This reverts commit 4e7fba4cad5f240f26d77f97cb5a6f63baae91e1. * Revert "Bsec (#259)" This reverts commit 0e99504f388679bb733c3fe247f244120229cdd4. * update yarn.lock * use api model 0.0.15 * Bump mocha from 7.1.1 to 7.1.2 (#273) Bumps [mocha](https://github.com/mochajs/mocha) from 7.1.1 to 7.1.2. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/v7.1.2/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v7.1.1...v7.1.2) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump csv-parse from 4.8.9 to 4.9.0 (#274) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.9 to 4.9.0. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.9...v4.9.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Ttn ids (#277) * v9.1 (#243) * Bump config from 3.2.4 to 3.2.5 Bumps [config](https://github.com/lorenwest/node-config) from 3.2.4 to 3.2.5. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * [Security] Bump lodash from 4.17.4 to 4.17.15 (#210) Bumps [lodash](https://github.com/lodash/lodash) from 4.17.4 to 4.17.15. **This update includes security fixes.** - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.4...4.17.15) Signed-off-by: dependabot-preview[bot] * Bump got from 10.2.2 to 10.4.0 (#214) Bumps [got](https://github.com/sindresorhus/got) from 10.2.2 to 10.4.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.2.2...v10.4.0) Signed-off-by: dependabot-preview[bot] * Bump csv-parse from 4.8.3 to 4.8.5 (#211) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.3 to 4.8.5. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.3...v4.8.5) Signed-off-by: dependabot-preview[bot] * Bump uuid from 3.3.3 to 3.4.0 (#218) Bumps [uuid](https://github.com/uuidjs/uuid) from 3.3.3 to 3.4.0. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v3.3.3...v3.4.0) Signed-off-by: dependabot-preview[bot] * Bump restify-errors from 5.0.0 to 8.0.2 (#217) Bumps [restify-errors](https://github.com/restify/errors) from 5.0.0 to 8.0.2. - [Release notes](https://github.com/restify/errors/releases) - [Changelog](https://github.com/restify/errors/blob/master/CHANGELOG.md) - [Commits](https://github.com/restify/errors/compare/v5.0.0...v8.0.2) Signed-off-by: dependabot-preview[bot] * Bump mocha from 6.2.2 to 7.0.1 (#216) Bumps [mocha](https://github.com/mochajs/mocha) from 6.2.2 to 7.0.1. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v6.2.2...v7.0.1) Signed-off-by: dependabot-preview[bot] * Bump simple-statistics from 7.0.7 to 7.0.8 (#219) Bumps [simple-statistics](https://github.com/simple-statistics/simple-statistics) from 7.0.7 to 7.0.8. - [Release notes](https://github.com/simple-statistics/simple-statistics/releases) - [Changelog](https://github.com/simple-statistics/simple-statistics/blob/master/CHANGELOG.md) - [Commits](https://github.com/simple-statistics/simple-statistics/compare/v7.0.7...v7.0.8) Signed-off-by: dependabot-preview[bot] * v9 (#220) * v0.0.14 * bump api-models version * update changelog * Bump bcrypt from 3.0.7 to 3.0.8 (#222) Bumps [bcrypt](https://github.com/kelektiv/node.bcrypt.js) from 3.0.7 to 3.0.8. - [Release notes](https://github.com/kelektiv/node.bcrypt.js/releases) - [Changelog](https://github.com/kelektiv/node.bcrypt.js/blob/master/CHANGELOG.md) - [Commits](https://github.com/kelektiv/node.bcrypt.js/compare/v3.0.7...v3.0.8) Signed-off-by: dependabot-preview[bot] * Bump got from 10.4.0 to 10.5.0 (#223) Bumps [got](https://github.com/sindresorhus/got) from 10.4.0 to 10.5.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.4.0...v10.5.0) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.0 to 10.5.2 (#224) Bumps [got](https://github.com/sindresorhus/got) from 10.5.0 to 10.5.2. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.0...v10.5.2) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.2 to 10.5.3 (#225) Bumps [got](https://github.com/sindresorhus/got) from 10.5.2 to 10.5.3. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.2...v10.5.3) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.3 to 10.5.4 (#226) Bumps [got](https://github.com/sindresorhus/got) from 10.5.3 to 10.5.4. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.3...v10.5.4) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.4 to 10.5.5 (#227) Bumps [got](https://github.com/sindresorhus/got) from 10.5.4 to 10.5.5. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.4...v10.5.5) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.5 to 10.5.6 (#228) Bumps [got](https://github.com/sindresorhus/got) from 10.5.5 to 10.5.6. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.5...v10.5.6) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.6 to 10.5.7 (#229) Bumps [got](https://github.com/sindresorhus/got) from 10.5.6 to 10.5.7. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.6...v10.5.7) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.7 to 10.6.0 (#230) Bumps [got](https://github.com/sindresorhus/got) from 10.5.7 to 10.6.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.7...v10.6.0) Signed-off-by: dependabot-preview[bot] * Bump config from 3.2.5 to 3.2.6 (#232) Bumps [config](https://github.com/lorenwest/node-config) from 3.2.5 to 3.2.6. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * Bump csv-parse from 4.8.5 to 4.8.6 (#233) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.5 to 4.8.6. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.5...v4.8.6) Signed-off-by: dependabot-preview[bot] * bump node-sketch-templater version (#234) * Bump models version (#236) * v0.0.15 * bump opensensemap-api-models version * Bump uuid from 3.4.0 to 7.0.0 (#237) * Bump uuid from 3.4.0 to 7.0.0 Bumps [uuid](https://github.com/uuidjs/uuid) from 3.4.0 to 7.0.0. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v3.4.0...v7.0.0) Signed-off-by: dependabot-preview[bot] * fix uuid usage for 7.0.0 Co-authored-by: Gerald Pape * Bump @sensebox/sketch-templater from 1.5.4 to 1.5.5 (#238) Bumps [@sensebox/sketch-templater](https://github.com/sensebox/node-sketch-templater) from 1.5.4 to 1.5.5. - [Release notes](https://github.com/sensebox/node-sketch-templater/releases) - [Changelog](https://github.com/sensebox/node-sketch-templater/blob/master/CHANGELOG.md) - [Commits](https://github.com/sensebox/node-sketch-templater/compare/v1.5.4...v1.5.5) Signed-off-by: dependabot-preview[bot] * bump opensensemap-api-models version (#239) * Bump uuid from 7.0.0 to 7.0.1 (#240) Bumps [uuid](https://github.com/uuidjs/uuid) from 7.0.0 to 7.0.1. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v7.0.0...v7.0.1) Signed-off-by: dependabot-preview[bot] * Bump mocha from 7.0.1 to 7.1.0 (#241) Bumps [mocha](https://github.com/mochajs/mocha) from 7.0.1 to 7.1.0. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v7.0.1...v7.1.0) Signed-off-by: dependabot-preview[bot] * Bump config from 3.2.6 to 3.3.0 (#242) Bumps [config](https://github.com/lorenwest/node-config) from 3.2.6 to 3.3.0. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * Merge master in development (#244) * v0.0.14 * v9 (#221) * Bump config from 3.2.4 to 3.2.5 Bumps [config](https://github.com/lorenwest/node-config) from 3.2.4 to 3.2.5. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * [Security] Bump lodash from 4.17.4 to 4.17.15 (#210) Bumps [lodash](https://github.com/lodash/lodash) from 4.17.4 to 4.17.15. **This update includes security fixes.** - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.4...4.17.15) Signed-off-by: dependabot-preview[bot] * Bump got from 10.2.2 to 10.4.0 (#214) Bumps [got](https://github.com/sindresorhus/got) from 10.2.2 to 10.4.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.2.2...v10.4.0) Signed-off-by: dependabot-preview[bot] * Bump csv-parse from 4.8.3 to 4.8.5 (#211) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.3 to 4.8.5. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.3...v4.8.5) Signed-off-by: dependabot-preview[bot] * Bump uuid from 3.3.3 to 3.4.0 (#218) Bumps [uuid](https://github.com/uuidjs/uuid) from 3.3.3 to 3.4.0. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v3.3.3...v3.4.0) Signed-off-by: dependabot-preview[bot] * Bump restify-errors from 5.0.0 to 8.0.2 (#217) Bumps [restify-errors](https://github.com/restify/errors) from 5.0.0 to 8.0.2. - [Release notes](https://github.com/restify/errors/releases) - [Changelog](https://github.com/restify/errors/blob/master/CHANGELOG.md) - [Commits](https://github.com/restify/errors/compare/v5.0.0...v8.0.2) Signed-off-by: dependabot-preview[bot] * Bump mocha from 6.2.2 to 7.0.1 (#216) Bumps [mocha](https://github.com/mochajs/mocha) from 6.2.2 to 7.0.1. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v6.2.2...v7.0.1) Signed-off-by: dependabot-preview[bot] * Bump simple-statistics from 7.0.7 to 7.0.8 (#219) Bumps [simple-statistics](https://github.com/simple-statistics/simple-statistics) from 7.0.7 to 7.0.8. - [Release notes](https://github.com/simple-statistics/simple-statistics/releases) - [Changelog](https://github.com/simple-statistics/simple-statistics/blob/master/CHANGELOG.md) - [Commits](https://github.com/simple-statistics/simple-statistics/compare/v7.0.7...v7.0.8) Signed-off-by: dependabot-preview[bot] * v9 (#220) * v0.0.14 * bump api-models version * update changelog Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape * Fix development (#245) * v0.0.14 * v9 (#221) * Bump config from 3.2.4 to 3.2.5 Bumps [config](https://github.com/lorenwest/node-config) from 3.2.4 to 3.2.5. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * [Security] Bump lodash from 4.17.4 to 4.17.15 (#210) Bumps [lodash](https://github.com/lodash/lodash) from 4.17.4 to 4.17.15. **This update includes security fixes.** - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.4...4.17.15) Signed-off-by: dependabot-preview[bot] * Bump got from 10.2.2 to 10.4.0 (#214) Bumps [got](https://github.com/sindresorhus/got) from 10.2.2 to 10.4.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.2.2...v10.4.0) Signed-off-by: dependabot-preview[bot] * Bump csv-parse from 4.8.3 to 4.8.5 (#211) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.3 to 4.8.5. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.3...v4.8.5) Signed-off-by: dependabot-preview[bot] * Bump uuid from 3.3.3 to 3.4.0 (#218) Bumps [uuid](https://github.com/uuidjs/uuid) from 3.3.3 to 3.4.0. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v3.3.3...v3.4.0) Signed-off-by: dependabot-preview[bot] * Bump restify-errors from 5.0.0 to 8.0.2 (#217) Bumps [restify-errors](https://github.com/restify/errors) from 5.0.0 to 8.0.2. - [Release notes](https://github.com/restify/errors/releases) - [Changelog](https://github.com/restify/errors/blob/master/CHANGELOG.md) - [Commits](https://github.com/restify/errors/compare/v5.0.0...v8.0.2) Signed-off-by: dependabot-preview[bot] * Bump mocha from 6.2.2 to 7.0.1 (#216) Bumps [mocha](https://github.com/mochajs/mocha) from 6.2.2 to 7.0.1. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v6.2.2...v7.0.1) Signed-off-by: dependabot-preview[bot] * Bump simple-statistics from 7.0.7 to 7.0.8 (#219) Bumps [simple-statistics](https://github.com/simple-statistics/simple-statistics) from 7.0.7 to 7.0.8. - [Release notes](https://github.com/simple-statistics/simple-statistics/releases) - [Changelog](https://github.com/simple-statistics/simple-statistics/blob/master/CHANGELOG.md) - [Commits](https://github.com/simple-statistics/simple-statistics/compare/v7.0.7...v7.0.8) Signed-off-by: dependabot-preview[bot] * v9 (#220) * v0.0.14 * bump api-models version * update changelog Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape Co-authored-by: Felix Erdmann Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape * Bump acorn from 7.1.0 to 7.1.1 (#251) Bumps [acorn](https://github.com/acornjs/acorn) from 7.1.0 to 7.1.1. - [Release notes](https://github.com/acornjs/acorn/releases) - [Commits](https://github.com/acornjs/acorn/compare/7.1.0...7.1.1) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * test catching error? * tests * no log * v0.0.16-beta * use models 0.0.16-beta with TTN IDs * v0.0.0 * just an empty push * Update @sensebox/node-sketch-templater to v1.7.0-beta2 * v0.0.16-beta.2 * use @sensebox/opensensemap-api-models 0.0.16-beta.2 * undo mistakes and run yarn * v0.0.16-beta.3 * update @sensebox/opensensemap-api-models * Update @sensebox/node-sketch-templater to v1.7.0 * v0.0.17 * v0.0.18 * v0.0.19 * v0.0.20 * update @sensebox/opensensemap-api-models to v0.0.20 Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: umut0 * Resolve conflicts (#279) * v9.1 (#243) * Bump config from 3.2.4 to 3.2.5 Bumps [config](https://github.com/lorenwest/node-config) from 3.2.4 to 3.2.5. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * [Security] Bump lodash from 4.17.4 to 4.17.15 (#210) Bumps [lodash](https://github.com/lodash/lodash) from 4.17.4 to 4.17.15. **This update includes security fixes.** - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.4...4.17.15) Signed-off-by: dependabot-preview[bot] * Bump got from 10.2.2 to 10.4.0 (#214) Bumps [got](https://github.com/sindresorhus/got) from 10.2.2 to 10.4.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.2.2...v10.4.0) Signed-off-by: dependabot-preview[bot] * Bump csv-parse from 4.8.3 to 4.8.5 (#211) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.3 to 4.8.5. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.3...v4.8.5) Signed-off-by: dependabot-preview[bot] * Bump uuid from 3.3.3 to 3.4.0 (#218) Bumps [uuid](https://github.com/uuidjs/uuid) from 3.3.3 to 3.4.0. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v3.3.3...v3.4.0) Signed-off-by: dependabot-preview[bot] * Bump restify-errors from 5.0.0 to 8.0.2 (#217) Bumps [restify-errors](https://github.com/restify/errors) from 5.0.0 to 8.0.2. - [Release notes](https://github.com/restify/errors/releases) - [Changelog](https://github.com/restify/errors/blob/master/CHANGELOG.md) - [Commits](https://github.com/restify/errors/compare/v5.0.0...v8.0.2) Signed-off-by: dependabot-preview[bot] * Bump mocha from 6.2.2 to 7.0.1 (#216) Bumps [mocha](https://github.com/mochajs/mocha) from 6.2.2 to 7.0.1. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v6.2.2...v7.0.1) Signed-off-by: dependabot-preview[bot] * Bump simple-statistics from 7.0.7 to 7.0.8 (#219) Bumps [simple-statistics](https://github.com/simple-statistics/simple-statistics) from 7.0.7 to 7.0.8. - [Release notes](https://github.com/simple-statistics/simple-statistics/releases) - [Changelog](https://github.com/simple-statistics/simple-statistics/blob/master/CHANGELOG.md) - [Commits](https://github.com/simple-statistics/simple-statistics/compare/v7.0.7...v7.0.8) Signed-off-by: dependabot-preview[bot] * v9 (#220) * v0.0.14 * bump api-models version * update changelog * Bump bcrypt from 3.0.7 to 3.0.8 (#222) Bumps [bcrypt](https://github.com/kelektiv/node.bcrypt.js) from 3.0.7 to 3.0.8. - [Release notes](https://github.com/kelektiv/node.bcrypt.js/releases) - [Changelog](https://github.com/kelektiv/node.bcrypt.js/blob/master/CHANGELOG.md) - [Commits](https://github.com/kelektiv/node.bcrypt.js/compare/v3.0.7...v3.0.8) Signed-off-by: dependabot-preview[bot] * Bump got from 10.4.0 to 10.5.0 (#223) Bumps [got](https://github.com/sindresorhus/got) from 10.4.0 to 10.5.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.4.0...v10.5.0) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.0 to 10.5.2 (#224) Bumps [got](https://github.com/sindresorhus/got) from 10.5.0 to 10.5.2. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.0...v10.5.2) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.2 to 10.5.3 (#225) Bumps [got](https://github.com/sindresorhus/got) from 10.5.2 to 10.5.3. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.2...v10.5.3) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.3 to 10.5.4 (#226) Bumps [got](https://github.com/sindresorhus/got) from 10.5.3 to 10.5.4. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.3...v10.5.4) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.4 to 10.5.5 (#227) Bumps [got](https://github.com/sindresorhus/got) from 10.5.4 to 10.5.5. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.4...v10.5.5) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.5 to 10.5.6 (#228) Bumps [got](https://github.com/sindresorhus/got) from 10.5.5 to 10.5.6. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.5...v10.5.6) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.6 to 10.5.7 (#229) Bumps [got](https://github.com/sindresorhus/got) from 10.5.6 to 10.5.7. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.6...v10.5.7) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.7 to 10.6.0 (#230) Bumps [got](https://github.com/sindresorhus/got) from 10.5.7 to 10.6.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.7...v10.6.0) Signed-off-by: dependabot-preview[bot] * Bump config from 3.2.5 to 3.2.6 (#232) Bumps [config](https://github.com/lorenwest/node-config) from 3.2.5 to 3.2.6. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * Bump csv-parse from 4.8.5 to 4.8.6 (#233) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.5 to 4.8.6. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.5...v4.8.6) Signed-off-by: dependabot-preview[bot] * bump node-sketch-templater version (#234) * Bump models version (#236) * v0.0.15 * bump opensensemap-api-models version * Bump uuid from 3.4.0 to 7.0.0 (#237) * Bump uuid from 3.4.0 to 7.0.0 Bumps [uuid](https://github.com/uuidjs/uuid) from 3.4.0 to 7.0.0. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v3.4.0...v7.0.0) Signed-off-by: dependabot-preview[bot] * fix uuid usage for 7.0.0 Co-authored-by: Gerald Pape * Bump @sensebox/sketch-templater from 1.5.4 to 1.5.5 (#238) Bumps [@sensebox/sketch-templater](https://github.com/sensebox/node-sketch-templater) from 1.5.4 to 1.5.5. - [Release notes](https://github.com/sensebox/node-sketch-templater/releases) - [Changelog](https://github.com/sensebox/node-sketch-templater/blob/master/CHANGELOG.md) - [Commits](https://github.com/sensebox/node-sketch-templater/compare/v1.5.4...v1.5.5) Signed-off-by: dependabot-preview[bot] * bump opensensemap-api-models version (#239) * Bump uuid from 7.0.0 to 7.0.1 (#240) Bumps [uuid](https://github.com/uuidjs/uuid) from 7.0.0 to 7.0.1. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v7.0.0...v7.0.1) Signed-off-by: dependabot-preview[bot] * Bump mocha from 7.0.1 to 7.1.0 (#241) Bumps [mocha](https://github.com/mochajs/mocha) from 7.0.1 to 7.1.0. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v7.0.1...v7.1.0) Signed-off-by: dependabot-preview[bot] * Bump config from 3.2.6 to 3.3.0 (#242) Bumps [config](https://github.com/lorenwest/node-config) from 3.2.6 to 3.3.0. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * Merge master in development (#244) * v0.0.14 * v9 (#221) * Bump config from 3.2.4 to 3.2.5 Bumps [config](https://github.com/lorenwest/node-config) from 3.2.4 to 3.2.5. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * [Security] Bump lodash from 4.17.4 to 4.17.15 (#210) Bumps [lodash](https://github.com/lodash/lodash) from 4.17.4 to 4.17.15. **This update includes security fixes.** - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.4...4.17.15) Signed-off-by: dependabot-preview[bot] * Bump got from 10.2.2 to 10.4.0 (#214) Bumps [got](https://github.com/sindresorhus/got) from 10.2.2 to 10.4.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.2.2...v10.4.0) Signed-off-by: dependabot-preview[bot] * Bump csv-parse from 4.8.3 to 4.8.5 (#211) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.3 to 4.8.5. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.3...v4.8.5) Signed-off-by: dependabot-preview[bot] * Bump uuid from 3.3.3 to 3.4.0 (#218) Bumps [uuid](https://github.com/uuidjs/uuid) from 3.3.3 to 3.4.0. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v3.3.3...v3.4.0) Signed-off-by: dependabot-preview[bot] * Bump restify-errors from 5.0.0 to 8.0.2 (#217) Bumps [restify-errors](https://github.com/restify/errors) from 5.0.0 to 8.0.2. - [Release notes](https://github.com/restify/errors/releases) - [Changelog](https://github.com/restify/errors/blob/master/CHANGELOG.md) - [Commits](https://github.com/restify/errors/compare/v5.0.0...v8.0.2) Signed-off-by: dependabot-preview[bot] * Bump mocha from 6.2.2 to 7.0.1 (#216) Bumps [mocha](https://github.com/mochajs/mocha) from 6.2.2 to 7.0.1. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v6.2.2...v7.0.1) Signed-off-by: dependabot-preview[bot] * Bump simple-statistics from 7.0.7 to 7.0.8 (#219) Bumps [simple-statistics](https://github.com/simple-statistics/simple-statistics) from 7.0.7 to 7.0.8. - [Release notes](https://github.com/simple-statistics/simple-statistics/releases) - [Changelog](https://github.com/simple-statistics/simple-statistics/blob/master/CHANGELOG.md) - [Commits](https://github.com/simple-statistics/simple-statistics/compare/v7.0.7...v7.0.8) Signed-off-by: dependabot-preview[bot] * v9 (#220) * v0.0.14 * bump api-models version * update changelog Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape * Fix development (#245) * v0.0.14 * v9 (#221) * Bump config from 3.2.4 to 3.2.5 Bumps [config](https://github.com/lorenwest/node-config) from 3.2.4 to 3.2.5. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * [Security] Bump lodash from 4.17.4 to 4.17.15 (#210) Bumps [lodash](https://github.com/lodash/lodash) from 4.17.4 to 4.17.15. **This update includes security fixes.** - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.4...4.17.15) Signed-off-by: dependabot-preview[bot] * Bump got from 10.2.2 to 10.4.0 (#214) Bumps [got](https://github.com/sindresorhus/got) from 10.2.2 to 10.4.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.2.2...v10.4.0) Signed-off-by: dependabot-preview[bot] * Bump csv-parse from 4.8.3 to 4.8.5 (#211) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.3 to 4.8.5. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.3...v4.8.5) Signed-off-by: dependabot-preview[bot] * Bump uuid from 3.3.3 to 3.4.0 (#218) Bumps [uuid](https://github.com/uuidjs/uuid) from 3.3.3 to 3.4.0. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v3.3.3...v3.4.0) Signed-off-by: dependabot-preview[bot] * Bump restify-errors from 5.0.0 to 8.0.2 (#217) Bumps [restify-errors](https://github.com/restify/errors) from 5.0.0 to 8.0.2. - [Release notes](https://github.com/restify/errors/releases) - [Changelog](https://github.com/restify/errors/blob/master/CHANGELOG.md) - [Commits](https://github.com/restify/errors/compare/v5.0.0...v8.0.2) Signed-off-by: dependabot-preview[bot] * Bump mocha from 6.2.2 to 7.0.1 (#216) Bumps [mocha](https://github.com/mochajs/mocha) from 6.2.2 to 7.0.1. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v6.2.2...v7.0.1) Signed-off-by: dependabot-preview[bot] * Bump simple-statistics from 7.0.7 to 7.0.8 (#219) Bumps [simple-statistics](https://github.com/simple-statistics/simple-statistics) from 7.0.7 to 7.0.8. - [Release notes](https://github.com/simple-statistics/simple-statistics/releases) - [Changelog](https://github.com/simple-statistics/simple-statistics/blob/master/CHANGELOG.md) - [Commits](https://github.com/simple-statistics/simple-statistics/compare/v7.0.7...v7.0.8) Signed-off-by: dependabot-preview[bot] * v9 (#220) * v0.0.14 * bump api-models version * update changelog Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape Co-authored-by: Felix Erdmann Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape * Bump acorn from 7.1.0 to 7.1.1 (#251) Bumps [acorn](https://github.com/acornjs/acorn) from 7.1.0 to 7.1.1. - [Release notes](https://github.com/acornjs/acorn/releases) - [Commits](https://github.com/acornjs/acorn/compare/7.1.0...7.1.1) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * update CHANGELOG.md Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape Co-authored-by: Gerald Pape Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: umut0 --- CHANGELOG.md | 3 + package.json | 6 +- .../api/lib/controllers/boxesController.js | 13 +- packages/api/lib/helpers/userParamHelpers.js | 11 +- packages/api/package.json | 16 +- packages/models/CHANGELOG.md | 19 + packages/models/package.json | 12 +- packages/models/src/box/box.js | 5 +- packages/models/src/user/mails.js | 12 +- yarn.lock | 891 ++++++++---------- 10 files changed, 475 insertions(+), 513 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index bf207866..922d992c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,8 @@ # openSenseMap API Changelog +## v9.2 +- Include TTN EUIs and Key in LoRaWAN sketch + ## v9 - Use Node 12 - Bump dependencies diff --git a/package.json b/package.json index 19639715..38a4f1a9 100644 --- a/package.json +++ b/package.json @@ -21,11 +21,11 @@ "chai": "^4.1.2", "chakram": "^1.5.0", "cheerio": "^1.0.0-rc.2", - "csv-parse": "^4.8.6", + "csv-parse": "^4.9.0", "eslint": "6.8.0", "mimelib": "^0.3.1", - "mocha": "^7.1.0", + "mocha": "^7.1.2", "mqtt": "^3.0.0", "randomgeojson": "^1.0.0" } -} +} \ No newline at end of file diff --git a/packages/api/lib/controllers/boxesController.js b/packages/api/lib/controllers/boxesController.js index 92b6ba6c..742fff5c 100644 --- a/packages/api/lib/controllers/boxesController.js +++ b/packages/api/lib/controllers/boxesController.js @@ -413,6 +413,9 @@ const postNewBox = async function postNewBox (req, res, next) { * @apiParam {String="A","B","C"} soundMeterPort the digital port the soundlevelmeter sensor is connected to * @apiParam {String} ssid the ssid of your wifi network * @apiParam {String} password the password of your wifi network + * @apiParam {String} devEUI the devEUI of TTN device + * @apiParam {String} appEUI the appEUI of TTN application + * @apiParam {String} appKey the appKey of TTN application * @apiUse JWTokenAuth * @apiUse BoxIdParam */ @@ -425,7 +428,10 @@ const getSketch = async function getSketch (req, res, next) { soilDigitalPort: req._userParams.soilDigitalPort, soundMeterPort: req._userParams.soundMeterPort, ssid: req._userParams.ssid, - password: req._userParams.password + password: req._userParams.password, + devEUI: req._userParams.devEUI, + appEUI: req._userParams.appEUI, + appKey: req._userParams.appKey })); } catch (err) { handleError(err, next); @@ -475,7 +481,10 @@ module.exports = { { name: 'soilDigitalPort', dataType: 'String', allowedValues: ['A', 'B', 'C'] }, { name: 'soundMeterPort', dataType: 'String', allowedValues: ['A', 'B', 'C'] }, { name: 'ssid', dataType: 'StringWithEmpty' }, - { name: 'password', dataType: 'StringWithEmpty' } + { name: 'password', dataType: 'StringWithEmpty' }, + { name: 'devEUI', dataType: 'StringWithEmpty' }, + { name: 'appEUI', dataType: 'StringWithEmpty' }, + { name: 'appKey', dataType: 'StringWithEmpty' }, ]), checkPrivilege, getSketch diff --git a/packages/api/lib/helpers/userParamHelpers.js b/packages/api/lib/helpers/userParamHelpers.js index 22f011d7..2459ab0f 100644 --- a/packages/api/lib/helpers/userParamHelpers.js +++ b/packages/api/lib/helpers/userParamHelpers.js @@ -50,7 +50,13 @@ const checkParamAllowed = function checkParamAllowed (param, allowedValues) { return true; }; -const stringParser = function stringParser (s) { return s.toString().trim(); }; +const stringParser = function stringParser (s) { + try { + return s ? s.toString().trim() : s; + } catch (err) { + console.log('toString', err); + } +}; /** * @apiDefine BoxIdParam @@ -182,6 +188,9 @@ const castParam = function castParam (param, paramDataType, dataTypeIsArray) { for (let i = 0, len = param.length; i < len; i++) { // also use parser for mapping + if (!param[i]) { + console.log('PARAM NOT DEFINED', param, i); + } param[i] = parser(param[i]); const checkResult = check(param[i]); if (typeof checkResult === 'boolean' && checkResult === failOnCheckResultEquals) { diff --git a/packages/api/package.json b/packages/api/package.json index c1c5db8a..5b0bd422 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -10,7 +10,7 @@ "Norwin Roosen" ], "dependencies": { - "@sensebox/opensensemap-api-models": "^0.0.16", + "@sensebox/opensensemap-api-models": "^0.0.20", "@turf/area": "^6.0.1", "@turf/bbox": "^6.0.1", "@turf/centroid": "^6.0.2", @@ -21,11 +21,11 @@ "@turf/triangle-grid": "^6.0.1", "apicache": "^1.4.0", "bunyan": "^1.8.12", - "config": "^3.3.0", - "csv-stringify": "^5.3.0", + "config": "^3.3.1", + "csv-stringify": "^5.4.3", "dashify": "^2.0.0", - "got": "^10.6.0", - "honeybadger": "^1.2.1", + "got": "^11.0.2", + "honeybadger": "^1.4.0", "isemail": "^3.0.0", "jsonwebtoken": "^8.1.0", "millify": "^3.0.2", @@ -33,9 +33,9 @@ "ms": "^2.1.1", "restify": "^5.2.0", "restify-errors": "^8.0.2", - "simple-statistics": "^7.0.8", + "simple-statistics": "^7.0.9", "stringify-stream": "^1.0.5", - "uuid": "^7.0.1" + "uuid": "^7.0.3" }, "private": true -} +} \ No newline at end of file diff --git a/packages/models/CHANGELOG.md b/packages/models/CHANGELOG.md index 45839621..79f2bf85 100644 --- a/packages/models/CHANGELOG.md +++ b/packages/models/CHANGELOG.md @@ -2,6 +2,25 @@ ## Unreleased +## v0.0.20 +- Update @sensebox/node-sketch-templater to v1.7.0 + +## v0.0.19 + +## v0.0.18 + +## v0.0.17 + +## v0.0.16-beta.3 +- Merge fix-userParamError branch + +## v0.0.16-beta.2 +- Update @sensebox/node-sketch-templater to v1.7.0-beta2 + +## v0.0.16-beta +- Update @sensebox/node-sketch-templater to v1.7.0-beta +- Add TTN IDs / Key to getSketch params + ## v0.0.15 - Update @sensebox/node-sketch-templater to v1.5.4 diff --git a/packages/models/package.json b/packages/models/package.json index 029dedff..7b472d3d 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -1,16 +1,16 @@ { "name": "@sensebox/opensensemap-api-models", "description": "openSenseMap data models and database connection", - "version": "0.0.15", + "version": "0.0.20", "main": "index.js", "license": "MIT", "dependencies": { "@sensebox/osem-protos": "^1.1.0", - "@sensebox/sketch-templater": "^1.5.5", - "bcrypt": "^3.0.8", + "@sensebox/sketch-templater": "^1.7.0", + "bcrypt": "^4.0.1", "bunyan": "^1.8.12", - "config": "^3.3.0", - "got": "^10.6.0", + "config": "^3.3.1", + "got": "^11.0.2", "grpc": "^1.19.0", "isemail": "^3.0.0", "jsonpath": "^1.0.0", @@ -18,7 +18,7 @@ "moment": "^2.18.1", "mongoose": "^4.13.6", "mongoose-timestamp": "^0.6", - "uuid": "^7.0.1" + "uuid": "^7.0.3" }, "scripts": { "version": "node .scripts/npm_version-update_changelog.js && git add CHANGELOG.md", diff --git a/packages/models/src/box/box.js b/packages/models/src/box/box.js index 4f4108de..4ea50360 100644 --- a/packages/models/src/box/box.js +++ b/packages/models/src/box/box.js @@ -801,7 +801,7 @@ boxSchema.methods.updateSensors = function updateSensors (sensors) { } }; -boxSchema.methods.getSketch = function getSketch ({ encoding, serialPort, soilDigitalPort, soundMeterPort, ssid, password } = {}) { +boxSchema.methods.getSketch = function getSketch ({ encoding, serialPort, soilDigitalPort, soundMeterPort, ssid, password, devEUI, appEUI, appKey } = {}) { if (serialPort) { this.serialPort = serialPort; } @@ -814,6 +814,9 @@ boxSchema.methods.getSketch = function getSketch ({ encoding, serialPort, soilDi this.ssid = ssid; this.password = password; + this.devEUI = devEUI; + this.appEUI = appEUI, + this.appKey = appKey; return templateSketcher.generateSketch(this, { encoding }); }; diff --git a/packages/models/src/user/mails.js b/packages/models/src/user/mails.js index 90e83b0d..a3dd787d 100644 --- a/packages/models/src/user/mails.js +++ b/packages/models/src/user/mails.js @@ -24,7 +24,17 @@ if (config.get('mailer.url')) { }, attachment: { filename: 'senseBox.ino', - contents: box.getSketch({ encoding: 'base64', serialPort: box.serialPort, ssid: '', password: '' }) + contents: box.getSketch({ + encoding: 'base64', + ssid: '', + password: '', + serialPort: box.serialPort, + soilDigitalPort: box.soilDigitalPort, + soundMeterPort: box.soundMeterPort, + devEUI: '', + appEUI: '', + appKey: '' + }) } }; }, diff --git a/yarn.lock b/yarn.lock index 47d27beb..c6a2be8a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3,19 +3,24 @@ "@babel/code-frame@^7.0.0": - version "7.5.5" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.5.5.tgz#bc0782f6d69f7b7d49531219699b988f669a8f9d" - integrity sha512-27d4lZoomVyo51VegxI20xZPuSHusqbQag/ztrBC7wegWoQ1nLREPVSKSW8byhTlzTKyNE4ifaTA6lCp7JjpFw== + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.8.3.tgz#33e25903d7481181534e12ec0a25f16b6fcf419e" + integrity sha512-a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g== dependencies: - "@babel/highlight" "^7.0.0" + "@babel/highlight" "^7.8.3" -"@babel/highlight@^7.0.0": - version "7.5.0" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.5.0.tgz#56d11312bd9248fa619591d02472be6e8cb32540" - integrity sha512-7dV4eu9gBxoM0dAnj/BCFDW9LFU0zvTrkq0ugM7pnHEgguOEeOz1so2ZghEdzviYzQEED0r4EAgpsBChKy1TRQ== +"@babel/helper-validator-identifier@^7.9.0": + version "7.9.5" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.9.5.tgz#90977a8e6fbf6b431a7dc31752eee233bf052d80" + integrity sha512-/8arLKUFq882w4tWGj9JYzRpAlZgiWUJ+dtteNTDqrRBz9Iguck9Rn3ykuBDoUwh2TO4tSAJlrxDUOXWklJe4g== + +"@babel/highlight@^7.8.3": + version "7.9.0" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.9.0.tgz#4e9b45ccb82b79607271b2979ad82c7b68163079" + integrity sha512-lJZPilxX7Op3Nv/2cvFdnlepPXDxi29wxteT57Q965oc5R9v86ztx0jfxVrTcBk8C2kcPkkDa2Z4T3ZsPPVWsQ== dependencies: + "@babel/helper-validator-identifier" "^7.9.0" chalk "^2.0.0" - esutils "^2.0.2" js-tokens "^4.0.0" "@netflix/nerror@^1.0.0": @@ -32,50 +37,30 @@ resolved "https://registry.yarnpkg.com/@sensebox/eslint-config-sensebox/-/eslint-config-sensebox-1.1.0.tgz#2fec4ec7945f34e7296c619fabd589d722ecd984" integrity sha512-MhwFHGmt7X/Wb/aISS/pJvBuO8HqpkVfB8GsUKOosWEfvug4cTN7N/pXBOxINukG34LcKDLp1xdyxuEo64CMSw== -"@sensebox/opensensemap-api-models@^0.0.16": - version "0.0.16" - resolved "https://registry.yarnpkg.com/@sensebox/opensensemap-api-models/-/opensensemap-api-models-0.0.16.tgz#7a6677bd242ab404520949908a51f8f6affa6118" - integrity sha512-KNzaaTNSjIaQZXOFFyX5FuB02axjiwSrmhwp1LhD4gNJVN7ASWur80dGGqSl1asmzQ45sS+Oj7rLG0dVOq1aPw== - dependencies: - "@sensebox/osem-protos" "^1.1.0" - "@sensebox/sketch-templater" "^1.5.5" - bcrypt "^3.0.8" - bunyan "^1.8.12" - config "^3.2.6" - got "^10.6.0" - grpc "^1.19.0" - isemail "^3.0.0" - jsonpath "^1.0.0" - lodash.isequal "^4.5.0" - moment "^2.18.1" - mongoose "^4.13.6" - mongoose-timestamp "^0.6" - uuid "^7.0.0" - "@sensebox/osem-protos@^1.1.0": version "1.1.0" resolved "https://registry.yarnpkg.com/@sensebox/osem-protos/-/osem-protos-1.1.0.tgz#a7de8bc6be867953f1309181a012063c23299e79" integrity sha512-H+nUVcWlT0dvIqfJnYHuX9JBcCkP1ZKGE5YTRNWPbAEdZ11h+srpQsmeI58wK5hJcdukaZAjc4Dy96IeGM77aA== -"@sensebox/sketch-templater@^1.5.5": - version "1.5.5" - resolved "https://registry.yarnpkg.com/@sensebox/sketch-templater/-/sketch-templater-1.5.5.tgz#54c517976ef9936cd39ddcb8d911ccb5e5efc596" - integrity sha512-RQtf9cTGZaCNphLW1Uyvy0kW5bgCEQOzzGpIevAJD41sIL/r7f9f9aEvzbM33sc/QGwRk6jzZd1UNRu6WxPGgQ== +"@sensebox/sketch-templater@^1.7.0": + version "1.7.0" + resolved "https://registry.yarnpkg.com/@sensebox/sketch-templater/-/sketch-templater-1.7.0.tgz#3d536f9b767e1c3bf40209abf60dfe4342eef579" + integrity sha512-s2v3pbwnHnnNLOowcwYbdiNB8nXITIPp/LgeSFUcjdE0hpmmPIdLg7l1mWHotwsWlWhaBrDYkxQn93ZS/UgVCQ== dependencies: config "^1.29.2" dedent "^0.7.0" -"@sindresorhus/is@^2.0.0": - version "2.0.0" - resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-2.0.0.tgz#1a7d0e05905877a61440d4f15520a5f5b4fedfbf" - integrity sha512-bX03FiS5dr3cc01hhymlqDAjO5c5WcRPwY4BrghFFhUWI/3vsVlaq8GiSFsrcA3O07mPedlS6Mnr/whaJ44ubA== +"@sindresorhus/is@^2.1.0": + version "2.1.1" + resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-2.1.1.tgz#ceff6a28a5b4867c2dd4a1ba513de278ccbe8bb1" + integrity sha512-/aPsuoj/1Dw/kzhkgz+ES6TxG0zfTMGLwuK2ZG00k/iJzYHTLCE8mVU8EPqEOp/lmxPoq1C1C9RYToRKb2KEfg== "@szmarczak/http-timer@^4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@szmarczak/http-timer/-/http-timer-4.0.0.tgz#309789ccb7842ff1e41848cf43da587f78068836" - integrity sha512-3yoXv8OtGr/r3R5gaWWNQ3VUoQ5G3Gmo8DXX95V14ZVvE2b7Pj6Ide9uIDON8ym4D/ItyfL9ejohYUPqOyvRXw== + version "4.0.5" + resolved "https://registry.yarnpkg.com/@szmarczak/http-timer/-/http-timer-4.0.5.tgz#bfbd50211e9dfa51ba07da58a14cdfd333205152" + integrity sha512-PyRA9sm1Yayuj5OIoJ1hGt2YISX45w9WcFbh6ddT0Z/0yaFxOtGLInr4jUfU1EAFVs0Yfyfev4RNwBlUaHdlDQ== dependencies: - defer-to-connect "^1.1.1" + defer-to-connect "^2.0.0" "@turf/area@^6.0.1": version "6.0.1" @@ -241,6 +226,11 @@ "@types/node" "*" "@types/responselike" "*" +"@types/color-name@^1.1.1": + version "1.1.1" + resolved "https://registry.yarnpkg.com/@types/color-name/-/color-name-1.1.1.tgz#1c1261bbeaa10a8055bbc5d8ab84b7b2afc846a0" + integrity sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ== + "@types/http-cache-semantics@*": version "4.0.0" resolved "https://registry.yarnpkg.com/@types/http-cache-semantics/-/http-cache-semantics-4.0.0.tgz#9140779736aa2655635ee756e2467d787cfe8a2a" @@ -254,16 +244,16 @@ "@types/node" "*" "@types/long@*": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@types/long/-/long-4.0.0.tgz#719551d2352d301ac8b81db732acb6bdc28dbdef" - integrity sha512-1w52Nyx4Gq47uuu0EVcsHBxZFJgurQ+rTKS3qMHxR1GY2T8c2AJYd6vZoZ9q1rupaDjU0yT+Jc2XTyXkjeMA+Q== + version "4.0.1" + resolved "https://registry.yarnpkg.com/@types/long/-/long-4.0.1.tgz#459c65fa1867dafe6a8f322c4c51695663cc55e9" + integrity sha512-5tXH6Bx/kNGd3MgffdmP4dy2Z+G4eaXw0SE81Tq3BNadtnMR5/ySMzX4SLEzHJzSmPNn4HIdpQsBvXMUykr58w== "@types/node@*": - version "13.1.6" - resolved "https://registry.yarnpkg.com/@types/node/-/node-13.1.6.tgz#076028d0b0400be8105b89a0a55550c86684ffec" - integrity sha512-Jg1F+bmxcpENHP23sVKkNuU3uaxPnsBMW0cLjleiikFKomJQbsn0Cqk2yDvQArqzZN6ABfBkZ0To7pQ8sLdWDg== + version "13.13.4" + resolved "https://registry.yarnpkg.com/@types/node/-/node-13.13.4.tgz#1581d6c16e3d4803eb079c87d4ac893ee7501c2c" + integrity sha512-x26ur3dSXgv5AwKS0lNfbjpCakGIduWU1DU91Zz58ONRWrIKGunmZBNv4P7N+e27sJkiGDsw/3fT4AtsqQBrBA== -"@types/responselike@*": +"@types/responselike@*", "@types/responselike@^1.0.0": version "1.0.0" resolved "https://registry.yarnpkg.com/@types/responselike/-/responselike-1.0.0.tgz#251f4fe7d154d2bad125abe1b429b23afd262e29" integrity sha512-85Y2BjiufFzaMIlvJDvTTB8Fxl2xfLo4HgmHzVBz08w4wDePCTjYw66PdrolO0kzli3yam/YCgRufyo1DdQVTA== @@ -275,12 +265,12 @@ abbrev@1: resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q== -acorn-jsx@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.1.0.tgz#294adb71b57398b0680015f0a38c563ee1db5384" - integrity sha512-tMUqwBWfLFbJbizRmEcWSLw6HnFzfdJs2sOJEOwwtVPMoH/0Ay+E703oZz78VSXZiiDcZrQ5XKjPIUQixhmgVw== +acorn-jsx@^5.2.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.2.0.tgz#4c66069173d6fdd68ed85239fc256226182b2ebe" + integrity sha512-HiUX/+K2YpkpJ+SzBffkM/AQ2YE03S0U1kjTLVpoJdhZMOWy8qvXVN9JdLqv2QsaQ6MPYQIuNmwD8zOiYUofLQ== -acorn@^7.1.0: +acorn@^7.1.1: version "7.1.1" resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.1.1.tgz#e35668de0b402f359de515c5482a1ab9f89a69bf" integrity sha512-add7dgA5ppRPxCFJoAGfMDi7PIBXq1RtGo7BhbLaxwrXPOmw8gq48Y9ozT01hUKy9byMjlR20EJhu5zlkErEkg== @@ -290,22 +280,12 @@ addressparser@~1.0.1: resolved "https://registry.yarnpkg.com/addressparser/-/addressparser-1.0.1.tgz#47afbe1a2a9262191db6838e4fd1d39b40821746" integrity sha1-R6++GiqSYhkdtoOOT9HTm0CCF0Y= -ajv@^5.1.0: - version "5.5.2" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-5.5.2.tgz#73b5eeca3fab653e3d3f9422b341ad42205dc965" - integrity sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU= - dependencies: - co "^4.6.0" - fast-deep-equal "^1.0.0" - fast-json-stable-stringify "^2.0.0" - json-schema-traverse "^0.3.0" - ajv@^6.10.0, ajv@^6.10.2, ajv@^6.5.5: - version "6.10.2" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.10.2.tgz#d3cea04d6b017b2894ad69040fec8b623eb4bd52" - integrity sha512-TXtUUEYHuaTEbLZWIKUr5pmBuhDLy+8KYtPYdcV8qC+pOZL+NKqYwvWSRrVXHn+ZmRRAu8vJTAznH7Oag6RVRw== + version "6.12.2" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.2.tgz#c629c5eced17baf314437918d2da88c99d5958cd" + integrity sha512-k+V+hzjm5q/Mr8ef/1Y9goCmlsK4I6Sm74teeyGvFk1XrOsbsKLjEdrvny42CZ+a8sXbk8KWpY/bDwS+FLL2UQ== dependencies: - fast-deep-equal "^2.0.1" + fast-deep-equal "^3.1.1" fast-json-stable-stringify "^2.0.0" json-schema-traverse "^0.4.1" uri-js "^4.2.2" @@ -316,11 +296,11 @@ ansi-colors@3.2.3: integrity sha512-LEHHyuhlPY3TmuUYMh2oz89lTShfvgbmzaBcxve9t/9Wuy7Dwf4yoAKcND7KFT1HAQfqZ12qtc+DUrBMeKF9nw== ansi-escapes@^4.2.1: - version "4.3.0" - resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.0.tgz#a4ce2b33d6b214b7950d8595c212f12ac9cc569d" - integrity sha512-EiYhwo0v255HUL6eDyuLrXEkTi7WwVCLAw+SeOQ7M7qdun1z1pum4DEm/nuqIVbPvi9RPPc9k9LbyBv6H0DwVg== + version "4.3.1" + resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.1.tgz#a5c47cc43181f1f38ffd7076837700d395522a61" + integrity sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA== dependencies: - type-fest "^0.8.1" + type-fest "^0.11.0" ansi-regex@^2.0.0: version "2.1.1" @@ -342,13 +322,21 @@ ansi-regex@^5.0.0: resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.0.tgz#388539f55179bf39339c81af30a654d69f87cb75" integrity sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg== -ansi-styles@^3.1.0, ansi-styles@^3.2.0, ansi-styles@^3.2.1: +ansi-styles@^3.2.0, ansi-styles@^3.2.1: version "3.2.1" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== dependencies: color-convert "^1.9.0" +ansi-styles@^4.1.0: + version "4.2.1" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.2.1.tgz#90ae75c424d008d2624c5bf29ead3177ebfcf359" + integrity sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA== + dependencies: + "@types/color-name" "^1.1.1" + color-convert "^2.0.1" + anymatch@~3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.1.tgz#c55ecf02185e2469259399310c173ce31233b142" @@ -434,10 +422,10 @@ aws-sign2@~0.7.0: resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8" integrity sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg= -aws4@^1.6.0, aws4@^1.8.0: - version "1.9.0" - resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.9.0.tgz#24390e6ad61386b0a747265754d2a17219de862c" - integrity sha512-Uvq6hVe90D0B2WEnUqtdgY1bATGz3mw33nH9Y+dmA+w5DHvUmBgkr5rM/KCHpCsiFNRUfokW/szpPPgMK2hm4A== +aws4@^1.8.0: + version "1.9.1" + resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.9.1.tgz#7e33d8f7d449b3f673cd72deb9abdc552dbe528e" + integrity sha512-wMHVg2EOHaMRxbzgFJ9gtjOOCrI80OHLG14rxi28XwOW8ux6IiEbRCGGGqCtdAIg4FQCbW20k9RsT4y3gJlFug== balanced-match@^1.0.0: version "1.0.0" @@ -456,12 +444,12 @@ bcrypt-pbkdf@^1.0.0: dependencies: tweetnacl "^0.14.3" -bcrypt@^3.0.8: - version "3.0.8" - resolved "https://registry.yarnpkg.com/bcrypt/-/bcrypt-3.0.8.tgz#fe437b7569faffc1105c3c3f6e7d2913e3d3bea5" - integrity sha512-jKV6RvLhI36TQnPDvUFqBEnGX9c8dRRygKxCZu7E+MgLfKZbmmXL8a7/SFFOyHoPNX9nV81cKRC5tbQfvEQtpw== +bcrypt@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/bcrypt/-/bcrypt-4.0.1.tgz#06e21e749a061020e4ff1283c1faa93187ac57fe" + integrity sha512-hSIZHkUxIDS5zA2o00Kf2O5RfVbQ888n54xQoF/eIaquU4uaLxK8vhhBdktd0B3n2MjkcAWzv4mnhogykBKOUQ== dependencies: - nan "2.14.0" + node-addon-api "^2.0.0" node-pre-gyp "0.14.0" binary-extensions@^2.0.0: @@ -544,12 +532,10 @@ bytebuffer@~5: dependencies: long "~3" -cacheable-lookup@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/cacheable-lookup/-/cacheable-lookup-2.0.0.tgz#33b1e56f17507f5cf9bb46075112d65473fb7713" - integrity sha512-s2piO6LvA7xnL1AR03wuEdSx3BZT3tIJpZ56/lcJwzO/6DTJZlTs7X3lrvPxk6d1PlDe6PrVe2TjlUIZNFglAQ== - dependencies: - keyv "^4.0.0" +cacheable-lookup@^4.1.1: + version "4.2.2" + resolved "https://registry.yarnpkg.com/cacheable-lookup/-/cacheable-lookup-4.2.2.tgz#7fee1d25d9902382a6b8966c164349977168ed4f" + integrity sha512-06EWjs5/UO+gl6RHW7UAajeMZ+5E+HvHLQtaKcpjJLE5S/3+pX28VClFXM+LCwFRcmODURMnO94bZ+lFy5YvRg== cacheable-request@^7.0.1: version "7.0.1" @@ -637,16 +623,7 @@ chakram@^1.5.0: request-debug "0.x.x" tv4 "1.x.x" -chalk@^2.0.0, chalk@^2.1.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.3.0.tgz#b5ea48efc9c1793dccc9b4767c93914d3f2d52ba" - integrity sha512-Az5zJR2CBujap2rqXGaJKaPHyJ0IrUimvYNX+ncCy8PJP4ltOGTrHUIo097ZaL2zMeKYpiCdqDvS6zdrTFok3Q== - dependencies: - ansi-styles "^3.1.0" - escape-string-regexp "^1.0.5" - supports-color "^4.0.0" - -chalk@^2.4.2: +chalk@^2.0.0, chalk@^2.1.0, chalk@^2.4.2: version "2.4.2" resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== @@ -655,6 +632,14 @@ chalk@^2.4.2: escape-string-regexp "^1.0.5" supports-color "^5.3.0" +chalk@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-3.0.0.tgz#3f73c2bf526591f574cc492c51e2456349f844e4" + integrity sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg== + dependencies: + ansi-styles "^4.1.0" + supports-color "^7.1.0" + chardet@^0.7.0: version "0.7.0" resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" @@ -693,9 +678,9 @@ chokidar@3.3.0: fsevents "~2.1.1" chownr@^1.1.1: - version "1.1.3" - resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.3.tgz#42d837d5239688d55f303003a508230fa6727142" - integrity sha512-i70fVHhmV3DtTl6nqvZOnIjbY0Pe4kAUjwHj8z0zAdgBtYrJyYwLKCCuRBQ5ppkyL0AkN7HKRnETdmdp1zqNXw== + version "1.1.4" + resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.4.tgz#6fc9d7b42d32a583596337666e7d08084da2cc6b" + integrity sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg== cli-cursor@^3.1.0: version "3.1.0" @@ -705,9 +690,9 @@ cli-cursor@^3.1.0: restore-cursor "^3.1.0" cli-width@^2.0.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.0.tgz#ff19ede8a9a5e579324147b0c11f0fbcbabed639" - integrity sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk= + version "2.2.1" + resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.1.tgz#b0433d0b4e9c847ef18868a4ef16fd5fc8271c48" + integrity sha512-GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw== cliui@^3.0.3: version "3.2.0" @@ -747,11 +732,6 @@ clone@^1.0.2: resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.4.tgz#da309cc263df15994c688ca902179ca3c7cd7c7e" integrity sha1-2jCcwmPfFZlMaIypAheco8fNfH4= -co@^4.6.0: - version "4.6.0" - resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" - integrity sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ= - code-point-at@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" @@ -764,17 +744,29 @@ color-convert@^1.9.0: dependencies: color-name "1.1.3" +color-convert@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" + integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== + dependencies: + color-name "~1.1.4" + color-name@1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= +color-name@~1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" + integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== + colour@~0.7.1: version "0.7.1" resolved "https://registry.yarnpkg.com/colour/-/colour-0.7.1.tgz#9cb169917ec5d12c0736d3e8685746df1cadf778" integrity sha1-nLFpkX7F0SwHNtPoaFdG3xyt93g= -combined-stream@^1.0.6, combined-stream@~1.0.5, combined-stream@~1.0.6: +combined-stream@^1.0.6, combined-stream@~1.0.6: version "1.0.8" resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg== @@ -811,12 +803,12 @@ config@^1.29.2: dependencies: json5 "^1.0.1" -config@^3.2.6, config@^3.3.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/config/-/config-3.3.0.tgz#574deb6ff1438807b7ecf6dbad20dd32dd5655ab" - integrity sha512-Xw++JjmYOLLX2HaYpySAveO8a9o+Af0jpDdEt1st8xtLeZI0bDfNsI90DGFyE/7mNnEjHiI8ivp/PieM6ODtdw== +config@^3.3.1: + version "3.3.1" + resolved "https://registry.yarnpkg.com/config/-/config-3.3.1.tgz#b6a70e2908a43b98ed20be7e367edf0cc8ed5a19" + integrity sha512-+2/KaaaAzdwUBE3jgZON11L1ggLLhpf2FsGrfqYFHZW22ySGv/HqYIXrBwKKvn+XZh1UBUjHwAcrfsSkSygT+Q== dependencies: - json5 "^1.0.1" + json5 "^2.1.1" console-control-strings@^1.0.0, console-control-strings@~1.1.0: version "1.1.0" @@ -864,10 +856,10 @@ csv-parse@^1.3.3: resolved "https://registry.yarnpkg.com/csv-parse/-/csv-parse-1.3.3.tgz#d1cfd8743c2f849a0abb2fd544db56695d19a490" integrity sha1-0c/YdDwvhJoKuy/VRNtWaV0ZpJA= -csv-parse@^4.8.6: - version "4.8.6" - resolved "https://registry.yarnpkg.com/csv-parse/-/csv-parse-4.8.6.tgz#e3e01c2c9593194f1b7aae6291c65304b35022c8" - integrity sha512-rSJlpgAjrB6pmlPaqiBAp3qVtQHN07VxI+ozs+knMsNvgh4bDQgENKLFYLFMvT+jn/wr/zvqsd7IVZ7Txdkr7w== +csv-parse@^4.9.0: + version "4.9.0" + resolved "https://registry.yarnpkg.com/csv-parse/-/csv-parse-4.9.0.tgz#a947c66d8ab31207f4933170064dd8268c511e99" + integrity sha512-SaFMvRWzobY9z0Nxg+q5pXvU2JY7p++icb1Bb/ZwGSLv058cLabhGg3YNpLPI2KALtZnoe/oNBCfWX9xgTkcaA== csv-stringify@^1.1.2: version "1.1.2" @@ -876,10 +868,10 @@ csv-stringify@^1.1.2: dependencies: lodash.get "~4.4.2" -csv-stringify@^5.3.0: - version "5.3.6" - resolved "https://registry.yarnpkg.com/csv-stringify/-/csv-stringify-5.3.6.tgz#2655e2e1c01b97b3963bccbc9407b8fb876dc589" - integrity sha512-kPcRbMvo5NLLD71TAqW5K+g9kbM2HpIZJLAzm73Du8U+5TXmDp9YtXKCBLyxEh0q3Jbg8QhNFBz3b5VJzjZ/jw== +csv-stringify@^5.4.3: + version "5.4.3" + resolved "https://registry.yarnpkg.com/csv-stringify/-/csv-stringify-5.4.3.tgz#68f2e59652af7bb27bb06fe05a8237ff95bd13f9" + integrity sha512-WJLgRJQcVjPK45jXS1xfnkwVbw9bOjg2F2BQRa9OkG7Di2W/geclPZNlcQTwxbzn1nEDI2ane2AubTdTd6gCvw== csv@^1.1.0: version "1.2.1" @@ -925,7 +917,7 @@ debug@3.2.6, debug@^3.2.6: dependencies: ms "^2.1.1" -debug@^4.0.1: +debug@^4.0.1, debug@^4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/debug/-/debug-4.1.1.tgz#3b72260255109c6b589cee050f1d516139664791" integrity sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw== @@ -980,10 +972,10 @@ defaults@^1.0.3: dependencies: clone "^1.0.2" -defer-to-connect@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/defer-to-connect/-/defer-to-connect-1.1.1.tgz#88ae694b93f67b81815a2c8c769aef6574ac8f2f" - integrity sha512-J7thop4u3mRTkYRQ+Vpfwy2G5Ehoy82I14+14W4YMDLKdWloI9gSzRbV30s/NckQGVJtPkWNcW4oMAUigTdqiQ== +defer-to-connect@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/defer-to-connect/-/defer-to-connect-2.0.0.tgz#83d6b199db041593ac84d781b5222308ccf4c2c1" + integrity sha512-bYL2d05vOSf1JEZNx5vSAtPuBMkX8K9EUutg7zlKvTqKXHt7RhWJFbmd7qakVuf13i+IkGmp6FwSsONOf6VYIg== define-properties@^1.1.2, define-properties@^1.1.3: version "1.1.3" @@ -1080,11 +1072,6 @@ dtrace-provider@^0.8.1, dtrace-provider@~0.8: dependencies: nan "^2.14.0" -duplexer3@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/duplexer3/-/duplexer3-0.1.4.tgz#ee01dd1cac0ed3cbc7fdbea37dc0a8f1ce002ce2" - integrity sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI= - duplexify@^3.5.1, duplexify@^3.6.0: version "3.7.1" resolved "https://registry.yarnpkg.com/duplexify/-/duplexify-3.7.1.tgz#2a4df5317f6ccfd91f86d6fd25d8d8a103b88309" @@ -1144,10 +1131,10 @@ entities@^2.0.0: resolved "https://registry.yarnpkg.com/entities/-/entities-2.0.0.tgz#68d6084cab1b079767540d80e56a39b423e4abf4" integrity sha512-D9f7V0JSRwIxlRI2mjMqufDrRDnx8p+eEOz7aUM9SuvF8gsBzra0/6tbjl1m8eQHrZlYj6PxqE00hZ1SAIKPLw== -es-abstract@^1.17.0-next.1: - version "1.17.0" - resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.17.0.tgz#f42a517d0036a5591dbb2c463591dc8bb50309b1" - integrity sha512-yYkE07YF+6SIBmg1MsJ9dlub5L48Ek7X0qz+c/CPCHS9EBXfESorzng4cJQjJW5/pB6vDF41u7F8vUhLVDqIug== +es-abstract@^1.17.0-next.1, es-abstract@^1.17.5: + version "1.17.5" + resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.17.5.tgz#d8c9d1d66c8981fb9200e2251d799eee92774ae9" + integrity sha512-BR9auzDbySxOcfog0tLECW8l28eRGpDpU3Dm3Hp4q/N+VtLTmyj4EUN088XZWQDW/hzj6sYRDXeOFsaAODKvpg== dependencies: es-to-primitive "^1.2.1" function-bind "^1.1.1" @@ -1243,11 +1230,11 @@ escape-string-regexp@1.0.5, escape-string-regexp@^1.0.5: integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= escodegen@^1.8.1: - version "1.12.1" - resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.12.1.tgz#08770602a74ac34c7a90ca9229e7d51e379abc76" - integrity sha512-Q8t2YZ+0e0pc7NRVj3B4tSQ9rim1oi4Fh46k2xhJ2qOiEwhQfdjyEQddWdj7ZFaKmU+5104vn1qrcjEPWq+bgQ== + version "1.14.1" + resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.14.1.tgz#ba01d0c8278b5e95a9a45350142026659027a457" + integrity sha512-Bmt7NcRySdIfNPfU2ZoXDrrXsG9ZjvDxcAlMfDUgRBjLOWTuIACXPBFJH7Z+cLb40JeQco5toikyc9t9P8E9SQ== dependencies: - esprima "^3.1.3" + esprima "^4.0.1" estraverse "^4.2.0" esutils "^2.0.2" optionator "^0.8.1" @@ -1318,12 +1305,12 @@ eslint@6.8.0: v8-compile-cache "^2.0.3" espree@^6.1.2: - version "6.1.2" - resolved "https://registry.yarnpkg.com/espree/-/espree-6.1.2.tgz#6c272650932b4f91c3714e5e7b5f5e2ecf47262d" - integrity sha512-2iUPuuPP+yW1PZaMSDM9eyVf8D5P0Hi8h83YtZ5bPc/zHYjII5khoixIUTMO794NOY8F/ThF1Bo8ncZILarUTA== + version "6.2.1" + resolved "https://registry.yarnpkg.com/espree/-/espree-6.2.1.tgz#77fc72e1fd744a2052c20f38a5b575832e82734a" + integrity sha512-ysCxRQY3WaXJz9tdbWOwuWr5Y/XrPTGX9Kiz3yoUXwW0VZ4w30HTkQLaGx/+ttFjF8i+ACbArnB4ce68a9m5hw== dependencies: - acorn "^7.1.0" - acorn-jsx "^5.1.0" + acorn "^7.1.1" + acorn-jsx "^5.2.0" eslint-visitor-keys "^1.1.0" esprima@1.2.2: @@ -1331,22 +1318,17 @@ esprima@1.2.2: resolved "https://registry.yarnpkg.com/esprima/-/esprima-1.2.2.tgz#76a0fd66fcfe154fd292667dc264019750b1657b" integrity sha1-dqD9Zvz+FU/SkmZ9wmQBl1CxZXs= -esprima@^3.1.3: - version "3.1.3" - resolved "https://registry.yarnpkg.com/esprima/-/esprima-3.1.3.tgz#fdca51cee6133895e3c88d535ce49dbff62a4633" - integrity sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM= - -esprima@^4.0.0: +esprima@^4.0.0, esprima@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== esquery@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.0.1.tgz#406c51658b1f5991a5f9b62b1dc25b00e3e5c708" - integrity sha512-SmiyZ5zIWH9VM+SRUReLS5Q8a7GxtRdxEBVZpm98rJM7Sb+A9DVCndXfkeFUd3byderg+EbDkfnevfCwynWaNA== + version "1.3.1" + resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.3.1.tgz#b78b5828aa8e214e29fb74c4d5b752e1c033da57" + integrity sha512-olpvt9QG0vniUBZspVRN6lwB7hOZoTRtT+jzR+tS4ffYx2mzbw+z0XCOk44aaLYKApNX5nMm+E+P6o25ip/DHQ== dependencies: - estraverse "^4.0.0" + estraverse "^5.1.0" esrecurse@^4.1.0: version "4.2.1" @@ -1355,11 +1337,16 @@ esrecurse@^4.1.0: dependencies: estraverse "^4.1.0" -estraverse@^4.0.0, estraverse@^4.1.0, estraverse@^4.1.1, estraverse@^4.2.0: +estraverse@^4.1.0, estraverse@^4.1.1, estraverse@^4.2.0: version "4.3.0" resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d" integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== +estraverse@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.1.0.tgz#374309d39fd935ae500e7b92e8a6b4c720e59642" + integrity sha512-FyohXK+R0vE+y1nHLoBM7ZTyqRpqAlhdZHCWIWEviFLiGB8b04H6bQs8G+XTthacvT8VuwvteiP7RJSxMs8UEw== + esutils@^2.0.2: version "2.0.3" resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" @@ -1385,7 +1372,7 @@ extend-object@1.x.x: resolved "https://registry.yarnpkg.com/extend-object/-/extend-object-1.0.0.tgz#42514f84015d1356caf5187969dfb2bc1bda0823" integrity sha1-QlFPhAFdE1bK9Rh5ad+yvBvaCCM= -extend@^3.0.0, extend@~3.0.1, extend@~3.0.2: +extend@^3.0.0, extend@~3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== @@ -1414,15 +1401,10 @@ extsprintf@^1.2.0, extsprintf@^1.4.0: resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.0.tgz#e2689f8f356fad62cca65a3a91c5df5f9551692f" integrity sha1-4mifjzVvrWLMplo6kcXfX5VRaS8= -fast-deep-equal@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz#c053477817c86b51daa853c81e059b733d023614" - integrity sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ= - -fast-deep-equal@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz#7b05218ddf9667bf7f370bf7fdb2cb15fdd0aa49" - integrity sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk= +fast-deep-equal@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.1.tgz#545145077c501491e33b15ec408c294376e94ae4" + integrity sha512-8UEa58QDLauDNfpbrX55Q9jrGHThw2ZMdOky5Gl1CDtVeJDPVrG4Jxx1N8jw2gkWaff5UUuX1KJd+9zGe2B+ZA== fast-json-stable-stringify@^2.0.0: version "2.1.0" @@ -1435,9 +1417,9 @@ fast-levenshtein@~2.0.6: integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= figures@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/figures/-/figures-3.1.0.tgz#4b198dd07d8d71530642864af2d45dd9e459c4ec" - integrity sha512-ravh8VRXqHuMvZt/d8GblBeqDMkdJMBdv/2KntFH+ra5MXkO7nxNKpzQ3n6QD/2da1kH0aWmNISdvhM7gl2gVg== + version "3.2.0" + resolved "https://registry.yarnpkg.com/figures/-/figures-3.2.0.tgz#625c18bd293c604dc4a8ddb2febf0c88341746af" + integrity sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg== dependencies: escape-string-regexp "^1.0.5" @@ -1479,16 +1461,16 @@ flat@^4.1.0: is-buffer "~2.0.3" flatted@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/flatted/-/flatted-2.0.1.tgz#69e57caa8f0eacbc281d2e2cb458d46fdb449e08" - integrity sha512-a1hQMktqW9Nmqr5aktAux3JMNqaucxGcjtjWnZLHX7yyPCmlSV3M54nGYbqT8K+0GhF3NBgmJCc3ma+WOgX8Jg== + version "2.0.2" + resolved "https://registry.yarnpkg.com/flatted/-/flatted-2.0.2.tgz#4575b21e2bcee7434aa9be662f4b7b5f9c2b5138" + integrity sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA== forever-agent@~0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" integrity sha1-+8cfDEGt6zf5bFd60e1C2P2sypE= -form-data@~2.3.1, form-data@~2.3.2: +form-data@~2.3.2: version "2.3.3" resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.3.tgz#dcce52c05f644f298c6a7ab936bd724ceffbf3a6" integrity sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ== @@ -1498,9 +1480,9 @@ form-data@~2.3.1, form-data@~2.3.2: mime-types "^2.1.12" formidable@^1.0.17: - version "1.2.1" - resolved "https://registry.yarnpkg.com/formidable/-/formidable-1.2.1.tgz#70fb7ca0290ee6ff961090415f4b3df3d2082659" - integrity sha512-Fs9VRguL0gqGHkXS5GQiMCr1VhZBxz0JnJs4JmMp/2jL18Fmbzvv7vOFRU+U8TBkHEE/CX1qDXzJplVULgsLeg== + version "1.2.2" + resolved "https://registry.yarnpkg.com/formidable/-/formidable-1.2.2.tgz#bf69aea2972982675f00865342b982986f6b8dd9" + integrity sha512-V8gLm+41I/8kguQ4/o1D3RIHRmhYFG4pnNyonvua+40rqcEmT4+V71yaZ3B457xbbgCsCfjSPi65u/W6vK1U5Q== fs-minipass@^1.2.5: version "1.2.7" @@ -1515,9 +1497,9 @@ fs.realpath@^1.0.0: integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= fsevents@~2.1.1: - version "2.1.2" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.1.2.tgz#4c0a1fb34bc68e543b4b82a9ec392bfbda840805" - integrity sha512-R4wDiBwZ0KzpgOWetKDug1FZcYhqYnUYKtfZYt4mD5SBz76q0KR4Q9o7GIPamsVPGmW3EYPPJ0dOOjvx32ldZA== + version "2.1.3" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.1.3.tgz#fb738703ae8d2f9fe900c33836ddebee8b97f23e" + integrity sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ== function-bind@^1.1.1: version "1.1.1" @@ -1586,9 +1568,9 @@ glob-parent@^3.1.0: path-dirname "^1.0.0" glob-parent@^5.0.0, glob-parent@~5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.0.tgz#5f4c1d1e748d30cd73ad2944b3577a81b081e8c2" - integrity sha512-qjtRgnIVmOfnKUE3NJAQEdk+lKrxfw8t5ke7SXtfMTHcjsBfOfWXCQfdb30zfDoZQ2IRSIiidmjtbHZPZ++Ihw== + version "5.1.1" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.1.tgz#b6c1ef417c4e5663ea498f1c45afac6916bbc229" + integrity sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ== dependencies: is-glob "^4.0.1" @@ -1644,32 +1626,29 @@ glob@^7.0.5, glob@^7.1.1, glob@^7.1.3: path-is-absolute "^1.0.0" globals@^12.1.0: - version "12.3.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-12.3.0.tgz#1e564ee5c4dded2ab098b0f88f24702a3c56be13" - integrity sha512-wAfjdLgFsPZsklLJvOBUBmzYE8/CwhEqSBEMRXA3qxIiNtyqvjYurAtIfDh6chlEPUfmTY3MnZh5Hfh4q0UlIw== + version "12.4.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-12.4.0.tgz#a18813576a41b00a24a97e7f815918c2e19925f8" + integrity sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg== dependencies: type-fest "^0.8.1" -got@^10.6.0: - version "10.6.0" - resolved "https://registry.yarnpkg.com/got/-/got-10.6.0.tgz#ac3876261a4d8e5fc4f81186f79955ce7b0501dc" - integrity sha512-3LIdJNTdCFbbJc+h/EH0V5lpNpbJ6Bfwykk21lcQvQsEcrzdi/ltCyQehFHLzJ/ka0UMH4Slg0hkYvAZN9qUDg== +got@^11.0.2: + version "11.0.2" + resolved "https://registry.yarnpkg.com/got/-/got-11.0.2.tgz#55613d6a1b7040ff9c26cb075defea39eed58d7a" + integrity sha512-zOanxiJs1LaBAiKsV43UUw/oRlyRNtJFeuATahfi4c3MTremj09eAeJBSJ7GR2oEMhrLLRSJpz8fQaojVDijjw== dependencies: - "@sindresorhus/is" "^2.0.0" + "@sindresorhus/is" "^2.1.0" "@szmarczak/http-timer" "^4.0.0" "@types/cacheable-request" "^6.0.1" - cacheable-lookup "^2.0.0" + "@types/responselike" "^1.0.0" + cacheable-lookup "^4.1.1" cacheable-request "^7.0.1" decompress-response "^5.0.0" - duplexer3 "^0.1.4" get-stream "^5.0.0" + http2-wrapper "^1.0.0-beta.4.4" lowercase-keys "^2.0.0" - mimic-response "^2.1.0" p-cancelable "^2.0.0" - p-event "^4.0.0" responselike "^2.0.0" - to-readable-stream "^2.0.0" - type-fest "^0.10.0" growl@1.10.5: version "1.10.5" @@ -1698,15 +1677,7 @@ har-schema@^2.0.0: resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92" integrity sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI= -har-validator@~5.0.3: - version "5.0.3" - resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-5.0.3.tgz#ba402c266194f15956ef15e0fcf242993f6a7dfd" - integrity sha1-ukAsJmGU8VlW7xXg/PJCmT9qff0= - dependencies: - ajv "^5.1.0" - har-schema "^2.0.0" - -har-validator@~5.1.0: +har-validator@~5.1.3: version "5.1.3" resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-5.1.3.tgz#1ef89ebd3e4996557675eed9893110dc350fa080" integrity sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g== @@ -1714,16 +1685,16 @@ har-validator@~5.1.0: ajv "^6.5.5" har-schema "^2.0.0" -has-flag@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-2.0.0.tgz#e8207af1cc7b30d446cc70b734b5e8be18f88d51" - integrity sha1-6CB68cx7MNRGzHC3NLXovhj4jVE= - has-flag@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= +has-flag@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" + integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== + has-symbols@^1.0.0, has-symbols@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.1.tgz#9f5214758a44196c406d9bd76cebf81ec2dd31e8" @@ -1756,12 +1727,12 @@ help-me@^1.0.1: through2 "^2.0.1" xtend "^4.0.0" -honeybadger@^1.2.1: - version "1.3.0" - resolved "https://registry.yarnpkg.com/honeybadger/-/honeybadger-1.3.0.tgz#e9f01314d52a26a6d615d65485a0a4d4e50ec8f8" - integrity sha512-LY24cmCzZ9QGInvO7FUk8p8eoVN12CwZGLhD1fkggZCJYxFVJeMK0ymlyWa3CYBIiAfQSDcdZekBVWdJTJ/IGg== +honeybadger@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/honeybadger/-/honeybadger-1.4.0.tgz#3c74518b53c9bcb1c3327659d5ea4ead2d3adb43" + integrity sha512-n7i8cTfOvGx2z4kG4YSdzye+y3QOesfsSoGkmhWm2ddLTWlra+NLBPmGoo8CmCaYEQMbo3CpA56m5VOdc7LFqg== dependencies: - request "~2.87.0" + request "~2.88.0" stack-trace "~0.0.9" hooks-fixed@2.0.2: @@ -1792,9 +1763,9 @@ htmlparser2@^3.9.1: readable-stream "^3.1.1" http-cache-semantics@^4.0.0: - version "4.0.3" - resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-4.0.3.tgz#495704773277eeef6e43f9ab2c2c7d259dda25c5" - integrity sha512-TcIMG3qeVLgDr1TEd2XvHaTnMPwYQUQMIBLy+5pLSDKYFc7UIqj39w8EGzZkaxoLv/l2K8HaI0t5AVA+YYgUew== + version "4.1.0" + resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz#49e91c5cbf36c9b94bcfcd71c23d5249ec74e390" + integrity sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ== http-deceiver@^1.2.7: version "1.2.7" @@ -1802,9 +1773,9 @@ http-deceiver@^1.2.7: integrity sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc= http-signature@^1.0.0: - version "1.3.1" - resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.3.1.tgz#739fe2f8897ba84798e3e54b699a9008a8724ff9" - integrity sha512-Y29YKEc8MQsjch/VzkUVJ+2MXd9WcR42fK5u36CZf4G8bXw2DXMTWuESiB0R6m59JAWxlPPw5/Fri/t/AyyueA== + version "1.3.4" + resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.3.4.tgz#a65b41193110b222364e776fd1ac848655a0e2f0" + integrity sha512-CbG3io8gUSIxNNSgq+XMjgpTMzAeVRipxVXjuGrDhH5M1a2kZ03w20s8FCLR1NjnnJj10KbvabvckmtQcYNb9g== dependencies: assert-plus "^1.0.0" jsprim "^1.2.2" @@ -1819,6 +1790,14 @@ http-signature@~1.2.0: jsprim "^1.2.2" sshpk "^1.7.0" +http2-wrapper@^1.0.0-beta.4.4: + version "1.0.0-beta.4.5" + resolved "https://registry.yarnpkg.com/http2-wrapper/-/http2-wrapper-1.0.0-beta.4.5.tgz#ac8e8f1cbf4aa79e3274c89e954d18697ab31e85" + integrity sha512-hRoAcIg26mAenbhZH4yQKpHzdbjHGM2a8JCtGJUIwFtqP82IeuMcmJwXHD6eFkILxDp0AyvaRMNrnV4aSaq9pg== + dependencies: + quick-lru "^5.0.0" + resolve-alpn "^1.0.0" + iconv-lite@^0.4.24, iconv-lite@^0.4.4, iconv-lite@~0.4.13: version "0.4.24" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" @@ -1870,22 +1849,22 @@ ini@~1.3.0: integrity sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw== inquirer@^7.0.0: - version "7.0.1" - resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-7.0.1.tgz#13f7980eedc73c689feff3994b109c4e799c6ebb" - integrity sha512-V1FFQ3TIO15det8PijPLFR9M9baSlnRs9nL7zWu1MNVA2T9YVl9ZbrHJhYs7e9X8jeMZ3lr2JH/rdHFgNCBdYw== + version "7.1.0" + resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-7.1.0.tgz#1298a01859883e17c7264b82870ae1034f92dd29" + integrity sha512-5fJMWEmikSYu0nv/flMc475MhGbB7TSPd/2IpFV4I4rMklboCH2rQjYY5kKiYGHqUF9gvaambupcJFFG9dvReg== dependencies: ansi-escapes "^4.2.1" - chalk "^2.4.2" + chalk "^3.0.0" cli-cursor "^3.1.0" cli-width "^2.0.0" external-editor "^3.0.3" figures "^3.0.0" lodash "^4.17.15" mute-stream "0.0.8" - run-async "^2.2.0" + run-async "^2.4.0" rxjs "^6.5.3" string-width "^4.1.0" - strip-ansi "^5.1.0" + strip-ansi "^6.0.0" through "^2.3.6" invert-kv@^1.0.0: @@ -1969,11 +1948,6 @@ is-number@^7.0.0: resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== -is-promise@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.1.0.tgz#79a2a9ece7f096e80f36d2b2f3bc16c1ff4bf3fa" - integrity sha1-eaKp7OfwlugPNtKy87wWwf9L8/o= - is-regex@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.5.tgz#39d589a358bf18967f726967120b8fc1aed74eae" @@ -2067,11 +2041,6 @@ json-buffer@3.0.1: resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.1.tgz#9338802a30d3b6605fbe0613e094008ca8c05a13" integrity sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ== -json-schema-traverse@^0.3.0: - version "0.3.1" - resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz#349a6d44c53a51de89b40805c5d5e59b417d3340" - integrity sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A= - json-schema-traverse@^0.4.1: version "0.4.1" resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" @@ -2099,6 +2068,13 @@ json5@^1.0.1: dependencies: minimist "^1.2.0" +json5@^2.1.1: + version "2.1.3" + resolved "https://registry.yarnpkg.com/json5/-/json5-2.1.3.tgz#c9b0f7fa9233bfe5807fe66fcf3a5617ed597d43" + integrity sha512-KXPvOm8K9IJKFM0bmdn8QXh7udDh1g/giieX0NLCaMnb4hEiVFqnop2ImTXCc5e0/oHz3LTqmHGtExn5hfMkOA== + dependencies: + minimist "^1.2.5" + jsonpath@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/jsonpath/-/jsonpath-1.0.2.tgz#e6aae681d03e9a77b4651d5d96eac5fc63b1fd13" @@ -2291,17 +2267,17 @@ millify@^3.0.2: dependencies: yargs "^14.0.0" -mime-db@1.42.0: - version "1.42.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.42.0.tgz#3e252907b4c7adb906597b4b65636272cf9e7bac" - integrity sha512-UbfJCR4UAVRNgMpfImz05smAXK7+c+ZntjaA26ANtkXLlOe947Aag5zdIcKQULAiF9Cq4WxBi9jUs5zkA84bYQ== +mime-db@1.44.0: + version "1.44.0" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.44.0.tgz#fa11c5eb0aca1334b4233cb4d52f10c5a6272f92" + integrity sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg== -mime-types@^2.1.12, mime-types@~2.1.17, mime-types@~2.1.19: - version "2.1.25" - resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.25.tgz#39772d46621f93e2a80a856c53b86a62156a6437" - integrity sha512-5KhStqB5xpTAeGqKBAMgwaYMnQik7teQN4IAzC7npDv6kzeU6prfkR67bc87J1kWMPGkoaZSq1npmexMgkmEVg== +mime-types@^2.1.12, mime-types@~2.1.19: + version "2.1.27" + resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.27.tgz#47949f98e279ea53119f5722e0f34e529bec009f" + integrity sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w== dependencies: - mime-db "1.42.0" + mime-db "1.44.0" mime@^1.2.11: version "1.6.0" @@ -2326,7 +2302,7 @@ mimic-response@^1.0.0: resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-1.0.1.tgz#4923538878eef42063cb8a3e3b0798781487ab1b" integrity sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ== -mimic-response@^2.0.0, mimic-response@^2.1.0: +mimic-response@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-2.1.0.tgz#d13763d35f613d09ec37ebb30bac0469c0ee8f43" integrity sha512-wXqjST+SLt7R009ySCglWBCFpjUygmCIfD790/kVbiGmUgfYGuB14PiTd5DwVxSV4NcYHjzMkoj5LjQZwTQLEA== @@ -2343,15 +2319,10 @@ minimalistic-assert@^1.0.0: dependencies: brace-expansion "^1.1.7" -minimist@0.0.8: - version "0.0.8" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" - integrity sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0= - -minimist@^1.1.0, minimist@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" - integrity sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ= +minimist@^1.1.0, minimist@^1.2.0, minimist@^1.2.5: + version "1.2.5" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" + integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== minipass@^2.6.0, minipass@^2.8.6, minipass@^2.9.0: version "2.9.0" @@ -2368,17 +2339,17 @@ minizlib@^1.2.1: dependencies: minipass "^2.9.0" -mkdirp@0.5.1, mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.1: - version "0.5.1" - resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" - integrity sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM= +mkdirp@0.5.5, mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.1: + version "0.5.5" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.5.tgz#d91cefd62d1436ca0f41620e251288d420099def" + integrity sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ== dependencies: - minimist "0.0.8" + minimist "^1.2.5" -mocha@^7.1.0: - version "7.1.0" - resolved "https://registry.yarnpkg.com/mocha/-/mocha-7.1.0.tgz#c784f579ad0904d29229ad6cb1e2514e4db7d249" - integrity sha512-MymHK8UkU0K15Q/zX7uflZgVoRWiTjy0fXE/QjKts6mowUvGxOdPhZ2qj3b0iZdUrNZlW9LAIMFHB4IW+2b3EQ== +mocha@^7.1.2: + version "7.1.2" + resolved "https://registry.yarnpkg.com/mocha/-/mocha-7.1.2.tgz#8e40d198acf91a52ace122cd7599c9ab857b29e6" + integrity sha512-o96kdRKMKI3E8U0bjnfqW4QMk12MwZ4mhdBTf+B5a1q9+aq2HRnj+3ZdJu0B/ZhJeK78MgYuv6L8d/rA5AeBJA== dependencies: ansi-colors "3.2.3" browser-stdout "1.3.1" @@ -2393,7 +2364,7 @@ mocha@^7.1.0: js-yaml "3.13.1" log-symbols "3.0.0" minimatch "3.0.4" - mkdirp "0.5.1" + mkdirp "0.5.5" ms "2.1.1" node-environment-flags "1.0.6" object.assign "4.1.0" @@ -2401,8 +2372,8 @@ mocha@^7.1.0: supports-color "6.0.0" which "1.3.1" wide-align "1.1.3" - yargs "13.3.0" - yargs-parser "13.1.1" + yargs "13.3.2" + yargs-parser "13.1.2" yargs-unparser "1.6.0" moment@^2.10.6, moment@^2.18.1: @@ -2464,11 +2435,12 @@ mpromise@0.5.5: integrity sha1-9bJCWddjrMIlewoMjG2Gb9UXMuY= mqtt-packet@^6.0.0: - version "6.3.0" - resolved "https://registry.yarnpkg.com/mqtt-packet/-/mqtt-packet-6.3.0.tgz#ca8b387475c186dc05c52050a45d6eb0bbfccdb3" - integrity sha512-TjusSKu8uFZCmGZU8K6r4C3Ic+er/4r8rva+Mp5GQgWg/KjSdAfLK/GTucBwkdATE2Z0Da8AssI2WHzs0M9W0w== + version "6.3.2" + resolved "https://registry.yarnpkg.com/mqtt-packet/-/mqtt-packet-6.3.2.tgz#a737734a9a64e8cffbad7ad9e116d35b912f2e00" + integrity sha512-i56+2kN6F57KInGtjjfUXSl4xG8u/zOvfaXFLKFAbBXzWkXOmwcmjaSCBPayf2IQCkQU0+h+S2DizCo3CF6gQA== dependencies: bl "^1.2.2" + debug "^4.1.1" inherits "^2.0.3" process-nextick-args "^2.0.0" safe-buffer "^5.1.2" @@ -2538,10 +2510,10 @@ mv@~2: ncp "~2.0.0" rimraf "~2.4.0" -nan@2.14.0, nan@^2.13.2, nan@^2.14.0: - version "2.14.0" - resolved "https://registry.yarnpkg.com/nan/-/nan-2.14.0.tgz#7818f722027b2459a86f0295d434d1fc2336c52c" - integrity sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg== +nan@^2.13.2, nan@^2.14.0: + version "2.14.1" + resolved "https://registry.yarnpkg.com/nan/-/nan-2.14.1.tgz#d7be34dfa3105b91494c3147089315eff8874b01" + integrity sha512-isWHgVjnFjh2x2yuJ/tj3JbwoHu3UC2dX5G/88Cm24yB6YopVgxvBObDY7n5xW6ExmFhJpSEQqFPvq9zaXc8Jw== natural-compare@^1.4.0: version "1.4.0" @@ -2554,9 +2526,9 @@ ncp@~2.0.0: integrity sha1-GVoh1sRuNh0vsSgbo4uR6d9727M= needle@^2.2.1: - version "2.4.0" - resolved "https://registry.yarnpkg.com/needle/-/needle-2.4.0.tgz#6833e74975c444642590e15a750288c5f939b57c" - integrity sha512-4Hnwzr3mi5L97hMYeNl8wRW/Onhy4nUKR/lVemJ8gJedxxUyBLm9kkrDColJvoSfwi0jCNhD+xCdOtiGDQiRZg== + version "2.4.1" + resolved "https://registry.yarnpkg.com/needle/-/needle-2.4.1.tgz#14af48732463d7475696f937626b1b993247a56a" + integrity sha512-x/gi6ijr4B7fwl6WYL9FwlCvRQKGlUNvnceho8wxkwXqN8jvVmmmATTmZPRRG7b/yC1eode26C2HO9jl78Du9g== dependencies: debug "^3.2.6" iconv-lite "^0.4.4" @@ -2577,6 +2549,11 @@ nice-try@^1.0.4: resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ== +node-addon-api@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-2.0.0.tgz#f9afb8d777a91525244b01775ea0ddbe1125483b" + integrity sha512-ASCL5U13as7HhOExbT6OlWJJUV/lLzL2voOSP1UVehpRD8FbSrSDjfScK/KwAvVTI5AS6r4VwbOMlIqtvRidnA== + node-environment-flags@1.0.6: version "1.0.6" resolved "https://registry.yarnpkg.com/node-environment-flags/-/node-environment-flags-1.0.6.tgz#a30ac13621f6f7d674260a54dede048c3982c088" @@ -2602,9 +2579,9 @@ node-pre-gyp@0.14.0, node-pre-gyp@^0.14.0: tar "^4.4.2" nopt@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.1.tgz#d0d4685afd5415193c8c7505602d0d17cd64474d" - integrity sha1-0NRoWv1UFRk8jHUFYC0NF81kR00= + version "4.0.3" + resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.3.tgz#a375cad9d02fd921278d954c2254d5aa57e15e48" + integrity sha512-CvaGwVMztSMJLOeXPrez7fyfObdZqNUK1cPAEzLHrTybIua9pMdmmPR5YwtfNftIOMv3DPUhFaxsZMNTQO20Kg== dependencies: abbrev "1" osenv "^0.1.4" @@ -2632,12 +2609,13 @@ npm-normalize-package-bin@^1.0.1: integrity sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA== npm-packlist@^1.1.6: - version "1.4.7" - resolved "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-1.4.7.tgz#9e954365a06b80b18111ea900945af4f88ed4848" - integrity sha512-vAj7dIkp5NhieaGZxBJB8fF4R0078rqsmhJcAfXZ6O7JJhjhPK96n5Ry1oZcfLXgfun0GWTZPOxaEyqv8GBykQ== + version "1.4.8" + resolved "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-1.4.8.tgz#56ee6cc135b9f98ad3d51c1c95da22bbb9b2ef3e" + integrity sha512-5+AZgwru5IevF5ZdnFglB5wNlHG1AOOuw28WhUq8/8emhBmLv6jX5by4WJCh7lW0uSYZYS6DXqIsyZVIXRZU9A== dependencies: ignore-walk "^3.0.1" npm-bundled "^1.0.1" + npm-normalize-package-bin "^1.0.1" npmlog@^4.0.2: version "4.1.2" @@ -2661,11 +2639,6 @@ number-is-nan@^1.0.0: resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" integrity sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0= -oauth-sign@~0.8.2: - version "0.8.2" - resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.8.2.tgz#46a6ab7f0aead8deae9ec0565780b7d4efeb9d43" - integrity sha1-Rqarfwrq2N6unsBWV4C31O/rnUM= - oauth-sign@~0.9.0: version "0.9.0" resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455" @@ -2777,22 +2750,10 @@ p-cancelable@^2.0.0: resolved "https://registry.yarnpkg.com/p-cancelable/-/p-cancelable-2.0.0.tgz#4a3740f5bdaf5ed5d7c3e34882c6fb5d6b266a6e" integrity sha512-wvPXDmbMmu2ksjkB4Z3nZWTSkJEb9lqVdMaCKpZUGJG9TMiNp9XcbG3fn9fPKjem04fJMJnXoyFPk2FmgiaiNg== -p-event@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/p-event/-/p-event-4.1.0.tgz#e92bb866d7e8e5b732293b1c8269d38e9982bf8e" - integrity sha512-4vAd06GCsgflX4wHN1JqrMzBh/8QZ4j+rzp0cd2scXRwuBEv+QR3wrVA5aLhWDLw4y2WgDKvzWF3CCLmVM1UgA== - dependencies: - p-timeout "^2.0.1" - -p-finally@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" - integrity sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4= - p-limit@^2.0.0: - version "2.2.2" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.2.2.tgz#61279b67721f5287aa1c13a9a7fbbc48c9291b1e" - integrity sha512-WGR+xHecKTr7EbUEhyLSh5Dube9JtdiG78ufaeLxTgpudf/20KqyMioIUZJAezlTIi6evxuoUs9YXc11cU+yzQ== + version "2.3.0" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" + integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== dependencies: p-try "^2.0.0" @@ -2803,13 +2764,6 @@ p-locate@^3.0.0: dependencies: p-limit "^2.0.0" -p-timeout@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/p-timeout/-/p-timeout-2.0.1.tgz#d8dd1979595d2dc0139e1fe46b8b646cb3cdf038" - integrity sha512-88em58dDVB/KzPEx1X0N3LwFfYZPyDc4B6eF38M1rk9VTZMbxXXgjugz8mmwpS9Ox4BDZ+t6t3QP5+/gazweIA== - dependencies: - p-finally "^1.0.0" - p-try@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" @@ -2860,30 +2814,25 @@ performance-now@^2.1.0: integrity sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns= picomatch@^2.0.4: - version "2.2.1" - resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.2.1.tgz#21bac888b6ed8601f831ce7816e335bc779f0a4a" - integrity sha512-ISBaA8xQNmwELC7eOjqFKMESB2VIqt4PPDD0nsS95b/9dZXvVKOlz9keMSnoGGKcOHXfTvDD6WMaRoSc9UuhRA== + version "2.2.2" + resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.2.2.tgz#21f333e9b6b8eaff02468f5146ea406d345f4dad" + integrity sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg== prelude-ls@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" integrity sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ= -process-nextick-args@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.0.tgz#a37d732f4271b4ab1ad070d35508e8290788ffaa" - integrity sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw== +process-nextick-args@^2.0.0, process-nextick-args@~2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" + integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag== process-nextick-args@~1.0.6: version "1.0.7" resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-1.0.7.tgz#150e20b756590ad3f91093f25a4f2ad8bff30ba3" integrity sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M= -process-nextick-args@~2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" - integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag== - progress@^2.0.0: version "2.0.3" resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" @@ -2904,10 +2853,10 @@ pseudomap@^1.0.2: resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" integrity sha1-8FKijacOYYkX7wqKw0wa5aaChrM= -psl@^1.1.24: - version "1.7.0" - resolved "https://registry.yarnpkg.com/psl/-/psl-1.7.0.tgz#f1c4c47a8ef97167dea5d6bbf4816d736e884a3c" - integrity sha512-5NsSEDv8zY70ScRnOTn7bK7eanl2MvFrOrS/R6x+dBt5g1ghnj9Zv90kO8GwT8gxcu2ANyFprnFYB85IogIJOQ== +psl@^1.1.28: + version "1.8.0" + resolved "https://registry.yarnpkg.com/psl/-/psl-1.8.0.tgz#9326f8bcfb013adcc005fdff056acce020e51c24" + integrity sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ== pump@^2.0.0: version "2.0.1" @@ -2934,31 +2883,31 @@ pumpify@^1.3.5: inherits "^2.0.3" pump "^2.0.0" -punycode@2.x.x, punycode@^2.1.0: +punycode@2.x.x, punycode@^2.1.0, punycode@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== -punycode@^1.4.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" - integrity sha1-wNWmOycYgArY4esPpSachN1BhF4= - q@1.x.x: version "1.5.1" resolved "https://registry.yarnpkg.com/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7" integrity sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc= qs@^6.2.1: - version "6.9.1" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.9.1.tgz#20082c65cb78223635ab1a9eaca8875a29bf8ec9" - integrity sha512-Cxm7/SS/y/Z3MHWSxXb8lIFqgqBowP5JMlTUFyJN88y0SGQhVmZnqFK/PeuMX9LzUyWsqqhNxIyg0jlzq946yA== + version "6.9.3" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.9.3.tgz#bfadcd296c2d549f1dffa560619132c977f5008e" + integrity sha512-EbZYNarm6138UKKq46tdx08Yo/q9ZhFoAXAI1meAFd2GtbRDhbZY2WQSICskT0c5q99aFzLG1D4nvTk9tqfXIw== -qs@~6.5.1, qs@~6.5.2: +qs@~6.5.2: version "6.5.2" resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36" integrity sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA== +quick-lru@^5.0.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/quick-lru/-/quick-lru-5.1.0.tgz#1602f339bde554c4dace47880227ec9c2869f2e8" + integrity sha512-WjAKQ9ORzvqjLijJXiXWqc3Gcs1ivoxCj6KJmEjoWBE6OtHwuaDLSAUqGHALUiid7A1KqGqsSHZs8prxF5xxAQ== + quickselect@^1.0.1: version "1.1.1" resolved "https://registry.yarnpkg.com/quickselect/-/quickselect-1.1.1.tgz#852e412ce418f237ad5b660d70cffac647ae94c2" @@ -2999,10 +2948,10 @@ readable-stream@2.2.7: string_decoder "~1.0.0" util-deprecate "~1.0.1" -"readable-stream@> 1.0.0 < 3.0.0", readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.6, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.3.3, readable-stream@^2.3.5, readable-stream@^2.3.6, readable-stream@~2.3.6: - version "2.3.6" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.6.tgz#b11c27d88b8ff1fbe070643cf94b0c79ae1b0aaf" - integrity sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw== +"readable-stream@> 1.0.0 < 3.0.0", readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.6, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.2.9, readable-stream@^2.3.3, readable-stream@^2.3.5, readable-stream@^2.3.6, readable-stream@~2.3.6: + version "2.3.7" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57" + integrity sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw== dependencies: core-util-is "~1.0.0" inherits "~2.0.3" @@ -3012,23 +2961,10 @@ readable-stream@2.2.7: string_decoder "~1.1.1" util-deprecate "~1.0.1" -readable-stream@^2.2.9: - version "2.3.3" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.3.tgz#368f2512d79f9d46fdfc71349ae7878bbc1eb95c" - integrity sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ== - dependencies: - core-util-is "~1.0.0" - inherits "~2.0.3" - isarray "~1.0.0" - process-nextick-args "~1.0.6" - safe-buffer "~5.1.1" - string_decoder "~1.0.3" - util-deprecate "~1.0.1" - readable-stream@^3.0.0, readable-stream@^3.1.1: - version "3.4.0" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.4.0.tgz#a51c26754658e0a3c21dbf59163bd45ba6f447fc" - integrity sha512-jItXPLmrSR8jmTRmRWJXCnGJsfy85mB3Wd/uINMXA65yrnFo0cPClFIUWzo2najVNSl+mx7/4W8ttlLWJe99pQ== + version "3.6.0" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198" + integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA== dependencies: inherits "^2.0.3" string_decoder "^1.1.1" @@ -3081,10 +3017,10 @@ request-debug@0.x.x: dependencies: stringify-clone "^1.0.0" -request@2.x.x: - version "2.88.0" - resolved "https://registry.yarnpkg.com/request/-/request-2.88.0.tgz#9c2fca4f7d35b592efe57c7f0a55e81052124fef" - integrity sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg== +request@2.x.x, request@~2.88.0: + version "2.88.2" + resolved "https://registry.yarnpkg.com/request/-/request-2.88.2.tgz#d73c918731cb5a87da047e207234146f664d12b3" + integrity sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw== dependencies: aws-sign2 "~0.7.0" aws4 "^1.8.0" @@ -3093,7 +3029,7 @@ request@2.x.x: extend "~3.0.2" forever-agent "~0.6.1" form-data "~2.3.2" - har-validator "~5.1.0" + har-validator "~5.1.3" http-signature "~1.2.0" is-typedarray "~1.0.0" isstream "~0.1.2" @@ -3103,36 +3039,10 @@ request@2.x.x: performance-now "^2.1.0" qs "~6.5.2" safe-buffer "^5.1.2" - tough-cookie "~2.4.3" + tough-cookie "~2.5.0" tunnel-agent "^0.6.0" uuid "^3.3.2" -request@~2.87.0: - version "2.87.0" - resolved "https://registry.yarnpkg.com/request/-/request-2.87.0.tgz#32f00235cd08d482b4d0d68db93a829c0ed5756e" - integrity sha512-fcogkm7Az5bsS6Sl0sibkbhcKsnyon/jV1kF3ajGmF0c8HrttdKTPRT9hieOaQHA5HEq6r8OyWOo/o781C1tNw== - dependencies: - aws-sign2 "~0.7.0" - aws4 "^1.6.0" - caseless "~0.12.0" - combined-stream "~1.0.5" - extend "~3.0.1" - forever-agent "~0.6.1" - form-data "~2.3.1" - har-validator "~5.0.3" - http-signature "~1.2.0" - is-typedarray "~1.0.0" - isstream "~0.1.2" - json-stringify-safe "~5.0.1" - mime-types "~2.1.17" - oauth-sign "~0.8.2" - performance-now "^2.1.0" - qs "~6.5.1" - safe-buffer "^5.1.1" - tough-cookie "~2.3.3" - tunnel-agent "^0.6.0" - uuid "^3.1.0" - require-directory@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" @@ -3151,6 +3061,11 @@ require_optional@~1.0.0: resolve-from "^2.0.0" semver "^5.1.0" +resolve-alpn@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/resolve-alpn/-/resolve-alpn-1.0.0.tgz#745ad60b3d6aff4b4a48e01b8c0bdc70959e0e8c" + integrity sha512-rTuiIEqFmGxne4IovivKSDzld2lWW9QCjqv80SYjPgf+gS35eaCAjaP54CCwGAwBtnCsvNLYtqxe1Nw+i6JEmA== + resolve-from@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-2.0.0.tgz#9480ab20e94ffa1d9e80a804c7ea147611966b57" @@ -3246,30 +3161,28 @@ rimraf@~2.4.0: dependencies: glob "^6.0.1" -run-async@^2.2.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.3.0.tgz#0371ab4ae0bdd720d4166d7dfda64ff7a445a6c0" - integrity sha1-A3GrSuC91yDUFm19/aZP96RFpsA= - dependencies: - is-promise "^2.1.0" +run-async@^2.4.0: + version "2.4.1" + resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.4.1.tgz#8440eccf99ea3e70bd409d49aab88e10c189a455" + integrity sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ== rxjs@^6.5.3: - version "6.5.4" - resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.5.4.tgz#e0777fe0d184cec7872df147f303572d414e211c" - integrity sha512-naMQXcgEo3csAEGvw/NydRA0fuS2nDZJiw1YUWFKU7aPPAPGZEsD4Iimit96qwCieH6y614MCLYwdkrWx7z/7Q== + version "6.5.5" + resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.5.5.tgz#c5c884e3094c8cfee31bf27eb87e54ccfc87f9ec" + integrity sha512-WfQI+1gohdf0Dai/Bbmk5L5ItH5tYqm3ki2c5GdWhKjalzjg93N3avFjVStyZZz+A2Em+ZxKH5bNghw9UeylGQ== dependencies: tslib "^1.9.0" -safe-buffer@^5.0.1, safe-buffer@^5.1.1, safe-buffer@~5.1.0, safe-buffer@~5.1.1: - version "5.1.2" - resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" - integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== - -safe-buffer@^5.1.2, safe-buffer@~5.2.0: +safe-buffer@^5.0.1, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@~5.2.0: version "5.2.0" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.0.tgz#b74daec49b1148f88c64b68d49b1e815c1f2f519" integrity sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg== +safe-buffer@~5.1.0, safe-buffer@~5.1.1: + version "5.1.2" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" + integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== + safe-json-stringify@^1.0.3, safe-json-stringify@^1.0.4, safe-json-stringify@~1: version "1.2.0" resolved "https://registry.yarnpkg.com/safe-json-stringify/-/safe-json-stringify-1.2.0.tgz#356e44bc98f1f93ce45df14bcd7c01cda86e0afd" @@ -3290,21 +3203,11 @@ select-hose@^2.0.0: resolved "https://registry.yarnpkg.com/select-hose/-/select-hose-2.0.0.tgz#625d8658f865af43ec962bfc376a37359a4994ca" integrity sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo= -semver@^5.0.1: - version "5.4.1" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.4.1.tgz#e059c09d8571f0540823733433505d3a2f00b18e" - integrity sha512-WfG/X9+oATh81XtllIo/I8gOiY9EXRdv1cQdyykeXK17YcUW3EXUAi2To4pcH6nZtJPr7ZOpM5OMyWJZm+8Rsg== - -semver@^5.1.0, semver@^5.3.0, semver@^5.5.0, semver@^5.7.0: +semver@^5.0.1, semver@^5.1.0, semver@^5.3.0, semver@^5.5.0, semver@^5.6.0, semver@^5.7.0: version "5.7.1" resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== -semver@^5.6.0: - version "5.7.0" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.0.tgz#790a7cf6fea5459bac96110b29b60412dc8ff96b" - integrity sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA== - semver@^6.1.2: version "6.3.0" resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" @@ -3328,14 +3231,14 @@ shebang-regex@^1.0.0: integrity sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM= signal-exit@^3.0.0, signal-exit@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" - integrity sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0= + version "3.0.3" + resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.3.tgz#a1410c2edd8f077b08b4e253c8eacfcaf057461c" + integrity sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA== -simple-statistics@^7.0.8: - version "7.0.8" - resolved "https://registry.yarnpkg.com/simple-statistics/-/simple-statistics-7.0.8.tgz#662c56769945812237891adaec690f6da90fe372" - integrity sha512-cKK4U1ciuG7NG2P/FfbYtfoZYvn6VkIHxurRGuqW1bBOrKY0WK1Zr9C3EFjh8RAOldIRznm5kQvWTa3bsvkMIA== +simple-statistics@^7.0.9: + version "7.0.9" + resolved "https://registry.yarnpkg.com/simple-statistics/-/simple-statistics-7.0.9.tgz#786b41009bf07c9b84d4b40f859af8d73c007ef6" + integrity sha512-9p55iB9WiuurOkKDNFTvEfr5C4ov3voBo0vri64eC44QSLE6JfOmHMnnyUkS8Os5p9UFfOyhXpEaBJ81EpV6fA== slice-ansi@^2.1.0: version "2.1.0" @@ -3475,21 +3378,39 @@ string-width@^4.1.0: is-fullwidth-code-point "^3.0.0" strip-ansi "^6.0.0" +string.prototype.trimend@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.1.tgz#85812a6b847ac002270f5808146064c995fb6913" + integrity sha512-LRPxFUaTtpqYsTeNKaFOw3R4bxIzWOnbQ837QfBylo8jIxtcbK/A/sMV7Q+OAV/vWo+7s25pOE10KYSjaSO06g== + dependencies: + define-properties "^1.1.3" + es-abstract "^1.17.5" + string.prototype.trimleft@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/string.prototype.trimleft/-/string.prototype.trimleft-2.1.1.tgz#9bdb8ac6abd6d602b17a4ed321870d2f8dcefc74" - integrity sha512-iu2AGd3PuP5Rp7x2kEZCrB2Nf41ehzh+goo8TV7z8/XDBbsvc6HQIlUl9RjkZ4oyrW1XM5UwlGl1oVEaDjg6Ag== + version "2.1.2" + resolved "https://registry.yarnpkg.com/string.prototype.trimleft/-/string.prototype.trimleft-2.1.2.tgz#4408aa2e5d6ddd0c9a80739b087fbc067c03b3cc" + integrity sha512-gCA0tza1JBvqr3bfAIFJGqfdRTyPae82+KTnm3coDXkZN9wnuW3HjGgN386D7hfv5CHQYCI022/rJPVlqXyHSw== dependencies: define-properties "^1.1.3" - function-bind "^1.1.1" + es-abstract "^1.17.5" + string.prototype.trimstart "^1.0.0" string.prototype.trimright@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/string.prototype.trimright/-/string.prototype.trimright-2.1.1.tgz#440314b15996c866ce8a0341894d45186200c5d9" - integrity sha512-qFvWL3/+QIgZXVmJBfpHmxLB7xsUXz6HsUmP8+5dRaC3Q7oKUv9Vo6aMCRZC1smrtyECFsIT30PqBJ1gTjAs+g== + version "2.1.2" + resolved "https://registry.yarnpkg.com/string.prototype.trimright/-/string.prototype.trimright-2.1.2.tgz#c76f1cef30f21bbad8afeb8db1511496cfb0f2a3" + integrity sha512-ZNRQ7sY3KroTaYjRS6EbNiiHrOkjihL9aQE/8gfQ4DtAC/aEBRHFJa44OmoWxGGqXuJlfKkZW4WcXErGr+9ZFg== dependencies: define-properties "^1.1.3" - function-bind "^1.1.1" + es-abstract "^1.17.5" + string.prototype.trimend "^1.0.0" + +string.prototype.trimstart@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.1.tgz#14af6d9f34b053f7cfc89b72f8f2ee14b9039a54" + integrity sha512-XxZn+QpvrBI1FOcg6dIpxUPgWCPuNXvMD72aaRaUQv1eD4e/Qy8i/hFTe0BUmD60p/QA6bh1avmuPTfNjqVWRw== + dependencies: + define-properties "^1.1.3" + es-abstract "^1.17.5" string_decoder@^1.1.1: version "1.3.0" @@ -3503,7 +3424,7 @@ string_decoder@~0.10.x: resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94" integrity sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ= -string_decoder@~1.0.0, string_decoder@~1.0.3: +string_decoder@~1.0.0: version "1.0.3" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.0.3.tgz#0fc67d7c141825de94282dd536bec6b9bce860ab" integrity sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ== @@ -3563,9 +3484,9 @@ strip-json-comments@2.0.1, strip-json-comments@~2.0.1: integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo= strip-json-comments@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.0.1.tgz#85713975a91fb87bf1b305cca77395e40d2a64a7" - integrity sha512-VTyMAUfdm047mwKl+u79WIdrZxtFtn+nBxHeb844XBQ9uMNTuTHdx2hc5RiAJYqwTj3wc/xe5HLSdJSkJ+WfZw== + version "3.1.0" + resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.0.tgz#7638d31422129ecf4457440009fba03f9f9ac180" + integrity sha512-e6/d0eBu7gHtdCqFt0xJr642LdToM5/cN4Qb9DbHjVx1CP5RyeM+zH7pbecEmDv/lBqb0QH+6Uqq75rxFPkM0w== supports-color@6.0.0: version "6.0.0" @@ -3574,13 +3495,6 @@ supports-color@6.0.0: dependencies: has-flag "^3.0.0" -supports-color@^4.0.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-4.5.0.tgz#be7a0de484dec5c5cddf8b3d59125044912f635b" - integrity sha1-vnoN5ITexcXN34s9WRJQRJEvY1s= - dependencies: - has-flag "^2.0.0" - supports-color@^5.3.0: version "5.5.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" @@ -3588,6 +3502,13 @@ supports-color@^5.3.0: dependencies: has-flag "^3.0.0" +supports-color@^7.1.0: + version "7.1.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.1.0.tgz#68e32591df73e25ad1c4b49108a2ec507962bfd1" + integrity sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g== + dependencies: + has-flag "^4.0.0" + table@^5.2.3: version "5.4.6" resolved "https://registry.yarnpkg.com/table/-/table-5.4.6.tgz#1292d19500ce3f86053b05f0e8e7e4a3bb21079e" @@ -3657,11 +3578,6 @@ to-absolute-glob@^2.0.0: is-absolute "^1.0.0" is-negated-glob "^1.0.0" -to-readable-stream@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/to-readable-stream/-/to-readable-stream-2.1.0.tgz#82880316121bea662cdc226adb30addb50cb06e8" - integrity sha512-o3Qa6DGg1CEXshSdvWNX2sN4QHqg03SPq7U6jPXRahlQdl5dK8oXjkU/2/sGrnOZKeGV1zLSO8qPwyKklPPE7w== - to-regex-range@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" @@ -3669,25 +3585,18 @@ to-regex-range@^5.0.1: dependencies: is-number "^7.0.0" -tough-cookie@~2.3.3: - version "2.3.4" - resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.4.tgz#ec60cee38ac675063ffc97a5c18970578ee83655" - integrity sha512-TZ6TTfI5NtZnuyy/Kecv+CnoROnyXn2DN97LontgQpCwsX2XyLYCC0ENhYkehSOwAp8rTQKc/NUIF7BkQ5rKLA== - dependencies: - punycode "^1.4.1" - -tough-cookie@~2.4.3: - version "2.4.3" - resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.4.3.tgz#53f36da3f47783b0925afa06ff9f3b165280f781" - integrity sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ== +tough-cookie@~2.5.0: + version "2.5.0" + resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.5.0.tgz#cd9fb2a0aa1d5a12b473bd9fb96fa3dcff65ade2" + integrity sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g== dependencies: - psl "^1.1.24" - punycode "^1.4.1" + psl "^1.1.28" + punycode "^2.1.1" tslib@^1.9.0: - version "1.10.0" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.10.0.tgz#c3c19f95973fb0a62973fb09d90d961ee43e5c8a" - integrity sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ== + version "1.11.1" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.11.1.tgz#eb15d128827fbee2841549e171f45ed338ac7e35" + integrity sha512-aZW88SY8kQbU7gpV19lN24LtXh/yD4ZZg6qieAJDDg+YBsJcSmLGK9QpnUjAKVG/xefmvJGd1WUmfpT/g6AJGA== tunnel-agent@^0.6.0: version "0.6.0" @@ -3728,10 +3637,10 @@ type-detect@^4.0.0, type-detect@^4.0.5: resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c" integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g== -type-fest@^0.10.0: - version "0.10.0" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.10.0.tgz#7f06b2b9fbfc581068d1341ffabd0349ceafc642" - integrity sha512-EUV9jo4sffrwlg8s0zDhP0T2WD3pru5Xi0+HTE3zTUmBaZNhfkite9PdSJwdXLwPVW0jnAHT56pZHIOYckPEiw== +type-fest@^0.11.0: + version "0.11.0" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.11.0.tgz#97abf0872310fed88a5c466b25681576145e33f1" + integrity sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ== type-fest@^0.8.1: version "0.8.1" @@ -3788,15 +3697,15 @@ util-deprecate@^1.0.1, util-deprecate@~1.0.1: resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= -uuid@^3.0.0, uuid@^3.1.0, uuid@^3.3.2: +uuid@^3.0.0, uuid@^3.3.2: version "3.4.0" resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee" integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A== -uuid@^7.0.0, uuid@^7.0.1: - version "7.0.1" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-7.0.1.tgz#95ed6ff3d8c881cbf85f0f05cc3915ef994818ef" - integrity sha512-yqjRXZzSJm9Dbl84H2VDHpM3zMjzSJQ+hn6C4zqd5ilW+7P4ZmLEEqwho9LjP+tGuZlF4xrHQXT0h9QZUS/pWA== +uuid@^7.0.3: + version "7.0.3" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-7.0.3.tgz#c5c9f2c8cf25dc0a372c4df1441c41f5bd0c680b" + integrity sha512-DPSke0pXhTZgoF/d+WSt2QaKMCFSfx7QegxEWT+JOuHF5aWrKEn0G+ztjuJg/gG8/ItK+rbPCD/yNv8yyih6Cg== v8-compile-cache@^2.0.3: version "2.1.0" @@ -3834,9 +3743,9 @@ wbuf@^1.1.0, wbuf@^1.7.2: minimalistic-assert "^1.0.0" websocket-stream@^5.1.2: - version "5.5.0" - resolved "https://registry.yarnpkg.com/websocket-stream/-/websocket-stream-5.5.0.tgz#9827f2846fc0d2b4dca7aab8f92980b2548b868e" - integrity sha512-EXy/zXb9kNHI07TIMz1oIUIrPZxQRA8aeJ5XYg5ihV8K4kD1DuA+FY6R96HfdIHzlSzS8HiISAfrm+vVQkZBug== + version "5.5.2" + resolved "https://registry.yarnpkg.com/websocket-stream/-/websocket-stream-5.5.2.tgz#49d87083d96839f0648f5513bbddd581f496b8a2" + integrity sha512-8z49MKIHbGk3C4HtuHWDtYX8mYej1wWabjthC/RupM9ngeukU4IWoM46dgth1UOS/T4/IqgEdCDJuMe2039OQQ== dependencies: duplexify "^3.5.1" inherits "^2.0.1" @@ -3937,18 +3846,18 @@ yallist@^3.0.0, yallist@^3.0.3: resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== -yargs-parser@13.1.1, yargs-parser@^13.1.1: - version "13.1.1" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-13.1.1.tgz#d26058532aa06d365fe091f6a1fc06b2f7e5eca0" - integrity sha512-oVAVsHz6uFrg3XQheFII8ESO2ssAf9luWuAd6Wexsu4F3OtIW0o8IribPXYrD4WC24LWtPrJlGy87y5udK+dxQ== +yargs-parser@13.1.2, yargs-parser@^13.1.2: + version "13.1.2" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-13.1.2.tgz#130f09702ebaeef2650d54ce6e3e5706f7a4fb38" + integrity sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg== dependencies: camelcase "^5.0.0" decamelize "^1.2.0" -yargs-parser@^15.0.0: - version "15.0.0" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-15.0.0.tgz#cdd7a97490ec836195f59f3f4dbe5ea9e8f75f08" - integrity sha512-xLTUnCMc4JhxrPEPUYD5IBR1mWCK/aT6+RJ/K29JY2y1vD+FhtgKK0AXRWvI262q3QSffAQuTouFIKUuHX89wQ== +yargs-parser@^15.0.1: + version "15.0.1" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-15.0.1.tgz#54786af40b820dcb2fb8025b11b4d659d76323b3" + integrity sha512-0OAMV2mAZQrs3FkNpDQcBk1x5HXb8X4twADss4S0Iuk+2dGnLOE/fRHrsYm542GduMveyA77OF4wrNJuanRCWw== dependencies: camelcase "^5.0.0" decamelize "^1.2.0" @@ -3962,10 +3871,10 @@ yargs-unparser@1.6.0: lodash "^4.17.15" yargs "^13.3.0" -yargs@13.3.0, yargs@^13.3.0: - version "13.3.0" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-13.3.0.tgz#4c657a55e07e5f2cf947f8a366567c04a0dedc83" - integrity sha512-2eehun/8ALW8TLoIl7MVaRUrg+yCnenu8B4kBlRxj3GJGDKU1Og7sMXPNm1BYyM1DOJmTZ4YeN/Nwxv+8XJsUA== +yargs@13.3.2, yargs@^13.3.0: + version "13.3.2" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-13.3.2.tgz#ad7ffefec1aa59565ac915f82dccb38a9c31a2dd" + integrity sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw== dependencies: cliui "^5.0.0" find-up "^3.0.0" @@ -3976,12 +3885,12 @@ yargs@13.3.0, yargs@^13.3.0: string-width "^3.0.0" which-module "^2.0.0" y18n "^4.0.0" - yargs-parser "^13.1.1" + yargs-parser "^13.1.2" yargs@^14.0.0: - version "14.2.2" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-14.2.2.tgz#2769564379009ff8597cdd38fba09da9b493c4b5" - integrity sha512-/4ld+4VV5RnrynMhPZJ/ZpOCGSCeghMykZ3BhdFBDa9Wy/RH6uEGNWDJog+aUlq+9OM1CFTgtYRW5Is1Po9NOA== + version "14.2.3" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-14.2.3.tgz#1a1c3edced1afb2a2fea33604bc6d1d8d688a414" + integrity sha512-ZbotRWhF+lkjijC/VhmOT9wSgyBQ7+zr13+YLkhfsSiTriYsMzkTUFP18pFhWwBeMa5gUc1MzbhrO6/VB7c9Xg== dependencies: cliui "^5.0.0" decamelize "^1.2.0" @@ -3993,7 +3902,7 @@ yargs@^14.0.0: string-width "^3.0.0" which-module "^2.0.0" y18n "^4.0.0" - yargs-parser "^15.0.0" + yargs-parser "^15.0.1" yargs@^3.10.0: version "3.32.0" From 82862c47450da056bfe0e9b0a5331a30990619b3 Mon Sep 17 00:00:00 2001 From: Felix Erdmann Date: Fri, 12 Jun 2020 15:01:02 +0200 Subject: [PATCH 076/337] Windspeed (#311) * v0.0.21 * bump opensensemap-api-models version and add windspeed port --- CHANGELOG.md | 1 + packages/api/lib/controllers/boxesController.js | 4 ++++ packages/api/package.json | 2 +- packages/models/CHANGELOG.md | 4 ++++ packages/models/package.json | 4 ++-- packages/models/src/box/box.js | 5 ++++- .../models/src/box/sensorLayouts/sensebox.home.mcu.js | 6 ++++-- .../src/box/sensorLayouts/sensorDefinitions/index.js | 6 ++++-- .../src/box/sensorLayouts/sensorDefinitions/windspeed.js | 8 ++++++++ packages/models/src/user/mails.js | 1 + 10 files changed, 33 insertions(+), 8 deletions(-) create mode 100644 packages/models/src/box/sensorLayouts/sensorDefinitions/windspeed.js diff --git a/CHANGELOG.md b/CHANGELOG.md index 922d992c..9c28ca2b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,4 +1,5 @@ # openSenseMap API Changelog +- Add windspeed sensor ## v9.2 - Include TTN EUIs and Key in LoRaWAN sketch diff --git a/packages/api/lib/controllers/boxesController.js b/packages/api/lib/controllers/boxesController.js index 742fff5c..1f777bb6 100644 --- a/packages/api/lib/controllers/boxesController.js +++ b/packages/api/lib/controllers/boxesController.js @@ -411,6 +411,7 @@ const postNewBox = async function postNewBox (req, res, next) { * @apiParam {String="Serial1","Serial2"} serialPort the serial port the SDS011 sensor is connected to * @apiParam {String="A","B","C"} soilDigitalPort the digital port the SMT50 sensor is connected to * @apiParam {String="A","B","C"} soundMeterPort the digital port the soundlevelmeter sensor is connected to + * @apiParam {String="A","B","C"} windSpeedPort the digital port the windspeed sensor is connected to * @apiParam {String} ssid the ssid of your wifi network * @apiParam {String} password the password of your wifi network * @apiParam {String} devEUI the devEUI of TTN device @@ -427,6 +428,7 @@ const getSketch = async function getSketch (req, res, next) { serialPort: req._userParams.serialPort, soilDigitalPort: req._userParams.soilDigitalPort, soundMeterPort: req._userParams.soundMeterPort, + windSpeedPort: req._userParams.windSpeedPort, ssid: req._userParams.ssid, password: req._userParams.password, devEUI: req._userParams.devEUI, @@ -480,6 +482,7 @@ module.exports = { { name: 'serialPort', dataType: 'String', allowedValues: ['Serial1', 'Serial2'] }, { name: 'soilDigitalPort', dataType: 'String', allowedValues: ['A', 'B', 'C'] }, { name: 'soundMeterPort', dataType: 'String', allowedValues: ['A', 'B', 'C'] }, + { name: 'windSpeedPort', dataType: 'String', allowedValues: ['A', 'B', 'C'] }, { name: 'ssid', dataType: 'StringWithEmpty' }, { name: 'password', dataType: 'StringWithEmpty' }, { name: 'devEUI', dataType: 'StringWithEmpty' }, @@ -531,6 +534,7 @@ module.exports = { { name: 'serialPort', dataType: 'String', defaultValue: 'Serial1', allowedValues: ['Serial1', 'Serial2'] }, { name: 'soilDigitalPort', dataType: 'String', defaultValue: 'A', allowedValues: ['A', 'B', 'C'] }, { name: 'soundMeterPort', dataType: 'String', defaultValue: 'B', allowedValues: ['A', 'B', 'C'] }, + { name: 'windSpeedPort', dataType: 'String', defaultValue: 'C', allowedValues: ['A', 'B', 'C'] }, { name: 'mqtt', dataType: 'object' }, { name: 'ttn', dataType: 'object' }, { predef: 'location', required: true } diff --git a/packages/api/package.json b/packages/api/package.json index 5b0bd422..29007e8d 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -10,7 +10,7 @@ "Norwin Roosen" ], "dependencies": { - "@sensebox/opensensemap-api-models": "^0.0.20", + "@sensebox/opensensemap-api-models": "^0.0.21", "@turf/area": "^6.0.1", "@turf/bbox": "^6.0.1", "@turf/centroid": "^6.0.2", diff --git a/packages/models/CHANGELOG.md b/packages/models/CHANGELOG.md index 79f2bf85..d5386992 100644 --- a/packages/models/CHANGELOG.md +++ b/packages/models/CHANGELOG.md @@ -2,6 +2,10 @@ ## Unreleased +## v0.0.21 +- Update @sensebox/node-sketch-templater to v1.8.0 +- Add windspeed sensor + ## v0.0.20 - Update @sensebox/node-sketch-templater to v1.7.0 diff --git a/packages/models/package.json b/packages/models/package.json index 7b472d3d..e5f43bd6 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -1,12 +1,12 @@ { "name": "@sensebox/opensensemap-api-models", "description": "openSenseMap data models and database connection", - "version": "0.0.20", + "version": "0.0.21", "main": "index.js", "license": "MIT", "dependencies": { "@sensebox/osem-protos": "^1.1.0", - "@sensebox/sketch-templater": "^1.7.0", + "@sensebox/sketch-templater": "^1.8.0", "bcrypt": "^4.0.1", "bunyan": "^1.8.12", "config": "^3.3.1", diff --git a/packages/models/src/box/box.js b/packages/models/src/box/box.js index 4ea50360..6cfd82f8 100644 --- a/packages/models/src/box/box.js +++ b/packages/models/src/box/box.js @@ -801,7 +801,7 @@ boxSchema.methods.updateSensors = function updateSensors (sensors) { } }; -boxSchema.methods.getSketch = function getSketch ({ encoding, serialPort, soilDigitalPort, soundMeterPort, ssid, password, devEUI, appEUI, appKey } = {}) { +boxSchema.methods.getSketch = function getSketch ({ encoding, serialPort, soilDigitalPort, soundMeterPort, windSpeedPort, ssid, password, devEUI, appEUI, appKey } = {}) { if (serialPort) { this.serialPort = serialPort; } @@ -811,6 +811,9 @@ boxSchema.methods.getSketch = function getSketch ({ encoding, serialPort, soilDi if (soundMeterPort) { this.soundMeterPort = soundMeterPort; } + if (windSpeedPort) { + this.windSpeedPort = windSpeedPort; + } this.ssid = ssid; this.password = password; diff --git a/packages/models/src/box/sensorLayouts/sensebox.home.mcu.js b/packages/models/src/box/sensorLayouts/sensebox.home.mcu.js index 4e6ff50b..d34818ea 100644 --- a/packages/models/src/box/sensorLayouts/sensebox.home.mcu.js +++ b/packages/models/src/box/sensorLayouts/sensebox.home.mcu.js @@ -16,7 +16,8 @@ const { bme680_voc, smt50_soilmoisture, smt50_soiltemperature, - soundlevelmeter + soundlevelmeter, + windspeed } = sensorDefinitions; module.exports = [ @@ -33,5 +34,6 @@ module.exports = [ bme680_voc, smt50_soilmoisture, smt50_soiltemperature, - soundlevelmeter + soundlevelmeter, + windspeed ]; diff --git a/packages/models/src/box/sensorLayouts/sensorDefinitions/index.js b/packages/models/src/box/sensorLayouts/sensorDefinitions/index.js index 89957ea0..7f616047 100644 --- a/packages/models/src/box/sensorLayouts/sensorDefinitions/index.js +++ b/packages/models/src/box/sensorLayouts/sensorDefinitions/index.js @@ -38,7 +38,8 @@ const veml6070_uvintensity = require('./veml6070_uvintensity'), bme680_voc = require('./bme680_voc'), smt50_soilmoisture = require('./smt50_soilmoisture'), smt50_soiltemperature = require('./smt50_soiltemperature'), - soundlevelmeter = require('./soundlevelmeter'); + soundlevelmeter = require('./soundlevelmeter'), + windspeed = require('./windspeed'); module.exports = { hdc1008_temperature, @@ -79,5 +80,6 @@ module.exports = { bme680_voc, smt50_soilmoisture, smt50_soiltemperature, - soundlevelmeter + soundlevelmeter, + windspeed }; diff --git a/packages/models/src/box/sensorLayouts/sensorDefinitions/windspeed.js b/packages/models/src/box/sensorLayouts/sensorDefinitions/windspeed.js new file mode 100644 index 00000000..4ee4fc2c --- /dev/null +++ b/packages/models/src/box/sensorLayouts/sensorDefinitions/windspeed.js @@ -0,0 +1,8 @@ +'use strict'; + +module.exports = { + title: 'Windgeschwindigkeit', + unit: 'm/s', + sensorType: 'WINDSPEED', + icon: 'osem-particulate-matter' +}; diff --git a/packages/models/src/user/mails.js b/packages/models/src/user/mails.js index a3dd787d..8650b6ef 100644 --- a/packages/models/src/user/mails.js +++ b/packages/models/src/user/mails.js @@ -31,6 +31,7 @@ if (config.get('mailer.url')) { serialPort: box.serialPort, soilDigitalPort: box.soilDigitalPort, soundMeterPort: box.soundMeterPort, + windSpeedPort: box.windSpeedPort, devEUI: '', appEUI: '', appKey: '' From 918c80fe3f428b7f776a442661ef09a37ff6222d Mon Sep 17 00:00:00 2001 From: Felix Erdmann Date: Fri, 12 Jun 2020 16:16:43 +0200 Subject: [PATCH 077/337] v9.3.1 (#312) * v0.0.21 * bump opensensemap-api-models version and add windspeed port * add windspeed to sensor templates * update CHANGELOG.md --- CHANGELOG.md | 3 +++ packages/api/lib/controllers/boxesController.js | 4 ++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 9c28ca2b..800ae691 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,9 @@ # openSenseMap API Changelog - Add windspeed sensor +## v9.3.1 +- Add windspeed sensor + ## v9.2 - Include TTN EUIs and Key in LoRaWAN sketch diff --git a/packages/api/lib/controllers/boxesController.js b/packages/api/lib/controllers/boxesController.js index 1f777bb6..88ac7749 100644 --- a/packages/api/lib/controllers/boxesController.js +++ b/packages/api/lib/controllers/boxesController.js @@ -381,7 +381,7 @@ const getBox = async function getBox (req, res, next) { * @apiParam (RequestBody) {Location} location the coordinates of this senseBox. * @apiParam (RequestBody) {String="homeV2Lora","homeV2Ethernet","homeV2Wifi","homeEthernet","homeWifi","homeEthernetFeinstaub","homeWifiFeinstaub","luftdaten_sds011","luftdaten_sds011_dht11","luftdaten_sds011_dht22","luftdaten_sds011_bmp180","luftdaten_sds011_bme280","hackair_home_v2"} [model] specify the model if you want to use a predefined senseBox model, autocreating sensor definitions. * @apiParam (RequestBody) {Sensor[]} [sensors] an array containing the sensors of this senseBox. Only use if `model` is unspecified. - * @apiParam (RequestBody) {String="hdc1080","bmp280","tsl45315","veml6070","sds011","bme680","smt50","soundlevelmeter"} [sensorTemplates] Specify which sensors should be included. + * @apiParam (RequestBody) {String="hdc1080","bmp280","tsl45315","veml6070","sds011","bme680","smt50","soundlevelmeter", "windspeed"} [sensorTemplates] Specify which sensors should be included. * @apiParam (RequestBody) {Object} [mqtt] specify parameters of the MQTT integration for external measurement upload. Please see below for the accepted parameters * @apiParam (RequestBody) {Object} [ttn] specify parameters for the TTN integration for measurement from TheThingsNetwork.org upload. Please see below for the accepted parameters * @@ -530,7 +530,7 @@ module.exports = { { name: 'exposure', allowedValues: Box.BOX_VALID_EXPOSURES }, { name: 'model', allowedValues: Box.BOX_VALID_MODELS }, { name: 'sensors', dataType: ['object'] }, - { name: 'sensorTemplates', dataType: ['String'], allowedValues: ['hdc1080', 'bmp280', 'sds 011', 'tsl45315', 'veml6070', 'bme680', 'smt50', 'soundlevelmeter'] }, + { name: 'sensorTemplates', dataType: ['String'], allowedValues: ['hdc1080', 'bmp280', 'sds 011', 'tsl45315', 'veml6070', 'bme680', 'smt50', 'soundlevel', 'windspeed'] }, { name: 'serialPort', dataType: 'String', defaultValue: 'Serial1', allowedValues: ['Serial1', 'Serial2'] }, { name: 'soilDigitalPort', dataType: 'String', defaultValue: 'A', allowedValues: ['A', 'B', 'C'] }, { name: 'soundMeterPort', dataType: 'String', defaultValue: 'B', allowedValues: ['A', 'B', 'C'] }, From 3c63bb69d77933840149a08865117b247649073c Mon Sep 17 00:00:00 2001 From: Felix Erdmann Date: Mon, 22 Jun 2020 13:19:21 +0200 Subject: [PATCH 078/337] Windspeed v9.3 (#317) * v0.0.21 * bump opensensemap-api-models version and add windspeed port * add windspeed to sensor templates * update CHANGELOG.md * rename windspeed to fit node sketch templater * v0.0.22 * bump opensensemap-api-models * bump sketch templater version * v0.0.23 * bump opensensemap-api-models --- packages/api/lib/controllers/boxesController.js | 2 +- packages/api/package.json | 2 +- packages/models/CHANGELOG.md | 4 ++++ packages/models/package.json | 4 ++-- yarn.lock | 8 ++++---- 5 files changed, 12 insertions(+), 8 deletions(-) diff --git a/packages/api/lib/controllers/boxesController.js b/packages/api/lib/controllers/boxesController.js index 88ac7749..90513057 100644 --- a/packages/api/lib/controllers/boxesController.js +++ b/packages/api/lib/controllers/boxesController.js @@ -530,7 +530,7 @@ module.exports = { { name: 'exposure', allowedValues: Box.BOX_VALID_EXPOSURES }, { name: 'model', allowedValues: Box.BOX_VALID_MODELS }, { name: 'sensors', dataType: ['object'] }, - { name: 'sensorTemplates', dataType: ['String'], allowedValues: ['hdc1080', 'bmp280', 'sds 011', 'tsl45315', 'veml6070', 'bme680', 'smt50', 'soundlevel', 'windspeed'] }, + { name: 'sensorTemplates', dataType: ['String'], allowedValues: ['hdc1080', 'bmp280', 'sds 011', 'tsl45315', 'veml6070', 'bme680', 'smt50', 'soundlevelmeter', 'windspeed'] }, { name: 'serialPort', dataType: 'String', defaultValue: 'Serial1', allowedValues: ['Serial1', 'Serial2'] }, { name: 'soilDigitalPort', dataType: 'String', defaultValue: 'A', allowedValues: ['A', 'B', 'C'] }, { name: 'soundMeterPort', dataType: 'String', defaultValue: 'B', allowedValues: ['A', 'B', 'C'] }, diff --git a/packages/api/package.json b/packages/api/package.json index 29007e8d..e0f0ef16 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -10,7 +10,7 @@ "Norwin Roosen" ], "dependencies": { - "@sensebox/opensensemap-api-models": "^0.0.21", + "@sensebox/opensensemap-api-models": "^0.0.23", "@turf/area": "^6.0.1", "@turf/bbox": "^6.0.1", "@turf/centroid": "^6.0.2", diff --git a/packages/models/CHANGELOG.md b/packages/models/CHANGELOG.md index d5386992..aaf0fc3c 100644 --- a/packages/models/CHANGELOG.md +++ b/packages/models/CHANGELOG.md @@ -2,6 +2,10 @@ ## Unreleased +## v0.0.23 + +## v0.0.22 + ## v0.0.21 - Update @sensebox/node-sketch-templater to v1.8.0 - Add windspeed sensor diff --git a/packages/models/package.json b/packages/models/package.json index e5f43bd6..a22d80a3 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -1,12 +1,12 @@ { "name": "@sensebox/opensensemap-api-models", "description": "openSenseMap data models and database connection", - "version": "0.0.21", + "version": "0.0.23", "main": "index.js", "license": "MIT", "dependencies": { "@sensebox/osem-protos": "^1.1.0", - "@sensebox/sketch-templater": "^1.8.0", + "@sensebox/sketch-templater": "^1.8.1", "bcrypt": "^4.0.1", "bunyan": "^1.8.12", "config": "^3.3.1", diff --git a/yarn.lock b/yarn.lock index c6a2be8a..10d0f03a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -42,10 +42,10 @@ resolved "https://registry.yarnpkg.com/@sensebox/osem-protos/-/osem-protos-1.1.0.tgz#a7de8bc6be867953f1309181a012063c23299e79" integrity sha512-H+nUVcWlT0dvIqfJnYHuX9JBcCkP1ZKGE5YTRNWPbAEdZ11h+srpQsmeI58wK5hJcdukaZAjc4Dy96IeGM77aA== -"@sensebox/sketch-templater@^1.7.0": - version "1.7.0" - resolved "https://registry.yarnpkg.com/@sensebox/sketch-templater/-/sketch-templater-1.7.0.tgz#3d536f9b767e1c3bf40209abf60dfe4342eef579" - integrity sha512-s2v3pbwnHnnNLOowcwYbdiNB8nXITIPp/LgeSFUcjdE0hpmmPIdLg7l1mWHotwsWlWhaBrDYkxQn93ZS/UgVCQ== +"@sensebox/sketch-templater@^1.8.1": + version "1.8.1" + resolved "https://registry.yarnpkg.com/@sensebox/sketch-templater/-/sketch-templater-1.8.1.tgz#f9935d407aad59e9d414fea4de283903a3c22173" + integrity sha512-Eemm+JGUWnrMDbTG3E5/LOmWBjSLqBsQ9ujnBgunsBwo6+RgbGhnraJIRR6s4Dvr4k5zzLHSleprs3+IcI6hSA== dependencies: config "^1.29.2" dedent "^0.7.0" From a7e002d31dde6a3d656ddbd43d529fe0e66f6fb6 Mon Sep 17 00:00:00 2001 From: Felix Erdmann Date: Thu, 2 Jul 2020 13:25:31 +0200 Subject: [PATCH 079/337] Windspeed (#323) * v0.0.21 * bump opensensemap-api-models version and add windspeed port * add windspeed to sensor templates * update CHANGELOG.md * rename windspeed to fit node sketch templater * v0.0.22 * bump opensensemap-api-models * bump sketch templater version * v0.0.23 * bump opensensemap-api-models * v0.0.0 * bump sketch templater version * v0.0.24 * bump models version * update CHANGELOG.md --- CHANGELOG.md | 4 +++- packages/api/package.json | 2 +- packages/models/CHANGELOG.md | 3 +++ packages/models/package.json | 4 ++-- 4 files changed, 9 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 800ae691..32b97f2c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,7 @@ # openSenseMap API Changelog -- Add windspeed sensor + +## v9.3.5 +- fix windspeed sensor ## v9.3.1 - Add windspeed sensor diff --git a/packages/api/package.json b/packages/api/package.json index e0f0ef16..98a7bc9c 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -10,7 +10,7 @@ "Norwin Roosen" ], "dependencies": { - "@sensebox/opensensemap-api-models": "^0.0.23", + "@sensebox/opensensemap-api-models": "^0.0.24", "@turf/area": "^6.0.1", "@turf/bbox": "^6.0.1", "@turf/centroid": "^6.0.2", diff --git a/packages/models/CHANGELOG.md b/packages/models/CHANGELOG.md index aaf0fc3c..c8f7764a 100644 --- a/packages/models/CHANGELOG.md +++ b/packages/models/CHANGELOG.md @@ -2,7 +2,10 @@ ## Unreleased +## v0.0.24 + ## v0.0.23 +- Update @sensebox/node-sketch-templater to v1.8.2 ## v0.0.22 diff --git a/packages/models/package.json b/packages/models/package.json index a22d80a3..882b237d 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -1,12 +1,12 @@ { "name": "@sensebox/opensensemap-api-models", "description": "openSenseMap data models and database connection", - "version": "0.0.23", + "version": "0.0.24", "main": "index.js", "license": "MIT", "dependencies": { "@sensebox/osem-protos": "^1.1.0", - "@sensebox/sketch-templater": "^1.8.1", + "@sensebox/sketch-templater": "^1.8.2", "bcrypt": "^4.0.1", "bunyan": "^1.8.12", "config": "^3.3.1", From e5e7d7e578407e0e33ea8445bed5b60b5b778948 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 17 Jul 2020 08:03:20 +0200 Subject: [PATCH 080/337] Bump lodash from 4.17.15 to 4.17.19 (#331) Bumps [lodash](https://github.com/lodash/lodash) from 4.17.15 to 4.17.19. - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.15...4.17.19) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- yarn.lock | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/yarn.lock b/yarn.lock index 10d0f03a..b13cea0f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -42,10 +42,10 @@ resolved "https://registry.yarnpkg.com/@sensebox/osem-protos/-/osem-protos-1.1.0.tgz#a7de8bc6be867953f1309181a012063c23299e79" integrity sha512-H+nUVcWlT0dvIqfJnYHuX9JBcCkP1ZKGE5YTRNWPbAEdZ11h+srpQsmeI58wK5hJcdukaZAjc4Dy96IeGM77aA== -"@sensebox/sketch-templater@^1.8.1": - version "1.8.1" - resolved "https://registry.yarnpkg.com/@sensebox/sketch-templater/-/sketch-templater-1.8.1.tgz#f9935d407aad59e9d414fea4de283903a3c22173" - integrity sha512-Eemm+JGUWnrMDbTG3E5/LOmWBjSLqBsQ9ujnBgunsBwo6+RgbGhnraJIRR6s4Dvr4k5zzLHSleprs3+IcI6hSA== +"@sensebox/sketch-templater@^1.8.2": + version "1.8.2" + resolved "https://registry.yarnpkg.com/@sensebox/sketch-templater/-/sketch-templater-1.8.2.tgz#70ee33479b6ee03402e6e9575b19b9388b7e947f" + integrity sha512-gqW8ltzu/CYLVtiC7FnpU775LMPr8lO05TcZfQfFoLVg7JRsAX0xicFTc03NW7C3e813w16tyxqZInzPYf6RaQ== dependencies: config "^1.29.2" dedent "^0.7.0" @@ -2223,9 +2223,9 @@ lodash.once@^4.0.0: integrity sha1-DdOXEhPHxW34gJd9UEyI+0cal6w= lodash@^4.14.0, lodash@^4.15.0, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.4, lodash@^4.2.1: - version "4.17.15" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.15.tgz#b447f6670a0455bbfeedd11392eff330ea097548" - integrity sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A== + version "4.17.19" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.19.tgz#e48ddedbe30b3321783c5b4301fbd353bc1e4a4b" + integrity sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ== log-symbols@3.0.0: version "3.0.0" From 57df6ec490c429ffe57d871424a41f24b30364a9 Mon Sep 17 00:00:00 2001 From: Felix Erdmann Date: Tue, 28 Jul 2020 15:18:59 +0200 Subject: [PATCH 081/337] v9.4 (#334) * Bump config from 3.2.4 to 3.2.5 Bumps [config](https://github.com/lorenwest/node-config) from 3.2.4 to 3.2.5. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * [Security] Bump lodash from 4.17.4 to 4.17.15 (#210) Bumps [lodash](https://github.com/lodash/lodash) from 4.17.4 to 4.17.15. **This update includes security fixes.** - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.4...4.17.15) Signed-off-by: dependabot-preview[bot] * Bump got from 10.2.2 to 10.4.0 (#214) Bumps [got](https://github.com/sindresorhus/got) from 10.2.2 to 10.4.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.2.2...v10.4.0) Signed-off-by: dependabot-preview[bot] * Bump csv-parse from 4.8.3 to 4.8.5 (#211) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.3 to 4.8.5. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.3...v4.8.5) Signed-off-by: dependabot-preview[bot] * Bump uuid from 3.3.3 to 3.4.0 (#218) Bumps [uuid](https://github.com/uuidjs/uuid) from 3.3.3 to 3.4.0. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v3.3.3...v3.4.0) Signed-off-by: dependabot-preview[bot] * Bump restify-errors from 5.0.0 to 8.0.2 (#217) Bumps [restify-errors](https://github.com/restify/errors) from 5.0.0 to 8.0.2. - [Release notes](https://github.com/restify/errors/releases) - [Changelog](https://github.com/restify/errors/blob/master/CHANGELOG.md) - [Commits](https://github.com/restify/errors/compare/v5.0.0...v8.0.2) Signed-off-by: dependabot-preview[bot] * Bump mocha from 6.2.2 to 7.0.1 (#216) Bumps [mocha](https://github.com/mochajs/mocha) from 6.2.2 to 7.0.1. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v6.2.2...v7.0.1) Signed-off-by: dependabot-preview[bot] * Bump simple-statistics from 7.0.7 to 7.0.8 (#219) Bumps [simple-statistics](https://github.com/simple-statistics/simple-statistics) from 7.0.7 to 7.0.8. - [Release notes](https://github.com/simple-statistics/simple-statistics/releases) - [Changelog](https://github.com/simple-statistics/simple-statistics/blob/master/CHANGELOG.md) - [Commits](https://github.com/simple-statistics/simple-statistics/compare/v7.0.7...v7.0.8) Signed-off-by: dependabot-preview[bot] * v9 (#220) * v0.0.14 * bump api-models version * update changelog * Bump bcrypt from 3.0.7 to 3.0.8 (#222) Bumps [bcrypt](https://github.com/kelektiv/node.bcrypt.js) from 3.0.7 to 3.0.8. - [Release notes](https://github.com/kelektiv/node.bcrypt.js/releases) - [Changelog](https://github.com/kelektiv/node.bcrypt.js/blob/master/CHANGELOG.md) - [Commits](https://github.com/kelektiv/node.bcrypt.js/compare/v3.0.7...v3.0.8) Signed-off-by: dependabot-preview[bot] * Bump got from 10.4.0 to 10.5.0 (#223) Bumps [got](https://github.com/sindresorhus/got) from 10.4.0 to 10.5.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.4.0...v10.5.0) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.0 to 10.5.2 (#224) Bumps [got](https://github.com/sindresorhus/got) from 10.5.0 to 10.5.2. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.0...v10.5.2) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.2 to 10.5.3 (#225) Bumps [got](https://github.com/sindresorhus/got) from 10.5.2 to 10.5.3. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.2...v10.5.3) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.3 to 10.5.4 (#226) Bumps [got](https://github.com/sindresorhus/got) from 10.5.3 to 10.5.4. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.3...v10.5.4) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.4 to 10.5.5 (#227) Bumps [got](https://github.com/sindresorhus/got) from 10.5.4 to 10.5.5. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.4...v10.5.5) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.5 to 10.5.6 (#228) Bumps [got](https://github.com/sindresorhus/got) from 10.5.5 to 10.5.6. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.5...v10.5.6) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.6 to 10.5.7 (#229) Bumps [got](https://github.com/sindresorhus/got) from 10.5.6 to 10.5.7. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.6...v10.5.7) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.7 to 10.6.0 (#230) Bumps [got](https://github.com/sindresorhus/got) from 10.5.7 to 10.6.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.7...v10.6.0) Signed-off-by: dependabot-preview[bot] * Bump config from 3.2.5 to 3.2.6 (#232) Bumps [config](https://github.com/lorenwest/node-config) from 3.2.5 to 3.2.6. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * Bump csv-parse from 4.8.5 to 4.8.6 (#233) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.5 to 4.8.6. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.5...v4.8.6) Signed-off-by: dependabot-preview[bot] * bump node-sketch-templater version (#234) * Bump models version (#236) * v0.0.15 * bump opensensemap-api-models version * Bump uuid from 3.4.0 to 7.0.0 (#237) * Bump uuid from 3.4.0 to 7.0.0 Bumps [uuid](https://github.com/uuidjs/uuid) from 3.4.0 to 7.0.0. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v3.4.0...v7.0.0) Signed-off-by: dependabot-preview[bot] * fix uuid usage for 7.0.0 Co-authored-by: Gerald Pape * Bump @sensebox/sketch-templater from 1.5.4 to 1.5.5 (#238) Bumps [@sensebox/sketch-templater](https://github.com/sensebox/node-sketch-templater) from 1.5.4 to 1.5.5. - [Release notes](https://github.com/sensebox/node-sketch-templater/releases) - [Changelog](https://github.com/sensebox/node-sketch-templater/blob/master/CHANGELOG.md) - [Commits](https://github.com/sensebox/node-sketch-templater/compare/v1.5.4...v1.5.5) Signed-off-by: dependabot-preview[bot] * bump opensensemap-api-models version (#239) * Bump uuid from 7.0.0 to 7.0.1 (#240) Bumps [uuid](https://github.com/uuidjs/uuid) from 7.0.0 to 7.0.1. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v7.0.0...v7.0.1) Signed-off-by: dependabot-preview[bot] * Bump mocha from 7.0.1 to 7.1.0 (#241) Bumps [mocha](https://github.com/mochajs/mocha) from 7.0.1 to 7.1.0. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v7.0.1...v7.1.0) Signed-off-by: dependabot-preview[bot] * Bump config from 3.2.6 to 3.3.0 (#242) Bumps [config](https://github.com/lorenwest/node-config) from 3.2.6 to 3.3.0. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * Merge master in development (#244) * v0.0.14 * v9 (#221) * Bump config from 3.2.4 to 3.2.5 Bumps [config](https://github.com/lorenwest/node-config) from 3.2.4 to 3.2.5. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * [Security] Bump lodash from 4.17.4 to 4.17.15 (#210) Bumps [lodash](https://github.com/lodash/lodash) from 4.17.4 to 4.17.15. **This update includes security fixes.** - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.4...4.17.15) Signed-off-by: dependabot-preview[bot] * Bump got from 10.2.2 to 10.4.0 (#214) Bumps [got](https://github.com/sindresorhus/got) from 10.2.2 to 10.4.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.2.2...v10.4.0) Signed-off-by: dependabot-preview[bot] * Bump csv-parse from 4.8.3 to 4.8.5 (#211) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.3 to 4.8.5. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.3...v4.8.5) Signed-off-by: dependabot-preview[bot] * Bump uuid from 3.3.3 to 3.4.0 (#218) Bumps [uuid](https://github.com/uuidjs/uuid) from 3.3.3 to 3.4.0. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v3.3.3...v3.4.0) Signed-off-by: dependabot-preview[bot] * Bump restify-errors from 5.0.0 to 8.0.2 (#217) Bumps [restify-errors](https://github.com/restify/errors) from 5.0.0 to 8.0.2. - [Release notes](https://github.com/restify/errors/releases) - [Changelog](https://github.com/restify/errors/blob/master/CHANGELOG.md) - [Commits](https://github.com/restify/errors/compare/v5.0.0...v8.0.2) Signed-off-by: dependabot-preview[bot] * Bump mocha from 6.2.2 to 7.0.1 (#216) Bumps [mocha](https://github.com/mochajs/mocha) from 6.2.2 to 7.0.1. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v6.2.2...v7.0.1) Signed-off-by: dependabot-preview[bot] * Bump simple-statistics from 7.0.7 to 7.0.8 (#219) Bumps [simple-statistics](https://github.com/simple-statistics/simple-statistics) from 7.0.7 to 7.0.8. - [Release notes](https://github.com/simple-statistics/simple-statistics/releases) - [Changelog](https://github.com/simple-statistics/simple-statistics/blob/master/CHANGELOG.md) - [Commits](https://github.com/simple-statistics/simple-statistics/compare/v7.0.7...v7.0.8) Signed-off-by: dependabot-preview[bot] * v9 (#220) * v0.0.14 * bump api-models version * update changelog Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape * Fix development (#245) * v0.0.14 * v9 (#221) * Bump config from 3.2.4 to 3.2.5 Bumps [config](https://github.com/lorenwest/node-config) from 3.2.4 to 3.2.5. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * [Security] Bump lodash from 4.17.4 to 4.17.15 (#210) Bumps [lodash](https://github.com/lodash/lodash) from 4.17.4 to 4.17.15. **This update includes security fixes.** - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.4...4.17.15) Signed-off-by: dependabot-preview[bot] * Bump got from 10.2.2 to 10.4.0 (#214) Bumps [got](https://github.com/sindresorhus/got) from 10.2.2 to 10.4.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.2.2...v10.4.0) Signed-off-by: dependabot-preview[bot] * Bump csv-parse from 4.8.3 to 4.8.5 (#211) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.3 to 4.8.5. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.3...v4.8.5) Signed-off-by: dependabot-preview[bot] * Bump uuid from 3.3.3 to 3.4.0 (#218) Bumps [uuid](https://github.com/uuidjs/uuid) from 3.3.3 to 3.4.0. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v3.3.3...v3.4.0) Signed-off-by: dependabot-preview[bot] * Bump restify-errors from 5.0.0 to 8.0.2 (#217) Bumps [restify-errors](https://github.com/restify/errors) from 5.0.0 to 8.0.2. - [Release notes](https://github.com/restify/errors/releases) - [Changelog](https://github.com/restify/errors/blob/master/CHANGELOG.md) - [Commits](https://github.com/restify/errors/compare/v5.0.0...v8.0.2) Signed-off-by: dependabot-preview[bot] * Bump mocha from 6.2.2 to 7.0.1 (#216) Bumps [mocha](https://github.com/mochajs/mocha) from 6.2.2 to 7.0.1. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v6.2.2...v7.0.1) Signed-off-by: dependabot-preview[bot] * Bump simple-statistics from 7.0.7 to 7.0.8 (#219) Bumps [simple-statistics](https://github.com/simple-statistics/simple-statistics) from 7.0.7 to 7.0.8. - [Release notes](https://github.com/simple-statistics/simple-statistics/releases) - [Changelog](https://github.com/simple-statistics/simple-statistics/blob/master/CHANGELOG.md) - [Commits](https://github.com/simple-statistics/simple-statistics/compare/v7.0.7...v7.0.8) Signed-off-by: dependabot-preview[bot] * v9 (#220) * v0.0.14 * bump api-models version * update changelog Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape Co-authored-by: Felix Erdmann Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump csv-parse from 4.8.6 to 4.8.7 (#246) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.6 to 4.8.7. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.6...v4.8.7) Signed-off-by: dependabot-preview[bot] * Bump bcrypt from 3.0.8 to 4.0.1 (#247) Bumps [bcrypt](https://github.com/kelektiv/node.bcrypt.js) from 3.0.8 to 4.0.1. - [Release notes](https://github.com/kelektiv/node.bcrypt.js/releases) - [Changelog](https://github.com/kelektiv/node.bcrypt.js/blob/master/CHANGELOG.md) - [Commits](https://github.com/kelektiv/node.bcrypt.js/compare/v3.0.8...v4.0.1) Signed-off-by: dependabot-preview[bot] * Bump csv-parse from 4.8.7 to 4.8.8 (#248) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.7 to 4.8.8. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.7...v4.8.8) Signed-off-by: dependabot-preview[bot] * Bump uuid from 7.0.1 to 7.0.2 (#249) Bumps [uuid](https://github.com/uuidjs/uuid) from 7.0.1 to 7.0.2. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v7.0.1...v7.0.2) Signed-off-by: dependabot-preview[bot] * [Security] Bump acorn from 7.1.0 to 7.1.1 (#250) Bumps [acorn](https://github.com/acornjs/acorn) from 7.1.0 to 7.1.1. **This update includes a security fix.** - [Release notes](https://github.com/acornjs/acorn/releases) - [Commits](https://github.com/acornjs/acorn/compare/7.1.0...7.1.1) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump mocha from 7.1.0 to 7.1.1 (#252) Bumps [mocha](https://github.com/mochajs/mocha) from 7.1.0 to 7.1.1. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/v7.1.1/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v7.1.0...v7.1.1) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * [Security] Bump minimist from 1.2.0 to 1.2.5 (#253) Bumps [minimist](https://github.com/substack/minimist) from 1.2.0 to 1.2.5. **This update includes a security fix.** - [Release notes](https://github.com/substack/minimist/releases) - [Commits](https://github.com/substack/minimist/compare/1.2.0...1.2.5) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump honeybadger from 1.3.0 to 1.4.0 (#254) Bumps [honeybadger](https://github.com/honeybadger-io/honeybadger-node) from 1.3.0 to 1.4.0. - [Release notes](https://github.com/honeybadger-io/honeybadger-node/releases) - [Changelog](https://github.com/honeybadger-io/honeybadger-node/blob/master/CHANGELOG.md) - [Commits](https://github.com/honeybadger-io/honeybadger-node/compare/v1.3.0...v1.4.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump got from 10.6.0 to 10.7.0 (#255) Bumps [got](https://github.com/sindresorhus/got) from 10.6.0 to 10.7.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.6.0...v10.7.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump config from 3.3.0 to 3.3.1 (#256) Bumps [config](https://github.com/lorenwest/node-config) from 3.3.0 to 3.3.1. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump uuid from 7.0.2 to 7.0.3 (#257) Bumps [uuid](https://github.com/uuidjs/uuid) from 7.0.2 to 7.0.3. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v7.0.2...v7.0.3) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bsec (#259) * update bme phenomenons * v0.0.16 * v0.0.17 * Bsec (#261) * update bme phenomenons * v0.0.16 * v0.0.17 * fix spelling mistake * v0.0.18 * update api models version * bump sketch templater version * v0.0.19 * bump opensensemap-api-models version * Bump got from 10.7.0 to 11.0.0 (#263) Bumps [got](https://github.com/sindresorhus/got) from 10.7.0 to 11.0.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.7.0...v11.0.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump csv-stringify from 5.3.6 to 5.4.0 (#264) Bumps [csv-stringify](https://github.com/adaltas/node-csv-stringify) from 5.3.6 to 5.4.0. - [Release notes](https://github.com/adaltas/node-csv-stringify/releases) - [Changelog](https://github.com/adaltas/node-csv-stringify/blob/master/CHANGELOG.md) - [Commits](https://github.com/adaltas/node-csv-stringify/compare/v5.3.6...v5.4.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump csv-parse from 4.8.8 to 4.8.9 (#265) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.8 to 4.8.9. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.8...v4.8.9) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape * Bump got from 11.0.0 to 11.0.1 (#266) Bumps [got](https://github.com/sindresorhus/got) from 11.0.0 to 11.0.1. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/commits) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape * Bump simple-statistics from 7.0.8 to 7.0.9 (#267) Bumps [simple-statistics](https://github.com/simple-statistics/simple-statistics) from 7.0.8 to 7.0.9. - [Release notes](https://github.com/simple-statistics/simple-statistics/releases) - [Changelog](https://github.com/simple-statistics/simple-statistics/blob/master/CHANGELOG.md) - [Commits](https://github.com/simple-statistics/simple-statistics/compare/v7.0.8...v7.0.9) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape * Bump csv-stringify from 5.4.0 to 5.4.2 (#269) Bumps [csv-stringify](https://github.com/adaltas/node-csv-stringify) from 5.4.0 to 5.4.2. - [Release notes](https://github.com/adaltas/node-csv-stringify/releases) - [Changelog](https://github.com/adaltas/node-csv-stringify/blob/master/CHANGELOG.md) - [Commits](https://github.com/adaltas/node-csv-stringify/compare/v5.4.0...v5.4.2) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump csv-stringify from 5.4.2 to 5.4.3 (#270) Bumps [csv-stringify](https://github.com/adaltas/node-csv-stringify) from 5.4.2 to 5.4.3. - [Release notes](https://github.com/adaltas/node-csv-stringify/releases) - [Changelog](https://github.com/adaltas/node-csv-stringify/blob/master/CHANGELOG.md) - [Commits](https://github.com/adaltas/node-csv-stringify/compare/v5.4.2...v5.4.3) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump got from 11.0.1 to 11.0.2 (#271) Bumps [got](https://github.com/sindresorhus/got) from 11.0.1 to 11.0.2. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v11.0.1...v11.0.2) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Revert bsec (#272) * Revert "Bsec (#261)" This reverts commit 4e7fba4cad5f240f26d77f97cb5a6f63baae91e1. * Revert "Bsec (#259)" This reverts commit 0e99504f388679bb733c3fe247f244120229cdd4. * update yarn.lock * use api model 0.0.15 * Bump mocha from 7.1.1 to 7.1.2 (#273) Bumps [mocha](https://github.com/mochajs/mocha) from 7.1.1 to 7.1.2. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/v7.1.2/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v7.1.1...v7.1.2) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump csv-parse from 4.8.9 to 4.9.0 (#274) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.9 to 4.9.0. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.9...v4.9.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Ttn ids (#277) * v9.1 (#243) * Bump config from 3.2.4 to 3.2.5 Bumps [config](https://github.com/lorenwest/node-config) from 3.2.4 to 3.2.5. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * [Security] Bump lodash from 4.17.4 to 4.17.15 (#210) Bumps [lodash](https://github.com/lodash/lodash) from 4.17.4 to 4.17.15. **This update includes security fixes.** - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.4...4.17.15) Signed-off-by: dependabot-preview[bot] * Bump got from 10.2.2 to 10.4.0 (#214) Bumps [got](https://github.com/sindresorhus/got) from 10.2.2 to 10.4.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.2.2...v10.4.0) Signed-off-by: dependabot-preview[bot] * Bump csv-parse from 4.8.3 to 4.8.5 (#211) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.3 to 4.8.5. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.3...v4.8.5) Signed-off-by: dependabot-preview[bot] * Bump uuid from 3.3.3 to 3.4.0 (#218) Bumps [uuid](https://github.com/uuidjs/uuid) from 3.3.3 to 3.4.0. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v3.3.3...v3.4.0) Signed-off-by: dependabot-preview[bot] * Bump restify-errors from 5.0.0 to 8.0.2 (#217) Bumps [restify-errors](https://github.com/restify/errors) from 5.0.0 to 8.0.2. - [Release notes](https://github.com/restify/errors/releases) - [Changelog](https://github.com/restify/errors/blob/master/CHANGELOG.md) - [Commits](https://github.com/restify/errors/compare/v5.0.0...v8.0.2) Signed-off-by: dependabot-preview[bot] * Bump mocha from 6.2.2 to 7.0.1 (#216) Bumps [mocha](https://github.com/mochajs/mocha) from 6.2.2 to 7.0.1. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v6.2.2...v7.0.1) Signed-off-by: dependabot-preview[bot] * Bump simple-statistics from 7.0.7 to 7.0.8 (#219) Bumps [simple-statistics](https://github.com/simple-statistics/simple-statistics) from 7.0.7 to 7.0.8. - [Release notes](https://github.com/simple-statistics/simple-statistics/releases) - [Changelog](https://github.com/simple-statistics/simple-statistics/blob/master/CHANGELOG.md) - [Commits](https://github.com/simple-statistics/simple-statistics/compare/v7.0.7...v7.0.8) Signed-off-by: dependabot-preview[bot] * v9 (#220) * v0.0.14 * bump api-models version * update changelog * Bump bcrypt from 3.0.7 to 3.0.8 (#222) Bumps [bcrypt](https://github.com/kelektiv/node.bcrypt.js) from 3.0.7 to 3.0.8. - [Release notes](https://github.com/kelektiv/node.bcrypt.js/releases) - [Changelog](https://github.com/kelektiv/node.bcrypt.js/blob/master/CHANGELOG.md) - [Commits](https://github.com/kelektiv/node.bcrypt.js/compare/v3.0.7...v3.0.8) Signed-off-by: dependabot-preview[bot] * Bump got from 10.4.0 to 10.5.0 (#223) Bumps [got](https://github.com/sindresorhus/got) from 10.4.0 to 10.5.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.4.0...v10.5.0) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.0 to 10.5.2 (#224) Bumps [got](https://github.com/sindresorhus/got) from 10.5.0 to 10.5.2. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.0...v10.5.2) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.2 to 10.5.3 (#225) Bumps [got](https://github.com/sindresorhus/got) from 10.5.2 to 10.5.3. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.2...v10.5.3) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.3 to 10.5.4 (#226) Bumps [got](https://github.com/sindresorhus/got) from 10.5.3 to 10.5.4. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.3...v10.5.4) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.4 to 10.5.5 (#227) Bumps [got](https://github.com/sindresorhus/got) from 10.5.4 to 10.5.5. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.4...v10.5.5) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.5 to 10.5.6 (#228) Bumps [got](https://github.com/sindresorhus/got) from 10.5.5 to 10.5.6. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.5...v10.5.6) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.6 to 10.5.7 (#229) Bumps [got](https://github.com/sindresorhus/got) from 10.5.6 to 10.5.7. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.6...v10.5.7) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.7 to 10.6.0 (#230) Bumps [got](https://github.com/sindresorhus/got) from 10.5.7 to 10.6.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.7...v10.6.0) Signed-off-by: dependabot-preview[bot] * Bump config from 3.2.5 to 3.2.6 (#232) Bumps [config](https://github.com/lorenwest/node-config) from 3.2.5 to 3.2.6. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * Bump csv-parse from 4.8.5 to 4.8.6 (#233) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.5 to 4.8.6. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.5...v4.8.6) Signed-off-by: dependabot-preview[bot] * bump node-sketch-templater version (#234) * Bump models version (#236) * v0.0.15 * bump opensensemap-api-models version * Bump uuid from 3.4.0 to 7.0.0 (#237) * Bump uuid from 3.4.0 to 7.0.0 Bumps [uuid](https://github.com/uuidjs/uuid) from 3.4.0 to 7.0.0. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v3.4.0...v7.0.0) Signed-off-by: dependabot-preview[bot] * fix uuid usage for 7.0.0 Co-authored-by: Gerald Pape * Bump @sensebox/sketch-templater from 1.5.4 to 1.5.5 (#238) Bumps [@sensebox/sketch-templater](https://github.com/sensebox/node-sketch-templater) from 1.5.4 to 1.5.5. - [Release notes](https://github.com/sensebox/node-sketch-templater/releases) - [Changelog](https://github.com/sensebox/node-sketch-templater/blob/master/CHANGELOG.md) - [Commits](https://github.com/sensebox/node-sketch-templater/compare/v1.5.4...v1.5.5) Signed-off-by: dependabot-preview[bot] * bump opensensemap-api-models version (#239) * Bump uuid from 7.0.0 to 7.0.1 (#240) Bumps [uuid](https://github.com/uuidjs/uuid) from 7.0.0 to 7.0.1. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v7.0.0...v7.0.1) Signed-off-by: dependabot-preview[bot] * Bump mocha from 7.0.1 to 7.1.0 (#241) Bumps [mocha](https://github.com/mochajs/mocha) from 7.0.1 to 7.1.0. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v7.0.1...v7.1.0) Signed-off-by: dependabot-preview[bot] * Bump config from 3.2.6 to 3.3.0 (#242) Bumps [config](https://github.com/lorenwest/node-config) from 3.2.6 to 3.3.0. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * Merge master in development (#244) * v0.0.14 * v9 (#221) * Bump config from 3.2.4 to 3.2.5 Bumps [config](https://github.com/lorenwest/node-config) from 3.2.4 to 3.2.5. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * [Security] Bump lodash from 4.17.4 to 4.17.15 (#210) Bumps [lodash](https://github.com/lodash/lodash) from 4.17.4 to 4.17.15. **This update includes security fixes.** - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.4...4.17.15) Signed-off-by: dependabot-preview[bot] * Bump got from 10.2.2 to 10.4.0 (#214) Bumps [got](https://github.com/sindresorhus/got) from 10.2.2 to 10.4.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.2.2...v10.4.0) Signed-off-by: dependabot-preview[bot] * Bump csv-parse from 4.8.3 to 4.8.5 (#211) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.3 to 4.8.5. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.3...v4.8.5) Signed-off-by: dependabot-preview[bot] * Bump uuid from 3.3.3 to 3.4.0 (#218) Bumps [uuid](https://github.com/uuidjs/uuid) from 3.3.3 to 3.4.0. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v3.3.3...v3.4.0) Signed-off-by: dependabot-preview[bot] * Bump restify-errors from 5.0.0 to 8.0.2 (#217) Bumps [restify-errors](https://github.com/restify/errors) from 5.0.0 to 8.0.2. - [Release notes](https://github.com/restify/errors/releases) - [Changelog](https://github.com/restify/errors/blob/master/CHANGELOG.md) - [Commits](https://github.com/restify/errors/compare/v5.0.0...v8.0.2) Signed-off-by: dependabot-preview[bot] * Bump mocha from 6.2.2 to 7.0.1 (#216) Bumps [mocha](https://github.com/mochajs/mocha) from 6.2.2 to 7.0.1. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v6.2.2...v7.0.1) Signed-off-by: dependabot-preview[bot] * Bump simple-statistics from 7.0.7 to 7.0.8 (#219) Bumps [simple-statistics](https://github.com/simple-statistics/simple-statistics) from 7.0.7 to 7.0.8. - [Release notes](https://github.com/simple-statistics/simple-statistics/releases) - [Changelog](https://github.com/simple-statistics/simple-statistics/blob/master/CHANGELOG.md) - [Commits](https://github.com/simple-statistics/simple-statistics/compare/v7.0.7...v7.0.8) Signed-off-by: dependabot-preview[bot] * v9 (#220) * v0.0.14 * bump api-models version * update changelog Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape * Fix development (#245) * v0.0.14 * v9 (#221) * Bump config from 3.2.4 to 3.2.5 Bumps [config](https://github.com/lorenwest/node-config) from 3.2.4 to 3.2.5. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * [Security] Bump lodash from 4.17.4 to 4.17.15 (#210) Bumps [lodash](https://github.com/lodash/lodash) from 4.17.4 to 4.17.15. **This update includes security fixes.** - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.4...4.17.15) Signed-off-by: dependabot-preview[bot] * Bump got from 10.2.2 to 10.4.0 (#214) Bumps [got](https://github.com/sindresorhus/got) from 10.2.2 to 10.4.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.2.2...v10.4.0) Signed-off-by: dependabot-preview[bot] * Bump csv-parse from 4.8.3 to 4.8.5 (#211) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.3 to 4.8.5. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.3...v4.8.5) Signed-off-by: dependabot-preview[bot] * Bump uuid from 3.3.3 to 3.4.0 (#218) Bumps [uuid](https://github.com/uuidjs/uuid) from 3.3.3 to 3.4.0. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v3.3.3...v3.4.0) Signed-off-by: dependabot-preview[bot] * Bump restify-errors from 5.0.0 to 8.0.2 (#217) Bumps [restify-errors](https://github.com/restify/errors) from 5.0.0 to 8.0.2. - [Release notes](https://github.com/restify/errors/releases) - [Changelog](https://github.com/restify/errors/blob/master/CHANGELOG.md) - [Commits](https://github.com/restify/errors/compare/v5.0.0...v8.0.2) Signed-off-by: dependabot-preview[bot] * Bump mocha from 6.2.2 to 7.0.1 (#216) Bumps [mocha](https://github.com/mochajs/mocha) from 6.2.2 to 7.0.1. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v6.2.2...v7.0.1) Signed-off-by: dependabot-preview[bot] * Bump simple-statistics from 7.0.7 to 7.0.8 (#219) Bumps [simple-statistics](https://github.com/simple-statistics/simple-statistics) from 7.0.7 to 7.0.8. - [Release notes](https://github.com/simple-statistics/simple-statistics/releases) - [Changelog](https://github.com/simple-statistics/simple-statistics/blob/master/CHANGELOG.md) - [Commits](https://github.com/simple-statistics/simple-statistics/compare/v7.0.7...v7.0.8) Signed-off-by: dependabot-preview[bot] * v9 (#220) * v0.0.14 * bump api-models version * update changelog Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape Co-authored-by: Felix Erdmann Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape * Bump acorn from 7.1.0 to 7.1.1 (#251) Bumps [acorn](https://github.com/acornjs/acorn) from 7.1.0 to 7.1.1. - [Release notes](https://github.com/acornjs/acorn/releases) - [Commits](https://github.com/acornjs/acorn/compare/7.1.0...7.1.1) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * test catching error? * tests * no log * v0.0.16-beta * use models 0.0.16-beta with TTN IDs * v0.0.0 * just an empty push * Update @sensebox/node-sketch-templater to v1.7.0-beta2 * v0.0.16-beta.2 * use @sensebox/opensensemap-api-models 0.0.16-beta.2 * undo mistakes and run yarn * v0.0.16-beta.3 * update @sensebox/opensensemap-api-models * Update @sensebox/node-sketch-templater to v1.7.0 * v0.0.17 * v0.0.18 * v0.0.19 * v0.0.20 * update @sensebox/opensensemap-api-models to v0.0.20 Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: umut0 * Resolve conflicts (#279) * v9.1 (#243) * Bump config from 3.2.4 to 3.2.5 Bumps [config](https://github.com/lorenwest/node-config) from 3.2.4 to 3.2.5. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * [Security] Bump lodash from 4.17.4 to 4.17.15 (#210) Bumps [lodash](https://github.com/lodash/lodash) from 4.17.4 to 4.17.15. **This update includes security fixes.** - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.4...4.17.15) Signed-off-by: dependabot-preview[bot] * Bump got from 10.2.2 to 10.4.0 (#214) Bumps [got](https://github.com/sindresorhus/got) from 10.2.2 to 10.4.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.2.2...v10.4.0) Signed-off-by: dependabot-preview[bot] * Bump csv-parse from 4.8.3 to 4.8.5 (#211) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.3 to 4.8.5. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.3...v4.8.5) Signed-off-by: dependabot-preview[bot] * Bump uuid from 3.3.3 to 3.4.0 (#218) Bumps [uuid](https://github.com/uuidjs/uuid) from 3.3.3 to 3.4.0. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v3.3.3...v3.4.0) Signed-off-by: dependabot-preview[bot] * Bump restify-errors from 5.0.0 to 8.0.2 (#217) Bumps [restify-errors](https://github.com/restify/errors) from 5.0.0 to 8.0.2. - [Release notes](https://github.com/restify/errors/releases) - [Changelog](https://github.com/restify/errors/blob/master/CHANGELOG.md) - [Commits](https://github.com/restify/errors/compare/v5.0.0...v8.0.2) Signed-off-by: dependabot-preview[bot] * Bump mocha from 6.2.2 to 7.0.1 (#216) Bumps [mocha](https://github.com/mochajs/mocha) from 6.2.2 to 7.0.1. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v6.2.2...v7.0.1) Signed-off-by: dependabot-preview[bot] * Bump simple-statistics from 7.0.7 to 7.0.8 (#219) Bumps [simple-statistics](https://github.com/simple-statistics/simple-statistics) from 7.0.7 to 7.0.8. - [Release notes](https://github.com/simple-statistics/simple-statistics/releases) - [Changelog](https://github.com/simple-statistics/simple-statistics/blob/master/CHANGELOG.md) - [Commits](https://github.com/simple-statistics/simple-statistics/compare/v7.0.7...v7.0.8) Signed-off-by: dependabot-preview[bot] * v9 (#220) * v0.0.14 * bump api-models version * update changelog * Bump bcrypt from 3.0.7 to 3.0.8 (#222) Bumps [bcrypt](https://github.com/kelektiv/node.bcrypt.js) from 3.0.7 to 3.0.8. - [Release notes](https://github.com/kelektiv/node.bcrypt.js/releases) - [Changelog](https://github.com/kelektiv/node.bcrypt.js/blob/master/CHANGELOG.md) - [Commits](https://github.com/kelektiv/node.bcrypt.js/compare/v3.0.7...v3.0.8) Signed-off-by: dependabot-preview[bot] * Bump got from 10.4.0 to 10.5.0 (#223) Bumps [got](https://github.com/sindresorhus/got) from 10.4.0 to 10.5.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.4.0...v10.5.0) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.0 to 10.5.2 (#224) Bumps [got](https://github.com/sindresorhus/got) from 10.5.0 to 10.5.2. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.0...v10.5.2) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.2 to 10.5.3 (#225) Bumps [got](https://github.com/sindresorhus/got) from 10.5.2 to 10.5.3. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.2...v10.5.3) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.3 to 10.5.4 (#226) Bumps [got](https://github.com/sindresorhus/got) from 10.5.3 to 10.5.4. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.3...v10.5.4) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.4 to 10.5.5 (#227) Bumps [got](https://github.com/sindresorhus/got) from 10.5.4 to 10.5.5. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.4...v10.5.5) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.5 to 10.5.6 (#228) Bumps [got](https://github.com/sindresorhus/got) from 10.5.5 to 10.5.6. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.5...v10.5.6) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.6 to 10.5.7 (#229) Bumps [got](https://github.com/sindresorhus/got) from 10.5.6 to 10.5.7. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.6...v10.5.7) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.7 to 10.6.0 (#230) Bumps [got](https://github.com/sindresorhus/got) from 10.5.7 to 10.6.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.7...v10.6.0) Signed-off-by: dependabot-preview[bot] * Bump config from 3.2.5 to 3.2.6 (#232) Bumps [config](https://github.com/lorenwest/node-config) from 3.2.5 to 3.2.6. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * Bump csv-parse from 4.8.5 to 4.8.6 (#233) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.5 to 4.8.6. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.5...v4.8.6) Signed-off-by: dependabot-preview[bot] * bump node-sketch-templater version (#234) * Bump models version (#236) * v0.0.15 * bump opensensemap-api-models version * Bump uuid from 3.4.0 to 7.0.0 (#237) * Bump uuid from 3.4.0 to 7.0.0 Bumps [uuid](https://github.com/uuidjs/uuid) from 3.4.0 to 7.0.0. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v3.4.0...v7.0.0) Signed-off-by: dependabot-preview[bot] * fix uuid usage for 7.0.0 Co-authored-by: Gerald Pape * Bump @sensebox/sketch-templater from 1.5.4 to 1.5.5 (#238) Bumps [@sensebox/sketch-templater](https://github.com/sensebox/node-sketch-templater) from 1.5.4 to 1.5.5. - [Release notes](https://github.com/sensebox/node-sketch-templater/releases) - [Changelog](https://github.com/sensebox/node-sketch-templater/blob/master/CHANGELOG.md) - [Commits](https://github.com/sensebox/node-sketch-templater/compare/v1.5.4...v1.5.5) Signed-off-by: dependabot-preview[bot] * bump opensensemap-api-models version (#239) * Bump uuid from 7.0.0 to 7.0.1 (#240) Bumps [uuid](https://github.com/uuidjs/uuid) from 7.0.0 to 7.0.1. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v7.0.0...v7.0.1) Signed-off-by: dependabot-preview[bot] * Bump mocha from 7.0.1 to 7.1.0 (#241) Bumps [mocha](https://github.com/mochajs/mocha) from 7.0.1 to 7.1.0. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v7.0.1...v7.1.0) Signed-off-by: dependabot-preview[bot] * Bump config from 3.2.6 to 3.3.0 (#242) Bumps [config](https://github.com/lorenwest/node-config) from 3.2.6 to 3.3.0. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * Merge master in development (#244) * v0.0.14 * v9 (#221) * Bump config from 3.2.4 to 3.2.5 Bumps [config](https://github.com/lorenwest/node-config) from 3.2.4 to 3.2.5. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * [Security] Bump lodash from 4.17.4 to 4.17.15 (#210) Bumps [lodash](https://github.com/lodash/lodash) from 4.17.4 to 4.17.15. **This update includes security fixes.** - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.4...4.17.15) Signed-off-by: dependabot-preview[bot] * Bump got from 10.2.2 to 10.4.0 (#214) Bumps [got](https://github.com/sindresorhus/got) from 10.2.2 to 10.4.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.2.2...v10.4.0) Signed-off-by: dependabot-preview[bot] * Bump csv-parse from 4.8.3 to 4.8.5 (#211) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.3 to 4.8.5. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.3...v4.8.5) Signed-off-by: dependabot-preview[bot] * Bump uuid from 3.3.3 to 3.4.0 (#218) Bumps [uuid](https://github.com/uuidjs/uuid) from 3.3.3 to 3.4.0. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v3.3.3...v3.4.0) Signed-off-by: dependabot-preview[bot] * Bump restify-errors from 5.0.0 to 8.0.2 (#217) Bumps [restify-errors](https://github.com/restify/errors) from 5.0.0 to 8.0.2. - [Release notes](https://github.com/restify/errors/releases) - [Changelog](https://github.com/restify/errors/blob/master/CHANGELOG.md) - [Commits](https://github.com/restify/errors/compare/v5.0.0...v8.0.2) Signed-off-by: dependabot-preview[bot] * Bump mocha from 6.2.2 to 7.0.1 (#216) Bumps [mocha](https://github.com/mochajs/mocha) from 6.2.2 to 7.0.1. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v6.2.2...v7.0.1) Signed-off-by: dependabot-preview[bot] * Bump simple-statistics from 7.0.7 to 7.0.8 (#219) Bumps [simple-statistics](https://github.com/simple-statistics/simple-statistics) from 7.0.7 to 7.0.8. - [Release notes](https://github.com/simple-statistics/simple-statistics/releases) - [Changelog](https://github.com/simple-statistics/simple-statistics/blob/master/CHANGELOG.md) - [Commits](https://github.com/simple-statistics/simple-statistics/compare/v7.0.7...v7.0.8) Signed-off-by: dependabot-preview[bot] * v9 (#220) * v0.0.14 * bump api-models version * update changelog Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape * Fix development (#245) * v0.0.14 * v9 (#221) * Bump config from 3.2.4 to 3.2.5 Bumps [config](https://github.com/lorenwest/node-config) from 3.2.4 to 3.2.5. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * [Security] Bump lodash from 4.17.4 to 4.17.15 (#210) Bumps [lodash](https://github.com/lodash/lodash) from 4.17.4 to 4.17.15. **This update includes security fixes.** - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.4...4.17.15) Signed-off-by: dependabot-preview[bot] * Bump got from 10.2.2 to 10.4.0 (#214) Bumps [got](https://github.com/sindresorhus/got) from 10.2.2 to 10.4.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.2.2...v10.4.0) Signed-off-by: dependabot-preview[bot] * Bump csv-parse from 4.8.3 to 4.8.5 (#211) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.3 to 4.8.5. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.3...v4.8.5) Signed-off-by: dependabot-preview[bot] * Bump uuid from 3.3.3 to 3.4.0 (#218) Bumps [uuid](https://github.com/uuidjs/uuid) from 3.3.3 to 3.4.0. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v3.3.3...v3.4.0) Signed-off-by: dependabot-preview[bot] * Bump restify-errors from 5.0.0 to 8.0.2 (#217) Bumps [restify-errors](https://github.com/restify/errors) from 5.0.0 to 8.0.2. - [Release notes](https://github.com/restify/errors/releases) - [Changelog](https://github.com/restify/errors/blob/master/CHANGELOG.md) - [Commits](https://github.com/restify/errors/compare/v5.0.0...v8.0.2) Signed-off-by: dependabot-preview[bot] * Bump mocha from 6.2.2 to 7.0.1 (#216) Bumps [mocha](https://github.com/mochajs/mocha) from 6.2.2 to 7.0.1. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v6.2.2...v7.0.1) Signed-off-by: dependabot-preview[bot] * Bump simple-statistics from 7.0.7 to 7.0.8 (#219) Bumps [simple-statistics](https://github.com/simple-statistics/simple-statistics) from 7.0.7 to 7.0.8. - [Release notes](https://github.com/simple-statistics/simple-statistics/releases) - [Changelog](https://github.com/simple-statistics/simple-statistics/blob/master/CHANGELOG.md) - [Commits](https://github.com/simple-statistics/simple-statistics/compare/v7.0.7...v7.0.8) Signed-off-by: dependabot-preview[bot] * v9 (#220) * v0.0.14 * bump api-models version * update changelog Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape Co-authored-by: Felix Erdmann Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape * Bump acorn from 7.1.0 to 7.1.1 (#251) Bumps [acorn](https://github.com/acornjs/acorn) from 7.1.0 to 7.1.1. - [Release notes](https://github.com/acornjs/acorn/releases) - [Commits](https://github.com/acornjs/acorn/compare/7.1.0...7.1.1) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * update CHANGELOG.md * Bump got from 11.0.2 to 11.0.3 (#281) Bumps [got](https://github.com/sindresorhus/got) from 11.0.2 to 11.0.3. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v11.0.2...v11.0.3) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump moment from 2.24.0 to 2.25.2 (#286) Bumps [moment](https://github.com/moment/moment) from 2.24.0 to 2.25.2. - [Release notes](https://github.com/moment/moment/releases) - [Changelog](https://github.com/moment/moment/blob/develop/CHANGELOG.md) - [Commits](https://github.com/moment/moment/compare/2.24.0...2.25.2) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump moment from 2.25.2 to 2.25.3 (#287) Bumps [moment](https://github.com/moment/moment) from 2.25.2 to 2.25.3. - [Release notes](https://github.com/moment/moment/releases) - [Changelog](https://github.com/moment/moment/blob/develop/CHANGELOG.md) - [Commits](https://github.com/moment/moment/commits) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump simple-statistics from 7.0.9 to 7.1.0 (#288) Bumps [simple-statistics](https://github.com/simple-statistics/simple-statistics) from 7.0.9 to 7.1.0. - [Release notes](https://github.com/simple-statistics/simple-statistics/releases) - [Changelog](https://github.com/simple-statistics/simple-statistics/blob/master/CHANGELOG.md) - [Commits](https://github.com/simple-statistics/simple-statistics/compare/v7.0.9...v7.1.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump got from 11.0.3 to 11.1.1 (#289) Bumps [got](https://github.com/sindresorhus/got) from 11.0.3 to 11.1.1. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v11.0.3...v11.1.1) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump got from 11.1.1 to 11.1.2 (#291) Bumps [got](https://github.com/sindresorhus/got) from 11.1.1 to 11.1.2. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v11.1.1...11.1.2) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump millify from 3.1.3 to 3.2.1 (#296) Bumps [millify](https://github.com/izolate/millify) from 3.1.3 to 3.2.1. - [Release notes](https://github.com/izolate/millify/releases) - [Changelog](https://github.com/izolate/millify/blob/master/CHANGELOG.md) - [Commits](https://github.com/izolate/millify/compare/v3.1.3...v3.2.1) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump got from 11.1.2 to 11.1.4 (#297) Bumps [got](https://github.com/sindresorhus/got) from 11.1.2 to 11.1.4. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v11.1.2...v11.1.4) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump csv-parse from 4.9.0 to 4.9.1 (#294) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.9.0 to 4.9.1. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.9.0...v4.9.1) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape * Bump got from 11.1.4 to 11.2.0 (#305) Bumps [got](https://github.com/sindresorhus/got) from 11.1.4 to 11.2.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v11.1.4...v11.2.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump got from 11.2.0 to 11.3.0 (#307) Bumps [got](https://github.com/sindresorhus/got) from 11.2.0 to 11.3.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v11.2.0...v11.3.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump bcrypt from 4.0.1 to 5.0.0 (#309) Bumps [bcrypt](https://github.com/kelektiv/node.bcrypt.js) from 4.0.1 to 5.0.0. - [Release notes](https://github.com/kelektiv/node.bcrypt.js/releases) - [Changelog](https://github.com/kelektiv/node.bcrypt.js/blob/master/CHANGELOG.md) - [Commits](https://github.com/kelektiv/node.bcrypt.js/compare/v4.0.1...v5.0.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump moment from 2.25.3 to 2.27.0 (#315) Bumps [moment](https://github.com/moment/moment) from 2.25.3 to 2.27.0. - [Release notes](https://github.com/moment/moment/releases) - [Changelog](https://github.com/moment/moment/blob/develop/CHANGELOG.md) - [Commits](https://github.com/moment/moment/compare/2.25.3...2.27.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump bunyan from 1.8.12 to 1.8.13 (#320) Bumps [bunyan](https://github.com/trentm/node-bunyan) from 1.8.12 to 1.8.13. - [Release notes](https://github.com/trentm/node-bunyan/releases) - [Changelog](https://github.com/trentm/node-bunyan/blob/1.8.13/CHANGES.md) - [Commits](https://github.com/trentm/node-bunyan/compare/1.8.12...1.8.13) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump bunyan from 1.8.13 to 1.8.14 (#321) Bumps [bunyan](https://github.com/trentm/node-bunyan) from 1.8.13 to 1.8.14. - [Release notes](https://github.com/trentm/node-bunyan/releases) - [Changelog](https://github.com/trentm/node-bunyan/blob/1.8.14/CHANGES.md) - [Commits](https://github.com/trentm/node-bunyan/compare/1.8.13...1.8.14) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump csv-stringify from 5.4.3 to 5.5.0 (#284) Bumps [csv-stringify](https://github.com/adaltas/node-csv-stringify) from 5.4.3 to 5.5.0. - [Release notes](https://github.com/adaltas/node-csv-stringify/releases) - [Changelog](https://github.com/adaltas/node-csv-stringify/blob/master/CHANGELOG.md) - [Commits](https://github.com/adaltas/node-csv-stringify/compare/v5.4.3...v5.5.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump csv-parse from 4.9.1 to 4.10.1 (#302) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.9.1 to 4.10.1. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.9.1...v4.10.1) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape * Bump grpc from 1.24.2 to 1.24.3 (#306) Bumps [grpc](https://github.com/grpc/grpc-node) from 1.24.2 to 1.24.3. - [Release notes](https://github.com/grpc/grpc-node/releases) - [Commits](https://github.com/grpc/grpc-node/compare/grpc@1.24.2...grpc@1.24.3) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape * Bump got from 11.3.0 to 11.4.0 (#324) Bumps [got](https://github.com/sindresorhus/got) from 11.3.0 to 11.4.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v11.3.0...v11.4.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump got from 11.4.0 to 11.5.0 (#326) Bumps [got](https://github.com/sindresorhus/got) from 11.4.0 to 11.5.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v11.4.0...v11.5.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump config from 3.2.4 to 3.2.5 Bumps [config](https://github.com/lorenwest/node-config) from 3.2.4 to 3.2.5. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * Bump got from 10.2.2 to 10.4.0 (#214) Bumps [got](https://github.com/sindresorhus/got) from 10.2.2 to 10.4.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.2.2...v10.4.0) Signed-off-by: dependabot-preview[bot] * Bump mocha from 6.2.2 to 7.0.1 (#216) Bumps [mocha](https://github.com/mochajs/mocha) from 6.2.2 to 7.0.1. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v6.2.2...v7.0.1) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.0 to 10.5.2 (#224) Bumps [got](https://github.com/sindresorhus/got) from 10.5.0 to 10.5.2. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.0...v10.5.2) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.3 to 10.5.4 (#226) Bumps [got](https://github.com/sindresorhus/got) from 10.5.3 to 10.5.4. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.3...v10.5.4) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.4 to 10.5.5 (#227) Bumps [got](https://github.com/sindresorhus/got) from 10.5.4 to 10.5.5. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.4...v10.5.5) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.5 to 10.5.6 (#228) Bumps [got](https://github.com/sindresorhus/got) from 10.5.5 to 10.5.6. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.5...v10.5.6) Signed-off-by: dependabot-preview[bot] * Bump uuid from 7.0.0 to 7.0.1 (#240) Bumps [uuid](https://github.com/uuidjs/uuid) from 7.0.0 to 7.0.1. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v7.0.0...v7.0.1) Signed-off-by: dependabot-preview[bot] * Merge master in development (#244) * v0.0.14 * v9 (#221) * Bump config from 3.2.4 to 3.2.5 Bumps [config](https://github.com/lorenwest/node-config) from 3.2.4 to 3.2.5. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * [Security] Bump lodash from 4.17.4 to 4.17.15 (#210) Bumps [lodash](https://github.com/lodash/lodash) from 4.17.4 to 4.17.15. **This update includes security fixes.** - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.4...4.17.15) Signed-off-by: dependabot-preview[bot] * Bump got from 10.2.2 to 10.4.0 (#214) Bumps [got](https://github.com/sindresorhus/got) from 10.2.2 to 10.4.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.2.2...v10.4.0) Signed-off-by: dependabot-preview[bot] * Bump csv-parse from 4.8.3 to 4.8.5 (#211) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.3 to 4.8.5. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.3...v4.8.5) Signed-off-by: dependabot-preview[bot] * Bump uuid from 3.3.3 to 3.4.0 (#218) Bumps [uuid](https://github.com/uuidjs/uuid) from 3.3.3 to 3.4.0. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v3.3.3...v3.4.0) Signed-off-by: dependabot-preview[bot] * Bump restify-errors from 5.0.0 to 8.0.2 (#217) Bumps [restify-errors](https://github.com/restify/errors) from 5.0.0 to 8.0.2. - [Release notes](https://github.com/restify/errors/releases) - [Changelog](https://github.com/restify/errors/blob/master/CHANGELOG.md) - [Commits](https://github.com/restify/errors/compare/v5.0.0...v8.0.2) Signed-off-by: dependabot-preview[bot] * Bump mocha from 6.2.2 to 7.0.1 (#216) Bumps [mocha](https://github.com/mochajs/mocha) from 6.2.2 to 7.0.1. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v6.2.2...v7.0.1) Signed-off-by: dependabot-preview[bot] * Bump simple-statistics from 7.0.7 to 7.0.8 (#219) Bumps [simple-statistics](https://github.com/simple-statistics/simple-statistics) from 7.0.7 to 7.0.8. - [Release notes](https://github.com/simple-statistics/simple-statistics/releases) - [Changelog](https://github.com/simple-statistics/simple-statistics/blob/master/CHANGELOG.md) - [Commits](https://github.com/simple-statistics/simple-statistics/compare/v7.0.7...v7.0.8) Signed-off-by: dependabot-preview[bot] * v9 (#220) * v0.0.14 * bump api-models version * update changelog Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape * Fix development (#245) * v0.0.14 * v9 (#221) * Bump config from 3.2.4 to 3.2.5 Bumps [config](https://github.com/lorenwest/node-config) from 3.2.4 to 3.2.5. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * [Security] Bump lodash from 4.17.4 to 4.17.15 (#210) Bumps [lodash](https://github.com/lodash/lodash) from 4.17.4 to 4.17.15. **This update includes security fixes.** - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.4...4.17.15) Signed-off-by: dependabot-preview[bot] * Bump got from 10.2.2 to 10.4.0 (#214) Bumps [got](https://github.com/sindresorhus/got) from 10.2.2 to 10.4.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.2.2...v10.4.0) Signed-off-by: dependabot-preview[bot] * Bump csv-parse from 4.8.3 to 4.8.5 (#211) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.3 to 4.8.5. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.3...v4.8.5) Signed-off-by: dependabot-preview[bot] * Bump uuid from 3.3.3 to 3.4.0 (#218) Bumps [uuid](https://github.com/uuidjs/uuid) from 3.3.3 to 3.4.0. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v3.3.3...v3.4.0) Signed-off-by: dependabot-preview[bot] * Bump restify-errors from 5.0.0 to 8.0.2 (#217) Bumps [restify-errors](https://github.com/restify/errors) from 5.0.0 to 8.0.2. - [Release notes](https://github.com/restify/errors/releases) - [Changelog](https://github.com/restify/errors/blob/master/CHANGELOG.md) - [Commits](https://github.com/restify/errors/compare/v5.0.0...v8.0.2) Signed-off-by: dependabot-preview[bot] * Bump mocha from 6.2.2 to 7.0.1 (#216) Bumps [mocha](https://github.com/mochajs/mocha) from 6.2.2 to 7.0.1. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v6.2.2...v7.0.1) Signed-off-by: dependabot-preview[bot] * Bump simple-statistics from 7.0.7 to 7.0.8 (#219) Bumps [simple-statistics](https://github.com/simple-statistics/simple-statistics) from 7.0.7 to 7.0.8. - [Release notes](https://github.com/simple-statistics/simple-statistics/releases) - [Changelog](https://github.com/simple-statistics/simple-statistics/blob/master/CHANGELOG.md) - [Commits](https://github.com/simple-statistics/simple-statistics/compare/v7.0.7...v7.0.8) Signed-off-by: dependabot-preview[bot] * v9 (#220) * v0.0.14 * bump api-models version * update changelog Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape Co-authored-by: Felix Erdmann Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump bcrypt from 3.0.8 to 4.0.1 (#247) Bumps [bcrypt](https://github.com/kelektiv/node.bcrypt.js) from 3.0.8 to 4.0.1. - [Release notes](https://github.com/kelektiv/node.bcrypt.js/releases) - [Changelog](https://github.com/kelektiv/node.bcrypt.js/blob/master/CHANGELOG.md) - [Commits](https://github.com/kelektiv/node.bcrypt.js/compare/v3.0.8...v4.0.1) Signed-off-by: dependabot-preview[bot] * Bump mocha from 7.1.0 to 7.1.1 (#252) Bumps [mocha](https://github.com/mochajs/mocha) from 7.1.0 to 7.1.1. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/v7.1.1/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v7.1.0...v7.1.1) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bsec (#259) * update bme phenomenons * v0.0.16 * v0.0.17 * Bsec (#261) * update bme phenomenons * v0.0.16 * v0.0.17 * fix spelling mistake * v0.0.18 * update api models version * bump sketch templater version * v0.0.19 * bump opensensemap-api-models version * Bump got from 10.7.0 to 11.0.0 (#263) Bumps [got](https://github.com/sindresorhus/got) from 10.7.0 to 11.0.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.7.0...v11.0.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Revert bsec (#272) * Revert "Bsec (#261)" This reverts commit 4e7fba4cad5f240f26d77f97cb5a6f63baae91e1. * Revert "Bsec (#259)" This reverts commit 0e99504f388679bb733c3fe247f244120229cdd4. * update yarn.lock * use api model 0.0.15 * Bump got from 11.0.2 to 11.0.3 (#281) Bumps [got](https://github.com/sindresorhus/got) from 11.0.2 to 11.0.3. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v11.0.2...v11.0.3) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump moment from 2.24.0 to 2.25.2 (#286) Bumps [moment](https://github.com/moment/moment) from 2.24.0 to 2.25.2. - [Release notes](https://github.com/moment/moment/releases) - [Changelog](https://github.com/moment/moment/blob/develop/CHANGELOG.md) - [Commits](https://github.com/moment/moment/compare/2.24.0...2.25.2) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump moment from 2.25.2 to 2.25.3 (#287) Bumps [moment](https://github.com/moment/moment) from 2.25.2 to 2.25.3. - [Release notes](https://github.com/moment/moment/releases) - [Changelog](https://github.com/moment/moment/blob/develop/CHANGELOG.md) - [Commits](https://github.com/moment/moment/commits) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump simple-statistics from 7.0.9 to 7.1.0 (#288) Bumps [simple-statistics](https://github.com/simple-statistics/simple-statistics) from 7.0.9 to 7.1.0. - [Release notes](https://github.com/simple-statistics/simple-statistics/releases) - [Changelog](https://github.com/simple-statistics/simple-statistics/blob/master/CHANGELOG.md) - [Commits](https://github.com/simple-statistics/simple-statistics/compare/v7.0.9...v7.1.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump got from 11.0.3 to 11.1.1 (#289) Bumps [got](https://github.com/sindresorhus/got) from 11.0.3 to 11.1.1. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v11.0.3...v11.1.1) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump got from 11.1.1 to 11.1.2 (#291) Bumps [got](https://github.com/sindresorhus/got) from 11.1.1 to 11.1.2. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v11.1.1...11.1.2) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump millify from 3.1.3 to 3.2.1 (#296) Bumps [millify](https://github.com/izolate/millify) from 3.1.3 to 3.2.1. - [Release notes](https://github.com/izolate/millify/releases) - [Changelog](https://github.com/izolate/millify/blob/master/CHANGELOG.md) - [Commits](https://github.com/izolate/millify/compare/v3.1.3...v3.2.1) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump got from 11.1.2 to 11.1.4 (#297) Bumps [got](https://github.com/sindresorhus/got) from 11.1.2 to 11.1.4. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v11.1.2...v11.1.4) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump csv-parse from 4.9.0 to 4.9.1 (#294) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.9.0 to 4.9.1. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.9.0...v4.9.1) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape * Bump got from 11.1.4 to 11.2.0 (#305) Bumps [got](https://github.com/sindresorhus/got) from 11.1.4 to 11.2.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v11.1.4...v11.2.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump got from 11.2.0 to 11.3.0 (#307) Bumps [got](https://github.com/sindresorhus/got) from 11.2.0 to 11.3.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v11.2.0...v11.3.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump bcrypt from 4.0.1 to 5.0.0 (#309) Bumps [bcrypt](https://github.com/kelektiv/node.bcrypt.js) from 4.0.1 to 5.0.0. - [Release notes](https://github.com/kelektiv/node.bcrypt.js/releases) - [Changelog](https://github.com/kelektiv/node.bcrypt.js/blob/master/CHANGELOG.md) - [Commits](https://github.com/kelektiv/node.bcrypt.js/compare/v4.0.1...v5.0.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump moment from 2.25.3 to 2.27.0 (#315) Bumps [moment](https://github.com/moment/moment) from 2.25.3 to 2.27.0. - [Release notes](https://github.com/moment/moment/releases) - [Changelog](https://github.com/moment/moment/blob/develop/CHANGELOG.md) - [Commits](https://github.com/moment/moment/compare/2.25.3...2.27.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump bunyan from 1.8.12 to 1.8.13 (#320) Bumps [bunyan](https://github.com/trentm/node-bunyan) from 1.8.12 to 1.8.13. - [Release notes](https://github.com/trentm/node-bunyan/releases) - [Changelog](https://github.com/trentm/node-bunyan/blob/1.8.13/CHANGES.md) - [Commits](https://github.com/trentm/node-bunyan/compare/1.8.12...1.8.13) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump bunyan from 1.8.13 to 1.8.14 (#321) Bumps [bunyan](https://github.com/trentm/node-bunyan) from 1.8.13 to 1.8.14. - [Release notes](https://github.com/trentm/node-bunyan/releases) - [Changelog](https://github.com/trentm/node-bunyan/blob/1.8.14/CHANGES.md) - [Commits](https://github.com/trentm/node-bunyan/compare/1.8.13...1.8.14) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump csv-stringify from 5.4.3 to 5.5.0 (#284) Bumps [csv-stringify](https://github.com/adaltas/node-csv-stringify) from 5.4.3 to 5.5.0. - [Release notes](https://github.com/adaltas/node-csv-stringify/releases) - [Changelog](https://github.com/adaltas/node-csv-stringify/blob/master/CHANGELOG.md) - [Commits](https://github.com/adaltas/node-csv-stringify/compare/v5.4.3...v5.5.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump csv-parse from 4.9.1 to 4.10.1 (#302) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.9.1 to 4.10.1. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.9.1...v4.10.1) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape * Bump grpc from 1.24.2 to 1.24.3 (#306) Bumps [grpc](https://github.com/grpc/grpc-node) from 1.24.2 to 1.24.3. - [Release notes](https://github.com/grpc/grpc-node/releases) - [Commits](https://github.com/grpc/grpc-node/compare/grpc@1.24.2...grpc@1.24.3) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape * Bump got from 11.3.0 to 11.4.0 (#324) Bumps [got](https://github.com/sindresorhus/got) from 11.3.0 to 11.4.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v11.3.0...v11.4.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump got from 11.4.0 to 11.5.0 (#326) Bumps [got](https://github.com/sindresorhus/got) from 11.4.0 to 11.5.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v11.4.0...v11.5.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * update yarn.lock * [Security] Bump lodash from 4.17.15 to 4.17.19 (#329) Bumps [lodash](https://github.com/lodash/lodash) from 4.17.15 to 4.17.19. **This update includes a security fix.** - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.15...4.17.19) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump csv-parse from 4.10.1 to 4.11.1 (#328) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.10.1 to 4.11.1. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.10.1...v4.11.1) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape * Bump got from 11.5.0 to 11.5.1 (#330) Bumps [got](https://github.com/sindresorhus/got) from 11.5.0 to 11.5.1. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/commits) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape * Bump millify from 3.2.1 to 3.3.0 (#332) Bumps [millify](https://github.com/izolate/millify) from 3.2.1 to 3.3.0. - [Release notes](https://github.com/izolate/millify/releases) - [Changelog](https://github.com/izolate/millify/blob/master/CHANGELOG.md) - [Commits](https://github.com/izolate/millify/compare/v3.2.1...v3.3.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Cayenne LPP Decoding Profile (#333) * add cayenne-lpp decoding * v0.0.25 * bump opensensemap-api-models Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape Co-authored-by: Gerald Pape Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: umut0 --- CHANGELOG.md | 3 + README.md | 1 + package.json | 2 +- .../api/lib/controllers/boxesController.js | 2 +- packages/api/package.json | 14 +- packages/models/CHANGELOG.md | 3 + packages/models/package.json | 8 +- packages/models/src/box/integrations.js | 4 +- yarn.lock | 246 +++++++++++------- 9 files changed, 175 insertions(+), 108 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 32b97f2c..9444b747 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,8 @@ # openSenseMap API Changelog +## v9.4 +- Add Cayenne LPP Decoding + ## v9.3.5 - fix windspeed sensor diff --git a/README.md b/README.md index d5752cba..5e451c82 100644 --- a/README.md +++ b/README.md @@ -85,3 +85,4 @@ Every commit on branch `development` will be built with the tag `development`. [MongoDB]:http://www.mongodb.com/ [openSenseMap]:https://opensensemap.org/ [senseBox]:https://sensebox.de/ + diff --git a/package.json b/package.json index 38a4f1a9..447d162e 100644 --- a/package.json +++ b/package.json @@ -21,7 +21,7 @@ "chai": "^4.1.2", "chakram": "^1.5.0", "cheerio": "^1.0.0-rc.2", - "csv-parse": "^4.9.0", + "csv-parse": "^4.11.1", "eslint": "6.8.0", "mimelib": "^0.3.1", "mocha": "^7.1.2", diff --git a/packages/api/lib/controllers/boxesController.js b/packages/api/lib/controllers/boxesController.js index 90513057..70f35aef 100644 --- a/packages/api/lib/controllers/boxesController.js +++ b/packages/api/lib/controllers/boxesController.js @@ -31,7 +31,7 @@ * * @apiParam (TTNOption) {String} dev_id The device ID recieved from TTN * @apiParam (TTNOption) {String} app_id The application ID recieved from TTN - * @apiParam (TTNOption) {String="lora-serialization","sensebox/home","json","debug"} profile A decoding profile matching the payload format. For details and configuration see https://github.com/sensebox/ttn-osem-integration#decoding-profiles + * @apiParam (TTNOption) {String="lora-serialization","sensebox/home","json","debug", "cayenne-lpp"} profile A decoding profile matching the payload format. For details and configuration see https://github.com/sensebox/ttn-osem-integration#decoding-profiles * @apiParam (TTNOption) {Array} [decodeOptions] A JSON Array containing decoder configuration, needed for some profiles. * @apiParam (TTNOption) {Number} [port] The TTN port to listen for messages. Optional, if not provided, all ports are used. */ diff --git a/packages/api/package.json b/packages/api/package.json index 98a7bc9c..8a536daa 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -10,7 +10,7 @@ "Norwin Roosen" ], "dependencies": { - "@sensebox/opensensemap-api-models": "^0.0.24", + "@sensebox/opensensemap-api-models": "^0.0.25", "@turf/area": "^6.0.1", "@turf/bbox": "^6.0.1", "@turf/centroid": "^6.0.2", @@ -20,20 +20,20 @@ "@turf/square-grid": "^6.0.2", "@turf/triangle-grid": "^6.0.1", "apicache": "^1.4.0", - "bunyan": "^1.8.12", + "bunyan": "^1.8.14", "config": "^3.3.1", - "csv-stringify": "^5.4.3", + "csv-stringify": "^5.5.0", "dashify": "^2.0.0", - "got": "^11.0.2", + "got": "^11.5.1", "honeybadger": "^1.4.0", "isemail": "^3.0.0", "jsonwebtoken": "^8.1.0", - "millify": "^3.0.2", - "moment": "^2.18.1", + "millify": "^3.3.0", + "moment": "^2.27.0", "ms": "^2.1.1", "restify": "^5.2.0", "restify-errors": "^8.0.2", - "simple-statistics": "^7.0.9", + "simple-statistics": "^7.1.0", "stringify-stream": "^1.0.5", "uuid": "^7.0.3" }, diff --git a/packages/models/CHANGELOG.md b/packages/models/CHANGELOG.md index c8f7764a..f4098f85 100644 --- a/packages/models/CHANGELOG.md +++ b/packages/models/CHANGELOG.md @@ -2,6 +2,9 @@ ## Unreleased +## v0.0.25 +- Add Cayenne LPP Decoder + ## v0.0.24 ## v0.0.23 diff --git a/packages/models/package.json b/packages/models/package.json index 882b237d..75262946 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -1,7 +1,7 @@ { "name": "@sensebox/opensensemap-api-models", "description": "openSenseMap data models and database connection", - "version": "0.0.24", + "version": "0.0.25", "main": "index.js", "license": "MIT", "dependencies": { @@ -10,12 +10,12 @@ "bcrypt": "^4.0.1", "bunyan": "^1.8.12", "config": "^3.3.1", - "got": "^11.0.2", - "grpc": "^1.19.0", + "got": "^11.5.1", + "grpc": "^1.24.3", "isemail": "^3.0.0", "jsonpath": "^1.0.0", "lodash.isequal": "^4.5.0", - "moment": "^2.18.1", + "moment": "^2.27.0", "mongoose": "^4.13.6", "mongoose-timestamp": "^0.6", "uuid": "^7.0.3" diff --git a/packages/models/src/box/integrations.js b/packages/models/src/box/integrations.js index dd62c337..2292526c 100644 --- a/packages/models/src/box/integrations.js +++ b/packages/models/src/box/integrations.js @@ -18,7 +18,7 @@ const ttnSchema = new mongoose.Schema({ dev_id: { type: String, trim: true, required: true }, app_id: { type: String, trim: true, required: true }, port: { type: Number, min: 0 }, - profile: { type: String, trim: true, enum: ['json', 'debug', 'sensebox/home', 'lora-serialization'], required: true }, + profile: { type: String, trim: true, enum: ['json', 'debug', 'sensebox/home', 'lora-serialization', 'cayenne-lpp'], required: true }, decodeOptions: [{}] }, { _id: false, usePushEach: true }); @@ -50,7 +50,7 @@ const integrationSchema = new mongoose.Schema({ /* eslint-disable func-name-matching */ validator: function validTTNDecodeOptions (ttn) { /* eslint-enable func-name-matching */ - if (['debug', 'lora-serialization'].indexOf(ttn.profile) !== -1) { + if (['debug', 'lora-serialization', 'cayenne-lpp'].indexOf(ttn.profile) !== -1) { return (ttn.decodeOptions && ttn.decodeOptions.constructor === Array); } }, diff --git a/yarn.lock b/yarn.lock index b13cea0f..6ee128be 100644 --- a/yarn.lock +++ b/yarn.lock @@ -50,12 +50,12 @@ config "^1.29.2" dedent "^0.7.0" -"@sindresorhus/is@^2.1.0": - version "2.1.1" - resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-2.1.1.tgz#ceff6a28a5b4867c2dd4a1ba513de278ccbe8bb1" - integrity sha512-/aPsuoj/1Dw/kzhkgz+ES6TxG0zfTMGLwuK2ZG00k/iJzYHTLCE8mVU8EPqEOp/lmxPoq1C1C9RYToRKb2KEfg== +"@sindresorhus/is@^3.0.0": + version "3.0.0" + resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-3.0.0.tgz#78fabc5e295adb6e1ef57eaafe4cc5d7aa35b183" + integrity sha512-kqA5I6Yun7PBHk8WN9BBP1c7FfN2SrD05GuVSEYPqDb4nerv7HqYfgBfMIKmT/EuejURkJKLZuLyGKGs6WEG9w== -"@szmarczak/http-timer@^4.0.0": +"@szmarczak/http-timer@^4.0.5": version "4.0.5" resolved "https://registry.yarnpkg.com/@szmarczak/http-timer/-/http-timer-4.0.5.tgz#bfbd50211e9dfa51ba07da58a14cdfd333205152" integrity sha512-PyRA9sm1Yayuj5OIoJ1hGt2YISX45w9WcFbh6ddT0Z/0yaFxOtGLInr4jUfU1EAFVs0Yfyfev4RNwBlUaHdlDQ== @@ -329,7 +329,7 @@ ansi-styles@^3.2.0, ansi-styles@^3.2.1: dependencies: color-convert "^1.9.0" -ansi-styles@^4.1.0: +ansi-styles@^4.0.0, ansi-styles@^4.1.0: version "4.2.1" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.2.1.tgz#90ae75c424d008d2624c5bf29ead3177ebfcf359" integrity sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA== @@ -515,13 +515,13 @@ buffer-shims@^1.0.0, buffer-shims@~1.0.0: resolved "https://registry.yarnpkg.com/buffer-shims/-/buffer-shims-1.0.0.tgz#9978ce317388c649ad8793028c3477ef044a8b51" integrity sha1-mXjOMXOIxkmth5MCjDR37wRKi1E= -bunyan@^1.8.1, bunyan@^1.8.12: - version "1.8.12" - resolved "https://registry.yarnpkg.com/bunyan/-/bunyan-1.8.12.tgz#f150f0f6748abdd72aeae84f04403be2ef113797" - integrity sha1-8VDw9nSKvdcq6uhPBEA74u8RN5c= +bunyan@^1.8.1, bunyan@^1.8.12, bunyan@^1.8.14: + version "1.8.14" + resolved "https://registry.yarnpkg.com/bunyan/-/bunyan-1.8.14.tgz#3d8c1afea7de158a5238c7cb8a66ab6b38dd45b4" + integrity sha512-LlahJUxXzZLuw/hetUQJmRgZ1LF6+cr5TPpRj6jf327AsiIq2jhYEH4oqUUkVKTor+9w2BT3oxVwhzE5lw9tcg== optionalDependencies: dtrace-provider "~0.8" - moment "^2.10.6" + moment "^2.19.3" mv "~2" safe-json-stringify "~1" @@ -532,10 +532,10 @@ bytebuffer@~5: dependencies: long "~3" -cacheable-lookup@^4.1.1: - version "4.2.2" - resolved "https://registry.yarnpkg.com/cacheable-lookup/-/cacheable-lookup-4.2.2.tgz#7fee1d25d9902382a6b8966c164349977168ed4f" - integrity sha512-06EWjs5/UO+gl6RHW7UAajeMZ+5E+HvHLQtaKcpjJLE5S/3+pX28VClFXM+LCwFRcmODURMnO94bZ+lFy5YvRg== +cacheable-lookup@^5.0.3: + version "5.0.3" + resolved "https://registry.yarnpkg.com/cacheable-lookup/-/cacheable-lookup-5.0.3.tgz#049fdc59dffdd4fc285e8f4f82936591bd59fec3" + integrity sha512-W+JBqF9SWe18A72XFzN/V/CULFzPm7sBXzzR6ekkE+3tLG72wFZrBiBZhrZuDoYexop4PHJVdFAKb/Nj9+tm9w== cacheable-request@^7.0.1: version "7.0.1" @@ -712,6 +712,15 @@ cliui@^5.0.0: strip-ansi "^5.2.0" wrap-ansi "^5.1.0" +cliui@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-6.0.0.tgz#511d702c0c4e41ca156d7d0e96021f23e13225b1" + integrity sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ== + dependencies: + string-width "^4.2.0" + strip-ansi "^6.0.0" + wrap-ansi "^6.2.0" + clone-regexp@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/clone-regexp/-/clone-regexp-1.0.1.tgz#051805cd33173375d82118fc0918606da39fd60f" @@ -856,10 +865,10 @@ csv-parse@^1.3.3: resolved "https://registry.yarnpkg.com/csv-parse/-/csv-parse-1.3.3.tgz#d1cfd8743c2f849a0abb2fd544db56695d19a490" integrity sha1-0c/YdDwvhJoKuy/VRNtWaV0ZpJA= -csv-parse@^4.9.0: - version "4.9.0" - resolved "https://registry.yarnpkg.com/csv-parse/-/csv-parse-4.9.0.tgz#a947c66d8ab31207f4933170064dd8268c511e99" - integrity sha512-SaFMvRWzobY9z0Nxg+q5pXvU2JY7p++icb1Bb/ZwGSLv058cLabhGg3YNpLPI2KALtZnoe/oNBCfWX9xgTkcaA== +csv-parse@^4.11.1: + version "4.11.1" + resolved "https://registry.yarnpkg.com/csv-parse/-/csv-parse-4.11.1.tgz#3935a7862d7e431020a25538905dec0153fa75bd" + integrity sha512-cH2BG5Gd0u4G8qVI/jGXJSP2+El7Vy91/ZD3ehKALAWids1aIKOPhZ1ZVJzUrs2zTn6aGumVPBlbHsI91kI83A== csv-stringify@^1.1.2: version "1.1.2" @@ -868,10 +877,10 @@ csv-stringify@^1.1.2: dependencies: lodash.get "~4.4.2" -csv-stringify@^5.4.3: - version "5.4.3" - resolved "https://registry.yarnpkg.com/csv-stringify/-/csv-stringify-5.4.3.tgz#68f2e59652af7bb27bb06fe05a8237ff95bd13f9" - integrity sha512-WJLgRJQcVjPK45jXS1xfnkwVbw9bOjg2F2BQRa9OkG7Di2W/geclPZNlcQTwxbzn1nEDI2ane2AubTdTd6gCvw== +csv-stringify@^5.5.0: + version "5.5.0" + resolved "https://registry.yarnpkg.com/csv-stringify/-/csv-stringify-5.5.0.tgz#0bdeaaf60d6e15b89c752a0eceb4b4c2c8af5a8a" + integrity sha512-G05575DSO/9vFzQxZN+Srh30cNyHk0SM0ePyiTChMD5WVt7GMTVPBQf4rtgMF6mqhNCJUPw4pN8LDe8MF9EYOA== csv@^1.1.0: version "1.2.1" @@ -929,12 +938,12 @@ decamelize@^1.1.1, decamelize@^1.2.0: resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= -decompress-response@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/decompress-response/-/decompress-response-5.0.0.tgz#7849396e80e3d1eba8cb2f75ef4930f76461cb0f" - integrity sha512-TLZWWybuxWgoW7Lykv+gq9xvzOsUjQ9tF09Tj6NSTYGMTCHNXzrPnD6Hi+TgZq19PyTAGH4Ll/NIM/eTGglnMw== +decompress-response@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/decompress-response/-/decompress-response-6.0.0.tgz#ca387612ddb7e104bd16d85aab00d5ecf09c66fc" + integrity sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ== dependencies: - mimic-response "^2.0.0" + mimic-response "^3.1.0" dedent@^0.7.0: version "0.7.0" @@ -1444,6 +1453,14 @@ find-up@3.0.0, find-up@^3.0.0: dependencies: locate-path "^3.0.0" +find-up@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19" + integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw== + dependencies: + locate-path "^5.0.0" + path-exists "^4.0.0" + flat-cache@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-2.0.1.tgz#5d296d6f04bda44a4630a301413bdbc2ec085ec0" @@ -1545,7 +1562,7 @@ get-func-name@^2.0.0: resolved "https://registry.yarnpkg.com/get-func-name/-/get-func-name-2.0.0.tgz#ead774abee72e20409433a066366023dd6887a41" integrity sha1-6td0q+5y4gQJQzoGY2YCPdaIekE= -get-stream@^5.0.0, get-stream@^5.1.0: +get-stream@^5.1.0: version "5.1.0" resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-5.1.0.tgz#01203cdc92597f9b909067c3e656cc1f4d3c4dc9" integrity sha512-EXr1FOzrzTfGeL0gQdeFEvOMm2mzMOglyiOXSTpPC+iAjAKftbr3jpCMWynogwYnM+eSj9sHGc6wjIcDvYiygw== @@ -1632,20 +1649,19 @@ globals@^12.1.0: dependencies: type-fest "^0.8.1" -got@^11.0.2: - version "11.0.2" - resolved "https://registry.yarnpkg.com/got/-/got-11.0.2.tgz#55613d6a1b7040ff9c26cb075defea39eed58d7a" - integrity sha512-zOanxiJs1LaBAiKsV43UUw/oRlyRNtJFeuATahfi4c3MTremj09eAeJBSJ7GR2oEMhrLLRSJpz8fQaojVDijjw== +got@^11.5.1: + version "11.5.1" + resolved "https://registry.yarnpkg.com/got/-/got-11.5.1.tgz#bf098a270fe80b3fb88ffd5a043a59ebb0a391db" + integrity sha512-reQEZcEBMTGnujmQ+Wm97mJs/OK6INtO6HmLI+xt3+9CvnRwWjXutUvb2mqr+Ao4Lu05Rx6+udx9sOQAmExMxA== dependencies: - "@sindresorhus/is" "^2.1.0" - "@szmarczak/http-timer" "^4.0.0" + "@sindresorhus/is" "^3.0.0" + "@szmarczak/http-timer" "^4.0.5" "@types/cacheable-request" "^6.0.1" "@types/responselike" "^1.0.0" - cacheable-lookup "^4.1.1" + cacheable-lookup "^5.0.3" cacheable-request "^7.0.1" - decompress-response "^5.0.0" - get-stream "^5.0.0" - http2-wrapper "^1.0.0-beta.4.4" + decompress-response "^6.0.0" + http2-wrapper "^1.0.0-beta.5.0" lowercase-keys "^2.0.0" p-cancelable "^2.0.0" responselike "^2.0.0" @@ -1655,16 +1671,16 @@ growl@1.10.5: resolved "https://registry.yarnpkg.com/growl/-/growl-1.10.5.tgz#f2735dc2283674fa67478b10181059355c369e5e" integrity sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA== -grpc@^1.19.0: - version "1.24.2" - resolved "https://registry.yarnpkg.com/grpc/-/grpc-1.24.2.tgz#76d047bfa7b05b607cbbe3abb99065dcefe0c099" - integrity sha512-EG3WH6AWMVvAiV15d+lr+K77HJ/KV/3FvMpjKjulXHbTwgDZkhkcWbwhxFAoTdxTkQvy0WFcO3Nog50QBbHZWw== +grpc@^1.24.3: + version "1.24.3" + resolved "https://registry.yarnpkg.com/grpc/-/grpc-1.24.3.tgz#92efe28dfc1250dca179b8133e40b4f2341473d9" + integrity sha512-EDemzuZTfhM0hgrXqC4PtR76O3t+hTIYJYR5vgiW0yt2WJqo4mhxUqZUirzUQz34Psz7dbLp38C6Cl7Ij2vXRQ== dependencies: "@types/bytebuffer" "^5.0.40" lodash.camelcase "^4.3.0" lodash.clone "^4.5.0" nan "^2.13.2" - node-pre-gyp "^0.14.0" + node-pre-gyp "^0.15.0" protobufjs "^5.0.3" handle-thing@^1.2.5: @@ -1790,12 +1806,12 @@ http-signature@~1.2.0: jsprim "^1.2.2" sshpk "^1.7.0" -http2-wrapper@^1.0.0-beta.4.4: - version "1.0.0-beta.4.5" - resolved "https://registry.yarnpkg.com/http2-wrapper/-/http2-wrapper-1.0.0-beta.4.5.tgz#ac8e8f1cbf4aa79e3274c89e954d18697ab31e85" - integrity sha512-hRoAcIg26mAenbhZH4yQKpHzdbjHGM2a8JCtGJUIwFtqP82IeuMcmJwXHD6eFkILxDp0AyvaRMNrnV4aSaq9pg== +http2-wrapper@^1.0.0-beta.5.0: + version "1.0.0-beta.5.2" + resolved "https://registry.yarnpkg.com/http2-wrapper/-/http2-wrapper-1.0.0-beta.5.2.tgz#8b923deb90144aea65cf834b016a340fc98556f3" + integrity sha512-xYz9goEyBnC8XwXDTuC/MZ6t+MrKVQZOk4s7+PaDkwIsQd8IwqvM+0M6bA/2lvG8GHXcPdf+MejTUeO2LCPCeQ== dependencies: - quick-lru "^5.0.0" + quick-lru "^5.1.1" resolve-alpn "^1.0.0" iconv-lite@^0.4.24, iconv-lite@^0.4.4, iconv-lite@~0.4.13: @@ -2167,6 +2183,13 @@ locate-path@^3.0.0: p-locate "^3.0.0" path-exists "^3.0.0" +locate-path@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz#1afba396afd676a6d42504d0a67a3a7eb9f62aa0" + integrity sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g== + dependencies: + p-locate "^4.1.0" + lodash.camelcase@^4.3.0: version "4.3.0" resolved "https://registry.yarnpkg.com/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz#b28aa6288a2b9fc651035c7711f65ab6190331a6" @@ -2260,12 +2283,12 @@ martinez-polygon-clipping@^0.4.3: splaytree "^0.1.4" tinyqueue "^1.2.0" -millify@^3.0.2: - version "3.1.3" - resolved "https://registry.yarnpkg.com/millify/-/millify-3.1.3.tgz#a10c1f78d2d052cf30e1f483dcec9c0d6e3c8f11" - integrity sha512-Duk2Esxv7m9lFMIYTbi3vqrX3EP3a3VMDAoDWCKrkafn/TIgdPPoHqQtpWIq56RDSm8zAcuF7DNsXcRjo6r/HQ== +millify@^3.3.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/millify/-/millify-3.3.0.tgz#8e0f5554b6413ef2f0f4be2f69dbc2067717eb4a" + integrity sha512-j+IUePjjIYgFjaqZdpwAKM3YotVpu44FqeJbWNfx3o1USo9MugVX/hxGihOoCk6LrD+t01voxGLb0gGAZcuuxQ== dependencies: - yargs "^14.0.0" + yargs "^15.3.1" mime-db@1.44.0: version "1.44.0" @@ -2302,10 +2325,10 @@ mimic-response@^1.0.0: resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-1.0.1.tgz#4923538878eef42063cb8a3e3b0798781487ab1b" integrity sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ== -mimic-response@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-2.1.0.tgz#d13763d35f613d09ec37ebb30bac0469c0ee8f43" - integrity sha512-wXqjST+SLt7R009ySCglWBCFpjUygmCIfD790/kVbiGmUgfYGuB14PiTd5DwVxSV4NcYHjzMkoj5LjQZwTQLEA== +mimic-response@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-3.1.0.tgz#2d1d59af9c1b129815accc2c46a022a5ce1fa3c9" + integrity sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ== minimalistic-assert@^1.0.0: version "1.0.1" @@ -2339,7 +2362,7 @@ minizlib@^1.2.1: dependencies: minipass "^2.9.0" -mkdirp@0.5.5, mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.1: +mkdirp@0.5.5, mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@^0.5.3, mkdirp@~0.5.1: version "0.5.5" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.5.tgz#d91cefd62d1436ca0f41620e251288d420099def" integrity sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ== @@ -2376,10 +2399,10 @@ mocha@^7.1.2: yargs-parser "13.1.2" yargs-unparser "1.6.0" -moment@^2.10.6, moment@^2.18.1: - version "2.24.0" - resolved "https://registry.yarnpkg.com/moment/-/moment-2.24.0.tgz#0d055d53f5052aa653c9f6eb68bb5d12bf5c2b5b" - integrity sha512-bV7f+6l2QigeBBZSM/6yTNq4P2fNpSWj/0e7jQcy87A8e7o2nAfP/34/2ky5Vw4B9S446EtIhodAzkFCcR4dQg== +moment@^2.19.3, moment@^2.27.0: + version "2.27.0" + resolved "https://registry.yarnpkg.com/moment/-/moment-2.27.0.tgz#8bff4e3e26a236220dfe3e36de756b6ebaa0105d" + integrity sha512-al0MUK7cpIcglMv3YF13qSgdAIqxHTO7brRtaz3DlSULbqfazqkc5kEjNrLDOM7fsjshoFIihnU8snrP7zUvhQ== mongodb-core@2.1.18: version "2.1.18" @@ -2525,10 +2548,10 @@ ncp@~2.0.0: resolved "https://registry.yarnpkg.com/ncp/-/ncp-2.0.0.tgz#195a21d6c46e361d2fb1281ba38b91e9df7bdbb3" integrity sha1-GVoh1sRuNh0vsSgbo4uR6d9727M= -needle@^2.2.1: - version "2.4.1" - resolved "https://registry.yarnpkg.com/needle/-/needle-2.4.1.tgz#14af48732463d7475696f937626b1b993247a56a" - integrity sha512-x/gi6ijr4B7fwl6WYL9FwlCvRQKGlUNvnceho8wxkwXqN8jvVmmmATTmZPRRG7b/yC1eode26C2HO9jl78Du9g== +needle@^2.2.1, needle@^2.5.0: + version "2.5.0" + resolved "https://registry.yarnpkg.com/needle/-/needle-2.5.0.tgz#e6fc4b3cc6c25caed7554bd613a5cf0bac8c31c0" + integrity sha512-o/qITSDR0JCyCKEQ1/1bnUXMmznxabbwi/Y4WwJElf+evwJNFNwIDMCCt5IigFVxgeGBJESLohGtIS9gEzo1fA== dependencies: debug "^3.2.6" iconv-lite "^0.4.4" @@ -2550,9 +2573,9 @@ nice-try@^1.0.4: integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ== node-addon-api@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-2.0.0.tgz#f9afb8d777a91525244b01775ea0ddbe1125483b" - integrity sha512-ASCL5U13as7HhOExbT6OlWJJUV/lLzL2voOSP1UVehpRD8FbSrSDjfScK/KwAvVTI5AS6r4VwbOMlIqtvRidnA== + version "2.0.2" + resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-2.0.2.tgz#432cfa82962ce494b132e9d72a15b29f71ff5d32" + integrity sha512-Ntyt4AIXyaLIuMHF6IOoTakB3K+RWxwtsHNRxllEoA6vPwP9o4866g6YWDLUdnucilZhmkxiHwHr11gAENw+QA== node-environment-flags@1.0.6: version "1.0.6" @@ -2562,7 +2585,7 @@ node-environment-flags@1.0.6: object.getownpropertydescriptors "^2.0.3" semver "^5.7.0" -node-pre-gyp@0.14.0, node-pre-gyp@^0.14.0: +node-pre-gyp@0.14.0: version "0.14.0" resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.14.0.tgz#9a0596533b877289bcad4e143982ca3d904ddc83" integrity sha512-+CvDC7ZttU/sSt9rFjix/P05iS43qHCOOGzcr3Ry99bXG7VX953+vFyEuph/tfqoYu8dttBkE86JSKBO2OzcxA== @@ -2578,6 +2601,22 @@ node-pre-gyp@0.14.0, node-pre-gyp@^0.14.0: semver "^5.3.0" tar "^4.4.2" +node-pre-gyp@^0.15.0: + version "0.15.0" + resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.15.0.tgz#c2fc383276b74c7ffa842925241553e8b40f1087" + integrity sha512-7QcZa8/fpaU/BKenjcaeFF9hLz2+7S9AqyXFhlH/rilsQ/hPZKK32RtR5EQHJElgu+q5RfbJ34KriI79UWaorA== + dependencies: + detect-libc "^1.0.2" + mkdirp "^0.5.3" + needle "^2.5.0" + nopt "^4.0.1" + npm-packlist "^1.1.6" + npmlog "^4.0.2" + rc "^1.2.7" + rimraf "^2.6.1" + semver "^5.3.0" + tar "^4.4.2" + nopt@^4.0.1: version "4.0.3" resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.3.tgz#a375cad9d02fd921278d954c2254d5aa57e15e48" @@ -2750,7 +2789,7 @@ p-cancelable@^2.0.0: resolved "https://registry.yarnpkg.com/p-cancelable/-/p-cancelable-2.0.0.tgz#4a3740f5bdaf5ed5d7c3e34882c6fb5d6b266a6e" integrity sha512-wvPXDmbMmu2ksjkB4Z3nZWTSkJEb9lqVdMaCKpZUGJG9TMiNp9XcbG3fn9fPKjem04fJMJnXoyFPk2FmgiaiNg== -p-limit@^2.0.0: +p-limit@^2.0.0, p-limit@^2.2.0: version "2.3.0" resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== @@ -2764,6 +2803,13 @@ p-locate@^3.0.0: dependencies: p-limit "^2.0.0" +p-locate@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz#a3428bb7088b3a60292f66919278b7c297ad4f07" + integrity sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A== + dependencies: + p-limit "^2.2.0" + p-try@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" @@ -2793,6 +2839,11 @@ path-exists@^3.0.0: resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" integrity sha1-zg6+ql94yxiSXqfYENe1mwEP1RU= +path-exists@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" + integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w== + path-is-absolute@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" @@ -2903,10 +2954,10 @@ qs@~6.5.2: resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36" integrity sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA== -quick-lru@^5.0.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/quick-lru/-/quick-lru-5.1.0.tgz#1602f339bde554c4dace47880227ec9c2869f2e8" - integrity sha512-WjAKQ9ORzvqjLijJXiXWqc3Gcs1ivoxCj6KJmEjoWBE6OtHwuaDLSAUqGHALUiid7A1KqGqsSHZs8prxF5xxAQ== +quick-lru@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/quick-lru/-/quick-lru-5.1.1.tgz#366493e6b3e42a3a6885e2e99d18f80fb7a8c932" + integrity sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA== quickselect@^1.0.1: version "1.1.1" @@ -3235,10 +3286,10 @@ signal-exit@^3.0.0, signal-exit@^3.0.2: resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.3.tgz#a1410c2edd8f077b08b4e253c8eacfcaf057461c" integrity sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA== -simple-statistics@^7.0.9: - version "7.0.9" - resolved "https://registry.yarnpkg.com/simple-statistics/-/simple-statistics-7.0.9.tgz#786b41009bf07c9b84d4b40f859af8d73c007ef6" - integrity sha512-9p55iB9WiuurOkKDNFTvEfr5C4ov3voBo0vri64eC44QSLE6JfOmHMnnyUkS8Os5p9UFfOyhXpEaBJ81EpV6fA== +simple-statistics@^7.1.0: + version "7.1.0" + resolved "https://registry.yarnpkg.com/simple-statistics/-/simple-statistics-7.1.0.tgz#22a3ae8476650ff4cc1643fff6b636334629d352" + integrity sha512-aA7JgiiptQJFB1xJDySzUJ64XTtl1zkR5U79Qa0AxSYVTxws2UlsZt/chyJm+2lMt3xIPKzAsNzVhZhMUXlY+g== slice-ansi@^2.1.0: version "2.1.0" @@ -3369,7 +3420,7 @@ string-width@^3.0.0, string-width@^3.1.0: is-fullwidth-code-point "^2.0.0" strip-ansi "^5.1.0" -string-width@^4.1.0: +string-width@^4.1.0, string-width@^4.2.0: version "4.2.0" resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.0.tgz#952182c46cc7b2c313d1596e623992bd163b72b5" integrity sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg== @@ -3800,6 +3851,15 @@ wrap-ansi@^5.1.0: string-width "^3.0.0" strip-ansi "^5.0.0" +wrap-ansi@^6.2.0: + version "6.2.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-6.2.0.tgz#e9393ba07102e6c91a3b221478f0257cd2856e53" + integrity sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA== + dependencies: + ansi-styles "^4.0.0" + string-width "^4.1.0" + strip-ansi "^6.0.0" + wrappy@1: version "1.0.2" resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" @@ -3854,10 +3914,10 @@ yargs-parser@13.1.2, yargs-parser@^13.1.2: camelcase "^5.0.0" decamelize "^1.2.0" -yargs-parser@^15.0.1: - version "15.0.1" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-15.0.1.tgz#54786af40b820dcb2fb8025b11b4d659d76323b3" - integrity sha512-0OAMV2mAZQrs3FkNpDQcBk1x5HXb8X4twADss4S0Iuk+2dGnLOE/fRHrsYm542GduMveyA77OF4wrNJuanRCWw== +yargs-parser@^18.1.1: + version "18.1.3" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-18.1.3.tgz#be68c4975c6b2abf469236b0c870362fab09a7b0" + integrity sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ== dependencies: camelcase "^5.0.0" decamelize "^1.2.0" @@ -3887,22 +3947,22 @@ yargs@13.3.2, yargs@^13.3.0: y18n "^4.0.0" yargs-parser "^13.1.2" -yargs@^14.0.0: - version "14.2.3" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-14.2.3.tgz#1a1c3edced1afb2a2fea33604bc6d1d8d688a414" - integrity sha512-ZbotRWhF+lkjijC/VhmOT9wSgyBQ7+zr13+YLkhfsSiTriYsMzkTUFP18pFhWwBeMa5gUc1MzbhrO6/VB7c9Xg== +yargs@^15.3.1: + version "15.3.1" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-15.3.1.tgz#9505b472763963e54afe60148ad27a330818e98b" + integrity sha512-92O1HWEjw27sBfgmXiixJWT5hRBp2eobqXicLtPBIDBhYB+1HpwZlXmbW2luivBJHBzki+7VyCLRtAkScbTBQA== dependencies: - cliui "^5.0.0" + cliui "^6.0.0" decamelize "^1.2.0" - find-up "^3.0.0" + find-up "^4.1.0" get-caller-file "^2.0.1" require-directory "^2.1.1" require-main-filename "^2.0.0" set-blocking "^2.0.0" - string-width "^3.0.0" + string-width "^4.2.0" which-module "^2.0.0" y18n "^4.0.0" - yargs-parser "^15.0.1" + yargs-parser "^18.1.1" yargs@^3.10.0: version "3.32.0" From 9c1a1da7d06978c5916456c96936980c08ffaa46 Mon Sep 17 00:00:00 2001 From: Gerald Pape Date: Thu, 3 Sep 2020 16:29:39 +0200 Subject: [PATCH 082/337] bump some versions (#346) --- packages/api/package.json | 8 ++-- packages/models/package.json | 4 +- yarn.lock | 78 ++++++++++++++---------------------- 3 files changed, 37 insertions(+), 53 deletions(-) diff --git a/packages/api/package.json b/packages/api/package.json index 8a536daa..40e6d2d0 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -22,9 +22,9 @@ "apicache": "^1.4.0", "bunyan": "^1.8.14", "config": "^3.3.1", - "csv-stringify": "^5.5.0", + "csv-stringify": "^5.5.1", "dashify": "^2.0.0", - "got": "^11.5.1", + "got": "^11.6.0", "honeybadger": "^1.4.0", "isemail": "^3.0.0", "jsonwebtoken": "^8.1.0", @@ -33,9 +33,9 @@ "ms": "^2.1.1", "restify": "^5.2.0", "restify-errors": "^8.0.2", - "simple-statistics": "^7.1.0", + "simple-statistics": "^7.2.0", "stringify-stream": "^1.0.5", "uuid": "^7.0.3" }, "private": true -} \ No newline at end of file +} diff --git a/packages/models/package.json b/packages/models/package.json index 75262946..09ffaef8 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -7,10 +7,10 @@ "dependencies": { "@sensebox/osem-protos": "^1.1.0", "@sensebox/sketch-templater": "^1.8.2", - "bcrypt": "^4.0.1", + "bcrypt": "^5.0.0", "bunyan": "^1.8.12", "config": "^3.3.1", - "got": "^11.5.1", + "got": "^11.6.0", "grpc": "^1.24.3", "isemail": "^3.0.0", "jsonpath": "^1.0.0", diff --git a/yarn.lock b/yarn.lock index 6ee128be..028bcac7 100644 --- a/yarn.lock +++ b/yarn.lock @@ -50,10 +50,10 @@ config "^1.29.2" dedent "^0.7.0" -"@sindresorhus/is@^3.0.0": - version "3.0.0" - resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-3.0.0.tgz#78fabc5e295adb6e1ef57eaafe4cc5d7aa35b183" - integrity sha512-kqA5I6Yun7PBHk8WN9BBP1c7FfN2SrD05GuVSEYPqDb4nerv7HqYfgBfMIKmT/EuejURkJKLZuLyGKGs6WEG9w== +"@sindresorhus/is@^3.1.1": + version "3.1.2" + resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-3.1.2.tgz#548650de521b344e3781fbdb0ece4aa6f729afb8" + integrity sha512-JiX9vxoKMmu8Y3Zr2RVathBL1Cdu4Nt4MuNWemt1Nc06A0RAin9c5FArkhGsyMBWfCu4zj+9b+GxtjAnE4qqLQ== "@szmarczak/http-timer@^4.0.5": version "4.0.5" @@ -444,13 +444,13 @@ bcrypt-pbkdf@^1.0.0: dependencies: tweetnacl "^0.14.3" -bcrypt@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/bcrypt/-/bcrypt-4.0.1.tgz#06e21e749a061020e4ff1283c1faa93187ac57fe" - integrity sha512-hSIZHkUxIDS5zA2o00Kf2O5RfVbQ888n54xQoF/eIaquU4uaLxK8vhhBdktd0B3n2MjkcAWzv4mnhogykBKOUQ== +bcrypt@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/bcrypt/-/bcrypt-5.0.0.tgz#051407c7cd5ffbfb773d541ca3760ea0754e37e2" + integrity sha512-jB0yCBl4W/kVHM2whjfyqnxTmOHkCX4kHEa5nYKSoGeYe8YrjTYTc87/6bwt1g8cmV0QrbhKriETg9jWtcREhg== dependencies: - node-addon-api "^2.0.0" - node-pre-gyp "0.14.0" + node-addon-api "^3.0.0" + node-pre-gyp "0.15.0" binary-extensions@^2.0.0: version "2.0.0" @@ -877,10 +877,10 @@ csv-stringify@^1.1.2: dependencies: lodash.get "~4.4.2" -csv-stringify@^5.5.0: - version "5.5.0" - resolved "https://registry.yarnpkg.com/csv-stringify/-/csv-stringify-5.5.0.tgz#0bdeaaf60d6e15b89c752a0eceb4b4c2c8af5a8a" - integrity sha512-G05575DSO/9vFzQxZN+Srh30cNyHk0SM0ePyiTChMD5WVt7GMTVPBQf4rtgMF6mqhNCJUPw4pN8LDe8MF9EYOA== +csv-stringify@^5.5.1: + version "5.5.1" + resolved "https://registry.yarnpkg.com/csv-stringify/-/csv-stringify-5.5.1.tgz#f42cdd379b0f7f142933a11f674b1a91ebd0fcd0" + integrity sha512-HM0/86Ks8OwFbaYLd495tqTs1NhscZL52dC4ieKYumy8+nawQYC0xZ63w1NqLf0M148T2YLYqowoImc1giPn0g== csv@^1.1.0: version "1.2.1" @@ -1649,19 +1649,19 @@ globals@^12.1.0: dependencies: type-fest "^0.8.1" -got@^11.5.1: - version "11.5.1" - resolved "https://registry.yarnpkg.com/got/-/got-11.5.1.tgz#bf098a270fe80b3fb88ffd5a043a59ebb0a391db" - integrity sha512-reQEZcEBMTGnujmQ+Wm97mJs/OK6INtO6HmLI+xt3+9CvnRwWjXutUvb2mqr+Ao4Lu05Rx6+udx9sOQAmExMxA== +got@^11.6.0: + version "11.6.0" + resolved "https://registry.yarnpkg.com/got/-/got-11.6.0.tgz#4978c78f3cbc3a45ee95381f8bb6efd1db1f4638" + integrity sha512-ErhWb4IUjQzJ3vGs3+RR12NWlBDDkRciFpAkQ1LPUxi6OnwhGj07gQxjPsyIk69s7qMihwKrKquV6VQq7JNYLA== dependencies: - "@sindresorhus/is" "^3.0.0" + "@sindresorhus/is" "^3.1.1" "@szmarczak/http-timer" "^4.0.5" "@types/cacheable-request" "^6.0.1" "@types/responselike" "^1.0.0" cacheable-lookup "^5.0.3" cacheable-request "^7.0.1" decompress-response "^6.0.0" - http2-wrapper "^1.0.0-beta.5.0" + http2-wrapper "^1.0.0-beta.5.2" lowercase-keys "^2.0.0" p-cancelable "^2.0.0" responselike "^2.0.0" @@ -1806,7 +1806,7 @@ http-signature@~1.2.0: jsprim "^1.2.2" sshpk "^1.7.0" -http2-wrapper@^1.0.0-beta.5.0: +http2-wrapper@^1.0.0-beta.5.2: version "1.0.0-beta.5.2" resolved "https://registry.yarnpkg.com/http2-wrapper/-/http2-wrapper-1.0.0-beta.5.2.tgz#8b923deb90144aea65cf834b016a340fc98556f3" integrity sha512-xYz9goEyBnC8XwXDTuC/MZ6t+MrKVQZOk4s7+PaDkwIsQd8IwqvM+0M6bA/2lvG8GHXcPdf+MejTUeO2LCPCeQ== @@ -2548,7 +2548,7 @@ ncp@~2.0.0: resolved "https://registry.yarnpkg.com/ncp/-/ncp-2.0.0.tgz#195a21d6c46e361d2fb1281ba38b91e9df7bdbb3" integrity sha1-GVoh1sRuNh0vsSgbo4uR6d9727M= -needle@^2.2.1, needle@^2.5.0: +needle@^2.5.0: version "2.5.0" resolved "https://registry.yarnpkg.com/needle/-/needle-2.5.0.tgz#e6fc4b3cc6c25caed7554bd613a5cf0bac8c31c0" integrity sha512-o/qITSDR0JCyCKEQ1/1bnUXMmznxabbwi/Y4WwJElf+evwJNFNwIDMCCt5IigFVxgeGBJESLohGtIS9gEzo1fA== @@ -2572,10 +2572,10 @@ nice-try@^1.0.4: resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ== -node-addon-api@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-2.0.2.tgz#432cfa82962ce494b132e9d72a15b29f71ff5d32" - integrity sha512-Ntyt4AIXyaLIuMHF6IOoTakB3K+RWxwtsHNRxllEoA6vPwP9o4866g6YWDLUdnucilZhmkxiHwHr11gAENw+QA== +node-addon-api@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-3.0.0.tgz#812446a1001a54f71663bed188314bba07e09247" + integrity sha512-sSHCgWfJ+Lui/u+0msF3oyCgvdkhxDbkCS6Q8uiJquzOimkJBvX6hl5aSSA7DR1XbMpdM8r7phjcF63sF4rkKg== node-environment-flags@1.0.6: version "1.0.6" @@ -2585,23 +2585,7 @@ node-environment-flags@1.0.6: object.getownpropertydescriptors "^2.0.3" semver "^5.7.0" -node-pre-gyp@0.14.0: - version "0.14.0" - resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.14.0.tgz#9a0596533b877289bcad4e143982ca3d904ddc83" - integrity sha512-+CvDC7ZttU/sSt9rFjix/P05iS43qHCOOGzcr3Ry99bXG7VX953+vFyEuph/tfqoYu8dttBkE86JSKBO2OzcxA== - dependencies: - detect-libc "^1.0.2" - mkdirp "^0.5.1" - needle "^2.2.1" - nopt "^4.0.1" - npm-packlist "^1.1.6" - npmlog "^4.0.2" - rc "^1.2.7" - rimraf "^2.6.1" - semver "^5.3.0" - tar "^4.4.2" - -node-pre-gyp@^0.15.0: +node-pre-gyp@0.15.0, node-pre-gyp@^0.15.0: version "0.15.0" resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.15.0.tgz#c2fc383276b74c7ffa842925241553e8b40f1087" integrity sha512-7QcZa8/fpaU/BKenjcaeFF9hLz2+7S9AqyXFhlH/rilsQ/hPZKK32RtR5EQHJElgu+q5RfbJ34KriI79UWaorA== @@ -3286,10 +3270,10 @@ signal-exit@^3.0.0, signal-exit@^3.0.2: resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.3.tgz#a1410c2edd8f077b08b4e253c8eacfcaf057461c" integrity sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA== -simple-statistics@^7.1.0: - version "7.1.0" - resolved "https://registry.yarnpkg.com/simple-statistics/-/simple-statistics-7.1.0.tgz#22a3ae8476650ff4cc1643fff6b636334629d352" - integrity sha512-aA7JgiiptQJFB1xJDySzUJ64XTtl1zkR5U79Qa0AxSYVTxws2UlsZt/chyJm+2lMt3xIPKzAsNzVhZhMUXlY+g== +simple-statistics@^7.2.0: + version "7.2.0" + resolved "https://registry.yarnpkg.com/simple-statistics/-/simple-statistics-7.2.0.tgz#f6912250340d1f71ed9bb74755115cb741edea09" + integrity sha512-lx8tPifqqXcOYw7yW8uO/c+2p3CCozhxLXebDi2iYH4cTGF3sbnBmVFZzIpb3w1B3bjHvEfewfy0q85MpRM1dg== slice-ansi@^2.1.0: version "2.1.0" From 806e97d5c9143281630346e14069c78bd3357fb9 Mon Sep 17 00:00:00 2001 From: Gerald Pape Date: Fri, 4 Sep 2020 10:01:04 +0200 Subject: [PATCH 083/337] Development (#348) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Bump config from 3.2.4 to 3.2.5 Bumps [config](https://github.com/lorenwest/node-config) from 3.2.4 to 3.2.5. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * Bump got from 10.2.2 to 10.4.0 (#214) Bumps [got](https://github.com/sindresorhus/got) from 10.2.2 to 10.4.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.2.2...v10.4.0) Signed-off-by: dependabot-preview[bot] * Bump mocha from 6.2.2 to 7.0.1 (#216) Bumps [mocha](https://github.com/mochajs/mocha) from 6.2.2 to 7.0.1. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v6.2.2...v7.0.1) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.0 to 10.5.2 (#224) Bumps [got](https://github.com/sindresorhus/got) from 10.5.0 to 10.5.2. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.0...v10.5.2) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.3 to 10.5.4 (#226) Bumps [got](https://github.com/sindresorhus/got) from 10.5.3 to 10.5.4. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.3...v10.5.4) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.4 to 10.5.5 (#227) Bumps [got](https://github.com/sindresorhus/got) from 10.5.4 to 10.5.5. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.4...v10.5.5) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.5 to 10.5.6 (#228) Bumps [got](https://github.com/sindresorhus/got) from 10.5.5 to 10.5.6. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.5...v10.5.6) Signed-off-by: dependabot-preview[bot] * Bump uuid from 7.0.0 to 7.0.1 (#240) Bumps [uuid](https://github.com/uuidjs/uuid) from 7.0.0 to 7.0.1. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v7.0.0...v7.0.1) Signed-off-by: dependabot-preview[bot] * Merge master in development (#244) * v0.0.14 * v9 (#221) * Bump config from 3.2.4 to 3.2.5 Bumps [config](https://github.com/lorenwest/node-config) from 3.2.4 to 3.2.5. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * [Security] Bump lodash from 4.17.4 to 4.17.15 (#210) Bumps [lodash](https://github.com/lodash/lodash) from 4.17.4 to 4.17.15. **This update includes security fixes.** - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.4...4.17.15) Signed-off-by: dependabot-preview[bot] * Bump got from 10.2.2 to 10.4.0 (#214) Bumps [got](https://github.com/sindresorhus/got) from 10.2.2 to 10.4.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.2.2...v10.4.0) Signed-off-by: dependabot-preview[bot] * Bump csv-parse from 4.8.3 to 4.8.5 (#211) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.3 to 4.8.5. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.3...v4.8.5) Signed-off-by: dependabot-preview[bot] * Bump uuid from 3.3.3 to 3.4.0 (#218) Bumps [uuid](https://github.com/uuidjs/uuid) from 3.3.3 to 3.4.0. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v3.3.3...v3.4.0) Signed-off-by: dependabot-preview[bot] * Bump restify-errors from 5.0.0 to 8.0.2 (#217) Bumps [restify-errors](https://github.com/restify/errors) from 5.0.0 to 8.0.2. - [Release notes](https://github.com/restify/errors/releases) - [Changelog](https://github.com/restify/errors/blob/master/CHANGELOG.md) - [Commits](https://github.com/restify/errors/compare/v5.0.0...v8.0.2) Signed-off-by: dependabot-preview[bot] * Bump mocha from 6.2.2 to 7.0.1 (#216) Bumps [mocha](https://github.com/mochajs/mocha) from 6.2.2 to 7.0.1. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v6.2.2...v7.0.1) Signed-off-by: dependabot-preview[bot] * Bump simple-statistics from 7.0.7 to 7.0.8 (#219) Bumps [simple-statistics](https://github.com/simple-statistics/simple-statistics) from 7.0.7 to 7.0.8. - [Release notes](https://github.com/simple-statistics/simple-statistics/releases) - [Changelog](https://github.com/simple-statistics/simple-statistics/blob/master/CHANGELOG.md) - [Commits](https://github.com/simple-statistics/simple-statistics/compare/v7.0.7...v7.0.8) Signed-off-by: dependabot-preview[bot] * v9 (#220) * v0.0.14 * bump api-models version * update changelog Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape * Fix development (#245) * v0.0.14 * v9 (#221) * Bump config from 3.2.4 to 3.2.5 Bumps [config](https://github.com/lorenwest/node-config) from 3.2.4 to 3.2.5. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * [Security] Bump lodash from 4.17.4 to 4.17.15 (#210) Bumps [lodash](https://github.com/lodash/lodash) from 4.17.4 to 4.17.15. **This update includes security fixes.** - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.4...4.17.15) Signed-off-by: dependabot-preview[bot] * Bump got from 10.2.2 to 10.4.0 (#214) Bumps [got](https://github.com/sindresorhus/got) from 10.2.2 to 10.4.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.2.2...v10.4.0) Signed-off-by: dependabot-preview[bot] * Bump csv-parse from 4.8.3 to 4.8.5 (#211) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.3 to 4.8.5. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.3...v4.8.5) Signed-off-by: dependabot-preview[bot] * Bump uuid from 3.3.3 to 3.4.0 (#218) Bumps [uuid](https://github.com/uuidjs/uuid) from 3.3.3 to 3.4.0. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v3.3.3...v3.4.0) Signed-off-by: dependabot-preview[bot] * Bump restify-errors from 5.0.0 to 8.0.2 (#217) Bumps [restify-errors](https://github.com/restify/errors) from 5.0.0 to 8.0.2. - [Release notes](https://github.com/restify/errors/releases) - [Changelog](https://github.com/restify/errors/blob/master/CHANGELOG.md) - [Commits](https://github.com/restify/errors/compare/v5.0.0...v8.0.2) Signed-off-by: dependabot-preview[bot] * Bump mocha from 6.2.2 to 7.0.1 (#216) Bumps [mocha](https://github.com/mochajs/mocha) from 6.2.2 to 7.0.1. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v6.2.2...v7.0.1) Signed-off-by: dependabot-preview[bot] * Bump simple-statistics from 7.0.7 to 7.0.8 (#219) Bumps [simple-statistics](https://github.com/simple-statistics/simple-statistics) from 7.0.7 to 7.0.8. - [Release notes](https://github.com/simple-statistics/simple-statistics/releases) - [Changelog](https://github.com/simple-statistics/simple-statistics/blob/master/CHANGELOG.md) - [Commits](https://github.com/simple-statistics/simple-statistics/compare/v7.0.7...v7.0.8) Signed-off-by: dependabot-preview[bot] * v9 (#220) * v0.0.14 * bump api-models version * update changelog Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape Co-authored-by: Felix Erdmann Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump bcrypt from 3.0.8 to 4.0.1 (#247) Bumps [bcrypt](https://github.com/kelektiv/node.bcrypt.js) from 3.0.8 to 4.0.1. - [Release notes](https://github.com/kelektiv/node.bcrypt.js/releases) - [Changelog](https://github.com/kelektiv/node.bcrypt.js/blob/master/CHANGELOG.md) - [Commits](https://github.com/kelektiv/node.bcrypt.js/compare/v3.0.8...v4.0.1) Signed-off-by: dependabot-preview[bot] * Bump mocha from 7.1.0 to 7.1.1 (#252) Bumps [mocha](https://github.com/mochajs/mocha) from 7.1.0 to 7.1.1. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/v7.1.1/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v7.1.0...v7.1.1) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bsec (#259) * update bme phenomenons * v0.0.16 * v0.0.17 * Bsec (#261) * update bme phenomenons * v0.0.16 * v0.0.17 * fix spelling mistake * v0.0.18 * update api models version * bump sketch templater version * v0.0.19 * bump opensensemap-api-models version * Bump got from 10.7.0 to 11.0.0 (#263) Bumps [got](https://github.com/sindresorhus/got) from 10.7.0 to 11.0.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.7.0...v11.0.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Revert bsec (#272) * Revert "Bsec (#261)" This reverts commit 4e7fba4cad5f240f26d77f97cb5a6f63baae91e1. * Revert "Bsec (#259)" This reverts commit 0e99504f388679bb733c3fe247f244120229cdd4. * update yarn.lock * use api model 0.0.15 * Bump moment from 2.24.0 to 2.25.2 (#286) Bumps [moment](https://github.com/moment/moment) from 2.24.0 to 2.25.2. - [Release notes](https://github.com/moment/moment/releases) - [Changelog](https://github.com/moment/moment/blob/develop/CHANGELOG.md) - [Commits](https://github.com/moment/moment/compare/2.24.0...2.25.2) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump moment from 2.25.2 to 2.25.3 (#287) Bumps [moment](https://github.com/moment/moment) from 2.25.2 to 2.25.3. - [Release notes](https://github.com/moment/moment/releases) - [Changelog](https://github.com/moment/moment/blob/develop/CHANGELOG.md) - [Commits](https://github.com/moment/moment/commits) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump bcrypt from 4.0.1 to 5.0.0 (#309) Bumps [bcrypt](https://github.com/kelektiv/node.bcrypt.js) from 4.0.1 to 5.0.0. - [Release notes](https://github.com/kelektiv/node.bcrypt.js/releases) - [Changelog](https://github.com/kelektiv/node.bcrypt.js/blob/master/CHANGELOG.md) - [Commits](https://github.com/kelektiv/node.bcrypt.js/compare/v4.0.1...v5.0.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump got from 10.2.2 to 10.4.0 (#214) Bumps [got](https://github.com/sindresorhus/got) from 10.2.2 to 10.4.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.2.2...v10.4.0) Signed-off-by: dependabot-preview[bot] * Bump mocha from 6.2.2 to 7.0.1 (#216) Bumps [mocha](https://github.com/mochajs/mocha) from 6.2.2 to 7.0.1. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v6.2.2...v7.0.1) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.0 to 10.5.2 (#224) Bumps [got](https://github.com/sindresorhus/got) from 10.5.0 to 10.5.2. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.0...v10.5.2) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.5 to 10.5.6 (#228) Bumps [got](https://github.com/sindresorhus/got) from 10.5.5 to 10.5.6. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.5...v10.5.6) Signed-off-by: dependabot-preview[bot] * Bump uuid from 7.0.0 to 7.0.1 (#240) Bumps [uuid](https://github.com/uuidjs/uuid) from 7.0.0 to 7.0.1. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v7.0.0...v7.0.1) Signed-off-by: dependabot-preview[bot] * Merge master in development (#244) * v0.0.14 * v9 (#221) * Bump config from 3.2.4 to 3.2.5 Bumps [config](https://github.com/lorenwest/node-config) from 3.2.4 to 3.2.5. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * [Security] Bump lodash from 4.17.4 to 4.17.15 (#210) Bumps [lodash](https://github.com/lodash/lodash) from 4.17.4 to 4.17.15. **This update includes security fixes.** - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.4...4.17.15) Signed-off-by: dependabot-preview[bot] * Bump got from 10.2.2 to 10.4.0 (#214) Bumps [got](https://github.com/sindresorhus/got) from 10.2.2 to 10.4.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.2.2...v10.4.0) Signed-off-by: dependabot-preview[bot] * Bump csv-parse from 4.8.3 to 4.8.5 (#211) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.3 to 4.8.5. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.3...v4.8.5) Signed-off-by: dependabot-preview[bot] * Bump uuid from 3.3.3 to 3.4.0 (#218) Bumps [uuid](https://github.com/uuidjs/uuid) from 3.3.3 to 3.4.0. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v3.3.3...v3.4.0) Signed-off-by: dependabot-preview[bot] * Bump restify-errors from 5.0.0 to 8.0.2 (#217) Bumps [restify-errors](https://github.com/restify/errors) from 5.0.0 to 8.0.2. - [Release notes](https://github.com/restify/errors/releases) - [Changelog](https://github.com/restify/errors/blob/master/CHANGELOG.md) - [Commits](https://github.com/restify/errors/compare/v5.0.0...v8.0.2) Signed-off-by: dependabot-preview[bot] * Bump mocha from 6.2.2 to 7.0.1 (#216) Bumps [mocha](https://github.com/mochajs/mocha) from 6.2.2 to 7.0.1. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v6.2.2...v7.0.1) Signed-off-by: dependabot-preview[bot] * Bump simple-statistics from 7.0.7 to 7.0.8 (#219) Bumps [simple-statistics](https://github.com/simple-statistics/simple-statistics) from 7.0.7 to 7.0.8. - [Release notes](https://github.com/simple-statistics/simple-statistics/releases) - [Changelog](https://github.com/simple-statistics/simple-statistics/blob/master/CHANGELOG.md) - [Commits](https://github.com/simple-statistics/simple-statistics/compare/v7.0.7...v7.0.8) Signed-off-by: dependabot-preview[bot] * v9 (#220) * v0.0.14 * bump api-models version * update changelog Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape * Fix development (#245) * v0.0.14 * v9 (#221) * Bump config from 3.2.4 to 3.2.5 Bumps [config](https://github.com/lorenwest/node-config) from 3.2.4 to 3.2.5. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * [Security] Bump lodash from 4.17.4 to 4.17.15 (#210) Bumps [lodash](https://github.com/lodash/lodash) from 4.17.4 to 4.17.15. **This update includes security fixes.** - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.4...4.17.15) Signed-off-by: dependabot-preview[bot] * Bump got from 10.2.2 to 10.4.0 (#214) Bumps [got](https://github.com/sindresorhus/got) from 10.2.2 to 10.4.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.2.2...v10.4.0) Signed-off-by: dependabot-preview[bot] * Bump csv-parse from 4.8.3 to 4.8.5 (#211) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.3 to 4.8.5. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.3...v4.8.5) Signed-off-by: dependabot-preview[bot] * Bump uuid from 3.3.3 to 3.4.0 (#218) Bumps [uuid](https://github.com/uuidjs/uuid) from 3.3.3 to 3.4.0. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v3.3.3...v3.4.0) Signed-off-by: dependabot-preview[bot] * Bump restify-errors from 5.0.0 to 8.0.2 (#217) Bumps [restify-errors](https://github.com/restify/errors) from 5.0.0 to 8.0.2. - [Release notes](https://github.com/restify/errors/releases) - [Changelog](https://github.com/restify/errors/blob/master/CHANGELOG.md) - [Commits](https://github.com/restify/errors/compare/v5.0.0...v8.0.2) Signed-off-by: dependabot-preview[bot] * Bump mocha from 6.2.2 to 7.0.1 (#216) Bumps [mocha](https://github.com/mochajs/mocha) from 6.2.2 to 7.0.1. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v6.2.2...v7.0.1) Signed-off-by: dependabot-preview[bot] * Bump simple-statistics from 7.0.7 to 7.0.8 (#219) Bumps [simple-statistics](https://github.com/simple-statistics/simple-statistics) from 7.0.7 to 7.0.8. - [Release notes](https://github.com/simple-statistics/simple-statistics/releases) - [Changelog](https://github.com/simple-statistics/simple-statistics/blob/master/CHANGELOG.md) - [Commits](https://github.com/simple-statistics/simple-statistics/compare/v7.0.7...v7.0.8) Signed-off-by: dependabot-preview[bot] * v9 (#220) * v0.0.14 * bump api-models version * update changelog Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape Co-authored-by: Felix Erdmann Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump bcrypt from 3.0.8 to 4.0.1 (#247) Bumps [bcrypt](https://github.com/kelektiv/node.bcrypt.js) from 3.0.8 to 4.0.1. - [Release notes](https://github.com/kelektiv/node.bcrypt.js/releases) - [Changelog](https://github.com/kelektiv/node.bcrypt.js/blob/master/CHANGELOG.md) - [Commits](https://github.com/kelektiv/node.bcrypt.js/compare/v3.0.8...v4.0.1) Signed-off-by: dependabot-preview[bot] * Bump mocha from 7.1.0 to 7.1.1 (#252) Bumps [mocha](https://github.com/mochajs/mocha) from 7.1.0 to 7.1.1. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/v7.1.1/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v7.1.0...v7.1.1) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bsec (#259) * update bme phenomenons * v0.0.16 * v0.0.17 * Bsec (#261) * update bme phenomenons * v0.0.16 * v0.0.17 * fix spelling mistake * v0.0.18 * update api models version * bump sketch templater version * v0.0.19 * bump opensensemap-api-models version * Bump got from 10.7.0 to 11.0.0 (#263) Bumps [got](https://github.com/sindresorhus/got) from 10.7.0 to 11.0.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.7.0...v11.0.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Revert bsec (#272) * Revert "Bsec (#261)" This reverts commit 4e7fba4cad5f240f26d77f97cb5a6f63baae91e1. * Revert "Bsec (#259)" This reverts commit 0e99504f388679bb733c3fe247f244120229cdd4. * update yarn.lock * use api model 0.0.15 * Bump bcrypt from 4.0.1 to 5.0.0 (#309) Bumps [bcrypt](https://github.com/kelektiv/node.bcrypt.js) from 4.0.1 to 5.0.0. - [Release notes](https://github.com/kelektiv/node.bcrypt.js/releases) - [Changelog](https://github.com/kelektiv/node.bcrypt.js/blob/master/CHANGELOG.md) - [Commits](https://github.com/kelektiv/node.bcrypt.js/compare/v4.0.1...v5.0.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump bunyan from 1.8.12 to 1.8.13 (#320) Bumps [bunyan](https://github.com/trentm/node-bunyan) from 1.8.12 to 1.8.13. - [Release notes](https://github.com/trentm/node-bunyan/releases) - [Changelog](https://github.com/trentm/node-bunyan/blob/1.8.13/CHANGES.md) - [Commits](https://github.com/trentm/node-bunyan/compare/1.8.12...1.8.13) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump bunyan from 1.8.13 to 1.8.14 (#321) Bumps [bunyan](https://github.com/trentm/node-bunyan) from 1.8.13 to 1.8.14. - [Release notes](https://github.com/trentm/node-bunyan/releases) - [Changelog](https://github.com/trentm/node-bunyan/blob/1.8.14/CHANGES.md) - [Commits](https://github.com/trentm/node-bunyan/compare/1.8.13...1.8.14) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * update yarn.lock * v0.0.25 * Bump bcrypt from 4.0.1 to 5.0.0 (#327) Bumps [bcrypt](https://github.com/kelektiv/node.bcrypt.js) from 4.0.1 to 5.0.0. - [Release notes](https://github.com/kelektiv/node.bcrypt.js/releases) - [Changelog](https://github.com/kelektiv/node.bcrypt.js/blob/master/CHANGELOG.md) - [Commits](https://github.com/kelektiv/node.bcrypt.js/compare/v4.0.1...v5.0.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * add route for retrieving the latest measurement of a single sensor (#339) Co-authored-by: Felix Erdmann * Conflicts 2020 09 03 (#345) * Bump lodash from 4.17.15 to 4.17.19 (#331) Bumps [lodash](https://github.com/lodash/lodash) from 4.17.15 to 4.17.19. - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.15...4.17.19) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * v9.4 (#334) * Bump config from 3.2.4 to 3.2.5 Bumps [config](https://github.com/lorenwest/node-config) from 3.2.4 to 3.2.5. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * [Security] Bump lodash from 4.17.4 to 4.17.15 (#210) Bumps [lodash](https://github.com/lodash/lodash) from 4.17.4 to 4.17.15. **This update includes security fixes.** - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.4...4.17.15) Signed-off-by: dependabot-preview[bot] * Bump got from 10.2.2 to 10.4.0 (#214) Bumps [got](https://github.com/sindresorhus/got) from 10.2.2 to 10.4.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.2.2...v10.4.0) Signed-off-by: dependabot-preview[bot] * Bump csv-parse from 4.8.3 to 4.8.5 (#211) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.3 to 4.8.5. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.3...v4.8.5) Signed-off-by: dependabot-preview[bot] * Bump uuid from 3.3.3 to 3.4.0 (#218) Bumps [uuid](https://github.com/uuidjs/uuid) from 3.3.3 to 3.4.0. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v3.3.3...v3.4.0) Signed-off-by: dependabot-preview[bot] * Bump restify-errors from 5.0.0 to 8.0.2 (#217) Bumps [restify-errors](https://github.com/restify/errors) from 5.0.0 to 8.0.2. - [Release notes](https://github.com/restify/errors/releases) - [Changelog](https://github.com/restify/errors/blob/master/CHANGELOG.md) - [Commits](https://github.com/restify/errors/compare/v5.0.0...v8.0.2) Signed-off-by: dependabot-preview[bot] * Bump mocha from 6.2.2 to 7.0.1 (#216) Bumps [mocha](https://github.com/mochajs/mocha) from 6.2.2 to 7.0.1. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v6.2.2...v7.0.1) Signed-off-by: dependabot-preview[bot] * Bump simple-statistics from 7.0.7 to 7.0.8 (#219) Bumps [simple-statistics](https://github.com/simple-statistics/simple-statistics) from 7.0.7 to 7.0.8. - [Release notes](https://github.com/simple-statistics/simple-statistics/releases) - [Changelog](https://github.com/simple-statistics/simple-statistics/blob/master/CHANGELOG.md) - [Commits](https://github.com/simple-statistics/simple-statistics/compare/v7.0.7...v7.0.8) Signed-off-by: dependabot-preview[bot] * v9 (#220) * v0.0.14 * bump api-models version * update changelog * Bump bcrypt from 3.0.7 to 3.0.8 (#222) Bumps [bcrypt](https://github.com/kelektiv/node.bcrypt.js) from 3.0.7 to 3.0.8. - [Release notes](https://github.com/kelektiv/node.bcrypt.js/releases) - [Changelog](https://github.com/kelektiv/node.bcrypt.js/blob/master/CHANGELOG.md) - [Commits](https://github.com/kelektiv/node.bcrypt.js/compare/v3.0.7...v3.0.8) Signed-off-by: dependabot-preview[bot] * Bump got from 10.4.0 to 10.5.0 (#223) Bumps [got](https://github.com/sindresorhus/got) from 10.4.0 to 10.5.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.4.0...v10.5.0) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.0 to 10.5.2 (#224) Bumps [got](https://github.com/sindresorhus/got) from 10.5.0 to 10.5.2. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.0...v10.5.2) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.2 to 10.5.3 (#225) Bumps [got](https://github.com/sindresorhus/got) from 10.5.2 to 10.5.3. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.2...v10.5.3) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.3 to 10.5.4 (#226) Bumps [got](https://github.com/sindresorhus/got) from 10.5.3 to 10.5.4. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.3...v10.5.4) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.4 to 10.5.5 (#227) Bumps [got](https://github.com/sindresorhus/got) from 10.5.4 to 10.5.5. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.4...v10.5.5) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.5 to 10.5.6 (#228) Bumps [got](https://github.com/sindresorhus/got) from 10.5.5 to 10.5.6. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.5...v10.5.6) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.6 to 10.5.7 (#229) Bumps [got](https://github.com/sindresorhus/got) from 10.5.6 to 10.5.7. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.6...v10.5.7) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.7 to 10.6.0 (#230) Bumps [got](https://github.com/sindresorhus/got) from 10.5.7 to 10.6.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.7...v10.6.0) Signed-off-by: dependabot-preview[bot] * Bump config from 3.2.5 to 3.2.6 (#232) Bumps [config](https://github.com/lorenwest/node-config) from 3.2.5 to 3.2.6. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * Bump csv-parse from 4.8.5 to 4.8.6 (#233) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.5 to 4.8.6. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.5...v4.8.6) Signed-off-by: dependabot-preview[bot] * bump node-sketch-templater version (#234) * Bump models version (#236) * v0.0.15 * bump opensensemap-api-models version * Bump uuid from 3.4.0 to 7.0.0 (#237) * Bump uuid from 3.4.0 to 7.0.0 Bumps [uuid](https://github.com/uuidjs/uuid) from 3.4.0 to 7.0.0. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v3.4.0...v7.0.0) Signed-off-by: dependabot-preview[bot] * fix uuid usage for 7.0.0 Co-authored-by: Gerald Pape * Bump @sensebox/sketch-templater from 1.5.4 to 1.5.5 (#238) Bumps [@sensebox/sketch-templater](https://github.com/sensebox/node-sketch-templater) from 1.5.4 to 1.5.5. - [Release notes](https://github.com/sensebox/node-sketch-templater/releases) - [Changelog](https://github.com/sensebox/node-sketch-templater/blob/master/CHANGELOG.md) - [Commits](https://github.com/sensebox/node-sketch-templater/compare/v1.5.4...v1.5.5) Signed-off-by: dependabot-preview[bot] * bump opensensemap-api-models version (#239) * Bump uuid from 7.0.0 to 7.0.1 (#240) Bumps [uuid](https://github.com/uuidjs/uuid) from 7.0.0 to 7.0.1. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v7.0.0...v7.0.1) Signed-off-by: dependabot-preview[bot] * Bump mocha from 7.0.1 to 7.1.0 (#241) Bumps [mocha](https://github.com/mochajs/mocha) from 7.0.1 to 7.1.0. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v7.0.1...v7.1.0) Signed-off-by: dependabot-preview[bot] * Bump config from 3.2.6 to 3.3.0 (#242) Bumps [config](https://github.com/lorenwest/node-config) from 3.2.6 to 3.3.0. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * Merge master in development (#244) * v0.0.14 * v9 (#221) * Bump config from 3.2.4 to 3.2.5 Bumps [config](https://github.com/lorenwest/node-config) from 3.2.4 to 3.2.5. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * [Security] Bump lodash from 4.17.4 to 4.17.15 (#210) Bumps [lodash](https://github.com/lodash/lodash) from 4.17.4 to 4.17.15. **This update includes security fixes.** - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.4...4.17.15) Signed-off-by: dependabot-preview[bot] * Bump got from 10.2.2 to 10.4.0 (#214) Bumps [got](https://github.com/sindresorhus/got) from 10.2.2 to 10.4.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.2.2...v10.4.0) Signed-off-by: dependabot-preview[bot] * Bump csv-parse from 4.8.3 to 4.8.5 (#211) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.3 to 4.8.5. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.3...v4.8.5) Signed-off-by: dependabot-preview[bot] * Bump uuid from 3.3.3 to 3.4.0 (#218) Bumps [uuid](https://github.com/uuidjs/uuid) from 3.3.3 to 3.4.0. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v3.3.3...v3.4.0) Signed-off-by: dependabot-preview[bot] * Bump restify-errors from 5.0.0 to 8.0.2 (#217) Bumps [restify-errors](https://github.com/restify/errors) from 5.0.0 to 8.0.2. - [Release notes](https://github.com/restify/errors/releases) - [Changelog](https://github.com/restify/errors/blob/master/CHANGELOG.md) - [Commits](https://github.com/restify/errors/compare/v5.0.0...v8.0.2) Signed-off-by: dependabot-preview[bot] * Bump mocha from 6.2.2 to 7.0.1 (#216) Bumps [mocha](https://github.com/mochajs/mocha) from 6.2.2 to 7.0.1. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v6.2.2...v7.0.1) Signed-off-by: dependabot-preview[bot] * Bump simple-statistics from 7.0.7 to 7.0.8 (#219) Bumps [simple-statistics](https://github.com/simple-statistics/simple-statistics) from 7.0.7 to 7.0.8. - [Release notes](https://github.com/simple-statistics/simple-statistics/releases) - [Changelog](https://github.com/simple-statistics/simple-statistics/blob/master/CHANGELOG.md) - [Commits](https://github.com/simple-statistics/simple-statistics/compare/v7.0.7...v7.0.8) Signed-off-by: dependabot-preview[bot] * v9 (#220) * v0.0.14 * bump api-models version * update changelog Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape * Fix development (#245) * v0.0.14 * v9 (#221) * Bump config from 3.2.4 to 3.2.5 Bumps [config](https://github.com/lorenwest/node-config) from 3.2.4 to 3.2.5. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * [Security] Bump lodash from 4.17.4 to 4.17.15 (#210) Bumps [lodash](https://github.com/lodash/lodash) from 4.17.4 to 4.17.15. **This update includes security fixes.** - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.4...4.17.15) Signed-off-by: dependabot-preview[bot] * Bump got from 10.2.2 to 10.4.0 (#214) Bumps [got](https://github.com/sindresorhus/got) from 10.2.2 to 10.4.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.2.2...v10.4.0) Signed-off-by: dependabot-preview[bot] * Bump csv-parse from 4.8.3 to 4.8.5 (#211) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.3 to 4.8.5. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.3...v4.8.5) Signed-off-by: dependabot-preview[bot] * Bump uuid from 3.3.3 to 3.4.0 (#218) Bumps [uuid](https://github.com/uuidjs/uuid) from 3.3.3 to 3.4.0. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v3.3.3...v3.4.0) Signed-off-by: dependabot-preview[bot] * Bump restify-errors from 5.0.0 to 8.0.2 (#217) Bumps [restify-errors](https://github.com/restify/errors) from 5.0.0 to 8.0.2. - [Release notes](https://github.com/restify/errors/releases) - [Changelog](https://github.com/restify/errors/blob/master/CHANGELOG.md) - [Commits](https://github.com/restify/errors/compare/v5.0.0...v8.0.2) Signed-off-by: dependabot-preview[bot] * Bump mocha from 6.2.2 to 7.0.1 (#216) Bumps [mocha](https://github.com/mochajs/mocha) from 6.2.2 to 7.0.1. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v6.2.2...v7.0.1) Signed-off-by: dependabot-preview[bot] * Bump simple-statistics from 7.0.7 to 7.0.8 (#219) Bumps [simple-statistics](https://github.com/simple-statistics/simple-statistics) from 7.0.7 to 7.0.8. - [Release notes](https://github.com/simple-statistics/simple-statistics/releases) - [Changelog](https://github.com/simple-statistics/simple-statistics/blob/master/CHANGELOG.md) - [Commits](https://github.com/simple-statistics/simple-statistics/compare/v7.0.7...v7.0.8) Signed-off-by: dependabot-preview[bot] * v9 (#220) * v0.0.14 * bump api-models version * update changelog Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape Co-authored-by: Felix Erdmann Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump csv-parse from 4.8.6 to 4.8.7 (#246) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.6 to 4.8.7. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.6...v4.8.7) Signed-off-by: dependabot-preview[bot] * Bump bcrypt from 3.0.8 to 4.0.1 (#247) Bumps [bcrypt](https://github.com/kelektiv/node.bcrypt.js) from 3.0.8 to 4.0.1. - [Release notes](https://github.com/kelektiv/node.bcrypt.js/releases) - [Changelog](https://github.com/kelektiv/node.bcrypt.js/blob/master/CHANGELOG.md) - [Commits](https://github.com/kelektiv/node.bcrypt.js/compare/v3.0.8...v4.0.1) Signed-off-by: dependabot-preview[bot] * Bump csv-parse from 4.8.7 to 4.8.8 (#248) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.7 to 4.8.8. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.7...v4.8.8) Signed-off-by: dependabot-preview[bot] * Bump uuid from 7.0.1 to 7.0.2 (#249) Bumps [uuid](https://github.com/uuidjs/uuid) from 7.0.1 to 7.0.2. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v7.0.1...v7.0.2) Signed-off-by: dependabot-preview[bot] * [Security] Bump acorn from 7.1.0 to 7.1.1 (#250) Bumps [acorn](https://github.com/acornjs/acorn) from 7.1.0 to 7.1.1. **This update includes a security fix.** - [Release notes](https://github.com/acornjs/acorn/releases) - [Commits](https://github.com/acornjs/acorn/compare/7.1.0...7.1.1) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump mocha from 7.1.0 to 7.1.1 (#252) Bumps [mocha](https://github.com/mochajs/mocha) from 7.1.0 to 7.1.1. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/v7.1.1/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v7.1.0...v7.1.1) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * [Security] Bump minimist from 1.2.0 to 1.2.5 (#253) Bumps [minimist](https://github.com/substack/minimist) from 1.2.0 to 1.2.5. **This update includes a security fix.** - [Release notes](https://github.com/substack/minimist/releases) - [Commits](https://github.com/substack/minimist/compare/1.2.0...1.2.5) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump honeybadger from 1.3.0 to 1.4.0 (#254) Bumps [honeybadger](https://github.com/honeybadger-io/honeybadger-node) from 1.3.0 to 1.4.0. - [Release notes](https://github.com/honeybadger-io/honeybadger-node/releases) - [Changelog](https://github.com/honeybadger-io/honeybadger-node/blob/master/CHANGELOG.md) - [Commits](https://github.com/honeybadger-io/honeybadger-node/compare/v1.3.0...v1.4.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump got from 10.6.0 to 10.7.0 (#255) Bumps [got](https://github.com/sindresorhus/got) from 10.6.0 to 10.7.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.6.0...v10.7.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump config from 3.3.0 to 3.3.1 (#256) Bumps [config](https://github.com/lorenwest/node-config) from 3.3.0 to 3.3.1. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump uuid from 7.0.2 to 7.0.3 (#257) Bumps [uuid](https://github.com/uuidjs/uuid) from 7.0.2 to 7.0.3. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v7.0.2...v7.0.3) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bsec (#259) * update bme phenomenons * v0.0.16 * v0.0.17 * Bsec (#261) * update bme phenomenons * v0.0.16 * v0.0.17 * fix spelling mistake * v0.0.18 * update api models version * bump sketch templater version * v0.0.19 * bump opensensemap-api-models version * Bump got from 10.7.0 to 11.0.0 (#263) Bumps [got](https://github.com/sindresorhus/got) from 10.7.0 to 11.0.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.7.0...v11.0.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump csv-stringify from 5.3.6 to 5.4.0 (#264) Bumps [csv-stringify](https://github.com/adaltas/node-csv-stringify) from 5.3.6 to 5.4.0. - [Release notes](https://github.com/adaltas/node-csv-stringify/releases) - [Changelog](https://github.com/adaltas/node-csv-stringify/blob/master/CHANGELOG.md) - [Commits](https://github.com/adaltas/node-csv-stringify/compare/v5.3.6...v5.4.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump csv-parse from 4.8.8 to 4.8.9 (#265) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.8 to 4.8.9. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.8...v4.8.9) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape * Bump got from 11.0.0 to 11.0.1 (#266) Bumps [got](https://github.com/sindresorhus/got) from 11.0.0 to 11.0.1. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/commits) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape * Bump simple-statistics from 7.0.8 to 7.0.9 (#267) Bumps [simple-statistics](https://github.com/simple-statistics/simple-statistics) from 7.0.8 to 7.0.9. - [Release notes](https://github.com/simple-statistics/simple-statistics/releases) - [Changelog](https://github.com/simple-statistics/simple-statistics/blob/master/CHANGELOG.md) - [Commits](https://github.com/simple-statistics/simple-statistics/compare/v7.0.8...v7.0.9) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape * Bump csv-stringify from 5.4.0 to 5.4.2 (#269) Bumps [csv-stringify](https://github.com/adaltas/node-csv-stringify) from 5.4.0 to 5.4.2. - [Release notes](https://github.com/adaltas/node-csv-stringify/releases) - [Changelog](https://github.com/adaltas/node-csv-stringify/blob/master/CHANGELOG.md) - [Commits](https://github.com/adaltas/node-csv-stringify/compare/v5.4.0...v5.4.2) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump csv-stringify from 5.4.2 to 5.4.3 (#270) Bumps [csv-stringify](https://github.com/adaltas/node-csv-stringify) from 5.4.2 to 5.4.3. - [Release notes](https://github.com/adaltas/node-csv-stringify/releases) - [Changelog](https://github.com/adaltas/node-csv-stringify/blob/master/CHANGELOG.md) - [Commits](https://github.com/adaltas/node-csv-stringify/compare/v5.4.2...v5.4.3) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump got from 11.0.1 to 11.0.2 (#271) Bumps [got](https://github.com/sindresorhus/got) from 11.0.1 to 11.0.2. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v11.0.1...v11.0.2) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Revert bsec (#272) * Revert "Bsec (#261)" This reverts commit 4e7fba4cad5f240f26d77f97cb5a6f63baae91e1. * Revert "Bsec (#259)" This reverts commit 0e99504f388679bb733c3fe247f244120229cdd4. * update yarn.lock * use api model 0.0.15 * Bump mocha from 7.1.1 to 7.1.2 (#273) Bumps [mocha](https://github.com/mochajs/mocha) from 7.1.1 to 7.1.2. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/v7.1.2/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v7.1.1...v7.1.2) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump csv-parse from 4.8.9 to 4.9.0 (#274) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.9 to 4.9.0. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.9...v4.9.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Ttn ids (#277) * v9.1 (#243) * Bump config from 3.2.4 to 3.2.5 Bumps [config](https://github.com/lorenwest/node-config) from 3.2.4 to 3.2.5. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * [Security] Bump lodash from 4.17.4 to 4.17.15 (#210) Bumps [lodash](https://github.com/lodash/lodash) from 4.17.4 to 4.17.15. **This update includes security fixes.** - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.4...4.17.15) Signed-off-by: dependabot-preview[bot] * Bump got from 10.2.2 to 10.4.0 (#214) Bumps [got](https://github.com/sindresorhus/got) from 10.2.2 to 10.4.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.2.2...v10.4.0) Signed-off-by: dependabot-preview[bot] * Bump csv-parse from 4.8.3 to 4.8.5 (#211) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.3 to 4.8.5. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.3...v4.8.5) Signed-off-by: dependabot-preview[bot] * Bump uuid from 3.3.3 to 3.4.0 (#218) Bumps [uuid](https://github.com/uuidjs/uuid) from 3.3.3 to 3.4.0. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v3.3.3...v3.4.0) Signed-off-by: dependabot-preview[bot] * Bump restify-errors from 5.0.0 to 8.0.2 (#217) Bumps [restify-errors](https://github.com/restify/errors) from 5.0.0 to 8.0.2. - [Release notes](https://github.com/restify/errors/releases) - [Changelog](https://github.com/restify/errors/blob/master/CHANGELOG.md) - [Commits](https://github.com/restify/errors/compare/v5.0.0...v8.0.2) Signed-off-by: dependabot-preview[bot] * Bump mocha from 6.2.2 to 7.0.1 (#216) Bumps [mocha](https://github.com/mochajs/mocha) from 6.2.2 to 7.0.1. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v6.2.2...v7.0.1) Signed-off-by: dependabot-preview[bot] * Bump simple-statistics from 7.0.7 to 7.0.8 (#219) Bumps [simple-statistics](https://github.com/simple-statistics/simple-statistics) from 7.0.7 to 7.0.8. - [Release notes](https://github.com/simple-statistics/simple-statistics/releases) - [Changelog](https://github.com/simple-statistics/simple-statistics/blob/master/CHANGELOG.md) - [Commits](https://github.com/simple-statistics/simple-statistics/compare/v7.0.7...v7.0.8) Signed-off-by: dependabot-preview[bot] * v9 (#220) * v0.0.14 * bump api-models version * update changelog * Bump bcrypt from 3.0.7 to 3.0.8 (#222) Bumps [bcrypt](https://github.com/kelektiv/node.bcrypt.js) from 3.0.7 to 3.0.8. - [Release notes](https://github.com/kelektiv/node.bcrypt.js/releases) - [Changelog](https://github.com/kelektiv/node.bcrypt.js/blob/master/CHANGELOG.md) - [Commits](https://github.com/kelektiv/node.bcrypt.js/compare/v3.0.7...v3.0.8) Signed-off-by: dependabot-preview[bot] * Bump got from 10.4.0 to 10.5.0 (#223) Bumps [got](https://github.com/sindresorhus/got) from 10.4.0 to 10.5.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.4.0...v10.5.0) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.0 to 10.5.2 (#224) Bumps [got](https://github.com/sindresorhus/got) from 10.5.0 to 10.5.2. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.0...v10.5.2) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.2 to 10.5.3 (#225) Bumps [got](https://github.com/sindresorhus/got) from 10.5.2 to 10.5.3. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.2...v10.5.3) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.3 to 10.5.4 (#226) Bumps [got](https://github.com/sindresorhus/got) from 10.5.3 to 10.5.4. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.3...v10.5.4) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.4 to 10.5.5 (#227) Bumps [got](https://github.com/sindresorhus/got) from 10.5.4 to 10.5.5. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.4...v10.5.5) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.5 to 10.5.6 (#228) Bumps [got](https://github.com/sindresorhus/got) from 10.5.5 to 10.5.6. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.5...v10.5.6) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.6 to 10.5.7 (#229) Bumps [got](https://github.com/sindresorhus/got) from 10.5.6 to 10.5.7. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.6...v10.5.7) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.7 to 10.6.0 (#230) Bumps [got](https://github.com/sindresorhus/got) from 10.5.7 to 10.6.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.7...v10.6.0) Signed-off-by: dependabot-preview[bot] * Bump config from 3.2.5 to 3.2.6 (#232) Bumps [config](https://github.com/lorenwest/node-config) from 3.2.5 to 3.2.6. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * Bump csv-parse from 4.8.5 to 4.8.6 (#233) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.5 to 4.8.6. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.5...v4.8.6) Signed-off-by: dependabot-preview[bot] * bump node-sketch-templater version (#234) * Bump models version (#236) * v0.0.15 * bump opensensemap-api-models version * Bump uuid from 3.4.0 to 7.0.0 (#237) * Bump uuid from 3.4.0 to 7.0.0 Bumps [uuid](https://github.com/uuidjs/uuid) from 3.4.0 to 7.0.0. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v3.4.0...v7.0.0) Signed-off-by: dependabot-preview[bot] * fix uuid usage for 7.0.0 Co-authored-by: Gerald Pape * Bump @sensebox/sketch-templater from 1.5.4 to 1.5.5 (#238) Bumps [@sensebox/sketch-templater](https://github.com/sensebox/node-sketch-templater) from 1.5.4 to 1.5.5. - [Release notes](https://github.com/sensebox/node-sketch-templater/releases) - [Changelog](https://github.com/sensebox/node-sketch-templater/blob/master/CHANGELOG.md) - [Commits](https://github.com/sensebox/node-sketch-templater/compare/v1.5.4...v1.5.5) Signed-off-by: dependabot-preview[bot] * bump opensensemap-api-models version (#239) * Bump uuid from 7.0.0 to 7.0.1 (#240) Bumps [uuid](https://github.com/uuidjs/uuid) from 7.0.0 to 7.0.1. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v7.0.0...v7.0.1) Signed-off-by: dependabot-preview[bot] * Bump mocha from 7.0.1 to 7.1.0 (#241) Bumps [mocha](https://github.com/mochajs/mocha) from 7.0.1 to 7.1.0. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v7.0.1...v7.1.0) Signed-off-by: dependabot-preview[bot] * Bump config from 3.2.6 to 3.3.0 (#242) Bumps [config](https://github.com/lorenwest/node-config) from 3.2.6 to 3.3.0. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * Merge master in development (#244) * v0.0.14 * v9 (#221) * Bump config from 3.2.4 to 3.2.5 Bumps [config](https://github.com/lorenwest/node-config) from 3.2.4 to 3.2.5. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * [Security] Bump lodash from 4.17.4 to 4.17.15 (#210) Bumps [lodash](https://github.com/lodash/lodash) from 4.17.4 to 4.17.15. **This update includes security fixes.** - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.4...4.17.15) Signed-off-by: dependabot-preview[bot] * Bump got from 10.2.2 to 10.4.0 (#214) Bumps [got](https://github.com/sindresorhus/got) from 10.2.2 to 10.4.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.2.2...v10.4.0) Signed-off-by: dependabot-preview[bot] * Bump csv-parse from 4.8.3 to 4.8.5 (#211) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.3 to 4.8.5. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.3...v4.8.5) Signed-off-by: dependabot-preview[bot] * Bump uuid from 3.3.3 to 3.4.0 (#218) Bumps [uuid](https://github.com/uuidjs/uuid) from 3.3.3 to 3.4.0. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v3.3.3...v3.4.0) Signed-off-by: dependabot-preview[bot] * Bump restify-errors from 5.0.0 to 8.0.2 (#217) Bumps [restify-errors](https://github.com/restify/errors) from 5.0.0 to 8.0.2. - [Release notes](https://github.com/restify/errors/releases) - [Changelog](https://github.com/restify/errors/blob/master/CHANGELOG.md) - [Commits](https://github.com/restify/errors/compare/v5.0.0...v8.0.2) Signed-off-by: dependabot-preview[bot] * Bump mocha from 6.2.2 to 7.0.1 (#216) Bumps [mocha](https://github.com/mochajs/mocha) from 6.2.2 to 7.0.1. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v6.2.2...v7.0.1) Signed-off-by: dependabot-preview[bot] * Bump simple-statistics from 7.0.7 to 7.0.8 (#219) Bumps [simple-statistics](https://github.com/simple-statistics/simple-statistics) from 7.0.7 to 7.0.8. - [Release notes](https://github.com/simple-statistics/simple-statistics/releases) - [Changelog](https://github.com/simple-statistics/simple-statistics/blob/master/CHANGELOG.md) - [Commits](https://github.com/simple-statistics/simple-statistics/compare/v7.0.7...v7.0.8) Signed-off-by: dependabot-preview[bot] * v9 (#220) * v0.0.14 * bump api-models version * update changelog Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape * Fix development (#245) * v0.0.14 * v9 (#221) * Bump config from 3.2.4 to 3.2.5 Bumps [config](https://github.com/lorenwest/node-config) from 3.2.4 to 3.2.5. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * [Security] Bump lodash from 4.17.4 to 4.17.15 (#210) Bumps [lodash](https://github.com/lodash/lodash) from 4.17.4 to 4.17.15. **This update includes security fixes.** - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.4...4.17.15) Signed-off-by: dependabot-preview[bot] * Bump got from 10.2.2 to 10.4.0 (#214) Bumps [got](https://github.com/sindresorhus/got) from 10.2.2 to 10.4.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.2.2...v10.4.0) Signed-off-by: dependabot-preview[bot] * Bump csv-parse from 4.8.3 to 4.8.5 (#211) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.3 to 4.8.5. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.3...v4.8.5) Signed-off-by: dependabot-preview[bot] * Bump uuid from 3.3.3 to 3.4.0 (#218) Bumps [uuid](https://github.com/uuidjs/uuid) from 3.3.3 to 3.4.0. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v3.3.3...v3.4.0) Signed-off-by: dependabot-preview[bot] * Bump restify-errors from 5.0.0 to 8.0.2 (#217) Bumps [restify-errors](https://github.com/restify/errors) from 5.0.0 to 8.0.2. - [Release notes](https://github.com/restify/errors/releases) - [Changelog](https://github.com/restify/errors/blob/master/CHANGELOG.md) - [Commits](https://github.com/restify/errors/compare/v5.0.0...v8.0.2) Signed-off-by: dependabot-preview[bot] * Bump mocha from 6.2.2 to 7.0.1 (#216) Bumps [mocha](https://github.com/mochajs/mocha) from 6.2.2 to 7.0.1. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v6.2.2...v7.0.1) Signed-off-by: dependabot-preview[bot] * Bump simple-statistics from 7.0.7 to 7.0.8 (#219) Bumps [simple-statistics](https://github.com/simple-statistics/simple-statistics) from 7.0.7 to 7.0.8. - [Release notes](https://github.com/simple-statistics/simple-statistics/releases) - [Changelog](https://github.com/simple-statistics/simple-statistics/blob/master/CHANGELOG.md) - [Commits](https://github.com/simple-statistics/simple-statistics/compare/v7.0.7...v7.0.8) Signed-off-by: dependabot-preview[bot] * v9 (#220) * v0.0.14 * bump api-models version * update changelog Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape Co-authored-by: Felix Erdmann Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape * Bump acorn from 7.1.0 to 7.1.1 (#251) Bumps [acorn](https://github.com/acornjs/acorn) from 7.1.0 to 7.1.1. - [Release notes](https://github.com/acornjs/acorn/releases) - [Commits](https://github.com/acornjs/acorn/compare/7.1.0...7.1.1) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * test catching error? * tests * no log * v0.0.16-beta * use models 0.0.16-beta with TTN IDs * v0.0.0 * just an empty push * Update @sensebox/node-sketch-templater to v1.7.0-beta2 * v0.0.16-beta.2 * use @sensebox/opensensemap-api-models 0.0.16-beta.2 * undo mistakes and run yarn * v0.0.16-beta.3 * update @sensebox/opensensemap-api-models * Update @sensebox/node-sketch-templater to v1.7.0 * v0.0.17 * v0.0.18 * v0.0.19 * v0.0.20 * update @sensebox/opensensemap-api-models to v0.0.20 Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: umut0 * Resolve conflicts (#279) * v9.1 (#243) * Bump config from 3.2.4 to 3.2.5 Bumps [config](https://github.com/lorenwest/node-config) from 3.2.4 to 3.2.5. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * [Security] Bump lodash from 4.17.4 to 4.17.15 (#210) Bumps [lodash](https://github.com/lodash/lodash) from 4.17.4 to 4.17.15. **This update includes security fixes.** - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.4...4.17.15) Signed-off-by: dependabot-preview[bot] * Bump got from 10.2.2 to 10.4.0 (#214) Bumps [got](https://github.com/sindresorhus/got) from 10.2.2 to 10.4.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.2.2...v10.4.0) Signed-off-by: dependabot-preview[bot] * Bump csv-parse from 4.8.3 to 4.8.5 (#211) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.3 to 4.8.5. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.3...v4.8.5) Signed-off-by: dependabot-preview[bot] * Bump uuid from 3.3.3 to 3.4.0 (#218) Bumps [uuid](https://github.com/uuidjs/uuid) from 3.3.3 to 3.4.0. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v3.3.3...v3.4.0) Signed-off-by: dependabot-preview[bot] * Bump restify-errors from 5.0.0 to 8.0.2 (#217) Bumps [restify-errors](https://github.com/restify/errors) from 5.0.0 to 8.0.2. - [Release notes](https://github.com/restify/errors/releases) - [Changelog](https://github.com/restify/errors/blob/master/CHANGELOG.md) - [Commits](https://github.com/restify/errors/compare/v5.0.0...v8.0.2) Signed-off-by: dependabot-preview[bot] * Bump mocha from 6.2.2 to 7.0.1 (#216) Bumps [mocha](https://github.com/mochajs/mocha) from 6.2.2 to 7.0.1. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v6.2.2...v7.0.1) Signed-off-by: dependabot-preview[bot] * Bump simple-statistics from 7.0.7 to 7.0.8 (#219) Bumps [simple-statistics](https://github.com/simple-statistics/simple-statistics) from 7.0.7 to 7.0.8. - [Release notes](https://github.com/simple-statistics/simple-statistics/releases) - [Changelog](https://github.com/simple-statistics/simple-statistics/blob/master/CHANGELOG.md) - [Commits](https://github.com/simple-statistics/simple-statistics/compare/v7.0.7...v7.0.8) Signed-off-by: dependabot-preview[bot] * v9 (#220) * v0.0.14 * bump api-models version * update changelog * Bump bcrypt from 3.0.7 to 3.0.8 (#222) Bumps [bcrypt](https://github.com/kelektiv/node.bcrypt.js) from 3.0.7 to 3.0.8. - [Release notes](https://github.com/kelektiv/node.bcrypt.js/releases) - [Changelog](https://github.com/kelektiv/node.bcrypt.js/blob/master/CHANGELOG.md) - [Commits](https://github.com/kelektiv/node.bcrypt.js/compare/v3.0.7...v3.0.8) Signed-off-by: dependabot-preview[bot] * Bump got from 10.4.0 to 10.5.0 (#223) Bumps [got](https://github.com/sindresorhus/got) from 10.4.0 to 10.5.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.4.0...v10.5.0) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.0 to 10.5.2 (#224) Bumps [got](https://github.com/sindresorhus/got) from 10.5.0 to 10.5.2. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.0...v10.5.2) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.2 to 10.5.3 (#225) Bumps [got](https://github.com/sindresorhus/got) from 10.5.2 to 10.5.3. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.2...v10.5.3) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.3 to 10.5.4 (#226) Bumps [got](https://github.com/sindresorhus/got) from 10.5.3 to 10.5.4. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.3...v10.5.4) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.4 to 10.5.5 (#227) Bumps [got](https://github.com/sindresorhus/got) from 10.5.4 to 10.5.5. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.4...v10.5.5) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.5 to 10.5.6 (#228) Bumps [got](https://github.com/sindresorhus/got) from 10.5.5 to 10.5.6. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.5...v10.5.6) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.6 to 10.5.7 (#229) Bumps [got](https://github.com/sindresorhus/got) from 10.5.6 to 10.5.7. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.6...v10.5.7) Signed-off-by: dependabot-preview[bot] * Bump got from 10.5.7 to 10.6.0 (#230) Bumps [got](https://github.com/sindresorhus/got) from 10.5.7 to 10.6.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.5.7...v10.6.0) Signed-off-by: dependabot-preview[bot] * Bump config from 3.2.5 to 3.2.6 (#232) Bumps [config](https://github.com/lorenwest/node-config) from 3.2.5 to 3.2.6. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * Bump csv-parse from 4.8.5 to 4.8.6 (#233) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.5 to 4.8.6. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.5...v4.8.6) Signed-off-by: dependabot-preview[bot] * bump node-sketch-templater version (#234) * Bump models version (#236) * v0.0.15 * bump opensensemap-api-models version * Bump uuid from 3.4.0 to 7.0.0 (#237) * Bump uuid from 3.4.0 to 7.0.0 Bumps [uuid](https://github.com/uuidjs/uuid) from 3.4.0 to 7.0.0. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v3.4.0...v7.0.0) Signed-off-by: dependabot-preview[bot] * fix uuid usage for 7.0.0 Co-authored-by: Gerald Pape * Bump @sensebox/sketch-templater from 1.5.4 to 1.5.5 (#238) Bumps [@sensebox/sketch-templater](https://github.com/sensebox/node-sketch-templater) from 1.5.4 to 1.5.5. - [Release notes](https://github.com/sensebox/node-sketch-templater/releases) - [Changelog](https://github.com/sensebox/node-sketch-templater/blob/master/CHANGELOG.md) - [Commits](https://github.com/sensebox/node-sketch-templater/compare/v1.5.4...v1.5.5) Signed-off-by: dependabot-preview[bot] * bump opensensemap-api-models version (#239) * Bump uuid from 7.0.0 to 7.0.1 (#240) Bumps [uuid](https://github.com/uuidjs/uuid) from 7.0.0 to 7.0.1. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v7.0.0...v7.0.1) Signed-off-by: dependabot-preview[bot] * Bump mocha from 7.0.1 to 7.1.0 (#241) Bumps [mocha](https://github.com/mochajs/mocha) from 7.0.1 to 7.1.0. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v7.0.1...v7.1.0) Signed-off-by: dependabot-preview[bot] * Bump config from 3.2.6 to 3.3.0 (#242) Bumps [config](https://github.com/lorenwest/node-config) from 3.2.6 to 3.3.0. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * Merge master in development (#244) * v0.0.14 * v9 (#221) * Bump config from 3.2.4 to 3.2.5 Bumps [config](https://github.com/lorenwest/node-config) from 3.2.4 to 3.2.5. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * [Security] Bump lodash from 4.17.4 to 4.17.15 (#210) Bumps [lodash](https://github.com/lodash/lodash) from 4.17.4 to 4.17.15. **This update includes security fixes.** - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.4...4.17.15) Signed-off-by: dependabot-preview[bot] * Bump got from 10.2.2 to 10.4.0 (#214) Bumps [got](https://github.com/sindresorhus/got) from 10.2.2 to 10.4.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.2.2...v10.4.0) Signed-off-by: dependabot-preview[bot] * Bump csv-parse from 4.8.3 to 4.8.5 (#211) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.3 to 4.8.5. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.3...v4.8.5) Signed-off-by: dependabot-preview[bot] * Bump uuid from 3.3.3 to 3.4.0 (#218) Bumps [uuid](https://github.com/uuidjs/uuid) from 3.3.3 to 3.4.0. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v3.3.3...v3.4.0) Signed-off-by: dependabot-preview[bot] * Bump restify-errors from 5.0.0 to 8.0.2 (#217) Bumps [restify-errors](https://github.com/restify/errors) from 5.0.0 to 8.0.2. - [Release notes](https://github.com/restify/errors/releases) - [Changelog](https://github.com/restify/errors/blob/master/CHANGELOG.md) - [Commits](https://github.com/restify/errors/compare/v5.0.0...v8.0.2) Signed-off-by: dependabot-preview[bot] * Bump mocha from 6.2.2 to 7.0.1 (#216) Bumps [mocha](https://github.com/mochajs/mocha) from 6.2.2 to 7.0.1. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v6.2.2...v7.0.1) Signed-off-by: dependabot-preview[bot] * Bump simple-statistics from 7.0.7 to 7.0.8 (#219) Bumps [simple-statistics](https://github.com/simple-statistics/simple-statistics) from 7.0.7 to 7.0.8. - [Release notes](https://github.com/simple-statistics/simple-statistics/releases) - [Changelog](https://github.com/simple-statistics/simple-statistics/blob/master/CHANGELOG.md) - [Commits](https://github.com/simple-statistics/simple-statistics/compare/v7.0.7...v7.0.8) Signed-off-by: dependabot-preview[bot] * v9 (#220) * v0.0.14 * bump api-models version * update changelog Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape * Fix development (#245) * v0.0.14 * v9 (#221) * Bump config from 3.2.4 to 3.2.5 Bumps [config](https://github.com/lorenwest/node-config) from 3.2.4 to 3.2.5. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] * [Security] Bump lodash from 4.17.4 to 4.17.15 (#210) Bumps [lodash](https://github.com/lodash/lodash) from 4.17.4 to 4.17.15. **This update includes security fixes.** - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.4...4.17.15) Signed-off-by: dependabot-preview[bot] * Bump got from 10.2.2 to 10.4.0 (#214) Bumps [got](https://github.com/sindresorhus/got) from 10.2.2 to 10.4.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v10.2.2...v10.4.0) Signed-off-by: dependabot-preview[bot] * Bump csv-parse from 4.8.3 to 4.8.5 (#211) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.8.3 to 4.8.5. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.8.3...v4.8.5) Signed-off-by: dependabot-preview[bot] * Bump uuid from 3.3.3 to 3.4.0 (#218) Bumps [uuid](https://github.com/uuidjs/uuid) from 3.3.3 to 3.4.0. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v3.3.3...v3.4.0) Signed-off-by: dependabot-preview[bot] * Bump restify-errors from 5.0.0 to 8.0.2 (#217) Bumps [restify-errors](https://github.com/restify/errors) from 5.0.0 to 8.0.2. - [Release notes](https://github.com/restify/errors/releases) - [Changelog](https://github.com/restify/errors/blob/master/CHANGELOG.md) - [Commits](https://github.com/restify/errors/compare/v5.0.0...v8.0.2) Signed-off-by: dependabot-preview[bot] * Bump mocha from 6.2.2 to 7.0.1 (#216) Bumps [mocha](https://github.com/mochajs/mocha) from 6.2.2 to 7.0.1. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v6.2.2...v7.0.1) Signed-off-by: dependabot-preview[bot] * Bump simple-statistics from 7.0.7 to 7.0.8 (#219) Bumps [simple-statistics](https://github.com/simple-statistics/simple-statistics) from 7.0.7 to 7.0.8. - [Release notes](https://github.com/simple-statistics/simple-statistics/releases) - [Changelog](https://github.com/simple-statistics/simple-statistics/blob/master/CHANGELOG.md) - [Commits](https://github.com/simple-statistics/simple-statistics/compare/v7.0.7...v7.0.8) Signed-off-by: dependabot-preview[bot] * v9 (#220) * v0.0.14 * bump api-models version * update changelog Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape Co-authored-by: Felix Erdmann Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape * Bump acorn from 7.1.0 to 7.1.1 (#251) Bumps [acorn](https://github.com/acornjs/acorn) from 7.1.0 to 7.1.1. - [Release notes](https://github.com/acornjs/acorn/releases) - [Commits](https://github.com/acornjs/acorn/compare/7.1.0...7.1.1) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * update CHANGELOG.md * Bump got from 11.0.2 to 11.0.3 (#281) Bumps [got](https://github.com/sindresorhus/got) from 11.0.2 to 11.0.3. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v11.0.2...v11.0.3) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump moment from 2.24.0 to 2.25.2 (#286) Bumps [moment](https://github.com/moment/moment) from 2.24.0 to 2.25.2. - [Release notes](https://github.com/moment/moment/releases) - [Changelog](https://github.com/moment/moment/blob/develop/CHANGELOG.md) - [Commits](https://github.com/moment/moment/compare/2.24.0...2.25.2) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump moment from 2.25.2 to … Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Felix Erdmann Co-authored-by: felixerdy Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: umut0 --- .../lib/controllers/measurementsController.js | 34 ++++++++++- packages/api/lib/helpers/userParamHelpers.js | 2 + packages/api/lib/routes.js | 1 + packages/models/package.json | 2 +- tests/data/boxSensorsSchema.js | 56 +++++++++++++++++++ tests/data/sensorSchema.js | 41 ++++++++++++++ tests/tests/007-download-data-test.js | 30 +++++++++- yarn.lock | 46 +++++++++++++++ 8 files changed, 207 insertions(+), 5 deletions(-) create mode 100644 tests/data/boxSensorsSchema.js create mode 100644 tests/data/sensorSchema.js diff --git a/packages/api/lib/controllers/measurementsController.js b/packages/api/lib/controllers/measurementsController.js index 0aa1a04b..7f56bc24 100644 --- a/packages/api/lib/controllers/measurementsController.js +++ b/packages/api/lib/controllers/measurementsController.js @@ -11,7 +11,7 @@ const handleError = require('../helpers/errorHandler'), OutlierTransformer = require('../transformers/outlierTransformer'), jsonstringify = require('stringify-stream'), - { UnauthorizedError } = require('restify-errors'); + { UnauthorizedError, NotFoundError } = require('restify-errors'); /** * @api {get} /boxes/:senseBoxId/sensors Get latest measurements of a senseBox @@ -20,11 +20,38 @@ const * @apiName getLatestMeasurements * @apiUse BoxIdParam */ +/** + * @api {get} /boxes/:senseBoxId/sensors/:sensorId Get latest measurements of a sensor + * @apiDescription Get the latest measurements of a sensor. + * @apiGroup Measurements + * @apiName getLatestMeasurementOfSensor + * @apiUse BoxIdParam + * @apiUse SensorIdParam + */ const getLatestMeasurements = async function getLatestMeasurements (req, res, next) { + const { _userParams: params } = req; + + let box; + try { - res.send(await Box.findBoxById(req._userParams.boxId, { onlyLastMeasurements: true })); + box = await Box.findBoxById(req._userParams.boxId, { onlyLastMeasurements: true }); } catch (err) { handleError(err, next); + + return; + } + + if (params.sensorId) { + const sensor = box.sensors.find(s => s._id.equals(params.sensorId)); + if (sensor) { + res.send(sensor); + + return; + } + + res.send(new NotFoundError(`Sensor with id ${params.sensorId} does not exist`)); + } else { + res.send(box); } }; @@ -360,7 +387,8 @@ module.exports = { ], getLatestMeasurements: [ retrieveParameters([ - { predef: 'boxId', required: true } + { predef: 'boxId', required: true }, + { predef: 'sensorId' }, ]), getLatestMeasurements ] diff --git a/packages/api/lib/helpers/userParamHelpers.js b/packages/api/lib/helpers/userParamHelpers.js index 2459ab0f..b04f2b2d 100644 --- a/packages/api/lib/helpers/userParamHelpers.js +++ b/packages/api/lib/helpers/userParamHelpers.js @@ -54,6 +54,7 @@ const stringParser = function stringParser (s) { try { return s ? s.toString().trim() : s; } catch (err) { + // eslint-disable-next-line no-console console.log('toString', err); } }; @@ -189,6 +190,7 @@ const castParam = function castParam (param, paramDataType, dataTypeIsArray) { for (let i = 0, len = param.length; i < len; i++) { // also use parser for mapping if (!param[i]) { + // eslint-disable-next-line no-console console.log('PARAM NOT DEFINED', param, i); } param[i] = parser(param[i]); diff --git a/packages/api/lib/routes.js b/packages/api/lib/routes.js index 372a69a1..e93aca3a 100644 --- a/packages/api/lib/routes.js +++ b/packages/api/lib/routes.js @@ -80,6 +80,7 @@ const routes = { { path: `${boxesPath}/data`, method: 'get', handler: measurementsController.getDataMulti, reference: 'api-Measurements-getDataMulti' }, { path: `${boxesPath}/:boxId`, method: 'get', handler: boxesController.getBox, reference: 'api-Boxes-getBox' }, { path: `${boxesPath}/:boxId/sensors`, method: 'get', handler: measurementsController.getLatestMeasurements, reference: 'api-Measurements-getLatestMeasurements' }, + { path: `${boxesPath}/:boxId/sensors/:sensorId`, method: 'get', handler: measurementsController.getLatestMeasurements, reference: 'api-Measurements-getLatestMeasurementOfSensor' }, { path: `${boxesPath}/:boxId/data/:sensorId`, method: 'get', handler: measurementsController.getData, reference: 'api-Measurements-getData' }, { path: `${boxesPath}/:boxId/locations`, method: 'get', handler: boxesController.getBoxLocations, reference: 'api-Measurements-getLocations' }, { path: `${boxesPath}/data`, method: 'post', handler: measurementsController.getDataMulti, reference: 'api-Measurements-getDataMulti' }, diff --git a/packages/models/package.json b/packages/models/package.json index 09ffaef8..0b76a451 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -8,7 +8,7 @@ "@sensebox/osem-protos": "^1.1.0", "@sensebox/sketch-templater": "^1.8.2", "bcrypt": "^5.0.0", - "bunyan": "^1.8.12", + "bunyan": "^1.8.14", "config": "^3.3.1", "got": "^11.6.0", "grpc": "^1.24.3", diff --git a/tests/data/boxSensorsSchema.js b/tests/data/boxSensorsSchema.js new file mode 100644 index 00000000..5501c019 --- /dev/null +++ b/tests/data/boxSensorsSchema.js @@ -0,0 +1,56 @@ +'use strict'; + +module.exports = { + '$schema': 'http://json-schema.org/draft-04/schema#', + 'type': 'object', + 'properties': { + '_id': { + 'type': 'string' + }, + 'sensors': { + 'type': 'array', + 'items': { + 'type': 'object', + 'properties': { + 'title': { + 'type': 'string' + }, + 'unit': { + 'type': 'string' + }, + 'sensorType': { + 'type': 'string' + }, + '_id': { + 'type': 'string' + }, + 'lastMeasurement': { + 'type': 'object', + 'properties': { + 'value': { + 'type': 'string' + }, + 'createdAt': { + 'type': 'string' + } + }, + 'required': [ + 'value', + 'createdAt' + ] + } + }, + 'required': [ + 'title', + 'unit', + 'sensorType', + '_id' + ] + } + }, + }, + 'required': [ + '_id', + 'sensors' + ] +}; diff --git a/tests/data/sensorSchema.js b/tests/data/sensorSchema.js new file mode 100644 index 00000000..c53f3481 --- /dev/null +++ b/tests/data/sensorSchema.js @@ -0,0 +1,41 @@ +'use strict'; + +module.exports = { + '$schema': 'http://json-schema.org/draft-04/schema#', + 'type': 'object', + 'properties': { + 'title': { + 'type': 'string' + }, + 'unit': { + 'type': 'string' + }, + 'sensorType': { + 'type': 'string' + }, + '_id': { + 'type': 'string' + }, + 'lastMeasurement': { + 'type': 'object', + 'properties': { + 'value': { + 'type': 'string' + }, + 'createdAt': { + 'type': 'string' + } + }, + 'required': [ + 'value', + 'createdAt' + ] + } + }, + 'required': [ + 'title', + 'unit', + 'sensorType', + '_id' + ] +}; diff --git a/tests/tests/007-download-data-test.js b/tests/tests/007-download-data-test.js index 5543b513..a11f1b1c 100644 --- a/tests/tests/007-download-data-test.js +++ b/tests/tests/007-download-data-test.js @@ -10,7 +10,9 @@ const BASE_URL = process.env.OSEM_TEST_BASE_URL, findAllSchema = require('../data/findAllSchema'), findAllSchemaBoxes = require('../data/findAllSchemaBoxes'), measurementsSchema = require('../data/measurementsSchema'), - getUserBoxesSchema = require('../data/getUserBoxesSchema'); + getUserBoxesSchema = require('../data/getUserBoxesSchema'), + boxSensorsSchema = require('../data/boxSensorsSchema'), + sensorSchema = require('../data/sensorSchema'); describe('downloading data', function () { let jwt; @@ -179,6 +181,32 @@ describe('downloading data', function () { }); + describe('/boxes/:boxid/sensors', function () { + + it('should return the sensors of a box for /boxes/:boxid/sensors GET', function () { + return chakram.get(`${BASE_URL}/boxes/${boxIds[0]}/sensors`) + .then(function (response) { + expect(response).to.have.status(200); + expect(response).to.have.header('content-type', 'application/json; charset=utf-8'); + expect(response).to.have.schema(boxSensorsSchema); + + return chakram.wait(); + }); + }); + + it('should return a single sensor of a box for /boxes/:boxid/sensors/:sensorId GET', function () { + return chakram.get(`${BASE_URL}/boxes/${boxes[0]._id}/sensors/${boxes[0].sensors[0]._id}`) + .then(function (response) { + expect(response).to.have.status(200); + expect(response).to.have.header('content-type', 'application/json; charset=utf-8'); + expect(response).to.have.schema(sensorSchema); + + return chakram.wait(); + }); + }); + + }); + describe('/boxes/:boxid/data/:sensorid', function () { it('should allow download data through /boxes/:boxid/data/:sensorid', function () { diff --git a/yarn.lock b/yarn.lock index 028bcac7..20803f04 100644 --- a/yarn.lock +++ b/yarn.lock @@ -452,6 +452,24 @@ bcrypt@^5.0.0: node-addon-api "^3.0.0" node-pre-gyp "0.15.0" +bcrypt@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/bcrypt/-/bcrypt-4.0.1.tgz#06e21e749a061020e4ff1283c1faa93187ac57fe" + integrity sha512-hSIZHkUxIDS5zA2o00Kf2O5RfVbQ888n54xQoF/eIaquU4uaLxK8vhhBdktd0B3n2MjkcAWzv4mnhogykBKOUQ== + dependencies: + node-addon-api "^2.0.0" + node-pre-gyp "0.14.0" + +binary-extensions@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.0.0.tgz#23c0df14f6a88077f5f986c0d167ec03c3d5537c" + integrity sha512-Phlt0plgpIIBOGTT/ehfFnbNlfsDEiqmzE2KRXoX1bLIlir4X/MR+zSyBEkL05ffWgnRSf/DXv+WrUAVr93/ow== + +binary-extensions@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.0.0.tgz#23c0df14f6a88077f5f986c0d167ec03c3d5537c" + integrity sha512-Phlt0plgpIIBOGTT/ehfFnbNlfsDEiqmzE2KRXoX1bLIlir4X/MR+zSyBEkL05ffWgnRSf/DXv+WrUAVr93/ow== + binary-extensions@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.0.0.tgz#23c0df14f6a88077f5f986c0d167ec03c3d5537c" @@ -2347,6 +2365,16 @@ minimist@^1.1.0, minimist@^1.2.0, minimist@^1.2.5: resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== +minimist@^1.2.5: + version "1.2.5" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" + integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== + +minimist@^1.2.5: + version "1.2.5" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" + integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== + minipass@^2.6.0, minipass@^2.8.6, minipass@^2.9.0: version "2.9.0" resolved "https://registry.yarnpkg.com/minipass/-/minipass-2.9.0.tgz#e713762e7d3e32fed803115cf93e04bca9fcc9a6" @@ -2557,6 +2585,24 @@ needle@^2.5.0: iconv-lite "^0.4.4" sax "^1.2.4" +needle@^2.5.0: + version "2.5.0" + resolved "https://registry.yarnpkg.com/needle/-/needle-2.5.0.tgz#e6fc4b3cc6c25caed7554bd613a5cf0bac8c31c0" + integrity sha512-o/qITSDR0JCyCKEQ1/1bnUXMmznxabbwi/Y4WwJElf+evwJNFNwIDMCCt5IigFVxgeGBJESLohGtIS9gEzo1fA== + dependencies: + debug "^3.2.6" + iconv-lite "^0.4.4" + sax "^1.2.4" + +needle@^2.5.0: + version "2.5.0" + resolved "https://registry.yarnpkg.com/needle/-/needle-2.5.0.tgz#e6fc4b3cc6c25caed7554bd613a5cf0bac8c31c0" + integrity sha512-o/qITSDR0JCyCKEQ1/1bnUXMmznxabbwi/Y4WwJElf+evwJNFNwIDMCCt5IigFVxgeGBJESLohGtIS9gEzo1fA== + dependencies: + debug "^3.2.6" + iconv-lite "^0.4.4" + sax "^1.2.4" + negotiator@^0.6.1: version "0.6.2" resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.2.tgz#feacf7ccf525a77ae9634436a64883ffeca346fb" From d6500f3bed3303544052bc85a4ae88094900007e Mon Sep 17 00:00:00 2001 From: Felix Erdmann Date: Fri, 4 Sep 2020 09:19:14 +0000 Subject: [PATCH 084/337] fix download in getData closes #325 (#349) --- packages/api/lib/controllers/measurementsController.js | 6 ++++-- tests/tests/007-download-data-test.js | 2 +- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/packages/api/lib/controllers/measurementsController.js b/packages/api/lib/controllers/measurementsController.js index 7f56bc24..7d7b6ef7 100644 --- a/packages/api/lib/controllers/measurementsController.js +++ b/packages/api/lib/controllers/measurementsController.js @@ -92,15 +92,17 @@ const getData = function getData (req, res, next) { let stringifier; // IDEA: add geojson point featurecollection format - if (format === 'csv' || (download === 'true')) { + if (format === 'csv') { res.header('Content-Type', 'text/csv'); - res.header('Content-Disposition', `attachment; filename=${sensorId}.${format}`); stringifier = csvStringifier(['createdAt', 'value'], delimiter); } else if (format === 'json') { res.header('Content-Type', 'application/json; charset=utf-8'); // IDEA: add geojson point featurecollection format stringifier = jsonstringify({ open: '[', close: ']' }, jsonLocationReplacer); } + if (download === 'true') { + res.header('Content-Disposition', `attachment; filename=${sensorId}.${format}`); + } let measurementsStream = Measurement.getMeasurementsStream(req._userParams) .on('error', function (err) { diff --git a/tests/tests/007-download-data-test.js b/tests/tests/007-download-data-test.js index a11f1b1c..914a337f 100644 --- a/tests/tests/007-download-data-test.js +++ b/tests/tests/007-download-data-test.js @@ -226,7 +226,7 @@ describe('downloading data', function () { }); it('should allow download data through /boxes/:boxid/data/:sensorid as csv', function () { - return chakram.get(`${BASE_URL}/boxes/${boxIds[0]}/data/${boxes[0].sensors[1]._id}?format=csv`) + return chakram.get(`${BASE_URL}/boxes/${boxIds[0]}/data/${boxes[0].sensors[1]._id}?format=csv&download=true`) .then(function (response) { expect(response).to.have.status(200); expect(response.body).not.to.be.empty; From ef7348cf5ef21352c680c55ad9e0494024e860fe Mon Sep 17 00:00:00 2001 From: Felix Erdmann Date: Fri, 4 Sep 2020 09:27:08 +0000 Subject: [PATCH 085/337] fix download in getData closes #325 (#349) (#350) --- packages/api/lib/controllers/measurementsController.js | 6 ++++-- tests/tests/007-download-data-test.js | 2 +- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/packages/api/lib/controllers/measurementsController.js b/packages/api/lib/controllers/measurementsController.js index 7f56bc24..7d7b6ef7 100644 --- a/packages/api/lib/controllers/measurementsController.js +++ b/packages/api/lib/controllers/measurementsController.js @@ -92,15 +92,17 @@ const getData = function getData (req, res, next) { let stringifier; // IDEA: add geojson point featurecollection format - if (format === 'csv' || (download === 'true')) { + if (format === 'csv') { res.header('Content-Type', 'text/csv'); - res.header('Content-Disposition', `attachment; filename=${sensorId}.${format}`); stringifier = csvStringifier(['createdAt', 'value'], delimiter); } else if (format === 'json') { res.header('Content-Type', 'application/json; charset=utf-8'); // IDEA: add geojson point featurecollection format stringifier = jsonstringify({ open: '[', close: ']' }, jsonLocationReplacer); } + if (download === 'true') { + res.header('Content-Disposition', `attachment; filename=${sensorId}.${format}`); + } let measurementsStream = Measurement.getMeasurementsStream(req._userParams) .on('error', function (err) { diff --git a/tests/tests/007-download-data-test.js b/tests/tests/007-download-data-test.js index a11f1b1c..914a337f 100644 --- a/tests/tests/007-download-data-test.js +++ b/tests/tests/007-download-data-test.js @@ -226,7 +226,7 @@ describe('downloading data', function () { }); it('should allow download data through /boxes/:boxid/data/:sensorid as csv', function () { - return chakram.get(`${BASE_URL}/boxes/${boxIds[0]}/data/${boxes[0].sensors[1]._id}?format=csv`) + return chakram.get(`${BASE_URL}/boxes/${boxIds[0]}/data/${boxes[0].sensors[1]._id}?format=csv&download=true`) .then(function (response) { expect(response).to.have.status(200); expect(response.body).not.to.be.empty; From 46f452690edc6e7a0c34f5183a7b1581ada880b3 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Tue, 8 Sep 2020 22:56:13 +0200 Subject: [PATCH 086/337] Bump simple-statistics from 7.2.0 to 7.3.0 (#352) Bumps [simple-statistics](https://github.com/simple-statistics/simple-statistics) from 7.2.0 to 7.3.0. - [Release notes](https://github.com/simple-statistics/simple-statistics/releases) - [Changelog](https://github.com/simple-statistics/simple-statistics/blob/master/CHANGELOG.md) - [Commits](https://github.com/simple-statistics/simple-statistics/compare/v7.2.0...v7.3.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> --- packages/api/package.json | 2 +- yarn.lock | 56 ++++----------------------------------- 2 files changed, 6 insertions(+), 52 deletions(-) diff --git a/packages/api/package.json b/packages/api/package.json index 40e6d2d0..24250502 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -33,7 +33,7 @@ "ms": "^2.1.1", "restify": "^5.2.0", "restify-errors": "^8.0.2", - "simple-statistics": "^7.2.0", + "simple-statistics": "^7.3.0", "stringify-stream": "^1.0.5", "uuid": "^7.0.3" }, diff --git a/yarn.lock b/yarn.lock index 20803f04..94456f18 100644 --- a/yarn.lock +++ b/yarn.lock @@ -452,24 +452,6 @@ bcrypt@^5.0.0: node-addon-api "^3.0.0" node-pre-gyp "0.15.0" -bcrypt@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/bcrypt/-/bcrypt-4.0.1.tgz#06e21e749a061020e4ff1283c1faa93187ac57fe" - integrity sha512-hSIZHkUxIDS5zA2o00Kf2O5RfVbQ888n54xQoF/eIaquU4uaLxK8vhhBdktd0B3n2MjkcAWzv4mnhogykBKOUQ== - dependencies: - node-addon-api "^2.0.0" - node-pre-gyp "0.14.0" - -binary-extensions@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.0.0.tgz#23c0df14f6a88077f5f986c0d167ec03c3d5537c" - integrity sha512-Phlt0plgpIIBOGTT/ehfFnbNlfsDEiqmzE2KRXoX1bLIlir4X/MR+zSyBEkL05ffWgnRSf/DXv+WrUAVr93/ow== - -binary-extensions@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.0.0.tgz#23c0df14f6a88077f5f986c0d167ec03c3d5537c" - integrity sha512-Phlt0plgpIIBOGTT/ehfFnbNlfsDEiqmzE2KRXoX1bLIlir4X/MR+zSyBEkL05ffWgnRSf/DXv+WrUAVr93/ow== - binary-extensions@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.0.0.tgz#23c0df14f6a88077f5f986c0d167ec03c3d5537c" @@ -533,7 +515,7 @@ buffer-shims@^1.0.0, buffer-shims@~1.0.0: resolved "https://registry.yarnpkg.com/buffer-shims/-/buffer-shims-1.0.0.tgz#9978ce317388c649ad8793028c3477ef044a8b51" integrity sha1-mXjOMXOIxkmth5MCjDR37wRKi1E= -bunyan@^1.8.1, bunyan@^1.8.12, bunyan@^1.8.14: +bunyan@^1.8.1, bunyan@^1.8.14: version "1.8.14" resolved "https://registry.yarnpkg.com/bunyan/-/bunyan-1.8.14.tgz#3d8c1afea7de158a5238c7cb8a66ab6b38dd45b4" integrity sha512-LlahJUxXzZLuw/hetUQJmRgZ1LF6+cr5TPpRj6jf327AsiIq2jhYEH4oqUUkVKTor+9w2BT3oxVwhzE5lw9tcg== @@ -2365,16 +2347,6 @@ minimist@^1.1.0, minimist@^1.2.0, minimist@^1.2.5: resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== -minimist@^1.2.5: - version "1.2.5" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" - integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== - -minimist@^1.2.5: - version "1.2.5" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" - integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== - minipass@^2.6.0, minipass@^2.8.6, minipass@^2.9.0: version "2.9.0" resolved "https://registry.yarnpkg.com/minipass/-/minipass-2.9.0.tgz#e713762e7d3e32fed803115cf93e04bca9fcc9a6" @@ -2585,24 +2557,6 @@ needle@^2.5.0: iconv-lite "^0.4.4" sax "^1.2.4" -needle@^2.5.0: - version "2.5.0" - resolved "https://registry.yarnpkg.com/needle/-/needle-2.5.0.tgz#e6fc4b3cc6c25caed7554bd613a5cf0bac8c31c0" - integrity sha512-o/qITSDR0JCyCKEQ1/1bnUXMmznxabbwi/Y4WwJElf+evwJNFNwIDMCCt5IigFVxgeGBJESLohGtIS9gEzo1fA== - dependencies: - debug "^3.2.6" - iconv-lite "^0.4.4" - sax "^1.2.4" - -needle@^2.5.0: - version "2.5.0" - resolved "https://registry.yarnpkg.com/needle/-/needle-2.5.0.tgz#e6fc4b3cc6c25caed7554bd613a5cf0bac8c31c0" - integrity sha512-o/qITSDR0JCyCKEQ1/1bnUXMmznxabbwi/Y4WwJElf+evwJNFNwIDMCCt5IigFVxgeGBJESLohGtIS9gEzo1fA== - dependencies: - debug "^3.2.6" - iconv-lite "^0.4.4" - sax "^1.2.4" - negotiator@^0.6.1: version "0.6.2" resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.2.tgz#feacf7ccf525a77ae9634436a64883ffeca346fb" @@ -3316,10 +3270,10 @@ signal-exit@^3.0.0, signal-exit@^3.0.2: resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.3.tgz#a1410c2edd8f077b08b4e253c8eacfcaf057461c" integrity sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA== -simple-statistics@^7.2.0: - version "7.2.0" - resolved "https://registry.yarnpkg.com/simple-statistics/-/simple-statistics-7.2.0.tgz#f6912250340d1f71ed9bb74755115cb741edea09" - integrity sha512-lx8tPifqqXcOYw7yW8uO/c+2p3CCozhxLXebDi2iYH4cTGF3sbnBmVFZzIpb3w1B3bjHvEfewfy0q85MpRM1dg== +simple-statistics@^7.3.0: + version "7.3.0" + resolved "https://registry.yarnpkg.com/simple-statistics/-/simple-statistics-7.3.0.tgz#e2835b17ada3a217886fad1ebc6f8175088bd501" + integrity sha512-eGZFLeolvspUYdGeDX7xN8eZONps4Os2W/l+7t7usgHTqc4M2sWIBx95hr4ZNlK6rQATypo8MfsORc/o56roQg== slice-ansi@^2.1.0: version "2.1.0" From fcaf7fdff4eb33e7fceb99b9dd993c22fa029361 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Thu, 10 Sep 2020 08:58:20 +0200 Subject: [PATCH 087/337] [Security] Bump bl from 1.2.2 to 1.2.3 (#353) Bumps [bl](https://github.com/rvagg/bl) from 1.2.2 to 1.2.3. **This update includes a security fix.** - [Release notes](https://github.com/rvagg/bl/releases) - [Commits](https://github.com/rvagg/bl/compare/v1.2.2...v1.2.3) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> --- yarn.lock | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/yarn.lock b/yarn.lock index 94456f18..9ed4f8e6 100644 --- a/yarn.lock +++ b/yarn.lock @@ -458,9 +458,9 @@ binary-extensions@^2.0.0: integrity sha512-Phlt0plgpIIBOGTT/ehfFnbNlfsDEiqmzE2KRXoX1bLIlir4X/MR+zSyBEkL05ffWgnRSf/DXv+WrUAVr93/ow== bl@^1.2.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/bl/-/bl-1.2.2.tgz#a160911717103c07410cef63ef51b397c025af9c" - integrity sha512-e8tQYnZodmebYDWGH7KMRvtzKXaJHx3BbilrgZCfvyLUYdKpK1t5PSPmpkny/SgiTSCnjfLW7v5rlONXVFkQEA== + version "1.2.3" + resolved "https://registry.yarnpkg.com/bl/-/bl-1.2.3.tgz#1e8dd80142eac80d7158c9dccc047fb620e035e7" + integrity sha512-pvcNpa0UU69UT341rO6AYy4FVAIkUHuZXRIWbq+zHnsVcRzDDjIAhGuuYoi0d//cwIwtt4pkpKycWEfjdV+vww== dependencies: readable-stream "^2.3.5" safe-buffer "^5.1.1" @@ -3209,9 +3209,9 @@ rxjs@^6.5.3: tslib "^1.9.0" safe-buffer@^5.0.1, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@~5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.0.tgz#b74daec49b1148f88c64b68d49b1e815c1f2f519" - integrity sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg== + version "5.2.1" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" + integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== safe-buffer@~5.1.0, safe-buffer@~5.1.1: version "5.1.2" From 4f985b80f1e974eb41781feab6036aacbe1e031e Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Fri, 11 Sep 2020 09:35:36 +0200 Subject: [PATCH 088/337] Bump got from 11.6.0 to 11.6.2 (#354) Bumps [got](https://github.com/sindresorhus/got) from 11.6.0 to 11.6.2. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v11.6.0...v11.6.2) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> --- packages/api/package.json | 2 +- packages/models/package.json | 2 +- yarn.lock | 8 ++++---- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/api/package.json b/packages/api/package.json index 24250502..fc01ffc2 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -24,7 +24,7 @@ "config": "^3.3.1", "csv-stringify": "^5.5.1", "dashify": "^2.0.0", - "got": "^11.6.0", + "got": "^11.6.2", "honeybadger": "^1.4.0", "isemail": "^3.0.0", "jsonwebtoken": "^8.1.0", diff --git a/packages/models/package.json b/packages/models/package.json index 0b76a451..e7a9b097 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -10,7 +10,7 @@ "bcrypt": "^5.0.0", "bunyan": "^1.8.14", "config": "^3.3.1", - "got": "^11.6.0", + "got": "^11.6.2", "grpc": "^1.24.3", "isemail": "^3.0.0", "jsonpath": "^1.0.0", diff --git a/yarn.lock b/yarn.lock index 9ed4f8e6..b6c2adbe 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1649,10 +1649,10 @@ globals@^12.1.0: dependencies: type-fest "^0.8.1" -got@^11.6.0: - version "11.6.0" - resolved "https://registry.yarnpkg.com/got/-/got-11.6.0.tgz#4978c78f3cbc3a45ee95381f8bb6efd1db1f4638" - integrity sha512-ErhWb4IUjQzJ3vGs3+RR12NWlBDDkRciFpAkQ1LPUxi6OnwhGj07gQxjPsyIk69s7qMihwKrKquV6VQq7JNYLA== +got@^11.6.2: + version "11.6.2" + resolved "https://registry.yarnpkg.com/got/-/got-11.6.2.tgz#79d7bb8c11df212b97f25565407a1f4ae73210ec" + integrity sha512-/21qgUePCeus29Jk7MEti8cgQUNXFSWfIevNIk4H7u1wmXNDrGPKPY6YsPY+o9CIT/a2DjCjRz0x1nM9FtS2/A== dependencies: "@sindresorhus/is" "^3.1.1" "@szmarczak/http-timer" "^4.0.5" From 326eacb8221d9cc3ee7e17c026ac9aeb1fcc2956 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 14 Sep 2020 08:57:39 +0200 Subject: [PATCH 089/337] Bump moment from 2.27.0 to 2.28.0 (#355) Bumps [moment](https://github.com/moment/moment) from 2.27.0 to 2.28.0. - [Release notes](https://github.com/moment/moment/releases) - [Changelog](https://github.com/moment/moment/blob/develop/CHANGELOG.md) - [Commits](https://github.com/moment/moment/compare/2.27.0...2.28.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> --- packages/api/package.json | 2 +- packages/models/package.json | 2 +- yarn.lock | 8 ++++---- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/api/package.json b/packages/api/package.json index fc01ffc2..e603d2b9 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -29,7 +29,7 @@ "isemail": "^3.0.0", "jsonwebtoken": "^8.1.0", "millify": "^3.3.0", - "moment": "^2.27.0", + "moment": "^2.28.0", "ms": "^2.1.1", "restify": "^5.2.0", "restify-errors": "^8.0.2", diff --git a/packages/models/package.json b/packages/models/package.json index e7a9b097..106cfef7 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -15,7 +15,7 @@ "isemail": "^3.0.0", "jsonpath": "^1.0.0", "lodash.isequal": "^4.5.0", - "moment": "^2.27.0", + "moment": "^2.28.0", "mongoose": "^4.13.6", "mongoose-timestamp": "^0.6", "uuid": "^7.0.3" diff --git a/yarn.lock b/yarn.lock index b6c2adbe..ec87d4f4 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2399,10 +2399,10 @@ mocha@^7.1.2: yargs-parser "13.1.2" yargs-unparser "1.6.0" -moment@^2.19.3, moment@^2.27.0: - version "2.27.0" - resolved "https://registry.yarnpkg.com/moment/-/moment-2.27.0.tgz#8bff4e3e26a236220dfe3e36de756b6ebaa0105d" - integrity sha512-al0MUK7cpIcglMv3YF13qSgdAIqxHTO7brRtaz3DlSULbqfazqkc5kEjNrLDOM7fsjshoFIihnU8snrP7zUvhQ== +moment@^2.19.3, moment@^2.28.0: + version "2.28.0" + resolved "https://registry.yarnpkg.com/moment/-/moment-2.28.0.tgz#cdfe73ce01327cee6537b0fafac2e0f21a237d75" + integrity sha512-Z5KOjYmnHyd/ukynmFd/WwyXHd7L4J9vTI/nn5Ap9AVUgaAE15VvQ9MOGmJJygEUklupqIrFnor/tjTwRU+tQw== mongodb-core@2.1.18: version "2.1.18" From c8d4980f4a6c25961e4945c2698f3e92fb80c4f7 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 21 Sep 2020 09:58:42 +0200 Subject: [PATCH 090/337] Bump got from 11.6.2 to 11.7.0 (#356) Bumps [got](https://github.com/sindresorhus/got) from 11.6.2 to 11.7.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v11.6.2...v11.7.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> --- packages/api/package.json | 2 +- packages/models/package.json | 2 +- yarn.lock | 8 ++++---- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/api/package.json b/packages/api/package.json index e603d2b9..ff4c2aae 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -24,7 +24,7 @@ "config": "^3.3.1", "csv-stringify": "^5.5.1", "dashify": "^2.0.0", - "got": "^11.6.2", + "got": "^11.7.0", "honeybadger": "^1.4.0", "isemail": "^3.0.0", "jsonwebtoken": "^8.1.0", diff --git a/packages/models/package.json b/packages/models/package.json index 106cfef7..99ee794e 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -10,7 +10,7 @@ "bcrypt": "^5.0.0", "bunyan": "^1.8.14", "config": "^3.3.1", - "got": "^11.6.2", + "got": "^11.7.0", "grpc": "^1.24.3", "isemail": "^3.0.0", "jsonpath": "^1.0.0", diff --git a/yarn.lock b/yarn.lock index ec87d4f4..7285941d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1649,10 +1649,10 @@ globals@^12.1.0: dependencies: type-fest "^0.8.1" -got@^11.6.2: - version "11.6.2" - resolved "https://registry.yarnpkg.com/got/-/got-11.6.2.tgz#79d7bb8c11df212b97f25565407a1f4ae73210ec" - integrity sha512-/21qgUePCeus29Jk7MEti8cgQUNXFSWfIevNIk4H7u1wmXNDrGPKPY6YsPY+o9CIT/a2DjCjRz0x1nM9FtS2/A== +got@^11.7.0: + version "11.7.0" + resolved "https://registry.yarnpkg.com/got/-/got-11.7.0.tgz#a386360305571a74548872e674932b4ef70d3b24" + integrity sha512-7en2XwH2MEqOsrK0xaKhbWibBoZqy+f1RSUoIeF1BLcnf+pyQdDsljWMfmOh+QKJwuvDIiKx38GtPh5wFdGGjg== dependencies: "@sindresorhus/is" "^3.1.1" "@szmarczak/http-timer" "^4.0.5" From c364ce35635f56e3558b1bbaf39fe8aeb2b48953 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Wed, 23 Sep 2020 12:09:47 +0200 Subject: [PATCH 091/337] Bump moment from 2.28.0 to 2.29.0 (#357) Bumps [moment](https://github.com/moment/moment) from 2.28.0 to 2.29.0. - [Release notes](https://github.com/moment/moment/releases) - [Changelog](https://github.com/moment/moment/blob/develop/CHANGELOG.md) - [Commits](https://github.com/moment/moment/compare/2.28.0...2.29.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> --- packages/api/package.json | 2 +- packages/models/package.json | 2 +- yarn.lock | 8 ++++---- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/api/package.json b/packages/api/package.json index ff4c2aae..622afa75 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -29,7 +29,7 @@ "isemail": "^3.0.0", "jsonwebtoken": "^8.1.0", "millify": "^3.3.0", - "moment": "^2.28.0", + "moment": "^2.29.0", "ms": "^2.1.1", "restify": "^5.2.0", "restify-errors": "^8.0.2", diff --git a/packages/models/package.json b/packages/models/package.json index 99ee794e..af4b3321 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -15,7 +15,7 @@ "isemail": "^3.0.0", "jsonpath": "^1.0.0", "lodash.isequal": "^4.5.0", - "moment": "^2.28.0", + "moment": "^2.29.0", "mongoose": "^4.13.6", "mongoose-timestamp": "^0.6", "uuid": "^7.0.3" diff --git a/yarn.lock b/yarn.lock index 7285941d..ee1bef64 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2399,10 +2399,10 @@ mocha@^7.1.2: yargs-parser "13.1.2" yargs-unparser "1.6.0" -moment@^2.19.3, moment@^2.28.0: - version "2.28.0" - resolved "https://registry.yarnpkg.com/moment/-/moment-2.28.0.tgz#cdfe73ce01327cee6537b0fafac2e0f21a237d75" - integrity sha512-Z5KOjYmnHyd/ukynmFd/WwyXHd7L4J9vTI/nn5Ap9AVUgaAE15VvQ9MOGmJJygEUklupqIrFnor/tjTwRU+tQw== +moment@^2.19.3, moment@^2.29.0: + version "2.29.0" + resolved "https://registry.yarnpkg.com/moment/-/moment-2.29.0.tgz#fcbef955844d91deb55438613ddcec56e86a3425" + integrity sha512-z6IJ5HXYiuxvFTI6eiQ9dm77uE0gyy1yXNApVHqTcnIKfY9tIwEjlzsZ6u1LQXvVgKeTnv9Xm7NDvJ7lso3MtA== mongodb-core@2.1.18: version "2.1.18" From dd057220f12437cfb74aefe802c5322b7adeedd7 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 28 Sep 2020 10:43:22 +0200 Subject: [PATCH 092/337] Bump config from 3.3.1 to 3.3.2 (#358) Bumps [config](https://github.com/lorenwest/node-config) from 3.3.1 to 3.3.2. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> --- packages/api/package.json | 2 +- packages/models/package.json | 2 +- yarn.lock | 8 ++++---- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/api/package.json b/packages/api/package.json index 622afa75..b8d8afe0 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -21,7 +21,7 @@ "@turf/triangle-grid": "^6.0.1", "apicache": "^1.4.0", "bunyan": "^1.8.14", - "config": "^3.3.1", + "config": "^3.3.2", "csv-stringify": "^5.5.1", "dashify": "^2.0.0", "got": "^11.7.0", diff --git a/packages/models/package.json b/packages/models/package.json index af4b3321..3b407296 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -9,7 +9,7 @@ "@sensebox/sketch-templater": "^1.8.2", "bcrypt": "^5.0.0", "bunyan": "^1.8.14", - "config": "^3.3.1", + "config": "^3.3.2", "got": "^11.7.0", "grpc": "^1.24.3", "isemail": "^3.0.0", diff --git a/yarn.lock b/yarn.lock index ee1bef64..f4ee00b7 100644 --- a/yarn.lock +++ b/yarn.lock @@ -812,10 +812,10 @@ config@^1.29.2: dependencies: json5 "^1.0.1" -config@^3.3.1: - version "3.3.1" - resolved "https://registry.yarnpkg.com/config/-/config-3.3.1.tgz#b6a70e2908a43b98ed20be7e367edf0cc8ed5a19" - integrity sha512-+2/KaaaAzdwUBE3jgZON11L1ggLLhpf2FsGrfqYFHZW22ySGv/HqYIXrBwKKvn+XZh1UBUjHwAcrfsSkSygT+Q== +config@^3.3.2: + version "3.3.2" + resolved "https://registry.yarnpkg.com/config/-/config-3.3.2.tgz#35be3846054340f0f79778b2445afffbc11867c7" + integrity sha512-NlGfBn2565YA44Irn7GV5KHlIGC3KJbf0062/zW5ddP9VXIuRj0m7HVyFAWvMZvaHPEglyGfwmevGz3KosIpCg== dependencies: json5 "^2.1.1" From ed66f00c3846442b1a27775b8cb8bcbe39f9de63 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Wed, 7 Oct 2020 16:38:56 +0200 Subject: [PATCH 093/337] Bump moment from 2.29.0 to 2.29.1 (#359) Bumps [moment](https://github.com/moment/moment) from 2.29.0 to 2.29.1. - [Release notes](https://github.com/moment/moment/releases) - [Changelog](https://github.com/moment/moment/blob/develop/CHANGELOG.md) - [Commits](https://github.com/moment/moment/compare/2.29.0...2.29.1) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> --- packages/api/package.json | 2 +- packages/models/package.json | 2 +- yarn.lock | 8 ++++---- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/api/package.json b/packages/api/package.json index b8d8afe0..78c9ddc9 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -29,7 +29,7 @@ "isemail": "^3.0.0", "jsonwebtoken": "^8.1.0", "millify": "^3.3.0", - "moment": "^2.29.0", + "moment": "^2.29.1", "ms": "^2.1.1", "restify": "^5.2.0", "restify-errors": "^8.0.2", diff --git a/packages/models/package.json b/packages/models/package.json index 3b407296..430ec535 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -15,7 +15,7 @@ "isemail": "^3.0.0", "jsonpath": "^1.0.0", "lodash.isequal": "^4.5.0", - "moment": "^2.29.0", + "moment": "^2.29.1", "mongoose": "^4.13.6", "mongoose-timestamp": "^0.6", "uuid": "^7.0.3" diff --git a/yarn.lock b/yarn.lock index f4ee00b7..7657572c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2399,10 +2399,10 @@ mocha@^7.1.2: yargs-parser "13.1.2" yargs-unparser "1.6.0" -moment@^2.19.3, moment@^2.29.0: - version "2.29.0" - resolved "https://registry.yarnpkg.com/moment/-/moment-2.29.0.tgz#fcbef955844d91deb55438613ddcec56e86a3425" - integrity sha512-z6IJ5HXYiuxvFTI6eiQ9dm77uE0gyy1yXNApVHqTcnIKfY9tIwEjlzsZ6u1LQXvVgKeTnv9Xm7NDvJ7lso3MtA== +moment@^2.19.3, moment@^2.29.1: + version "2.29.1" + resolved "https://registry.yarnpkg.com/moment/-/moment-2.29.1.tgz#b2be769fa31940be9eeea6469c075e35006fa3d3" + integrity sha512-kHmoybcPV8Sqy59DwNDY3Jefr64lK/by/da0ViFcuA4DH0vQg5Q6Ze5VimxkfQNSC+Mls/Kx53s7TjP1RhFEDQ== mongodb-core@2.1.18: version "2.1.18" From bb7d5e30902bc2b9d85fb3ce0a858fb69245d7b7 Mon Sep 17 00:00:00 2001 From: Felix Erdmann Date: Thu, 22 Oct 2020 11:19:02 +0200 Subject: [PATCH 094/337] Auth (#362) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * fix download in getData closes #325 (#349) (#350) * initial auth for boxes * auth for boxes that have not opt out * fix spelling * useAuth in updateBox * update access_token via generate_access_token * pass access_token to sketch templater * bump node-sketch-templater version (beta) * add authorization header anyways * auth beta * include useAuth in includeSecret requests * remove default true for useAuth, set true for new Boxes * update tests for auth feature, fix errors in auth code * add access_token to getSketch of newSketch email * update documentation 📜 * remove custom boxes from useAuth=true * add onlyValue in measurement controller * test for onlyValue feature * remove console.log Co-authored-by: Umut Tas --- .../api/lib/controllers/boxesController.js | 20 +++++-- .../lib/controllers/measurementsController.js | 27 ++++++++- packages/api/package.json | 2 +- packages/models/CHANGELOG.md | 3 + packages/models/package.json | 4 +- packages/models/src/box/box.js | 36 ++++++++++-- packages/models/src/user/mails.js | 32 ++++++----- tests/data/getUserBoxesSchema.js | 6 ++ tests/data/senseBoxSchema.js | 10 +++- tests/data/valid_sensebox.js | 1 - tests/tests/002-location_tests.js | 40 ++++++------- tests/tests/003-idw-test.js | 15 +++-- tests/tests/005-create-boxes-test.js | 1 - tests/tests/006-submit-measurements-test.js | 56 +++++++++++++------ tests/tests/007-download-data-test.js | 12 ++++ tests/tests/010-luftdaten-test.js | 1 - tests/tests/013-classify-test.js | 8 +-- .../tests/014-descriptive-statistics-test.js | 8 +-- tests/tests/016-hackair-test.js | 2 +- yarn.lock | 8 +-- 20 files changed, 203 insertions(+), 89 deletions(-) diff --git a/packages/api/lib/controllers/boxesController.js b/packages/api/lib/controllers/boxesController.js index 70f35aef..470ace31 100644 --- a/packages/api/lib/controllers/boxesController.js +++ b/packages/api/lib/controllers/boxesController.js @@ -384,6 +384,7 @@ const getBox = async function getBox (req, res, next) { * @apiParam (RequestBody) {String="hdc1080","bmp280","tsl45315","veml6070","sds011","bme680","smt50","soundlevelmeter", "windspeed"} [sensorTemplates] Specify which sensors should be included. * @apiParam (RequestBody) {Object} [mqtt] specify parameters of the MQTT integration for external measurement upload. Please see below for the accepted parameters * @apiParam (RequestBody) {Object} [ttn] specify parameters for the TTN integration for measurement from TheThingsNetwork.org upload. Please see below for the accepted parameters + * @apiParam (RequestBody) {Boolean="true","false"} [useAuth] whether to use access_token or not for authentication * * @apiUse LocationBody * @apiUse SensorBody @@ -424,7 +425,8 @@ const getSketch = async function getSketch (req, res, next) { res.header('Content-Type', 'text/plain; charset=utf-8'); try { const box = await Box.findBoxById(req._userParams.boxId, { populate: false, lean: false }); - res.send(box.getSketch({ + + const params = { serialPort: req._userParams.serialPort, soilDigitalPort: req._userParams.soilDigitalPort, soundMeterPort: req._userParams.soundMeterPort, @@ -434,7 +436,14 @@ const getSketch = async function getSketch (req, res, next) { devEUI: req._userParams.devEUI, appEUI: req._userParams.appEUI, appKey: req._userParams.appKey - })); + }; + + // pass access token only if useAuth is true and access_token is available + if (box.access_token) { + params.access_token = box.access_token; + } + + res.send(box.getSketch(params)); } catch (err) { handleError(err, next); } @@ -442,7 +451,7 @@ const getSketch = async function getSketch (req, res, next) { /** * @api {delete} /boxes/:senseBoxId Mark a senseBox and its measurements for deletion - * @apiDescription This will delete all the measurements of the senseBox. Please not that the deletion isn't happening immediately. + * @apiDescription This will delete all the measurements of the senseBox. Please note that the deletion isn't happening immediately. * @apiName deleteBox * @apiGroup Boxes * @apiUse ContentTypeJSON @@ -506,7 +515,9 @@ module.exports = { { name: 'ttn', dataType: 'object' }, { name: 'sensors', dataType: ['object'] }, { name: 'addons', dataType: 'object' }, - { predef: 'location' } + { predef: 'location' }, + { name: 'useAuth', allowedValues: ['true', 'false'] }, + { name: 'generate_access_token', allowedValues: ['true', 'false'] } ]), checkPrivilege, updateBox @@ -537,6 +548,7 @@ module.exports = { { name: 'windSpeedPort', dataType: 'String', defaultValue: 'C', allowedValues: ['A', 'B', 'C'] }, { name: 'mqtt', dataType: 'object' }, { name: 'ttn', dataType: 'object' }, + { name: 'useAuth', allowedValues: ['true', 'false'] }, { predef: 'location', required: true } ]), postNewBox diff --git a/packages/api/lib/controllers/measurementsController.js b/packages/api/lib/controllers/measurementsController.js index 7d7b6ef7..28cad558 100644 --- a/packages/api/lib/controllers/measurementsController.js +++ b/packages/api/lib/controllers/measurementsController.js @@ -27,6 +27,7 @@ const * @apiName getLatestMeasurementOfSensor * @apiUse BoxIdParam * @apiUse SensorIdParam + * @apiParam {Boolean="true","false"} [onlyValue] If set to true only returns the measured value without information about the sensor. Requires a sensorId. */ const getLatestMeasurements = async function getLatestMeasurements (req, res, next) { const { _userParams: params } = req; @@ -44,6 +45,14 @@ const getLatestMeasurements = async function getLatestMeasurements (req, res, ne if (params.sensorId) { const sensor = box.sensors.find(s => s._id.equals(params.sensorId)); if (sensor) { + if(params.onlyValue){ + if(!sensor.lastMeasurement){ + res.send(undefined); + return; + } + res.send(sensor.lastMeasurement.value); + return; + } res.send(sensor); return; @@ -210,12 +219,17 @@ const getDataMulti = async function getDataMulti (req, res, next) { * @apiParam (RequestBody) {String} value the measured value of the sensor. Also accepts JSON float numbers. * @apiParam (RequestBody) {RFC3339Date} [createdAt] the timestamp of the measurement. Should conform to RFC 3339. Is needed when posting with Location Values! * @apiParam (RequestBody) {Location} [location] the WGS84-coordinates of the measurement. + * @apiHeader {String} access_token Box' unique access_token. Will be used as authorization token if box has auth enabled (e.g. useAuth: true) */ const postNewMeasurement = async function postNewMeasurement (req, res, next) { const { boxId, sensorId, value, createdAt, location } = req._userParams; try { const box = await Box.findBoxById(boxId, { populate: false, lean: false }); + if (box.useAuth && box.access_token && box.access_token !== req.headers.authorization) { + throw new UnauthorizedError('Box access token not valid!'); + } + const [measurement] = await Measurement.decodeMeasurements([{ sensor_id: sensorId, value, @@ -263,6 +277,7 @@ const postNewMeasurement = async function postNewMeasurement (req, res, next) { * @apiUse LocationBody * @apiParam {String} [luftdaten] Specify whatever you want (like `luftdaten=1`. Signals the api to treat the incoming data as luftdaten.info formatted json. * * @apiParam {String} [hackair] Specify whatever you want (like `hackair=1`. Signals the api to treat the incoming data as hackair formatted json. + * @apiHeader {String} access_token Box' unique access_token. Will be used as authorization token if box has auth enabled (e.g. useAuth: true) * @apiParamExample {application/json} JSON-Object: * { * "sensorID": "value", @@ -319,10 +334,15 @@ const postNewMeasurements = async function postNewMeasurements (req, res, next) if (Measurement.hasDecoder(contentType)) { try { - const box = await Box.findBoxById(boxId, { populate: false, lean: false, projection: { sensors: 1, locations: 1, lastMeasurementAt: 1, currentLocation: 1, model: 1, access_token: 1 } }); + const box = await Box.findBoxById(boxId, { populate: false, lean: false, projection: { sensors: 1, locations: 1, lastMeasurementAt: 1, currentLocation: 1, model: 1, access_token: 1, useAuth: 1 } }); + + // if (contentType === 'hackair' && box.access_token !== req.headers.authorization) { + // throw new UnauthorizedError('Box access token not valid!'); + // } - if (contentType === 'hackair' && box.access_token !== req.headers.authorization) { - throw new UnauthorizedError('Access token not valid!'); + // authorization for all boxes that have not opt out + if ((box.useAuth || contentType === 'hackair') && box.access_token && box.access_token !== req.headers.authorization) { + throw new UnauthorizedError('Box access token not valid!'); } const measurements = await Measurement.decodeMeasurements(req.body, { contentType, sensors: box.sensors }); @@ -391,6 +411,7 @@ module.exports = { retrieveParameters([ { predef: 'boxId', required: true }, { predef: 'sensorId' }, + { name: 'onlyValue', required: false } ]), getLatestMeasurements ] diff --git a/packages/api/package.json b/packages/api/package.json index 78c9ddc9..6f74d8ad 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -10,7 +10,7 @@ "Norwin Roosen" ], "dependencies": { - "@sensebox/opensensemap-api-models": "^0.0.25", + "@sensebox/opensensemap-api-models": "^0.0.26-beta.0", "@turf/area": "^6.0.1", "@turf/bbox": "^6.0.1", "@turf/centroid": "^6.0.2", diff --git a/packages/models/CHANGELOG.md b/packages/models/CHANGELOG.md index f4098f85..a7fd73cb 100644 --- a/packages/models/CHANGELOG.md +++ b/packages/models/CHANGELOG.md @@ -2,6 +2,9 @@ ## Unreleased +## v0.0.26-beta.0 +- Authorization + ## v0.0.25 - Add Cayenne LPP Decoder diff --git a/packages/models/package.json b/packages/models/package.json index 430ec535..d6140885 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -1,12 +1,12 @@ { "name": "@sensebox/opensensemap-api-models", "description": "openSenseMap data models and database connection", - "version": "0.0.25", + "version": "0.0.26-beta.0", "main": "index.js", "license": "MIT", "dependencies": { "@sensebox/osem-protos": "^1.1.0", - "@sensebox/sketch-templater": "^1.8.2", + "@sensebox/sketch-templater": "^1.8.3-beta.0", "bcrypt": "^5.0.0", "bunyan": "^1.8.14", "config": "^3.3.2", diff --git a/packages/models/src/box/box.js b/packages/models/src/box/box.js index 6cfd82f8..ce863f2c 100644 --- a/packages/models/src/box/box.js +++ b/packages/models/src/box/box.js @@ -125,7 +125,12 @@ const boxSchema = new Schema({ }, access_token: { type: String, - required: false + required: true + }, + useAuth: { + type: Boolean, + required: true, + default: false, } }, { usePushEach: true }); boxSchema.plugin(timestamp); @@ -167,6 +172,7 @@ boxSchema.set('toJSON', { if (options && options.includeSecrets) { box.integrations = ret.integrations; box.access_token = ret.access_token; + box.useAuth = ret.useAuth; } return box; @@ -225,7 +231,8 @@ boxSchema.statics.initNew = function ({ } = { enabled: false }, ttn: { app_id, dev_id, port, profile, decodeOptions: ttnDecodeOptions - } = {} + } = {}, + useAuth }) { // if model is not empty, get sensor definitions from products // otherwise, sensors should not be empty @@ -244,6 +251,14 @@ boxSchema.statics.initNew = function ({ sensors = sensorLayouts.getSensorsForModel(model); } } + if(model){ + //activate useAuth only for certain models until all sketches are updated + if(['homeV2Lora' , 'homeV2Ethernet' , 'homeV2EthernetFeinstaub' , 'homeV2Wifi' , 'homeV2WifiFeinstaub' , 'homeEthernet' , 'homeWifi' , 'homeEthernetFeinstaub' , 'homeWifiFeinstaub' , 'hackair_home_v2'].indexOf(model) != -1){ + useAuth = true + } else { + useAuth = false + } + } const integrations = { mqtt: { enabled, url, topic, decodeOptions: mqttDecodeOptions, connectionOptions, messageFormat }, @@ -271,7 +286,8 @@ boxSchema.statics.initNew = function ({ model, sensors, integrations, - access_token + access_token, + useAuth }); }; @@ -801,7 +817,7 @@ boxSchema.methods.updateSensors = function updateSensors (sensors) { } }; -boxSchema.methods.getSketch = function getSketch ({ encoding, serialPort, soilDigitalPort, soundMeterPort, windSpeedPort, ssid, password, devEUI, appEUI, appKey } = {}) { +boxSchema.methods.getSketch = function getSketch ({ encoding, serialPort, soilDigitalPort, soundMeterPort, windSpeedPort, ssid, password, devEUI, appEUI, appKey, access_token } = {}) { if (serialPort) { this.serialPort = serialPort; } @@ -820,6 +836,7 @@ boxSchema.methods.getSketch = function getSketch ({ encoding, serialPort, soilDi this.devEUI = devEUI; this.appEUI = appEUI, this.appKey = appKey; + this.access_token = access_token; return templateSketcher.generateSketch(this, { encoding }); }; @@ -860,12 +877,21 @@ boxSchema.methods.updateBox = function updateBox (args) { const box = this; // only grouptag, description and weblink can removed through setting them to empty string ('') - for (const prop of ['name', 'exposure', 'grouptag', 'description', 'weblink', 'image', 'integrations.mqtt', 'integrations.ttn', 'model']) { + for (const prop of ['name', 'exposure', 'grouptag', 'description', 'weblink', 'image', 'integrations.mqtt', 'integrations.ttn', 'model', 'useAuth']) { if (typeof args[prop] !== 'undefined') { box.set(prop, (args[prop] === '' ? undefined : args[prop])); } } + // if user wants a new access_token + if (typeof args['generate_access_token'] !== 'undefined') { + if (args['generate_access_token'] == 'true') { + // Create new acces token for box + const access_token = crypto.randomBytes(32).toString('hex'); + box.set('access_token', access_token); + } + } + if (sensors) { box.updateSensors(sensors); } else if (addonToAdd) { diff --git a/packages/models/src/user/mails.js b/packages/models/src/user/mails.js index 8650b6ef..06099518 100644 --- a/packages/models/src/user/mails.js +++ b/packages/models/src/user/mails.js @@ -18,24 +18,30 @@ if (config.get('mailer.url')) { const mailTemplates = { 'newBox' (user, box) { + let sketchParams = { + encoding: 'base64', + ssid: '', + password: '', + serialPort: box.serialPort, + soilDigitalPort: box.soilDigitalPort, + soundMeterPort: box.soundMeterPort, + windSpeedPort: box.windSpeedPort, + devEUI: '', + appEUI: '', + appKey: '' + } + + if(box.access_token) { + sketchParams.access_token = box.access_token + } + return { payload: { box }, attachment: { filename: 'senseBox.ino', - contents: box.getSketch({ - encoding: 'base64', - ssid: '', - password: '', - serialPort: box.serialPort, - soilDigitalPort: box.soilDigitalPort, - soundMeterPort: box.soundMeterPort, - windSpeedPort: box.windSpeedPort, - devEUI: '', - appEUI: '', - appKey: '' - }) + contents: box.getSketch(sketchParams) } }; }, @@ -112,7 +118,7 @@ if (config.get('mailer.url')) { }, attachment: { filename: 'senseBox.ino', - contents: box.getSketch({ encoding: 'base64' }) + contents: box.getSketch({ encoding: 'base64', access_token: box.access_token }) } }; }, diff --git a/tests/data/getUserBoxesSchema.js b/tests/data/getUserBoxesSchema.js index 9a506e85..9770b6ea 100644 --- a/tests/data/getUserBoxesSchema.js +++ b/tests/data/getUserBoxesSchema.js @@ -30,6 +30,12 @@ module.exports = { 'updatedAt': { 'type': 'string' }, + 'useAuth': { + 'type': 'boolean' + }, + 'access_token': { + 'type': 'string' + }, 'currentLocation': { 'type': 'object', 'properties': { diff --git a/tests/data/senseBoxSchema.js b/tests/data/senseBoxSchema.js index fdfc5be3..fd578d99 100644 --- a/tests/data/senseBoxSchema.js +++ b/tests/data/senseBoxSchema.js @@ -31,6 +31,12 @@ module.exports = { 'image': { 'type': 'string' }, + 'useAuth': { + 'type': "boolean" + }, + 'access_token': { + 'type': "string" + }, 'sensors': { 'type': 'array', 'items': { @@ -115,6 +121,8 @@ module.exports = { 'exposure', 'sensors', 'currentLocation', - 'loc' + 'loc', + // 'useAuth', + // 'access_token' ] }; diff --git a/tests/data/valid_sensebox.js b/tests/data/valid_sensebox.js index 3c2173be..9082a72b 100644 --- a/tests/data/valid_sensebox.js +++ b/tests/data/valid_sensebox.js @@ -35,7 +35,6 @@ module.exports = function ({ bbox, model, sensors, lonlat, name = '', sensorTemp 'connectionOptions': '' } }; - if (sensors) { box.sensors = sensors; } diff --git a/tests/tests/002-location_tests.js b/tests/tests/002-location_tests.js index 33298a3a..271e6809 100644 --- a/tests/tests/002-location_tests.js +++ b/tests/tests/002-location_tests.js @@ -24,7 +24,7 @@ const minimalSensebox = function minimalSensebox (location = [123, 12, 34], expo }; describe('openSenseMap API locations tests', function () { - let authHeader, box, submitTimeLoc1; + let authHeader, authHeaderBox, csvAndAuthHeader, box, submitTimeLoc1; before('add test user', function (done) { const user = { name: 'locationtestuser', email: 'locationtestuser@test.test', password: '12345678' }; @@ -110,6 +110,8 @@ describe('openSenseMap API locations tests', function () { expect(moment().diff(response.body.data.currentLocation.timestamp)).to.be.below(300); box = response.body.data; + authHeaderBox = { headers: { 'Authorization': `${response.body.data.access_token}` } }; + csvAndAuthHeader = { json: false, headers: { 'Content-Type': 'text/csv', 'Authorization': response.body.data.access_token } }; return chakram.wait(); }); @@ -290,7 +292,7 @@ describe('openSenseMap API locations tests', function () { it('should allow updating a boxes location via new measurement (array)', function () { const measurement = { value: 3, location: [3, 3, 3] }; - return chakram.post(POST_MEASUREMENT_URL, measurement, authHeader) + return chakram.post(POST_MEASUREMENT_URL, measurement, authHeaderBox) .then(logResponseIfError) .then(function (response) { expect(response).to.have.status(201); @@ -310,7 +312,7 @@ describe('openSenseMap API locations tests', function () { it('should allow updating a boxes location via new measurement (latLng)', function () { const measurement = { value: 4, location: { lat: 4, lng: 4, height: 4 } }; - return chakram.post(POST_MEASUREMENT_URL, measurement, authHeader) + return chakram.post(POST_MEASUREMENT_URL, measurement, authHeaderBox) .then(logResponseIfError) .then(function (response) { expect(response).to.have.status(201); @@ -338,7 +340,7 @@ describe('openSenseMap API locations tests', function () { createdAt: moment().subtract(1, 'm'), }; - return chakram.post(POST_MEASUREMENT_URL, measurement, authHeader) + return chakram.post(POST_MEASUREMENT_URL, measurement, authHeaderBox) .then(logResponseIfError) .then(function (response) { expect(response).to.have.status(201); @@ -359,7 +361,7 @@ describe('openSenseMap API locations tests', function () { const createdAt = moment().subtract(10, 'm'); const measurement = { value: -1, createdAt }; - return chakram.post(POST_MEASUREMENT_URL, measurement, authHeader) + return chakram.post(POST_MEASUREMENT_URL, measurement, authHeaderBox) .then(logResponseIfError) .then(function (response) { expect(response).to.have.status(201); @@ -382,12 +384,12 @@ describe('openSenseMap API locations tests', function () { // timestamp exactly at time of location set through PUT /boxes/:boxID const measurement2 = { value: 1, createdAt: submitTimeLoc1 }; - return chakram.post(POST_MEASUREMENT_URL, measurement1, authHeader) + return chakram.post(POST_MEASUREMENT_URL, measurement1, authHeaderBox) .then(logResponseIfError) .then(function (response) { expect(response).to.have.status(201); - return chakram.post(POST_MEASUREMENT_URL, measurement2, authHeader); + return chakram.post(POST_MEASUREMENT_URL, measurement2, authHeaderBox); }) .then(function (response) { expect(response).to.have.status(201); @@ -428,18 +430,18 @@ describe('openSenseMap API locations tests', function () { createdAt: measurement2.createdAt.clone().subtract(2, 'ms') }; - return chakram.post(POST_MEASUREMENT_URL, measurement3, authHeader) + return chakram.post(POST_MEASUREMENT_URL, measurement3, authHeaderBox) .then(logResponseIfError) .then(function (response) { expect(response).to.have.status(201); - return chakram.post(POST_MEASUREMENT_URL, measurement2, authHeader); + return chakram.post(POST_MEASUREMENT_URL, measurement2, authHeaderBox); }) .then(logResponseIfError) .then(function (response) { expect(response).to.have.status(201); - return chakram.post(POST_MEASUREMENT_URL, measurement1, authHeader); + return chakram.post(POST_MEASUREMENT_URL, measurement1, authHeaderBox); }) .then(logResponseIfError) .then(function (response) { @@ -482,8 +484,7 @@ describe('openSenseMap API locations tests', function () { const measurements = {}; measurements[box.sensors[1]._id] = [7, moment().subtract(2, 'ms'), [7, 7, 7]]; measurements[box.sensors[2]._id] = [8, moment(), { lat: 8, lng: 8, height: 8 }]; - - return chakram.post(BASE_URL, measurements, authHeader) + return chakram.post(BASE_URL, measurements, authHeaderBox) .then(logResponseIfError) .then(function (response) { expect(response).to.have.status(201); @@ -510,7 +511,7 @@ describe('openSenseMap API locations tests', function () { { sensor_id: sensor, value: 10.5 }, ]; - return chakram.post(BASE_URL, measurements, authHeader) + return chakram.post(BASE_URL, measurements, authHeaderBox) .then(logResponseIfError) .then(function (response) { expect(response).to.have.status(201); @@ -547,13 +548,12 @@ describe('openSenseMap API locations tests', function () { describe('text/csv', function () { - // const csvHeader = Object.assign({ json: false, headers: { 'Content-Type': 'text/csv' } }, authHeader); - const csvHeader = { json: false, headers: { 'Content-Type': 'text/csv' } }; - + // const csvAndAuthHeader = Object.assign({ json: false, headers: { 'Content-Type': 'text/csv' } }, authHeaderBox); + it('should accept 2D locations', function () { const measurements = `${box.sensors[3]._id},11,${moment().toISOString()},11,11`; - return chakram.post(BASE_URL, measurements, csvHeader) + return chakram.post(BASE_URL, measurements, csvAndAuthHeader) .then(logResponseIfError) .then(function (response) { expect(response).to.have.status(201); @@ -578,7 +578,7 @@ describe('openSenseMap API locations tests', function () { [sensor, 12.6, moment().subtract(2, 'ms').toISOString(), 12, 12, 12].join(','), // eslint-disable-line newline-per-chained-call ].join('\n'); - return chakram.post(BASE_URL, measurements, csvHeader) + return chakram.post(BASE_URL, measurements, csvAndAuthHeader) .then(logResponseIfError) .then(function (response) { expect(response).to.have.status(201); @@ -598,7 +598,7 @@ describe('openSenseMap API locations tests', function () { it('should reject measurements with location & w/out createdAt', function () { const measurements = `${box.sensors[3]._id},13,13,13,13`; // id,value,lng,lat,height - return chakram.post(BASE_URL, measurements, csvHeader) + return chakram.post(BASE_URL, measurements, csvAndAuthHeader) .then(function (response) { expect(response).to.have.status(422); @@ -912,7 +912,7 @@ describe('openSenseMap API locations tests', function () { return chakram.post(`${process.env.OSEM_TEST_BASE_URL}/boxes/${box._id}/data`, [ { sensor_id: box.sensors[4]._id, value: 123, location: [-3, -3, -3], createdAt: daysAgo3 }, { sensor_id: box.sensors[4]._id, value: 321, location: [-4, -4, -4], createdAt: daysAgo6 }, - ], authHeader) + ], authHeaderBox) .then(logResponseIfError) .then(function (response) { expect(response).to.have.status(201); diff --git a/tests/tests/003-idw-test.js b/tests/tests/003-idw-test.js index d240778e..794ee166 100644 --- a/tests/tests/003-idw-test.js +++ b/tests/tests/003-idw-test.js @@ -33,7 +33,7 @@ describe('openSenseMap API Routes: /statistics/idw', function () { ]); }) .then(function (responses) { - const boxes = responses.map(r => { return { _id: r.body.data._id, sensorid: r.body.data.sensors[0]._id }; }); + const boxes = responses.map(r => { return { _id: r.body.data._id, sensorid: r.body.data.sensors[0]._id, access_token: r.body.data.access_token }; }); for (const [ i, box ] of boxes.entries()) { box.measurements = []; @@ -50,14 +50,13 @@ describe('openSenseMap API Routes: /statistics/idw', function () { } const [ first, second, third, fourth, fifth, sixth ] = boxes; - return chakram.all([ - chakram.post(`${process.env.OSEM_TEST_BASE_URL}/boxes/${first._id}/data`, first.measurements, { headers: { 'content-type': 'application/json' } }), - chakram.post(`${process.env.OSEM_TEST_BASE_URL}/boxes/${second._id}/data`, second.measurements, { headers: { 'content-type': 'application/json' } }), - chakram.post(`${process.env.OSEM_TEST_BASE_URL}/boxes/${third._id}/data`, third.measurements, { headers: { 'content-type': 'application/json' } }), - chakram.post(`${process.env.OSEM_TEST_BASE_URL}/boxes/${fourth._id}/data`, fourth.measurements, { headers: { 'content-type': 'application/json' } }), - chakram.post(`${process.env.OSEM_TEST_BASE_URL}/boxes/${fifth._id}/data`, fifth.measurements, { headers: { 'content-type': 'application/json' } }), - chakram.post(`${process.env.OSEM_TEST_BASE_URL}/boxes/${sixth._id}/data`, sixth.measurements, { headers: { 'content-type': 'application/json' } }), + chakram.post(`${process.env.OSEM_TEST_BASE_URL}/boxes/${first._id}/data`, first.measurements, { headers: { 'content-type': 'application/json', 'Authorization': first.access_token} }), + chakram.post(`${process.env.OSEM_TEST_BASE_URL}/boxes/${second._id}/data`, second.measurements, { headers: { 'content-type': 'application/json', 'Authorization': second.access_token } }), + chakram.post(`${process.env.OSEM_TEST_BASE_URL}/boxes/${third._id}/data`, third.measurements, { headers: { 'content-type': 'application/json', 'Authorization': third.access_token } }), + chakram.post(`${process.env.OSEM_TEST_BASE_URL}/boxes/${fourth._id}/data`, fourth.measurements, { headers: { 'content-type': 'application/json', 'Authorization': fourth.access_token } }), + chakram.post(`${process.env.OSEM_TEST_BASE_URL}/boxes/${fifth._id}/data`, fifth.measurements, { headers: { 'content-type': 'application/json', 'Authorization': fifth.access_token } }), + chakram.post(`${process.env.OSEM_TEST_BASE_URL}/boxes/${sixth._id}/data`, sixth.measurements, { headers: { 'content-type': 'application/json', 'Authorization': sixth.access_token } }), ]); }) .then(function () { diff --git a/tests/tests/005-create-boxes-test.js b/tests/tests/005-create-boxes-test.js index 07b4d4f1..a1129a62 100644 --- a/tests/tests/005-create-boxes-test.js +++ b/tests/tests/005-create-boxes-test.js @@ -83,7 +83,6 @@ describe('openSenseMap API Routes: /boxes', function () { .then(function (response) { expect(response).to.have.status(201); expect(response).to.have.header('content-type', 'application/json; charset=utf-8'); - boxId = response.body.data._id; boxCount = boxCount + 1; boxIds.push(boxId); diff --git a/tests/tests/006-submit-measurements-test.js b/tests/tests/006-submit-measurements-test.js index cae31dcf..c7661ffb 100644 --- a/tests/tests/006-submit-measurements-test.js +++ b/tests/tests/006-submit-measurements-test.js @@ -43,7 +43,7 @@ describe('submitting measurements', function () { it('should accept a single measurement via POST', function () { let submitTime; - return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/${boxes[0].sensors[0]._id}`, { 'value': 312.1 }) + return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/${boxes[0].sensors[0]._id}`, { 'value': 312.1 }, {headers: {'Authorization' : boxes[0].access_token} }) .then(function (response) { submitTime = moment.utc(response.response.headers.date, 'ddd, DD MMM YYYY HH:mm:ss GMT'); expect(response).to.have.status(201); @@ -69,10 +69,22 @@ describe('submitting measurements', function () { }); }); + it('should reject a single measurement via POST with wrong access_token', function () { + + return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/${boxes[0].sensors[0]._id}`, { 'value': 312.1 }, {headers: {'Authorization' : 'wrongAccessToken'} }) + .then(function (response) { + expect(response).to.have.status(401); + expect(response.body.message).to.equal('Box access token not valid!'); + return chakram.wait(); + + // return chakram.get(`${BASE_URL}/boxes/${boxIds[0]}`); + }) + }); + it('should accept a single measurement with timestamp via POST', function () { const submitTime = moment.utc().toISOString(); - return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/${boxes[0].sensors[1]._id}`, { 'value': 123.4, 'createdAt': submitTime }) + return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/${boxes[0].sensors[1]._id}`, { 'value': 123.4, 'createdAt': submitTime }, {headers: {'Authorization' : boxes[0].access_token} }) .then(function (response) { expect(response).to.have.status(201); expect(response.body).to.equal('Measurement saved in box'); @@ -101,7 +113,7 @@ describe('submitting measurements', function () { const submitTime = moment.utc().add(1.5, 'minutes') .toISOString(); - return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/${boxes[0].sensors[1]._id}`, { 'value': 123.4, 'createdAt': submitTime }) + return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/${boxes[0].sensors[1]._id}`, { 'value': 123.4, 'createdAt': submitTime }, {headers: {'Authorization' : boxes[0].access_token} }) .then(function (response) { expect(response).to.have.status(422); @@ -116,7 +128,7 @@ describe('submitting measurements', function () { it('should accept multiple measurements as csv via POST', function () { let submitTime; - return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, csv_example_data.no_timestamps(boxes[0].sensors), { json: false, headers: { 'content-type': 'text/csv' } }) + return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, csv_example_data.no_timestamps(boxes[0].sensors), { json: false, headers: { 'content-type': 'text/csv', 'Authorization' : boxes[0].access_token} }) .then(function (response) { submitTime = moment.utc(response.response.headers.date, 'ddd, DD MMM YYYY HH:mm:ss GMT'); expect(response).to.have.status(201); @@ -138,10 +150,22 @@ describe('submitting measurements', function () { }); }); + it('should reject multiple measurements as csv via POST with wrong access_token', function () { + + return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, csv_example_data.no_timestamps(boxes[0].sensors), { json: false, headers: { 'content-type': 'text/csv', 'Authorization' : 'WRONGAUTHTOKEN'} }) + .then(function (response) { + expect(response).to.have.status(401); + expect(JSON.parse(response.body).message).to.equal('Box access token not valid!'); + + return chakram.wait(); + + }) + }); + it('should accept multiple measurements with timestamps as csv via POST', function () { let submitTime; - return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, csv_example_data.with_timestamps(boxes[0].sensors), { json: false, headers: { 'content-type': 'text/csv' } }) + return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, csv_example_data.with_timestamps(boxes[0].sensors), { json: false, headers: { 'content-type': 'text/csv', 'Authorization' : boxes[0].access_token } }) .then(function (response) { submitTime = moment.utc(response.response.headers.date, 'ddd, DD MMM YYYY HH:mm:ss GMT'); expect(response).to.have.status(201); @@ -164,7 +188,7 @@ describe('submitting measurements', function () { }); it('should reject multiple measurements with timestamps too far into the future as csv via POST', function () { - return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, csv_example_data.with_timestamps_future(boxes[0].sensors), { json: false, headers: { 'content-type': 'text/csv' } }) + return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, csv_example_data.with_timestamps_future(boxes[0].sensors), { json: false, headers: { 'content-type': 'text/csv', 'Authorization' : boxes[0].access_token } }) .then(function (response) { expect(response).to.have.status(422); @@ -173,7 +197,7 @@ describe('submitting measurements', function () { }); it('should reject multiple measurements with too many fields as csv via POST', function () { - return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, csv_example_data.with_too_many(boxes[0].sensors), { json: false, headers: { 'content-type': 'text/csv' } }) + return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, csv_example_data.with_too_many(boxes[0].sensors), { json: false, headers: { 'content-type': 'text/csv', 'Authorization' : boxes[0].access_token } }) .then(function (response) { expect(response).to.have.status(422); @@ -182,7 +206,7 @@ describe('submitting measurements', function () { }); it('should accept multiple csv measurements from ten days ago', function () { - return chakram.post(`${BASE_URL}/boxes/${boxIds[1]}/data`, csv_example_data.ten_days_ago_many(boxes[1].sensors), { json: false, headers: { 'content-type': 'text/csv' } }) + return chakram.post(`${BASE_URL}/boxes/${boxIds[1]}/data`, csv_example_data.ten_days_ago_many(boxes[1].sensors), { json: false, headers: { 'content-type': 'text/csv', 'Authorization' : boxes[1].access_token } }) .then(function (response) { expect(response).to.have.status(201); @@ -207,7 +231,7 @@ describe('submitting measurements', function () { it('should accept multiple measurements with timestamps as json object via POST and Content-type: json', function () { let submitTime; - return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, JSON.stringify(json_submit_data.json_obj(boxes[0].sensors)), { json: false, headers: { 'content-type': 'json' } }) + return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, JSON.stringify(json_submit_data.json_obj(boxes[0].sensors)), { json: false, headers: { 'content-type': 'json', 'Authorization' : boxes[0].access_token } }) .then(function (response) { submitTime = moment.utc(response.response.headers.date, 'ddd, DD MMM YYYY HH:mm:ss GMT'); expect(response).to.have.status(201); @@ -233,7 +257,7 @@ describe('submitting measurements', function () { it('should accept multiple measurements with timestamps as json object via POST', function () { let submitTime; - return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, json_submit_data.json_obj(boxes[0].sensors)) + return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, json_submit_data.json_obj(boxes[0].sensors), {headers: {'Authorization' : boxes[0].access_token} }) .then(function (response) { submitTime = moment.utc(response.response.headers.date, 'ddd, DD MMM YYYY HH:mm:ss GMT'); expect(response).to.have.status(201); @@ -262,7 +286,7 @@ describe('submitting measurements', function () { it('should accept multiple measurements with timestamps as json array via POST', function () { let submitTime; - return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, json_submit_data.json_arr(boxes[0].sensors)) + return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, json_submit_data.json_arr(boxes[0].sensors), {headers: {'Authorization' : boxes[0].access_token} }) .then(function (response) { submitTime = moment.utc(response.response.headers.date, 'ddd, DD MMM YYYY HH:mm:ss GMT'); expect(response).to.have.status(201); @@ -298,7 +322,7 @@ describe('submitting measurements', function () { { sensor_id, value: 0.7, createdAt: '2016-01-23T08:37:23.000Z' } ]; - return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, payload) + return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, payload, {headers: {'Authorization' : boxes[0].access_token} }) .then(function (response) { expect(response).to.have.status(201); expect(response.body).to.equal('Measurements saved in box'); @@ -332,7 +356,7 @@ describe('submitting measurements', function () { { sensor: boxes[0].sensors[3]._id, value: 0.3, createdAt: '2010-01-02T01:00:22.000Z' }, ]; - return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, payload) + return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, payload, {headers: {'Authorization' : boxes[0].access_token} }) .then(function (response) { expect(response).to.have.status(201); expect(response.body).to.equal('Measurements saved in box'); @@ -368,7 +392,7 @@ describe('submitting measurements', function () { { sensor: boxes[0].sensors[3]._id, value: 0.3, createdAt: '2010-01-02T01:00:22.000Z' }, ]; - return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, payload) + return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, payload, {headers: {'Authorization' : boxes[0].access_token} }) .then(function (response) { expect(response).to.have.status(201); expect(response.body).to.equal('Measurements saved in box'); @@ -395,7 +419,7 @@ describe('submitting measurements', function () { it('should accept multiple measurements as bytes via POST', function () { let submitTime; - return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, byte_submit_data(boxes[0].sensors), { json: false, headers: { 'content-type': 'application/sbx-bytes' } }) + return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, byte_submit_data(boxes[0].sensors), { json: false, headers: { 'content-type': 'application/sbx-bytes', 'Authorization' : boxes[0].access_token} }) .then(function (response) { submitTime = moment.utc(response.response.headers.date, 'ddd, DD MMM YYYY HH:mm:ss GMT'); expect(response).to.have.status(201); @@ -421,7 +445,7 @@ describe('submitting measurements', function () { it('should accept multiple measurements as bytes with timestamp via POST', function () { let submitTime; - return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, byte_submit_data(boxes[0].sensors, true), { json: false, headers: { 'content-type': 'application/sbx-bytes-ts' } }) + return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, byte_submit_data(boxes[0].sensors, true), { json: false, headers: { 'content-type': 'application/sbx-bytes-ts', 'Authorization' : boxes[0].access_token } }) .then(function (response) { submitTime = moment.utc(response.response.headers.date, 'ddd, DD MMM YYYY HH:mm:ss GMT'); expect(response).to.have.status(201); diff --git a/tests/tests/007-download-data-test.js b/tests/tests/007-download-data-test.js index 914a337f..f8bcfed2 100644 --- a/tests/tests/007-download-data-test.js +++ b/tests/tests/007-download-data-test.js @@ -205,6 +205,18 @@ describe('downloading data', function () { }); }); + it('should return only value of a single sensor of a box for /boxes/:boxid/sensors/:sensorId?onlyValue=true GET', function () { + return chakram.get(`${BASE_URL}/boxes/${boxes[0]._id}/sensors/${boxes[0].sensors[0]._id}?onlyValue=true`) + .then(function (response) { + expect(response).to.have.status(200); + expect(response).to.have.header('content-type', 'application/json; charset=utf-8'); + expect(parseFloat(response.body)).to.be.a('number'); + + return chakram.wait(); + }); + }); + + }); describe('/boxes/:boxid/data/:sensorid', function () { diff --git a/tests/tests/010-luftdaten-test.js b/tests/tests/010-luftdaten-test.js index 1bde225f..2adbb0c8 100644 --- a/tests/tests/010-luftdaten-test.js +++ b/tests/tests/010-luftdaten-test.js @@ -27,7 +27,6 @@ describe('openSenseMap API luftdaten.info devices', function () { .then(function (response) { expect(response).to.have.status(201); expect(response).to.have.header('content-type', 'application/json; charset=utf-8'); - const boxId = response.body.data._id; dht11_id = boxId; diff --git a/tests/tests/013-classify-test.js b/tests/tests/013-classify-test.js index 48d0f104..7f366741 100644 --- a/tests/tests/013-classify-test.js +++ b/tests/tests/013-classify-test.js @@ -25,7 +25,7 @@ describe('openSenseMap API Routes: getBoxes Classification', function () { ]); }) .then(function (responses) { - const boxes = responses.map(r => { return { _id: r.body.data._id, sensorid: r.body.data.sensors[0]._id, name: r.body.data.name }; }); + const boxes = responses.map(r => { return { _id: r.body.data._id, sensorid: r.body.data.sensors[0]._id, name: r.body.data.name, access_token: r.body.data.access_token }; }); for (const [i, box] of boxes.entries()) { box.measurements = []; @@ -54,9 +54,9 @@ describe('openSenseMap API Routes: getBoxes Classification', function () { const [first, second, third] = boxes; return chakram.all([ - chakram.post(`${process.env.OSEM_TEST_BASE_URL}/boxes/${first._id}/data`, first.measurements, { headers: { 'content-type': 'application/json' } }), - chakram.post(`${process.env.OSEM_TEST_BASE_URL}/boxes/${second._id}/data`, second.measurements, { headers: { 'content-type': 'application/json' } }), - chakram.post(`${process.env.OSEM_TEST_BASE_URL}/boxes/${third._id}/data`, third.measurements, { headers: { 'content-type': 'application/json' } }), + chakram.post(`${process.env.OSEM_TEST_BASE_URL}/boxes/${first._id}/data`, first.measurements, { headers: { 'content-type': 'application/json', 'Authorization': first.access_token } }), + chakram.post(`${process.env.OSEM_TEST_BASE_URL}/boxes/${second._id}/data`, second.measurements, { headers: { 'content-type': 'application/json', 'Authorization': second.access_token } }), + chakram.post(`${process.env.OSEM_TEST_BASE_URL}/boxes/${third._id}/data`, third.measurements, { headers: { 'content-type': 'application/json', 'Authorization': third.access_token } }), ]); }); }); diff --git a/tests/tests/014-descriptive-statistics-test.js b/tests/tests/014-descriptive-statistics-test.js index 109ca1c7..b7580e1c 100644 --- a/tests/tests/014-descriptive-statistics-test.js +++ b/tests/tests/014-descriptive-statistics-test.js @@ -25,7 +25,7 @@ describe('openSenseMap API Routes: basic descriptive statistics', function () { ]); }) .then(function (responses) { - const boxes = responses.map(r => { return { _id: r.body.data._id, sensorid: r.body.data.sensors[0]._id }; }); + const boxes = responses.map(r => { return { _id: r.body.data._id, sensorid: r.body.data.sensors[0]._id, access_token: r.body.data.access_token }; }); boxIds = responses.map(r => r.body.data._id).join(','); for (const box of boxes) { @@ -108,9 +108,9 @@ ${box.sensorid},3,2018-02-05T14:06:12.620Z const [first, second, third] = boxes; return chakram.all([ - chakram.post(`${process.env.OSEM_TEST_BASE_URL}/boxes/${first._id}/data`, first.measurements, { json: false, headers: { 'content-type': 'text/csv' } }), - chakram.post(`${process.env.OSEM_TEST_BASE_URL}/boxes/${second._id}/data`, second.measurements, { json: false, headers: { 'content-type': 'text/csv' } }), - chakram.post(`${process.env.OSEM_TEST_BASE_URL}/boxes/${third._id}/data`, third.measurements, { json: false, headers: { 'content-type': 'text/csv' } }), + chakram.post(`${process.env.OSEM_TEST_BASE_URL}/boxes/${first._id}/data`, first.measurements, { json: false, headers: { 'content-type': 'text/csv', 'Authorization': first.access_token } }), + chakram.post(`${process.env.OSEM_TEST_BASE_URL}/boxes/${second._id}/data`, second.measurements, { json: false, headers: { 'content-type': 'text/csv', 'Authorization': second.access_token } }), + chakram.post(`${process.env.OSEM_TEST_BASE_URL}/boxes/${third._id}/data`, third.measurements, { json: false, headers: { 'content-type': 'text/csv', 'Authorization': third.access_token } }), ]); }); }); diff --git a/tests/tests/016-hackair-test.js b/tests/tests/016-hackair-test.js index c4b0b1c1..86b2e0c2 100644 --- a/tests/tests/016-hackair-test.js +++ b/tests/tests/016-hackair-test.js @@ -84,7 +84,7 @@ describe('openSenseMap API hackAIR devices', function () { expect(response).to.have.status(401); expect(response.body).to.be.an('object'); expect(response.body.message).to.be.a('string'); - expect(response.body.message).to.equal('Access token not valid!'); + expect(response.body.message).to.equal('Box access token not valid!'); }); }); }); diff --git a/yarn.lock b/yarn.lock index 7657572c..222112b1 100644 --- a/yarn.lock +++ b/yarn.lock @@ -42,10 +42,10 @@ resolved "https://registry.yarnpkg.com/@sensebox/osem-protos/-/osem-protos-1.1.0.tgz#a7de8bc6be867953f1309181a012063c23299e79" integrity sha512-H+nUVcWlT0dvIqfJnYHuX9JBcCkP1ZKGE5YTRNWPbAEdZ11h+srpQsmeI58wK5hJcdukaZAjc4Dy96IeGM77aA== -"@sensebox/sketch-templater@^1.8.2": - version "1.8.2" - resolved "https://registry.yarnpkg.com/@sensebox/sketch-templater/-/sketch-templater-1.8.2.tgz#70ee33479b6ee03402e6e9575b19b9388b7e947f" - integrity sha512-gqW8ltzu/CYLVtiC7FnpU775LMPr8lO05TcZfQfFoLVg7JRsAX0xicFTc03NW7C3e813w16tyxqZInzPYf6RaQ== +"@sensebox/sketch-templater@^1.8.3-beta.0": + version "1.8.3-beta.0" + resolved "https://registry.yarnpkg.com/@sensebox/sketch-templater/-/sketch-templater-1.8.3-beta.0.tgz#7eccf67469725741dc4a55fcf43f872dd37e1409" + integrity sha512-nsVkMmqr6tDJ4x48qiLyFOAJL1LLhavtg5dksqJa7qeFXQ2AHMmUC8uiU9r2PstANFDDRUDqFZ2rN69rl+NYog== dependencies: config "^1.29.2" dedent "^0.7.0" From 717b8d21a2ccc8818374ac9026d977d3bfae9db0 Mon Sep 17 00:00:00 2001 From: Felix Erdmann Date: Thu, 22 Oct 2020 12:05:50 +0200 Subject: [PATCH 095/337] v9.6.0 Authentication (#363) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * fix download in getData closes #325 (#349) * Bump simple-statistics from 7.2.0 to 7.3.0 (#352) Bumps [simple-statistics](https://github.com/simple-statistics/simple-statistics) from 7.2.0 to 7.3.0. - [Release notes](https://github.com/simple-statistics/simple-statistics/releases) - [Changelog](https://github.com/simple-statistics/simple-statistics/blob/master/CHANGELOG.md) - [Commits](https://github.com/simple-statistics/simple-statistics/compare/v7.2.0...v7.3.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * [Security] Bump bl from 1.2.2 to 1.2.3 (#353) Bumps [bl](https://github.com/rvagg/bl) from 1.2.2 to 1.2.3. **This update includes a security fix.** - [Release notes](https://github.com/rvagg/bl/releases) - [Commits](https://github.com/rvagg/bl/compare/v1.2.2...v1.2.3) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump got from 11.6.0 to 11.6.2 (#354) Bumps [got](https://github.com/sindresorhus/got) from 11.6.0 to 11.6.2. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v11.6.0...v11.6.2) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump moment from 2.27.0 to 2.28.0 (#355) Bumps [moment](https://github.com/moment/moment) from 2.27.0 to 2.28.0. - [Release notes](https://github.com/moment/moment/releases) - [Changelog](https://github.com/moment/moment/blob/develop/CHANGELOG.md) - [Commits](https://github.com/moment/moment/compare/2.27.0...2.28.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump got from 11.6.2 to 11.7.0 (#356) Bumps [got](https://github.com/sindresorhus/got) from 11.6.2 to 11.7.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v11.6.2...v11.7.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump moment from 2.28.0 to 2.29.0 (#357) Bumps [moment](https://github.com/moment/moment) from 2.28.0 to 2.29.0. - [Release notes](https://github.com/moment/moment/releases) - [Changelog](https://github.com/moment/moment/blob/develop/CHANGELOG.md) - [Commits](https://github.com/moment/moment/compare/2.28.0...2.29.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump config from 3.3.1 to 3.3.2 (#358) Bumps [config](https://github.com/lorenwest/node-config) from 3.3.1 to 3.3.2. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump moment from 2.29.0 to 2.29.1 (#359) Bumps [moment](https://github.com/moment/moment) from 2.29.0 to 2.29.1. - [Release notes](https://github.com/moment/moment/releases) - [Changelog](https://github.com/moment/moment/blob/develop/CHANGELOG.md) - [Commits](https://github.com/moment/moment/compare/2.29.0...2.29.1) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Auth (#362) * fix download in getData closes #325 (#349) (#350) * initial auth for boxes * auth for boxes that have not opt out * fix spelling * useAuth in updateBox * update access_token via generate_access_token * pass access_token to sketch templater * bump node-sketch-templater version (beta) * add authorization header anyways * auth beta * include useAuth in includeSecret requests * remove default true for useAuth, set true for new Boxes * update tests for auth feature, fix errors in auth code * add access_token to getSketch of newSketch email * update documentation 📜 * remove custom boxes from useAuth=true * add onlyValue in measurement controller * test for onlyValue feature * remove console.log Co-authored-by: Umut Tas Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Umut Tas --- .../api/lib/controllers/boxesController.js | 20 +++- .../lib/controllers/measurementsController.js | 27 ++++- packages/api/package.json | 10 +- packages/models/CHANGELOG.md | 3 + packages/models/package.json | 10 +- packages/models/src/box/box.js | 36 ++++++- packages/models/src/user/mails.js | 32 +++--- tests/data/getUserBoxesSchema.js | 6 ++ tests/data/senseBoxSchema.js | 10 +- tests/data/valid_sensebox.js | 1 - tests/tests/002-location_tests.js | 40 +++---- tests/tests/003-idw-test.js | 15 ++- tests/tests/005-create-boxes-test.js | 1 - tests/tests/006-submit-measurements-test.js | 56 +++++++--- tests/tests/007-download-data-test.js | 12 +++ tests/tests/010-luftdaten-test.js | 1 - tests/tests/013-classify-test.js | 8 +- .../tests/014-descriptive-statistics-test.js | 8 +- tests/tests/016-hackair-test.js | 2 +- yarn.lock | 100 +++++------------- 20 files changed, 233 insertions(+), 165 deletions(-) diff --git a/packages/api/lib/controllers/boxesController.js b/packages/api/lib/controllers/boxesController.js index 70f35aef..470ace31 100644 --- a/packages/api/lib/controllers/boxesController.js +++ b/packages/api/lib/controllers/boxesController.js @@ -384,6 +384,7 @@ const getBox = async function getBox (req, res, next) { * @apiParam (RequestBody) {String="hdc1080","bmp280","tsl45315","veml6070","sds011","bme680","smt50","soundlevelmeter", "windspeed"} [sensorTemplates] Specify which sensors should be included. * @apiParam (RequestBody) {Object} [mqtt] specify parameters of the MQTT integration for external measurement upload. Please see below for the accepted parameters * @apiParam (RequestBody) {Object} [ttn] specify parameters for the TTN integration for measurement from TheThingsNetwork.org upload. Please see below for the accepted parameters + * @apiParam (RequestBody) {Boolean="true","false"} [useAuth] whether to use access_token or not for authentication * * @apiUse LocationBody * @apiUse SensorBody @@ -424,7 +425,8 @@ const getSketch = async function getSketch (req, res, next) { res.header('Content-Type', 'text/plain; charset=utf-8'); try { const box = await Box.findBoxById(req._userParams.boxId, { populate: false, lean: false }); - res.send(box.getSketch({ + + const params = { serialPort: req._userParams.serialPort, soilDigitalPort: req._userParams.soilDigitalPort, soundMeterPort: req._userParams.soundMeterPort, @@ -434,7 +436,14 @@ const getSketch = async function getSketch (req, res, next) { devEUI: req._userParams.devEUI, appEUI: req._userParams.appEUI, appKey: req._userParams.appKey - })); + }; + + // pass access token only if useAuth is true and access_token is available + if (box.access_token) { + params.access_token = box.access_token; + } + + res.send(box.getSketch(params)); } catch (err) { handleError(err, next); } @@ -442,7 +451,7 @@ const getSketch = async function getSketch (req, res, next) { /** * @api {delete} /boxes/:senseBoxId Mark a senseBox and its measurements for deletion - * @apiDescription This will delete all the measurements of the senseBox. Please not that the deletion isn't happening immediately. + * @apiDescription This will delete all the measurements of the senseBox. Please note that the deletion isn't happening immediately. * @apiName deleteBox * @apiGroup Boxes * @apiUse ContentTypeJSON @@ -506,7 +515,9 @@ module.exports = { { name: 'ttn', dataType: 'object' }, { name: 'sensors', dataType: ['object'] }, { name: 'addons', dataType: 'object' }, - { predef: 'location' } + { predef: 'location' }, + { name: 'useAuth', allowedValues: ['true', 'false'] }, + { name: 'generate_access_token', allowedValues: ['true', 'false'] } ]), checkPrivilege, updateBox @@ -537,6 +548,7 @@ module.exports = { { name: 'windSpeedPort', dataType: 'String', defaultValue: 'C', allowedValues: ['A', 'B', 'C'] }, { name: 'mqtt', dataType: 'object' }, { name: 'ttn', dataType: 'object' }, + { name: 'useAuth', allowedValues: ['true', 'false'] }, { predef: 'location', required: true } ]), postNewBox diff --git a/packages/api/lib/controllers/measurementsController.js b/packages/api/lib/controllers/measurementsController.js index 7d7b6ef7..28cad558 100644 --- a/packages/api/lib/controllers/measurementsController.js +++ b/packages/api/lib/controllers/measurementsController.js @@ -27,6 +27,7 @@ const * @apiName getLatestMeasurementOfSensor * @apiUse BoxIdParam * @apiUse SensorIdParam + * @apiParam {Boolean="true","false"} [onlyValue] If set to true only returns the measured value without information about the sensor. Requires a sensorId. */ const getLatestMeasurements = async function getLatestMeasurements (req, res, next) { const { _userParams: params } = req; @@ -44,6 +45,14 @@ const getLatestMeasurements = async function getLatestMeasurements (req, res, ne if (params.sensorId) { const sensor = box.sensors.find(s => s._id.equals(params.sensorId)); if (sensor) { + if(params.onlyValue){ + if(!sensor.lastMeasurement){ + res.send(undefined); + return; + } + res.send(sensor.lastMeasurement.value); + return; + } res.send(sensor); return; @@ -210,12 +219,17 @@ const getDataMulti = async function getDataMulti (req, res, next) { * @apiParam (RequestBody) {String} value the measured value of the sensor. Also accepts JSON float numbers. * @apiParam (RequestBody) {RFC3339Date} [createdAt] the timestamp of the measurement. Should conform to RFC 3339. Is needed when posting with Location Values! * @apiParam (RequestBody) {Location} [location] the WGS84-coordinates of the measurement. + * @apiHeader {String} access_token Box' unique access_token. Will be used as authorization token if box has auth enabled (e.g. useAuth: true) */ const postNewMeasurement = async function postNewMeasurement (req, res, next) { const { boxId, sensorId, value, createdAt, location } = req._userParams; try { const box = await Box.findBoxById(boxId, { populate: false, lean: false }); + if (box.useAuth && box.access_token && box.access_token !== req.headers.authorization) { + throw new UnauthorizedError('Box access token not valid!'); + } + const [measurement] = await Measurement.decodeMeasurements([{ sensor_id: sensorId, value, @@ -263,6 +277,7 @@ const postNewMeasurement = async function postNewMeasurement (req, res, next) { * @apiUse LocationBody * @apiParam {String} [luftdaten] Specify whatever you want (like `luftdaten=1`. Signals the api to treat the incoming data as luftdaten.info formatted json. * * @apiParam {String} [hackair] Specify whatever you want (like `hackair=1`. Signals the api to treat the incoming data as hackair formatted json. + * @apiHeader {String} access_token Box' unique access_token. Will be used as authorization token if box has auth enabled (e.g. useAuth: true) * @apiParamExample {application/json} JSON-Object: * { * "sensorID": "value", @@ -319,10 +334,15 @@ const postNewMeasurements = async function postNewMeasurements (req, res, next) if (Measurement.hasDecoder(contentType)) { try { - const box = await Box.findBoxById(boxId, { populate: false, lean: false, projection: { sensors: 1, locations: 1, lastMeasurementAt: 1, currentLocation: 1, model: 1, access_token: 1 } }); + const box = await Box.findBoxById(boxId, { populate: false, lean: false, projection: { sensors: 1, locations: 1, lastMeasurementAt: 1, currentLocation: 1, model: 1, access_token: 1, useAuth: 1 } }); + + // if (contentType === 'hackair' && box.access_token !== req.headers.authorization) { + // throw new UnauthorizedError('Box access token not valid!'); + // } - if (contentType === 'hackair' && box.access_token !== req.headers.authorization) { - throw new UnauthorizedError('Access token not valid!'); + // authorization for all boxes that have not opt out + if ((box.useAuth || contentType === 'hackair') && box.access_token && box.access_token !== req.headers.authorization) { + throw new UnauthorizedError('Box access token not valid!'); } const measurements = await Measurement.decodeMeasurements(req.body, { contentType, sensors: box.sensors }); @@ -391,6 +411,7 @@ module.exports = { retrieveParameters([ { predef: 'boxId', required: true }, { predef: 'sensorId' }, + { name: 'onlyValue', required: false } ]), getLatestMeasurements ] diff --git a/packages/api/package.json b/packages/api/package.json index 40e6d2d0..6f74d8ad 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -10,7 +10,7 @@ "Norwin Roosen" ], "dependencies": { - "@sensebox/opensensemap-api-models": "^0.0.25", + "@sensebox/opensensemap-api-models": "^0.0.26-beta.0", "@turf/area": "^6.0.1", "@turf/bbox": "^6.0.1", "@turf/centroid": "^6.0.2", @@ -21,19 +21,19 @@ "@turf/triangle-grid": "^6.0.1", "apicache": "^1.4.0", "bunyan": "^1.8.14", - "config": "^3.3.1", + "config": "^3.3.2", "csv-stringify": "^5.5.1", "dashify": "^2.0.0", - "got": "^11.6.0", + "got": "^11.7.0", "honeybadger": "^1.4.0", "isemail": "^3.0.0", "jsonwebtoken": "^8.1.0", "millify": "^3.3.0", - "moment": "^2.27.0", + "moment": "^2.29.1", "ms": "^2.1.1", "restify": "^5.2.0", "restify-errors": "^8.0.2", - "simple-statistics": "^7.2.0", + "simple-statistics": "^7.3.0", "stringify-stream": "^1.0.5", "uuid": "^7.0.3" }, diff --git a/packages/models/CHANGELOG.md b/packages/models/CHANGELOG.md index f4098f85..a7fd73cb 100644 --- a/packages/models/CHANGELOG.md +++ b/packages/models/CHANGELOG.md @@ -2,6 +2,9 @@ ## Unreleased +## v0.0.26-beta.0 +- Authorization + ## v0.0.25 - Add Cayenne LPP Decoder diff --git a/packages/models/package.json b/packages/models/package.json index 0b76a451..d6140885 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -1,21 +1,21 @@ { "name": "@sensebox/opensensemap-api-models", "description": "openSenseMap data models and database connection", - "version": "0.0.25", + "version": "0.0.26-beta.0", "main": "index.js", "license": "MIT", "dependencies": { "@sensebox/osem-protos": "^1.1.0", - "@sensebox/sketch-templater": "^1.8.2", + "@sensebox/sketch-templater": "^1.8.3-beta.0", "bcrypt": "^5.0.0", "bunyan": "^1.8.14", - "config": "^3.3.1", - "got": "^11.6.0", + "config": "^3.3.2", + "got": "^11.7.0", "grpc": "^1.24.3", "isemail": "^3.0.0", "jsonpath": "^1.0.0", "lodash.isequal": "^4.5.0", - "moment": "^2.27.0", + "moment": "^2.29.1", "mongoose": "^4.13.6", "mongoose-timestamp": "^0.6", "uuid": "^7.0.3" diff --git a/packages/models/src/box/box.js b/packages/models/src/box/box.js index 6cfd82f8..ce863f2c 100644 --- a/packages/models/src/box/box.js +++ b/packages/models/src/box/box.js @@ -125,7 +125,12 @@ const boxSchema = new Schema({ }, access_token: { type: String, - required: false + required: true + }, + useAuth: { + type: Boolean, + required: true, + default: false, } }, { usePushEach: true }); boxSchema.plugin(timestamp); @@ -167,6 +172,7 @@ boxSchema.set('toJSON', { if (options && options.includeSecrets) { box.integrations = ret.integrations; box.access_token = ret.access_token; + box.useAuth = ret.useAuth; } return box; @@ -225,7 +231,8 @@ boxSchema.statics.initNew = function ({ } = { enabled: false }, ttn: { app_id, dev_id, port, profile, decodeOptions: ttnDecodeOptions - } = {} + } = {}, + useAuth }) { // if model is not empty, get sensor definitions from products // otherwise, sensors should not be empty @@ -244,6 +251,14 @@ boxSchema.statics.initNew = function ({ sensors = sensorLayouts.getSensorsForModel(model); } } + if(model){ + //activate useAuth only for certain models until all sketches are updated + if(['homeV2Lora' , 'homeV2Ethernet' , 'homeV2EthernetFeinstaub' , 'homeV2Wifi' , 'homeV2WifiFeinstaub' , 'homeEthernet' , 'homeWifi' , 'homeEthernetFeinstaub' , 'homeWifiFeinstaub' , 'hackair_home_v2'].indexOf(model) != -1){ + useAuth = true + } else { + useAuth = false + } + } const integrations = { mqtt: { enabled, url, topic, decodeOptions: mqttDecodeOptions, connectionOptions, messageFormat }, @@ -271,7 +286,8 @@ boxSchema.statics.initNew = function ({ model, sensors, integrations, - access_token + access_token, + useAuth }); }; @@ -801,7 +817,7 @@ boxSchema.methods.updateSensors = function updateSensors (sensors) { } }; -boxSchema.methods.getSketch = function getSketch ({ encoding, serialPort, soilDigitalPort, soundMeterPort, windSpeedPort, ssid, password, devEUI, appEUI, appKey } = {}) { +boxSchema.methods.getSketch = function getSketch ({ encoding, serialPort, soilDigitalPort, soundMeterPort, windSpeedPort, ssid, password, devEUI, appEUI, appKey, access_token } = {}) { if (serialPort) { this.serialPort = serialPort; } @@ -820,6 +836,7 @@ boxSchema.methods.getSketch = function getSketch ({ encoding, serialPort, soilDi this.devEUI = devEUI; this.appEUI = appEUI, this.appKey = appKey; + this.access_token = access_token; return templateSketcher.generateSketch(this, { encoding }); }; @@ -860,12 +877,21 @@ boxSchema.methods.updateBox = function updateBox (args) { const box = this; // only grouptag, description and weblink can removed through setting them to empty string ('') - for (const prop of ['name', 'exposure', 'grouptag', 'description', 'weblink', 'image', 'integrations.mqtt', 'integrations.ttn', 'model']) { + for (const prop of ['name', 'exposure', 'grouptag', 'description', 'weblink', 'image', 'integrations.mqtt', 'integrations.ttn', 'model', 'useAuth']) { if (typeof args[prop] !== 'undefined') { box.set(prop, (args[prop] === '' ? undefined : args[prop])); } } + // if user wants a new access_token + if (typeof args['generate_access_token'] !== 'undefined') { + if (args['generate_access_token'] == 'true') { + // Create new acces token for box + const access_token = crypto.randomBytes(32).toString('hex'); + box.set('access_token', access_token); + } + } + if (sensors) { box.updateSensors(sensors); } else if (addonToAdd) { diff --git a/packages/models/src/user/mails.js b/packages/models/src/user/mails.js index 8650b6ef..06099518 100644 --- a/packages/models/src/user/mails.js +++ b/packages/models/src/user/mails.js @@ -18,24 +18,30 @@ if (config.get('mailer.url')) { const mailTemplates = { 'newBox' (user, box) { + let sketchParams = { + encoding: 'base64', + ssid: '', + password: '', + serialPort: box.serialPort, + soilDigitalPort: box.soilDigitalPort, + soundMeterPort: box.soundMeterPort, + windSpeedPort: box.windSpeedPort, + devEUI: '', + appEUI: '', + appKey: '' + } + + if(box.access_token) { + sketchParams.access_token = box.access_token + } + return { payload: { box }, attachment: { filename: 'senseBox.ino', - contents: box.getSketch({ - encoding: 'base64', - ssid: '', - password: '', - serialPort: box.serialPort, - soilDigitalPort: box.soilDigitalPort, - soundMeterPort: box.soundMeterPort, - windSpeedPort: box.windSpeedPort, - devEUI: '', - appEUI: '', - appKey: '' - }) + contents: box.getSketch(sketchParams) } }; }, @@ -112,7 +118,7 @@ if (config.get('mailer.url')) { }, attachment: { filename: 'senseBox.ino', - contents: box.getSketch({ encoding: 'base64' }) + contents: box.getSketch({ encoding: 'base64', access_token: box.access_token }) } }; }, diff --git a/tests/data/getUserBoxesSchema.js b/tests/data/getUserBoxesSchema.js index 9a506e85..9770b6ea 100644 --- a/tests/data/getUserBoxesSchema.js +++ b/tests/data/getUserBoxesSchema.js @@ -30,6 +30,12 @@ module.exports = { 'updatedAt': { 'type': 'string' }, + 'useAuth': { + 'type': 'boolean' + }, + 'access_token': { + 'type': 'string' + }, 'currentLocation': { 'type': 'object', 'properties': { diff --git a/tests/data/senseBoxSchema.js b/tests/data/senseBoxSchema.js index fdfc5be3..fd578d99 100644 --- a/tests/data/senseBoxSchema.js +++ b/tests/data/senseBoxSchema.js @@ -31,6 +31,12 @@ module.exports = { 'image': { 'type': 'string' }, + 'useAuth': { + 'type': "boolean" + }, + 'access_token': { + 'type': "string" + }, 'sensors': { 'type': 'array', 'items': { @@ -115,6 +121,8 @@ module.exports = { 'exposure', 'sensors', 'currentLocation', - 'loc' + 'loc', + // 'useAuth', + // 'access_token' ] }; diff --git a/tests/data/valid_sensebox.js b/tests/data/valid_sensebox.js index 3c2173be..9082a72b 100644 --- a/tests/data/valid_sensebox.js +++ b/tests/data/valid_sensebox.js @@ -35,7 +35,6 @@ module.exports = function ({ bbox, model, sensors, lonlat, name = '', sensorTemp 'connectionOptions': '' } }; - if (sensors) { box.sensors = sensors; } diff --git a/tests/tests/002-location_tests.js b/tests/tests/002-location_tests.js index 33298a3a..271e6809 100644 --- a/tests/tests/002-location_tests.js +++ b/tests/tests/002-location_tests.js @@ -24,7 +24,7 @@ const minimalSensebox = function minimalSensebox (location = [123, 12, 34], expo }; describe('openSenseMap API locations tests', function () { - let authHeader, box, submitTimeLoc1; + let authHeader, authHeaderBox, csvAndAuthHeader, box, submitTimeLoc1; before('add test user', function (done) { const user = { name: 'locationtestuser', email: 'locationtestuser@test.test', password: '12345678' }; @@ -110,6 +110,8 @@ describe('openSenseMap API locations tests', function () { expect(moment().diff(response.body.data.currentLocation.timestamp)).to.be.below(300); box = response.body.data; + authHeaderBox = { headers: { 'Authorization': `${response.body.data.access_token}` } }; + csvAndAuthHeader = { json: false, headers: { 'Content-Type': 'text/csv', 'Authorization': response.body.data.access_token } }; return chakram.wait(); }); @@ -290,7 +292,7 @@ describe('openSenseMap API locations tests', function () { it('should allow updating a boxes location via new measurement (array)', function () { const measurement = { value: 3, location: [3, 3, 3] }; - return chakram.post(POST_MEASUREMENT_URL, measurement, authHeader) + return chakram.post(POST_MEASUREMENT_URL, measurement, authHeaderBox) .then(logResponseIfError) .then(function (response) { expect(response).to.have.status(201); @@ -310,7 +312,7 @@ describe('openSenseMap API locations tests', function () { it('should allow updating a boxes location via new measurement (latLng)', function () { const measurement = { value: 4, location: { lat: 4, lng: 4, height: 4 } }; - return chakram.post(POST_MEASUREMENT_URL, measurement, authHeader) + return chakram.post(POST_MEASUREMENT_URL, measurement, authHeaderBox) .then(logResponseIfError) .then(function (response) { expect(response).to.have.status(201); @@ -338,7 +340,7 @@ describe('openSenseMap API locations tests', function () { createdAt: moment().subtract(1, 'm'), }; - return chakram.post(POST_MEASUREMENT_URL, measurement, authHeader) + return chakram.post(POST_MEASUREMENT_URL, measurement, authHeaderBox) .then(logResponseIfError) .then(function (response) { expect(response).to.have.status(201); @@ -359,7 +361,7 @@ describe('openSenseMap API locations tests', function () { const createdAt = moment().subtract(10, 'm'); const measurement = { value: -1, createdAt }; - return chakram.post(POST_MEASUREMENT_URL, measurement, authHeader) + return chakram.post(POST_MEASUREMENT_URL, measurement, authHeaderBox) .then(logResponseIfError) .then(function (response) { expect(response).to.have.status(201); @@ -382,12 +384,12 @@ describe('openSenseMap API locations tests', function () { // timestamp exactly at time of location set through PUT /boxes/:boxID const measurement2 = { value: 1, createdAt: submitTimeLoc1 }; - return chakram.post(POST_MEASUREMENT_URL, measurement1, authHeader) + return chakram.post(POST_MEASUREMENT_URL, measurement1, authHeaderBox) .then(logResponseIfError) .then(function (response) { expect(response).to.have.status(201); - return chakram.post(POST_MEASUREMENT_URL, measurement2, authHeader); + return chakram.post(POST_MEASUREMENT_URL, measurement2, authHeaderBox); }) .then(function (response) { expect(response).to.have.status(201); @@ -428,18 +430,18 @@ describe('openSenseMap API locations tests', function () { createdAt: measurement2.createdAt.clone().subtract(2, 'ms') }; - return chakram.post(POST_MEASUREMENT_URL, measurement3, authHeader) + return chakram.post(POST_MEASUREMENT_URL, measurement3, authHeaderBox) .then(logResponseIfError) .then(function (response) { expect(response).to.have.status(201); - return chakram.post(POST_MEASUREMENT_URL, measurement2, authHeader); + return chakram.post(POST_MEASUREMENT_URL, measurement2, authHeaderBox); }) .then(logResponseIfError) .then(function (response) { expect(response).to.have.status(201); - return chakram.post(POST_MEASUREMENT_URL, measurement1, authHeader); + return chakram.post(POST_MEASUREMENT_URL, measurement1, authHeaderBox); }) .then(logResponseIfError) .then(function (response) { @@ -482,8 +484,7 @@ describe('openSenseMap API locations tests', function () { const measurements = {}; measurements[box.sensors[1]._id] = [7, moment().subtract(2, 'ms'), [7, 7, 7]]; measurements[box.sensors[2]._id] = [8, moment(), { lat: 8, lng: 8, height: 8 }]; - - return chakram.post(BASE_URL, measurements, authHeader) + return chakram.post(BASE_URL, measurements, authHeaderBox) .then(logResponseIfError) .then(function (response) { expect(response).to.have.status(201); @@ -510,7 +511,7 @@ describe('openSenseMap API locations tests', function () { { sensor_id: sensor, value: 10.5 }, ]; - return chakram.post(BASE_URL, measurements, authHeader) + return chakram.post(BASE_URL, measurements, authHeaderBox) .then(logResponseIfError) .then(function (response) { expect(response).to.have.status(201); @@ -547,13 +548,12 @@ describe('openSenseMap API locations tests', function () { describe('text/csv', function () { - // const csvHeader = Object.assign({ json: false, headers: { 'Content-Type': 'text/csv' } }, authHeader); - const csvHeader = { json: false, headers: { 'Content-Type': 'text/csv' } }; - + // const csvAndAuthHeader = Object.assign({ json: false, headers: { 'Content-Type': 'text/csv' } }, authHeaderBox); + it('should accept 2D locations', function () { const measurements = `${box.sensors[3]._id},11,${moment().toISOString()},11,11`; - return chakram.post(BASE_URL, measurements, csvHeader) + return chakram.post(BASE_URL, measurements, csvAndAuthHeader) .then(logResponseIfError) .then(function (response) { expect(response).to.have.status(201); @@ -578,7 +578,7 @@ describe('openSenseMap API locations tests', function () { [sensor, 12.6, moment().subtract(2, 'ms').toISOString(), 12, 12, 12].join(','), // eslint-disable-line newline-per-chained-call ].join('\n'); - return chakram.post(BASE_URL, measurements, csvHeader) + return chakram.post(BASE_URL, measurements, csvAndAuthHeader) .then(logResponseIfError) .then(function (response) { expect(response).to.have.status(201); @@ -598,7 +598,7 @@ describe('openSenseMap API locations tests', function () { it('should reject measurements with location & w/out createdAt', function () { const measurements = `${box.sensors[3]._id},13,13,13,13`; // id,value,lng,lat,height - return chakram.post(BASE_URL, measurements, csvHeader) + return chakram.post(BASE_URL, measurements, csvAndAuthHeader) .then(function (response) { expect(response).to.have.status(422); @@ -912,7 +912,7 @@ describe('openSenseMap API locations tests', function () { return chakram.post(`${process.env.OSEM_TEST_BASE_URL}/boxes/${box._id}/data`, [ { sensor_id: box.sensors[4]._id, value: 123, location: [-3, -3, -3], createdAt: daysAgo3 }, { sensor_id: box.sensors[4]._id, value: 321, location: [-4, -4, -4], createdAt: daysAgo6 }, - ], authHeader) + ], authHeaderBox) .then(logResponseIfError) .then(function (response) { expect(response).to.have.status(201); diff --git a/tests/tests/003-idw-test.js b/tests/tests/003-idw-test.js index d240778e..794ee166 100644 --- a/tests/tests/003-idw-test.js +++ b/tests/tests/003-idw-test.js @@ -33,7 +33,7 @@ describe('openSenseMap API Routes: /statistics/idw', function () { ]); }) .then(function (responses) { - const boxes = responses.map(r => { return { _id: r.body.data._id, sensorid: r.body.data.sensors[0]._id }; }); + const boxes = responses.map(r => { return { _id: r.body.data._id, sensorid: r.body.data.sensors[0]._id, access_token: r.body.data.access_token }; }); for (const [ i, box ] of boxes.entries()) { box.measurements = []; @@ -50,14 +50,13 @@ describe('openSenseMap API Routes: /statistics/idw', function () { } const [ first, second, third, fourth, fifth, sixth ] = boxes; - return chakram.all([ - chakram.post(`${process.env.OSEM_TEST_BASE_URL}/boxes/${first._id}/data`, first.measurements, { headers: { 'content-type': 'application/json' } }), - chakram.post(`${process.env.OSEM_TEST_BASE_URL}/boxes/${second._id}/data`, second.measurements, { headers: { 'content-type': 'application/json' } }), - chakram.post(`${process.env.OSEM_TEST_BASE_URL}/boxes/${third._id}/data`, third.measurements, { headers: { 'content-type': 'application/json' } }), - chakram.post(`${process.env.OSEM_TEST_BASE_URL}/boxes/${fourth._id}/data`, fourth.measurements, { headers: { 'content-type': 'application/json' } }), - chakram.post(`${process.env.OSEM_TEST_BASE_URL}/boxes/${fifth._id}/data`, fifth.measurements, { headers: { 'content-type': 'application/json' } }), - chakram.post(`${process.env.OSEM_TEST_BASE_URL}/boxes/${sixth._id}/data`, sixth.measurements, { headers: { 'content-type': 'application/json' } }), + chakram.post(`${process.env.OSEM_TEST_BASE_URL}/boxes/${first._id}/data`, first.measurements, { headers: { 'content-type': 'application/json', 'Authorization': first.access_token} }), + chakram.post(`${process.env.OSEM_TEST_BASE_URL}/boxes/${second._id}/data`, second.measurements, { headers: { 'content-type': 'application/json', 'Authorization': second.access_token } }), + chakram.post(`${process.env.OSEM_TEST_BASE_URL}/boxes/${third._id}/data`, third.measurements, { headers: { 'content-type': 'application/json', 'Authorization': third.access_token } }), + chakram.post(`${process.env.OSEM_TEST_BASE_URL}/boxes/${fourth._id}/data`, fourth.measurements, { headers: { 'content-type': 'application/json', 'Authorization': fourth.access_token } }), + chakram.post(`${process.env.OSEM_TEST_BASE_URL}/boxes/${fifth._id}/data`, fifth.measurements, { headers: { 'content-type': 'application/json', 'Authorization': fifth.access_token } }), + chakram.post(`${process.env.OSEM_TEST_BASE_URL}/boxes/${sixth._id}/data`, sixth.measurements, { headers: { 'content-type': 'application/json', 'Authorization': sixth.access_token } }), ]); }) .then(function () { diff --git a/tests/tests/005-create-boxes-test.js b/tests/tests/005-create-boxes-test.js index 07b4d4f1..a1129a62 100644 --- a/tests/tests/005-create-boxes-test.js +++ b/tests/tests/005-create-boxes-test.js @@ -83,7 +83,6 @@ describe('openSenseMap API Routes: /boxes', function () { .then(function (response) { expect(response).to.have.status(201); expect(response).to.have.header('content-type', 'application/json; charset=utf-8'); - boxId = response.body.data._id; boxCount = boxCount + 1; boxIds.push(boxId); diff --git a/tests/tests/006-submit-measurements-test.js b/tests/tests/006-submit-measurements-test.js index cae31dcf..c7661ffb 100644 --- a/tests/tests/006-submit-measurements-test.js +++ b/tests/tests/006-submit-measurements-test.js @@ -43,7 +43,7 @@ describe('submitting measurements', function () { it('should accept a single measurement via POST', function () { let submitTime; - return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/${boxes[0].sensors[0]._id}`, { 'value': 312.1 }) + return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/${boxes[0].sensors[0]._id}`, { 'value': 312.1 }, {headers: {'Authorization' : boxes[0].access_token} }) .then(function (response) { submitTime = moment.utc(response.response.headers.date, 'ddd, DD MMM YYYY HH:mm:ss GMT'); expect(response).to.have.status(201); @@ -69,10 +69,22 @@ describe('submitting measurements', function () { }); }); + it('should reject a single measurement via POST with wrong access_token', function () { + + return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/${boxes[0].sensors[0]._id}`, { 'value': 312.1 }, {headers: {'Authorization' : 'wrongAccessToken'} }) + .then(function (response) { + expect(response).to.have.status(401); + expect(response.body.message).to.equal('Box access token not valid!'); + return chakram.wait(); + + // return chakram.get(`${BASE_URL}/boxes/${boxIds[0]}`); + }) + }); + it('should accept a single measurement with timestamp via POST', function () { const submitTime = moment.utc().toISOString(); - return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/${boxes[0].sensors[1]._id}`, { 'value': 123.4, 'createdAt': submitTime }) + return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/${boxes[0].sensors[1]._id}`, { 'value': 123.4, 'createdAt': submitTime }, {headers: {'Authorization' : boxes[0].access_token} }) .then(function (response) { expect(response).to.have.status(201); expect(response.body).to.equal('Measurement saved in box'); @@ -101,7 +113,7 @@ describe('submitting measurements', function () { const submitTime = moment.utc().add(1.5, 'minutes') .toISOString(); - return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/${boxes[0].sensors[1]._id}`, { 'value': 123.4, 'createdAt': submitTime }) + return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/${boxes[0].sensors[1]._id}`, { 'value': 123.4, 'createdAt': submitTime }, {headers: {'Authorization' : boxes[0].access_token} }) .then(function (response) { expect(response).to.have.status(422); @@ -116,7 +128,7 @@ describe('submitting measurements', function () { it('should accept multiple measurements as csv via POST', function () { let submitTime; - return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, csv_example_data.no_timestamps(boxes[0].sensors), { json: false, headers: { 'content-type': 'text/csv' } }) + return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, csv_example_data.no_timestamps(boxes[0].sensors), { json: false, headers: { 'content-type': 'text/csv', 'Authorization' : boxes[0].access_token} }) .then(function (response) { submitTime = moment.utc(response.response.headers.date, 'ddd, DD MMM YYYY HH:mm:ss GMT'); expect(response).to.have.status(201); @@ -138,10 +150,22 @@ describe('submitting measurements', function () { }); }); + it('should reject multiple measurements as csv via POST with wrong access_token', function () { + + return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, csv_example_data.no_timestamps(boxes[0].sensors), { json: false, headers: { 'content-type': 'text/csv', 'Authorization' : 'WRONGAUTHTOKEN'} }) + .then(function (response) { + expect(response).to.have.status(401); + expect(JSON.parse(response.body).message).to.equal('Box access token not valid!'); + + return chakram.wait(); + + }) + }); + it('should accept multiple measurements with timestamps as csv via POST', function () { let submitTime; - return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, csv_example_data.with_timestamps(boxes[0].sensors), { json: false, headers: { 'content-type': 'text/csv' } }) + return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, csv_example_data.with_timestamps(boxes[0].sensors), { json: false, headers: { 'content-type': 'text/csv', 'Authorization' : boxes[0].access_token } }) .then(function (response) { submitTime = moment.utc(response.response.headers.date, 'ddd, DD MMM YYYY HH:mm:ss GMT'); expect(response).to.have.status(201); @@ -164,7 +188,7 @@ describe('submitting measurements', function () { }); it('should reject multiple measurements with timestamps too far into the future as csv via POST', function () { - return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, csv_example_data.with_timestamps_future(boxes[0].sensors), { json: false, headers: { 'content-type': 'text/csv' } }) + return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, csv_example_data.with_timestamps_future(boxes[0].sensors), { json: false, headers: { 'content-type': 'text/csv', 'Authorization' : boxes[0].access_token } }) .then(function (response) { expect(response).to.have.status(422); @@ -173,7 +197,7 @@ describe('submitting measurements', function () { }); it('should reject multiple measurements with too many fields as csv via POST', function () { - return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, csv_example_data.with_too_many(boxes[0].sensors), { json: false, headers: { 'content-type': 'text/csv' } }) + return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, csv_example_data.with_too_many(boxes[0].sensors), { json: false, headers: { 'content-type': 'text/csv', 'Authorization' : boxes[0].access_token } }) .then(function (response) { expect(response).to.have.status(422); @@ -182,7 +206,7 @@ describe('submitting measurements', function () { }); it('should accept multiple csv measurements from ten days ago', function () { - return chakram.post(`${BASE_URL}/boxes/${boxIds[1]}/data`, csv_example_data.ten_days_ago_many(boxes[1].sensors), { json: false, headers: { 'content-type': 'text/csv' } }) + return chakram.post(`${BASE_URL}/boxes/${boxIds[1]}/data`, csv_example_data.ten_days_ago_many(boxes[1].sensors), { json: false, headers: { 'content-type': 'text/csv', 'Authorization' : boxes[1].access_token } }) .then(function (response) { expect(response).to.have.status(201); @@ -207,7 +231,7 @@ describe('submitting measurements', function () { it('should accept multiple measurements with timestamps as json object via POST and Content-type: json', function () { let submitTime; - return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, JSON.stringify(json_submit_data.json_obj(boxes[0].sensors)), { json: false, headers: { 'content-type': 'json' } }) + return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, JSON.stringify(json_submit_data.json_obj(boxes[0].sensors)), { json: false, headers: { 'content-type': 'json', 'Authorization' : boxes[0].access_token } }) .then(function (response) { submitTime = moment.utc(response.response.headers.date, 'ddd, DD MMM YYYY HH:mm:ss GMT'); expect(response).to.have.status(201); @@ -233,7 +257,7 @@ describe('submitting measurements', function () { it('should accept multiple measurements with timestamps as json object via POST', function () { let submitTime; - return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, json_submit_data.json_obj(boxes[0].sensors)) + return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, json_submit_data.json_obj(boxes[0].sensors), {headers: {'Authorization' : boxes[0].access_token} }) .then(function (response) { submitTime = moment.utc(response.response.headers.date, 'ddd, DD MMM YYYY HH:mm:ss GMT'); expect(response).to.have.status(201); @@ -262,7 +286,7 @@ describe('submitting measurements', function () { it('should accept multiple measurements with timestamps as json array via POST', function () { let submitTime; - return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, json_submit_data.json_arr(boxes[0].sensors)) + return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, json_submit_data.json_arr(boxes[0].sensors), {headers: {'Authorization' : boxes[0].access_token} }) .then(function (response) { submitTime = moment.utc(response.response.headers.date, 'ddd, DD MMM YYYY HH:mm:ss GMT'); expect(response).to.have.status(201); @@ -298,7 +322,7 @@ describe('submitting measurements', function () { { sensor_id, value: 0.7, createdAt: '2016-01-23T08:37:23.000Z' } ]; - return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, payload) + return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, payload, {headers: {'Authorization' : boxes[0].access_token} }) .then(function (response) { expect(response).to.have.status(201); expect(response.body).to.equal('Measurements saved in box'); @@ -332,7 +356,7 @@ describe('submitting measurements', function () { { sensor: boxes[0].sensors[3]._id, value: 0.3, createdAt: '2010-01-02T01:00:22.000Z' }, ]; - return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, payload) + return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, payload, {headers: {'Authorization' : boxes[0].access_token} }) .then(function (response) { expect(response).to.have.status(201); expect(response.body).to.equal('Measurements saved in box'); @@ -368,7 +392,7 @@ describe('submitting measurements', function () { { sensor: boxes[0].sensors[3]._id, value: 0.3, createdAt: '2010-01-02T01:00:22.000Z' }, ]; - return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, payload) + return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, payload, {headers: {'Authorization' : boxes[0].access_token} }) .then(function (response) { expect(response).to.have.status(201); expect(response.body).to.equal('Measurements saved in box'); @@ -395,7 +419,7 @@ describe('submitting measurements', function () { it('should accept multiple measurements as bytes via POST', function () { let submitTime; - return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, byte_submit_data(boxes[0].sensors), { json: false, headers: { 'content-type': 'application/sbx-bytes' } }) + return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, byte_submit_data(boxes[0].sensors), { json: false, headers: { 'content-type': 'application/sbx-bytes', 'Authorization' : boxes[0].access_token} }) .then(function (response) { submitTime = moment.utc(response.response.headers.date, 'ddd, DD MMM YYYY HH:mm:ss GMT'); expect(response).to.have.status(201); @@ -421,7 +445,7 @@ describe('submitting measurements', function () { it('should accept multiple measurements as bytes with timestamp via POST', function () { let submitTime; - return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, byte_submit_data(boxes[0].sensors, true), { json: false, headers: { 'content-type': 'application/sbx-bytes-ts' } }) + return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, byte_submit_data(boxes[0].sensors, true), { json: false, headers: { 'content-type': 'application/sbx-bytes-ts', 'Authorization' : boxes[0].access_token } }) .then(function (response) { submitTime = moment.utc(response.response.headers.date, 'ddd, DD MMM YYYY HH:mm:ss GMT'); expect(response).to.have.status(201); diff --git a/tests/tests/007-download-data-test.js b/tests/tests/007-download-data-test.js index 914a337f..f8bcfed2 100644 --- a/tests/tests/007-download-data-test.js +++ b/tests/tests/007-download-data-test.js @@ -205,6 +205,18 @@ describe('downloading data', function () { }); }); + it('should return only value of a single sensor of a box for /boxes/:boxid/sensors/:sensorId?onlyValue=true GET', function () { + return chakram.get(`${BASE_URL}/boxes/${boxes[0]._id}/sensors/${boxes[0].sensors[0]._id}?onlyValue=true`) + .then(function (response) { + expect(response).to.have.status(200); + expect(response).to.have.header('content-type', 'application/json; charset=utf-8'); + expect(parseFloat(response.body)).to.be.a('number'); + + return chakram.wait(); + }); + }); + + }); describe('/boxes/:boxid/data/:sensorid', function () { diff --git a/tests/tests/010-luftdaten-test.js b/tests/tests/010-luftdaten-test.js index 1bde225f..2adbb0c8 100644 --- a/tests/tests/010-luftdaten-test.js +++ b/tests/tests/010-luftdaten-test.js @@ -27,7 +27,6 @@ describe('openSenseMap API luftdaten.info devices', function () { .then(function (response) { expect(response).to.have.status(201); expect(response).to.have.header('content-type', 'application/json; charset=utf-8'); - const boxId = response.body.data._id; dht11_id = boxId; diff --git a/tests/tests/013-classify-test.js b/tests/tests/013-classify-test.js index 48d0f104..7f366741 100644 --- a/tests/tests/013-classify-test.js +++ b/tests/tests/013-classify-test.js @@ -25,7 +25,7 @@ describe('openSenseMap API Routes: getBoxes Classification', function () { ]); }) .then(function (responses) { - const boxes = responses.map(r => { return { _id: r.body.data._id, sensorid: r.body.data.sensors[0]._id, name: r.body.data.name }; }); + const boxes = responses.map(r => { return { _id: r.body.data._id, sensorid: r.body.data.sensors[0]._id, name: r.body.data.name, access_token: r.body.data.access_token }; }); for (const [i, box] of boxes.entries()) { box.measurements = []; @@ -54,9 +54,9 @@ describe('openSenseMap API Routes: getBoxes Classification', function () { const [first, second, third] = boxes; return chakram.all([ - chakram.post(`${process.env.OSEM_TEST_BASE_URL}/boxes/${first._id}/data`, first.measurements, { headers: { 'content-type': 'application/json' } }), - chakram.post(`${process.env.OSEM_TEST_BASE_URL}/boxes/${second._id}/data`, second.measurements, { headers: { 'content-type': 'application/json' } }), - chakram.post(`${process.env.OSEM_TEST_BASE_URL}/boxes/${third._id}/data`, third.measurements, { headers: { 'content-type': 'application/json' } }), + chakram.post(`${process.env.OSEM_TEST_BASE_URL}/boxes/${first._id}/data`, first.measurements, { headers: { 'content-type': 'application/json', 'Authorization': first.access_token } }), + chakram.post(`${process.env.OSEM_TEST_BASE_URL}/boxes/${second._id}/data`, second.measurements, { headers: { 'content-type': 'application/json', 'Authorization': second.access_token } }), + chakram.post(`${process.env.OSEM_TEST_BASE_URL}/boxes/${third._id}/data`, third.measurements, { headers: { 'content-type': 'application/json', 'Authorization': third.access_token } }), ]); }); }); diff --git a/tests/tests/014-descriptive-statistics-test.js b/tests/tests/014-descriptive-statistics-test.js index 109ca1c7..b7580e1c 100644 --- a/tests/tests/014-descriptive-statistics-test.js +++ b/tests/tests/014-descriptive-statistics-test.js @@ -25,7 +25,7 @@ describe('openSenseMap API Routes: basic descriptive statistics', function () { ]); }) .then(function (responses) { - const boxes = responses.map(r => { return { _id: r.body.data._id, sensorid: r.body.data.sensors[0]._id }; }); + const boxes = responses.map(r => { return { _id: r.body.data._id, sensorid: r.body.data.sensors[0]._id, access_token: r.body.data.access_token }; }); boxIds = responses.map(r => r.body.data._id).join(','); for (const box of boxes) { @@ -108,9 +108,9 @@ ${box.sensorid},3,2018-02-05T14:06:12.620Z const [first, second, third] = boxes; return chakram.all([ - chakram.post(`${process.env.OSEM_TEST_BASE_URL}/boxes/${first._id}/data`, first.measurements, { json: false, headers: { 'content-type': 'text/csv' } }), - chakram.post(`${process.env.OSEM_TEST_BASE_URL}/boxes/${second._id}/data`, second.measurements, { json: false, headers: { 'content-type': 'text/csv' } }), - chakram.post(`${process.env.OSEM_TEST_BASE_URL}/boxes/${third._id}/data`, third.measurements, { json: false, headers: { 'content-type': 'text/csv' } }), + chakram.post(`${process.env.OSEM_TEST_BASE_URL}/boxes/${first._id}/data`, first.measurements, { json: false, headers: { 'content-type': 'text/csv', 'Authorization': first.access_token } }), + chakram.post(`${process.env.OSEM_TEST_BASE_URL}/boxes/${second._id}/data`, second.measurements, { json: false, headers: { 'content-type': 'text/csv', 'Authorization': second.access_token } }), + chakram.post(`${process.env.OSEM_TEST_BASE_URL}/boxes/${third._id}/data`, third.measurements, { json: false, headers: { 'content-type': 'text/csv', 'Authorization': third.access_token } }), ]); }); }); diff --git a/tests/tests/016-hackair-test.js b/tests/tests/016-hackair-test.js index c4b0b1c1..86b2e0c2 100644 --- a/tests/tests/016-hackair-test.js +++ b/tests/tests/016-hackair-test.js @@ -84,7 +84,7 @@ describe('openSenseMap API hackAIR devices', function () { expect(response).to.have.status(401); expect(response.body).to.be.an('object'); expect(response.body.message).to.be.a('string'); - expect(response.body.message).to.equal('Access token not valid!'); + expect(response.body.message).to.equal('Box access token not valid!'); }); }); }); diff --git a/yarn.lock b/yarn.lock index 20803f04..222112b1 100644 --- a/yarn.lock +++ b/yarn.lock @@ -42,10 +42,10 @@ resolved "https://registry.yarnpkg.com/@sensebox/osem-protos/-/osem-protos-1.1.0.tgz#a7de8bc6be867953f1309181a012063c23299e79" integrity sha512-H+nUVcWlT0dvIqfJnYHuX9JBcCkP1ZKGE5YTRNWPbAEdZ11h+srpQsmeI58wK5hJcdukaZAjc4Dy96IeGM77aA== -"@sensebox/sketch-templater@^1.8.2": - version "1.8.2" - resolved "https://registry.yarnpkg.com/@sensebox/sketch-templater/-/sketch-templater-1.8.2.tgz#70ee33479b6ee03402e6e9575b19b9388b7e947f" - integrity sha512-gqW8ltzu/CYLVtiC7FnpU775LMPr8lO05TcZfQfFoLVg7JRsAX0xicFTc03NW7C3e813w16tyxqZInzPYf6RaQ== +"@sensebox/sketch-templater@^1.8.3-beta.0": + version "1.8.3-beta.0" + resolved "https://registry.yarnpkg.com/@sensebox/sketch-templater/-/sketch-templater-1.8.3-beta.0.tgz#7eccf67469725741dc4a55fcf43f872dd37e1409" + integrity sha512-nsVkMmqr6tDJ4x48qiLyFOAJL1LLhavtg5dksqJa7qeFXQ2AHMmUC8uiU9r2PstANFDDRUDqFZ2rN69rl+NYog== dependencies: config "^1.29.2" dedent "^0.7.0" @@ -452,33 +452,15 @@ bcrypt@^5.0.0: node-addon-api "^3.0.0" node-pre-gyp "0.15.0" -bcrypt@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/bcrypt/-/bcrypt-4.0.1.tgz#06e21e749a061020e4ff1283c1faa93187ac57fe" - integrity sha512-hSIZHkUxIDS5zA2o00Kf2O5RfVbQ888n54xQoF/eIaquU4uaLxK8vhhBdktd0B3n2MjkcAWzv4mnhogykBKOUQ== - dependencies: - node-addon-api "^2.0.0" - node-pre-gyp "0.14.0" - -binary-extensions@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.0.0.tgz#23c0df14f6a88077f5f986c0d167ec03c3d5537c" - integrity sha512-Phlt0plgpIIBOGTT/ehfFnbNlfsDEiqmzE2KRXoX1bLIlir4X/MR+zSyBEkL05ffWgnRSf/DXv+WrUAVr93/ow== - -binary-extensions@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.0.0.tgz#23c0df14f6a88077f5f986c0d167ec03c3d5537c" - integrity sha512-Phlt0plgpIIBOGTT/ehfFnbNlfsDEiqmzE2KRXoX1bLIlir4X/MR+zSyBEkL05ffWgnRSf/DXv+WrUAVr93/ow== - binary-extensions@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.0.0.tgz#23c0df14f6a88077f5f986c0d167ec03c3d5537c" integrity sha512-Phlt0plgpIIBOGTT/ehfFnbNlfsDEiqmzE2KRXoX1bLIlir4X/MR+zSyBEkL05ffWgnRSf/DXv+WrUAVr93/ow== bl@^1.2.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/bl/-/bl-1.2.2.tgz#a160911717103c07410cef63ef51b397c025af9c" - integrity sha512-e8tQYnZodmebYDWGH7KMRvtzKXaJHx3BbilrgZCfvyLUYdKpK1t5PSPmpkny/SgiTSCnjfLW7v5rlONXVFkQEA== + version "1.2.3" + resolved "https://registry.yarnpkg.com/bl/-/bl-1.2.3.tgz#1e8dd80142eac80d7158c9dccc047fb620e035e7" + integrity sha512-pvcNpa0UU69UT341rO6AYy4FVAIkUHuZXRIWbq+zHnsVcRzDDjIAhGuuYoi0d//cwIwtt4pkpKycWEfjdV+vww== dependencies: readable-stream "^2.3.5" safe-buffer "^5.1.1" @@ -533,7 +515,7 @@ buffer-shims@^1.0.0, buffer-shims@~1.0.0: resolved "https://registry.yarnpkg.com/buffer-shims/-/buffer-shims-1.0.0.tgz#9978ce317388c649ad8793028c3477ef044a8b51" integrity sha1-mXjOMXOIxkmth5MCjDR37wRKi1E= -bunyan@^1.8.1, bunyan@^1.8.12, bunyan@^1.8.14: +bunyan@^1.8.1, bunyan@^1.8.14: version "1.8.14" resolved "https://registry.yarnpkg.com/bunyan/-/bunyan-1.8.14.tgz#3d8c1afea7de158a5238c7cb8a66ab6b38dd45b4" integrity sha512-LlahJUxXzZLuw/hetUQJmRgZ1LF6+cr5TPpRj6jf327AsiIq2jhYEH4oqUUkVKTor+9w2BT3oxVwhzE5lw9tcg== @@ -830,10 +812,10 @@ config@^1.29.2: dependencies: json5 "^1.0.1" -config@^3.3.1: - version "3.3.1" - resolved "https://registry.yarnpkg.com/config/-/config-3.3.1.tgz#b6a70e2908a43b98ed20be7e367edf0cc8ed5a19" - integrity sha512-+2/KaaaAzdwUBE3jgZON11L1ggLLhpf2FsGrfqYFHZW22ySGv/HqYIXrBwKKvn+XZh1UBUjHwAcrfsSkSygT+Q== +config@^3.3.2: + version "3.3.2" + resolved "https://registry.yarnpkg.com/config/-/config-3.3.2.tgz#35be3846054340f0f79778b2445afffbc11867c7" + integrity sha512-NlGfBn2565YA44Irn7GV5KHlIGC3KJbf0062/zW5ddP9VXIuRj0m7HVyFAWvMZvaHPEglyGfwmevGz3KosIpCg== dependencies: json5 "^2.1.1" @@ -1667,10 +1649,10 @@ globals@^12.1.0: dependencies: type-fest "^0.8.1" -got@^11.6.0: - version "11.6.0" - resolved "https://registry.yarnpkg.com/got/-/got-11.6.0.tgz#4978c78f3cbc3a45ee95381f8bb6efd1db1f4638" - integrity sha512-ErhWb4IUjQzJ3vGs3+RR12NWlBDDkRciFpAkQ1LPUxi6OnwhGj07gQxjPsyIk69s7qMihwKrKquV6VQq7JNYLA== +got@^11.7.0: + version "11.7.0" + resolved "https://registry.yarnpkg.com/got/-/got-11.7.0.tgz#a386360305571a74548872e674932b4ef70d3b24" + integrity sha512-7en2XwH2MEqOsrK0xaKhbWibBoZqy+f1RSUoIeF1BLcnf+pyQdDsljWMfmOh+QKJwuvDIiKx38GtPh5wFdGGjg== dependencies: "@sindresorhus/is" "^3.1.1" "@szmarczak/http-timer" "^4.0.5" @@ -2365,16 +2347,6 @@ minimist@^1.1.0, minimist@^1.2.0, minimist@^1.2.5: resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== -minimist@^1.2.5: - version "1.2.5" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" - integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== - -minimist@^1.2.5: - version "1.2.5" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" - integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== - minipass@^2.6.0, minipass@^2.8.6, minipass@^2.9.0: version "2.9.0" resolved "https://registry.yarnpkg.com/minipass/-/minipass-2.9.0.tgz#e713762e7d3e32fed803115cf93e04bca9fcc9a6" @@ -2427,10 +2399,10 @@ mocha@^7.1.2: yargs-parser "13.1.2" yargs-unparser "1.6.0" -moment@^2.19.3, moment@^2.27.0: - version "2.27.0" - resolved "https://registry.yarnpkg.com/moment/-/moment-2.27.0.tgz#8bff4e3e26a236220dfe3e36de756b6ebaa0105d" - integrity sha512-al0MUK7cpIcglMv3YF13qSgdAIqxHTO7brRtaz3DlSULbqfazqkc5kEjNrLDOM7fsjshoFIihnU8snrP7zUvhQ== +moment@^2.19.3, moment@^2.29.1: + version "2.29.1" + resolved "https://registry.yarnpkg.com/moment/-/moment-2.29.1.tgz#b2be769fa31940be9eeea6469c075e35006fa3d3" + integrity sha512-kHmoybcPV8Sqy59DwNDY3Jefr64lK/by/da0ViFcuA4DH0vQg5Q6Ze5VimxkfQNSC+Mls/Kx53s7TjP1RhFEDQ== mongodb-core@2.1.18: version "2.1.18" @@ -2585,24 +2557,6 @@ needle@^2.5.0: iconv-lite "^0.4.4" sax "^1.2.4" -needle@^2.5.0: - version "2.5.0" - resolved "https://registry.yarnpkg.com/needle/-/needle-2.5.0.tgz#e6fc4b3cc6c25caed7554bd613a5cf0bac8c31c0" - integrity sha512-o/qITSDR0JCyCKEQ1/1bnUXMmznxabbwi/Y4WwJElf+evwJNFNwIDMCCt5IigFVxgeGBJESLohGtIS9gEzo1fA== - dependencies: - debug "^3.2.6" - iconv-lite "^0.4.4" - sax "^1.2.4" - -needle@^2.5.0: - version "2.5.0" - resolved "https://registry.yarnpkg.com/needle/-/needle-2.5.0.tgz#e6fc4b3cc6c25caed7554bd613a5cf0bac8c31c0" - integrity sha512-o/qITSDR0JCyCKEQ1/1bnUXMmznxabbwi/Y4WwJElf+evwJNFNwIDMCCt5IigFVxgeGBJESLohGtIS9gEzo1fA== - dependencies: - debug "^3.2.6" - iconv-lite "^0.4.4" - sax "^1.2.4" - negotiator@^0.6.1: version "0.6.2" resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.2.tgz#feacf7ccf525a77ae9634436a64883ffeca346fb" @@ -3255,9 +3209,9 @@ rxjs@^6.5.3: tslib "^1.9.0" safe-buffer@^5.0.1, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@~5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.0.tgz#b74daec49b1148f88c64b68d49b1e815c1f2f519" - integrity sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg== + version "5.2.1" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" + integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== safe-buffer@~5.1.0, safe-buffer@~5.1.1: version "5.1.2" @@ -3316,10 +3270,10 @@ signal-exit@^3.0.0, signal-exit@^3.0.2: resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.3.tgz#a1410c2edd8f077b08b4e253c8eacfcaf057461c" integrity sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA== -simple-statistics@^7.2.0: - version "7.2.0" - resolved "https://registry.yarnpkg.com/simple-statistics/-/simple-statistics-7.2.0.tgz#f6912250340d1f71ed9bb74755115cb741edea09" - integrity sha512-lx8tPifqqXcOYw7yW8uO/c+2p3CCozhxLXebDi2iYH4cTGF3sbnBmVFZzIpb3w1B3bjHvEfewfy0q85MpRM1dg== +simple-statistics@^7.3.0: + version "7.3.0" + resolved "https://registry.yarnpkg.com/simple-statistics/-/simple-statistics-7.3.0.tgz#e2835b17ada3a217886fad1ebc6f8175088bd501" + integrity sha512-eGZFLeolvspUYdGeDX7xN8eZONps4Os2W/l+7t7usgHTqc4M2sWIBx95hr4ZNlK6rQATypo8MfsORc/o56roQg== slice-ansi@^2.1.0: version "2.1.0" From a142f5b0466af74a84fe25eeded841f940ccedef Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 26 Oct 2020 11:24:55 +0100 Subject: [PATCH 096/337] Bump simple-statistics from 7.3.0 to 7.3.1 (#364) Bumps [simple-statistics](https://github.com/simple-statistics/simple-statistics) from 7.3.0 to 7.3.1. - [Release notes](https://github.com/simple-statistics/simple-statistics/releases) - [Changelog](https://github.com/simple-statistics/simple-statistics/blob/master/CHANGELOG.md) - [Commits](https://github.com/simple-statistics/simple-statistics/compare/v7.3.0...v7.3.1) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> --- packages/api/package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/api/package.json b/packages/api/package.json index 6f74d8ad..3b18813b 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -33,7 +33,7 @@ "ms": "^2.1.1", "restify": "^5.2.0", "restify-errors": "^8.0.2", - "simple-statistics": "^7.3.0", + "simple-statistics": "^7.3.1", "stringify-stream": "^1.0.5", "uuid": "^7.0.3" }, diff --git a/yarn.lock b/yarn.lock index 222112b1..3c5ba467 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3270,10 +3270,10 @@ signal-exit@^3.0.0, signal-exit@^3.0.2: resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.3.tgz#a1410c2edd8f077b08b4e253c8eacfcaf057461c" integrity sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA== -simple-statistics@^7.3.0: - version "7.3.0" - resolved "https://registry.yarnpkg.com/simple-statistics/-/simple-statistics-7.3.0.tgz#e2835b17ada3a217886fad1ebc6f8175088bd501" - integrity sha512-eGZFLeolvspUYdGeDX7xN8eZONps4Os2W/l+7t7usgHTqc4M2sWIBx95hr4ZNlK6rQATypo8MfsORc/o56roQg== +simple-statistics@^7.3.1: + version "7.3.1" + resolved "https://registry.yarnpkg.com/simple-statistics/-/simple-statistics-7.3.1.tgz#12cac547a075ed718662eabf427894ec6a3a0396" + integrity sha512-8RktUtizYSzj8vRIvEF8jpHiUcRz3MW/2pppzm0emrEQ3JaV10Kp0DCn4zj4QOCLL4pe/QQ03g88Oy+UbyNSqQ== slice-ansi@^2.1.0: version "2.1.0" From 23f895acc3219257dba50efaa4a7abd8978596be Mon Sep 17 00:00:00 2001 From: Felix Erdmann Date: Thu, 29 Oct 2020 11:39:16 +0100 Subject: [PATCH 097/337] CO2 Sensor (#367) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * fix download in getData closes #325 (#349) (#350) * v9.6.0 Authentication (#363) * fix download in getData closes #325 (#349) * Bump simple-statistics from 7.2.0 to 7.3.0 (#352) Bumps [simple-statistics](https://github.com/simple-statistics/simple-statistics) from 7.2.0 to 7.3.0. - [Release notes](https://github.com/simple-statistics/simple-statistics/releases) - [Changelog](https://github.com/simple-statistics/simple-statistics/blob/master/CHANGELOG.md) - [Commits](https://github.com/simple-statistics/simple-statistics/compare/v7.2.0...v7.3.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * [Security] Bump bl from 1.2.2 to 1.2.3 (#353) Bumps [bl](https://github.com/rvagg/bl) from 1.2.2 to 1.2.3. **This update includes a security fix.** - [Release notes](https://github.com/rvagg/bl/releases) - [Commits](https://github.com/rvagg/bl/compare/v1.2.2...v1.2.3) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump got from 11.6.0 to 11.6.2 (#354) Bumps [got](https://github.com/sindresorhus/got) from 11.6.0 to 11.6.2. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v11.6.0...v11.6.2) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump moment from 2.27.0 to 2.28.0 (#355) Bumps [moment](https://github.com/moment/moment) from 2.27.0 to 2.28.0. - [Release notes](https://github.com/moment/moment/releases) - [Changelog](https://github.com/moment/moment/blob/develop/CHANGELOG.md) - [Commits](https://github.com/moment/moment/compare/2.27.0...2.28.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump got from 11.6.2 to 11.7.0 (#356) Bumps [got](https://github.com/sindresorhus/got) from 11.6.2 to 11.7.0. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v11.6.2...v11.7.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump moment from 2.28.0 to 2.29.0 (#357) Bumps [moment](https://github.com/moment/moment) from 2.28.0 to 2.29.0. - [Release notes](https://github.com/moment/moment/releases) - [Changelog](https://github.com/moment/moment/blob/develop/CHANGELOG.md) - [Commits](https://github.com/moment/moment/compare/2.28.0...2.29.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump config from 3.3.1 to 3.3.2 (#358) Bumps [config](https://github.com/lorenwest/node-config) from 3.3.1 to 3.3.2. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump moment from 2.29.0 to 2.29.1 (#359) Bumps [moment](https://github.com/moment/moment) from 2.29.0 to 2.29.1. - [Release notes](https://github.com/moment/moment/releases) - [Changelog](https://github.com/moment/moment/blob/develop/CHANGELOG.md) - [Commits](https://github.com/moment/moment/compare/2.29.0...2.29.1) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Auth (#362) * fix download in getData closes #325 (#349) (#350) * initial auth for boxes * auth for boxes that have not opt out * fix spelling * useAuth in updateBox * update access_token via generate_access_token * pass access_token to sketch templater * bump node-sketch-templater version (beta) * add authorization header anyways * auth beta * include useAuth in includeSecret requests * remove default true for useAuth, set true for new Boxes * update tests for auth feature, fix errors in auth code * add access_token to getSketch of newSketch email * update documentation 📜 * remove custom boxes from useAuth=true * add onlyValue in measurement controller * test for onlyValue feature * remove console.log Co-authored-by: Umut Tas Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Umut Tas * add co2 sensor * add co2 sensor * rename CO2 to CO₂ * update api models (beta) * bump node-sketch-templater beta * update api models (beta) * bump api-models version Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Umut Tas --- packages/api/lib/controllers/boxesController.js | 4 ++-- packages/api/package.json | 2 +- packages/models/CHANGELOG.md | 7 +++++++ packages/models/package.json | 4 ++-- .../models/src/box/sensorLayouts/sensebox.home.mcu.js | 6 ++++-- .../src/box/sensorLayouts/sensorDefinitions/index.js | 6 ++++-- .../box/sensorLayouts/sensorDefinitions/scd30_co2.js | 8 ++++++++ yarn.lock | 10 +++++----- 8 files changed, 33 insertions(+), 14 deletions(-) create mode 100644 packages/models/src/box/sensorLayouts/sensorDefinitions/scd30_co2.js diff --git a/packages/api/lib/controllers/boxesController.js b/packages/api/lib/controllers/boxesController.js index 470ace31..9b8f3e7f 100644 --- a/packages/api/lib/controllers/boxesController.js +++ b/packages/api/lib/controllers/boxesController.js @@ -381,7 +381,7 @@ const getBox = async function getBox (req, res, next) { * @apiParam (RequestBody) {Location} location the coordinates of this senseBox. * @apiParam (RequestBody) {String="homeV2Lora","homeV2Ethernet","homeV2Wifi","homeEthernet","homeWifi","homeEthernetFeinstaub","homeWifiFeinstaub","luftdaten_sds011","luftdaten_sds011_dht11","luftdaten_sds011_dht22","luftdaten_sds011_bmp180","luftdaten_sds011_bme280","hackair_home_v2"} [model] specify the model if you want to use a predefined senseBox model, autocreating sensor definitions. * @apiParam (RequestBody) {Sensor[]} [sensors] an array containing the sensors of this senseBox. Only use if `model` is unspecified. - * @apiParam (RequestBody) {String="hdc1080","bmp280","tsl45315","veml6070","sds011","bme680","smt50","soundlevelmeter", "windspeed"} [sensorTemplates] Specify which sensors should be included. + * @apiParam (RequestBody) {String="hdc1080","bmp280","tsl45315","veml6070","sds011","bme680","smt50","soundlevelmeter", "windspeed", "scd30"} [sensorTemplates] Specify which sensors should be included. * @apiParam (RequestBody) {Object} [mqtt] specify parameters of the MQTT integration for external measurement upload. Please see below for the accepted parameters * @apiParam (RequestBody) {Object} [ttn] specify parameters for the TTN integration for measurement from TheThingsNetwork.org upload. Please see below for the accepted parameters * @apiParam (RequestBody) {Boolean="true","false"} [useAuth] whether to use access_token or not for authentication @@ -541,7 +541,7 @@ module.exports = { { name: 'exposure', allowedValues: Box.BOX_VALID_EXPOSURES }, { name: 'model', allowedValues: Box.BOX_VALID_MODELS }, { name: 'sensors', dataType: ['object'] }, - { name: 'sensorTemplates', dataType: ['String'], allowedValues: ['hdc1080', 'bmp280', 'sds 011', 'tsl45315', 'veml6070', 'bme680', 'smt50', 'soundlevelmeter', 'windspeed'] }, + { name: 'sensorTemplates', dataType: ['String'], allowedValues: ['hdc1080', 'bmp280', 'sds 011', 'tsl45315', 'veml6070', 'bme680', 'smt50', 'soundlevelmeter', 'windspeed', 'scd30'] }, { name: 'serialPort', dataType: 'String', defaultValue: 'Serial1', allowedValues: ['Serial1', 'Serial2'] }, { name: 'soilDigitalPort', dataType: 'String', defaultValue: 'A', allowedValues: ['A', 'B', 'C'] }, { name: 'soundMeterPort', dataType: 'String', defaultValue: 'B', allowedValues: ['A', 'B', 'C'] }, diff --git a/packages/api/package.json b/packages/api/package.json index 3b18813b..230d5206 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -10,7 +10,7 @@ "Norwin Roosen" ], "dependencies": { - "@sensebox/opensensemap-api-models": "^0.0.26-beta.0", + "@sensebox/opensensemap-api-models": "^0.0.26", "@turf/area": "^6.0.1", "@turf/bbox": "^6.0.1", "@turf/centroid": "^6.0.2", diff --git a/packages/models/CHANGELOG.md b/packages/models/CHANGELOG.md index a7fd73cb..6d98f760 100644 --- a/packages/models/CHANGELOG.md +++ b/packages/models/CHANGELOG.md @@ -2,6 +2,13 @@ ## Unreleased +## v0.0.26 +- Update @sensebox/node-sketch-templater to v1.8.3 + +## v0.0.26-beta.2 + +## v0.0.26-beta.1 + ## v0.0.26-beta.0 - Authorization diff --git a/packages/models/package.json b/packages/models/package.json index d6140885..064755d1 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -1,12 +1,12 @@ { "name": "@sensebox/opensensemap-api-models", "description": "openSenseMap data models and database connection", - "version": "0.0.26-beta.0", + "version": "0.0.26", "main": "index.js", "license": "MIT", "dependencies": { "@sensebox/osem-protos": "^1.1.0", - "@sensebox/sketch-templater": "^1.8.3-beta.0", + "@sensebox/sketch-templater": "^1.8.3", "bcrypt": "^5.0.0", "bunyan": "^1.8.14", "config": "^3.3.2", diff --git a/packages/models/src/box/sensorLayouts/sensebox.home.mcu.js b/packages/models/src/box/sensorLayouts/sensebox.home.mcu.js index d34818ea..c89f0c49 100644 --- a/packages/models/src/box/sensorLayouts/sensebox.home.mcu.js +++ b/packages/models/src/box/sensorLayouts/sensebox.home.mcu.js @@ -17,7 +17,8 @@ const { smt50_soilmoisture, smt50_soiltemperature, soundlevelmeter, - windspeed + windspeed, + scd30_co2 } = sensorDefinitions; module.exports = [ @@ -35,5 +36,6 @@ module.exports = [ smt50_soilmoisture, smt50_soiltemperature, soundlevelmeter, - windspeed + windspeed, + scd30_co2 ]; diff --git a/packages/models/src/box/sensorLayouts/sensorDefinitions/index.js b/packages/models/src/box/sensorLayouts/sensorDefinitions/index.js index 7f616047..a23253a3 100644 --- a/packages/models/src/box/sensorLayouts/sensorDefinitions/index.js +++ b/packages/models/src/box/sensorLayouts/sensorDefinitions/index.js @@ -39,7 +39,8 @@ const veml6070_uvintensity = require('./veml6070_uvintensity'), smt50_soilmoisture = require('./smt50_soilmoisture'), smt50_soiltemperature = require('./smt50_soiltemperature'), soundlevelmeter = require('./soundlevelmeter'), - windspeed = require('./windspeed'); + windspeed = require('./windspeed'), + scd30_co2 = require('./scd30_co2') module.exports = { hdc1008_temperature, @@ -81,5 +82,6 @@ module.exports = { smt50_soilmoisture, smt50_soiltemperature, soundlevelmeter, - windspeed + windspeed, + scd30_co2 }; diff --git a/packages/models/src/box/sensorLayouts/sensorDefinitions/scd30_co2.js b/packages/models/src/box/sensorLayouts/sensorDefinitions/scd30_co2.js new file mode 100644 index 00000000..2bd0c814 --- /dev/null +++ b/packages/models/src/box/sensorLayouts/sensorDefinitions/scd30_co2.js @@ -0,0 +1,8 @@ +'use strict'; + +module.exports = { + title: 'CO₂', + unit: 'ppm', + sensorType: 'SCD30', + icon: 'osem-co2' +}; diff --git a/yarn.lock b/yarn.lock index 3c5ba467..7f52a3ee 100644 --- a/yarn.lock +++ b/yarn.lock @@ -42,10 +42,10 @@ resolved "https://registry.yarnpkg.com/@sensebox/osem-protos/-/osem-protos-1.1.0.tgz#a7de8bc6be867953f1309181a012063c23299e79" integrity sha512-H+nUVcWlT0dvIqfJnYHuX9JBcCkP1ZKGE5YTRNWPbAEdZ11h+srpQsmeI58wK5hJcdukaZAjc4Dy96IeGM77aA== -"@sensebox/sketch-templater@^1.8.3-beta.0": - version "1.8.3-beta.0" - resolved "https://registry.yarnpkg.com/@sensebox/sketch-templater/-/sketch-templater-1.8.3-beta.0.tgz#7eccf67469725741dc4a55fcf43f872dd37e1409" - integrity sha512-nsVkMmqr6tDJ4x48qiLyFOAJL1LLhavtg5dksqJa7qeFXQ2AHMmUC8uiU9r2PstANFDDRUDqFZ2rN69rl+NYog== +"@sensebox/sketch-templater@^1.8.3": + version "1.8.3" + resolved "https://registry.yarnpkg.com/@sensebox/sketch-templater/-/sketch-templater-1.8.3.tgz#16fe48afdd2e472ab443e5d21890b59ec8701cd9" + integrity sha512-oKKgv6foFzoiTcyCeZEnycOshyE5owh8Xsjk3a0YuhfG+pLwd9EN4maV7jW6IPcmtSXtaTEICoB+H9K7DiAyLQ== dependencies: config "^1.29.2" dedent "^0.7.0" @@ -3274,7 +3274,7 @@ simple-statistics@^7.3.1: version "7.3.1" resolved "https://registry.yarnpkg.com/simple-statistics/-/simple-statistics-7.3.1.tgz#12cac547a075ed718662eabf427894ec6a3a0396" integrity sha512-8RktUtizYSzj8vRIvEF8jpHiUcRz3MW/2pppzm0emrEQ3JaV10Kp0DCn4zj4QOCLL4pe/QQ03g88Oy+UbyNSqQ== - + slice-ansi@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-2.1.0.tgz#cacd7693461a637a5788d92a7dd4fba068e81636" From f7e2cb7aa951e90592d9977a43f5eab702183db2 Mon Sep 17 00:00:00 2001 From: Gerald Pape Date: Thu, 7 Jan 2021 11:59:00 +0100 Subject: [PATCH 098/337] Sync master from development (#395) * Bump simple-statistics from 7.3.1 to 7.3.2 (#370) Bumps [simple-statistics](https://github.com/simple-statistics/simple-statistics) from 7.3.1 to 7.3.2. - [Release notes](https://github.com/simple-statistics/simple-statistics/releases) - [Changelog](https://github.com/simple-statistics/simple-statistics/blob/master/CHANGELOG.md) - [Commits](https://github.com/simple-statistics/simple-statistics/compare/v7.3.1...v7.3.2) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump csv-parse from 4.11.1 to 4.13.0 (#371) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.11.1 to 4.13.0. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.11.1...v4.13.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump csv-parse from 4.13.0 to 4.14.0 (#373) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.13.0 to 4.14.0. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.13.0...v4.14.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * build docs also for minor versions and patches * Bump config from 3.3.2 to 3.3.3 (#380) Bumps [config](https://github.com/lorenwest/node-config) from 3.3.2 to 3.3.3. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump got from 11.7.0 to 11.8.0 (#361) * Bump csv-stringify from 5.5.1 to 5.5.3 (#378) * Bump ms from 2.1.2 to 2.1.3 (#381) Bumps [ms](https://github.com/vercel/ms) from 2.1.2 to 2.1.3. - [Release notes](https://github.com/vercel/ms/releases) - [Commits](https://github.com/vercel/ms/compare/2.1.2...2.1.3) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * [Security] Bump ini from 1.3.5 to 1.3.8 (#385) Bumps [ini](https://github.com/isaacs/ini) from 1.3.5 to 1.3.8. **This update includes a security fix.** - [Release notes](https://github.com/isaacs/ini/releases) - [Commits](https://github.com/isaacs/ini/compare/v1.3.5...v1.3.8) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump got from 11.8.0 to 11.8.1 (#382) Bumps [got](https://github.com/sindresorhus/got) from 11.8.0 to 11.8.1. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v11.8.0...v11.8.1) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump simple-statistics from 7.3.2 to 7.4.0 (#386) Bumps [simple-statistics](https://github.com/simple-statistics/simple-statistics) from 7.3.2 to 7.4.0. - [Release notes](https://github.com/simple-statistics/simple-statistics/releases) - [Changelog](https://github.com/simple-statistics/simple-statistics/blob/master/CHANGELOG.md) - [Commits](https://github.com/simple-statistics/simple-statistics/compare/v7.3.2...v7.4.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump csv-parse from 4.14.0 to 4.14.2 (#387) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.14.0 to 4.14.2. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.14.0...v4.14.2) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump csv-stringify from 5.5.3 to 5.6.0 (#390) Bumps [csv-stringify](https://github.com/adaltas/node-csv-stringify) from 5.5.3 to 5.6.0. - [Release notes](https://github.com/adaltas/node-csv-stringify/releases) - [Changelog](https://github.com/adaltas/node-csv-stringify/blob/master/CHANGELOG.md) - [Commits](https://github.com/adaltas/node-csv-stringify/compare/v5.5.3...v5.6.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Replace Travis CI with GitHub Actions (#393) * run tests in github workflow * try without tty * add deploy-docs ci step * fix yaml syntax * try npx * only deploy docs on release publish * cleanup * log in to docker * execute on master and development * Update .github/workflows/test.yaml * Update README.md * Bump grpc from 1.24.3 to 1.24.4 (#374) Bumps [grpc](https://github.com/grpc/grpc-node) from 1.24.3 to 1.24.4. - [Release notes](https://github.com/grpc/grpc-node/releases) - [Commits](https://github.com/grpc/grpc-node/commits) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Matthias Pfeil * Bump millify from 3.3.0 to 3.5.0 (#392) Bumps [millify](https://github.com/izolate/millify) from 3.3.0 to 3.5.0. - [Release notes](https://github.com/izolate/millify/releases) - [Changelog](https://github.com/izolate/millify/blob/master/CHANGELOG.md) - [Commits](https://github.com/izolate/millify/compare/v3.3.0...v3.5.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape * rename access_token to Authorization in docs (#394) * rename access_token to Authorization in docs * update README.md Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: felixerdy Co-authored-by: Matthias Pfeil Co-authored-by: Felix Erdmann --- .dockerignore | 2 +- .github/workflows/deploy-docs.yaml | 73 +++++++++++++ .github/workflows/test.yaml | 27 +++++ .scripts/deploy-docs.sh | 56 ---------- .scripts/run-tests.sh | 8 +- .travis.yml | 20 ---- README.md | 3 +- package.json | 5 +- .../lib/controllers/measurementsController.js | 4 +- packages/api/package.json | 12 +-- packages/models/.npmignore | 2 +- packages/models/package.json | 6 +- yarn.lock | 102 ++++++++++-------- 13 files changed, 179 insertions(+), 141 deletions(-) create mode 100644 .github/workflows/deploy-docs.yaml create mode 100644 .github/workflows/test.yaml delete mode 100755 .scripts/deploy-docs.sh delete mode 100644 .travis.yml diff --git a/.dockerignore b/.dockerignore index b80fafff..cda16a31 100644 --- a/.dockerignore +++ b/.dockerignore @@ -3,7 +3,7 @@ userimages *.yml Dockerfile .eslintrc.js -.travis.yml +.github doc version.js .dockerignore diff --git a/.github/workflows/deploy-docs.yaml b/.github/workflows/deploy-docs.yaml new file mode 100644 index 00000000..f6b521e9 --- /dev/null +++ b/.github/workflows/deploy-docs.yaml @@ -0,0 +1,73 @@ +name: Deploy docs + +on: + release: + branches: + - master + types: + - published + pull_request: + branches: + - master + - development + +jobs: + test: + name: Deploy docs + runs-on: ubuntu-20.04 + steps: + - uses: actions/checkout@v2 + + - name: Gather branch information + id: version_info + continue-on-error: true + run: | + version=${GITHUB_REF##*/} + echo "##[set-output name=version;]${version}" + + echo "We're running on version ${version}" + + - name: Append the current version to the introduction document + run: | + sed -i "1 s|$| ${{ steps.version_info.outputs.version }}|" apidoc/introduction.md + + - name: Run apidoc + run: | + npx apidoc@0.17.6 -i . -f js -e node_modules + + - name: Deploy apidocs for git tags + if: ${{ github.event_name == 'release' && github.event.action == 'published' }} + run: | + set -e + # reset the changes to please git + git checkout -- apidoc/introduction.md + + # checkout gh-pages branch + git remote set-branches --add origin gh-pages + git fetch + git checkout -t origin/gh-pages + + # delete everything except for the doc folder + find . ! \( -path './.git' -prune \) ! \( -path './doc' -prune \) ! -name '.' ! -name '..' -print0 | xargs -0 rm -rf -- + + # move content of doc to . + mv doc/* . + + # delete doc folder + rm -rf doc + + # add .nojekyll file + touch .nojekyll + + # add everything + git add -A + + # tell git who you are + git config user.name "GitHub-CI" + git config user.email "actions-user@github.com" + + # commit + git commit -m "apidoc build for ${{ steps.version_info.outputs.version }} by GitHub Actions" + + # push to github + git push "https://${{ github.token }}@github.com/${{ github.repository }}.git" gh-pages diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml new file mode 100644 index 00000000..592ac944 --- /dev/null +++ b/.github/workflows/test.yaml @@ -0,0 +1,27 @@ +name: Test and build + +on: + push: + branches: + - master + - development + pull_request: + branches: + - master + - development + +jobs: + test: + name: Run tests + runs-on: ubuntu-20.04 + steps: + - uses: actions/checkout@v2 + - name: Login to DockerHub + uses: docker/login-action@v1 + with: + username: ${{ secrets.DOCKER_HUB_USER }} + password: ${{ secrets.DOCKER_HUB_PASS }} + + - name: Execute tests + run: | + yarn test diff --git a/.scripts/deploy-docs.sh b/.scripts/deploy-docs.sh deleted file mode 100755 index 8aec4f46..00000000 --- a/.scripts/deploy-docs.sh +++ /dev/null @@ -1,56 +0,0 @@ -#!/usr/bin/env bash - -set -euo pipefail -IFS=$'\n\t' - -# move to the build dir.. -cd "$TRAVIS_BUILD_DIR" - -# install apidocs -npm install -g apidoc@0.17.6 - -# append the current version -sed -i "1 s|$| ${TRAVIS_TAG}|" apidoc/introduction.md - -# run apidoc -apidoc -i . -f js -e node_modules - -# should contain the current api tag or nothing -isApiTag=$(echo "${TRAVIS_TAG}" | grep -E '^v[0-9]+$' || true) -if [[ -z "$isApiTag" ]]; then - echo "Docs can only be built from api version tags" - exit 0 -fi - -# reset the changes to please git -git checkout -- apidoc/introduction.md - -# checkout gh-pages branch -git remote set-branches --add origin gh-pages -git fetch -git checkout -t origin/gh-pages - -# delete everything except for the doc folder -find . ! \( -path './.git' -prune \) ! \( -path './doc' -prune \) ! -name '.' ! -name '..' -print0 | xargs -0 rm -rf -- - -# move content of doc to . -mv doc/* . - -# delete doc folder -rm -rf doc - -# add .nojekyll file -touch .nojekyll - -# add everything -git add -A - -# tell git who you are -git config user.name "Travis-CI" -git config user.email "travis@travis-ci.org" - -# commit -git commit -m "apidoc build from ${TRAVIS_COMMIT} by Travis" - -# push to github -git push "https://${GITHUB_TOKEN}@github.com/${GITHUB_REPO}.git" gh-pages diff --git a/.scripts/run-tests.sh b/.scripts/run-tests.sh index f97ad01b..274e6677 100755 --- a/.scripts/run-tests.sh +++ b/.scripts/run-tests.sh @@ -45,18 +45,18 @@ function executeTests() { runComposeCommand down -v --remove-orphans if [[ -z $only_models_tests ]]; then - runComposeCommand up -d --force-recreate --remove-orphans + runComposeCommand up --quiet-pull -d --force-recreate --remove-orphans # Allow the dust to settle sleep 3 - runComposeCommand exec osem-api yarn mocha --exit tests/waitForHttp.js tests/tests.js + runComposeCommand exec -T osem-api yarn mocha --exit tests/waitForHttp.js tests/tests.js runComposeCommand stop osem-api fi - runComposeCommand up -d --remove-orphans db mailer + runComposeCommand up --quiet-pull -d --remove-orphans db mailer # use ./node_modules/.bin/mocha because the workspace does not have the devDependency mocha - runComposeCommand run --workdir=/usr/src/app/packages/models osem-api ../../node_modules/.bin/mocha --exit test/waitForDatabase test/index + runComposeCommand run -T --workdir=/usr/src/app/packages/models osem-api ../../node_modules/.bin/mocha --exit test/waitForDatabase test/index } case "$cmd" in diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index a4096597..00000000 --- a/.travis.yml +++ /dev/null @@ -1,20 +0,0 @@ -sudo: required - -services: - - docker - -git: - depth: 1 - -language: node_js -node_js: - - "12" - -install: true -script: -- yarn test logs osem-api && yarn deploy-docs - -env: - global: - - GITHUB_REPO: "sensebox/openSenseMap-API" - - secure: "B1S19gMUgYsGSDcQGu9iXyC2Gv/I0Saw64cthMPXck4Scbog6vAQ4b8Zp2LvgcnfYGv+714KCrv1AunF0xdt/7CNi4426cyvmB8uNV5fZRaSrCq6iWOzqI616OLY7jwJ7Fu21PL7RgwZjoe4JKxY8XoSqnoDdZgclblL96ALfSY=" diff --git a/README.md b/README.md index 5e451c82..1e5c73fd 100644 --- a/README.md +++ b/README.md @@ -60,7 +60,7 @@ yarn test - Bleeding edge and possibly unstable development version - gh-pages - Hosts API docs for [https://docs.opensensemap.org/](https://docs.opensensemap.org/) - - Is generated and pushed to github by Travis CI + - Is generated and pushed to GitHub by GitHub Actions [file](.github/workflows/test.yaml) ### Tags and Versions Git Tags are used for Docker hub builds (like `v1`). Version number is increased by one for each new version. Docker images are built automatically by the Docker hub for all tags starting with `v` @@ -85,4 +85,3 @@ Every commit on branch `development` will be built with the tag `development`. [MongoDB]:http://www.mongodb.com/ [openSenseMap]:https://opensensemap.org/ [senseBox]:https://sensebox.de/ - diff --git a/package.json b/package.json index 447d162e..e5082f21 100644 --- a/package.json +++ b/package.json @@ -12,7 +12,6 @@ "NOTpretest": "node tests/waitForHttp", "tag-container": "./.scripts/npm_tag-container.sh", "lint": "eslint --ignore-pattern node_modules --fix \"{tests,packages}/**/*.js\"", - "deploy-docs": "./.scripts/deploy-docs.sh", "create-version-file": "node .scripts/create-version.js" }, "devDependencies": { @@ -21,11 +20,11 @@ "chai": "^4.1.2", "chakram": "^1.5.0", "cheerio": "^1.0.0-rc.2", - "csv-parse": "^4.11.1", + "csv-parse": "^4.14.2", "eslint": "6.8.0", "mimelib": "^0.3.1", "mocha": "^7.1.2", "mqtt": "^3.0.0", "randomgeojson": "^1.0.0" } -} \ No newline at end of file +} diff --git a/packages/api/lib/controllers/measurementsController.js b/packages/api/lib/controllers/measurementsController.js index 28cad558..01e7c159 100644 --- a/packages/api/lib/controllers/measurementsController.js +++ b/packages/api/lib/controllers/measurementsController.js @@ -219,7 +219,7 @@ const getDataMulti = async function getDataMulti (req, res, next) { * @apiParam (RequestBody) {String} value the measured value of the sensor. Also accepts JSON float numbers. * @apiParam (RequestBody) {RFC3339Date} [createdAt] the timestamp of the measurement. Should conform to RFC 3339. Is needed when posting with Location Values! * @apiParam (RequestBody) {Location} [location] the WGS84-coordinates of the measurement. - * @apiHeader {String} access_token Box' unique access_token. Will be used as authorization token if box has auth enabled (e.g. useAuth: true) + * @apiHeader {String} Authorization Box' unique access_token. Will be used as authorization token if box has auth enabled (e.g. useAuth: true) */ const postNewMeasurement = async function postNewMeasurement (req, res, next) { const { boxId, sensorId, value, createdAt, location } = req._userParams; @@ -277,7 +277,7 @@ const postNewMeasurement = async function postNewMeasurement (req, res, next) { * @apiUse LocationBody * @apiParam {String} [luftdaten] Specify whatever you want (like `luftdaten=1`. Signals the api to treat the incoming data as luftdaten.info formatted json. * * @apiParam {String} [hackair] Specify whatever you want (like `hackair=1`. Signals the api to treat the incoming data as hackair formatted json. - * @apiHeader {String} access_token Box' unique access_token. Will be used as authorization token if box has auth enabled (e.g. useAuth: true) + * @apiHeader {String} Authorization Box' unique access_token. Will be used as authorization token if box has auth enabled (e.g. useAuth: true) * @apiParamExample {application/json} JSON-Object: * { * "sensorID": "value", diff --git a/packages/api/package.json b/packages/api/package.json index 230d5206..f1f02de1 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -21,19 +21,19 @@ "@turf/triangle-grid": "^6.0.1", "apicache": "^1.4.0", "bunyan": "^1.8.14", - "config": "^3.3.2", - "csv-stringify": "^5.5.1", + "config": "^3.3.3", + "csv-stringify": "^5.6.0", "dashify": "^2.0.0", - "got": "^11.7.0", + "got": "^11.8.1", "honeybadger": "^1.4.0", "isemail": "^3.0.0", "jsonwebtoken": "^8.1.0", - "millify": "^3.3.0", + "millify": "^3.5.0", "moment": "^2.29.1", - "ms": "^2.1.1", + "ms": "^2.1.3", "restify": "^5.2.0", "restify-errors": "^8.0.2", - "simple-statistics": "^7.3.1", + "simple-statistics": "^7.4.0", "stringify-stream": "^1.0.5", "uuid": "^7.0.3" }, diff --git a/packages/models/.npmignore b/packages/models/.npmignore index 62a9014c..8da75692 100644 --- a/packages/models/.npmignore +++ b/packages/models/.npmignore @@ -1,6 +1,6 @@ test .eslintrc* -.travis.yml +.github .gitignore .scripts .npmignore diff --git a/packages/models/package.json b/packages/models/package.json index 064755d1..bd7f8540 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -9,9 +9,9 @@ "@sensebox/sketch-templater": "^1.8.3", "bcrypt": "^5.0.0", "bunyan": "^1.8.14", - "config": "^3.3.2", - "got": "^11.7.0", - "grpc": "^1.24.3", + "config": "^3.3.3", + "got": "^11.8.1", + "grpc": "^1.24.4", "isemail": "^3.0.0", "jsonpath": "^1.0.0", "lodash.isequal": "^4.5.0", diff --git a/yarn.lock b/yarn.lock index 7f52a3ee..8a4a7359 100644 --- a/yarn.lock +++ b/yarn.lock @@ -50,10 +50,10 @@ config "^1.29.2" dedent "^0.7.0" -"@sindresorhus/is@^3.1.1": - version "3.1.2" - resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-3.1.2.tgz#548650de521b344e3781fbdb0ece4aa6f729afb8" - integrity sha512-JiX9vxoKMmu8Y3Zr2RVathBL1Cdu4Nt4MuNWemt1Nc06A0RAin9c5FArkhGsyMBWfCu4zj+9b+GxtjAnE4qqLQ== +"@sindresorhus/is@^4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-4.0.0.tgz#2ff674e9611b45b528896d820d3d7a812de2f0e4" + integrity sha512-FyD2meJpDPjyNQejSjvnhpgI/azsQkA4lGbuu5BQZfjvJ9cbRZXzeWL2HceCekW4lixO9JPesIIQkSoLjeJHNQ== "@szmarczak/http-timer@^4.0.5": version "4.0.5" @@ -812,10 +812,10 @@ config@^1.29.2: dependencies: json5 "^1.0.1" -config@^3.3.2: - version "3.3.2" - resolved "https://registry.yarnpkg.com/config/-/config-3.3.2.tgz#35be3846054340f0f79778b2445afffbc11867c7" - integrity sha512-NlGfBn2565YA44Irn7GV5KHlIGC3KJbf0062/zW5ddP9VXIuRj0m7HVyFAWvMZvaHPEglyGfwmevGz3KosIpCg== +config@^3.3.3: + version "3.3.3" + resolved "https://registry.yarnpkg.com/config/-/config-3.3.3.tgz#d3c110fce543022c2fde28712e4f1b8440dee101" + integrity sha512-T3RmZQEAji5KYqUQpziWtyGJFli6Khz7h0rpxDwYNjSkr5ynyTWwO7WpfjHzTXclNCDfSWQRcwMb+NwxJesCKw== dependencies: json5 "^2.1.1" @@ -865,10 +865,10 @@ csv-parse@^1.3.3: resolved "https://registry.yarnpkg.com/csv-parse/-/csv-parse-1.3.3.tgz#d1cfd8743c2f849a0abb2fd544db56695d19a490" integrity sha1-0c/YdDwvhJoKuy/VRNtWaV0ZpJA= -csv-parse@^4.11.1: - version "4.11.1" - resolved "https://registry.yarnpkg.com/csv-parse/-/csv-parse-4.11.1.tgz#3935a7862d7e431020a25538905dec0153fa75bd" - integrity sha512-cH2BG5Gd0u4G8qVI/jGXJSP2+El7Vy91/ZD3ehKALAWids1aIKOPhZ1ZVJzUrs2zTn6aGumVPBlbHsI91kI83A== +csv-parse@^4.14.2: + version "4.14.2" + resolved "https://registry.yarnpkg.com/csv-parse/-/csv-parse-4.14.2.tgz#c1329cff95a99b8773a92c4e62f8bff114b34726" + integrity sha512-YE2xlTKtM035/94llhgsp9qFQxGi47EkQJ1pZ+mLT/98GpIsbjkMGAb7Rmu9hNxVfYFOLf10hP+rPVqnoccLgw== csv-stringify@^1.1.2: version "1.1.2" @@ -877,10 +877,10 @@ csv-stringify@^1.1.2: dependencies: lodash.get "~4.4.2" -csv-stringify@^5.5.1: - version "5.5.1" - resolved "https://registry.yarnpkg.com/csv-stringify/-/csv-stringify-5.5.1.tgz#f42cdd379b0f7f142933a11f674b1a91ebd0fcd0" - integrity sha512-HM0/86Ks8OwFbaYLd495tqTs1NhscZL52dC4ieKYumy8+nawQYC0xZ63w1NqLf0M148T2YLYqowoImc1giPn0g== +csv-stringify@^5.6.0: + version "5.6.0" + resolved "https://registry.yarnpkg.com/csv-stringify/-/csv-stringify-5.6.0.tgz#3dcde51da7561f5052220f1847bfd4db7618fcfa" + integrity sha512-E0LNLevBrwaJ1WKsl4HUPOmK96WyhizTfY79mJgfr2dsIb6zyJd3B9+lToO7gSkTaKi8CIo0Pd0vDGfa0whozg== csv@^1.1.0: version "1.2.1" @@ -1649,12 +1649,12 @@ globals@^12.1.0: dependencies: type-fest "^0.8.1" -got@^11.7.0: - version "11.7.0" - resolved "https://registry.yarnpkg.com/got/-/got-11.7.0.tgz#a386360305571a74548872e674932b4ef70d3b24" - integrity sha512-7en2XwH2MEqOsrK0xaKhbWibBoZqy+f1RSUoIeF1BLcnf+pyQdDsljWMfmOh+QKJwuvDIiKx38GtPh5wFdGGjg== +got@^11.8.1: + version "11.8.1" + resolved "https://registry.yarnpkg.com/got/-/got-11.8.1.tgz#df04adfaf2e782babb3daabc79139feec2f7e85d" + integrity sha512-9aYdZL+6nHmvJwHALLwKSUZ0hMwGaJGYv3hoPLPgnT8BoBXm1SjnZeky+91tfwJaDzun2s4RsBRy48IEYv2q2Q== dependencies: - "@sindresorhus/is" "^3.1.1" + "@sindresorhus/is" "^4.0.0" "@szmarczak/http-timer" "^4.0.5" "@types/cacheable-request" "^6.0.1" "@types/responselike" "^1.0.0" @@ -1671,16 +1671,16 @@ growl@1.10.5: resolved "https://registry.yarnpkg.com/growl/-/growl-1.10.5.tgz#f2735dc2283674fa67478b10181059355c369e5e" integrity sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA== -grpc@^1.24.3: - version "1.24.3" - resolved "https://registry.yarnpkg.com/grpc/-/grpc-1.24.3.tgz#92efe28dfc1250dca179b8133e40b4f2341473d9" - integrity sha512-EDemzuZTfhM0hgrXqC4PtR76O3t+hTIYJYR5vgiW0yt2WJqo4mhxUqZUirzUQz34Psz7dbLp38C6Cl7Ij2vXRQ== +grpc@^1.24.4: + version "1.24.4" + resolved "https://registry.yarnpkg.com/grpc/-/grpc-1.24.4.tgz#9240a3ea33cfaf04cd32ce8346798709bbd6782d" + integrity sha512-mHRAwuitCMuSHo1tp1+Zc0sz3cYa7pkhVJ77pkIXD5gcVORtkRiyW6msXYqTDT+35jazg98lbO3XzuTo2+XrcA== dependencies: "@types/bytebuffer" "^5.0.40" lodash.camelcase "^4.3.0" lodash.clone "^4.5.0" nan "^2.13.2" - node-pre-gyp "^0.15.0" + node-pre-gyp "^0.16.0" protobufjs "^5.0.3" handle-thing@^1.2.5: @@ -1860,9 +1860,9 @@ inherits@2, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.1, inherits@~2.0.3: integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== ini@~1.3.0: - version "1.3.5" - resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927" - integrity sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw== + version "1.3.8" + resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c" + integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew== inquirer@^7.0.0: version "7.1.0" @@ -2283,10 +2283,10 @@ martinez-polygon-clipping@^0.4.3: splaytree "^0.1.4" tinyqueue "^1.2.0" -millify@^3.3.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/millify/-/millify-3.3.0.tgz#8e0f5554b6413ef2f0f4be2f69dbc2067717eb4a" - integrity sha512-j+IUePjjIYgFjaqZdpwAKM3YotVpu44FqeJbWNfx3o1USo9MugVX/hxGihOoCk6LrD+t01voxGLb0gGAZcuuxQ== +millify@^3.5.0: + version "3.5.0" + resolved "https://registry.yarnpkg.com/millify/-/millify-3.5.0.tgz#8ac0e76983725c5ccf6b4bd822a53f5bc9f56b4b" + integrity sha512-9rBrp4dbvJy9hyRiUnKgfCgfoR8ZGdn3rL1AQw4rGrDoyyzjhMeH+KAlYB2qdcsOJ35iS1CcpaYYP1UQOnzLCw== dependencies: yargs "^15.3.1" @@ -2509,10 +2509,10 @@ ms@2.1.1: resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.1.tgz#30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a" integrity sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg== -ms@^2.1.1: - version "2.1.2" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" - integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== +ms@^2.1.1, ms@^2.1.3: + version "2.1.3" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" + integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== muri@1.3.0: version "1.3.0" @@ -2585,7 +2585,7 @@ node-environment-flags@1.0.6: object.getownpropertydescriptors "^2.0.3" semver "^5.7.0" -node-pre-gyp@0.15.0, node-pre-gyp@^0.15.0: +node-pre-gyp@0.15.0: version "0.15.0" resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.15.0.tgz#c2fc383276b74c7ffa842925241553e8b40f1087" integrity sha512-7QcZa8/fpaU/BKenjcaeFF9hLz2+7S9AqyXFhlH/rilsQ/hPZKK32RtR5EQHJElgu+q5RfbJ34KriI79UWaorA== @@ -2601,6 +2601,22 @@ node-pre-gyp@0.15.0, node-pre-gyp@^0.15.0: semver "^5.3.0" tar "^4.4.2" +node-pre-gyp@^0.16.0: + version "0.16.0" + resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.16.0.tgz#238fa540364784e5015dfcdba78da3937e18dbdc" + integrity sha512-4efGA+X/YXAHLi1hN8KaPrILULaUn2nWecFrn1k2I+99HpoyvcOGEbtcOxpDiUwPF2ZANMJDh32qwOUPenuR1g== + dependencies: + detect-libc "^1.0.2" + mkdirp "^0.5.3" + needle "^2.5.0" + nopt "^4.0.1" + npm-packlist "^1.1.6" + npmlog "^4.0.2" + rc "^1.2.7" + rimraf "^2.6.1" + semver "^5.3.0" + tar "^4.4.2" + nopt@^4.0.1: version "4.0.3" resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.3.tgz#a375cad9d02fd921278d954c2254d5aa57e15e48" @@ -3270,11 +3286,11 @@ signal-exit@^3.0.0, signal-exit@^3.0.2: resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.3.tgz#a1410c2edd8f077b08b4e253c8eacfcaf057461c" integrity sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA== -simple-statistics@^7.3.1: - version "7.3.1" - resolved "https://registry.yarnpkg.com/simple-statistics/-/simple-statistics-7.3.1.tgz#12cac547a075ed718662eabf427894ec6a3a0396" - integrity sha512-8RktUtizYSzj8vRIvEF8jpHiUcRz3MW/2pppzm0emrEQ3JaV10Kp0DCn4zj4QOCLL4pe/QQ03g88Oy+UbyNSqQ== - +simple-statistics@^7.4.0: + version "7.4.0" + resolved "https://registry.yarnpkg.com/simple-statistics/-/simple-statistics-7.4.0.tgz#4319348aff39d9cc3aababe02671568674807515" + integrity sha512-1mXlR6NEIwMsKWjD+exMd4vvRWmrrBk+MT1n3O5NBjbxjIh1E1YlQikwyNdQjPcq8E+EgUkFmj67gr2bfAIwGg== + slice-ansi@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-2.1.0.tgz#cacd7693461a637a5788d92a7dd4fba068e81636" From b2c84d59e3ce720d8fadf77f96669eb03c2c5a80 Mon Sep 17 00:00:00 2001 From: Gerald Pape Date: Thu, 7 Jan 2021 16:52:29 +0100 Subject: [PATCH 099/337] remove mentions of development branch (#397) --- .github/workflows/deploy-docs.yaml | 1 - .github/workflows/test.yaml | 3 +-- CONTRIBUTING.md | 2 +- README.md | 14 ++++---------- 4 files changed, 6 insertions(+), 14 deletions(-) diff --git a/.github/workflows/deploy-docs.yaml b/.github/workflows/deploy-docs.yaml index f6b521e9..221f8359 100644 --- a/.github/workflows/deploy-docs.yaml +++ b/.github/workflows/deploy-docs.yaml @@ -9,7 +9,6 @@ on: pull_request: branches: - master - - development jobs: test: diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index 592ac944..702f3e7e 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -4,11 +4,9 @@ on: push: branches: - master - - development pull_request: branches: - master - - development jobs: test: @@ -16,6 +14,7 @@ jobs: runs-on: ubuntu-20.04 steps: - uses: actions/checkout@v2 + - name: Login to DockerHub uses: docker/login-action@v1 with: diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 950728fb..c203caef 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -67,7 +67,7 @@ Ideally, building a docker image should succeed: Document your changes in the respective `CHANGELOG.md`. -Push to your fork and submit [pull request] against `development` branch. +Push to your fork and submit [pull request] against `master` branch. ### Good contributions diff --git a/README.md b/README.md index 1e5c73fd..d478c894 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ ![openSenseMap API](https://raw.githubusercontent.com/sensebox/resources/master/images/openSenseMap_API_github.png) -This repository contains the code of the openSenseMap API, which is the HTTP REST API used by [https://opensensemap.org](https://opensensemap.org) running at [https://api.opensensemap.org](https://api.opensensemap.org). To get more information about openSenseMap and senseBox visit the before mentioned links or have a look at this [video](https://www.youtube.com/watch?v=uTOWYa42_rI), read the [API docs](https://docs.opensensemap.org) or the [openSenseMap](https://osem.books.sensebox.de/) chapter in our [books](https://books.sensebox.de/). openSenseMap is part of the [senseBox] project. +This repository contains the code of the openSenseMap API, which is the HTTP REST API used by [https://opensensemap.org](https://opensensemap.org) running at [https://api.opensensemap.org](https://api.opensensemap.org). To get more information about openSenseMap and senseBox visit the before mentioned links or have a look at this [video](https://www.youtube.com/watch?v=uTOWYa42_rI), read the [API docs](https://docs.opensensemap.org) or the [openSenseMap](https://en.docs.sensebox.de/category/opensensemap/) chapter in our documentation. openSenseMap is part of the [senseBox] project. Originally, this API has been built as part of the bachelor thesis of [@mpfeil](https://github.com/mpfeil) at the ifgi (Institute for Geoinformatics, WWU Münster). Developers and previous maintainer include [@umut0](https://github.com/umut0), [@felixerdy](https://github.com/felixerdy), [@noerw](https://github.com/noerw), [@chk1](https://github.com/chk1) and [@ubergesundheit](https://github.com/ubergesundheit). @@ -13,11 +13,10 @@ Configuration of both the api and the models is done using mechanisms provided b ## Development - Have [Node.js] v12, [yarn](https://yarnpkg.com/), [Docker](https://docs.docker.com/engine/installation/) and [docker-compose](https://docs.docker.com/compose/install/) installed - Start your development database (`docker-compose up -d db`) -- Check out `development` branch (`git checkout development`) +- Create branch for your feature (`git checkout my-awesome-feature`) - Run `yarn install` -- Create your own branch `git checkout -b my-awesome-branch` - Commit your changes to your branch and push it to your fork -- Create a pull request against the `development` branch +- Create a pull request against the `master` branch See also: [CONTRIBUTING](CONTRIBUTING.md) @@ -54,10 +53,8 @@ yarn test ## Organization ### Branches -- master (runs in production) +- master (runs on testing server) - Is used for container build tags -- development (runs on testing server) - - Bleeding edge and possibly unstable development version - gh-pages - Hosts API docs for [https://docs.opensensemap.org/](https://docs.opensensemap.org/) - Is generated and pushed to GitHub by GitHub Actions [file](.github/workflows/test.yaml) @@ -65,9 +62,6 @@ yarn test ### Tags and Versions Git Tags are used for Docker hub builds (like `v1`). Version number is increased by one for each new version. Docker images are built automatically by the Docker hub for all tags starting with `v` -#### Development container images -Every commit on branch `development` will be built with the tag `development`. - #### Versioned container images - Check out `master` branch - Go to root directory From b4d465a4e04aed85f4d59da7963fce97cfff3f35 Mon Sep 17 00:00:00 2001 From: Gerald Pape Date: Thu, 7 Jan 2021 17:02:48 +0100 Subject: [PATCH 100/337] update dependabot config to v2 (#398) --- .dependabot/config.yml | 8 -------- .github/dependabot.yml | 11 +++++++++++ 2 files changed, 11 insertions(+), 8 deletions(-) delete mode 100644 .dependabot/config.yml create mode 100644 .github/dependabot.yml diff --git a/.dependabot/config.yml b/.dependabot/config.yml deleted file mode 100644 index 130a93b5..00000000 --- a/.dependabot/config.yml +++ /dev/null @@ -1,8 +0,0 @@ -version: 1 -update_configs: - - package_manager: "javascript" - directory: "/" - update_schedule: "live" - target_branch: "development" - default_reviewers: - - "ubergesundheit" diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 00000000..eb1bced5 --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,11 @@ +version: 2 + +updates: + - package-ecosystem: "npm" + directory: "/" + schedule: + interval: "daily" + - package-ecosystem: "github-actions" + directory: "/" + schedule: + interval: "daily" From 1a278bfba1997df455aea983d26cbb5180e5c237 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 7 Jan 2021 21:57:16 +0100 Subject: [PATCH 101/337] Bump cheerio from 1.0.0-rc.3 to 1.0.0-rc.5 (#400) Bumps [cheerio](https://github.com/cheeriojs/cheerio) from 1.0.0-rc.3 to 1.0.0-rc.5. - [Release notes](https://github.com/cheeriojs/cheerio/releases) - [Changelog](https://github.com/cheeriojs/cheerio/blob/main/History.md) - [Commits](https://github.com/cheeriojs/cheerio/compare/1.0.0-rc.3...v1.0.0-rc.5) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 177 +++++++++++++++++++++++++-------------------------- 2 files changed, 88 insertions(+), 91 deletions(-) diff --git a/package.json b/package.json index e5082f21..e4ba6b30 100644 --- a/package.json +++ b/package.json @@ -19,7 +19,7 @@ "@turf/invariant": "^6.1.2", "chai": "^4.1.2", "chakram": "^1.5.0", - "cheerio": "^1.0.0-rc.2", + "cheerio": "^1.0.0-rc.5", "csv-parse": "^4.14.2", "eslint": "6.8.0", "mimelib": "^0.3.1", diff --git a/yarn.lock b/yarn.lock index 8a4a7359..596a3f58 100644 --- a/yarn.lock +++ b/yarn.lock @@ -470,7 +470,7 @@ bluebird@3.5.0: resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.0.tgz#791420d7f551eea2897453a8a77653f96606d67c" integrity sha1-eRQg1/VR7qKJdFOop3ZT+WYG1nw= -boolbase@~1.0.0: +boolbase@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" integrity sha1-aN/1++YMUes3cl6p4+0xDcwed24= @@ -650,17 +650,29 @@ check-error@^1.0.2: resolved "https://registry.yarnpkg.com/check-error/-/check-error-1.0.2.tgz#574d312edd88bb5dd8912e9286dd6c0aed4aac82" integrity sha1-V00xLt2Iu13YkS6Sht1sCu1KrII= -cheerio@^1.0.0-rc.2: - version "1.0.0-rc.3" - resolved "https://registry.yarnpkg.com/cheerio/-/cheerio-1.0.0-rc.3.tgz#094636d425b2e9c0f4eb91a46c05630c9a1a8bf6" - integrity sha512-0td5ijfUPuubwLUu0OBoe98gZj8C/AA+RW3v67GPlGOrvxWjZmBXiBCRU+I8VEiNyJzjth40POfHiz2RB3gImA== - dependencies: - css-select "~1.2.0" - dom-serializer "~0.1.1" - entities "~1.1.1" - htmlparser2 "^3.9.1" - lodash "^4.15.0" - parse5 "^3.0.1" +cheerio-select-tmp@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/cheerio-select-tmp/-/cheerio-select-tmp-0.1.1.tgz#55bbef02a4771710195ad736d5e346763ca4e646" + integrity sha512-YYs5JvbpU19VYJyj+F7oYrIE2BOll1/hRU7rEy/5+v9BzkSo3bK81iAeeQEMI92vRIxz677m72UmJUiVwwgjfQ== + dependencies: + css-select "^3.1.2" + css-what "^4.0.0" + domelementtype "^2.1.0" + domhandler "^4.0.0" + domutils "^2.4.4" + +cheerio@^1.0.0-rc.5: + version "1.0.0-rc.5" + resolved "https://registry.yarnpkg.com/cheerio/-/cheerio-1.0.0-rc.5.tgz#88907e1828674e8f9fee375188b27dadd4f0fa2f" + integrity sha512-yoqps/VCaZgN4pfXtenwHROTp8NG6/Hlt4Jpz2FEP0ZJQ+ZUkVDd0hAPDNKhj3nakpfPt/CNs57yEtxD1bXQiw== + dependencies: + cheerio-select-tmp "^0.1.0" + dom-serializer "~1.2.0" + domhandler "^4.0.0" + entities "~2.1.0" + htmlparser2 "^6.0.0" + parse5 "^6.0.0" + parse5-htmlparser2-tree-adapter "^6.0.0" chokidar@3.3.0: version "3.3.0" @@ -840,20 +852,21 @@ cross-spawn@^6.0.5: shebang-command "^1.2.0" which "^1.2.9" -css-select@~1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/css-select/-/css-select-1.2.0.tgz#2b3a110539c5355f1cd8d314623e870b121ec858" - integrity sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg= +css-select@^3.1.2: + version "3.1.2" + resolved "https://registry.yarnpkg.com/css-select/-/css-select-3.1.2.tgz#d52cbdc6fee379fba97fb0d3925abbd18af2d9d8" + integrity sha512-qmss1EihSuBNWNNhHjxzxSfJoFBM/lERB/Q4EnsJQQC62R2evJDW481091oAdOr9uh46/0n4nrg0It5cAnj1RA== dependencies: - boolbase "~1.0.0" - css-what "2.1" - domutils "1.5.1" - nth-check "~1.0.1" + boolbase "^1.0.0" + css-what "^4.0.0" + domhandler "^4.0.0" + domutils "^2.4.3" + nth-check "^2.0.0" -css-what@2.1: - version "2.1.3" - resolved "https://registry.yarnpkg.com/css-what/-/css-what-2.1.3.tgz#a6d7604573365fe74686c3f311c56513d88285f2" - integrity sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg== +css-what@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/css-what/-/css-what-4.0.0.tgz#35e73761cab2eeb3d3661126b23d7aa0e8432233" + integrity sha512-teijzG7kwYfNVsUh2H/YN62xW3KK9YhXEgSlbxMlcyjPNvdKJqFx5lrwlJgoFP1ZHlB89iGDlo/JyshKeRhv5A== csv-generate@^1.1.2: version "1.1.2" @@ -1025,54 +1038,40 @@ doctrine@^3.0.0: dependencies: esutils "^2.0.2" -dom-serializer@0: - version "0.2.2" - resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.2.2.tgz#1afb81f533717175d478655debc5e332d9f9bb51" - integrity sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g== +dom-serializer@^1.0.1, dom-serializer@~1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-1.2.0.tgz#3433d9136aeb3c627981daa385fc7f32d27c48f1" + integrity sha512-n6kZFH/KlCrqs/1GHMOd5i2fd/beQHuehKdWvNNffbGHTr/almdhuVvTVFb3V7fglz+nC50fFusu3lY33h12pA== dependencies: domelementtype "^2.0.1" + domhandler "^4.0.0" entities "^2.0.0" -dom-serializer@~0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.1.1.tgz#1ec4059e284babed36eec2941d4a970a189ce7c0" - integrity sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA== - dependencies: - domelementtype "^1.3.0" - entities "^1.1.1" - -domelementtype@1, domelementtype@^1.3.0, domelementtype@^1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.3.1.tgz#d048c44b37b0d10a7f2a3d5fee3f4333d790481f" - integrity sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w== - domelementtype@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.0.1.tgz#1f8bdfe91f5a78063274e803b4bdcedf6e94f94d" integrity sha512-5HOHUDsYZWV8FGWN0Njbr/Rn7f/eWSQi1v7+HsUVwXgn8nWWlL64zKDkS0n8ZmQ3mlWOMuXOnR+7Nx/5tMO5AQ== -domhandler@^2.3.0: - version "2.4.2" - resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-2.4.2.tgz#8805097e933d65e85546f726d60f5eb88b44f803" - integrity sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA== - dependencies: - domelementtype "1" +domelementtype@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.1.0.tgz#a851c080a6d1c3d94344aed151d99f669edf585e" + integrity sha512-LsTgx/L5VpD+Q8lmsXSHW2WpA+eBlZ9HPf3erD1IoPF00/3JKHZ3BknUVA2QGDNu69ZNmyFmCWBSO45XjYKC5w== -domutils@1.5.1: - version "1.5.1" - resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.5.1.tgz#dcd8488a26f563d61079e48c9f7b7e32373682cf" - integrity sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8= +domhandler@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-4.0.0.tgz#01ea7821de996d85f69029e81fa873c21833098e" + integrity sha512-KPTbnGQ1JeEMQyO1iYXoagsI6so/C96HZiFyByU3T6iAzpXn8EGEvct6unm1ZGoed8ByO2oirxgwxBmqKF9haA== dependencies: - dom-serializer "0" - domelementtype "1" + domelementtype "^2.1.0" -domutils@^1.5.1: - version "1.7.0" - resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.7.0.tgz#56ea341e834e06e6748af7a1cb25da67ea9f8c2a" - integrity sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg== +domutils@^2.4.3, domutils@^2.4.4: + version "2.4.4" + resolved "https://registry.yarnpkg.com/domutils/-/domutils-2.4.4.tgz#282739c4b150d022d34699797369aad8d19bbbd3" + integrity sha512-jBC0vOsECI4OMdD0GC9mGn7NXPLb+Qt6KW1YDQzeQYRUFKmNG8lh7mO5HiELfr+lLQE7loDVI4QcAxV80HS+RA== dependencies: - dom-serializer "0" - domelementtype "1" + dom-serializer "^1.0.1" + domelementtype "^2.0.1" + domhandler "^4.0.0" dtrace-provider@^0.8.1, dtrace-provider@~0.8: version "0.8.8" @@ -1130,15 +1129,10 @@ end-of-stream@^1.0.0, end-of-stream@^1.1.0, end-of-stream@^1.4.1: dependencies: once "^1.4.0" -entities@^1.1.1, entities@~1.1.1: - version "1.1.2" - resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.2.tgz#bdfa735299664dfafd34529ed4f8522a275fea56" - integrity sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w== - -entities@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/entities/-/entities-2.0.0.tgz#68d6084cab1b079767540d80e56a39b423e4abf4" - integrity sha512-D9f7V0JSRwIxlRI2mjMqufDrRDnx8p+eEOz7aUM9SuvF8gsBzra0/6tbjl1m8eQHrZlYj6PxqE00hZ1SAIKPLw== +entities@^2.0.0, entities@~2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/entities/-/entities-2.1.0.tgz#992d3129cf7df6870b96c57858c249a120f8b8b5" + integrity sha512-hCx1oky9PFrJ611mf0ifBLBRW8lUUVRlFolb5gWRfIELabBlbp9xZvrqZLZAs+NxFnbfQoeGd8wDkygjg7U85w== es-abstract@^1.17.0-next.1, es-abstract@^1.17.5: version "1.17.5" @@ -1766,17 +1760,15 @@ hpack.js@^2.1.6: readable-stream "^2.0.1" wbuf "^1.1.0" -htmlparser2@^3.9.1: - version "3.10.1" - resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-3.10.1.tgz#bd679dc3f59897b6a34bb10749c855bb53a9392f" - integrity sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ== +htmlparser2@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-6.0.0.tgz#c2da005030390908ca4c91e5629e418e0665ac01" + integrity sha512-numTQtDZMoh78zJpaNdJ9MXb2cv5G3jwUoe3dMQODubZvLoGvTE/Ofp6sHvH8OGKcN/8A47pGLi/k58xHP/Tfw== dependencies: - domelementtype "^1.3.1" - domhandler "^2.3.0" - domutils "^1.5.1" - entities "^1.1.1" - inherits "^2.0.1" - readable-stream "^3.1.1" + domelementtype "^2.0.1" + domhandler "^4.0.0" + domutils "^2.4.4" + entities "^2.0.0" http-cache-semantics@^4.0.0: version "4.1.0" @@ -2245,7 +2237,7 @@ lodash.once@^4.0.0: resolved "https://registry.yarnpkg.com/lodash.once/-/lodash.once-4.1.1.tgz#0dd3971213c7c56df880977d504c88fb471a97ac" integrity sha1-DdOXEhPHxW34gJd9UEyI+0cal6w= -lodash@^4.14.0, lodash@^4.15.0, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.4, lodash@^4.2.1: +lodash@^4.14.0, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.4, lodash@^4.2.1: version "4.17.19" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.19.tgz#e48ddedbe30b3321783c5b4301fbd353bc1e4a4b" integrity sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ== @@ -2666,12 +2658,12 @@ npmlog@^4.0.2: gauge "~2.7.3" set-blocking "~2.0.0" -nth-check@~1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-1.0.2.tgz#b2bd295c37e3dd58a3bf0700376663ba4d9cf05c" - integrity sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg== +nth-check@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-2.0.0.tgz#1bb4f6dac70072fc313e8c9cd1417b5074c0a125" + integrity sha512-i4sc/Kj8htBrAiH1viZ0TgU8Y5XqCaV/FziYK6TBczxmeKm3AEFWqqF3195yKudrarqy7Zu80Ra5dobFjn9X/Q== dependencies: - boolbase "~1.0.0" + boolbase "^1.0.0" number-is-nan@^1.0.0: version "1.0.1" @@ -2822,12 +2814,17 @@ parent-module@^1.0.0: dependencies: callsites "^3.0.0" -parse5@^3.0.1: - version "3.0.3" - resolved "https://registry.yarnpkg.com/parse5/-/parse5-3.0.3.tgz#042f792ffdd36851551cf4e9e066b3874ab45b5c" - integrity sha512-rgO9Zg5LLLkfJF9E6CCmXlSE4UVceloys8JrFqCcHloC3usd/kJCyPDwH2SOlzix2j3xaP9sUX3e8+kvkuleAA== +parse5-htmlparser2-tree-adapter@^6.0.0: + version "6.0.1" + resolved "https://registry.yarnpkg.com/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-6.0.1.tgz#2cdf9ad823321140370d4dbf5d3e92c7c8ddc6e6" + integrity sha512-qPuWvbLgvDGilKc5BoicRovlT4MtYT6JfJyBOMDsKoiT+GiuP5qyrPCnR9HcPECIJJmZh5jRndyNThnhhb/vlA== dependencies: - "@types/node" "*" + parse5 "^6.0.1" + +parse5@^6.0.0, parse5@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/parse5/-/parse5-6.0.1.tgz#e1a1c085c569b3dc08321184f19a39cc27f7c30b" + integrity sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw== path-dirname@^1.0.0: version "1.0.2" @@ -3012,7 +3009,7 @@ readable-stream@2.2.7: string_decoder "~1.1.1" util-deprecate "~1.0.1" -readable-stream@^3.0.0, readable-stream@^3.1.1: +readable-stream@^3.0.0: version "3.6.0" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198" integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA== From 5a05f68c80720e869799546e09c250727359076b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 8 Jan 2021 08:06:25 +0000 Subject: [PATCH 102/337] Bump mocha from 7.1.2 to 8.2.1 (#402) Bumps [mocha](https://github.com/mochajs/mocha) from 7.1.2 to 8.2.1. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v7.1.2...v8.2.1) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape --- package.json | 2 +- yarn.lock | 462 ++++++++++++++++++++++----------------------------- 2 files changed, 197 insertions(+), 267 deletions(-) diff --git a/package.json b/package.json index e4ba6b30..63dd2271 100644 --- a/package.json +++ b/package.json @@ -23,7 +23,7 @@ "csv-parse": "^4.14.2", "eslint": "6.8.0", "mimelib": "^0.3.1", - "mocha": "^7.1.2", + "mocha": "^8.2.1", "mqtt": "^3.0.0", "randomgeojson": "^1.0.0" } diff --git a/yarn.lock b/yarn.lock index 596a3f58..561fc213 100644 --- a/yarn.lock +++ b/yarn.lock @@ -260,6 +260,11 @@ dependencies: "@types/node" "*" +"@ungap/promise-all-settled@1.1.2": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@ungap/promise-all-settled/-/promise-all-settled-1.1.2.tgz#aa58042711d6e3275dd37dc597e5d31e8c290a44" + integrity sha512-sL/cEvJWAnClXw0wHk85/2L0G6Sj8UB0Ctc1TEMbKSsmpRosqhwj9gWgFRZSrBr2f9tiXISwNhCPmlfqUqyb9Q== + abbrev@1: version "1.1.1" resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" @@ -290,10 +295,10 @@ ajv@^6.10.0, ajv@^6.10.2, ajv@^6.5.5: json-schema-traverse "^0.4.1" uri-js "^4.2.2" -ansi-colors@3.2.3: - version "3.2.3" - resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-3.2.3.tgz#57d35b8686e851e2cc04c403f1c00203976a1813" - integrity sha512-LEHHyuhlPY3TmuUYMh2oz89lTShfvgbmzaBcxve9t/9Wuy7Dwf4yoAKcND7KFT1HAQfqZ12qtc+DUrBMeKF9nw== +ansi-colors@4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.1.tgz#cbb9ae256bf750af1eab344f229aa27fe94ba348" + integrity sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA== ansi-escapes@^4.2.1: version "4.3.1" @@ -573,6 +578,11 @@ camelcase@^5.0.0: resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== +camelcase@^6.0.0: + version "6.2.0" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.2.0.tgz#924af881c9d525ac9d87f40d964e5cea982a1809" + integrity sha512-c7wVvbw3f37nuobQNtgsgG9POC9qMbNuMQmTCqZv23b6MIz0fcYpBiOlv9gEN/hdLdnZTDQhg6e9Dq5M1vKvfg== + caseless@~0.12.0: version "0.12.0" resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" @@ -623,7 +633,7 @@ chakram@^1.5.0: request-debug "0.x.x" tv4 "1.x.x" -chalk@^2.0.0, chalk@^2.1.0, chalk@^2.4.2: +chalk@^2.0.0, chalk@^2.1.0: version "2.4.2" resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== @@ -640,6 +650,14 @@ chalk@^3.0.0: ansi-styles "^4.1.0" supports-color "^7.1.0" +chalk@^4.0.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.0.tgz#4e14870a618d9e2edd97dd8345fd9d9dc315646a" + integrity sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A== + dependencies: + ansi-styles "^4.1.0" + supports-color "^7.1.0" + chardet@^0.7.0: version "0.7.0" resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" @@ -674,10 +692,10 @@ cheerio@^1.0.0-rc.5: parse5 "^6.0.0" parse5-htmlparser2-tree-adapter "^6.0.0" -chokidar@3.3.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.3.0.tgz#12c0714668c55800f659e262d4962a97faf554a6" - integrity sha512-dGmKLDdT3Gdl7fBUe8XK+gAtGmzy5Fn0XkkWQuYxGIgWVPPse2CxFA5mtrlD0TOHaHjEUqkWNyP1XdHoJES/4A== +chokidar@3.4.3: + version "3.4.3" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.4.3.tgz#c1df38231448e45ca4ac588e6c79573ba6a57d5b" + integrity sha512-DtM3g7juCXQxFVSNPNByEC2+NImtBuxQQvWlHunpJIS5Ocr0lG306cC7FCi7cEA0fzmybPUIl4txBIobk1gGOQ== dependencies: anymatch "~3.1.1" braces "~3.0.2" @@ -685,9 +703,9 @@ chokidar@3.3.0: is-binary-path "~2.1.0" is-glob "~4.0.1" normalize-path "~3.0.0" - readdirp "~3.2.0" + readdirp "~3.5.0" optionalDependencies: - fsevents "~2.1.1" + fsevents "~2.1.2" chownr@^1.1.1: version "1.1.4" @@ -932,25 +950,30 @@ debug@2.6.9, debug@^2.6.8: dependencies: ms "2.0.0" -debug@3.2.6, debug@^3.2.6: +debug@4.2.0, debug@^4.0.1, debug@^4.1.1: + version "4.2.0" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.2.0.tgz#7f150f93920e94c58f5574c2fd01a3110effe7f1" + integrity sha512-IX2ncY78vDTjZMFUdmsvIRFY2Cf4FnD0wRs+nQwJU8Lu99/tPFdb0VybiiMTPe3I6rQmwsqQqRBvxU+bZ/I8sg== + dependencies: + ms "2.1.2" + +debug@^3.2.6: version "3.2.6" resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b" integrity sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ== dependencies: ms "^2.1.1" -debug@^4.0.1, debug@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.1.1.tgz#3b72260255109c6b589cee050f1d516139664791" - integrity sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw== - dependencies: - ms "^2.1.1" - decamelize@^1.1.1, decamelize@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= +decamelize@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-4.0.0.tgz#aa472d7bf660eb15f3494efd531cab7f2a709837" + integrity sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ== + decompress-response@^6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/decompress-response/-/decompress-response-6.0.0.tgz#ca387612ddb7e104bd16d85aab00d5ecf09c66fc" @@ -999,13 +1022,6 @@ defer-to-connect@^2.0.0: resolved "https://registry.yarnpkg.com/defer-to-connect/-/defer-to-connect-2.0.0.tgz#83d6b199db041593ac84d781b5222308ccf4c2c1" integrity sha512-bYL2d05vOSf1JEZNx5vSAtPuBMkX8K9EUutg7zlKvTqKXHt7RhWJFbmd7qakVuf13i+IkGmp6FwSsONOf6VYIg== -define-properties@^1.1.2, define-properties@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1" - integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ== - dependencies: - object-keys "^1.0.12" - delayed-stream@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" @@ -1026,10 +1042,10 @@ detect-node@^2.0.3: resolved "https://registry.yarnpkg.com/detect-node/-/detect-node-2.0.4.tgz#014ee8f8f669c5c58023da64b8179c083a28c46c" integrity sha512-ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw== -diff@3.5.0: - version "3.5.0" - resolved "https://registry.yarnpkg.com/diff/-/diff-3.5.0.tgz#800c0dd1e0a8bfbc95835c202ad220fe317e5a12" - integrity sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA== +diff@4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/diff/-/diff-4.0.2.tgz#60f3aecb89d5fae520c11aa19efc2bb982aade7d" + integrity sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A== doctrine@^3.0.0: version "3.0.0" @@ -1134,32 +1150,6 @@ entities@^2.0.0, entities@~2.1.0: resolved "https://registry.yarnpkg.com/entities/-/entities-2.1.0.tgz#992d3129cf7df6870b96c57858c249a120f8b8b5" integrity sha512-hCx1oky9PFrJ611mf0ifBLBRW8lUUVRlFolb5gWRfIELabBlbp9xZvrqZLZAs+NxFnbfQoeGd8wDkygjg7U85w== -es-abstract@^1.17.0-next.1, es-abstract@^1.17.5: - version "1.17.5" - resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.17.5.tgz#d8c9d1d66c8981fb9200e2251d799eee92774ae9" - integrity sha512-BR9auzDbySxOcfog0tLECW8l28eRGpDpU3Dm3Hp4q/N+VtLTmyj4EUN088XZWQDW/hzj6sYRDXeOFsaAODKvpg== - dependencies: - es-to-primitive "^1.2.1" - function-bind "^1.1.1" - has "^1.0.3" - has-symbols "^1.0.1" - is-callable "^1.1.5" - is-regex "^1.0.5" - object-inspect "^1.7.0" - object-keys "^1.1.1" - object.assign "^4.1.0" - string.prototype.trimleft "^2.1.1" - string.prototype.trimright "^2.1.1" - -es-to-primitive@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.1.tgz#e55cd4c9cdc188bcefb03b366c736323fc5c898a" - integrity sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA== - dependencies: - is-callable "^1.1.4" - is-date-object "^1.0.1" - is-symbol "^1.0.2" - es5-ext@^0.10.35, es5-ext@^0.10.50, es5-ext@~0.10.14: version "0.10.53" resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.53.tgz#93c5a3acfdbef275220ad72644ad02ee18368de1" @@ -1227,7 +1217,12 @@ escape-regexp-component@^1.0.2: resolved "https://registry.yarnpkg.com/escape-regexp-component/-/escape-regexp-component-1.0.2.tgz#9c63b6d0b25ff2a88c3adbd18c5b61acc3b9faa2" integrity sha1-nGO20LJf8qiMOtvRjFthrMO5+qI= -escape-string-regexp@1.0.5, escape-string-regexp@^1.0.5: +escape-string-regexp@4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" + integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== + +escape-string-regexp@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= @@ -1440,7 +1435,15 @@ fill-range@^7.0.1: dependencies: to-regex-range "^5.0.1" -find-up@3.0.0, find-up@^3.0.0: +find-up@5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-5.0.0.tgz#4c92819ecb7083561e4f4a240a86be5198f536fc" + integrity sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng== + dependencies: + locate-path "^6.0.0" + path-exists "^4.0.0" + +find-up@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" integrity sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg== @@ -1464,12 +1467,10 @@ flat-cache@^2.0.1: rimraf "2.6.3" write "1.0.3" -flat@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/flat/-/flat-4.1.0.tgz#090bec8b05e39cba309747f1d588f04dbaf98db2" - integrity sha512-Px/TiLIznH7gEDlPXcUD4KnBusa6kR6ayRUVcnEAbreRIuhkqow/mun59BuRXwoYk7ZQOLW1ZM05ilIvK38hFw== - dependencies: - is-buffer "~2.0.3" +flat@^5.0.2: + version "5.0.2" + resolved "https://registry.yarnpkg.com/flat/-/flat-5.0.2.tgz#8ca6fe332069ffa9d324c327198c598259ceb241" + integrity sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ== flatted@^2.0.0: version "2.0.2" @@ -1507,16 +1508,11 @@ fs.realpath@^1.0.0: resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= -fsevents@~2.1.1: +fsevents@~2.1.2: version "2.1.3" resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.1.3.tgz#fb738703ae8d2f9fe900c33836ddebee8b97f23e" integrity sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ== -function-bind@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" - integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== - functional-red-black-tree@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" @@ -1601,10 +1597,10 @@ glob-stream@^6.1.0: to-absolute-glob "^2.0.0" unique-stream "^2.0.2" -glob@7.1.3: - version "7.1.3" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.3.tgz#3960832d3f1574108342dafd3a67b332c0969df1" - integrity sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ== +glob@7.1.6, glob@^7.0.5, glob@^7.1.1, glob@^7.1.3: + version "7.1.6" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6" + integrity sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA== dependencies: fs.realpath "^1.0.0" inflight "^1.0.4" @@ -1624,18 +1620,6 @@ glob@^6.0.1: once "^1.3.0" path-is-absolute "^1.0.0" -glob@^7.0.5, glob@^7.1.1, glob@^7.1.3: - version "7.1.6" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6" - integrity sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA== - dependencies: - fs.realpath "^1.0.0" - inflight "^1.0.4" - inherits "2" - minimatch "^3.0.4" - once "^1.3.0" - path-is-absolute "^1.0.0" - globals@^12.1.0: version "12.4.0" resolved "https://registry.yarnpkg.com/globals/-/globals-12.4.0.tgz#a18813576a41b00a24a97e7f815918c2e19925f8" @@ -1705,23 +1689,11 @@ has-flag@^4.0.0: resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== -has-symbols@^1.0.0, has-symbols@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.1.tgz#9f5214758a44196c406d9bd76cebf81ec2dd31e8" - integrity sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg== - has-unicode@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" integrity sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk= -has@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" - integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== - dependencies: - function-bind "^1.1.1" - he@1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" @@ -1895,21 +1867,6 @@ is-binary-path@~2.1.0: dependencies: binary-extensions "^2.0.0" -is-buffer@~2.0.3: - version "2.0.4" - resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-2.0.4.tgz#3e572f23c8411a5cfd9557c849e3665e0b290623" - integrity sha512-Kq1rokWXOPXWuaMAqZiJW4XxsmD9zGx9q4aePabbn3qCRGedtH7Cm+zV8WETitMfu1wdh+Rvd6w5egwSngUX2A== - -is-callable@^1.1.4, is-callable@^1.1.5: - version "1.1.5" - resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.5.tgz#f7e46b596890456db74e7f6e976cb3273d06faab" - integrity sha512-ESKv5sMCJB2jnHTWZ3O5itG+O128Hsus4K4Qh1h2/cgn2vbgnLSVqfV46AeJA9D5EeeLa9w81KUXMtn34zhX+Q== - -is-date-object@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.2.tgz#bda736f2cd8fd06d32844e7743bfa7494c3bfd7e" - integrity sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g== - is-extglob@^2.1.0, is-extglob@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" @@ -1956,12 +1913,10 @@ is-number@^7.0.0: resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== -is-regex@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.5.tgz#39d589a358bf18967f726967120b8fc1aed74eae" - integrity sha512-vlKW17SNq44owv5AQR3Cq0bQPEb8+kF3UKZ2fiZNOWtztYE5i0CzCZxFDwO58qAOWtxdBRVO/V5Qin1wjCqFYQ== - dependencies: - has "^1.0.3" +is-plain-obj@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-2.1.0.tgz#45e42e37fccf1f40da8e5f76ee21515840c09287" + integrity sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA== is-regexp@^1.0.0: version "1.0.0" @@ -1980,13 +1935,6 @@ is-supported-regexp-flag@^1.0.0: resolved "https://registry.yarnpkg.com/is-supported-regexp-flag/-/is-supported-regexp-flag-1.0.1.tgz#21ee16518d2c1dd3edd3e9a0d57e50207ac364ca" integrity sha512-3vcJecUUrpgCqc/ca0aWeNu64UGgxcvO60K/Fkr1N6RSvfGCTU60UKN68JDmKokgba0rFFJs12EnzOQa14ubKQ== -is-symbol@^1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.3.tgz#38e1014b9e6329be0de9d24a414fd7441ec61937" - integrity sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ== - dependencies: - has-symbols "^1.0.1" - is-typedarray@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" @@ -2031,10 +1979,10 @@ js-tokens@^4.0.0: resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== -js-yaml@3.13.1, js-yaml@^3.13.1: - version "3.13.1" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.13.1.tgz#aff151b30bfdfa8e49e05da22e7415e9dfa37847" - integrity sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw== +js-yaml@3.14.0, js-yaml@^3.13.1: + version "3.14.0" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.0.tgz#a7a34170f26a21bb162424d8adacb4113a69e482" + integrity sha512-/4IbIeHcD9VMHFqDR/gQ7EdZdLimOvW2DdcxFjdyyZ9NsbS+ccrXqVWDtab/lRl5AlUqmpBx8EhPaWR+OtY17A== dependencies: argparse "^1.0.7" esprima "^4.0.0" @@ -2182,6 +2130,13 @@ locate-path@^5.0.0: dependencies: p-locate "^4.1.0" +locate-path@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-6.0.0.tgz#55321eb309febbc59c4801d931a72452a681d286" + integrity sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw== + dependencies: + p-locate "^5.0.0" + lodash.camelcase@^4.3.0: version "4.3.0" resolved "https://registry.yarnpkg.com/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz#b28aa6288a2b9fc651035c7711f65ab6190331a6" @@ -2242,12 +2197,12 @@ lodash@^4.14.0, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.4, lodash@^4.2.1: resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.19.tgz#e48ddedbe30b3321783c5b4301fbd353bc1e4a4b" integrity sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ== -log-symbols@3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-3.0.0.tgz#f3a08516a5dea893336a7dee14d18a1cfdab77c4" - integrity sha512-dSkNGuI7iG3mfvDzUuYZyvk5dD9ocYCYzNU6CYDE6+Xqd+gwme6Z00NS3dUh8mq/73HaEtT7m6W+yUPtU6BZnQ== +log-symbols@4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-4.0.0.tgz#69b3cc46d20f448eccdb75ea1fa733d9e821c920" + integrity sha512-FN8JBzLx6CzeMrB0tg6pqlGU1wCrXW+ZXGH481kfsBqer0hToTIiHdjH4Mq8xJUbvATujKCvaREGWpGUionraA== dependencies: - chalk "^2.4.2" + chalk "^4.0.0" long@~3: version "3.2.0" @@ -2354,42 +2309,43 @@ minizlib@^1.2.1: dependencies: minipass "^2.9.0" -mkdirp@0.5.5, mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@^0.5.3, mkdirp@~0.5.1: +mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@^0.5.3, mkdirp@~0.5.1: version "0.5.5" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.5.tgz#d91cefd62d1436ca0f41620e251288d420099def" integrity sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ== dependencies: minimist "^1.2.5" -mocha@^7.1.2: - version "7.1.2" - resolved "https://registry.yarnpkg.com/mocha/-/mocha-7.1.2.tgz#8e40d198acf91a52ace122cd7599c9ab857b29e6" - integrity sha512-o96kdRKMKI3E8U0bjnfqW4QMk12MwZ4mhdBTf+B5a1q9+aq2HRnj+3ZdJu0B/ZhJeK78MgYuv6L8d/rA5AeBJA== +mocha@^8.2.1: + version "8.2.1" + resolved "https://registry.yarnpkg.com/mocha/-/mocha-8.2.1.tgz#f2fa68817ed0e53343d989df65ccd358bc3a4b39" + integrity sha512-cuLBVfyFfFqbNR0uUKbDGXKGk+UDFe6aR4os78XIrMQpZl/nv7JYHcvP5MFIAb374b2zFXsdgEGwmzMtP0Xg8w== dependencies: - ansi-colors "3.2.3" + "@ungap/promise-all-settled" "1.1.2" + ansi-colors "4.1.1" browser-stdout "1.3.1" - chokidar "3.3.0" - debug "3.2.6" - diff "3.5.0" - escape-string-regexp "1.0.5" - find-up "3.0.0" - glob "7.1.3" + chokidar "3.4.3" + debug "4.2.0" + diff "4.0.2" + escape-string-regexp "4.0.0" + find-up "5.0.0" + glob "7.1.6" growl "1.10.5" he "1.2.0" - js-yaml "3.13.1" - log-symbols "3.0.0" + js-yaml "3.14.0" + log-symbols "4.0.0" minimatch "3.0.4" - mkdirp "0.5.5" - ms "2.1.1" - node-environment-flags "1.0.6" - object.assign "4.1.0" - strip-json-comments "2.0.1" - supports-color "6.0.0" - which "1.3.1" + ms "2.1.2" + nanoid "3.1.12" + serialize-javascript "5.0.1" + strip-json-comments "3.1.1" + supports-color "7.2.0" + which "2.0.2" wide-align "1.1.3" + workerpool "6.0.2" yargs "13.3.2" yargs-parser "13.1.2" - yargs-unparser "1.6.0" + yargs-unparser "2.0.0" moment@^2.19.3, moment@^2.29.1: version "2.29.1" @@ -2496,10 +2452,10 @@ ms@2.0.0: resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= -ms@2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.1.tgz#30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a" - integrity sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg== +ms@2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" + integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== ms@^2.1.1, ms@^2.1.3: version "2.1.3" @@ -2530,6 +2486,11 @@ nan@^2.13.2, nan@^2.14.0: resolved "https://registry.yarnpkg.com/nan/-/nan-2.14.1.tgz#d7be34dfa3105b91494c3147089315eff8874b01" integrity sha512-isWHgVjnFjh2x2yuJ/tj3JbwoHu3UC2dX5G/88Cm24yB6YopVgxvBObDY7n5xW6ExmFhJpSEQqFPvq9zaXc8Jw== +nanoid@3.1.12: + version "3.1.12" + resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.1.12.tgz#6f7736c62e8d39421601e4a0c77623a97ea69654" + integrity sha512-1qstj9z5+x491jfiC4Nelk+f8XBad7LN20PmyWINJEMRSf3wcAjAWysw1qaA8z6NSKe2sjq1hRSDpBH5paCb6A== + natural-compare@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" @@ -2569,14 +2530,6 @@ node-addon-api@^3.0.0: resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-3.0.0.tgz#812446a1001a54f71663bed188314bba07e09247" integrity sha512-sSHCgWfJ+Lui/u+0msF3oyCgvdkhxDbkCS6Q8uiJquzOimkJBvX6hl5aSSA7DR1XbMpdM8r7phjcF63sF4rkKg== -node-environment-flags@1.0.6: - version "1.0.6" - resolved "https://registry.yarnpkg.com/node-environment-flags/-/node-environment-flags-1.0.6.tgz#a30ac13621f6f7d674260a54dede048c3982c088" - integrity sha512-5Evy2epuL+6TM0lCQGpFIj6KwiEsGh1SrHUhTbNX+sLbBtjidPZFAnVK9y5yU1+h//RitLbRHTIMyxQPtxMdHw== - dependencies: - object.getownpropertydescriptors "^2.0.3" - semver "^5.7.0" - node-pre-gyp@0.15.0: version "0.15.0" resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.15.0.tgz#c2fc383276b74c7ffa842925241553e8b40f1087" @@ -2680,34 +2633,6 @@ object-assign@^4.1.0: resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= -object-inspect@^1.7.0: - version "1.7.0" - resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.7.0.tgz#f4f6bd181ad77f006b5ece60bd0b6f398ff74a67" - integrity sha512-a7pEHdh1xKIAgTySUGgLMx/xwDZskN1Ud6egYYN3EdRW4ZMPNEDUTF+hwy2LUC+Bl+SyLXANnwz/jyh/qutKUw== - -object-keys@^1.0.11, object-keys@^1.0.12, object-keys@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" - integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== - -object.assign@4.1.0, object.assign@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.0.tgz#968bf1100d7956bb3ca086f006f846b3bc4008da" - integrity sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w== - dependencies: - define-properties "^1.1.2" - function-bind "^1.1.1" - has-symbols "^1.0.0" - object-keys "^1.0.11" - -object.getownpropertydescriptors@^2.0.3: - version "2.1.0" - resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.0.tgz#369bf1f9592d8ab89d712dced5cb81c7c5352649" - integrity sha512-Z53Oah9A3TdLoblT7VKJaTDdXdT+lQO+cNpKVnya5JDe9uLvzu1YyY1yFDFrcxrlRgWrEFH0jJtD/IbuwjcEVg== - dependencies: - define-properties "^1.1.3" - es-abstract "^1.17.0-next.1" - obuf@^1.0.0, obuf@^1.1.1: version "1.1.2" resolved "https://registry.yarnpkg.com/obuf/-/obuf-1.1.2.tgz#09bea3343d41859ebd446292d11c9d4db619084e" @@ -2788,6 +2713,13 @@ p-limit@^2.0.0, p-limit@^2.2.0: dependencies: p-try "^2.0.0" +p-limit@^3.0.2: + version "3.1.0" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.1.0.tgz#e1daccbe78d0d1388ca18c64fea38e3e57e3706b" + integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ== + dependencies: + yocto-queue "^0.1.0" + p-locate@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4" @@ -2802,6 +2734,13 @@ p-locate@^4.1.0: dependencies: p-limit "^2.2.0" +p-locate@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-5.0.0.tgz#83c8315c6785005e3bd021839411c9e110e6d834" + integrity sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw== + dependencies: + p-limit "^3.0.2" + p-try@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" @@ -2861,7 +2800,7 @@ performance-now@^2.1.0: resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" integrity sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns= -picomatch@^2.0.4: +picomatch@^2.0.4, picomatch@^2.2.1: version "2.2.2" resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.2.2.tgz#21f333e9b6b8eaff02468f5146ea406d345f4dad" integrity sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg== @@ -2961,6 +2900,13 @@ quickselect@^1.0.1: resolved "https://registry.yarnpkg.com/quickselect/-/quickselect-1.1.1.tgz#852e412ce418f237ad5b660d70cffac647ae94c2" integrity sha512-qN0Gqdw4c4KGPsBOQafj6yj/PA6c/L63f6CaZ/DCF/xF4Esu3jVmKLUDYxghFx8Kb/O7y9tI7x2RjTSXwdK1iQ== +randombytes@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a" + integrity sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ== + dependencies: + safe-buffer "^5.1.0" + randomgeojson@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/randomgeojson/-/randomgeojson-1.0.0.tgz#2446f5a5cd88365365a10ebdda9fe76656fa6b1f" @@ -3031,12 +2977,12 @@ readable-stream@~2.1.0: string_decoder "~0.10.x" util-deprecate "~1.0.1" -readdirp@~3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.2.0.tgz#c30c33352b12c96dfb4b895421a49fd5a9593839" - integrity sha512-crk4Qu3pmXwgxdSgGhgA/eXiJAPQiX4GMOZZMXnqKxHX7TaoL+3gQVo/WeuAiogr07DpnfjIMpXXa+PAIvwPGQ== +readdirp@~3.5.0: + version "3.5.0" + resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.5.0.tgz#9ba74c019b15d365278d2e91bb8c48d7b4d42c9e" + integrity sha512-cMhu7c/8rdhkHXWsY+osBhfSy0JikwpHK/5+imo+LpeasTF8ouErHrlYkwT0++njiyuDvc7OFY5T3ukvZ8qmFQ== dependencies: - picomatch "^2.0.4" + picomatch "^2.2.1" regexp-clone@0.0.1: version "0.0.1" @@ -3221,7 +3167,7 @@ rxjs@^6.5.3: dependencies: tslib "^1.9.0" -safe-buffer@^5.0.1, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@~5.2.0: +safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@~5.2.0: version "5.2.1" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== @@ -3251,7 +3197,7 @@ select-hose@^2.0.0: resolved "https://registry.yarnpkg.com/select-hose/-/select-hose-2.0.0.tgz#625d8658f865af43ec962bfc376a37359a4994ca" integrity sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo= -semver@^5.0.1, semver@^5.1.0, semver@^5.3.0, semver@^5.5.0, semver@^5.6.0, semver@^5.7.0: +semver@^5.0.1, semver@^5.1.0, semver@^5.3.0, semver@^5.5.0, semver@^5.6.0: version "5.7.1" resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== @@ -3261,6 +3207,13 @@ semver@^6.1.2: resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== +serialize-javascript@5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-5.0.1.tgz#7886ec848049a462467a97d3d918ebb2aaf934f4" + integrity sha512-SaaNal9imEO737H2c05Og0/8LUXG7EnsZyMa8MzkmuHoELfT6txuj0cMqRj6zfPKnmQ1yasR4PCJc8x+M4JSPA== + dependencies: + randombytes "^2.1.0" + set-blocking@^2.0.0, set-blocking@~2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" @@ -3426,40 +3379,6 @@ string-width@^4.1.0, string-width@^4.2.0: is-fullwidth-code-point "^3.0.0" strip-ansi "^6.0.0" -string.prototype.trimend@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.1.tgz#85812a6b847ac002270f5808146064c995fb6913" - integrity sha512-LRPxFUaTtpqYsTeNKaFOw3R4bxIzWOnbQ837QfBylo8jIxtcbK/A/sMV7Q+OAV/vWo+7s25pOE10KYSjaSO06g== - dependencies: - define-properties "^1.1.3" - es-abstract "^1.17.5" - -string.prototype.trimleft@^2.1.1: - version "2.1.2" - resolved "https://registry.yarnpkg.com/string.prototype.trimleft/-/string.prototype.trimleft-2.1.2.tgz#4408aa2e5d6ddd0c9a80739b087fbc067c03b3cc" - integrity sha512-gCA0tza1JBvqr3bfAIFJGqfdRTyPae82+KTnm3coDXkZN9wnuW3HjGgN386D7hfv5CHQYCI022/rJPVlqXyHSw== - dependencies: - define-properties "^1.1.3" - es-abstract "^1.17.5" - string.prototype.trimstart "^1.0.0" - -string.prototype.trimright@^2.1.1: - version "2.1.2" - resolved "https://registry.yarnpkg.com/string.prototype.trimright/-/string.prototype.trimright-2.1.2.tgz#c76f1cef30f21bbad8afeb8db1511496cfb0f2a3" - integrity sha512-ZNRQ7sY3KroTaYjRS6EbNiiHrOkjihL9aQE/8gfQ4DtAC/aEBRHFJa44OmoWxGGqXuJlfKkZW4WcXErGr+9ZFg== - dependencies: - define-properties "^1.1.3" - es-abstract "^1.17.5" - string.prototype.trimend "^1.0.0" - -string.prototype.trimstart@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.1.tgz#14af6d9f34b053f7cfc89b72f8f2ee14b9039a54" - integrity sha512-XxZn+QpvrBI1FOcg6dIpxUPgWCPuNXvMD72aaRaUQv1eD4e/Qy8i/hFTe0BUmD60p/QA6bh1avmuPTfNjqVWRw== - dependencies: - define-properties "^1.1.3" - es-abstract "^1.17.5" - string_decoder@^1.1.1: version "1.3.0" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" @@ -3526,22 +3445,22 @@ strip-ansi@^6.0.0: dependencies: ansi-regex "^5.0.0" -strip-json-comments@2.0.1, strip-json-comments@~2.0.1: +strip-json-comments@3.1.1, strip-json-comments@^3.0.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" + integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== + +strip-json-comments@~2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo= -strip-json-comments@^3.0.1: - version "3.1.0" - resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.0.tgz#7638d31422129ecf4457440009fba03f9f9ac180" - integrity sha512-e6/d0eBu7gHtdCqFt0xJr642LdToM5/cN4Qb9DbHjVx1CP5RyeM+zH7pbecEmDv/lBqb0QH+6Uqq75rxFPkM0w== - -supports-color@6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-6.0.0.tgz#76cfe742cf1f41bb9b1c29ad03068c05b4c0e40a" - integrity sha512-on9Kwidc1IUQo+bQdhi8+Tijpo0e1SS6RoGo2guUwn5vdaxw8RXOF9Vb2ws+ihWOmh4JnCJOvaziZWP1VABaLg== +supports-color@7.2.0, supports-color@^7.1.0: + version "7.2.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" + integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== dependencies: - has-flag "^3.0.0" + has-flag "^4.0.0" supports-color@^5.3.0: version "5.5.0" @@ -3550,13 +3469,6 @@ supports-color@^5.3.0: dependencies: has-flag "^3.0.0" -supports-color@^7.1.0: - version "7.1.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.1.0.tgz#68e32591df73e25ad1c4b49108a2ec507962bfd1" - integrity sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g== - dependencies: - has-flag "^4.0.0" - table@^5.2.3: version "5.4.6" resolved "https://registry.yarnpkg.com/table/-/table-5.4.6.tgz#1292d19500ce3f86053b05f0e8e7e4a3bb21079e" @@ -3807,7 +3719,14 @@ which-module@^2.0.0: resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" integrity sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho= -which@1.3.1, which@^1.2.9: +which@2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" + integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== + dependencies: + isexe "^2.0.0" + +which@^1.2.9: version "1.3.1" resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== @@ -3831,6 +3750,11 @@ word-wrap@~1.2.3: resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c" integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ== +workerpool@6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/workerpool/-/workerpool-6.0.2.tgz#e241b43d8d033f1beb52c7851069456039d1d438" + integrity sha512-DSNyvOpFKrNusaaUwk+ej6cBj1bmhLcBfj80elGk+ZIo5JSkq+unB1dLKEOcNfJDZgjGICfhQ0Q5TbP0PvF4+Q== + wrap-ansi@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-2.1.0.tgz#d8fc3d284dd05794fe84973caecdd1cf824fdd85" @@ -3919,16 +3843,17 @@ yargs-parser@^18.1.1: camelcase "^5.0.0" decamelize "^1.2.0" -yargs-unparser@1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/yargs-unparser/-/yargs-unparser-1.6.0.tgz#ef25c2c769ff6bd09e4b0f9d7c605fb27846ea9f" - integrity sha512-W9tKgmSn0DpSatfri0nx52Joq5hVXgeLiqR/5G0sZNDoLZFOr/xjBUDcShCOGNsBnEMNo1KAMBkTej1Hm62HTw== +yargs-unparser@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/yargs-unparser/-/yargs-unparser-2.0.0.tgz#f131f9226911ae5d9ad38c432fe809366c2325eb" + integrity sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA== dependencies: - flat "^4.1.0" - lodash "^4.17.15" - yargs "^13.3.0" + camelcase "^6.0.0" + decamelize "^4.0.0" + flat "^5.0.2" + is-plain-obj "^2.1.0" -yargs@13.3.2, yargs@^13.3.0: +yargs@13.3.2: version "13.3.2" resolved "https://registry.yarnpkg.com/yargs/-/yargs-13.3.2.tgz#ad7ffefec1aa59565ac915f82dccb38a9c31a2dd" integrity sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw== @@ -3973,3 +3898,8 @@ yargs@^3.10.0: string-width "^1.0.1" window-size "^0.1.4" y18n "^3.2.0" + +yocto-queue@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" + integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== From 38320ee9edfc024248be403c15ce92785952db13 Mon Sep 17 00:00:00 2001 From: Gerald Pape Date: Wed, 13 Jan 2021 14:53:06 +0100 Subject: [PATCH 103/337] Lint in ci (#406) * Bump simple-statistics from 7.3.1 to 7.3.2 (#370) Bumps [simple-statistics](https://github.com/simple-statistics/simple-statistics) from 7.3.1 to 7.3.2. - [Release notes](https://github.com/simple-statistics/simple-statistics/releases) - [Changelog](https://github.com/simple-statistics/simple-statistics/blob/master/CHANGELOG.md) - [Commits](https://github.com/simple-statistics/simple-statistics/compare/v7.3.1...v7.3.2) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump csv-parse from 4.11.1 to 4.13.0 (#371) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.11.1 to 4.13.0. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.11.1...v4.13.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump csv-parse from 4.13.0 to 4.14.0 (#373) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.13.0 to 4.14.0. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.13.0...v4.14.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * build docs also for minor versions and patches * Bump config from 3.3.2 to 3.3.3 (#380) Bumps [config](https://github.com/lorenwest/node-config) from 3.3.2 to 3.3.3. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump got from 11.7.0 to 11.8.0 (#361) * Bump csv-stringify from 5.5.1 to 5.5.3 (#378) * Bump ms from 2.1.2 to 2.1.3 (#381) Bumps [ms](https://github.com/vercel/ms) from 2.1.2 to 2.1.3. - [Release notes](https://github.com/vercel/ms/releases) - [Commits](https://github.com/vercel/ms/compare/2.1.2...2.1.3) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * [Security] Bump ini from 1.3.5 to 1.3.8 (#385) Bumps [ini](https://github.com/isaacs/ini) from 1.3.5 to 1.3.8. **This update includes a security fix.** - [Release notes](https://github.com/isaacs/ini/releases) - [Commits](https://github.com/isaacs/ini/compare/v1.3.5...v1.3.8) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump got from 11.8.0 to 11.8.1 (#382) Bumps [got](https://github.com/sindresorhus/got) from 11.8.0 to 11.8.1. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v11.8.0...v11.8.1) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump simple-statistics from 7.3.2 to 7.4.0 (#386) Bumps [simple-statistics](https://github.com/simple-statistics/simple-statistics) from 7.3.2 to 7.4.0. - [Release notes](https://github.com/simple-statistics/simple-statistics/releases) - [Changelog](https://github.com/simple-statistics/simple-statistics/blob/master/CHANGELOG.md) - [Commits](https://github.com/simple-statistics/simple-statistics/compare/v7.3.2...v7.4.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump csv-parse from 4.14.0 to 4.14.2 (#387) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.14.0 to 4.14.2. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.14.0...v4.14.2) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * Bump csv-stringify from 5.5.3 to 5.6.0 (#390) Bumps [csv-stringify](https://github.com/adaltas/node-csv-stringify) from 5.5.3 to 5.6.0. - [Release notes](https://github.com/adaltas/node-csv-stringify/releases) - [Changelog](https://github.com/adaltas/node-csv-stringify/blob/master/CHANGELOG.md) - [Commits](https://github.com/adaltas/node-csv-stringify/compare/v5.5.3...v5.6.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> * run tests in github workflow * try without tty * add deploy-docs ci step * fix yaml syntax * try npx * only deploy docs on release publish * cleanup * lint in ci * install node 12 * fix linting issues Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: felixerdy --- .github/workflows/test.yaml | 33 ++++++++++++++ package.json | 1 + .../lib/controllers/measurementsController.js | 6 ++- packages/models/src/box/box.js | 10 ++--- .../sensorLayouts/sensorDefinitions/index.js | 2 +- packages/models/src/user/mails.js | 10 ++--- tests/data/senseBoxSchema.js | 4 +- tests/tests/002-location_tests.js | 3 +- tests/tests/003-idw-test.js | 3 +- tests/tests/006-submit-measurements-test.js | 43 ++++++++++--------- 10 files changed, 77 insertions(+), 38 deletions(-) diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index 702f3e7e..75364704 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -9,6 +9,39 @@ on: - master jobs: + lint: + name: Lint code + runs-on: ubuntu-20.04 + steps: + - uses: actions/checkout@v2 + + - name: Install Node.js 12 + uses: actions/setup-node@v2.1.4 + with: + node-version: 12 + + - name: Get yarn cache directory path + id: yarn-cache-dir-path + run: | + echo "##[set-output name=dir;]$(yarn cache dir)" + + - name: Restore yarn cache + uses: actions/cache@v2 + id: yarn-cache + with: + path: ${{ steps.yarn-cache-dir-path.outputs.dir }} + key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }} + restore-keys: | + ${{ runner.os }}-yarn- + + - name: Install project dependencies + run: | + yarn --prefer-offline --pure-lockfile + + - name: Run eslint + run: | + yarn run lint:ci + test: name: Run tests runs-on: ubuntu-20.04 diff --git a/package.json b/package.json index 63dd2271..6d04ad49 100644 --- a/package.json +++ b/package.json @@ -11,6 +11,7 @@ "test": "./.scripts/run-tests.sh", "NOTpretest": "node tests/waitForHttp", "tag-container": "./.scripts/npm_tag-container.sh", + "lint:ci": "eslint --ignore-pattern node_modules \"{tests,packages}/**/*.js\"", "lint": "eslint --ignore-pattern node_modules --fix \"{tests,packages}/**/*.js\"", "create-version-file": "node .scripts/create-version.js" }, diff --git a/packages/api/lib/controllers/measurementsController.js b/packages/api/lib/controllers/measurementsController.js index 01e7c159..e9e031e8 100644 --- a/packages/api/lib/controllers/measurementsController.js +++ b/packages/api/lib/controllers/measurementsController.js @@ -45,12 +45,14 @@ const getLatestMeasurements = async function getLatestMeasurements (req, res, ne if (params.sensorId) { const sensor = box.sensors.find(s => s._id.equals(params.sensorId)); if (sensor) { - if(params.onlyValue){ - if(!sensor.lastMeasurement){ + if (params.onlyValue) { + if (!sensor.lastMeasurement) { res.send(undefined); + return; } res.send(sensor.lastMeasurement.value); + return; } res.send(sensor); diff --git a/packages/models/src/box/box.js b/packages/models/src/box/box.js index ce863f2c..f5f35e62 100644 --- a/packages/models/src/box/box.js +++ b/packages/models/src/box/box.js @@ -251,12 +251,12 @@ boxSchema.statics.initNew = function ({ sensors = sensorLayouts.getSensorsForModel(model); } } - if(model){ + if (model) { //activate useAuth only for certain models until all sketches are updated - if(['homeV2Lora' , 'homeV2Ethernet' , 'homeV2EthernetFeinstaub' , 'homeV2Wifi' , 'homeV2WifiFeinstaub' , 'homeEthernet' , 'homeWifi' , 'homeEthernetFeinstaub' , 'homeWifiFeinstaub' , 'hackair_home_v2'].indexOf(model) != -1){ - useAuth = true + if (['homeV2Lora', 'homeV2Ethernet', 'homeV2EthernetFeinstaub', 'homeV2Wifi', 'homeV2WifiFeinstaub', 'homeEthernet', 'homeWifi', 'homeEthernetFeinstaub', 'homeWifiFeinstaub', 'hackair_home_v2'].indexOf(model) !== -1) { + useAuth = true; } else { - useAuth = false + useAuth = false; } } @@ -885,7 +885,7 @@ boxSchema.methods.updateBox = function updateBox (args) { // if user wants a new access_token if (typeof args['generate_access_token'] !== 'undefined') { - if (args['generate_access_token'] == 'true') { + if (args['generate_access_token'] === 'true') { // Create new acces token for box const access_token = crypto.randomBytes(32).toString('hex'); box.set('access_token', access_token); diff --git a/packages/models/src/box/sensorLayouts/sensorDefinitions/index.js b/packages/models/src/box/sensorLayouts/sensorDefinitions/index.js index a23253a3..f7d020ea 100644 --- a/packages/models/src/box/sensorLayouts/sensorDefinitions/index.js +++ b/packages/models/src/box/sensorLayouts/sensorDefinitions/index.js @@ -40,7 +40,7 @@ const veml6070_uvintensity = require('./veml6070_uvintensity'), smt50_soiltemperature = require('./smt50_soiltemperature'), soundlevelmeter = require('./soundlevelmeter'), windspeed = require('./windspeed'), - scd30_co2 = require('./scd30_co2') + scd30_co2 = require('./scd30_co2'); module.exports = { hdc1008_temperature, diff --git a/packages/models/src/user/mails.js b/packages/models/src/user/mails.js index 06099518..1d7ed496 100644 --- a/packages/models/src/user/mails.js +++ b/packages/models/src/user/mails.js @@ -18,7 +18,7 @@ if (config.get('mailer.url')) { const mailTemplates = { 'newBox' (user, box) { - let sketchParams = { + const sketchParams = { encoding: 'base64', ssid: '', password: '', @@ -29,11 +29,11 @@ if (config.get('mailer.url')) { devEUI: '', appEUI: '', appKey: '' - } + }; - if(box.access_token) { - sketchParams.access_token = box.access_token - } + if (box.access_token) { + sketchParams.access_token = box.access_token; + } return { payload: { diff --git a/tests/data/senseBoxSchema.js b/tests/data/senseBoxSchema.js index fd578d99..9ee2325e 100644 --- a/tests/data/senseBoxSchema.js +++ b/tests/data/senseBoxSchema.js @@ -32,10 +32,10 @@ module.exports = { 'type': 'string' }, 'useAuth': { - 'type': "boolean" + 'type': 'boolean' }, 'access_token': { - 'type': "string" + 'type': 'string' }, 'sensors': { 'type': 'array', diff --git a/tests/tests/002-location_tests.js b/tests/tests/002-location_tests.js index 271e6809..e4685702 100644 --- a/tests/tests/002-location_tests.js +++ b/tests/tests/002-location_tests.js @@ -484,6 +484,7 @@ describe('openSenseMap API locations tests', function () { const measurements = {}; measurements[box.sensors[1]._id] = [7, moment().subtract(2, 'ms'), [7, 7, 7]]; measurements[box.sensors[2]._id] = [8, moment(), { lat: 8, lng: 8, height: 8 }]; + return chakram.post(BASE_URL, measurements, authHeaderBox) .then(logResponseIfError) .then(function (response) { @@ -549,7 +550,7 @@ describe('openSenseMap API locations tests', function () { describe('text/csv', function () { // const csvAndAuthHeader = Object.assign({ json: false, headers: { 'Content-Type': 'text/csv' } }, authHeaderBox); - + it('should accept 2D locations', function () { const measurements = `${box.sensors[3]._id},11,${moment().toISOString()},11,11`; diff --git a/tests/tests/003-idw-test.js b/tests/tests/003-idw-test.js index 794ee166..a7fc1d74 100644 --- a/tests/tests/003-idw-test.js +++ b/tests/tests/003-idw-test.js @@ -50,8 +50,9 @@ describe('openSenseMap API Routes: /statistics/idw', function () { } const [ first, second, third, fourth, fifth, sixth ] = boxes; + return chakram.all([ - chakram.post(`${process.env.OSEM_TEST_BASE_URL}/boxes/${first._id}/data`, first.measurements, { headers: { 'content-type': 'application/json', 'Authorization': first.access_token} }), + chakram.post(`${process.env.OSEM_TEST_BASE_URL}/boxes/${first._id}/data`, first.measurements, { headers: { 'content-type': 'application/json', 'Authorization': first.access_token } }), chakram.post(`${process.env.OSEM_TEST_BASE_URL}/boxes/${second._id}/data`, second.measurements, { headers: { 'content-type': 'application/json', 'Authorization': second.access_token } }), chakram.post(`${process.env.OSEM_TEST_BASE_URL}/boxes/${third._id}/data`, third.measurements, { headers: { 'content-type': 'application/json', 'Authorization': third.access_token } }), chakram.post(`${process.env.OSEM_TEST_BASE_URL}/boxes/${fourth._id}/data`, fourth.measurements, { headers: { 'content-type': 'application/json', 'Authorization': fourth.access_token } }), diff --git a/tests/tests/006-submit-measurements-test.js b/tests/tests/006-submit-measurements-test.js index c7661ffb..6ffdb7fb 100644 --- a/tests/tests/006-submit-measurements-test.js +++ b/tests/tests/006-submit-measurements-test.js @@ -43,7 +43,7 @@ describe('submitting measurements', function () { it('should accept a single measurement via POST', function () { let submitTime; - return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/${boxes[0].sensors[0]._id}`, { 'value': 312.1 }, {headers: {'Authorization' : boxes[0].access_token} }) + return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/${boxes[0].sensors[0]._id}`, { 'value': 312.1 }, { headers: { 'Authorization': boxes[0].access_token } }) .then(function (response) { submitTime = moment.utc(response.response.headers.date, 'ddd, DD MMM YYYY HH:mm:ss GMT'); expect(response).to.have.status(201); @@ -71,20 +71,21 @@ describe('submitting measurements', function () { it('should reject a single measurement via POST with wrong access_token', function () { - return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/${boxes[0].sensors[0]._id}`, { 'value': 312.1 }, {headers: {'Authorization' : 'wrongAccessToken'} }) + return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/${boxes[0].sensors[0]._id}`, { 'value': 312.1 }, { headers: { 'Authorization': 'wrongAccessToken' } }) .then(function (response) { expect(response).to.have.status(401); expect(response.body.message).to.equal('Box access token not valid!'); + return chakram.wait(); // return chakram.get(`${BASE_URL}/boxes/${boxIds[0]}`); - }) + }); }); it('should accept a single measurement with timestamp via POST', function () { const submitTime = moment.utc().toISOString(); - return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/${boxes[0].sensors[1]._id}`, { 'value': 123.4, 'createdAt': submitTime }, {headers: {'Authorization' : boxes[0].access_token} }) + return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/${boxes[0].sensors[1]._id}`, { 'value': 123.4, 'createdAt': submitTime }, { headers: { 'Authorization': boxes[0].access_token } }) .then(function (response) { expect(response).to.have.status(201); expect(response.body).to.equal('Measurement saved in box'); @@ -113,7 +114,7 @@ describe('submitting measurements', function () { const submitTime = moment.utc().add(1.5, 'minutes') .toISOString(); - return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/${boxes[0].sensors[1]._id}`, { 'value': 123.4, 'createdAt': submitTime }, {headers: {'Authorization' : boxes[0].access_token} }) + return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/${boxes[0].sensors[1]._id}`, { 'value': 123.4, 'createdAt': submitTime }, { headers: { 'Authorization': boxes[0].access_token } }) .then(function (response) { expect(response).to.have.status(422); @@ -128,7 +129,7 @@ describe('submitting measurements', function () { it('should accept multiple measurements as csv via POST', function () { let submitTime; - return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, csv_example_data.no_timestamps(boxes[0].sensors), { json: false, headers: { 'content-type': 'text/csv', 'Authorization' : boxes[0].access_token} }) + return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, csv_example_data.no_timestamps(boxes[0].sensors), { json: false, headers: { 'content-type': 'text/csv', 'Authorization': boxes[0].access_token } }) .then(function (response) { submitTime = moment.utc(response.response.headers.date, 'ddd, DD MMM YYYY HH:mm:ss GMT'); expect(response).to.have.status(201); @@ -152,20 +153,20 @@ describe('submitting measurements', function () { it('should reject multiple measurements as csv via POST with wrong access_token', function () { - return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, csv_example_data.no_timestamps(boxes[0].sensors), { json: false, headers: { 'content-type': 'text/csv', 'Authorization' : 'WRONGAUTHTOKEN'} }) + return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, csv_example_data.no_timestamps(boxes[0].sensors), { json: false, headers: { 'content-type': 'text/csv', 'Authorization': 'WRONGAUTHTOKEN' } }) .then(function (response) { expect(response).to.have.status(401); expect(JSON.parse(response.body).message).to.equal('Box access token not valid!'); - + return chakram.wait(); - }) + }); }); it('should accept multiple measurements with timestamps as csv via POST', function () { let submitTime; - return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, csv_example_data.with_timestamps(boxes[0].sensors), { json: false, headers: { 'content-type': 'text/csv', 'Authorization' : boxes[0].access_token } }) + return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, csv_example_data.with_timestamps(boxes[0].sensors), { json: false, headers: { 'content-type': 'text/csv', 'Authorization': boxes[0].access_token } }) .then(function (response) { submitTime = moment.utc(response.response.headers.date, 'ddd, DD MMM YYYY HH:mm:ss GMT'); expect(response).to.have.status(201); @@ -188,7 +189,7 @@ describe('submitting measurements', function () { }); it('should reject multiple measurements with timestamps too far into the future as csv via POST', function () { - return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, csv_example_data.with_timestamps_future(boxes[0].sensors), { json: false, headers: { 'content-type': 'text/csv', 'Authorization' : boxes[0].access_token } }) + return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, csv_example_data.with_timestamps_future(boxes[0].sensors), { json: false, headers: { 'content-type': 'text/csv', 'Authorization': boxes[0].access_token } }) .then(function (response) { expect(response).to.have.status(422); @@ -197,7 +198,7 @@ describe('submitting measurements', function () { }); it('should reject multiple measurements with too many fields as csv via POST', function () { - return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, csv_example_data.with_too_many(boxes[0].sensors), { json: false, headers: { 'content-type': 'text/csv', 'Authorization' : boxes[0].access_token } }) + return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, csv_example_data.with_too_many(boxes[0].sensors), { json: false, headers: { 'content-type': 'text/csv', 'Authorization': boxes[0].access_token } }) .then(function (response) { expect(response).to.have.status(422); @@ -206,7 +207,7 @@ describe('submitting measurements', function () { }); it('should accept multiple csv measurements from ten days ago', function () { - return chakram.post(`${BASE_URL}/boxes/${boxIds[1]}/data`, csv_example_data.ten_days_ago_many(boxes[1].sensors), { json: false, headers: { 'content-type': 'text/csv', 'Authorization' : boxes[1].access_token } }) + return chakram.post(`${BASE_URL}/boxes/${boxIds[1]}/data`, csv_example_data.ten_days_ago_many(boxes[1].sensors), { json: false, headers: { 'content-type': 'text/csv', 'Authorization': boxes[1].access_token } }) .then(function (response) { expect(response).to.have.status(201); @@ -231,7 +232,7 @@ describe('submitting measurements', function () { it('should accept multiple measurements with timestamps as json object via POST and Content-type: json', function () { let submitTime; - return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, JSON.stringify(json_submit_data.json_obj(boxes[0].sensors)), { json: false, headers: { 'content-type': 'json', 'Authorization' : boxes[0].access_token } }) + return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, JSON.stringify(json_submit_data.json_obj(boxes[0].sensors)), { json: false, headers: { 'content-type': 'json', 'Authorization': boxes[0].access_token } }) .then(function (response) { submitTime = moment.utc(response.response.headers.date, 'ddd, DD MMM YYYY HH:mm:ss GMT'); expect(response).to.have.status(201); @@ -257,7 +258,7 @@ describe('submitting measurements', function () { it('should accept multiple measurements with timestamps as json object via POST', function () { let submitTime; - return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, json_submit_data.json_obj(boxes[0].sensors), {headers: {'Authorization' : boxes[0].access_token} }) + return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, json_submit_data.json_obj(boxes[0].sensors), { headers: { 'Authorization': boxes[0].access_token } }) .then(function (response) { submitTime = moment.utc(response.response.headers.date, 'ddd, DD MMM YYYY HH:mm:ss GMT'); expect(response).to.have.status(201); @@ -286,7 +287,7 @@ describe('submitting measurements', function () { it('should accept multiple measurements with timestamps as json array via POST', function () { let submitTime; - return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, json_submit_data.json_arr(boxes[0].sensors), {headers: {'Authorization' : boxes[0].access_token} }) + return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, json_submit_data.json_arr(boxes[0].sensors), { headers: { 'Authorization': boxes[0].access_token } }) .then(function (response) { submitTime = moment.utc(response.response.headers.date, 'ddd, DD MMM YYYY HH:mm:ss GMT'); expect(response).to.have.status(201); @@ -322,7 +323,7 @@ describe('submitting measurements', function () { { sensor_id, value: 0.7, createdAt: '2016-01-23T08:37:23.000Z' } ]; - return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, payload, {headers: {'Authorization' : boxes[0].access_token} }) + return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, payload, { headers: { 'Authorization': boxes[0].access_token } }) .then(function (response) { expect(response).to.have.status(201); expect(response.body).to.equal('Measurements saved in box'); @@ -356,7 +357,7 @@ describe('submitting measurements', function () { { sensor: boxes[0].sensors[3]._id, value: 0.3, createdAt: '2010-01-02T01:00:22.000Z' }, ]; - return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, payload, {headers: {'Authorization' : boxes[0].access_token} }) + return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, payload, { headers: { 'Authorization': boxes[0].access_token } }) .then(function (response) { expect(response).to.have.status(201); expect(response.body).to.equal('Measurements saved in box'); @@ -392,7 +393,7 @@ describe('submitting measurements', function () { { sensor: boxes[0].sensors[3]._id, value: 0.3, createdAt: '2010-01-02T01:00:22.000Z' }, ]; - return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, payload, {headers: {'Authorization' : boxes[0].access_token} }) + return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, payload, { headers: { 'Authorization': boxes[0].access_token } }) .then(function (response) { expect(response).to.have.status(201); expect(response.body).to.equal('Measurements saved in box'); @@ -419,7 +420,7 @@ describe('submitting measurements', function () { it('should accept multiple measurements as bytes via POST', function () { let submitTime; - return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, byte_submit_data(boxes[0].sensors), { json: false, headers: { 'content-type': 'application/sbx-bytes', 'Authorization' : boxes[0].access_token} }) + return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, byte_submit_data(boxes[0].sensors), { json: false, headers: { 'content-type': 'application/sbx-bytes', 'Authorization': boxes[0].access_token } }) .then(function (response) { submitTime = moment.utc(response.response.headers.date, 'ddd, DD MMM YYYY HH:mm:ss GMT'); expect(response).to.have.status(201); @@ -445,7 +446,7 @@ describe('submitting measurements', function () { it('should accept multiple measurements as bytes with timestamp via POST', function () { let submitTime; - return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, byte_submit_data(boxes[0].sensors, true), { json: false, headers: { 'content-type': 'application/sbx-bytes-ts', 'Authorization' : boxes[0].access_token } }) + return chakram.post(`${BASE_URL}/boxes/${boxIds[0]}/data`, byte_submit_data(boxes[0].sensors, true), { json: false, headers: { 'content-type': 'application/sbx-bytes-ts', 'Authorization': boxes[0].access_token } }) .then(function (response) { submitTime = moment.utc(response.response.headers.date, 'ddd, DD MMM YYYY HH:mm:ss GMT'); expect(response).to.have.status(201); From c0f5b1e24f12e52ecf3abccd25b691b97b34d45c Mon Sep 17 00:00:00 2001 From: Gerald Pape Date: Thu, 14 Jan 2021 09:21:58 +0100 Subject: [PATCH 104/337] use node v14 (#408) Co-authored-by: Felix Erdmann --- .github/dependabot.yml | 4 ++++ CONTRIBUTING.md | 2 +- Dockerfile | 4 ++-- README.md | 2 +- packages/api/package.json | 2 +- tests/tests-Dockerfile | 2 +- yarn.lock | 8 ++++---- 7 files changed, 14 insertions(+), 10 deletions(-) diff --git a/.github/dependabot.yml b/.github/dependabot.yml index eb1bced5..f122fed2 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -9,3 +9,7 @@ updates: directory: "/" schedule: interval: "daily" + - package-ecosystem: "docker" + directory: "/" + schedule: + interval: "daily" diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index c203caef..e83988ff 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -14,7 +14,7 @@ Make sure you have the following tools installed: - Docker - Docker Compose -- Node.Js v8 +- Node.Js v14 - Yarn package manager Fork, then clone the repo: diff --git a/Dockerfile b/Dockerfile index d3fba53d..12975649 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM node:12-alpine as build +FROM node:14-alpine as build ENV NODE_ENV=production @@ -23,7 +23,7 @@ RUN yarn create-version-file \ && rm -rf .git .scripts # Final stage -FROM node:12-alpine +FROM node:14-alpine ENV NODE_ENV=production diff --git a/README.md b/README.md index d478c894..18a43676 100644 --- a/README.md +++ b/README.md @@ -11,7 +11,7 @@ You'll find that the repostiory uses yarn workspaces to separate the [API](packa Configuration of both the api and the models is done using mechanisms provided by [lorenwest/node-config](https://github.com/lorenwest/node-config). You can find an annotated example configuration with all keys in [`config/config.example.json`](config/config.example.json). ## Development -- Have [Node.js] v12, [yarn](https://yarnpkg.com/), [Docker](https://docs.docker.com/engine/installation/) and [docker-compose](https://docs.docker.com/compose/install/) installed +- Have [Node.js] v14, [yarn](https://yarnpkg.com/), [Docker](https://docs.docker.com/engine/installation/) and [docker-compose](https://docs.docker.com/compose/install/) installed - Start your development database (`docker-compose up -d db`) - Create branch for your feature (`git checkout my-awesome-feature`) - Run `yarn install` diff --git a/packages/api/package.json b/packages/api/package.json index f1f02de1..dfcadf11 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -19,7 +19,7 @@ "@turf/hex-grid": "^6.0.2", "@turf/square-grid": "^6.0.2", "@turf/triangle-grid": "^6.0.1", - "apicache": "^1.4.0", + "apicache": "1.5.2", "bunyan": "^1.8.14", "config": "^3.3.3", "csv-stringify": "^5.6.0", diff --git a/tests/tests-Dockerfile b/tests/tests-Dockerfile index bf6df34e..e83ae048 100644 --- a/tests/tests-Dockerfile +++ b/tests/tests-Dockerfile @@ -1,4 +1,4 @@ -FROM node:12-alpine +FROM node:14-alpine # YARN_PRODUCTION=false is a workaround for https://github.com/yarnpkg/yarn/issues/4557 ENV NODE_ENV=production \ diff --git a/yarn.lock b/yarn.lock index 561fc213..df616eba 100644 --- a/yarn.lock +++ b/yarn.lock @@ -350,10 +350,10 @@ anymatch@~3.1.1: normalize-path "^3.0.0" picomatch "^2.0.4" -apicache@^1.4.0: - version "1.5.3" - resolved "https://registry.yarnpkg.com/apicache/-/apicache-1.5.3.tgz#8977b358bf7d579d55fe3d183c907ae5dbcfb357" - integrity sha512-n1h39Bt7tMiJMV0u0tFlhigig8Uo/wJmKoj6WE/OwvZ+WbFchn7jnXleotZOzZTUBtr0Tg9iJshHnJDAGQbAEQ== +apicache@1.5.2: + version "1.5.2" + resolved "https://registry.yarnpkg.com/apicache/-/apicache-1.5.2.tgz#2cb0697d9b1b612b505b1a44face66d48b1d1404" + integrity sha512-jO8ie/Zqmr3MxLQSVNsHiQo5R1tbbP1TnpI6xOnRJv9wUOSP+YnZkULWmdo3fE7PHBSxIQzgIsEHGa6H5hKH9Q== aproba@^1.0.3: version "1.2.0" From 89ccceb183e466b667daa3a05ab7e131f1032e39 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 18 Jan 2021 08:11:20 +0100 Subject: [PATCH 105/337] Bump eslint from 6.8.0 to 7.18.0 (#413) Bumps [eslint](https://github.com/eslint/eslint) from 6.8.0 to 7.18.0. - [Release notes](https://github.com/eslint/eslint/releases) - [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md) - [Commits](https://github.com/eslint/eslint/compare/v6.8.0...v7.18.0) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 551 +++++++++++++++++++++++---------------------------- 2 files changed, 252 insertions(+), 301 deletions(-) diff --git a/package.json b/package.json index 6d04ad49..72b4fa31 100644 --- a/package.json +++ b/package.json @@ -22,7 +22,7 @@ "chakram": "^1.5.0", "cheerio": "^1.0.0-rc.5", "csv-parse": "^4.14.2", - "eslint": "6.8.0", + "eslint": "7.18.0", "mimelib": "^0.3.1", "mocha": "^8.2.1", "mqtt": "^3.0.0", diff --git a/yarn.lock b/yarn.lock index df616eba..5a44c99a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -23,6 +23,22 @@ chalk "^2.0.0" js-tokens "^4.0.0" +"@eslint/eslintrc@^0.3.0": + version "0.3.0" + resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-0.3.0.tgz#d736d6963d7003b6514e6324bec9c602ac340318" + integrity sha512-1JTKgrOKAHVivSvOYw+sJOunkBjUOvjqWk1DPja7ZFhIS2mX/4EgTT8M7eTK9jrKhL/FvXXEbQwIs3pg1xp3dg== + dependencies: + ajv "^6.12.4" + debug "^4.1.1" + espree "^7.3.0" + globals "^12.1.0" + ignore "^4.0.6" + import-fresh "^3.2.1" + js-yaml "^3.13.1" + lodash "^4.17.20" + minimatch "^3.0.4" + strip-json-comments "^3.1.1" + "@netflix/nerror@^1.0.0": version "1.1.3" resolved "https://registry.yarnpkg.com/@netflix/nerror/-/nerror-1.1.3.tgz#9d88eccca442f1d544f2761d15ea557dc0a44ed2" @@ -270,43 +286,46 @@ abbrev@1: resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q== -acorn-jsx@^5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.2.0.tgz#4c66069173d6fdd68ed85239fc256226182b2ebe" - integrity sha512-HiUX/+K2YpkpJ+SzBffkM/AQ2YE03S0U1kjTLVpoJdhZMOWy8qvXVN9JdLqv2QsaQ6MPYQIuNmwD8zOiYUofLQ== +acorn-jsx@^5.3.1: + version "5.3.1" + resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.1.tgz#fc8661e11b7ac1539c47dbfea2e72b3af34d267b" + integrity sha512-K0Ptm/47OKfQRpNQ2J/oIN/3QYiK6FwW+eJbILhsdxh2WTLdl+30o8aGdTbm5JbffpFFAg/g+zi1E+jvJha5ng== -acorn@^7.1.1: - version "7.1.1" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.1.1.tgz#e35668de0b402f359de515c5482a1ab9f89a69bf" - integrity sha512-add7dgA5ppRPxCFJoAGfMDi7PIBXq1RtGo7BhbLaxwrXPOmw8gq48Y9ozT01hUKy9byMjlR20EJhu5zlkErEkg== +acorn@^7.4.0: + version "7.4.1" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" + integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== addressparser@~1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/addressparser/-/addressparser-1.0.1.tgz#47afbe1a2a9262191db6838e4fd1d39b40821746" integrity sha1-R6++GiqSYhkdtoOOT9HTm0CCF0Y= -ajv@^6.10.0, ajv@^6.10.2, ajv@^6.5.5: - version "6.12.2" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.2.tgz#c629c5eced17baf314437918d2da88c99d5958cd" - integrity sha512-k+V+hzjm5q/Mr8ef/1Y9goCmlsK4I6Sm74teeyGvFk1XrOsbsKLjEdrvny42CZ+a8sXbk8KWpY/bDwS+FLL2UQ== +ajv@^6.10.0, ajv@^6.12.4, ajv@^6.5.5: + version "6.12.6" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" + integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== dependencies: fast-deep-equal "^3.1.1" fast-json-stable-stringify "^2.0.0" json-schema-traverse "^0.4.1" uri-js "^4.2.2" -ansi-colors@4.1.1: +ajv@^7.0.2: + version "7.0.3" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-7.0.3.tgz#13ae747eff125cafb230ac504b2406cf371eece2" + integrity sha512-R50QRlXSxqXcQP5SvKUrw8VZeypvo12i2IX0EeR5PiZ7bEKeHWgzgo264LDadUsCU42lTJVhFikTqJwNeH34gQ== + dependencies: + fast-deep-equal "^3.1.1" + json-schema-traverse "^1.0.0" + require-from-string "^2.0.2" + uri-js "^4.2.2" + +ansi-colors@4.1.1, ansi-colors@^4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.1.tgz#cbb9ae256bf750af1eab344f229aa27fe94ba348" integrity sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA== -ansi-escapes@^4.2.1: - version "4.3.1" - resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.1.tgz#a5c47cc43181f1f38ffd7076837700d395522a61" - integrity sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA== - dependencies: - type-fest "^0.11.0" - ansi-regex@^2.0.0: version "2.1.1" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" @@ -400,10 +419,10 @@ assertion-error@^1.0.1, assertion-error@^1.1.0: resolved "https://registry.yarnpkg.com/assertion-error/-/assertion-error-1.1.0.tgz#e60b6b0e8f301bd97e5375215bda406c85118c0b" integrity sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw== -astral-regex@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-1.0.0.tgz#6c8c3fb827dd43ee3918f27b82782ab7658a6fd9" - integrity sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg== +astral-regex@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-2.0.0.tgz#483143c567aeed4785759c0865786dc77d7d2e31" + integrity sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ== async-limiter@~1.0.0: version "1.0.1" @@ -633,7 +652,7 @@ chakram@^1.5.0: request-debug "0.x.x" tv4 "1.x.x" -chalk@^2.0.0, chalk@^2.1.0: +chalk@^2.0.0: version "2.4.2" resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== @@ -642,14 +661,6 @@ chalk@^2.0.0, chalk@^2.1.0: escape-string-regexp "^1.0.5" supports-color "^5.3.0" -chalk@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-3.0.0.tgz#3f73c2bf526591f574cc492c51e2456349f844e4" - integrity sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg== - dependencies: - ansi-styles "^4.1.0" - supports-color "^7.1.0" - chalk@^4.0.0: version "4.1.0" resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.0.tgz#4e14870a618d9e2edd97dd8345fd9d9dc315646a" @@ -658,11 +669,6 @@ chalk@^4.0.0: ansi-styles "^4.1.0" supports-color "^7.1.0" -chardet@^0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" - integrity sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA== - check-error@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/check-error/-/check-error-1.0.2.tgz#574d312edd88bb5dd8912e9286dd6c0aed4aac82" @@ -712,18 +718,6 @@ chownr@^1.1.1: resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.4.tgz#6fc9d7b42d32a583596337666e7d08084da2cc6b" integrity sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg== -cli-cursor@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-3.1.0.tgz#264305a7ae490d1d03bf0c9ba7c925d1753af307" - integrity sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw== - dependencies: - restore-cursor "^3.1.0" - -cli-width@^2.0.0: - version "2.2.1" - resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.1.tgz#b0433d0b4e9c847ef18868a4ef16fd5fc8271c48" - integrity sha512-GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw== - cliui@^3.0.3: version "3.2.0" resolved "https://registry.yarnpkg.com/cliui/-/cliui-3.2.0.tgz#120601537a916d29940f934da3b48d585a39213d" @@ -859,16 +853,14 @@ core-util-is@1.0.2, core-util-is@~1.0.0: resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= -cross-spawn@^6.0.5: - version "6.0.5" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4" - integrity sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ== +cross-spawn@^7.0.2: + version "7.0.3" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" + integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== dependencies: - nice-try "^1.0.4" - path-key "^2.0.1" - semver "^5.5.0" - shebang-command "^1.2.0" - which "^1.2.9" + path-key "^3.1.0" + shebang-command "^2.0.0" + which "^2.0.1" css-select@^3.1.2: version "3.1.2" @@ -1005,7 +997,7 @@ deep-extend@^0.6.0: resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac" integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA== -deep-is@~0.1.3: +deep-is@^0.1.3, deep-is@~0.1.3: version "0.1.3" resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" integrity sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ= @@ -1145,6 +1137,13 @@ end-of-stream@^1.0.0, end-of-stream@^1.1.0, end-of-stream@^1.4.1: dependencies: once "^1.4.0" +enquirer@^2.3.5: + version "2.3.6" + resolved "https://registry.yarnpkg.com/enquirer/-/enquirer-2.3.6.tgz#2a7fe5dd634a1e4125a975ec994ff5456dc3734d" + integrity sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg== + dependencies: + ansi-colors "^4.1.1" + entities@^2.0.0, entities@~2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/entities/-/entities-2.1.0.tgz#992d3129cf7df6870b96c57858c249a120f8b8b5" @@ -1239,77 +1238,82 @@ escodegen@^1.8.1: optionalDependencies: source-map "~0.6.1" -eslint-scope@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.0.0.tgz#e87c8887c73e8d1ec84f1ca591645c358bfc8fb9" - integrity sha512-oYrhJW7S0bxAFDvWqzvMPRm6pcgcnWc4QnofCAqRTRfQC0JcwenzGglTtsLyIuuWFfkqDG9vz67cnttSd53djw== +eslint-scope@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c" + integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw== dependencies: - esrecurse "^4.1.0" + esrecurse "^4.3.0" estraverse "^4.1.1" -eslint-utils@^1.4.3: - version "1.4.3" - resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-1.4.3.tgz#74fec7c54d0776b6f67e0251040b5806564e981f" - integrity sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q== +eslint-utils@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-2.1.0.tgz#d2de5e03424e707dc10c74068ddedae708741b27" + integrity sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg== dependencies: eslint-visitor-keys "^1.1.0" -eslint-visitor-keys@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.1.0.tgz#e2a82cea84ff246ad6fb57f9bde5b46621459ec2" - integrity sha512-8y9YjtM1JBJU/A9Kc+SbaOV4y29sSWckBwMHa+FGtVj5gN/sbnKDf6xJUl+8g7FAij9LVaP8C24DUiH/f/2Z9A== +eslint-visitor-keys@^1.1.0, eslint-visitor-keys@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz#30ebd1ef7c2fdff01c3a4f151044af25fab0523e" + integrity sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ== -eslint@6.8.0: - version "6.8.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-6.8.0.tgz#62262d6729739f9275723824302fb227c8c93ffb" - integrity sha512-K+Iayyo2LtyYhDSYwz5D5QdWw0hCacNzyq1Y821Xna2xSJj7cijoLLYmLxTQgcgZ9mC61nryMy9S7GRbYpI5Ig== +eslint-visitor-keys@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.0.0.tgz#21fdc8fbcd9c795cc0321f0563702095751511a8" + integrity sha512-QudtT6av5WXels9WjIM7qz1XD1cWGvX4gGXvp/zBn9nXG02D0utdU3Em2m/QjTnrsk6bBjmCygl3rmj118msQQ== + +eslint@7.18.0: + version "7.18.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.18.0.tgz#7fdcd2f3715a41fe6295a16234bd69aed2c75e67" + integrity sha512-fbgTiE8BfUJZuBeq2Yi7J3RB3WGUQ9PNuNbmgi6jt9Iv8qrkxfy19Ds3OpL1Pm7zg3BtTVhvcUZbIRQ0wmSjAQ== dependencies: "@babel/code-frame" "^7.0.0" + "@eslint/eslintrc" "^0.3.0" ajv "^6.10.0" - chalk "^2.1.0" - cross-spawn "^6.0.5" + chalk "^4.0.0" + cross-spawn "^7.0.2" debug "^4.0.1" doctrine "^3.0.0" - eslint-scope "^5.0.0" - eslint-utils "^1.4.3" - eslint-visitor-keys "^1.1.0" - espree "^6.1.2" - esquery "^1.0.1" + enquirer "^2.3.5" + eslint-scope "^5.1.1" + eslint-utils "^2.1.0" + eslint-visitor-keys "^2.0.0" + espree "^7.3.1" + esquery "^1.2.0" esutils "^2.0.2" - file-entry-cache "^5.0.1" + file-entry-cache "^6.0.0" functional-red-black-tree "^1.0.1" glob-parent "^5.0.0" globals "^12.1.0" ignore "^4.0.6" import-fresh "^3.0.0" imurmurhash "^0.1.4" - inquirer "^7.0.0" is-glob "^4.0.0" js-yaml "^3.13.1" json-stable-stringify-without-jsonify "^1.0.1" - levn "^0.3.0" - lodash "^4.17.14" + levn "^0.4.1" + lodash "^4.17.20" minimatch "^3.0.4" - mkdirp "^0.5.1" natural-compare "^1.4.0" - optionator "^0.8.3" + optionator "^0.9.1" progress "^2.0.0" - regexpp "^2.0.1" - semver "^6.1.2" - strip-ansi "^5.2.0" - strip-json-comments "^3.0.1" - table "^5.2.3" + regexpp "^3.1.0" + semver "^7.2.1" + strip-ansi "^6.0.0" + strip-json-comments "^3.1.0" + table "^6.0.4" text-table "^0.2.0" v8-compile-cache "^2.0.3" -espree@^6.1.2: - version "6.2.1" - resolved "https://registry.yarnpkg.com/espree/-/espree-6.2.1.tgz#77fc72e1fd744a2052c20f38a5b575832e82734a" - integrity sha512-ysCxRQY3WaXJz9tdbWOwuWr5Y/XrPTGX9Kiz3yoUXwW0VZ4w30HTkQLaGx/+ttFjF8i+ACbArnB4ce68a9m5hw== +espree@^7.3.0, espree@^7.3.1: + version "7.3.1" + resolved "https://registry.yarnpkg.com/espree/-/espree-7.3.1.tgz#f2df330b752c6f55019f8bd89b7660039c1bbbb6" + integrity sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g== dependencies: - acorn "^7.1.1" - acorn-jsx "^5.2.0" - eslint-visitor-keys "^1.1.0" + acorn "^7.4.0" + acorn-jsx "^5.3.1" + eslint-visitor-keys "^1.3.0" esprima@1.2.2: version "1.2.2" @@ -1321,21 +1325,21 @@ esprima@^4.0.0, esprima@^4.0.1: resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== -esquery@^1.0.1: +esquery@^1.2.0: version "1.3.1" resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.3.1.tgz#b78b5828aa8e214e29fb74c4d5b752e1c033da57" integrity sha512-olpvt9QG0vniUBZspVRN6lwB7hOZoTRtT+jzR+tS4ffYx2mzbw+z0XCOk44aaLYKApNX5nMm+E+P6o25ip/DHQ== dependencies: estraverse "^5.1.0" -esrecurse@^4.1.0: - version "4.2.1" - resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.2.1.tgz#007a3b9fdbc2b3bb87e4879ea19c92fdbd3942cf" - integrity sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ== +esrecurse@^4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921" + integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag== dependencies: - estraverse "^4.1.0" + estraverse "^5.2.0" -estraverse@^4.1.0, estraverse@^4.1.1, estraverse@^4.2.0: +estraverse@^4.1.1, estraverse@^4.2.0: version "4.3.0" resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d" integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== @@ -1345,6 +1349,11 @@ estraverse@^5.1.0: resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.1.0.tgz#374309d39fd935ae500e7b92e8a6b4c720e59642" integrity sha512-FyohXK+R0vE+y1nHLoBM7ZTyqRpqAlhdZHCWIWEviFLiGB8b04H6bQs8G+XTthacvT8VuwvteiP7RJSxMs8UEw== +estraverse@^5.2.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.2.0.tgz#307df42547e6cc7324d3cf03c155d5cdb8c53880" + integrity sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ== + esutils@^2.0.2: version "2.0.3" resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" @@ -1375,15 +1384,6 @@ extend@^3.0.0, extend@~3.0.2: resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== -external-editor@^3.0.3: - version "3.1.0" - resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-3.1.0.tgz#cb03f740befae03ea4d283caed2741a83f335495" - integrity sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew== - dependencies: - chardet "^0.7.0" - iconv-lite "^0.4.24" - tmp "^0.0.33" - extsprintf@1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.2.0.tgz#5ad946c22f5b32ba7f8cd7426711c6e8a3fc2529" @@ -1409,24 +1409,17 @@ fast-json-stable-stringify@^2.0.0: resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== -fast-levenshtein@~2.0.6: +fast-levenshtein@^2.0.6, fast-levenshtein@~2.0.6: version "2.0.6" resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= -figures@^3.0.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/figures/-/figures-3.2.0.tgz#625c18bd293c604dc4a8ddb2febf0c88341746af" - integrity sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg== - dependencies: - escape-string-regexp "^1.0.5" - -file-entry-cache@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-5.0.1.tgz#ca0f6efa6dd3d561333fb14515065c2fafdf439c" - integrity sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g== +file-entry-cache@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.0.tgz#7921a89c391c6d93efec2169ac6bf300c527ea0a" + integrity sha512-fqoO76jZ3ZnYrXLDRxBR1YvOvc0k844kcOg40bgsPrE25LAb/PDqTY+ho64Xh2c8ZXgIKldchCFHczG2UVRcWA== dependencies: - flat-cache "^2.0.1" + flat-cache "^3.0.4" fill-range@^7.0.1: version "7.0.1" @@ -1458,24 +1451,23 @@ find-up@^4.1.0: locate-path "^5.0.0" path-exists "^4.0.0" -flat-cache@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-2.0.1.tgz#5d296d6f04bda44a4630a301413bdbc2ec085ec0" - integrity sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA== +flat-cache@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.0.4.tgz#61b0338302b2fe9f957dcc32fc2a87f1c3048b11" + integrity sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg== dependencies: - flatted "^2.0.0" - rimraf "2.6.3" - write "1.0.3" + flatted "^3.1.0" + rimraf "^3.0.2" flat@^5.0.2: version "5.0.2" resolved "https://registry.yarnpkg.com/flat/-/flat-5.0.2.tgz#8ca6fe332069ffa9d324c327198c598259ceb241" integrity sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ== -flatted@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/flatted/-/flatted-2.0.2.tgz#4575b21e2bcee7434aa9be662f4b7b5f9c2b5138" - integrity sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA== +flatted@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.1.0.tgz#a5d06b4a8b01e3a63771daa5cb7a1903e2e57067" + integrity sha512-tW+UkmtNg/jv9CSofAKvgVcO7c2URjhTdW1ZTkcAritblu8tajiYy7YisnIflEwtKssCtOxpnBRoCB7iap0/TA== forever-agent@~0.6.1: version "0.6.1" @@ -1778,7 +1770,7 @@ http2-wrapper@^1.0.0-beta.5.2: quick-lru "^5.1.1" resolve-alpn "^1.0.0" -iconv-lite@^0.4.24, iconv-lite@^0.4.4, iconv-lite@~0.4.13: +iconv-lite@^0.4.4, iconv-lite@~0.4.13: version "0.4.24" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== @@ -1797,10 +1789,10 @@ ignore@^4.0.6: resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc" integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg== -import-fresh@^3.0.0: - version "3.2.1" - resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.2.1.tgz#633ff618506e793af5ac91bf48b72677e15cbe66" - integrity sha512-6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ== +import-fresh@^3.0.0, import-fresh@^3.2.1: + version "3.3.0" + resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b" + integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw== dependencies: parent-module "^1.0.0" resolve-from "^4.0.0" @@ -1828,25 +1820,6 @@ ini@~1.3.0: resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c" integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew== -inquirer@^7.0.0: - version "7.1.0" - resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-7.1.0.tgz#1298a01859883e17c7264b82870ae1034f92dd29" - integrity sha512-5fJMWEmikSYu0nv/flMc475MhGbB7TSPd/2IpFV4I4rMklboCH2rQjYY5kKiYGHqUF9gvaambupcJFFG9dvReg== - dependencies: - ansi-escapes "^4.2.1" - chalk "^3.0.0" - cli-cursor "^3.1.0" - cli-width "^2.0.0" - external-editor "^3.0.3" - figures "^3.0.0" - lodash "^4.17.15" - mute-stream "0.0.8" - run-async "^2.4.0" - rxjs "^6.5.3" - string-width "^4.1.0" - strip-ansi "^6.0.0" - through "^2.3.6" - invert-kv@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-1.0.0.tgz#104a8e4aaca6d3d8cd157a8ef8bfab2d7a3ffdb6" @@ -2002,6 +1975,11 @@ json-schema-traverse@^0.4.1: resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== +json-schema-traverse@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz#ae7bcb3656ab77a73ba5c49bf654f38e6b6860e2" + integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug== + json-schema@0.2.3: version "0.2.3" resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13" @@ -2107,7 +2085,15 @@ leven@^2.1.0: resolved "https://registry.yarnpkg.com/leven/-/leven-2.1.0.tgz#c2e7a9f772094dee9d34202ae8acce4687875580" integrity sha1-wuep93IJTe6dNCAq6KzORoeHVYA= -levn@^0.3.0, levn@~0.3.0: +levn@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade" + integrity sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ== + dependencies: + prelude-ls "^1.2.1" + type-check "~0.4.0" + +levn@~0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee" integrity sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4= @@ -2192,10 +2178,10 @@ lodash.once@^4.0.0: resolved "https://registry.yarnpkg.com/lodash.once/-/lodash.once-4.1.1.tgz#0dd3971213c7c56df880977d504c88fb471a97ac" integrity sha1-DdOXEhPHxW34gJd9UEyI+0cal6w= -lodash@^4.14.0, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.4, lodash@^4.2.1: - version "4.17.19" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.19.tgz#e48ddedbe30b3321783c5b4301fbd353bc1e4a4b" - integrity sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ== +lodash@^4.14.0, lodash@^4.17.15, lodash@^4.17.20, lodash@^4.17.4, lodash@^4.2.1: + version "4.17.20" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.20.tgz#b44a9b6297bcb698f1c51a3545a2b3b368d59c52" + integrity sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA== log-symbols@4.0.0: version "4.0.0" @@ -2222,6 +2208,13 @@ lru-cache@^4.0.1: pseudomap "^1.0.2" yallist "^2.1.2" +lru-cache@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94" + integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA== + dependencies: + yallist "^4.0.0" + martinez-polygon-clipping@^0.4.3: version "0.4.3" resolved "https://registry.yarnpkg.com/martinez-polygon-clipping/-/martinez-polygon-clipping-0.4.3.tgz#a3971ddf1da147104b5d0fbbf68f728bb62885c1" @@ -2262,11 +2255,6 @@ mimelib@^0.3.1: addressparser "~1.0.1" encoding "~0.1.12" -mimic-fn@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" - integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== - mimic-response@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-1.0.1.tgz#4923538878eef42063cb8a3e3b0798781487ab1b" @@ -2309,7 +2297,7 @@ minizlib@^1.2.1: dependencies: minipass "^2.9.0" -mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@^0.5.3, mkdirp@~0.5.1: +mkdirp@^0.5.0, mkdirp@^0.5.3, mkdirp@~0.5.1: version "0.5.5" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.5.tgz#d91cefd62d1436ca0f41620e251288d420099def" integrity sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ== @@ -2467,11 +2455,6 @@ muri@1.3.0: resolved "https://registry.yarnpkg.com/muri/-/muri-1.3.0.tgz#aeccf3db64c56aa7c5b34e00f95b7878527a4721" integrity sha512-FiaFwKl864onHFFUV/a2szAl7X0fxVlSKNdhTf+BM8i8goEgYut8u5P9MqQqIYwvaMxjzVESsoEm/2kfkFH1rg== -mute-stream@0.0.8: - version "0.0.8" - resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.8.tgz#1630c42b2251ff81e2a283de96a5497ea92e5e0d" - integrity sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA== - mv@~2: version "2.1.1" resolved "https://registry.yarnpkg.com/mv/-/mv-2.1.1.tgz#ae6ce0d6f6d5e0a4f7d893798d03c1ea9559b6a2" @@ -2520,11 +2503,6 @@ next-tick@~1.0.0: resolved "https://registry.yarnpkg.com/next-tick/-/next-tick-1.0.0.tgz#ca86d1fe8828169b0120208e3dc8424b9db8342c" integrity sha1-yobR/ogoFpsBICCOPchCS524NCw= -nice-try@^1.0.4: - version "1.0.5" - resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" - integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ== - node-addon-api@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-3.0.0.tgz#812446a1001a54f71663bed188314bba07e09247" @@ -2645,14 +2623,7 @@ once@^1.3.0, once@^1.3.1, once@^1.4.0: dependencies: wrappy "1" -onetime@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.0.tgz#fff0f3c91617fe62bb50189636e99ac8a6df7be5" - integrity sha512-5NcSkPHhwTVFIQN+TUqXoS5+dlElHXdpAWu9I0HP20YOtIi+aZ0Ct82jdlILDxjLEAWwvm+qj1m6aEtsDVmm6Q== - dependencies: - mimic-fn "^2.1.0" - -optionator@^0.8.1, optionator@^0.8.3: +optionator@^0.8.1: version "0.8.3" resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.3.tgz#84fa1d036fe9d3c7e21d99884b601167ec8fb495" integrity sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA== @@ -2664,6 +2635,18 @@ optionator@^0.8.1, optionator@^0.8.3: type-check "~0.3.2" word-wrap "~1.2.3" +optionator@^0.9.1: + version "0.9.1" + resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.1.tgz#4f236a6373dae0566a6d43e1326674f50c291499" + integrity sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw== + dependencies: + deep-is "^0.1.3" + fast-levenshtein "^2.0.6" + levn "^0.4.1" + prelude-ls "^1.2.1" + type-check "^0.4.0" + word-wrap "^1.2.3" + optjs@~3.2.2: version "3.2.2" resolved "https://registry.yarnpkg.com/optjs/-/optjs-3.2.2.tgz#69a6ce89c442a44403141ad2f9b370bd5bb6f4ee" @@ -2688,7 +2671,7 @@ os-locale@^1.4.0: dependencies: lcid "^1.0.0" -os-tmpdir@^1.0.0, os-tmpdir@~1.0.2: +os-tmpdir@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ= @@ -2785,10 +2768,10 @@ path-is-absolute@^1.0.0: resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= -path-key@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" - integrity sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A= +path-key@^3.1.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" + integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== pathval@^1.1.0: version "1.1.0" @@ -2805,6 +2788,11 @@ picomatch@^2.0.4, picomatch@^2.2.1: resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.2.2.tgz#21f333e9b6b8eaff02468f5146ea406d345f4dad" integrity sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg== +prelude-ls@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" + integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== + prelude-ls@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" @@ -2989,10 +2977,10 @@ regexp-clone@0.0.1: resolved "https://registry.yarnpkg.com/regexp-clone/-/regexp-clone-0.0.1.tgz#a7c2e09891fdbf38fbb10d376fb73003e68ac589" integrity sha1-p8LgmJH9vzj7sQ03b7cwA+aKxYk= -regexpp@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-2.0.1.tgz#8d19d31cf632482b589049f8281f93dbcba4d07f" - integrity sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw== +regexpp@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.1.0.tgz#206d0ad0a5648cffbdb8ae46438f3dc51c9f78e2" + integrity sha512-ZOIzd8yVsQQA7j8GCSlPGXwg5PfmA1mrq0JP4nGhh54LaKN3xdai/vHUDu74pKwV8OxseMS65u2NImosQcSD0Q== reinterval@^1.1.0: version "1.1.0" @@ -3042,6 +3030,11 @@ require-directory@^2.1.1: resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" integrity sha1-jGStX9MNqxyXbiNE/+f3kqam30I= +require-from-string@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909" + integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw== + require-main-filename@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-2.0.0.tgz#d0b329ecc7cc0f61649f62215be69af54aa8989b" @@ -3126,21 +3119,6 @@ restify@^5.2.0: optionalDependencies: dtrace-provider "^0.8.1" -restore-cursor@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-3.1.0.tgz#39f67c54b3a7a58cea5236d95cf0034239631f7e" - integrity sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA== - dependencies: - onetime "^5.1.0" - signal-exit "^3.0.2" - -rimraf@2.6.3: - version "2.6.3" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.3.tgz#b2d104fe0d8fb27cf9e0a1cda8262dd3833c6cab" - integrity sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA== - dependencies: - glob "^7.1.3" - rimraf@^2.6.1: version "2.7.1" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec" @@ -3148,6 +3126,13 @@ rimraf@^2.6.1: dependencies: glob "^7.1.3" +rimraf@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" + integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== + dependencies: + glob "^7.1.3" + rimraf@~2.4.0: version "2.4.5" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.4.5.tgz#ee710ce5d93a8fdb856fb5ea8ff0e2d75934b2da" @@ -3155,18 +3140,6 @@ rimraf@~2.4.0: dependencies: glob "^6.0.1" -run-async@^2.4.0: - version "2.4.1" - resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.4.1.tgz#8440eccf99ea3e70bd409d49aab88e10c189a455" - integrity sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ== - -rxjs@^6.5.3: - version "6.5.5" - resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.5.5.tgz#c5c884e3094c8cfee31bf27eb87e54ccfc87f9ec" - integrity sha512-WfQI+1gohdf0Dai/Bbmk5L5ItH5tYqm3ki2c5GdWhKjalzjg93N3avFjVStyZZz+A2Em+ZxKH5bNghw9UeylGQ== - dependencies: - tslib "^1.9.0" - safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@~5.2.0: version "5.2.1" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" @@ -3197,15 +3170,17 @@ select-hose@^2.0.0: resolved "https://registry.yarnpkg.com/select-hose/-/select-hose-2.0.0.tgz#625d8658f865af43ec962bfc376a37359a4994ca" integrity sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo= -semver@^5.0.1, semver@^5.1.0, semver@^5.3.0, semver@^5.5.0, semver@^5.6.0: +semver@^5.0.1, semver@^5.1.0, semver@^5.3.0, semver@^5.6.0: version "5.7.1" resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== -semver@^6.1.2: - version "6.3.0" - resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" - integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== +semver@^7.2.1: + version "7.3.4" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.4.tgz#27aaa7d2e4ca76452f98d3add093a72c943edc97" + integrity sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw== + dependencies: + lru-cache "^6.0.0" serialize-javascript@5.0.1: version "5.0.1" @@ -3219,19 +3194,19 @@ set-blocking@^2.0.0, set-blocking@~2.0.0: resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc= -shebang-command@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" - integrity sha1-RKrGW2lbAzmJaMOfNj/uXer98eo= +shebang-command@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" + integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== dependencies: - shebang-regex "^1.0.0" + shebang-regex "^3.0.0" -shebang-regex@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" - integrity sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM= +shebang-regex@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" + integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== -signal-exit@^3.0.0, signal-exit@^3.0.2: +signal-exit@^3.0.0: version "3.0.3" resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.3.tgz#a1410c2edd8f077b08b4e253c8eacfcaf057461c" integrity sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA== @@ -3241,14 +3216,14 @@ simple-statistics@^7.4.0: resolved "https://registry.yarnpkg.com/simple-statistics/-/simple-statistics-7.4.0.tgz#4319348aff39d9cc3aababe02671568674807515" integrity sha512-1mXlR6NEIwMsKWjD+exMd4vvRWmrrBk+MT1n3O5NBjbxjIh1E1YlQikwyNdQjPcq8E+EgUkFmj67gr2bfAIwGg== -slice-ansi@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-2.1.0.tgz#cacd7693461a637a5788d92a7dd4fba068e81636" - integrity sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ== +slice-ansi@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-4.0.0.tgz#500e8dd0fd55b05815086255b3195adf2a45fe6b" + integrity sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ== dependencies: - ansi-styles "^3.2.0" - astral-regex "^1.0.0" - is-fullwidth-code-point "^2.0.0" + ansi-styles "^4.0.0" + astral-regex "^2.0.0" + is-fullwidth-code-point "^3.0.0" sliced@0.0.5: version "0.0.5" @@ -3445,7 +3420,7 @@ strip-ansi@^6.0.0: dependencies: ansi-regex "^5.0.0" -strip-json-comments@3.1.1, strip-json-comments@^3.0.1: +strip-json-comments@3.1.1, strip-json-comments@^3.1.0, strip-json-comments@^3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== @@ -3469,15 +3444,15 @@ supports-color@^5.3.0: dependencies: has-flag "^3.0.0" -table@^5.2.3: - version "5.4.6" - resolved "https://registry.yarnpkg.com/table/-/table-5.4.6.tgz#1292d19500ce3f86053b05f0e8e7e4a3bb21079e" - integrity sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug== +table@^6.0.4: + version "6.0.7" + resolved "https://registry.yarnpkg.com/table/-/table-6.0.7.tgz#e45897ffbcc1bcf9e8a87bf420f2c9e5a7a52a34" + integrity sha512-rxZevLGTUzWna/qBLObOe16kB2RTnnbhciwgPbMMlazz1yZGVEgnZK762xyVdVznhqxrfCeBMmMkgOOaPwjH7g== dependencies: - ajv "^6.10.2" - lodash "^4.17.14" - slice-ansi "^2.1.0" - string-width "^3.0.0" + ajv "^7.0.2" + lodash "^4.17.20" + slice-ansi "^4.0.0" + string-width "^4.2.0" tar@^4.4.2: version "4.4.13" @@ -3513,23 +3488,11 @@ through2@^2.0.1, through2@~2.0.0: readable-stream "~2.3.6" xtend "~4.0.1" -through@^2.3.6: - version "2.3.8" - resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" - integrity sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU= - tinyqueue@^1.2.0: version "1.2.3" resolved "https://registry.yarnpkg.com/tinyqueue/-/tinyqueue-1.2.3.tgz#b6a61de23060584da29f82362e45df1ec7353f3d" integrity sha512-Qz9RgWuO9l8lT+Y9xvbzhPT2efIUIFd69N7eF7tJ9lnQl0iLj1M7peK7IoUGZL9DJHw9XftqLreccfxcQgYLxA== -tmp@^0.0.33: - version "0.0.33" - resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9" - integrity sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw== - dependencies: - os-tmpdir "~1.0.2" - to-absolute-glob@^2.0.0: version "2.0.2" resolved "https://registry.yarnpkg.com/to-absolute-glob/-/to-absolute-glob-2.0.2.tgz#1865f43d9e74b0822db9f145b78cff7d0f7c849b" @@ -3553,11 +3516,6 @@ tough-cookie@~2.5.0: psl "^1.1.28" punycode "^2.1.1" -tslib@^1.9.0: - version "1.11.1" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.11.1.tgz#eb15d128827fbee2841549e171f45ed338ac7e35" - integrity sha512-aZW88SY8kQbU7gpV19lN24LtXh/yD4ZZg6qieAJDDg+YBsJcSmLGK9QpnUjAKVG/xefmvJGd1WUmfpT/g6AJGA== - tunnel-agent@^0.6.0: version "0.6.0" resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" @@ -3575,6 +3533,13 @@ tweetnacl@^0.14.3, tweetnacl@~0.14.0: resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" integrity sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q= +type-check@^0.4.0, type-check@~0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1" + integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew== + dependencies: + prelude-ls "^1.2.1" + type-check@~0.3.2: version "0.3.2" resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72" @@ -3597,11 +3562,6 @@ type-detect@^4.0.0, type-detect@^4.0.5: resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c" integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g== -type-fest@^0.11.0: - version "0.11.0" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.11.0.tgz#97abf0872310fed88a5c466b25681576145e33f1" - integrity sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ== - type-fest@^0.8.1: version "0.8.1" resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d" @@ -3719,20 +3679,13 @@ which-module@^2.0.0: resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" integrity sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho= -which@2.0.2: +which@2.0.2, which@^2.0.1: version "2.0.2" resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== dependencies: isexe "^2.0.0" -which@^1.2.9: - version "1.3.1" - resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" - integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== - dependencies: - isexe "^2.0.0" - wide-align@1.1.3, wide-align@^1.1.0: version "1.1.3" resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.3.tgz#ae074e6bdc0c14a431e804e624549c633b000457" @@ -3745,7 +3698,7 @@ window-size@^0.1.4: resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.1.4.tgz#f8e1aa1ee5a53ec5bf151ffa09742a6ad7697876" integrity sha1-+OGqHuWlPsW/FR/6CXQqatdpeHY= -word-wrap@~1.2.3: +word-wrap@^1.2.3, word-wrap@~1.2.3: version "1.2.3" resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c" integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ== @@ -3786,13 +3739,6 @@ wrappy@1: resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= -write@1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/write/-/write-1.0.3.tgz#0800e14523b923a387e415123c865616aae0f5c3" - integrity sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig== - dependencies: - mkdirp "^0.5.1" - ws@^3.2.0: version "3.3.3" resolved "https://registry.yarnpkg.com/ws/-/ws-3.3.3.tgz#f1cf84fe2d5e901ebce94efaece785f187a228f2" @@ -3827,6 +3773,11 @@ yallist@^3.0.0, yallist@^3.0.3: resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== +yallist@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" + integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== + yargs-parser@13.1.2, yargs-parser@^13.1.2: version "13.1.2" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-13.1.2.tgz#130f09702ebaeef2650d54ce6e3e5706f7a4fb38" From 1324be5bf3855bafa1182c82f7cabea8328a24da Mon Sep 17 00:00:00 2001 From: Eric Thieme-Garmann Date: Mon, 18 Jan 2021 11:09:07 +0100 Subject: [PATCH 106/337] Added display to getSketch() (#410) * Added display to getSketch() * update templater version * build for dockerhub * new templater version * bumped templater version * eslint * remove branch from testing Co-authored-by: umut0 --- packages/api/lib/controllers/boxesController.js | 4 +++- packages/models/package.json | 2 +- packages/models/src/box/box.js | 3 ++- yarn.lock | 8 ++++---- 4 files changed, 10 insertions(+), 7 deletions(-) diff --git a/packages/api/lib/controllers/boxesController.js b/packages/api/lib/controllers/boxesController.js index 9b8f3e7f..17b2529f 100644 --- a/packages/api/lib/controllers/boxesController.js +++ b/packages/api/lib/controllers/boxesController.js @@ -435,7 +435,8 @@ const getSketch = async function getSketch (req, res, next) { password: req._userParams.password, devEUI: req._userParams.devEUI, appEUI: req._userParams.appEUI, - appKey: req._userParams.appKey + appKey: req._userParams.appKey, + display_enabled: req._userParams.display_enabled }; // pass access token only if useAuth is true and access_token is available @@ -497,6 +498,7 @@ module.exports = { { name: 'devEUI', dataType: 'StringWithEmpty' }, { name: 'appEUI', dataType: 'StringWithEmpty' }, { name: 'appKey', dataType: 'StringWithEmpty' }, + { name: 'display_enabled', allowedValues: ['true', 'false'] }, ]), checkPrivilege, getSketch diff --git a/packages/models/package.json b/packages/models/package.json index bd7f8540..6064b702 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -6,7 +6,7 @@ "license": "MIT", "dependencies": { "@sensebox/osem-protos": "^1.1.0", - "@sensebox/sketch-templater": "^1.8.3", + "@sensebox/sketch-templater": "^1.9.0", "bcrypt": "^5.0.0", "bunyan": "^1.8.14", "config": "^3.3.3", diff --git a/packages/models/src/box/box.js b/packages/models/src/box/box.js index f5f35e62..83115a6b 100644 --- a/packages/models/src/box/box.js +++ b/packages/models/src/box/box.js @@ -817,7 +817,7 @@ boxSchema.methods.updateSensors = function updateSensors (sensors) { } }; -boxSchema.methods.getSketch = function getSketch ({ encoding, serialPort, soilDigitalPort, soundMeterPort, windSpeedPort, ssid, password, devEUI, appEUI, appKey, access_token } = {}) { +boxSchema.methods.getSketch = function getSketch ({ encoding, serialPort, soilDigitalPort, soundMeterPort, windSpeedPort, ssid, password, devEUI, appEUI, appKey, access_token, display_enabled } = {}) { if (serialPort) { this.serialPort = serialPort; } @@ -837,6 +837,7 @@ boxSchema.methods.getSketch = function getSketch ({ encoding, serialPort, soilDi this.appEUI = appEUI, this.appKey = appKey; this.access_token = access_token; + this.display_enabled = display_enabled; return templateSketcher.generateSketch(this, { encoding }); }; diff --git a/yarn.lock b/yarn.lock index 5a44c99a..455302ce 100644 --- a/yarn.lock +++ b/yarn.lock @@ -58,10 +58,10 @@ resolved "https://registry.yarnpkg.com/@sensebox/osem-protos/-/osem-protos-1.1.0.tgz#a7de8bc6be867953f1309181a012063c23299e79" integrity sha512-H+nUVcWlT0dvIqfJnYHuX9JBcCkP1ZKGE5YTRNWPbAEdZ11h+srpQsmeI58wK5hJcdukaZAjc4Dy96IeGM77aA== -"@sensebox/sketch-templater@^1.8.3": - version "1.8.3" - resolved "https://registry.yarnpkg.com/@sensebox/sketch-templater/-/sketch-templater-1.8.3.tgz#16fe48afdd2e472ab443e5d21890b59ec8701cd9" - integrity sha512-oKKgv6foFzoiTcyCeZEnycOshyE5owh8Xsjk3a0YuhfG+pLwd9EN4maV7jW6IPcmtSXtaTEICoB+H9K7DiAyLQ== +"@sensebox/sketch-templater@^1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@sensebox/sketch-templater/-/sketch-templater-1.9.0.tgz#ef7d3222242dffc1e060f7ea843a6c2a1a090662" + integrity sha512-wciob8MREljN16Th4VgPOQRUFeOT2rh3uXjdYk++Xs2ir3psGZ/iY9ft1mMW3RaTbSPNz1vICtJNgCelxHxodA== dependencies: config "^1.29.2" dedent "^0.7.0" From 1d637f4fc0d48013709640e069d3ed22636ba2fb Mon Sep 17 00:00:00 2001 From: Felix Erdmann Date: Wed, 20 Jan 2021 14:50:16 +0100 Subject: [PATCH 107/337] New light sensor (#416) * bump node-sketch-templater version * v0.0.27 * bump api models --- packages/api/package.json | 2 +- packages/models/CHANGELOG.md | 3 +++ packages/models/package.json | 4 ++-- yarn.lock | 8 ++++---- 4 files changed, 10 insertions(+), 7 deletions(-) diff --git a/packages/api/package.json b/packages/api/package.json index dfcadf11..5d0bce6f 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -10,7 +10,7 @@ "Norwin Roosen" ], "dependencies": { - "@sensebox/opensensemap-api-models": "^0.0.26", + "@sensebox/opensensemap-api-models": "^0.0.27", "@turf/area": "^6.0.1", "@turf/bbox": "^6.0.1", "@turf/centroid": "^6.0.2", diff --git a/packages/models/CHANGELOG.md b/packages/models/CHANGELOG.md index 6d98f760..3408278e 100644 --- a/packages/models/CHANGELOG.md +++ b/packages/models/CHANGELOG.md @@ -2,6 +2,9 @@ ## Unreleased +## v0.0.27 +- Update @sensebox/node-sketch-templater to v1.10.1 + ## v0.0.26 - Update @sensebox/node-sketch-templater to v1.8.3 diff --git a/packages/models/package.json b/packages/models/package.json index 6064b702..2dca9e24 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -1,12 +1,12 @@ { "name": "@sensebox/opensensemap-api-models", "description": "openSenseMap data models and database connection", - "version": "0.0.26", + "version": "0.0.27", "main": "index.js", "license": "MIT", "dependencies": { "@sensebox/osem-protos": "^1.1.0", - "@sensebox/sketch-templater": "^1.9.0", + "@sensebox/sketch-templater": "^1.10.1", "bcrypt": "^5.0.0", "bunyan": "^1.8.14", "config": "^3.3.3", diff --git a/yarn.lock b/yarn.lock index 455302ce..c19c3f74 100644 --- a/yarn.lock +++ b/yarn.lock @@ -58,10 +58,10 @@ resolved "https://registry.yarnpkg.com/@sensebox/osem-protos/-/osem-protos-1.1.0.tgz#a7de8bc6be867953f1309181a012063c23299e79" integrity sha512-H+nUVcWlT0dvIqfJnYHuX9JBcCkP1ZKGE5YTRNWPbAEdZ11h+srpQsmeI58wK5hJcdukaZAjc4Dy96IeGM77aA== -"@sensebox/sketch-templater@^1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@sensebox/sketch-templater/-/sketch-templater-1.9.0.tgz#ef7d3222242dffc1e060f7ea843a6c2a1a090662" - integrity sha512-wciob8MREljN16Th4VgPOQRUFeOT2rh3uXjdYk++Xs2ir3psGZ/iY9ft1mMW3RaTbSPNz1vICtJNgCelxHxodA== +"@sensebox/sketch-templater@^1.10.1": + version "1.10.1" + resolved "https://registry.yarnpkg.com/@sensebox/sketch-templater/-/sketch-templater-1.10.1.tgz#d59ea6fb1709893ae5c56ea77f72e3060e8cdecf" + integrity sha512-Ke9IukEAehXMx7NMc6Wwzozlha/w+mbJeq48UUMXrCuyd/QXh+M8wuCyMGFianZA05Z051/MU+Vnv7aaGg+B5w== dependencies: config "^1.29.2" dedent "^0.7.0" From ca60ca4acd6988c6e8c33faea10f416dadf94ddf Mon Sep 17 00:00:00 2001 From: Gerald Pape Date: Wed, 20 Jan 2021 14:53:40 +0100 Subject: [PATCH 108/337] Add display_enabled param to docs (#415) Co-authored-by: Felix Erdmann --- .../api/lib/controllers/boxesController.js | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/packages/api/lib/controllers/boxesController.js b/packages/api/lib/controllers/boxesController.js index 17b2529f..37e331ea 100644 --- a/packages/api/lib/controllers/boxesController.js +++ b/packages/api/lib/controllers/boxesController.js @@ -409,15 +409,16 @@ const postNewBox = async function postNewBox (req, res, next) { * @api {get} /boxes/:senseBoxId/script Download the Arduino script for your senseBox * @apiName getSketch * @apiGroup Boxes - * @apiParam {String="Serial1","Serial2"} serialPort the serial port the SDS011 sensor is connected to - * @apiParam {String="A","B","C"} soilDigitalPort the digital port the SMT50 sensor is connected to - * @apiParam {String="A","B","C"} soundMeterPort the digital port the soundlevelmeter sensor is connected to - * @apiParam {String="A","B","C"} windSpeedPort the digital port the windspeed sensor is connected to - * @apiParam {String} ssid the ssid of your wifi network - * @apiParam {String} password the password of your wifi network - * @apiParam {String} devEUI the devEUI of TTN device - * @apiParam {String} appEUI the appEUI of TTN application - * @apiParam {String} appKey the appKey of TTN application + * @apiParam {String="Serial1","Serial2"} [serialPort] the serial port the SDS011 sensor is connected to + * @apiParam {String="A","B","C"} [soilDigitalPort] the digital port the SMT50 sensor is connected to + * @apiParam {String="A","B","C"} [soundMeterPort] the digital port the soundlevelmeter sensor is connected to + * @apiParam {String="A","B","C"} [windSpeedPort] the digital port the windspeed sensor is connected to + * @apiParam {String} [ssid] the ssid of your wifi network + * @apiParam {String} [password] the password of your wifi network + * @apiParam {String} [devEUI] the devEUI of TTN device + * @apiParam {String} [appEUI] the appEUI of TTN application + * @apiParam {String} [appKey] the appKey of TTN application + * @apiParam {Boolean="true","false"} [display_enabled] include code for an attached oled display * @apiUse JWTokenAuth * @apiUse BoxIdParam */ From 414c3cd2161febeeadee863c892a92945e8f5aca Mon Sep 17 00:00:00 2001 From: Felix Erdmann Date: Thu, 28 Jan 2021 12:01:07 +0100 Subject: [PATCH 109/337] Power UART in setup (#419) * bump node-sketch-templater * v0.0.28 * bump api models --- packages/api/package.json | 2 +- packages/models/CHANGELOG.md | 3 +++ packages/models/package.json | 4 ++-- yarn.lock | 8 ++++---- 4 files changed, 10 insertions(+), 7 deletions(-) diff --git a/packages/api/package.json b/packages/api/package.json index 5d0bce6f..5e78df4c 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -10,7 +10,7 @@ "Norwin Roosen" ], "dependencies": { - "@sensebox/opensensemap-api-models": "^0.0.27", + "@sensebox/opensensemap-api-models": "^0.0.28", "@turf/area": "^6.0.1", "@turf/bbox": "^6.0.1", "@turf/centroid": "^6.0.2", diff --git a/packages/models/CHANGELOG.md b/packages/models/CHANGELOG.md index 3408278e..67328430 100644 --- a/packages/models/CHANGELOG.md +++ b/packages/models/CHANGELOG.md @@ -2,6 +2,9 @@ ## Unreleased +## v0.0.28 +- Update @sensebox/node-sketch-templater to v1.10.2 + ## v0.0.27 - Update @sensebox/node-sketch-templater to v1.10.1 diff --git a/packages/models/package.json b/packages/models/package.json index 2dca9e24..9758d49c 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -1,12 +1,12 @@ { "name": "@sensebox/opensensemap-api-models", "description": "openSenseMap data models and database connection", - "version": "0.0.27", + "version": "0.0.28", "main": "index.js", "license": "MIT", "dependencies": { "@sensebox/osem-protos": "^1.1.0", - "@sensebox/sketch-templater": "^1.10.1", + "@sensebox/sketch-templater": "^1.10.2", "bcrypt": "^5.0.0", "bunyan": "^1.8.14", "config": "^3.3.3", diff --git a/yarn.lock b/yarn.lock index c19c3f74..1d5c893d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -58,10 +58,10 @@ resolved "https://registry.yarnpkg.com/@sensebox/osem-protos/-/osem-protos-1.1.0.tgz#a7de8bc6be867953f1309181a012063c23299e79" integrity sha512-H+nUVcWlT0dvIqfJnYHuX9JBcCkP1ZKGE5YTRNWPbAEdZ11h+srpQsmeI58wK5hJcdukaZAjc4Dy96IeGM77aA== -"@sensebox/sketch-templater@^1.10.1": - version "1.10.1" - resolved "https://registry.yarnpkg.com/@sensebox/sketch-templater/-/sketch-templater-1.10.1.tgz#d59ea6fb1709893ae5c56ea77f72e3060e8cdecf" - integrity sha512-Ke9IukEAehXMx7NMc6Wwzozlha/w+mbJeq48UUMXrCuyd/QXh+M8wuCyMGFianZA05Z051/MU+Vnv7aaGg+B5w== +"@sensebox/sketch-templater@^1.10.2": + version "1.10.2" + resolved "https://registry.yarnpkg.com/@sensebox/sketch-templater/-/sketch-templater-1.10.2.tgz#f8bf443cbc264bbf3af8dd5c8e90b5071b688dab" + integrity sha512-uiaSROu9KAt/nPFX1vwb82peZVtr2n3rlNlSP8Hu74oTPurl6mkn4XQ7h+tPIQkpwi7y8tqGM0k7YjGBmsKL8w== dependencies: config "^1.29.2" dedent "^0.7.0" From f03bdd3853ea9611c52179d905ca8c629e7ce2c9 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 8 Feb 2021 08:59:49 +0100 Subject: [PATCH 110/337] Bump actions/cache from v2 to v2.1.4 (#424) Bumps [actions/cache](https://github.com/actions/cache) from v2 to v2.1.4. - [Release notes](https://github.com/actions/cache/releases) - [Commits](https://github.com/actions/cache/compare/v2...26968a09c0ea4f3e233fdddbafd1166051a095f6) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/test.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index 75364704..d45e7c10 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -26,7 +26,7 @@ jobs: echo "##[set-output name=dir;]$(yarn cache dir)" - name: Restore yarn cache - uses: actions/cache@v2 + uses: actions/cache@v2.1.4 id: yarn-cache with: path: ${{ steps.yarn-cache-dir-path.outputs.dir }} From 1b0700b7976070d896265d5f599e9a2a1c50648c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 8 Feb 2021 08:05:14 +0000 Subject: [PATCH 111/337] Bump chai from 4.2.0 to 4.3.0 (#423) Bumps [chai](https://github.com/chaijs/chai) from 4.2.0 to 4.3.0. - [Release notes](https://github.com/chaijs/chai/releases) - [Changelog](https://github.com/chaijs/chai/blob/master/History.md) - [Commits](https://github.com/chaijs/chai/compare/4.2.0...4.3.0) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 72b4fa31..fe19a662 100644 --- a/package.json +++ b/package.json @@ -18,7 +18,7 @@ "devDependencies": { "@sensebox/eslint-config-sensebox": "^1.1.0", "@turf/invariant": "^6.1.2", - "chai": "^4.1.2", + "chai": "^4.3.0", "chakram": "^1.5.0", "cheerio": "^1.0.0-rc.5", "csv-parse": "^4.14.2", diff --git a/yarn.lock b/yarn.lock index 1d5c893d..c11af417 100644 --- a/yarn.lock +++ b/yarn.lock @@ -626,10 +626,10 @@ chai@3.x.x: deep-eql "^0.1.3" type-detect "^1.0.0" -chai@^4.1.2: - version "4.2.0" - resolved "https://registry.yarnpkg.com/chai/-/chai-4.2.0.tgz#760aa72cf20e3795e84b12877ce0e83737aa29e5" - integrity sha512-XQU3bhBukrOsQCuwZndwGcCVQHyZi53fQ6Ys1Fym7E4olpIqqZZhhoFJoaKVvV17lWQoXYwgWN2nF5crA8J2jw== +chai@^4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/chai/-/chai-4.3.0.tgz#5523a5faf7f819c8a92480d70a8cccbadacfc25f" + integrity sha512-/BFd2J30EcOwmdOgXvVsmM48l0Br0nmZPlO0uOW4XKh6kpsUumRXBgPV+IlaqFaqr9cYbeoZAM1Npx0i4A+aiA== dependencies: assertion-error "^1.1.0" check-error "^1.0.2" From 9aad6bcb1d6657b2372d9d38813256fde37ccde6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 8 Feb 2021 08:43:34 +0000 Subject: [PATCH 112/337] Bump @turf/area from 6.0.1 to 6.3.0 (#425) Bumps [@turf/area](https://github.com/Turfjs/turf) from 6.0.1 to 6.3.0. - [Release notes](https://github.com/Turfjs/turf/releases) - [Changelog](https://github.com/Turfjs/turf/blob/master/CHANGELOG.md) - [Commits](https://github.com/Turfjs/turf/commits/v6.3.0) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape --- packages/api/package.json | 2 +- yarn.lock | 30 +++++++++++++++--------------- 2 files changed, 16 insertions(+), 16 deletions(-) diff --git a/packages/api/package.json b/packages/api/package.json index 5e78df4c..ebc65019 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -11,7 +11,7 @@ ], "dependencies": { "@sensebox/opensensemap-api-models": "^0.0.28", - "@turf/area": "^6.0.1", + "@turf/area": "^6.3.0", "@turf/bbox": "^6.0.1", "@turf/centroid": "^6.0.2", "@turf/distance": "^6.0.1", diff --git a/yarn.lock b/yarn.lock index c11af417..c4d77e13 100644 --- a/yarn.lock +++ b/yarn.lock @@ -78,13 +78,13 @@ dependencies: defer-to-connect "^2.0.0" -"@turf/area@^6.0.1": - version "6.0.1" - resolved "https://registry.yarnpkg.com/@turf/area/-/area-6.0.1.tgz#50ed63c70ef2bdb72952384f1594319d94f3b051" - integrity sha512-Zv+3N1ep9P5JvR0YOYagLANyapGWQBh8atdeR3bKpWcigVXFsEKNUw03U/5xnh+cKzm7yozHD6MFJkqQv55y0g== +"@turf/area@^6.3.0": + version "6.3.0" + resolved "https://registry.yarnpkg.com/@turf/area/-/area-6.3.0.tgz#cdd02f8ca51da2889dfc90a3c9e8fef5d1e04dca" + integrity sha512-Y1cYyAQ2fk94npdgOeMF4msc2uabHY1m7A7ntixf1I8rkyDd6/iHh1IMy1QsM+VZXAEwDwsXhu+ZFYd3Jkeg4A== dependencies: - "@turf/helpers" "6.x" - "@turf/meta" "6.x" + "@turf/helpers" "^6.3.0" + "@turf/meta" "^6.3.0" "@turf/bbox@*", "@turf/bbox@^6.0.1": version "6.0.1" @@ -138,10 +138,10 @@ "@turf/helpers" "6.x" "@turf/invariant" "6.x" -"@turf/helpers@6.x", "@turf/helpers@^6.1.4": - version "6.1.4" - resolved "https://registry.yarnpkg.com/@turf/helpers/-/helpers-6.1.4.tgz#d6fd7ebe6782dd9c87dca5559bda5c48ae4c3836" - integrity sha512-vJvrdOZy1ngC7r3MDA7zIGSoIgyrkWcGnNIEaqn/APmw+bVLF2gAW7HIsdTxd12s5wQMqEpqIQrmrbRRZ0xC7g== +"@turf/helpers@6.x", "@turf/helpers@^6.1.4", "@turf/helpers@^6.3.0": + version "6.3.0" + resolved "https://registry.yarnpkg.com/@turf/helpers/-/helpers-6.3.0.tgz#87f90f806c3f8ad6385ef8d2041d3662bf3c9fb1" + integrity sha512-kr6KuD4Z0GZ30tblTEvi90rvvVNlKieXuMC8CTzE/rVQb0/f/Cb29zCXxTD7giQTEQY/P2nRW23wEqqyNHulCg== "@turf/hex-grid@^6.0.2": version "6.0.2" @@ -189,12 +189,12 @@ "@turf/invariant" "6.x" "@turf/meta" "6.x" -"@turf/meta@6.x": - version "6.0.2" - resolved "https://registry.yarnpkg.com/@turf/meta/-/meta-6.0.2.tgz#eb92951126d24a613ac1b7b99d733fcc20fd30cf" - integrity sha512-VA7HJkx7qF1l3+GNGkDVn2oXy4+QoLP6LktXAaZKjuT1JI0YESat7quUkbCMy4zP9lAUuvS4YMslLyTtr919FA== +"@turf/meta@6.x", "@turf/meta@^6.3.0": + version "6.3.0" + resolved "https://registry.yarnpkg.com/@turf/meta/-/meta-6.3.0.tgz#f3e280ab29641f21e4f99310ce77f9c8394ae394" + integrity sha512-qBJjaAJS9H3ap0HlGXyF/Bzfl0qkA9suafX/jnDsZvWMfVLt+s+o6twKrXOGk5t7nnNON2NFRC8+czxpu104EQ== dependencies: - "@turf/helpers" "6.x" + "@turf/helpers" "^6.3.0" "@turf/polygon-to-line@6.x": version "6.0.3" From 785a069520d2de5c92599f931ac6d7508c557bd4 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 23 Feb 2021 09:08:43 +0100 Subject: [PATCH 113/337] Bump actions/setup-node from v2.1.4 to v2.1.5 (#428) Bumps [actions/setup-node](https://github.com/actions/setup-node) from v2.1.4 to v2.1.5. - [Release notes](https://github.com/actions/setup-node/releases) - [Commits](https://github.com/actions/setup-node/compare/v2.1.4...46071b5c7a2e0c34e49c3cb8a0e792e86e18d5ea) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/test.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index d45e7c10..8eebc3b7 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -16,7 +16,7 @@ jobs: - uses: actions/checkout@v2 - name: Install Node.js 12 - uses: actions/setup-node@v2.1.4 + uses: actions/setup-node@v2.1.5 with: node-version: 12 From f39a4e53026f47f6ade870aab0c6bf22fa8487a4 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 23 Feb 2021 08:11:05 +0000 Subject: [PATCH 114/337] Bump @turf/bbox from 6.0.1 to 6.3.0 (#417) Bumps [@turf/bbox](https://github.com/Turfjs/turf) from 6.0.1 to 6.3.0. - [Release notes](https://github.com/Turfjs/turf/releases) - [Changelog](https://github.com/Turfjs/turf/blob/master/CHANGELOG.md) - [Commits](https://github.com/Turfjs/turf/commits/v6.3.0) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- packages/api/package.json | 2 +- yarn.lock | 12 ++++++------ 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/packages/api/package.json b/packages/api/package.json index ebc65019..d35e69b4 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -12,7 +12,7 @@ "dependencies": { "@sensebox/opensensemap-api-models": "^0.0.28", "@turf/area": "^6.3.0", - "@turf/bbox": "^6.0.1", + "@turf/bbox": "^6.3.0", "@turf/centroid": "^6.0.2", "@turf/distance": "^6.0.1", "@turf/helpers": "^6.1.4", diff --git a/yarn.lock b/yarn.lock index c4d77e13..b120d625 100644 --- a/yarn.lock +++ b/yarn.lock @@ -86,13 +86,13 @@ "@turf/helpers" "^6.3.0" "@turf/meta" "^6.3.0" -"@turf/bbox@*", "@turf/bbox@^6.0.1": - version "6.0.1" - resolved "https://registry.yarnpkg.com/@turf/bbox/-/bbox-6.0.1.tgz#b966075771475940ee1c16be2a12cf389e6e923a" - integrity sha512-EGgaRLettBG25Iyx7VyUINsPpVj1x3nFQFiGS3ER8KCI1MximzNLsam3eXRabqQDjyAKyAE1bJ4EZEpGvspQxw== +"@turf/bbox@*", "@turf/bbox@^6.3.0": + version "6.3.0" + resolved "https://registry.yarnpkg.com/@turf/bbox/-/bbox-6.3.0.tgz#0e1a9b59f32d6a2a40c806f54cbaa73575bead25" + integrity sha512-N4ue5Xopu1qieSHP2MA/CJGWHPKaTrVXQJjzHRNcY1vtsO126xbSaJhWUrFc5x5vVkXp0dcucGryO0r5m4o/KA== dependencies: - "@turf/helpers" "6.x" - "@turf/meta" "6.x" + "@turf/helpers" "^6.3.0" + "@turf/meta" "^6.3.0" "@turf/boolean-disjoint@6.x": version "6.0.2" From c1a2f6efc0bd15214b6a47e137533d603a3cb012 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 23 Feb 2021 08:13:54 +0000 Subject: [PATCH 115/337] Bump @turf/square-grid from 6.0.2 to 6.3.0 (#426) Bumps [@turf/square-grid](https://github.com/Turfjs/turf) from 6.0.2 to 6.3.0. - [Release notes](https://github.com/Turfjs/turf/releases) - [Changelog](https://github.com/Turfjs/turf/blob/master/CHANGELOG.md) - [Commits](https://github.com/Turfjs/turf/commits/v6.3.0) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- packages/api/package.json | 2 +- yarn.lock | 124 ++++++++++++++++++++++---------------- 2 files changed, 74 insertions(+), 52 deletions(-) diff --git a/packages/api/package.json b/packages/api/package.json index d35e69b4..3147bc3a 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -17,7 +17,7 @@ "@turf/distance": "^6.0.1", "@turf/helpers": "^6.1.4", "@turf/hex-grid": "^6.0.2", - "@turf/square-grid": "^6.0.2", + "@turf/square-grid": "^6.3.0", "@turf/triangle-grid": "^6.0.1", "apicache": "1.5.2", "bunyan": "^1.8.14", diff --git a/yarn.lock b/yarn.lock index b120d625..af50b87a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -94,33 +94,33 @@ "@turf/helpers" "^6.3.0" "@turf/meta" "^6.3.0" -"@turf/boolean-disjoint@6.x": - version "6.0.2" - resolved "https://registry.yarnpkg.com/@turf/boolean-disjoint/-/boolean-disjoint-6.0.2.tgz#5d6d0f4b4b8d5fe03004d74d978044c7529b294f" - integrity sha512-xgdqPOXhvCwetoybkYZwBLKro1XxqZgS+xk6Ygb2Jt6btR5P/t0lJ5n85fN0YQuJlR8hEVvCGTYZ0IRTyIEvsQ== +"@turf/boolean-disjoint@^6.3.0": + version "6.3.0" + resolved "https://registry.yarnpkg.com/@turf/boolean-disjoint/-/boolean-disjoint-6.3.0.tgz#4b27fb3c3c9ff23f69fbcc8d2d03665e9f52c20e" + integrity sha512-bVAwAJF05QPH0tf+qjR3kUcCyqTgYcCbXSMgXl6LQF6mSGuOutzNq1gCyRLCOdOcZtw4Oh4dqeP3ykwv8kDibw== dependencies: - "@turf/boolean-point-in-polygon" "6.x" - "@turf/helpers" "6.x" - "@turf/line-intersect" "6.x" - "@turf/meta" "6.x" - "@turf/polygon-to-line" "6.x" + "@turf/boolean-point-in-polygon" "^6.3.0" + "@turf/helpers" "^6.3.0" + "@turf/line-intersect" "^6.3.0" + "@turf/meta" "^6.3.0" + "@turf/polygon-to-line" "^6.3.0" -"@turf/boolean-intersects@6.x": - version "6.0.2" - resolved "https://registry.yarnpkg.com/@turf/boolean-intersects/-/boolean-intersects-6.0.2.tgz#101afd5b00255c15b0e835e1b9a90fc91466887e" - integrity sha512-GRC+N2QOP533MnMmauVDj+JNyZG3XwAdY1jtZuY3icxvJ8/47ZWb013Q90heoyGxV92kV5SW0baOooPzSpvT1g== +"@turf/boolean-intersects@^6.3.0": + version "6.3.0" + resolved "https://registry.yarnpkg.com/@turf/boolean-intersects/-/boolean-intersects-6.3.0.tgz#aaa096e6e346e6da673984ad397d4a96cb97cb89" + integrity sha512-2pHOYqHSKDo0rzHTiqwdAaxa+tHLwr4NaTAjOpuN2hipv9bErzGtv3e5IYceJBnT0u4akK17NTn6qAr7/7g2aQ== dependencies: - "@turf/boolean-disjoint" "6.x" - "@turf/helpers" "6.x" - "@turf/meta" "6.x" + "@turf/boolean-disjoint" "^6.3.0" + "@turf/helpers" "^6.3.0" + "@turf/meta" "^6.3.0" -"@turf/boolean-point-in-polygon@6.x": - version "6.0.1" - resolved "https://registry.yarnpkg.com/@turf/boolean-point-in-polygon/-/boolean-point-in-polygon-6.0.1.tgz#5836677afd77d2ee391af0056a0c29b660edfa32" - integrity sha512-FKLOZ124vkJhjzNSDcqpwp2NvfnsbYoUOt5iAE7uskt4svix5hcjIEgX9sELFTJpbLGsD1mUbKdfns8tZxcMNg== +"@turf/boolean-point-in-polygon@^6.3.0": + version "6.3.0" + resolved "https://registry.yarnpkg.com/@turf/boolean-point-in-polygon/-/boolean-point-in-polygon-6.3.0.tgz#784952a36c64119e90fbe94650245da62ecd8fc2" + integrity sha512-NqFSsoE6OwhDK19IllDQRhEQEkF7UVEOlqH9vgS1fGg4T6NcyKvACJs05c9457tL7QSbV9ZS53f2qiLneFL+qg== dependencies: - "@turf/helpers" "6.x" - "@turf/invariant" "6.x" + "@turf/helpers" "^6.3.0" + "@turf/invariant" "^6.3.0" "@turf/centroid@^6.0.2": version "6.0.2" @@ -138,6 +138,14 @@ "@turf/helpers" "6.x" "@turf/invariant" "6.x" +"@turf/distance@^6.3.0": + version "6.3.0" + resolved "https://registry.yarnpkg.com/@turf/distance/-/distance-6.3.0.tgz#4bd084af7fe369e921476e52b597a638dae4ed95" + integrity sha512-basi24ssNFnH3iXPFjp/aNUrukjObiFWoIyDRqKyBJxVwVOwAWvfk4d38QQyBj5nDo5IahYRq/Q+T47/5hSs9w== + dependencies: + "@turf/helpers" "^6.3.0" + "@turf/invariant" "^6.3.0" + "@turf/helpers@6.x", "@turf/helpers@^6.1.4", "@turf/helpers@^6.3.0": version "6.3.0" resolved "https://registry.yarnpkg.com/@turf/helpers/-/helpers-6.3.0.tgz#87f90f806c3f8ad6385ef8d2041d3662bf3c9fb1" @@ -169,25 +177,32 @@ dependencies: "@turf/helpers" "6.x" -"@turf/line-intersect@6.x": - version "6.0.2" - resolved "https://registry.yarnpkg.com/@turf/line-intersect/-/line-intersect-6.0.2.tgz#b45b7a4e7e08c39a0e4e91099580ed377ef7335f" - integrity sha512-pfL/lBu7ukBPdTjvSCmcNUzZ83V4R95htwqs5NqU8zeS4R+5KTwacbrOYKztjpmHBwUmPEIIpSbqkUoD0Fp7kg== +"@turf/invariant@^6.3.0": + version "6.3.0" + resolved "https://registry.yarnpkg.com/@turf/invariant/-/invariant-6.3.0.tgz#04a22b26c5503146c03fa6198176b72bd591eadf" + integrity sha512-2OFOi9p+QOrcIMySEnr+WlOiKaFZ1bY56jA98YyECewJHfhPFWUBZEhc4nWGRT0ahK08Vus9+gcuBX8QIpCIIw== dependencies: - "@turf/helpers" "6.x" - "@turf/invariant" "6.x" - "@turf/line-segment" "6.x" - "@turf/meta" "6.x" + "@turf/helpers" "^6.3.0" + +"@turf/line-intersect@^6.3.0": + version "6.3.0" + resolved "https://registry.yarnpkg.com/@turf/line-intersect/-/line-intersect-6.3.0.tgz#726a50edc66bb7b5e798b052b103fb0da4d1c4f4" + integrity sha512-3naxR7XpkPd2vst3Mw6DFry4C9m3o0/f2n/xu5UAyxb88Ie4m2k+1eqkhzMMx/0L+E6iThWpLx7DASM6q6o9ow== + dependencies: + "@turf/helpers" "^6.3.0" + "@turf/invariant" "^6.3.0" + "@turf/line-segment" "^6.3.0" + "@turf/meta" "^6.3.0" geojson-rbush "3.x" -"@turf/line-segment@6.x": - version "6.0.2" - resolved "https://registry.yarnpkg.com/@turf/line-segment/-/line-segment-6.0.2.tgz#e280bcde70d28b694028ec1623dc406c928e59b6" - integrity sha512-8AkzDHoNw3X68y115josal+lvdAi4b2P1K0YNTKGyLRBaUhPXVSuMBpMd53FRF1hYEb9UJgMbugF9ZE7m5L6zg== +"@turf/line-segment@^6.3.0": + version "6.3.0" + resolved "https://registry.yarnpkg.com/@turf/line-segment/-/line-segment-6.3.0.tgz#b37d6877ee4425ebc12698860e7d355d1bf2ba9b" + integrity sha512-M+aDy83V+E7jYWNaf+b+A88yhnMrJhyg/lhAj6mU6UeB2PbruXB2qgSmmVDSE2dIknOvZZuIWNzEzUI07RO2kw== dependencies: - "@turf/helpers" "6.x" - "@turf/invariant" "6.x" - "@turf/meta" "6.x" + "@turf/helpers" "^6.3.0" + "@turf/invariant" "^6.3.0" + "@turf/meta" "^6.3.0" "@turf/meta@6.x", "@turf/meta@^6.3.0": version "6.3.0" @@ -196,23 +211,30 @@ dependencies: "@turf/helpers" "^6.3.0" -"@turf/polygon-to-line@6.x": - version "6.0.3" - resolved "https://registry.yarnpkg.com/@turf/polygon-to-line/-/polygon-to-line-6.0.3.tgz#a7c5416f61651d5d25ff51ee006522725cb1adf1" - integrity sha512-cJUy7VYLAhgnTBOtYFjNzh5bSlAS/qM8gUHXRGrIxI22RUJk4FXs/X2MEJ4Ki2flCiSeOjRIUEawEslNe7w7RA== +"@turf/polygon-to-line@^6.3.0": + version "6.3.0" + resolved "https://registry.yarnpkg.com/@turf/polygon-to-line/-/polygon-to-line-6.3.0.tgz#aa3e1a0ea074479e5cb6c5c111a924bb80ec553e" + integrity sha512-KFGlQlGOBayBvELz+tip1zCa3eB8xyZePZUZ3I3OnU7mk0FFzJzvLTmPUc7MupgqORT4LkNGmyKSVWaz38NTig== + dependencies: + "@turf/helpers" "^6.3.0" + "@turf/invariant" "^6.3.0" + +"@turf/rectangle-grid@^6.3.0": + version "6.3.0" + resolved "https://registry.yarnpkg.com/@turf/rectangle-grid/-/rectangle-grid-6.3.0.tgz#d2ddae6b73ca97b30f9f59904227689d66427fa4" + integrity sha512-XQAjpprUhGA9aoVH8H6lqZb0Dk8SZ2djKAPD6dDplFgrufdmP1Fe1BfbsdBgjyfPrdR7hSffLyEAwC3bhfJo2w== dependencies: - "@turf/helpers" "6.x" - "@turf/invariant" "6.x" + "@turf/boolean-intersects" "^6.3.0" + "@turf/distance" "^6.3.0" + "@turf/helpers" "^6.3.0" -"@turf/square-grid@^6.0.2": - version "6.0.2" - resolved "https://registry.yarnpkg.com/@turf/square-grid/-/square-grid-6.0.2.tgz#c1445d59a5fb3b2e091e9a7fa3a0b01e2a727342" - integrity sha512-ju0bHbUC6MQcjap28S+3YLF1gQARakQVoOjYG/Qmvxf2T8K1a5ZKv387iTztT7zeoh5//JvWy8VbFoT3OZuubQ== +"@turf/square-grid@^6.3.0": + version "6.3.0" + resolved "https://registry.yarnpkg.com/@turf/square-grid/-/square-grid-6.3.0.tgz#db25e033a1ea3e833bdb09129abd689d0b19d87f" + integrity sha512-ZCgThI5hPLJNVErCB9zkJ3w3OpW6BbrOqyrxFbwlYGZrZ6uj52/j8PWQtwnmiqdv0k8+Cbxrap7E6//Oks4jIw== dependencies: - "@turf/boolean-intersects" "6.x" - "@turf/distance" "6.x" - "@turf/helpers" "6.x" - "@turf/invariant" "6.x" + "@turf/helpers" "^6.3.0" + "@turf/rectangle-grid" "^6.3.0" "@turf/triangle-grid@^6.0.1": version "6.0.1" From a63566faf6bf51f0783378e5bb45ae3d195531b3 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 23 Feb 2021 08:17:53 +0000 Subject: [PATCH 116/337] Bump uuid from 7.0.3 to 8.3.2 (#403) Bumps [uuid](https://github.com/uuidjs/uuid) from 7.0.3 to 8.3.2. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v7.0.3...v8.3.2) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- packages/api/package.json | 2 +- packages/models/package.json | 2 +- yarn.lock | 8 ++++---- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/api/package.json b/packages/api/package.json index 3147bc3a..24bacbc8 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -35,7 +35,7 @@ "restify-errors": "^8.0.2", "simple-statistics": "^7.4.0", "stringify-stream": "^1.0.5", - "uuid": "^7.0.3" + "uuid": "^8.3.2" }, "private": true } diff --git a/packages/models/package.json b/packages/models/package.json index 9758d49c..0747b05f 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -18,7 +18,7 @@ "moment": "^2.29.1", "mongoose": "^4.13.6", "mongoose-timestamp": "^0.6", - "uuid": "^7.0.3" + "uuid": "^8.3.2" }, "scripts": { "version": "node .scripts/npm_version-update_changelog.js && git add CHANGELOG.md", diff --git a/yarn.lock b/yarn.lock index af50b87a..453c3d11 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3644,10 +3644,10 @@ uuid@^3.0.0, uuid@^3.3.2: resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee" integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A== -uuid@^7.0.3: - version "7.0.3" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-7.0.3.tgz#c5c9f2c8cf25dc0a372c4df1441c41f5bd0c680b" - integrity sha512-DPSke0pXhTZgoF/d+WSt2QaKMCFSfx7QegxEWT+JOuHF5aWrKEn0G+ztjuJg/gG8/ItK+rbPCD/yNv8yyih6Cg== +uuid@^8.3.2: + version "8.3.2" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" + integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg== v8-compile-cache@^2.0.3: version "2.1.0" From 9eb8ca3889395bdb464e0a1f28f215250197100c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 23 Feb 2021 08:53:28 +0000 Subject: [PATCH 117/337] Bump @turf/hex-grid from 6.0.2 to 6.3.0 (#429) Bumps [@turf/hex-grid](https://github.com/Turfjs/turf) from 6.0.2 to 6.3.0. - [Release notes](https://github.com/Turfjs/turf/releases) - [Changelog](https://github.com/Turfjs/turf/blob/master/CHANGELOG.md) - [Commits](https://github.com/Turfjs/turf/commits/v6.3.0) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- packages/api/package.json | 2 +- yarn.lock | 77 ++++++++++++++------------------------- 2 files changed, 29 insertions(+), 50 deletions(-) diff --git a/packages/api/package.json b/packages/api/package.json index 24bacbc8..fb421dc8 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -16,7 +16,7 @@ "@turf/centroid": "^6.0.2", "@turf/distance": "^6.0.1", "@turf/helpers": "^6.1.4", - "@turf/hex-grid": "^6.0.2", + "@turf/hex-grid": "^6.3.0", "@turf/square-grid": "^6.3.0", "@turf/triangle-grid": "^6.0.1", "apicache": "1.5.2", diff --git a/yarn.lock b/yarn.lock index 453c3d11..c9fea0ae 100644 --- a/yarn.lock +++ b/yarn.lock @@ -130,15 +130,7 @@ "@turf/helpers" "6.x" "@turf/meta" "6.x" -"@turf/distance@6.x", "@turf/distance@^6.0.1": - version "6.0.1" - resolved "https://registry.yarnpkg.com/@turf/distance/-/distance-6.0.1.tgz#0761f28784286e7865a427c4e7e3593569c2dea8" - integrity sha512-q7t7rWIWfkg7MP1Vt4uLjSEhe5rPfCO2JjpKmk7JC+QZKEQkuvHEqy3ejW1iC7Kw5ZcZNR3qdMGGz+6HnVwqvg== - dependencies: - "@turf/helpers" "6.x" - "@turf/invariant" "6.x" - -"@turf/distance@^6.3.0": +"@turf/distance@6.x", "@turf/distance@^6.0.1", "@turf/distance@^6.3.0": version "6.3.0" resolved "https://registry.yarnpkg.com/@turf/distance/-/distance-6.3.0.tgz#4bd084af7fe369e921476e52b597a638dae4ed95" integrity sha512-basi24ssNFnH3iXPFjp/aNUrukjObiFWoIyDRqKyBJxVwVOwAWvfk4d38QQyBj5nDo5IahYRq/Q+T47/5hSs9w== @@ -151,33 +143,26 @@ resolved "https://registry.yarnpkg.com/@turf/helpers/-/helpers-6.3.0.tgz#87f90f806c3f8ad6385ef8d2041d3662bf3c9fb1" integrity sha512-kr6KuD4Z0GZ30tblTEvi90rvvVNlKieXuMC8CTzE/rVQb0/f/Cb29zCXxTD7giQTEQY/P2nRW23wEqqyNHulCg== -"@turf/hex-grid@^6.0.2": - version "6.0.2" - resolved "https://registry.yarnpkg.com/@turf/hex-grid/-/hex-grid-6.0.2.tgz#d08ffcfe7aeb5fc48974f650075bab726121a268" - integrity sha512-kG09up73sGziBu4hU/0nhGRdN3Rue8k+aa9UwBfBXTbbgndEhEPpJJ1cdShLhexzrLUFu3Ee0JiXjYmlO0q7LA== - dependencies: - "@turf/distance" "6.x" - "@turf/helpers" "6.x" - "@turf/intersect" "6.x" - "@turf/invariant" "6.x" - -"@turf/intersect@6.x": - version "6.1.3" - resolved "https://registry.yarnpkg.com/@turf/intersect/-/intersect-6.1.3.tgz#c6574a2f00a38df6f81fc08d8103ad5295b7b6bc" - integrity sha512-SeAJG/zPRRTeyK2OifkPoyLq60q8tv8prpPIH3R8ZhyF4MdLOnMv5MURaQ6kQd+3UTDrL+pYm6rqbPvln1zqIw== +"@turf/hex-grid@^6.3.0": + version "6.3.0" + resolved "https://registry.yarnpkg.com/@turf/hex-grid/-/hex-grid-6.3.0.tgz#61e51a37db04239aac78410c61f441b79dab7fa1" + integrity sha512-adqOgpBJB+87bjnm5EKVklDuWsYtCrETlLrXpOw4CVyaqYEE2/Mvid25se/0TeGDfvIcnvIQvrApYL5O/sDaMw== dependencies: - "@turf/helpers" "6.x" - "@turf/invariant" "6.x" - martinez-polygon-clipping "^0.4.3" + "@turf/distance" "^6.3.0" + "@turf/helpers" "^6.3.0" + "@turf/intersect" "^6.3.0" + "@turf/invariant" "^6.3.0" -"@turf/invariant@6.x", "@turf/invariant@^6.1.2": - version "6.1.2" - resolved "https://registry.yarnpkg.com/@turf/invariant/-/invariant-6.1.2.tgz#6013ed6219f9ac2edada9b31e1dfa5918eb0a2f7" - integrity sha512-WU08Ph8j0J2jVGlQCKChXoCtI50BB3yEH21V++V0T4cR1T27HKCxkehV2sYMwTierfMBgjwSwDIsxnR4/2mWXg== +"@turf/intersect@6.x", "@turf/intersect@^6.3.0": + version "6.3.0" + resolved "https://registry.yarnpkg.com/@turf/intersect/-/intersect-6.3.0.tgz#b22b3e888e762ae4336e085eb6f21215d06652ea" + integrity sha512-1YCIkyKjuTlX7HaTjtyE7ZRxLCmcu0BYr6jqoVl7TjyF2NUiNpPm3m4X1ZrSF6MfjIt5NFSGYCdNMEPgREq19w== dependencies: - "@turf/helpers" "6.x" + "@turf/helpers" "^6.3.0" + "@turf/invariant" "^6.3.0" + polygon-clipping "^0.15.2" -"@turf/invariant@^6.3.0": +"@turf/invariant@6.x", "@turf/invariant@^6.1.2", "@turf/invariant@^6.3.0": version "6.3.0" resolved "https://registry.yarnpkg.com/@turf/invariant/-/invariant-6.3.0.tgz#04a22b26c5503146c03fa6198176b72bd591eadf" integrity sha512-2OFOi9p+QOrcIMySEnr+WlOiKaFZ1bY56jA98YyECewJHfhPFWUBZEhc4nWGRT0ahK08Vus9+gcuBX8QIpCIIw== @@ -2237,14 +2222,6 @@ lru-cache@^6.0.0: dependencies: yallist "^4.0.0" -martinez-polygon-clipping@^0.4.3: - version "0.4.3" - resolved "https://registry.yarnpkg.com/martinez-polygon-clipping/-/martinez-polygon-clipping-0.4.3.tgz#a3971ddf1da147104b5d0fbbf68f728bb62885c1" - integrity sha512-3ZNS0ksKhWTLsmCUkNf+/UimndZ5U2cVOS0I+IjiwF+M23E77TmeOZSmbRJbfCoQUog/vcQ42s3DXrhgOhgPqw== - dependencies: - splaytree "^0.1.4" - tinyqueue "^1.2.0" - millify@^3.5.0: version "3.5.0" resolved "https://registry.yarnpkg.com/millify/-/millify-3.5.0.tgz#8ac0e76983725c5ccf6b4bd822a53f5bc9f56b4b" @@ -2810,6 +2787,13 @@ picomatch@^2.0.4, picomatch@^2.2.1: resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.2.2.tgz#21f333e9b6b8eaff02468f5146ea406d345f4dad" integrity sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg== +polygon-clipping@^0.15.2: + version "0.15.2" + resolved "https://registry.yarnpkg.com/polygon-clipping/-/polygon-clipping-0.15.2.tgz#076199182bf23a4a6cf6c7003f3b81ecf30b2cb8" + integrity sha512-qsUFQSY4nA++1/b76dy0BJGwL0FZAk05Y4hZprctLIhAddE8KUUr3TxIF4sAxIQtjH9xvaBe3raaRQrcSI4wlA== + dependencies: + splaytree "^3.1.0" + prelude-ls@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" @@ -3287,10 +3271,10 @@ spdy@^3.3.3: select-hose "^2.0.0" spdy-transport "^2.0.18" -splaytree@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/splaytree/-/splaytree-0.1.4.tgz#fc35475248edcc29d4938c9b67e43c6b7e55a659" - integrity sha512-D50hKrjZgBzqD3FT2Ek53f2dcDLAQT8SSGrzj3vidNH5ISRgceeGVJ2dQIthKOuayqFXfFjXheHNo4bbt9LhRQ== +splaytree@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/splaytree/-/splaytree-3.1.0.tgz#17d4a0108a6da3627579690b7b847241e18ddec8" + integrity sha512-gvUGR7xnOy0fLKTCxDeUZYgU/I1Tdf8M/lM1Qrf8L2TIOR5ipZjGk02uYcdv0o2x7WjVRgpm3iS2clLyuVAt0Q== split2@^3.1.0: version "3.1.1" @@ -3510,11 +3494,6 @@ through2@^2.0.1, through2@~2.0.0: readable-stream "~2.3.6" xtend "~4.0.1" -tinyqueue@^1.2.0: - version "1.2.3" - resolved "https://registry.yarnpkg.com/tinyqueue/-/tinyqueue-1.2.3.tgz#b6a61de23060584da29f82362e45df1ec7353f3d" - integrity sha512-Qz9RgWuO9l8lT+Y9xvbzhPT2efIUIFd69N7eF7tJ9lnQl0iLj1M7peK7IoUGZL9DJHw9XftqLreccfxcQgYLxA== - to-absolute-glob@^2.0.0: version "2.0.2" resolved "https://registry.yarnpkg.com/to-absolute-glob/-/to-absolute-glob-2.0.2.tgz#1865f43d9e74b0822db9f145b78cff7d0f7c849b" From 893acd0cf1374dbc2397dedf1d6192589e1cbcb1 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 23 Feb 2021 08:56:50 +0000 Subject: [PATCH 118/337] Bump eslint from 7.18.0 to 7.20.0 (#430) Bumps [eslint](https://github.com/eslint/eslint) from 7.18.0 to 7.20.0. - [Release notes](https://github.com/eslint/eslint/releases) - [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md) - [Commits](https://github.com/eslint/eslint/compare/v7.18.0...v7.20.0) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape --- package.json | 2 +- yarn.lock | 48 ++++++++++++++++++++++++------------------------ 2 files changed, 25 insertions(+), 25 deletions(-) diff --git a/package.json b/package.json index fe19a662..7f5d6cf0 100644 --- a/package.json +++ b/package.json @@ -22,7 +22,7 @@ "chakram": "^1.5.0", "cheerio": "^1.0.0-rc.5", "csv-parse": "^4.14.2", - "eslint": "7.18.0", + "eslint": "7.20.0", "mimelib": "^0.3.1", "mocha": "^8.2.1", "mqtt": "^3.0.0", diff --git a/yarn.lock b/yarn.lock index c9fea0ae..02c81a6b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2,24 +2,24 @@ # yarn lockfile v1 -"@babel/code-frame@^7.0.0": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.8.3.tgz#33e25903d7481181534e12ec0a25f16b6fcf419e" - integrity sha512-a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g== +"@babel/code-frame@7.12.11": + version "7.12.11" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.12.11.tgz#f4ad435aa263db935b8f10f2c552d23fb716a63f" + integrity sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw== dependencies: - "@babel/highlight" "^7.8.3" + "@babel/highlight" "^7.10.4" -"@babel/helper-validator-identifier@^7.9.0": - version "7.9.5" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.9.5.tgz#90977a8e6fbf6b431a7dc31752eee233bf052d80" - integrity sha512-/8arLKUFq882w4tWGj9JYzRpAlZgiWUJ+dtteNTDqrRBz9Iguck9Rn3ykuBDoUwh2TO4tSAJlrxDUOXWklJe4g== +"@babel/helper-validator-identifier@^7.12.11": + version "7.12.11" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz#c9a1f021917dcb5ccf0d4e453e399022981fc9ed" + integrity sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw== -"@babel/highlight@^7.8.3": - version "7.9.0" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.9.0.tgz#4e9b45ccb82b79607271b2979ad82c7b68163079" - integrity sha512-lJZPilxX7Op3Nv/2cvFdnlepPXDxi29wxteT57Q965oc5R9v86ztx0jfxVrTcBk8C2kcPkkDa2Z4T3ZsPPVWsQ== +"@babel/highlight@^7.10.4": + version "7.12.13" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.12.13.tgz#8ab538393e00370b26271b01fa08f7f27f2e795c" + integrity sha512-kocDQvIbgMKlWxXe9fof3TQ+gkIPOUSEYhJjqUjvKMez3krV7vbzYCDq39Oj11UAVK7JqPVGQPlgE85dPNlQww== dependencies: - "@babel/helper-validator-identifier" "^7.9.0" + "@babel/helper-validator-identifier" "^7.12.11" chalk "^2.0.0" js-tokens "^4.0.0" @@ -1270,12 +1270,12 @@ eslint-visitor-keys@^2.0.0: resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.0.0.tgz#21fdc8fbcd9c795cc0321f0563702095751511a8" integrity sha512-QudtT6av5WXels9WjIM7qz1XD1cWGvX4gGXvp/zBn9nXG02D0utdU3Em2m/QjTnrsk6bBjmCygl3rmj118msQQ== -eslint@7.18.0: - version "7.18.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.18.0.tgz#7fdcd2f3715a41fe6295a16234bd69aed2c75e67" - integrity sha512-fbgTiE8BfUJZuBeq2Yi7J3RB3WGUQ9PNuNbmgi6jt9Iv8qrkxfy19Ds3OpL1Pm7zg3BtTVhvcUZbIRQ0wmSjAQ== +eslint@7.20.0: + version "7.20.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.20.0.tgz#db07c4ca4eda2e2316e7aa57ac7fc91ec550bdc7" + integrity sha512-qGi0CTcOGP2OtCQBgWZlQjcTuP0XkIpYFj25XtRTQSHC+umNnp7UMshr2G8SLsRFYDdAPFeHOsiteadmMH02Yw== dependencies: - "@babel/code-frame" "^7.0.0" + "@babel/code-frame" "7.12.11" "@eslint/eslintrc" "^0.3.0" ajv "^6.10.0" chalk "^4.0.0" @@ -1287,7 +1287,7 @@ eslint@7.18.0: eslint-utils "^2.1.0" eslint-visitor-keys "^2.0.0" espree "^7.3.1" - esquery "^1.2.0" + esquery "^1.4.0" esutils "^2.0.2" file-entry-cache "^6.0.0" functional-red-black-tree "^1.0.1" @@ -1332,10 +1332,10 @@ esprima@^4.0.0, esprima@^4.0.1: resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== -esquery@^1.2.0: - version "1.3.1" - resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.3.1.tgz#b78b5828aa8e214e29fb74c4d5b752e1c033da57" - integrity sha512-olpvt9QG0vniUBZspVRN6lwB7hOZoTRtT+jzR+tS4ffYx2mzbw+z0XCOk44aaLYKApNX5nMm+E+P6o25ip/DHQ== +esquery@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.4.0.tgz#2148ffc38b82e8c7057dfed48425b3e61f0f24a5" + integrity sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w== dependencies: estraverse "^5.1.0" From c2b6da7f30a9470d418829afb38f08088493220b Mon Sep 17 00:00:00 2001 From: Gerald Pape Date: Tue, 23 Feb 2021 14:27:11 +0100 Subject: [PATCH 119/337] Unpin apicache package (#432) --- packages/api/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/api/package.json b/packages/api/package.json index fb421dc8..725c1891 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -19,7 +19,7 @@ "@turf/hex-grid": "^6.3.0", "@turf/square-grid": "^6.3.0", "@turf/triangle-grid": "^6.0.1", - "apicache": "1.5.2", + "apicache": "^1.6.2", "bunyan": "^1.8.14", "config": "^3.3.3", "csv-stringify": "^5.6.0", From 0a0fff44978090fdbca5453c6fb48d8478503689 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 24 Feb 2021 09:42:53 +0100 Subject: [PATCH 120/337] Bump apicache from 1.5.2 to 1.6.2 (#435) Bumps [apicache](https://github.com/kwhitley/apicache) from 1.5.2 to 1.6.2. - [Release notes](https://github.com/kwhitley/apicache/releases) - [Commits](https://github.com/kwhitley/apicache/commits) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- yarn.lock | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/yarn.lock b/yarn.lock index 02c81a6b..b2de300b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -376,10 +376,10 @@ anymatch@~3.1.1: normalize-path "^3.0.0" picomatch "^2.0.4" -apicache@1.5.2: - version "1.5.2" - resolved "https://registry.yarnpkg.com/apicache/-/apicache-1.5.2.tgz#2cb0697d9b1b612b505b1a44face66d48b1d1404" - integrity sha512-jO8ie/Zqmr3MxLQSVNsHiQo5R1tbbP1TnpI6xOnRJv9wUOSP+YnZkULWmdo3fE7PHBSxIQzgIsEHGa6H5hKH9Q== +apicache@^1.6.2: + version "1.6.2" + resolved "https://registry.yarnpkg.com/apicache/-/apicache-1.6.2.tgz#a0a3d51024fa2814c4ace7e9e7053ebcb0920ee6" + integrity sha512-3z5e+1E2qwZoqzFVgdx5l9nGhSG0kHv3v2G170vnJSz5uj4mCLVZfRw0o37aWwV8pTPXSkB8OBZz3TIur4H26g== aproba@^1.0.3: version "1.2.0" From 8439c8c842ea53ae9f33726bc38b90e1c547913a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 24 Feb 2021 09:44:07 +0100 Subject: [PATCH 121/337] Bump @turf/triangle-grid from 6.0.1 to 6.3.0 (#436) Bumps [@turf/triangle-grid](https://github.com/Turfjs/turf) from 6.0.1 to 6.3.0. - [Release notes](https://github.com/Turfjs/turf/releases) - [Changelog](https://github.com/Turfjs/turf/blob/master/CHANGELOG.md) - [Commits](https://github.com/Turfjs/turf/commits/v6.3.0) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- packages/api/package.json | 2 +- yarn.lock | 21 ++++++++++----------- 2 files changed, 11 insertions(+), 12 deletions(-) diff --git a/packages/api/package.json b/packages/api/package.json index 725c1891..a6a60a9d 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -18,7 +18,7 @@ "@turf/helpers": "^6.1.4", "@turf/hex-grid": "^6.3.0", "@turf/square-grid": "^6.3.0", - "@turf/triangle-grid": "^6.0.1", + "@turf/triangle-grid": "^6.3.0", "apicache": "^1.6.2", "bunyan": "^1.8.14", "config": "^3.3.3", diff --git a/yarn.lock b/yarn.lock index b2de300b..ed29d758 100644 --- a/yarn.lock +++ b/yarn.lock @@ -130,7 +130,7 @@ "@turf/helpers" "6.x" "@turf/meta" "6.x" -"@turf/distance@6.x", "@turf/distance@^6.0.1", "@turf/distance@^6.3.0": +"@turf/distance@^6.0.1", "@turf/distance@^6.3.0": version "6.3.0" resolved "https://registry.yarnpkg.com/@turf/distance/-/distance-6.3.0.tgz#4bd084af7fe369e921476e52b597a638dae4ed95" integrity sha512-basi24ssNFnH3iXPFjp/aNUrukjObiFWoIyDRqKyBJxVwVOwAWvfk4d38QQyBj5nDo5IahYRq/Q+T47/5hSs9w== @@ -153,7 +153,7 @@ "@turf/intersect" "^6.3.0" "@turf/invariant" "^6.3.0" -"@turf/intersect@6.x", "@turf/intersect@^6.3.0": +"@turf/intersect@^6.3.0": version "6.3.0" resolved "https://registry.yarnpkg.com/@turf/intersect/-/intersect-6.3.0.tgz#b22b3e888e762ae4336e085eb6f21215d06652ea" integrity sha512-1YCIkyKjuTlX7HaTjtyE7ZRxLCmcu0BYr6jqoVl7TjyF2NUiNpPm3m4X1ZrSF6MfjIt5NFSGYCdNMEPgREq19w== @@ -162,7 +162,7 @@ "@turf/invariant" "^6.3.0" polygon-clipping "^0.15.2" -"@turf/invariant@6.x", "@turf/invariant@^6.1.2", "@turf/invariant@^6.3.0": +"@turf/invariant@^6.1.2", "@turf/invariant@^6.3.0": version "6.3.0" resolved "https://registry.yarnpkg.com/@turf/invariant/-/invariant-6.3.0.tgz#04a22b26c5503146c03fa6198176b72bd591eadf" integrity sha512-2OFOi9p+QOrcIMySEnr+WlOiKaFZ1bY56jA98YyECewJHfhPFWUBZEhc4nWGRT0ahK08Vus9+gcuBX8QIpCIIw== @@ -221,15 +221,14 @@ "@turf/helpers" "^6.3.0" "@turf/rectangle-grid" "^6.3.0" -"@turf/triangle-grid@^6.0.1": - version "6.0.1" - resolved "https://registry.yarnpkg.com/@turf/triangle-grid/-/triangle-grid-6.0.1.tgz#270c32b3ddbe8ad0ef6a5d3377ca8f59abce86bc" - integrity sha512-4vr/qV7mtF/TpluCHK1F7TTmI5KlqaRNkcB59pDTqNragqvccsw17JCRp9h+IDSN7JRq2I0tJvcxW1P/Dk9zRg== +"@turf/triangle-grid@^6.3.0": + version "6.3.0" + resolved "https://registry.yarnpkg.com/@turf/triangle-grid/-/triangle-grid-6.3.0.tgz#e26cdae235811c28fa1b02c7758c121df57d1960" + integrity sha512-2AExXl7pTvRKOyGowuvvUm0tTyLQl+xzvv+mgWgNyg84qQptGN3HFH/QS4quoQdEzOyHNLFHgloNn6cWFX9v4A== dependencies: - "@turf/distance" "6.x" - "@turf/helpers" "6.x" - "@turf/intersect" "6.x" - "@turf/invariant" "6.x" + "@turf/distance" "^6.3.0" + "@turf/helpers" "^6.3.0" + "@turf/intersect" "^6.3.0" "@types/bytebuffer@^5.0.40": version "5.0.40" From 0573d9df9c234d82849e11c123b6ebe110488e1c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 24 Feb 2021 08:46:17 +0000 Subject: [PATCH 122/337] Bump @turf/centroid from 6.0.2 to 6.3.0 (#437) Bumps [@turf/centroid](https://github.com/Turfjs/turf) from 6.0.2 to 6.3.0. - [Release notes](https://github.com/Turfjs/turf/releases) - [Changelog](https://github.com/Turfjs/turf/blob/master/CHANGELOG.md) - [Commits](https://github.com/Turfjs/turf/commits/v6.3.0) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape --- packages/api/package.json | 2 +- yarn.lock | 12 ++++++------ 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/packages/api/package.json b/packages/api/package.json index a6a60a9d..b088c9ab 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -13,7 +13,7 @@ "@sensebox/opensensemap-api-models": "^0.0.28", "@turf/area": "^6.3.0", "@turf/bbox": "^6.3.0", - "@turf/centroid": "^6.0.2", + "@turf/centroid": "^6.3.0", "@turf/distance": "^6.0.1", "@turf/helpers": "^6.1.4", "@turf/hex-grid": "^6.3.0", diff --git a/yarn.lock b/yarn.lock index ed29d758..95eff1ec 100644 --- a/yarn.lock +++ b/yarn.lock @@ -122,13 +122,13 @@ "@turf/helpers" "^6.3.0" "@turf/invariant" "^6.3.0" -"@turf/centroid@^6.0.2": - version "6.0.2" - resolved "https://registry.yarnpkg.com/@turf/centroid/-/centroid-6.0.2.tgz#c4eb16b4bc60b692f74e1809cf9a7c4a4f5ba1cc" - integrity sha512-auyDauOtC4eddH7GC3CHFTDu2PKhpSeKCRhwhHhXtJqn2dWCJQNIoCeJRmfXRIbzCWhWvgvQafvvhq8HNvmvWw== +"@turf/centroid@^6.3.0": + version "6.3.0" + resolved "https://registry.yarnpkg.com/@turf/centroid/-/centroid-6.3.0.tgz#e86611e1e171fb0a38ade30453351a00e04956a3" + integrity sha512-7KTyqhUEqXDoyR/nf/jAXiW8ZVszEnrp5XZkgYyrf2GWdSovSO0iCN1J3bE2jkJv7IWyeDmGYL61GGzuTSZS2Q== dependencies: - "@turf/helpers" "6.x" - "@turf/meta" "6.x" + "@turf/helpers" "^6.3.0" + "@turf/meta" "^6.3.0" "@turf/distance@^6.0.1", "@turf/distance@^6.3.0": version "6.3.0" From 9fb4c5ffd875efcdf13ef4bb86cf58f0e7733b4b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 24 Feb 2021 08:53:01 +0000 Subject: [PATCH 123/337] Bump jsonpath from 1.0.2 to 1.1.0 (#434) Bumps [jsonpath](https://github.com/dchester/jsonpath) from 1.0.2 to 1.1.0. - [Release notes](https://github.com/dchester/jsonpath/releases) - [Commits](https://github.com/dchester/jsonpath/compare/1.0.2...1.1.0) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape --- packages/models/package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/models/package.json b/packages/models/package.json index 0747b05f..670521c5 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -13,7 +13,7 @@ "got": "^11.8.1", "grpc": "^1.24.4", "isemail": "^3.0.0", - "jsonpath": "^1.0.0", + "jsonpath": "^1.1.0", "lodash.isequal": "^4.5.0", "moment": "^2.29.1", "mongoose": "^4.13.6", diff --git a/yarn.lock b/yarn.lock index 95eff1ec..077ac14e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2015,10 +2015,10 @@ json5@^2.1.1: dependencies: minimist "^1.2.5" -jsonpath@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/jsonpath/-/jsonpath-1.0.2.tgz#e6aae681d03e9a77b4651d5d96eac5fc63b1fd13" - integrity sha512-rmzlgFZiQPc6q4HDyK8s9Qb4oxBnI5sF61y/Co5PV0lc3q2bIuRsNdueVbhoSHdKM4fxeimphOAtfz47yjCfeA== +jsonpath@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/jsonpath/-/jsonpath-1.1.0.tgz#ff3e9e4746eae77c11bc09d542e7219333c28055" + integrity sha512-CZHwa1sZOf42qkIyK7evwToFXeTB4iplbl6Z9CVwU0wmBQPffL6gtYJXCoeciJoZENMuzaidPjhp2iOLRei4wQ== dependencies: esprima "1.2.2" static-eval "2.0.2" From f8045b452088307ae2b5e7db38e3260cdeff3095 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 24 Feb 2021 09:57:41 +0100 Subject: [PATCH 124/337] Bump mongoose from 4.13.20 to 4.13.21 (#438) Bumps [mongoose](https://github.com/Automattic/mongoose) from 4.13.20 to 4.13.21. - [Release notes](https://github.com/Automattic/mongoose/releases) - [Changelog](https://github.com/Automattic/mongoose/blob/master/History.md) - [Commits](https://github.com/Automattic/mongoose/compare/4.13.20...4.13.21) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- packages/models/package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/models/package.json b/packages/models/package.json index 670521c5..ec3073be 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -16,7 +16,7 @@ "jsonpath": "^1.1.0", "lodash.isequal": "^4.5.0", "moment": "^2.29.1", - "mongoose": "^4.13.6", + "mongoose": "^4.13.21", "mongoose-timestamp": "^0.6", "uuid": "^8.3.2" }, diff --git a/yarn.lock b/yarn.lock index 077ac14e..53b65f80 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2362,10 +2362,10 @@ mongoose-timestamp@^0.6: dependencies: defaults "^1.0.3" -mongoose@^4.13.6: - version "4.13.20" - resolved "https://registry.yarnpkg.com/mongoose/-/mongoose-4.13.20.tgz#7d6cdc35eca23306bb7388a74a08be1dc1487a7d" - integrity sha512-lyOoXg/+S8VmW7gh816H9QcBSqLMCOXecVxflES729lb3qAU3W/AHLbCpHSIPFDJW5mXs4z5sCsjuLBa56w1Jg== +mongoose@^4.13.21: + version "4.13.21" + resolved "https://registry.yarnpkg.com/mongoose/-/mongoose-4.13.21.tgz#83f4a8461b19aca1b2274feaaaf262b71b6f034d" + integrity sha512-0VZtQu1rSUPwUtbb7zh6CymI0nNkVInOIDbtWNlna070qnUO14On8PpSVSwlx3gwmkKL2OkP4ioCj5YHC6trMg== dependencies: async "2.6.0" bson "~1.0.4" From c04ebcabbdd71986a5c975496747155b3df593c2 Mon Sep 17 00:00:00 2001 From: Gerald Pape Date: Wed, 24 Feb 2021 10:16:02 +0100 Subject: [PATCH 125/337] Update node container version to 14.16-alpine (#433) * Update node container version to 14.16-alpine * Also use node:14.16-alpine in tests --- Dockerfile | 4 ++-- tests/tests-Dockerfile | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Dockerfile b/Dockerfile index 12975649..06b1f8f7 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM node:14-alpine as build +FROM node:14.16-alpine as build ENV NODE_ENV=production @@ -23,7 +23,7 @@ RUN yarn create-version-file \ && rm -rf .git .scripts # Final stage -FROM node:14-alpine +FROM node:14.16-alpine ENV NODE_ENV=production diff --git a/tests/tests-Dockerfile b/tests/tests-Dockerfile index e83ae048..cf4d2405 100644 --- a/tests/tests-Dockerfile +++ b/tests/tests-Dockerfile @@ -1,4 +1,4 @@ -FROM node:14-alpine +FROM node:14.16-alpine # YARN_PRODUCTION=false is a workaround for https://github.com/yarnpkg/yarn/issues/4557 ENV NODE_ENV=production \ From 801f8f04be14719bc31dce121b0fc8248c9342c4 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 25 Feb 2021 19:25:39 +0100 Subject: [PATCH 126/337] Bump grpc from 1.24.4 to 1.24.5 (#440) Bumps [grpc](https://github.com/grpc/grpc-node) from 1.24.4 to 1.24.5. - [Release notes](https://github.com/grpc/grpc-node/releases) - [Commits](https://github.com/grpc/grpc-node/compare/grpc@1.24.4...grpc@1.24.5) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- packages/models/package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/models/package.json b/packages/models/package.json index ec3073be..0ca23154 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -11,7 +11,7 @@ "bunyan": "^1.8.14", "config": "^3.3.3", "got": "^11.8.1", - "grpc": "^1.24.4", + "grpc": "^1.24.5", "isemail": "^3.0.0", "jsonpath": "^1.1.0", "lodash.isequal": "^4.5.0", diff --git a/yarn.lock b/yarn.lock index 53b65f80..3335dc7b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1647,10 +1647,10 @@ growl@1.10.5: resolved "https://registry.yarnpkg.com/growl/-/growl-1.10.5.tgz#f2735dc2283674fa67478b10181059355c369e5e" integrity sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA== -grpc@^1.24.4: - version "1.24.4" - resolved "https://registry.yarnpkg.com/grpc/-/grpc-1.24.4.tgz#9240a3ea33cfaf04cd32ce8346798709bbd6782d" - integrity sha512-mHRAwuitCMuSHo1tp1+Zc0sz3cYa7pkhVJ77pkIXD5gcVORtkRiyW6msXYqTDT+35jazg98lbO3XzuTo2+XrcA== +grpc@^1.24.5: + version "1.24.5" + resolved "https://registry.yarnpkg.com/grpc/-/grpc-1.24.5.tgz#ea39fa44b0397c5881009337de9e8b44b919fe54" + integrity sha512-+dY6lfLPovblJO5QitBQM2L67efI5JjBzCqJQURSINPzoFHos+5bs4DHwtes7BF+dkx5eN3fx/VUFRCmWTsE7g== dependencies: "@types/bytebuffer" "^5.0.40" lodash.camelcase "^4.3.0" From ed5e37335410fd47f4b99201bcc07980fe7442c7 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 25 Feb 2021 18:27:48 +0000 Subject: [PATCH 127/337] Bump bunyan from 1.8.14 to 1.8.15 (#441) Bumps [bunyan](https://github.com/trentm/node-bunyan) from 1.8.14 to 1.8.15. - [Release notes](https://github.com/trentm/node-bunyan/releases) - [Changelog](https://github.com/trentm/node-bunyan/blob/1.8.15/CHANGES.md) - [Commits](https://github.com/trentm/node-bunyan/compare/1.8.14...1.8.15) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- packages/api/package.json | 2 +- packages/models/package.json | 2 +- yarn.lock | 8 ++++---- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/api/package.json b/packages/api/package.json index b088c9ab..e1022547 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -20,7 +20,7 @@ "@turf/square-grid": "^6.3.0", "@turf/triangle-grid": "^6.3.0", "apicache": "^1.6.2", - "bunyan": "^1.8.14", + "bunyan": "^1.8.15", "config": "^3.3.3", "csv-stringify": "^5.6.0", "dashify": "^2.0.0", diff --git a/packages/models/package.json b/packages/models/package.json index 0ca23154..23547769 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -8,7 +8,7 @@ "@sensebox/osem-protos": "^1.1.0", "@sensebox/sketch-templater": "^1.10.2", "bcrypt": "^5.0.0", - "bunyan": "^1.8.14", + "bunyan": "^1.8.15", "config": "^3.3.3", "got": "^11.8.1", "grpc": "^1.24.5", diff --git a/yarn.lock b/yarn.lock index 3335dc7b..ee186543 100644 --- a/yarn.lock +++ b/yarn.lock @@ -545,10 +545,10 @@ buffer-shims@^1.0.0, buffer-shims@~1.0.0: resolved "https://registry.yarnpkg.com/buffer-shims/-/buffer-shims-1.0.0.tgz#9978ce317388c649ad8793028c3477ef044a8b51" integrity sha1-mXjOMXOIxkmth5MCjDR37wRKi1E= -bunyan@^1.8.1, bunyan@^1.8.14: - version "1.8.14" - resolved "https://registry.yarnpkg.com/bunyan/-/bunyan-1.8.14.tgz#3d8c1afea7de158a5238c7cb8a66ab6b38dd45b4" - integrity sha512-LlahJUxXzZLuw/hetUQJmRgZ1LF6+cr5TPpRj6jf327AsiIq2jhYEH4oqUUkVKTor+9w2BT3oxVwhzE5lw9tcg== +bunyan@^1.8.1, bunyan@^1.8.15: + version "1.8.15" + resolved "https://registry.yarnpkg.com/bunyan/-/bunyan-1.8.15.tgz#8ce34ca908a17d0776576ca1b2f6cbd916e93b46" + integrity sha512-0tECWShh6wUysgucJcBAoYegf3JJoZWibxdqhTm7OHPeT42qdjkZ29QCMcKwbgU1kiH+auSIasNRXMLWXafXig== optionalDependencies: dtrace-provider "~0.8" moment "^2.19.3" From c8a56890e194fcae83b41ce4788b18c2167b80ff Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 25 Feb 2021 18:29:53 +0000 Subject: [PATCH 128/337] Bump simple-statistics from 7.4.0 to 7.5.0 (#442) Bumps [simple-statistics](https://github.com/simple-statistics/simple-statistics) from 7.4.0 to 7.5.0. - [Release notes](https://github.com/simple-statistics/simple-statistics/releases) - [Changelog](https://github.com/simple-statistics/simple-statistics/blob/master/CHANGELOG.md) - [Commits](https://github.com/simple-statistics/simple-statistics/compare/v7.4.0...v7.5.0) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- packages/api/package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/api/package.json b/packages/api/package.json index e1022547..762a1c2d 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -33,7 +33,7 @@ "ms": "^2.1.3", "restify": "^5.2.0", "restify-errors": "^8.0.2", - "simple-statistics": "^7.4.0", + "simple-statistics": "^7.5.0", "stringify-stream": "^1.0.5", "uuid": "^8.3.2" }, diff --git a/yarn.lock b/yarn.lock index ee186543..8470baa6 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3216,10 +3216,10 @@ signal-exit@^3.0.0: resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.3.tgz#a1410c2edd8f077b08b4e253c8eacfcaf057461c" integrity sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA== -simple-statistics@^7.4.0: - version "7.4.0" - resolved "https://registry.yarnpkg.com/simple-statistics/-/simple-statistics-7.4.0.tgz#4319348aff39d9cc3aababe02671568674807515" - integrity sha512-1mXlR6NEIwMsKWjD+exMd4vvRWmrrBk+MT1n3O5NBjbxjIh1E1YlQikwyNdQjPcq8E+EgUkFmj67gr2bfAIwGg== +simple-statistics@^7.5.0: + version "7.5.0" + resolved "https://registry.yarnpkg.com/simple-statistics/-/simple-statistics-7.5.0.tgz#5761eafcbedad45c07079bcb4e73930ec2bba18d" + integrity sha512-ME7dWm7v730n2ToKW2PPHJ8n8/uur5crNEdvKZrr4Cu5OKxeC9J8FzBoXf/rZRXE5Wr4cy5sOnpvzD92lo6lvA== slice-ansi@^4.0.0: version "4.0.0" From fa052e3d5d3e4a3761142a26e4ec79b43152e249 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 25 Feb 2021 19:22:36 +0000 Subject: [PATCH 129/337] Bump csv-parse from 4.14.2 to 4.15.3 (#444) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.14.2 to 4.15.3. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.14.2...v4.15.3) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 7f5d6cf0..e8e602a8 100644 --- a/package.json +++ b/package.json @@ -21,7 +21,7 @@ "chai": "^4.3.0", "chakram": "^1.5.0", "cheerio": "^1.0.0-rc.5", - "csv-parse": "^4.14.2", + "csv-parse": "^4.15.3", "eslint": "7.20.0", "mimelib": "^0.3.1", "mocha": "^8.2.1", diff --git a/yarn.lock b/yarn.lock index 8470baa6..46e57ad8 100644 --- a/yarn.lock +++ b/yarn.lock @@ -894,10 +894,10 @@ csv-parse@^1.3.3: resolved "https://registry.yarnpkg.com/csv-parse/-/csv-parse-1.3.3.tgz#d1cfd8743c2f849a0abb2fd544db56695d19a490" integrity sha1-0c/YdDwvhJoKuy/VRNtWaV0ZpJA= -csv-parse@^4.14.2: - version "4.14.2" - resolved "https://registry.yarnpkg.com/csv-parse/-/csv-parse-4.14.2.tgz#c1329cff95a99b8773a92c4e62f8bff114b34726" - integrity sha512-YE2xlTKtM035/94llhgsp9qFQxGi47EkQJ1pZ+mLT/98GpIsbjkMGAb7Rmu9hNxVfYFOLf10hP+rPVqnoccLgw== +csv-parse@^4.15.3: + version "4.15.3" + resolved "https://registry.yarnpkg.com/csv-parse/-/csv-parse-4.15.3.tgz#8a62759617a920c328cb31c351b05053b8f92b10" + integrity sha512-jlTqDvLdHnYMSr08ynNfk4IAUSJgJjTKy2U5CQBSu4cN9vQOJonLVZP4Qo4gKKrIgIQ5dr07UwOJdi+lRqT12w== csv-stringify@^1.1.2: version "1.1.2" From a49d6cf4b958f07fcc3b30bc94fcd9d44b8538be Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 27 Feb 2021 21:16:09 +0100 Subject: [PATCH 130/337] Bump mocha from 8.2.1 to 8.3.0 (#448) Bumps [mocha](https://github.com/mochajs/mocha) from 8.2.1 to 8.3.0. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v8.2.1...v8.3.0) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 253 +++++++++++++++++++++++---------------------------- 2 files changed, 115 insertions(+), 140 deletions(-) diff --git a/package.json b/package.json index e8e602a8..6e525f71 100644 --- a/package.json +++ b/package.json @@ -24,7 +24,7 @@ "csv-parse": "^4.15.3", "eslint": "7.20.0", "mimelib": "^0.3.1", - "mocha": "^8.2.1", + "mocha": "^8.3.0", "mqtt": "^3.0.0", "randomgeojson": "^1.0.0" } diff --git a/yarn.lock b/yarn.lock index 46e57ad8..0de485e5 100644 --- a/yarn.lock +++ b/yarn.lock @@ -342,17 +342,12 @@ ansi-regex@^3.0.0: resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998" integrity sha1-7QMXwyIGT3lGbAKWa922Bas32Zg= -ansi-regex@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-4.1.0.tgz#8b9f8f08cf1acb843756a839ca8c7e3168c51997" - integrity sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg== - ansi-regex@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.0.tgz#388539f55179bf39339c81af30a654d69f87cb75" integrity sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg== -ansi-styles@^3.2.0, ansi-styles@^3.2.1: +ansi-styles@^3.2.1: version "3.2.1" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== @@ -400,6 +395,11 @@ argparse@^1.0.7: dependencies: sprintf-js "~1.0.2" +argparse@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" + integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== + ascli@~1: version "1.0.1" resolved "https://registry.yarnpkg.com/ascli/-/ascli-1.0.1.tgz#bcfa5974a62f18e81cabaeb49732ab4a88f906bc" @@ -704,10 +704,10 @@ cheerio@^1.0.0-rc.5: parse5 "^6.0.0" parse5-htmlparser2-tree-adapter "^6.0.0" -chokidar@3.4.3: - version "3.4.3" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.4.3.tgz#c1df38231448e45ca4ac588e6c79573ba6a57d5b" - integrity sha512-DtM3g7juCXQxFVSNPNByEC2+NImtBuxQQvWlHunpJIS5Ocr0lG306cC7FCi7cEA0fzmybPUIl4txBIobk1gGOQ== +chokidar@3.5.1: + version "3.5.1" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.1.tgz#ee9ce7bbebd2b79f49f304799d5468e31e14e68a" + integrity sha512-9+s+Od+W0VJJzawDma/gvBNQqkTiqYTWLuZoyAsivsI4AaWTCzHG06/TMjsf1cYe9Cb97UCEhjz7HvnPk2p/tw== dependencies: anymatch "~3.1.1" braces "~3.0.2" @@ -717,7 +717,7 @@ chokidar@3.4.3: normalize-path "~3.0.0" readdirp "~3.5.0" optionalDependencies: - fsevents "~2.1.2" + fsevents "~2.3.1" chownr@^1.1.1: version "1.1.4" @@ -733,15 +733,6 @@ cliui@^3.0.3: strip-ansi "^3.0.1" wrap-ansi "^2.0.0" -cliui@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-5.0.0.tgz#deefcfdb2e800784aa34f46fa08e06851c7bbbc5" - integrity sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA== - dependencies: - string-width "^3.1.0" - strip-ansi "^5.2.0" - wrap-ansi "^5.1.0" - cliui@^6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/cliui/-/cliui-6.0.0.tgz#511d702c0c4e41ca156d7d0e96021f23e13225b1" @@ -751,6 +742,15 @@ cliui@^6.0.0: strip-ansi "^6.0.0" wrap-ansi "^6.2.0" +cliui@^7.0.2: + version "7.0.4" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f" + integrity sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ== + dependencies: + string-width "^4.2.0" + strip-ansi "^6.0.0" + wrap-ansi "^7.0.0" + clone-regexp@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/clone-regexp/-/clone-regexp-1.0.1.tgz#051805cd33173375d82118fc0918606da39fd60f" @@ -948,10 +948,10 @@ debug@2.6.9, debug@^2.6.8: dependencies: ms "2.0.0" -debug@4.2.0, debug@^4.0.1, debug@^4.1.1: - version "4.2.0" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.2.0.tgz#7f150f93920e94c58f5574c2fd01a3110effe7f1" - integrity sha512-IX2ncY78vDTjZMFUdmsvIRFY2Cf4FnD0wRs+nQwJU8Lu99/tPFdb0VybiiMTPe3I6rQmwsqQqRBvxU+bZ/I8sg== +debug@4.3.1, debug@^4.0.1, debug@^4.1.1: + version "4.3.1" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.1.tgz#f0d229c505e0c6d8c49ac553d1b13dc183f6b2ee" + integrity sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ== dependencies: ms "2.1.2" @@ -1040,10 +1040,10 @@ detect-node@^2.0.3: resolved "https://registry.yarnpkg.com/detect-node/-/detect-node-2.0.4.tgz#014ee8f8f669c5c58023da64b8179c083a28c46c" integrity sha512-ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw== -diff@4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/diff/-/diff-4.0.2.tgz#60f3aecb89d5fae520c11aa19efc2bb982aade7d" - integrity sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A== +diff@5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/diff/-/diff-5.0.0.tgz#7ed6ad76d859d030787ec35855f5b1daf31d852b" + integrity sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w== doctrine@^3.0.0: version "3.0.0" @@ -1119,11 +1119,6 @@ ecdsa-sig-formatter@1.0.11: dependencies: safe-buffer "^5.0.1" -emoji-regex@^7.0.1: - version "7.0.3" - resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-7.0.3.tgz#933a04052860c85e83c122479c4748a8e4c72156" - integrity sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA== - emoji-regex@^8.0.0: version "8.0.0" resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" @@ -1217,6 +1212,11 @@ es6-symbol@^3.1.1, es6-symbol@~3.1.1, es6-symbol@~3.1.3: d "^1.0.1" ext "^1.1.2" +escalade@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" + integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== + escape-regexp-component@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/escape-regexp-component/-/escape-regexp-component-1.0.2.tgz#9c63b6d0b25ff2a88c3adbd18c5b61acc3b9faa2" @@ -1442,13 +1442,6 @@ find-up@5.0.0: locate-path "^6.0.0" path-exists "^4.0.0" -find-up@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" - integrity sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg== - dependencies: - locate-path "^3.0.0" - find-up@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19" @@ -1506,10 +1499,10 @@ fs.realpath@^1.0.0: resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= -fsevents@~2.1.2: - version "2.1.3" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.1.3.tgz#fb738703ae8d2f9fe900c33836ddebee8b97f23e" - integrity sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ== +fsevents@~2.3.1: + version "2.3.2" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" + integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== functional-red-black-tree@^1.0.1: version "1.0.1" @@ -1540,7 +1533,7 @@ geojson-rbush@3.x: "@turf/meta" "6.x" rbush "^2.0.0" -get-caller-file@^2.0.1: +get-caller-file@^2.0.1, get-caller-file@^2.0.5: version "2.0.5" resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== @@ -1958,7 +1951,14 @@ js-tokens@^4.0.0: resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== -js-yaml@3.14.0, js-yaml@^3.13.1: +js-yaml@4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.0.0.tgz#f426bc0ff4b4051926cd588c71113183409a121f" + integrity sha512-pqon0s+4ScYUvX30wxQi3PogGFAlUyH0awepWvwkj4jD4v+ova3RiYw8bmA6x2rDrEaj8i/oWKoRxpVNW+Re8Q== + dependencies: + argparse "^2.0.1" + +js-yaml@^3.13.1: version "3.14.0" resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.0.tgz#a7a34170f26a21bb162424d8adacb4113a69e482" integrity sha512-/4IbIeHcD9VMHFqDR/gQ7EdZdLimOvW2DdcxFjdyyZ9NsbS+ccrXqVWDtab/lRl5AlUqmpBx8EhPaWR+OtY17A== @@ -2107,14 +2107,6 @@ levn@~0.3.0: prelude-ls "~1.1.2" type-check "~0.3.2" -locate-path@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e" - integrity sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A== - dependencies: - p-locate "^3.0.0" - path-exists "^3.0.0" - locate-path@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz#1afba396afd676a6d42504d0a67a3a7eb9f62aa0" @@ -2302,35 +2294,35 @@ mkdirp@^0.5.0, mkdirp@^0.5.3, mkdirp@~0.5.1: dependencies: minimist "^1.2.5" -mocha@^8.2.1: - version "8.2.1" - resolved "https://registry.yarnpkg.com/mocha/-/mocha-8.2.1.tgz#f2fa68817ed0e53343d989df65ccd358bc3a4b39" - integrity sha512-cuLBVfyFfFqbNR0uUKbDGXKGk+UDFe6aR4os78XIrMQpZl/nv7JYHcvP5MFIAb374b2zFXsdgEGwmzMtP0Xg8w== +mocha@^8.3.0: + version "8.3.0" + resolved "https://registry.yarnpkg.com/mocha/-/mocha-8.3.0.tgz#a83a7432d382ae1ca29686062d7fdc2c36f63fe5" + integrity sha512-TQqyC89V1J/Vxx0DhJIXlq9gbbL9XFNdeLQ1+JsnZsVaSOV1z3tWfw0qZmQJGQRIfkvZcs7snQnZnOCKoldq1Q== dependencies: "@ungap/promise-all-settled" "1.1.2" ansi-colors "4.1.1" browser-stdout "1.3.1" - chokidar "3.4.3" - debug "4.2.0" - diff "4.0.2" + chokidar "3.5.1" + debug "4.3.1" + diff "5.0.0" escape-string-regexp "4.0.0" find-up "5.0.0" glob "7.1.6" growl "1.10.5" he "1.2.0" - js-yaml "3.14.0" + js-yaml "4.0.0" log-symbols "4.0.0" minimatch "3.0.4" - ms "2.1.2" - nanoid "3.1.12" + ms "2.1.3" + nanoid "3.1.20" serialize-javascript "5.0.1" strip-json-comments "3.1.1" - supports-color "7.2.0" + supports-color "8.1.1" which "2.0.2" wide-align "1.1.3" - workerpool "6.0.2" - yargs "13.3.2" - yargs-parser "13.1.2" + workerpool "6.1.0" + yargs "16.2.0" + yargs-parser "20.2.4" yargs-unparser "2.0.0" moment@^2.19.3, moment@^2.29.1: @@ -2443,7 +2435,7 @@ ms@2.1.2: resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== -ms@^2.1.1, ms@^2.1.3: +ms@2.1.3, ms@^2.1.1, ms@^2.1.3: version "2.1.3" resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== @@ -2467,10 +2459,10 @@ nan@^2.13.2, nan@^2.14.0: resolved "https://registry.yarnpkg.com/nan/-/nan-2.14.1.tgz#d7be34dfa3105b91494c3147089315eff8874b01" integrity sha512-isWHgVjnFjh2x2yuJ/tj3JbwoHu3UC2dX5G/88Cm24yB6YopVgxvBObDY7n5xW6ExmFhJpSEQqFPvq9zaXc8Jw== -nanoid@3.1.12: - version "3.1.12" - resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.1.12.tgz#6f7736c62e8d39421601e4a0c77623a97ea69654" - integrity sha512-1qstj9z5+x491jfiC4Nelk+f8XBad7LN20PmyWINJEMRSf3wcAjAWysw1qaA8z6NSKe2sjq1hRSDpBH5paCb6A== +nanoid@3.1.20: + version "3.1.20" + resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.1.20.tgz#badc263c6b1dcf14b71efaa85f6ab4c1d6cfc788" + integrity sha512-a1cQNyczgKbLX9jwbS/+d7W8fX/RfgYR7lVWwWOGIPNgK2m0MWvrGF6/m4kk6U3QcFMnZf3RIhL0v2Jgh/0Uxw== natural-compare@^1.4.0: version "1.4.0" @@ -2687,7 +2679,7 @@ p-cancelable@^2.0.0: resolved "https://registry.yarnpkg.com/p-cancelable/-/p-cancelable-2.0.0.tgz#4a3740f5bdaf5ed5d7c3e34882c6fb5d6b266a6e" integrity sha512-wvPXDmbMmu2ksjkB4Z3nZWTSkJEb9lqVdMaCKpZUGJG9TMiNp9XcbG3fn9fPKjem04fJMJnXoyFPk2FmgiaiNg== -p-limit@^2.0.0, p-limit@^2.2.0: +p-limit@^2.2.0: version "2.3.0" resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== @@ -2701,13 +2693,6 @@ p-limit@^3.0.2: dependencies: yocto-queue "^0.1.0" -p-locate@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4" - integrity sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ== - dependencies: - p-limit "^2.0.0" - p-locate@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz#a3428bb7088b3a60292f66919278b7c297ad4f07" @@ -2751,11 +2736,6 @@ path-dirname@^1.0.0: resolved "https://registry.yarnpkg.com/path-dirname/-/path-dirname-1.0.2.tgz#cc33d24d525e099a5388c0336c6e32b9160609e0" integrity sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA= -path-exists@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" - integrity sha1-zg6+ql94yxiSXqfYENe1mwEP1RU= - path-exists@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" @@ -3341,15 +3321,6 @@ string-width@^1.0.1: is-fullwidth-code-point "^2.0.0" strip-ansi "^4.0.0" -string-width@^3.0.0, string-width@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-3.1.0.tgz#22767be21b62af1081574306f69ac51b62203961" - integrity sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w== - dependencies: - emoji-regex "^7.0.1" - is-fullwidth-code-point "^2.0.0" - strip-ansi "^5.1.0" - string-width@^4.1.0, string-width@^4.2.0: version "4.2.0" resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.0.tgz#952182c46cc7b2c313d1596e623992bd163b72b5" @@ -3411,13 +3382,6 @@ strip-ansi@^4.0.0: dependencies: ansi-regex "^3.0.0" -strip-ansi@^5.0.0, strip-ansi@^5.1.0, strip-ansi@^5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-5.2.0.tgz#8c9a536feb6afc962bdfa5b104a5091c1ad9c0ae" - integrity sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA== - dependencies: - ansi-regex "^4.1.0" - strip-ansi@^6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.0.tgz#0b1571dd7669ccd4f3e06e14ef1eed26225ae532" @@ -3435,10 +3399,10 @@ strip-json-comments@~2.0.1: resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo= -supports-color@7.2.0, supports-color@^7.1.0: - version "7.2.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" - integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== +supports-color@8.1.1: + version "8.1.1" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-8.1.1.tgz#cd6fc17e28500cff56c1b86c0a7fd4a54a73005c" + integrity sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q== dependencies: has-flag "^4.0.0" @@ -3449,6 +3413,13 @@ supports-color@^5.3.0: dependencies: has-flag "^3.0.0" +supports-color@^7.1.0: + version "7.2.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" + integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== + dependencies: + has-flag "^4.0.0" + table@^6.0.4: version "6.0.7" resolved "https://registry.yarnpkg.com/table/-/table-6.0.7.tgz#e45897ffbcc1bcf9e8a87bf420f2c9e5a7a52a34" @@ -3703,10 +3674,10 @@ word-wrap@^1.2.3, word-wrap@~1.2.3: resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c" integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ== -workerpool@6.0.2: - version "6.0.2" - resolved "https://registry.yarnpkg.com/workerpool/-/workerpool-6.0.2.tgz#e241b43d8d033f1beb52c7851069456039d1d438" - integrity sha512-DSNyvOpFKrNusaaUwk+ej6cBj1bmhLcBfj80elGk+ZIo5JSkq+unB1dLKEOcNfJDZgjGICfhQ0Q5TbP0PvF4+Q== +workerpool@6.1.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/workerpool/-/workerpool-6.1.0.tgz#a8e038b4c94569596852de7a8ea4228eefdeb37b" + integrity sha512-toV7q9rWNYha963Pl/qyeZ6wG+3nnsyvolaNUS8+R5Wtw6qJPTxIlOP1ZSvcGhEJw+l3HMMmtiNo9Gl61G4GVg== wrap-ansi@^2.0.0: version "2.1.0" @@ -3716,15 +3687,6 @@ wrap-ansi@^2.0.0: string-width "^1.0.1" strip-ansi "^3.0.1" -wrap-ansi@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-5.1.0.tgz#1fd1f67235d5b6d0fee781056001bfb694c03b09" - integrity sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q== - dependencies: - ansi-styles "^3.2.0" - string-width "^3.0.0" - strip-ansi "^5.0.0" - wrap-ansi@^6.2.0: version "6.2.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-6.2.0.tgz#e9393ba07102e6c91a3b221478f0257cd2856e53" @@ -3734,6 +3696,15 @@ wrap-ansi@^6.2.0: string-width "^4.1.0" strip-ansi "^6.0.0" +wrap-ansi@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" + integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== + dependencies: + ansi-styles "^4.0.0" + string-width "^4.1.0" + strip-ansi "^6.0.0" + wrappy@1: version "1.0.2" resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" @@ -3763,6 +3734,11 @@ y18n@^4.0.0: resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.0.tgz#95ef94f85ecc81d007c264e190a120f0a3c8566b" integrity sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w== +y18n@^5.0.5: + version "5.0.5" + resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.5.tgz#8769ec08d03b1ea2df2500acef561743bbb9ab18" + integrity sha512-hsRUr4FFrvhhRH12wOdfs38Gy7k2FFzB9qgN9v3aLykRq0dRcdcpz5C9FxdS2NuhOrI/628b/KSTJ3rwHysYSg== + yallist@^2.1.2: version "2.1.2" resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" @@ -3778,13 +3754,10 @@ yallist@^4.0.0: resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== -yargs-parser@13.1.2, yargs-parser@^13.1.2: - version "13.1.2" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-13.1.2.tgz#130f09702ebaeef2650d54ce6e3e5706f7a4fb38" - integrity sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg== - dependencies: - camelcase "^5.0.0" - decamelize "^1.2.0" +yargs-parser@20.2.4: + version "20.2.4" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.4.tgz#b42890f14566796f85ae8e3a25290d205f154a54" + integrity sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA== yargs-parser@^18.1.1: version "18.1.3" @@ -3794,6 +3767,11 @@ yargs-parser@^18.1.1: camelcase "^5.0.0" decamelize "^1.2.0" +yargs-parser@^20.2.2: + version "20.2.6" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.6.tgz#69f920addf61aafc0b8b89002f5d66e28f2d8b20" + integrity sha512-AP1+fQIWSM/sMiET8fyayjx/J+JmTPt2Mr0FkrgqB4todtfa53sOsrSAcIrJRD5XS20bKUwaDIuMkWKCEiQLKA== + yargs-unparser@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/yargs-unparser/-/yargs-unparser-2.0.0.tgz#f131f9226911ae5d9ad38c432fe809366c2325eb" @@ -3804,21 +3782,18 @@ yargs-unparser@2.0.0: flat "^5.0.2" is-plain-obj "^2.1.0" -yargs@13.3.2: - version "13.3.2" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-13.3.2.tgz#ad7ffefec1aa59565ac915f82dccb38a9c31a2dd" - integrity sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw== +yargs@16.2.0: + version "16.2.0" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" + integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== dependencies: - cliui "^5.0.0" - find-up "^3.0.0" - get-caller-file "^2.0.1" + cliui "^7.0.2" + escalade "^3.1.1" + get-caller-file "^2.0.5" require-directory "^2.1.1" - require-main-filename "^2.0.0" - set-blocking "^2.0.0" - string-width "^3.0.0" - which-module "^2.0.0" - y18n "^4.0.0" - yargs-parser "^13.1.2" + string-width "^4.2.0" + y18n "^5.0.5" + yargs-parser "^20.2.2" yargs@^15.3.1: version "15.3.1" From b357bf22f5bcdc62b84e0fb927c8f9ce935a3bdf Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 27 Feb 2021 20:18:34 +0000 Subject: [PATCH 131/337] Bump csv-stringify from 5.6.0 to 5.6.2 (#447) Bumps [csv-stringify](https://github.com/adaltas/node-csv-stringify) from 5.6.0 to 5.6.2. - [Release notes](https://github.com/adaltas/node-csv-stringify/releases) - [Changelog](https://github.com/adaltas/node-csv-stringify/blob/master/CHANGELOG.md) - [Commits](https://github.com/adaltas/node-csv-stringify/compare/v5.6.0...v5.6.2) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape --- packages/api/package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/api/package.json b/packages/api/package.json index 762a1c2d..2d7a7b28 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -22,7 +22,7 @@ "apicache": "^1.6.2", "bunyan": "^1.8.15", "config": "^3.3.3", - "csv-stringify": "^5.6.0", + "csv-stringify": "^5.6.2", "dashify": "^2.0.0", "got": "^11.8.1", "honeybadger": "^1.4.0", diff --git a/yarn.lock b/yarn.lock index 0de485e5..2deec82e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -906,10 +906,10 @@ csv-stringify@^1.1.2: dependencies: lodash.get "~4.4.2" -csv-stringify@^5.6.0: - version "5.6.0" - resolved "https://registry.yarnpkg.com/csv-stringify/-/csv-stringify-5.6.0.tgz#3dcde51da7561f5052220f1847bfd4db7618fcfa" - integrity sha512-E0LNLevBrwaJ1WKsl4HUPOmK96WyhizTfY79mJgfr2dsIb6zyJd3B9+lToO7gSkTaKi8CIo0Pd0vDGfa0whozg== +csv-stringify@^5.6.2: + version "5.6.2" + resolved "https://registry.yarnpkg.com/csv-stringify/-/csv-stringify-5.6.2.tgz#e653783e2189c4c797fbb12abf7f4943c787caa9" + integrity sha512-n3rIVbX6ylm1YsX2NEug9IaPV8xRnT+9/NNZbrA/bcHgOSSeqtWla6XnI/xmyu57wIw+ASCAoX1oM6EZtqJV0A== csv@^1.1.0: version "1.2.1" From 0c95bb52f28c8ceca4338b6542112d7a8be3530d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 27 Feb 2021 20:27:47 +0000 Subject: [PATCH 132/337] Bump bcrypt from 5.0.0 to 5.0.1 (#445) Bumps [bcrypt](https://github.com/kelektiv/node.bcrypt.js) from 5.0.0 to 5.0.1. - [Release notes](https://github.com/kelektiv/node.bcrypt.js/releases) - [Changelog](https://github.com/kelektiv/node.bcrypt.js/blob/master/CHANGELOG.md) - [Commits](https://github.com/kelektiv/node.bcrypt.js/compare/v5.0.0...v5.0.1) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- packages/models/package.json | 2 +- yarn.lock | 134 +++++++++++++++++++++++++++-------- 2 files changed, 106 insertions(+), 30 deletions(-) diff --git a/packages/models/package.json b/packages/models/package.json index 23547769..b815ada4 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -7,7 +7,7 @@ "dependencies": { "@sensebox/osem-protos": "^1.1.0", "@sensebox/sketch-templater": "^1.10.2", - "bcrypt": "^5.0.0", + "bcrypt": "^5.0.1", "bunyan": "^1.8.15", "config": "^3.3.3", "got": "^11.8.1", diff --git a/yarn.lock b/yarn.lock index 2deec82e..222e5f1a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -39,6 +39,21 @@ minimatch "^3.0.4" strip-json-comments "^3.1.1" +"@mapbox/node-pre-gyp@^1.0.0": + version "1.0.0" + resolved "https://registry.yarnpkg.com/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.0.tgz#2b809e701da0f6729b47fe78ad4b9dc187a7d2e5" + integrity sha512-mEaiD1CURETR/dBIiJAwz0M0Q0mH3gCW4pPMaIlNt97mdzYUVeqGcTJSamgJpS6Tg4tBHDrOJpjdh5fJTLnyNQ== + dependencies: + detect-libc "^1.0.3" + http-proxy-agent "^4.0.1" + mkdirp "^1.0.4" + node-fetch "^2.6.1" + nopt "^5.0.0" + npmlog "^4.1.2" + rimraf "^3.0.2" + semver "^7.3.4" + tar "^6.1.0" + "@netflix/nerror@^1.0.0": version "1.1.3" resolved "https://registry.yarnpkg.com/@netflix/nerror/-/nerror-1.1.3.tgz#9d88eccca442f1d544f2761d15ea557dc0a44ed2" @@ -78,6 +93,11 @@ dependencies: defer-to-connect "^2.0.0" +"@tootallnate/once@1": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@tootallnate/once/-/once-1.1.2.tgz#ccb91445360179a04e7fe6aff78c00ffc1eeaf82" + integrity sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw== + "@turf/area@^6.3.0": version "6.3.0" resolved "https://registry.yarnpkg.com/@turf/area/-/area-6.3.0.tgz#cdd02f8ca51da2889dfc90a3c9e8fef5d1e04dca" @@ -307,6 +327,13 @@ addressparser@~1.0.1: resolved "https://registry.yarnpkg.com/addressparser/-/addressparser-1.0.1.tgz#47afbe1a2a9262191db6838e4fd1d39b40821746" integrity sha1-R6++GiqSYhkdtoOOT9HTm0CCF0Y= +agent-base@6: + version "6.0.2" + resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-6.0.2.tgz#49fff58577cfee3f37176feab4c22e00f86d7f77" + integrity sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ== + dependencies: + debug "4" + ajv@^6.10.0, ajv@^6.12.4, ajv@^6.5.5: version "6.12.6" resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" @@ -474,13 +501,13 @@ bcrypt-pbkdf@^1.0.0: dependencies: tweetnacl "^0.14.3" -bcrypt@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/bcrypt/-/bcrypt-5.0.0.tgz#051407c7cd5ffbfb773d541ca3760ea0754e37e2" - integrity sha512-jB0yCBl4W/kVHM2whjfyqnxTmOHkCX4kHEa5nYKSoGeYe8YrjTYTc87/6bwt1g8cmV0QrbhKriETg9jWtcREhg== +bcrypt@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/bcrypt/-/bcrypt-5.0.1.tgz#f1a2c20f208e2ccdceea4433df0c8b2c54ecdf71" + integrity sha512-9BTgmrhZM2t1bNuDtrtIMVSmmxZBrJ71n8Wg+YgdjHuIWYF7SjjmCPZFB+/5i/o/PIeRpwVJR3P+NrpIItUjqw== dependencies: - node-addon-api "^3.0.0" - node-pre-gyp "0.15.0" + "@mapbox/node-pre-gyp" "^1.0.0" + node-addon-api "^3.1.0" binary-extensions@^2.0.0: version "2.0.0" @@ -724,6 +751,11 @@ chownr@^1.1.1: resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.4.tgz#6fc9d7b42d32a583596337666e7d08084da2cc6b" integrity sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg== +chownr@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/chownr/-/chownr-2.0.0.tgz#15bfbe53d2eab4cf70f18a8cd68ebe5b3cb1dece" + integrity sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ== + cliui@^3.0.3: version "3.2.0" resolved "https://registry.yarnpkg.com/cliui/-/cliui-3.2.0.tgz#120601537a916d29940f934da3b48d585a39213d" @@ -948,7 +980,7 @@ debug@2.6.9, debug@^2.6.8: dependencies: ms "2.0.0" -debug@4.3.1, debug@^4.0.1, debug@^4.1.1: +debug@4, debug@4.3.1, debug@^4.0.1, debug@^4.1.1: version "4.3.1" resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.1.tgz#f0d229c505e0c6d8c49ac553d1b13dc183f6b2ee" integrity sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ== @@ -1030,7 +1062,7 @@ delegates@^1.0.0: resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" integrity sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o= -detect-libc@^1.0.2: +detect-libc@^1.0.2, detect-libc@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b" integrity sha1-+hN8S9aY7fVc1c0CrFWfkaTEups= @@ -1494,6 +1526,13 @@ fs-minipass@^1.2.5: dependencies: minipass "^2.6.0" +fs-minipass@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-2.1.0.tgz#7f5036fdbf12c63c169190cbe4199c852271f9fb" + integrity sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg== + dependencies: + minipass "^3.0.0" + fs.realpath@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" @@ -1743,6 +1782,15 @@ http-deceiver@^1.2.7: resolved "https://registry.yarnpkg.com/http-deceiver/-/http-deceiver-1.2.7.tgz#fa7168944ab9a519d337cb0bec7284dc3e723d87" integrity sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc= +http-proxy-agent@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz#8a8c8ef7f5932ccf953c296ca8291b95aa74aa3a" + integrity sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg== + dependencies: + "@tootallnate/once" "1" + agent-base "6" + debug "4" + http-signature@^1.0.0: version "1.3.4" resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.3.4.tgz#a65b41193110b222364e776fd1ac848655a0e2f0" @@ -2280,6 +2328,13 @@ minipass@^2.6.0, minipass@^2.8.6, minipass@^2.9.0: safe-buffer "^5.1.2" yallist "^3.0.0" +minipass@^3.0.0: + version "3.1.3" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-3.1.3.tgz#7d42ff1f39635482e15f9cdb53184deebd5815fd" + integrity sha512-Mgd2GdMVzY+x3IJ+oHnVM+KG3lA5c8tnabyJKmHSaG2kAGpudxuOf8ToDkhumF7UzME7DecbQE9uOZhNm7PuJg== + dependencies: + yallist "^4.0.0" + minizlib@^1.2.1: version "1.3.3" resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-1.3.3.tgz#2290de96818a34c29551c8a8d301216bd65a861d" @@ -2287,6 +2342,14 @@ minizlib@^1.2.1: dependencies: minipass "^2.9.0" +minizlib@^2.1.1: + version "2.1.2" + resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-2.1.2.tgz#e90d3466ba209b932451508a11ce3d3632145931" + integrity sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg== + dependencies: + minipass "^3.0.0" + yallist "^4.0.0" + mkdirp@^0.5.0, mkdirp@^0.5.3, mkdirp@~0.5.1: version "0.5.5" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.5.tgz#d91cefd62d1436ca0f41620e251288d420099def" @@ -2294,6 +2357,11 @@ mkdirp@^0.5.0, mkdirp@^0.5.3, mkdirp@~0.5.1: dependencies: minimist "^1.2.5" +mkdirp@^1.0.3, mkdirp@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" + integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== + mocha@^8.3.0: version "8.3.0" resolved "https://registry.yarnpkg.com/mocha/-/mocha-8.3.0.tgz#a83a7432d382ae1ca29686062d7fdc2c36f63fe5" @@ -2493,26 +2561,15 @@ next-tick@~1.0.0: resolved "https://registry.yarnpkg.com/next-tick/-/next-tick-1.0.0.tgz#ca86d1fe8828169b0120208e3dc8424b9db8342c" integrity sha1-yobR/ogoFpsBICCOPchCS524NCw= -node-addon-api@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-3.0.0.tgz#812446a1001a54f71663bed188314bba07e09247" - integrity sha512-sSHCgWfJ+Lui/u+0msF3oyCgvdkhxDbkCS6Q8uiJquzOimkJBvX6hl5aSSA7DR1XbMpdM8r7phjcF63sF4rkKg== +node-addon-api@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-3.1.0.tgz#98b21931557466c6729e51cb77cd39c965f42239" + integrity sha512-flmrDNB06LIl5lywUz7YlNGZH/5p0M7W28k8hzd9Lshtdh1wshD2Y+U4h9LD6KObOy1f+fEVdgprPrEymjM5uw== -node-pre-gyp@0.15.0: - version "0.15.0" - resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.15.0.tgz#c2fc383276b74c7ffa842925241553e8b40f1087" - integrity sha512-7QcZa8/fpaU/BKenjcaeFF9hLz2+7S9AqyXFhlH/rilsQ/hPZKK32RtR5EQHJElgu+q5RfbJ34KriI79UWaorA== - dependencies: - detect-libc "^1.0.2" - mkdirp "^0.5.3" - needle "^2.5.0" - nopt "^4.0.1" - npm-packlist "^1.1.6" - npmlog "^4.0.2" - rc "^1.2.7" - rimraf "^2.6.1" - semver "^5.3.0" - tar "^4.4.2" +node-fetch@^2.6.1: + version "2.6.1" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.1.tgz#045bd323631f76ed2e2b55573394416b639a0052" + integrity sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw== node-pre-gyp@^0.16.0: version "0.16.0" @@ -2538,6 +2595,13 @@ nopt@^4.0.1: abbrev "1" osenv "^0.1.4" +nopt@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/nopt/-/nopt-5.0.0.tgz#530942bb58a512fccafe53fe210f13a25355dc88" + integrity sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ== + dependencies: + abbrev "1" + normalize-path@^3.0.0, normalize-path@~3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" @@ -2569,7 +2633,7 @@ npm-packlist@^1.1.6: npm-bundled "^1.0.1" npm-normalize-package-bin "^1.0.1" -npmlog@^4.0.2: +npmlog@^4.0.2, npmlog@^4.1.2: version "4.1.2" resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" integrity sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg== @@ -3160,7 +3224,7 @@ semver@^5.0.1, semver@^5.1.0, semver@^5.3.0, semver@^5.6.0: resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== -semver@^7.2.1: +semver@^7.2.1, semver@^7.3.4: version "7.3.4" resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.4.tgz#27aaa7d2e4ca76452f98d3add093a72c943edc97" integrity sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw== @@ -3443,6 +3507,18 @@ tar@^4.4.2: safe-buffer "^5.1.2" yallist "^3.0.3" +tar@^6.1.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/tar/-/tar-6.1.0.tgz#d1724e9bcc04b977b18d5c573b333a2207229a83" + integrity sha512-DUCttfhsnLCjwoDoFcI+B2iJgYa93vBnDUATYEeRx6sntCTdN01VnqsIuTlALXla/LWooNg0yEGeB+Y8WdFxGA== + dependencies: + chownr "^2.0.0" + fs-minipass "^2.0.0" + minipass "^3.0.0" + minizlib "^2.1.1" + mkdirp "^1.0.3" + yallist "^4.0.0" + text-table@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" From 8f846e0ebe0d97b2562b690cf770529f7b9749de Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 1 Mar 2021 06:46:58 +0100 Subject: [PATCH 133/337] Bump got from 11.8.1 to 11.8.2 (#451) Bumps [got](https://github.com/sindresorhus/got) from 11.8.1 to 11.8.2. - [Release notes](https://github.com/sindresorhus/got/releases) - [Commits](https://github.com/sindresorhus/got/compare/v11.8.1...v11.8.2) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- packages/api/package.json | 2 +- packages/models/package.json | 2 +- yarn.lock | 8 ++++---- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/api/package.json b/packages/api/package.json index 2d7a7b28..85754b84 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -24,7 +24,7 @@ "config": "^3.3.3", "csv-stringify": "^5.6.2", "dashify": "^2.0.0", - "got": "^11.8.1", + "got": "^11.8.2", "honeybadger": "^1.4.0", "isemail": "^3.0.0", "jsonwebtoken": "^8.1.0", diff --git a/packages/models/package.json b/packages/models/package.json index b815ada4..3b5b518b 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -10,7 +10,7 @@ "bcrypt": "^5.0.1", "bunyan": "^1.8.15", "config": "^3.3.3", - "got": "^11.8.1", + "got": "^11.8.2", "grpc": "^1.24.5", "isemail": "^3.0.0", "jsonpath": "^1.1.0", diff --git a/yarn.lock b/yarn.lock index 222e5f1a..b42913ef 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1657,10 +1657,10 @@ globals@^12.1.0: dependencies: type-fest "^0.8.1" -got@^11.8.1: - version "11.8.1" - resolved "https://registry.yarnpkg.com/got/-/got-11.8.1.tgz#df04adfaf2e782babb3daabc79139feec2f7e85d" - integrity sha512-9aYdZL+6nHmvJwHALLwKSUZ0hMwGaJGYv3hoPLPgnT8BoBXm1SjnZeky+91tfwJaDzun2s4RsBRy48IEYv2q2Q== +got@^11.8.2: + version "11.8.2" + resolved "https://registry.yarnpkg.com/got/-/got-11.8.2.tgz#7abb3959ea28c31f3576f1576c1effce23f33599" + integrity sha512-D0QywKgIe30ODs+fm8wMZiAcZjypcCodPNuMz5H9Mny7RJ+IjJ10BdmGW7OM7fHXP+O7r6ZwapQ/YQmMSvB0UQ== dependencies: "@sindresorhus/is" "^4.0.0" "@szmarczak/http-timer" "^4.0.5" From 40353691d060d8bef1470efaad91324424ada360 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 1 Mar 2021 05:49:33 +0000 Subject: [PATCH 134/337] Bump eslint from 7.20.0 to 7.21.0 (#450) Bumps [eslint](https://github.com/eslint/eslint) from 7.20.0 to 7.21.0. - [Release notes](https://github.com/eslint/eslint/releases) - [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md) - [Commits](https://github.com/eslint/eslint/compare/v7.20.0...v7.21.0) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 29 ++++++++++++++--------------- 2 files changed, 15 insertions(+), 16 deletions(-) diff --git a/package.json b/package.json index 6e525f71..f92a89b4 100644 --- a/package.json +++ b/package.json @@ -22,7 +22,7 @@ "chakram": "^1.5.0", "cheerio": "^1.0.0-rc.5", "csv-parse": "^4.15.3", - "eslint": "7.20.0", + "eslint": "7.21.0", "mimelib": "^0.3.1", "mocha": "^8.3.0", "mqtt": "^3.0.0", diff --git a/yarn.lock b/yarn.lock index b42913ef..4c18c189 100644 --- a/yarn.lock +++ b/yarn.lock @@ -23,10 +23,10 @@ chalk "^2.0.0" js-tokens "^4.0.0" -"@eslint/eslintrc@^0.3.0": - version "0.3.0" - resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-0.3.0.tgz#d736d6963d7003b6514e6324bec9c602ac340318" - integrity sha512-1JTKgrOKAHVivSvOYw+sJOunkBjUOvjqWk1DPja7ZFhIS2mX/4EgTT8M7eTK9jrKhL/FvXXEbQwIs3pg1xp3dg== +"@eslint/eslintrc@^0.4.0": + version "0.4.0" + resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-0.4.0.tgz#99cc0a0584d72f1df38b900fb062ba995f395547" + integrity sha512-2ZPCc+uNbjV5ERJr+aKSPRwZgKd2z11x0EgLvb1PURmUrn9QNRXFqje0Ldq454PfAVyaJYyrDvvIKSFP4NnBog== dependencies: ajv "^6.12.4" debug "^4.1.1" @@ -35,7 +35,6 @@ ignore "^4.0.6" import-fresh "^3.2.1" js-yaml "^3.13.1" - lodash "^4.17.20" minimatch "^3.0.4" strip-json-comments "^3.1.1" @@ -1301,13 +1300,13 @@ eslint-visitor-keys@^2.0.0: resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.0.0.tgz#21fdc8fbcd9c795cc0321f0563702095751511a8" integrity sha512-QudtT6av5WXels9WjIM7qz1XD1cWGvX4gGXvp/zBn9nXG02D0utdU3Em2m/QjTnrsk6bBjmCygl3rmj118msQQ== -eslint@7.20.0: - version "7.20.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.20.0.tgz#db07c4ca4eda2e2316e7aa57ac7fc91ec550bdc7" - integrity sha512-qGi0CTcOGP2OtCQBgWZlQjcTuP0XkIpYFj25XtRTQSHC+umNnp7UMshr2G8SLsRFYDdAPFeHOsiteadmMH02Yw== +eslint@7.21.0: + version "7.21.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.21.0.tgz#4ecd5b8c5b44f5dedc9b8a110b01bbfeb15d1c83" + integrity sha512-W2aJbXpMNofUp0ztQaF40fveSsJBjlSCSWpy//gzfTvwC+USs/nceBrKmlJOiM8r1bLwP2EuYkCqArn/6QTIgg== dependencies: "@babel/code-frame" "7.12.11" - "@eslint/eslintrc" "^0.3.0" + "@eslint/eslintrc" "^0.4.0" ajv "^6.10.0" chalk "^4.0.0" cross-spawn "^7.0.2" @@ -1320,7 +1319,7 @@ eslint@7.20.0: espree "^7.3.1" esquery "^1.4.0" esutils "^2.0.2" - file-entry-cache "^6.0.0" + file-entry-cache "^6.0.1" functional-red-black-tree "^1.0.1" glob-parent "^5.0.0" globals "^12.1.0" @@ -1452,10 +1451,10 @@ fast-levenshtein@^2.0.6, fast-levenshtein@~2.0.6: resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= -file-entry-cache@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.0.tgz#7921a89c391c6d93efec2169ac6bf300c527ea0a" - integrity sha512-fqoO76jZ3ZnYrXLDRxBR1YvOvc0k844kcOg40bgsPrE25LAb/PDqTY+ho64Xh2c8ZXgIKldchCFHczG2UVRcWA== +file-entry-cache@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz#211b2dd9659cb0394b073e7323ac3c933d522027" + integrity sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg== dependencies: flat-cache "^3.0.4" From 7e5b11a0fdc28a0ffdc414159386bdbdc32445c3 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 1 Mar 2021 09:07:10 +0000 Subject: [PATCH 135/337] Bump config from 3.3.3 to 3.3.4 (#449) Bumps [config](https://github.com/lorenwest/node-config) from 3.3.3 to 3.3.4. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- packages/api/package.json | 2 +- packages/models/package.json | 2 +- yarn.lock | 8 ++++---- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/api/package.json b/packages/api/package.json index 85754b84..36fc5fce 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -21,7 +21,7 @@ "@turf/triangle-grid": "^6.3.0", "apicache": "^1.6.2", "bunyan": "^1.8.15", - "config": "^3.3.3", + "config": "^3.3.4", "csv-stringify": "^5.6.2", "dashify": "^2.0.0", "got": "^11.8.2", diff --git a/packages/models/package.json b/packages/models/package.json index 3b5b518b..d0db3f62 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -9,7 +9,7 @@ "@sensebox/sketch-templater": "^1.10.2", "bcrypt": "^5.0.1", "bunyan": "^1.8.15", - "config": "^3.3.3", + "config": "^3.3.4", "got": "^11.8.2", "grpc": "^1.24.5", "isemail": "^3.0.0", diff --git a/yarn.lock b/yarn.lock index 4c18c189..4a3b1811 100644 --- a/yarn.lock +++ b/yarn.lock @@ -873,10 +873,10 @@ config@^1.29.2: dependencies: json5 "^1.0.1" -config@^3.3.3: - version "3.3.3" - resolved "https://registry.yarnpkg.com/config/-/config-3.3.3.tgz#d3c110fce543022c2fde28712e4f1b8440dee101" - integrity sha512-T3RmZQEAji5KYqUQpziWtyGJFli6Khz7h0rpxDwYNjSkr5ynyTWwO7WpfjHzTXclNCDfSWQRcwMb+NwxJesCKw== +config@^3.3.4: + version "3.3.4" + resolved "https://registry.yarnpkg.com/config/-/config-3.3.4.tgz#55811abc2752b38a7b806cbdbc2da79c428312b7" + integrity sha512-URO0m6z+rtENGHqtzO7W7C35iF+H9KVe7JJFps+3TIqZEOHl83NqTAgp5h8ah96m4NPQnx08nPBfbtDU+PgjVA== dependencies: json5 "^2.1.1" From 996f5ba338d06471b83ee3b7e136e3a69ba0e7fb Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 2 Mar 2021 08:04:07 +0100 Subject: [PATCH 136/337] Bump simple-statistics from 7.5.0 to 7.6.0 (#452) Bumps [simple-statistics](https://github.com/simple-statistics/simple-statistics) from 7.5.0 to 7.6.0. - [Release notes](https://github.com/simple-statistics/simple-statistics/releases) - [Changelog](https://github.com/simple-statistics/simple-statistics/blob/master/CHANGELOG.md) - [Commits](https://github.com/simple-statistics/simple-statistics/compare/v7.5.0...v7.6.0) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- packages/api/package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/api/package.json b/packages/api/package.json index 36fc5fce..007e4f86 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -33,7 +33,7 @@ "ms": "^2.1.3", "restify": "^5.2.0", "restify-errors": "^8.0.2", - "simple-statistics": "^7.5.0", + "simple-statistics": "^7.6.0", "stringify-stream": "^1.0.5", "uuid": "^8.3.2" }, diff --git a/yarn.lock b/yarn.lock index 4a3b1811..81c11be9 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3259,10 +3259,10 @@ signal-exit@^3.0.0: resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.3.tgz#a1410c2edd8f077b08b4e253c8eacfcaf057461c" integrity sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA== -simple-statistics@^7.5.0: - version "7.5.0" - resolved "https://registry.yarnpkg.com/simple-statistics/-/simple-statistics-7.5.0.tgz#5761eafcbedad45c07079bcb4e73930ec2bba18d" - integrity sha512-ME7dWm7v730n2ToKW2PPHJ8n8/uur5crNEdvKZrr4Cu5OKxeC9J8FzBoXf/rZRXE5Wr4cy5sOnpvzD92lo6lvA== +simple-statistics@^7.6.0: + version "7.6.0" + resolved "https://registry.yarnpkg.com/simple-statistics/-/simple-statistics-7.6.0.tgz#f438041b5d9d29d94bf595188d543e8042f55c6b" + integrity sha512-fY+fpegHJC5aBZHnyRTHpyoXS1AYjMnz7ojpATdP67WVQGA5D0muM5N9eLhzyrzIiLStjN/a3tILAj7nS+oBqA== slice-ansi@^4.0.0: version "4.0.0" From fe2b9d3239145adcfef5dedba2428b4decd83d68 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 3 Mar 2021 08:08:32 +0100 Subject: [PATCH 137/337] Bump chai from 4.3.0 to 4.3.1 (#453) Bumps [chai](https://github.com/chaijs/chai) from 4.3.0 to 4.3.1. - [Release notes](https://github.com/chaijs/chai/releases) - [Changelog](https://github.com/chaijs/chai/blob/main/History.md) - [Commits](https://github.com/chaijs/chai/compare/4.3.0...4.3.1) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 18 +++++++++--------- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/package.json b/package.json index f92a89b4..e400bacb 100644 --- a/package.json +++ b/package.json @@ -18,7 +18,7 @@ "devDependencies": { "@sensebox/eslint-config-sensebox": "^1.1.0", "@turf/invariant": "^6.1.2", - "chai": "^4.3.0", + "chai": "^4.3.1", "chakram": "^1.5.0", "cheerio": "^1.0.0-rc.5", "csv-parse": "^4.15.3", diff --git a/yarn.lock b/yarn.lock index 81c11be9..fb3e02c3 100644 --- a/yarn.lock +++ b/yarn.lock @@ -658,16 +658,16 @@ chai@3.x.x: deep-eql "^0.1.3" type-detect "^1.0.0" -chai@^4.3.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/chai/-/chai-4.3.0.tgz#5523a5faf7f819c8a92480d70a8cccbadacfc25f" - integrity sha512-/BFd2J30EcOwmdOgXvVsmM48l0Br0nmZPlO0uOW4XKh6kpsUumRXBgPV+IlaqFaqr9cYbeoZAM1Npx0i4A+aiA== +chai@^4.3.1: + version "4.3.1" + resolved "https://registry.yarnpkg.com/chai/-/chai-4.3.1.tgz#6fc6af447610709818e5c45116207d60b8a49cfd" + integrity sha512-JClPZFGRcSl7X8dYzlCJY7v+X1fBA+9Y339Y8EqhBVfp0QC1hTnaf7nMfR+XZ74clkBC64b0iEw2cWKHt3EVqA== dependencies: assertion-error "^1.1.0" check-error "^1.0.2" deep-eql "^3.0.1" get-func-name "^2.0.0" - pathval "^1.1.0" + pathval "^1.1.1" type-detect "^4.0.5" chakram@^1.5.0: @@ -2814,10 +2814,10 @@ path-key@^3.1.0: resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== -pathval@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/pathval/-/pathval-1.1.0.tgz#b942e6d4bde653005ef6b71361def8727d0645e0" - integrity sha1-uULm1L3mUwBe9rcTYd74cn0GReA= +pathval@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/pathval/-/pathval-1.1.1.tgz#8534e77a77ce7ac5a2512ea21e0fdb8fcf6c3d8d" + integrity sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ== performance-now@^2.1.0: version "2.1.0" From 0e8d90b4692621ed6c38f0fd7a1332e6355b20b1 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 4 Mar 2021 08:58:21 +0100 Subject: [PATCH 138/337] Bump chai from 4.3.1 to 4.3.3 (#454) Bumps [chai](https://github.com/chaijs/chai) from 4.3.1 to 4.3.3. - [Release notes](https://github.com/chaijs/chai/releases) - [Changelog](https://github.com/chaijs/chai/blob/main/History.md) - [Commits](https://github.com/chaijs/chai/compare/4.3.1...4.3.3) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index e400bacb..e19af57e 100644 --- a/package.json +++ b/package.json @@ -18,7 +18,7 @@ "devDependencies": { "@sensebox/eslint-config-sensebox": "^1.1.0", "@turf/invariant": "^6.1.2", - "chai": "^4.3.1", + "chai": "^4.3.3", "chakram": "^1.5.0", "cheerio": "^1.0.0-rc.5", "csv-parse": "^4.15.3", diff --git a/yarn.lock b/yarn.lock index fb3e02c3..734e0ec6 100644 --- a/yarn.lock +++ b/yarn.lock @@ -658,10 +658,10 @@ chai@3.x.x: deep-eql "^0.1.3" type-detect "^1.0.0" -chai@^4.3.1: - version "4.3.1" - resolved "https://registry.yarnpkg.com/chai/-/chai-4.3.1.tgz#6fc6af447610709818e5c45116207d60b8a49cfd" - integrity sha512-JClPZFGRcSl7X8dYzlCJY7v+X1fBA+9Y339Y8EqhBVfp0QC1hTnaf7nMfR+XZ74clkBC64b0iEw2cWKHt3EVqA== +chai@^4.3.3: + version "4.3.3" + resolved "https://registry.yarnpkg.com/chai/-/chai-4.3.3.tgz#f2b2ad9736999d07a7ff95cf1e7086c43a76f72d" + integrity sha512-MPSLOZwxxnA0DhLE84klnGPojWFK5KuhP7/j5dTsxpr2S3XlkqJP5WbyYl1gCTWvG2Z5N+HD4F472WsbEZL6Pw== dependencies: assertion-error "^1.1.0" check-error "^1.0.2" From 282a16f3e98ef0c4a2d8d03ac3d1d2a8953053ad Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 8 Mar 2021 08:54:57 +0100 Subject: [PATCH 139/337] Bump mocha from 8.3.0 to 8.3.1 (#455) * Bump mocha from 8.3.0 to 8.3.1 Bumps [mocha](https://github.com/mochajs/mocha) from 8.3.0 to 8.3.1. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v8.3.0...v8.3.1) Signed-off-by: dependabot[bot] * add client.end and return to mqtt test helper * make linter happy Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape --- package.json | 2 +- tests/helpers/mqtt.js | 3 +++ yarn.lock | 8 ++++---- 3 files changed, 8 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index e19af57e..1a1718f4 100644 --- a/package.json +++ b/package.json @@ -24,7 +24,7 @@ "csv-parse": "^4.15.3", "eslint": "7.21.0", "mimelib": "^0.3.1", - "mocha": "^8.3.0", + "mocha": "^8.3.1", "mqtt": "^3.0.0", "randomgeojson": "^1.0.0" } diff --git a/tests/helpers/mqtt.js b/tests/helpers/mqtt.js index 9194137b..dee8c3dc 100644 --- a/tests/helpers/mqtt.js +++ b/tests/helpers/mqtt.js @@ -9,7 +9,10 @@ const publishMqttMessage = function publishMqttMessage (server, topic, message) client.on('connect', function () { client.publish(topic, message, {}, function (err) { if (err) { + client.end(); reject(err); + + return; } client.end(); diff --git a/yarn.lock b/yarn.lock index 734e0ec6..0fa71e17 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2361,10 +2361,10 @@ mkdirp@^1.0.3, mkdirp@^1.0.4: resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== -mocha@^8.3.0: - version "8.3.0" - resolved "https://registry.yarnpkg.com/mocha/-/mocha-8.3.0.tgz#a83a7432d382ae1ca29686062d7fdc2c36f63fe5" - integrity sha512-TQqyC89V1J/Vxx0DhJIXlq9gbbL9XFNdeLQ1+JsnZsVaSOV1z3tWfw0qZmQJGQRIfkvZcs7snQnZnOCKoldq1Q== +mocha@^8.3.1: + version "8.3.1" + resolved "https://registry.yarnpkg.com/mocha/-/mocha-8.3.1.tgz#b9eda6da1eb8cb8d29860a9c2205de5b8a076560" + integrity sha512-5SBMxANWqOv5bw3Hx+HVgaWlcWcFEQDUdaUAr1AUU+qwtx6cowhn7gEDT/DwQP7uYxnvShdUOVLbTYAHOEGfDQ== dependencies: "@ungap/promise-all-settled" "1.1.2" ansi-colors "4.1.1" From 235d89283cebb4a5f24cd8300a3fb415217470e3 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 11 Mar 2021 09:38:37 +0100 Subject: [PATCH 140/337] Bump config from 3.3.4 to 3.3.6 (#456) Bumps [config](https://github.com/lorenwest/node-config) from 3.3.4 to 3.3.6. - [Release notes](https://github.com/lorenwest/node-config/releases) - [Changelog](https://github.com/lorenwest/node-config/blob/master/History.md) - [Commits](https://github.com/lorenwest/node-config/commits) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- packages/api/package.json | 2 +- packages/models/package.json | 2 +- yarn.lock | 8 ++++---- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/api/package.json b/packages/api/package.json index 007e4f86..22381b03 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -21,7 +21,7 @@ "@turf/triangle-grid": "^6.3.0", "apicache": "^1.6.2", "bunyan": "^1.8.15", - "config": "^3.3.4", + "config": "^3.3.6", "csv-stringify": "^5.6.2", "dashify": "^2.0.0", "got": "^11.8.2", diff --git a/packages/models/package.json b/packages/models/package.json index d0db3f62..45af1090 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -9,7 +9,7 @@ "@sensebox/sketch-templater": "^1.10.2", "bcrypt": "^5.0.1", "bunyan": "^1.8.15", - "config": "^3.3.4", + "config": "^3.3.6", "got": "^11.8.2", "grpc": "^1.24.5", "isemail": "^3.0.0", diff --git a/yarn.lock b/yarn.lock index 0fa71e17..ba5e339a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -873,10 +873,10 @@ config@^1.29.2: dependencies: json5 "^1.0.1" -config@^3.3.4: - version "3.3.4" - resolved "https://registry.yarnpkg.com/config/-/config-3.3.4.tgz#55811abc2752b38a7b806cbdbc2da79c428312b7" - integrity sha512-URO0m6z+rtENGHqtzO7W7C35iF+H9KVe7JJFps+3TIqZEOHl83NqTAgp5h8ah96m4NPQnx08nPBfbtDU+PgjVA== +config@^3.3.6: + version "3.3.6" + resolved "https://registry.yarnpkg.com/config/-/config-3.3.6.tgz#b87799db7399cc34988f55379b5f43465b1b065c" + integrity sha512-Hj5916C5HFawjYJat1epbyY2PlAgLpBtDUlr0MxGLgo3p5+7kylyvnRY18PqJHgnNWXcdd0eWDemT7eYWuFgwg== dependencies: json5 "^2.1.1" From 57d952538c7c6b6936940584a02055775e569568 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 11 Mar 2021 09:42:03 +0100 Subject: [PATCH 141/337] Bump grpc from 1.24.5 to 1.24.6 (#457) Bumps [grpc](https://github.com/grpc/grpc-node) from 1.24.5 to 1.24.6. - [Release notes](https://github.com/grpc/grpc-node/releases) - [Commits](https://github.com/grpc/grpc-node/compare/grpc@1.24.5...grpc@1.24.6) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape --- packages/models/package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/models/package.json b/packages/models/package.json index 45af1090..002a5baf 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -11,7 +11,7 @@ "bunyan": "^1.8.15", "config": "^3.3.6", "got": "^11.8.2", - "grpc": "^1.24.5", + "grpc": "^1.24.6", "isemail": "^3.0.0", "jsonpath": "^1.1.0", "lodash.isequal": "^4.5.0", diff --git a/yarn.lock b/yarn.lock index ba5e339a..62f43550 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1678,10 +1678,10 @@ growl@1.10.5: resolved "https://registry.yarnpkg.com/growl/-/growl-1.10.5.tgz#f2735dc2283674fa67478b10181059355c369e5e" integrity sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA== -grpc@^1.24.5: - version "1.24.5" - resolved "https://registry.yarnpkg.com/grpc/-/grpc-1.24.5.tgz#ea39fa44b0397c5881009337de9e8b44b919fe54" - integrity sha512-+dY6lfLPovblJO5QitBQM2L67efI5JjBzCqJQURSINPzoFHos+5bs4DHwtes7BF+dkx5eN3fx/VUFRCmWTsE7g== +grpc@^1.24.6: + version "1.24.6" + resolved "https://registry.yarnpkg.com/grpc/-/grpc-1.24.6.tgz#1862a9d990f79cfa20b962d77f090000d915469c" + integrity sha512-BtifKdClMYU0ZEo0Pdr2WV9ZH54AoEdIcp2BfJkh87g2R3HoNPLYKHRYefw/ByxrCdVDTAy3hkraFISpqsRcrw== dependencies: "@types/bytebuffer" "^5.0.40" lodash.camelcase "^4.3.0" From d31ab4193b586641fc5820fd35b2ee824d146562 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 15 Mar 2021 10:34:20 +0100 Subject: [PATCH 142/337] Bump chai from 4.3.3 to 4.3.4 (#458) Bumps [chai](https://github.com/chaijs/chai) from 4.3.3 to 4.3.4. - [Release notes](https://github.com/chaijs/chai/releases) - [Changelog](https://github.com/chaijs/chai/blob/main/History.md) - [Commits](https://github.com/chaijs/chai/compare/4.3.3...v4.3.4) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 1a1718f4..c427742a 100644 --- a/package.json +++ b/package.json @@ -18,7 +18,7 @@ "devDependencies": { "@sensebox/eslint-config-sensebox": "^1.1.0", "@turf/invariant": "^6.1.2", - "chai": "^4.3.3", + "chai": "^4.3.4", "chakram": "^1.5.0", "cheerio": "^1.0.0-rc.5", "csv-parse": "^4.15.3", diff --git a/yarn.lock b/yarn.lock index 62f43550..f91330ab 100644 --- a/yarn.lock +++ b/yarn.lock @@ -658,10 +658,10 @@ chai@3.x.x: deep-eql "^0.1.3" type-detect "^1.0.0" -chai@^4.3.3: - version "4.3.3" - resolved "https://registry.yarnpkg.com/chai/-/chai-4.3.3.tgz#f2b2ad9736999d07a7ff95cf1e7086c43a76f72d" - integrity sha512-MPSLOZwxxnA0DhLE84klnGPojWFK5KuhP7/j5dTsxpr2S3XlkqJP5WbyYl1gCTWvG2Z5N+HD4F472WsbEZL6Pw== +chai@^4.3.4: + version "4.3.4" + resolved "https://registry.yarnpkg.com/chai/-/chai-4.3.4.tgz#b55e655b31e1eac7099be4c08c21964fce2e6c49" + integrity sha512-yS5H68VYOCtN1cjfwumDSuzn/9c+yza4f3reKXlE5rUg7SFcCEy90gJvydNgOYtblyf4Zi6jIWRnXOgErta0KA== dependencies: assertion-error "^1.1.0" check-error "^1.0.2" From e078010cf6e99a8fa68b7a92acafaf5f4d09acb1 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 15 Mar 2021 09:36:31 +0000 Subject: [PATCH 143/337] Bump mocha from 8.3.1 to 8.3.2 (#459) Bumps [mocha](https://github.com/mochajs/mocha) from 8.3.1 to 8.3.2. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v8.3.1...v8.3.2) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index c427742a..323fc05b 100644 --- a/package.json +++ b/package.json @@ -24,7 +24,7 @@ "csv-parse": "^4.15.3", "eslint": "7.21.0", "mimelib": "^0.3.1", - "mocha": "^8.3.1", + "mocha": "^8.3.2", "mqtt": "^3.0.0", "randomgeojson": "^1.0.0" } diff --git a/yarn.lock b/yarn.lock index f91330ab..ee20982f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2361,10 +2361,10 @@ mkdirp@^1.0.3, mkdirp@^1.0.4: resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== -mocha@^8.3.1: - version "8.3.1" - resolved "https://registry.yarnpkg.com/mocha/-/mocha-8.3.1.tgz#b9eda6da1eb8cb8d29860a9c2205de5b8a076560" - integrity sha512-5SBMxANWqOv5bw3Hx+HVgaWlcWcFEQDUdaUAr1AUU+qwtx6cowhn7gEDT/DwQP7uYxnvShdUOVLbTYAHOEGfDQ== +mocha@^8.3.2: + version "8.3.2" + resolved "https://registry.yarnpkg.com/mocha/-/mocha-8.3.2.tgz#53406f195fa86fbdebe71f8b1c6fb23221d69fcc" + integrity sha512-UdmISwr/5w+uXLPKspgoV7/RXZwKRTiTjJ2/AC5ZiEztIoOYdfKb19+9jNmEInzx5pBsCyJQzarAxqIGBNYJhg== dependencies: "@ungap/promise-all-settled" "1.1.2" ansi-colors "4.1.1" From 46d36ef028f87ba230e3c6badd4f458cf393762c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 15 Mar 2021 09:38:51 +0000 Subject: [PATCH 144/337] Bump eslint from 7.21.0 to 7.22.0 (#460) Bumps [eslint](https://github.com/eslint/eslint) from 7.21.0 to 7.22.0. - [Release notes](https://github.com/eslint/eslint/releases) - [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md) - [Commits](https://github.com/eslint/eslint/compare/v7.21.0...v7.22.0) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 32 ++++++++++++++++++++++---------- 2 files changed, 23 insertions(+), 11 deletions(-) diff --git a/package.json b/package.json index 323fc05b..5ed16668 100644 --- a/package.json +++ b/package.json @@ -22,7 +22,7 @@ "chakram": "^1.5.0", "cheerio": "^1.0.0-rc.5", "csv-parse": "^4.15.3", - "eslint": "7.21.0", + "eslint": "7.22.0", "mimelib": "^0.3.1", "mocha": "^8.3.2", "mqtt": "^3.0.0", diff --git a/yarn.lock b/yarn.lock index ee20982f..bb886a92 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1300,10 +1300,10 @@ eslint-visitor-keys@^2.0.0: resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.0.0.tgz#21fdc8fbcd9c795cc0321f0563702095751511a8" integrity sha512-QudtT6av5WXels9WjIM7qz1XD1cWGvX4gGXvp/zBn9nXG02D0utdU3Em2m/QjTnrsk6bBjmCygl3rmj118msQQ== -eslint@7.21.0: - version "7.21.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.21.0.tgz#4ecd5b8c5b44f5dedc9b8a110b01bbfeb15d1c83" - integrity sha512-W2aJbXpMNofUp0ztQaF40fveSsJBjlSCSWpy//gzfTvwC+USs/nceBrKmlJOiM8r1bLwP2EuYkCqArn/6QTIgg== +eslint@7.22.0: + version "7.22.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.22.0.tgz#07ecc61052fec63661a2cab6bd507127c07adc6f" + integrity sha512-3VawOtjSJUQiiqac8MQc+w457iGLfuNGLFn8JmF051tTKbh5/x/0vlcEj8OgDCaw7Ysa2Jn8paGshV7x2abKXg== dependencies: "@babel/code-frame" "7.12.11" "@eslint/eslintrc" "^0.4.0" @@ -1322,7 +1322,7 @@ eslint@7.21.0: file-entry-cache "^6.0.1" functional-red-black-tree "^1.0.1" glob-parent "^5.0.0" - globals "^12.1.0" + globals "^13.6.0" ignore "^4.0.6" import-fresh "^3.0.0" imurmurhash "^0.1.4" @@ -1330,7 +1330,7 @@ eslint@7.21.0: js-yaml "^3.13.1" json-stable-stringify-without-jsonify "^1.0.1" levn "^0.4.1" - lodash "^4.17.20" + lodash "^4.17.21" minimatch "^3.0.4" natural-compare "^1.4.0" optionator "^0.9.1" @@ -1656,6 +1656,13 @@ globals@^12.1.0: dependencies: type-fest "^0.8.1" +globals@^13.6.0: + version "13.6.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-13.6.0.tgz#d77138e53738567bb96a3916ff6f6b487af20ef7" + integrity sha512-YFKCX0SiPg7l5oKYCJ2zZGxcXprVXHcSnVuvzrT3oSENQonVLqM5pf9fN5dLGZGyCjhw8TN8Btwe/jKnZ0pjvQ== + dependencies: + type-fest "^0.20.2" + got@^11.8.2: version "11.8.2" resolved "https://registry.yarnpkg.com/got/-/got-11.8.2.tgz#7abb3959ea28c31f3576f1576c1effce23f33599" @@ -2223,10 +2230,10 @@ lodash.once@^4.0.0: resolved "https://registry.yarnpkg.com/lodash.once/-/lodash.once-4.1.1.tgz#0dd3971213c7c56df880977d504c88fb471a97ac" integrity sha1-DdOXEhPHxW34gJd9UEyI+0cal6w= -lodash@^4.14.0, lodash@^4.17.15, lodash@^4.17.20, lodash@^4.17.4, lodash@^4.2.1: - version "4.17.20" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.20.tgz#b44a9b6297bcb698f1c51a3545a2b3b368d59c52" - integrity sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA== +lodash@^4.14.0, lodash@^4.17.15, lodash@^4.17.20, lodash@^4.17.21, lodash@^4.17.4, lodash@^4.2.1: + version "4.17.21" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" + integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== log-symbols@4.0.0: version "4.0.0" @@ -3608,6 +3615,11 @@ type-detect@^4.0.0, type-detect@^4.0.5: resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c" integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g== +type-fest@^0.20.2: + version "0.20.2" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.20.2.tgz#1bf207f4b28f91583666cb5fbd327887301cd5f4" + integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ== + type-fest@^0.8.1: version "0.8.1" resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d" From 9f32eefe77c1adec835a95a2cb6946ca824ce2b0 Mon Sep 17 00:00:00 2001 From: Felix Erdmann Date: Mon, 22 Mar 2021 08:58:18 +0100 Subject: [PATCH 145/337] Lightsensor (#462) * bump node-sketch-templater version * v0.0.29 * bump api models --- packages/api/package.json | 2 +- packages/models/CHANGELOG.md | 3 +++ packages/models/package.json | 4 ++-- yarn.lock | 8 ++++---- 4 files changed, 10 insertions(+), 7 deletions(-) diff --git a/packages/api/package.json b/packages/api/package.json index 22381b03..c5a08797 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -10,7 +10,7 @@ "Norwin Roosen" ], "dependencies": { - "@sensebox/opensensemap-api-models": "^0.0.28", + "@sensebox/opensensemap-api-models": "^0.0.29", "@turf/area": "^6.3.0", "@turf/bbox": "^6.3.0", "@turf/centroid": "^6.3.0", diff --git a/packages/models/CHANGELOG.md b/packages/models/CHANGELOG.md index 67328430..93fb6adf 100644 --- a/packages/models/CHANGELOG.md +++ b/packages/models/CHANGELOG.md @@ -2,6 +2,9 @@ ## Unreleased +## v0.0.29 +- Update @sensebox/node-sketch-templater to v1.10.3 + ## v0.0.28 - Update @sensebox/node-sketch-templater to v1.10.2 diff --git a/packages/models/package.json b/packages/models/package.json index 002a5baf..526f63c5 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -1,12 +1,12 @@ { "name": "@sensebox/opensensemap-api-models", "description": "openSenseMap data models and database connection", - "version": "0.0.28", + "version": "0.0.29", "main": "index.js", "license": "MIT", "dependencies": { "@sensebox/osem-protos": "^1.1.0", - "@sensebox/sketch-templater": "^1.10.2", + "@sensebox/sketch-templater": "^1.10.3", "bcrypt": "^5.0.1", "bunyan": "^1.8.15", "config": "^3.3.6", diff --git a/yarn.lock b/yarn.lock index bb886a92..3bed9ab2 100644 --- a/yarn.lock +++ b/yarn.lock @@ -72,10 +72,10 @@ resolved "https://registry.yarnpkg.com/@sensebox/osem-protos/-/osem-protos-1.1.0.tgz#a7de8bc6be867953f1309181a012063c23299e79" integrity sha512-H+nUVcWlT0dvIqfJnYHuX9JBcCkP1ZKGE5YTRNWPbAEdZ11h+srpQsmeI58wK5hJcdukaZAjc4Dy96IeGM77aA== -"@sensebox/sketch-templater@^1.10.2": - version "1.10.2" - resolved "https://registry.yarnpkg.com/@sensebox/sketch-templater/-/sketch-templater-1.10.2.tgz#f8bf443cbc264bbf3af8dd5c8e90b5071b688dab" - integrity sha512-uiaSROu9KAt/nPFX1vwb82peZVtr2n3rlNlSP8Hu74oTPurl6mkn4XQ7h+tPIQkpwi7y8tqGM0k7YjGBmsKL8w== +"@sensebox/sketch-templater@^1.10.3": + version "1.10.3" + resolved "https://registry.yarnpkg.com/@sensebox/sketch-templater/-/sketch-templater-1.10.3.tgz#97b739027147c0c71ccc3cf3dbfe005f5bcc31aa" + integrity sha512-77sfo1x0aJ+KPc9PntJFfwh+z5CHYHYCWlER0PXmvOHY3S7gVTYM5Ug99OUc4LpGaHP+C2FTtaNhEQgF66EoLA== dependencies: config "^1.29.2" dedent "^0.7.0" From bc6625fb0b7a677977a15731d6e1c151893c9db6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 29 Mar 2021 06:31:31 +0000 Subject: [PATCH 146/337] Bump eslint from 7.22.0 to 7.23.0 (#463) Bumps [eslint](https://github.com/eslint/eslint) from 7.22.0 to 7.23.0. - [Release notes](https://github.com/eslint/eslint/releases) - [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md) - [Commits](https://github.com/eslint/eslint/compare/v7.22.0...v7.23.0) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 5ed16668..15ab8c1e 100644 --- a/package.json +++ b/package.json @@ -22,7 +22,7 @@ "chakram": "^1.5.0", "cheerio": "^1.0.0-rc.5", "csv-parse": "^4.15.3", - "eslint": "7.22.0", + "eslint": "7.23.0", "mimelib": "^0.3.1", "mocha": "^8.3.2", "mqtt": "^3.0.0", diff --git a/yarn.lock b/yarn.lock index 3bed9ab2..d875f777 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1300,10 +1300,10 @@ eslint-visitor-keys@^2.0.0: resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.0.0.tgz#21fdc8fbcd9c795cc0321f0563702095751511a8" integrity sha512-QudtT6av5WXels9WjIM7qz1XD1cWGvX4gGXvp/zBn9nXG02D0utdU3Em2m/QjTnrsk6bBjmCygl3rmj118msQQ== -eslint@7.22.0: - version "7.22.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.22.0.tgz#07ecc61052fec63661a2cab6bd507127c07adc6f" - integrity sha512-3VawOtjSJUQiiqac8MQc+w457iGLfuNGLFn8JmF051tTKbh5/x/0vlcEj8OgDCaw7Ysa2Jn8paGshV7x2abKXg== +eslint@7.23.0: + version "7.23.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.23.0.tgz#8d029d252f6e8cf45894b4bee08f5493f8e94325" + integrity sha512-kqvNVbdkjzpFy0XOszNwjkKzZ+6TcwCQ/h+ozlcIWwaimBBuhlQ4nN6kbiM2L+OjDcznkTJxzYfRFH92sx4a0Q== dependencies: "@babel/code-frame" "7.12.11" "@eslint/eslintrc" "^0.4.0" From 0cbea9584b241bdf744cb6611e0503cee38db4a0 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 31 Mar 2021 06:59:18 +0000 Subject: [PATCH 147/337] Bump simple-statistics from 7.6.0 to 7.7.0 (#464) Bumps [simple-statistics](https://github.com/simple-statistics/simple-statistics) from 7.6.0 to 7.7.0. - [Release notes](https://github.com/simple-statistics/simple-statistics/releases) - [Changelog](https://github.com/simple-statistics/simple-statistics/blob/master/CHANGELOG.md) - [Commits](https://github.com/simple-statistics/simple-statistics/compare/v7.6.0...v7.7.0) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- packages/api/package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/api/package.json b/packages/api/package.json index c5a08797..36f2a86c 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -33,7 +33,7 @@ "ms": "^2.1.3", "restify": "^5.2.0", "restify-errors": "^8.0.2", - "simple-statistics": "^7.6.0", + "simple-statistics": "^7.7.0", "stringify-stream": "^1.0.5", "uuid": "^8.3.2" }, diff --git a/yarn.lock b/yarn.lock index d875f777..adc68efd 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3266,10 +3266,10 @@ signal-exit@^3.0.0: resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.3.tgz#a1410c2edd8f077b08b4e253c8eacfcaf057461c" integrity sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA== -simple-statistics@^7.6.0: - version "7.6.0" - resolved "https://registry.yarnpkg.com/simple-statistics/-/simple-statistics-7.6.0.tgz#f438041b5d9d29d94bf595188d543e8042f55c6b" - integrity sha512-fY+fpegHJC5aBZHnyRTHpyoXS1AYjMnz7ojpATdP67WVQGA5D0muM5N9eLhzyrzIiLStjN/a3tILAj7nS+oBqA== +simple-statistics@^7.7.0: + version "7.7.0" + resolved "https://registry.yarnpkg.com/simple-statistics/-/simple-statistics-7.7.0.tgz#cfef964473c940f2adfec85ffde8591a5a933a46" + integrity sha512-TAsZRUJ7FD/yCnm5UBgyWU7bP1gOPsw9n/dVrE8hQ+BF1zJPgDJ5X/MOnxG+HE/7nejSpJLJLdmTh7bkfsFkRw== slice-ansi@^4.0.0: version "4.0.0" From 33b1f1f238ecd72295c62c3663af8597e4750f05 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 2 Apr 2021 12:35:35 +0000 Subject: [PATCH 148/337] Bump jsonpath from 1.1.0 to 1.1.1 (#465) Bumps [jsonpath](https://github.com/dchester/jsonpath) from 1.1.0 to 1.1.1. - [Release notes](https://github.com/dchester/jsonpath/releases) - [Commits](https://github.com/dchester/jsonpath/commits) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- packages/models/package.json | 2 +- yarn.lock | 18 +++++++++--------- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/packages/models/package.json b/packages/models/package.json index 526f63c5..71c70d75 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -13,7 +13,7 @@ "got": "^11.8.2", "grpc": "^1.24.6", "isemail": "^3.0.0", - "jsonpath": "^1.1.0", + "jsonpath": "^1.1.1", "lodash.isequal": "^4.5.0", "moment": "^2.29.1", "mongoose": "^4.13.21", diff --git a/yarn.lock b/yarn.lock index adc68efd..ed9ff370 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2069,14 +2069,14 @@ json5@^2.1.1: dependencies: minimist "^1.2.5" -jsonpath@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/jsonpath/-/jsonpath-1.1.0.tgz#ff3e9e4746eae77c11bc09d542e7219333c28055" - integrity sha512-CZHwa1sZOf42qkIyK7evwToFXeTB4iplbl6Z9CVwU0wmBQPffL6gtYJXCoeciJoZENMuzaidPjhp2iOLRei4wQ== +jsonpath@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/jsonpath/-/jsonpath-1.1.1.tgz#0ca1ed8fb65bb3309248cc9d5466d12d5b0b9901" + integrity sha512-l6Cg7jRpixfbgoWgkrl77dgEj8RPvND0wMH6TwQmi9Qs4TFfS9u5cUFnbeKTwj5ga5Y3BTGGNI28k117LJ009w== dependencies: esprima "1.2.2" static-eval "2.0.2" - underscore "1.7.0" + underscore "1.12.1" jsonwebtoken@^8.1.0: version "8.5.1" @@ -3650,10 +3650,10 @@ unc-path-regex@^0.1.2: resolved "https://registry.yarnpkg.com/unc-path-regex/-/unc-path-regex-0.1.2.tgz#e73dd3d7b0d7c5ed86fbac6b0ae7d8c6a69d50fa" integrity sha1-5z3T17DXxe2G+6xrCufYxqadUPo= -underscore@1.7.0: - version "1.7.0" - resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.7.0.tgz#6bbaf0877500d36be34ecaa584e0db9fef035209" - integrity sha1-a7rwh3UA02vjTsqlhODbn+8DUgk= +underscore@1.12.1: + version "1.12.1" + resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.12.1.tgz#7bb8cc9b3d397e201cf8553336d262544ead829e" + integrity sha512-hEQt0+ZLDVUMhebKxL4x1BTtDY7bavVofhZ9KZ4aI26X9SRaE+Y3m83XUL1UP2jn8ynjndwCCpEHdUG+9pP1Tw== unique-stream@^2.0.2: version "2.3.1" From 8bc2e83d84d8e476a6844a2db271cc5e31550b39 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 8 Apr 2021 10:53:23 +0000 Subject: [PATCH 149/337] Bump millify from 3.5.0 to 3.5.2 (#466) Bumps [millify](https://github.com/izolate/millify) from 3.5.0 to 3.5.2. - [Release notes](https://github.com/izolate/millify/releases) - [Changelog](https://github.com/izolate/millify/blob/master/CHANGELOG.md) - [Commits](https://github.com/izolate/millify/compare/v3.5.0...v3.5.2) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- packages/api/package.json | 2 +- yarn.lock | 115 +++----------------------------------- 2 files changed, 10 insertions(+), 107 deletions(-) diff --git a/packages/api/package.json b/packages/api/package.json index 36f2a86c..a761067e 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -28,7 +28,7 @@ "honeybadger": "^1.4.0", "isemail": "^3.0.0", "jsonwebtoken": "^8.1.0", - "millify": "^3.5.0", + "millify": "^3.5.2", "moment": "^2.29.1", "ms": "^2.1.3", "restify": "^5.2.0", diff --git a/yarn.lock b/yarn.lock index ed9ff370..e5cb47bb 100644 --- a/yarn.lock +++ b/yarn.lock @@ -624,11 +624,6 @@ camelcase@^2.0.1: resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-2.1.1.tgz#7c1d16d679a1bbe59ca02cacecfb011e201f5a1f" integrity sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8= -camelcase@^5.0.0: - version "5.3.1" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" - integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== - camelcase@^6.0.0: version "6.2.0" resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.2.0.tgz#924af881c9d525ac9d87f40d964e5cea982a1809" @@ -764,15 +759,6 @@ cliui@^3.0.3: strip-ansi "^3.0.1" wrap-ansi "^2.0.0" -cliui@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-6.0.0.tgz#511d702c0c4e41ca156d7d0e96021f23e13225b1" - integrity sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ== - dependencies: - string-width "^4.2.0" - strip-ansi "^6.0.0" - wrap-ansi "^6.2.0" - cliui@^7.0.2: version "7.0.4" resolved "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f" @@ -993,7 +979,7 @@ debug@^3.2.6: dependencies: ms "^2.1.1" -decamelize@^1.1.1, decamelize@^1.2.0: +decamelize@^1.1.1: version "1.2.0" resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= @@ -1473,14 +1459,6 @@ find-up@5.0.0: locate-path "^6.0.0" path-exists "^4.0.0" -find-up@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19" - integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw== - dependencies: - locate-path "^5.0.0" - path-exists "^4.0.0" - flat-cache@^3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.0.4.tgz#61b0338302b2fe9f957dcc32fc2a87f1c3048b11" @@ -1571,7 +1549,7 @@ geojson-rbush@3.x: "@turf/meta" "6.x" rbush "^2.0.0" -get-caller-file@^2.0.1, get-caller-file@^2.0.5: +get-caller-file@^2.0.5: version "2.0.5" resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== @@ -2161,13 +2139,6 @@ levn@~0.3.0: prelude-ls "~1.1.2" type-check "~0.3.2" -locate-path@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz#1afba396afd676a6d42504d0a67a3a7eb9f62aa0" - integrity sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g== - dependencies: - p-locate "^4.1.0" - locate-path@^6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-6.0.0.tgz#55321eb309febbc59c4801d931a72452a681d286" @@ -2267,12 +2238,12 @@ lru-cache@^6.0.0: dependencies: yallist "^4.0.0" -millify@^3.5.0: - version "3.5.0" - resolved "https://registry.yarnpkg.com/millify/-/millify-3.5.0.tgz#8ac0e76983725c5ccf6b4bd822a53f5bc9f56b4b" - integrity sha512-9rBrp4dbvJy9hyRiUnKgfCgfoR8ZGdn3rL1AQw4rGrDoyyzjhMeH+KAlYB2qdcsOJ35iS1CcpaYYP1UQOnzLCw== +millify@^3.5.2: + version "3.5.2" + resolved "https://registry.yarnpkg.com/millify/-/millify-3.5.2.tgz#787dcdf55bd8161621c4d3c55a0b9443d89eabd2" + integrity sha512-MdcYAP+h3GR5BivnkBHov4nbkfAB2dHiDhzEui9ZtrsHUTGZmsM3zxIFhEjoQSWOFfRx+Yp0eYCWzUvgFEvAhw== dependencies: - yargs "^15.3.1" + yargs "^16.2.0" mime-db@1.44.0: version "1.44.0" @@ -2749,13 +2720,6 @@ p-cancelable@^2.0.0: resolved "https://registry.yarnpkg.com/p-cancelable/-/p-cancelable-2.0.0.tgz#4a3740f5bdaf5ed5d7c3e34882c6fb5d6b266a6e" integrity sha512-wvPXDmbMmu2ksjkB4Z3nZWTSkJEb9lqVdMaCKpZUGJG9TMiNp9XcbG3fn9fPKjem04fJMJnXoyFPk2FmgiaiNg== -p-limit@^2.2.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" - integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== - dependencies: - p-try "^2.0.0" - p-limit@^3.0.2: version "3.1.0" resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.1.0.tgz#e1daccbe78d0d1388ca18c64fea38e3e57e3706b" @@ -2763,13 +2727,6 @@ p-limit@^3.0.2: dependencies: yocto-queue "^0.1.0" -p-locate@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz#a3428bb7088b3a60292f66919278b7c297ad4f07" - integrity sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A== - dependencies: - p-limit "^2.2.0" - p-locate@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-5.0.0.tgz#83c8315c6785005e3bd021839411c9e110e6d834" @@ -2777,11 +2734,6 @@ p-locate@^5.0.0: dependencies: p-limit "^3.0.2" -p-try@^2.0.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" - integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== - parent-module@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" @@ -3090,11 +3042,6 @@ require-from-string@^2.0.2: resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909" integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw== -require-main-filename@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-2.0.0.tgz#d0b329ecc7cc0f61649f62215be69af54aa8989b" - integrity sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg== - require_optional@~1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/require_optional/-/require_optional-1.0.1.tgz#4cf35a4247f64ca3df8c2ef208cc494b1ca8fc2e" @@ -3244,7 +3191,7 @@ serialize-javascript@5.0.1: dependencies: randombytes "^2.1.0" -set-blocking@^2.0.0, set-blocking@~2.0.0: +set-blocking@~2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc= @@ -3732,11 +3679,6 @@ websocket-stream@^5.1.2: ws "^3.2.0" xtend "^4.0.0" -which-module@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" - integrity sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho= - which@2.0.2, which@^2.0.1: version "2.0.2" resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" @@ -3774,15 +3716,6 @@ wrap-ansi@^2.0.0: string-width "^1.0.1" strip-ansi "^3.0.1" -wrap-ansi@^6.2.0: - version "6.2.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-6.2.0.tgz#e9393ba07102e6c91a3b221478f0257cd2856e53" - integrity sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA== - dependencies: - ansi-styles "^4.0.0" - string-width "^4.1.0" - strip-ansi "^6.0.0" - wrap-ansi@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" @@ -3816,11 +3749,6 @@ y18n@^3.2.0: resolved "https://registry.yarnpkg.com/y18n/-/y18n-3.2.1.tgz#6d15fba884c08679c0d77e88e7759e811e07fa41" integrity sha1-bRX7qITAhnnA136I53WegR4H+kE= -y18n@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.0.tgz#95ef94f85ecc81d007c264e190a120f0a3c8566b" - integrity sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w== - y18n@^5.0.5: version "5.0.5" resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.5.tgz#8769ec08d03b1ea2df2500acef561743bbb9ab18" @@ -3846,14 +3774,6 @@ yargs-parser@20.2.4: resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.4.tgz#b42890f14566796f85ae8e3a25290d205f154a54" integrity sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA== -yargs-parser@^18.1.1: - version "18.1.3" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-18.1.3.tgz#be68c4975c6b2abf469236b0c870362fab09a7b0" - integrity sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ== - dependencies: - camelcase "^5.0.0" - decamelize "^1.2.0" - yargs-parser@^20.2.2: version "20.2.6" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.6.tgz#69f920addf61aafc0b8b89002f5d66e28f2d8b20" @@ -3869,7 +3789,7 @@ yargs-unparser@2.0.0: flat "^5.0.2" is-plain-obj "^2.1.0" -yargs@16.2.0: +yargs@16.2.0, yargs@^16.2.0: version "16.2.0" resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== @@ -3882,23 +3802,6 @@ yargs@16.2.0: y18n "^5.0.5" yargs-parser "^20.2.2" -yargs@^15.3.1: - version "15.3.1" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-15.3.1.tgz#9505b472763963e54afe60148ad27a330818e98b" - integrity sha512-92O1HWEjw27sBfgmXiixJWT5hRBp2eobqXicLtPBIDBhYB+1HpwZlXmbW2luivBJHBzki+7VyCLRtAkScbTBQA== - dependencies: - cliui "^6.0.0" - decamelize "^1.2.0" - find-up "^4.1.0" - get-caller-file "^2.0.1" - require-directory "^2.1.1" - require-main-filename "^2.0.0" - set-blocking "^2.0.0" - string-width "^4.2.0" - which-module "^2.0.0" - y18n "^4.0.0" - yargs-parser "^18.1.1" - yargs@^3.10.0: version "3.32.0" resolved "https://registry.yarnpkg.com/yargs/-/yargs-3.32.0.tgz#03088e9ebf9e756b69751611d2a5ef591482c995" From f8495830f12bfd63a8de8dcb9a801ed2cdb625d6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 9 Apr 2021 09:22:30 +0000 Subject: [PATCH 150/337] Bump cheerio from 1.0.0-rc.5 to 1.0.0-rc.6 (#467) Bumps [cheerio](https://github.com/cheeriojs/cheerio) from 1.0.0-rc.5 to 1.0.0-rc.6. - [Release notes](https://github.com/cheeriojs/cheerio/releases) - [Changelog](https://github.com/cheeriojs/cheerio/blob/main/History.md) - [Commits](https://github.com/cheeriojs/cheerio/compare/v1.0.0-rc.5...v1.0.0-rc.6) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 121 +++++++++++++++++++++++++-------------------------- 2 files changed, 61 insertions(+), 62 deletions(-) diff --git a/package.json b/package.json index 15ab8c1e..58bbf8a4 100644 --- a/package.json +++ b/package.json @@ -20,7 +20,7 @@ "@turf/invariant": "^6.1.2", "chai": "^4.3.4", "chakram": "^1.5.0", - "cheerio": "^1.0.0-rc.5", + "cheerio": "^1.0.0-rc.6", "csv-parse": "^4.15.3", "eslint": "7.23.0", "mimelib": "^0.3.1", diff --git a/yarn.lock b/yarn.lock index e5cb47bb..ca439e18 100644 --- a/yarn.lock +++ b/yarn.lock @@ -701,29 +701,28 @@ check-error@^1.0.2: resolved "https://registry.yarnpkg.com/check-error/-/check-error-1.0.2.tgz#574d312edd88bb5dd8912e9286dd6c0aed4aac82" integrity sha1-V00xLt2Iu13YkS6Sht1sCu1KrII= -cheerio-select-tmp@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/cheerio-select-tmp/-/cheerio-select-tmp-0.1.1.tgz#55bbef02a4771710195ad736d5e346763ca4e646" - integrity sha512-YYs5JvbpU19VYJyj+F7oYrIE2BOll1/hRU7rEy/5+v9BzkSo3bK81iAeeQEMI92vRIxz677m72UmJUiVwwgjfQ== - dependencies: - css-select "^3.1.2" - css-what "^4.0.0" - domelementtype "^2.1.0" - domhandler "^4.0.0" - domutils "^2.4.4" - -cheerio@^1.0.0-rc.5: - version "1.0.0-rc.5" - resolved "https://registry.yarnpkg.com/cheerio/-/cheerio-1.0.0-rc.5.tgz#88907e1828674e8f9fee375188b27dadd4f0fa2f" - integrity sha512-yoqps/VCaZgN4pfXtenwHROTp8NG6/Hlt4Jpz2FEP0ZJQ+ZUkVDd0hAPDNKhj3nakpfPt/CNs57yEtxD1bXQiw== - dependencies: - cheerio-select-tmp "^0.1.0" - dom-serializer "~1.2.0" - domhandler "^4.0.0" - entities "~2.1.0" - htmlparser2 "^6.0.0" - parse5 "^6.0.0" - parse5-htmlparser2-tree-adapter "^6.0.0" +cheerio-select@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/cheerio-select/-/cheerio-select-1.3.0.tgz#26a50968260b7e4281238c1e7da7ed2766652f3b" + integrity sha512-mLgqdHxVOQyhOIkG5QnRkDg7h817Dkf0dAvlCio2TJMmR72cJKH0bF28SHXvLkVrGcGOiub0/Bs/CMnPeQO7qw== + dependencies: + css-select "^4.0.0" + css-what "^5.0.0" + domelementtype "^2.2.0" + domhandler "^4.1.0" + domutils "^2.5.2" + +cheerio@^1.0.0-rc.6: + version "1.0.0-rc.6" + resolved "https://registry.yarnpkg.com/cheerio/-/cheerio-1.0.0-rc.6.tgz#a5ae81ab483aeefa1280c325543c601145506240" + integrity sha512-hjx1XE1M/D5pAtMgvWwE21QClmAEeGHOIDfycgmndisdNgI6PE1cGRQkMGBcsbUbmEQyWu5PJLUcAOjtQS8DWw== + dependencies: + cheerio-select "^1.3.0" + dom-serializer "^1.3.1" + domhandler "^4.1.0" + htmlparser2 "^6.1.0" + parse5 "^6.0.1" + parse5-htmlparser2-tree-adapter "^6.0.1" chokidar@3.5.1: version "3.5.1" @@ -885,21 +884,21 @@ cross-spawn@^7.0.2: shebang-command "^2.0.0" which "^2.0.1" -css-select@^3.1.2: - version "3.1.2" - resolved "https://registry.yarnpkg.com/css-select/-/css-select-3.1.2.tgz#d52cbdc6fee379fba97fb0d3925abbd18af2d9d8" - integrity sha512-qmss1EihSuBNWNNhHjxzxSfJoFBM/lERB/Q4EnsJQQC62R2evJDW481091oAdOr9uh46/0n4nrg0It5cAnj1RA== +css-select@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/css-select/-/css-select-4.0.0.tgz#9b7b53bd82e4b348a6e0924ce37645e5db43af8e" + integrity sha512-I7favumBlDP/nuHBKLfL5RqvlvRdn/W29evvWJ+TaoGPm7QD+xSIN5eY2dyGjtkUmemh02TZrqJb4B8DWo6PoQ== dependencies: boolbase "^1.0.0" - css-what "^4.0.0" - domhandler "^4.0.0" - domutils "^2.4.3" + css-what "^5.0.0" + domhandler "^4.1.0" + domutils "^2.5.1" nth-check "^2.0.0" -css-what@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/css-what/-/css-what-4.0.0.tgz#35e73761cab2eeb3d3661126b23d7aa0e8432233" - integrity sha512-teijzG7kwYfNVsUh2H/YN62xW3KK9YhXEgSlbxMlcyjPNvdKJqFx5lrwlJgoFP1ZHlB89iGDlo/JyshKeRhv5A== +css-what@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/css-what/-/css-what-5.0.0.tgz#f0bf4f8bac07582722346ab243f6a35b512cfc47" + integrity sha512-qxyKHQvgKwzwDWC/rGbT821eJalfupxYW2qbSJSAtdSTimsr/MlaGONoNLllaUPZWf8QnbcKM/kPVYUQuEKAFA== csv-generate@^1.1.2: version "1.1.2" @@ -1069,10 +1068,10 @@ doctrine@^3.0.0: dependencies: esutils "^2.0.2" -dom-serializer@^1.0.1, dom-serializer@~1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-1.2.0.tgz#3433d9136aeb3c627981daa385fc7f32d27c48f1" - integrity sha512-n6kZFH/KlCrqs/1GHMOd5i2fd/beQHuehKdWvNNffbGHTr/almdhuVvTVFb3V7fglz+nC50fFusu3lY33h12pA== +dom-serializer@^1.0.1, dom-serializer@^1.3.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-1.3.1.tgz#d845a1565d7c041a95e5dab62184ab41e3a519be" + integrity sha512-Pv2ZluG5ife96udGgEDovOOOA5UELkltfJpnIExPrAk1LTvecolUGn6lIaoLh86d83GiB86CjzciMd9BuRB71Q== dependencies: domelementtype "^2.0.1" domhandler "^4.0.0" @@ -1083,26 +1082,26 @@ domelementtype@^2.0.1: resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.0.1.tgz#1f8bdfe91f5a78063274e803b4bdcedf6e94f94d" integrity sha512-5HOHUDsYZWV8FGWN0Njbr/Rn7f/eWSQi1v7+HsUVwXgn8nWWlL64zKDkS0n8ZmQ3mlWOMuXOnR+7Nx/5tMO5AQ== -domelementtype@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.1.0.tgz#a851c080a6d1c3d94344aed151d99f669edf585e" - integrity sha512-LsTgx/L5VpD+Q8lmsXSHW2WpA+eBlZ9HPf3erD1IoPF00/3JKHZ3BknUVA2QGDNu69ZNmyFmCWBSO45XjYKC5w== +domelementtype@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.2.0.tgz#9a0b6c2782ed6a1c7323d42267183df9bd8b1d57" + integrity sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A== -domhandler@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-4.0.0.tgz#01ea7821de996d85f69029e81fa873c21833098e" - integrity sha512-KPTbnGQ1JeEMQyO1iYXoagsI6so/C96HZiFyByU3T6iAzpXn8EGEvct6unm1ZGoed8ByO2oirxgwxBmqKF9haA== +domhandler@^4.0.0, domhandler@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-4.1.0.tgz#c1d8d494d5ec6db22de99e46a149c2a4d23ddd43" + integrity sha512-/6/kmsGlMY4Tup/nGVutdrK9yQi4YjWVcVeoQmixpzjOUK1U7pQkvAPHBJeUxOgxF0J8f8lwCJSlCfD0V4CMGQ== dependencies: - domelementtype "^2.1.0" + domelementtype "^2.2.0" -domutils@^2.4.3, domutils@^2.4.4: - version "2.4.4" - resolved "https://registry.yarnpkg.com/domutils/-/domutils-2.4.4.tgz#282739c4b150d022d34699797369aad8d19bbbd3" - integrity sha512-jBC0vOsECI4OMdD0GC9mGn7NXPLb+Qt6KW1YDQzeQYRUFKmNG8lh7mO5HiELfr+lLQE7loDVI4QcAxV80HS+RA== +domutils@^2.5.1, domutils@^2.5.2: + version "2.5.2" + resolved "https://registry.yarnpkg.com/domutils/-/domutils-2.5.2.tgz#37ef8ba087dff1a17175e7092e8a042e4b050e6c" + integrity sha512-MHTthCb1zj8f1GVfRpeZUbohQf/HdBos0oX5gZcQFepOZPLLRyj6Wn7XS7EMnY7CVpwv8863u2vyE83Hfu28HQ== dependencies: dom-serializer "^1.0.1" - domelementtype "^2.0.1" - domhandler "^4.0.0" + domelementtype "^2.2.0" + domhandler "^4.1.0" dtrace-provider@^0.8.1, dtrace-provider@~0.8: version "0.8.8" @@ -1162,7 +1161,7 @@ enquirer@^2.3.5: dependencies: ansi-colors "^4.1.1" -entities@^2.0.0, entities@~2.1.0: +entities@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/entities/-/entities-2.1.0.tgz#992d3129cf7df6870b96c57858c249a120f8b8b5" integrity sha512-hCx1oky9PFrJ611mf0ifBLBRW8lUUVRlFolb5gWRfIELabBlbp9xZvrqZLZAs+NxFnbfQoeGd8wDkygjg7U85w== @@ -1746,14 +1745,14 @@ hpack.js@^2.1.6: readable-stream "^2.0.1" wbuf "^1.1.0" -htmlparser2@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-6.0.0.tgz#c2da005030390908ca4c91e5629e418e0665ac01" - integrity sha512-numTQtDZMoh78zJpaNdJ9MXb2cv5G3jwUoe3dMQODubZvLoGvTE/Ofp6sHvH8OGKcN/8A47pGLi/k58xHP/Tfw== +htmlparser2@^6.1.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-6.1.0.tgz#c4d762b6c3371a05dbe65e94ae43a9f845fb8fb7" + integrity sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A== dependencies: domelementtype "^2.0.1" domhandler "^4.0.0" - domutils "^2.4.4" + domutils "^2.5.2" entities "^2.0.0" http-cache-semantics@^4.0.0: @@ -2741,14 +2740,14 @@ parent-module@^1.0.0: dependencies: callsites "^3.0.0" -parse5-htmlparser2-tree-adapter@^6.0.0: +parse5-htmlparser2-tree-adapter@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-6.0.1.tgz#2cdf9ad823321140370d4dbf5d3e92c7c8ddc6e6" integrity sha512-qPuWvbLgvDGilKc5BoicRovlT4MtYT6JfJyBOMDsKoiT+GiuP5qyrPCnR9HcPECIJJmZh5jRndyNThnhhb/vlA== dependencies: parse5 "^6.0.1" -parse5@^6.0.0, parse5@^6.0.1: +parse5@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/parse5/-/parse5-6.0.1.tgz#e1a1c085c569b3dc08321184f19a39cc27f7c30b" integrity sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw== From 0fd6cb5fc99ffd8c0ea062ff68a5459adf985cd6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 14 Apr 2021 09:08:49 +0000 Subject: [PATCH 151/337] Bump actions/cache from v2.1.4 to v2.1.5 (#469) Bumps [actions/cache](https://github.com/actions/cache) from v2.1.4 to v2.1.5. - [Release notes](https://github.com/actions/cache/releases) - [Commits](https://github.com/actions/cache/compare/v2.1.4...1a9e2138d905efd099035b49d8b7a3888c653ca8) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/test.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index 8eebc3b7..2d4a17fd 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -26,7 +26,7 @@ jobs: echo "##[set-output name=dir;]$(yarn cache dir)" - name: Restore yarn cache - uses: actions/cache@v2.1.4 + uses: actions/cache@v2.1.5 id: yarn-cache with: path: ${{ steps.yarn-cache-dir-path.outputs.dir }} From 11e577999578458df4bc9882eacd06b84eaa59ec Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 14 Apr 2021 11:04:23 +0000 Subject: [PATCH 152/337] Bump eslint from 7.23.0 to 7.24.0 (#468) Bumps [eslint](https://github.com/eslint/eslint) from 7.23.0 to 7.24.0. - [Release notes](https://github.com/eslint/eslint/releases) - [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md) - [Commits](https://github.com/eslint/eslint/compare/v7.23.0...v7.24.0) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 58bbf8a4..847bd1ae 100644 --- a/package.json +++ b/package.json @@ -22,7 +22,7 @@ "chakram": "^1.5.0", "cheerio": "^1.0.0-rc.6", "csv-parse": "^4.15.3", - "eslint": "7.23.0", + "eslint": "7.24.0", "mimelib": "^0.3.1", "mocha": "^8.3.2", "mqtt": "^3.0.0", diff --git a/yarn.lock b/yarn.lock index ca439e18..53c5c016 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1285,10 +1285,10 @@ eslint-visitor-keys@^2.0.0: resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.0.0.tgz#21fdc8fbcd9c795cc0321f0563702095751511a8" integrity sha512-QudtT6av5WXels9WjIM7qz1XD1cWGvX4gGXvp/zBn9nXG02D0utdU3Em2m/QjTnrsk6bBjmCygl3rmj118msQQ== -eslint@7.23.0: - version "7.23.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.23.0.tgz#8d029d252f6e8cf45894b4bee08f5493f8e94325" - integrity sha512-kqvNVbdkjzpFy0XOszNwjkKzZ+6TcwCQ/h+ozlcIWwaimBBuhlQ4nN6kbiM2L+OjDcznkTJxzYfRFH92sx4a0Q== +eslint@7.24.0: + version "7.24.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.24.0.tgz#2e44fa62d93892bfdb100521f17345ba54b8513a" + integrity sha512-k9gaHeHiFmGCDQ2rEfvULlSLruz6tgfA8DEn+rY9/oYPFFTlz55mM/Q/Rij1b2Y42jwZiK3lXvNTw6w6TXzcKQ== dependencies: "@babel/code-frame" "7.12.11" "@eslint/eslintrc" "^0.4.0" From ba55249374206ecc2b848db76518bc56de7005c9 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 16 Apr 2021 06:13:04 +0000 Subject: [PATCH 153/337] Bump csv-parse from 4.15.3 to 4.15.4 (#470) Bumps [csv-parse](https://github.com/wdavidw/node-csv-parse) from 4.15.3 to 4.15.4. - [Release notes](https://github.com/wdavidw/node-csv-parse/releases) - [Changelog](https://github.com/adaltas/node-csv-parse/blob/master/CHANGELOG.md) - [Commits](https://github.com/wdavidw/node-csv-parse/compare/v4.15.3...v4.15.4) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 847bd1ae..a1bc7b5e 100644 --- a/package.json +++ b/package.json @@ -21,7 +21,7 @@ "chai": "^4.3.4", "chakram": "^1.5.0", "cheerio": "^1.0.0-rc.6", - "csv-parse": "^4.15.3", + "csv-parse": "^4.15.4", "eslint": "7.24.0", "mimelib": "^0.3.1", "mocha": "^8.3.2", diff --git a/yarn.lock b/yarn.lock index 53c5c016..4ac6f6f4 100644 --- a/yarn.lock +++ b/yarn.lock @@ -910,10 +910,10 @@ csv-parse@^1.3.3: resolved "https://registry.yarnpkg.com/csv-parse/-/csv-parse-1.3.3.tgz#d1cfd8743c2f849a0abb2fd544db56695d19a490" integrity sha1-0c/YdDwvhJoKuy/VRNtWaV0ZpJA= -csv-parse@^4.15.3: - version "4.15.3" - resolved "https://registry.yarnpkg.com/csv-parse/-/csv-parse-4.15.3.tgz#8a62759617a920c328cb31c351b05053b8f92b10" - integrity sha512-jlTqDvLdHnYMSr08ynNfk4IAUSJgJjTKy2U5CQBSu4cN9vQOJonLVZP4Qo4gKKrIgIQ5dr07UwOJdi+lRqT12w== +csv-parse@^4.15.4: + version "4.15.4" + resolved "https://registry.yarnpkg.com/csv-parse/-/csv-parse-4.15.4.tgz#ad1ec62aaf71a642982dfcb81f1848184d691db5" + integrity sha512-OdBbFc0yZhOm17lSxqkirrHlFFVpKRT0wp4DAGoJelsP3LbGzV9LNr7XmM/lrr0uGkCtaqac9UhP8PDHXOAbMg== csv-stringify@^1.1.2: version "1.1.2" From c0e0d5e9e1537ef5095854d4cfeca0f5ce37deb4 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 23 Apr 2021 09:41:30 +0200 Subject: [PATCH 154/337] Bump grpc from 1.24.6 to 1.24.7 (#471) Bumps [grpc](https://github.com/grpc/grpc-node) from 1.24.6 to 1.24.7. - [Release notes](https://github.com/grpc/grpc-node/releases) - [Commits](https://github.com/grpc/grpc-node/compare/grpc@1.24.6...grpc@1.24.7) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- packages/models/package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/models/package.json b/packages/models/package.json index 71c70d75..a11a72c8 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -11,7 +11,7 @@ "bunyan": "^1.8.15", "config": "^3.3.6", "got": "^11.8.2", - "grpc": "^1.24.6", + "grpc": "^1.24.7", "isemail": "^3.0.0", "jsonpath": "^1.1.1", "lodash.isequal": "^4.5.0", diff --git a/yarn.lock b/yarn.lock index 4ac6f6f4..a75ee902 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1662,10 +1662,10 @@ growl@1.10.5: resolved "https://registry.yarnpkg.com/growl/-/growl-1.10.5.tgz#f2735dc2283674fa67478b10181059355c369e5e" integrity sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA== -grpc@^1.24.6: - version "1.24.6" - resolved "https://registry.yarnpkg.com/grpc/-/grpc-1.24.6.tgz#1862a9d990f79cfa20b962d77f090000d915469c" - integrity sha512-BtifKdClMYU0ZEo0Pdr2WV9ZH54AoEdIcp2BfJkh87g2R3HoNPLYKHRYefw/ByxrCdVDTAy3hkraFISpqsRcrw== +grpc@^1.24.7: + version "1.24.7" + resolved "https://registry.yarnpkg.com/grpc/-/grpc-1.24.7.tgz#58d8eb2a8a9c11ccd678f27403ba54ee4ea3d895" + integrity sha512-AFWychfq60LBUrelOWgT5PWk05n98z7/C8qCgeNAJ4YvK8khVNSlbEHMLaCu7COqbX1JwJxSbzw9B9YhnzKeYQ== dependencies: "@types/bytebuffer" "^5.0.40" lodash.camelcase "^4.3.0" From 13fa83974bafb23ea21a0c3d9a790fff5bd0fa1b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 26 Apr 2021 08:12:23 +0000 Subject: [PATCH 155/337] Bump eslint from 7.24.0 to 7.25.0 (#472) Bumps [eslint](https://github.com/eslint/eslint) from 7.24.0 to 7.25.0. - [Release notes](https://github.com/eslint/eslint/releases) - [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md) - [Commits](https://github.com/eslint/eslint/compare/v7.24.0...v7.25.0) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index a1bc7b5e..8be49e8d 100644 --- a/package.json +++ b/package.json @@ -22,7 +22,7 @@ "chakram": "^1.5.0", "cheerio": "^1.0.0-rc.6", "csv-parse": "^4.15.4", - "eslint": "7.24.0", + "eslint": "7.25.0", "mimelib": "^0.3.1", "mocha": "^8.3.2", "mqtt": "^3.0.0", diff --git a/yarn.lock b/yarn.lock index a75ee902..e641f482 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1285,10 +1285,10 @@ eslint-visitor-keys@^2.0.0: resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.0.0.tgz#21fdc8fbcd9c795cc0321f0563702095751511a8" integrity sha512-QudtT6av5WXels9WjIM7qz1XD1cWGvX4gGXvp/zBn9nXG02D0utdU3Em2m/QjTnrsk6bBjmCygl3rmj118msQQ== -eslint@7.24.0: - version "7.24.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.24.0.tgz#2e44fa62d93892bfdb100521f17345ba54b8513a" - integrity sha512-k9gaHeHiFmGCDQ2rEfvULlSLruz6tgfA8DEn+rY9/oYPFFTlz55mM/Q/Rij1b2Y42jwZiK3lXvNTw6w6TXzcKQ== +eslint@7.25.0: + version "7.25.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.25.0.tgz#1309e4404d94e676e3e831b3a3ad2b050031eb67" + integrity sha512-TVpSovpvCNpLURIScDRB6g5CYu/ZFq9GfX2hLNIV4dSBKxIWojeDODvYl3t0k0VtMxYeR8OXPCFE5+oHMlGfhw== dependencies: "@babel/code-frame" "7.12.11" "@eslint/eslintrc" "^0.4.0" From 0f9eab1f5fc61e73e60a59789cecd7d6c66cf0f5 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 10 May 2021 06:13:10 +0000 Subject: [PATCH 156/337] Bump eslint from 7.25.0 to 7.26.0 (#477) Bumps [eslint](https://github.com/eslint/eslint) from 7.25.0 to 7.26.0. - [Release notes](https://github.com/eslint/eslint/releases) - [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md) - [Commits](https://github.com/eslint/eslint/compare/v7.25.0...v7.26.0) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 18 +++++++++--------- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/package.json b/package.json index 8be49e8d..a555cc15 100644 --- a/package.json +++ b/package.json @@ -22,7 +22,7 @@ "chakram": "^1.5.0", "cheerio": "^1.0.0-rc.6", "csv-parse": "^4.15.4", - "eslint": "7.25.0", + "eslint": "7.26.0", "mimelib": "^0.3.1", "mocha": "^8.3.2", "mqtt": "^3.0.0", diff --git a/yarn.lock b/yarn.lock index e641f482..5e4e876f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -23,10 +23,10 @@ chalk "^2.0.0" js-tokens "^4.0.0" -"@eslint/eslintrc@^0.4.0": - version "0.4.0" - resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-0.4.0.tgz#99cc0a0584d72f1df38b900fb062ba995f395547" - integrity sha512-2ZPCc+uNbjV5ERJr+aKSPRwZgKd2z11x0EgLvb1PURmUrn9QNRXFqje0Ldq454PfAVyaJYyrDvvIKSFP4NnBog== +"@eslint/eslintrc@^0.4.1": + version "0.4.1" + resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-0.4.1.tgz#442763b88cecbe3ee0ec7ca6d6dd6168550cbf14" + integrity sha512-5v7TDE9plVhvxQeWLXDTvFvJBdH6pEsdnl2g/dAptmuFEPedQ4Erq5rsDsX+mvAM610IhNaO2W5V1dOOnDKxkQ== dependencies: ajv "^6.12.4" debug "^4.1.1" @@ -1285,13 +1285,13 @@ eslint-visitor-keys@^2.0.0: resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.0.0.tgz#21fdc8fbcd9c795cc0321f0563702095751511a8" integrity sha512-QudtT6av5WXels9WjIM7qz1XD1cWGvX4gGXvp/zBn9nXG02D0utdU3Em2m/QjTnrsk6bBjmCygl3rmj118msQQ== -eslint@7.25.0: - version "7.25.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.25.0.tgz#1309e4404d94e676e3e831b3a3ad2b050031eb67" - integrity sha512-TVpSovpvCNpLURIScDRB6g5CYu/ZFq9GfX2hLNIV4dSBKxIWojeDODvYl3t0k0VtMxYeR8OXPCFE5+oHMlGfhw== +eslint@7.26.0: + version "7.26.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.26.0.tgz#d416fdcdcb3236cd8f282065312813f8c13982f6" + integrity sha512-4R1ieRf52/izcZE7AlLy56uIHHDLT74Yzz2Iv2l6kDaYvEu9x+wMB5dZArVL8SYGXSYV2YAg70FcW5Y5nGGNIg== dependencies: "@babel/code-frame" "7.12.11" - "@eslint/eslintrc" "^0.4.0" + "@eslint/eslintrc" "^0.4.1" ajv "^6.10.0" chalk "^4.0.0" cross-spawn "^7.0.2" From d37f8d3b8e899255dee923a1d57caaf5662fff12 Mon Sep 17 00:00:00 2001 From: Felix Erdmann Date: Thu, 20 May 2021 14:30:46 +0200 Subject: [PATCH 157/337] Ltr329 (#483) * v0.0.30 * bump node-sketch-templater version * bump api models --- packages/api/package.json | 2 +- packages/models/CHANGELOG.md | 3 +++ packages/models/package.json | 4 ++-- yarn.lock | 8 ++++---- 4 files changed, 10 insertions(+), 7 deletions(-) diff --git a/packages/api/package.json b/packages/api/package.json index a761067e..f4c9058e 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -10,7 +10,7 @@ "Norwin Roosen" ], "dependencies": { - "@sensebox/opensensemap-api-models": "^0.0.29", + "@sensebox/opensensemap-api-models": "^0.0.30", "@turf/area": "^6.3.0", "@turf/bbox": "^6.3.0", "@turf/centroid": "^6.3.0", diff --git a/packages/models/CHANGELOG.md b/packages/models/CHANGELOG.md index 93fb6adf..72a92d7c 100644 --- a/packages/models/CHANGELOG.md +++ b/packages/models/CHANGELOG.md @@ -2,6 +2,9 @@ ## Unreleased +## v0.0.30 +- Update @sensebox/node-sketch-templater to v1.10.4 + ## v0.0.29 - Update @sensebox/node-sketch-templater to v1.10.3 diff --git a/packages/models/package.json b/packages/models/package.json index a11a72c8..9a0abbf7 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -1,12 +1,12 @@ { "name": "@sensebox/opensensemap-api-models", "description": "openSenseMap data models and database connection", - "version": "0.0.29", + "version": "0.0.30", "main": "index.js", "license": "MIT", "dependencies": { "@sensebox/osem-protos": "^1.1.0", - "@sensebox/sketch-templater": "^1.10.3", + "@sensebox/sketch-templater": "^1.10.4", "bcrypt": "^5.0.1", "bunyan": "^1.8.15", "config": "^3.3.6", diff --git a/yarn.lock b/yarn.lock index 5e4e876f..2994ac72 100644 --- a/yarn.lock +++ b/yarn.lock @@ -72,10 +72,10 @@ resolved "https://registry.yarnpkg.com/@sensebox/osem-protos/-/osem-protos-1.1.0.tgz#a7de8bc6be867953f1309181a012063c23299e79" integrity sha512-H+nUVcWlT0dvIqfJnYHuX9JBcCkP1ZKGE5YTRNWPbAEdZ11h+srpQsmeI58wK5hJcdukaZAjc4Dy96IeGM77aA== -"@sensebox/sketch-templater@^1.10.3": - version "1.10.3" - resolved "https://registry.yarnpkg.com/@sensebox/sketch-templater/-/sketch-templater-1.10.3.tgz#97b739027147c0c71ccc3cf3dbfe005f5bcc31aa" - integrity sha512-77sfo1x0aJ+KPc9PntJFfwh+z5CHYHYCWlER0PXmvOHY3S7gVTYM5Ug99OUc4LpGaHP+C2FTtaNhEQgF66EoLA== +"@sensebox/sketch-templater@^1.10.4": + version "1.10.4" + resolved "https://registry.yarnpkg.com/@sensebox/sketch-templater/-/sketch-templater-1.10.4.tgz#e33dd73b500a38633c0f9846f3beecbc1267e6b7" + integrity sha512-ysbkxAKc/uvh/Dg+zrZ6dioRy15e+UGSzPYbj/3Oy6tBmimyiwIxob7pCwIZ1DaR5mLcekDX+LGbVBioWTXD9w== dependencies: config "^1.29.2" dedent "^0.7.0" From 1506541ec3d80e3e1dae8d6e00ecdfe3b42b11de Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 21 May 2021 08:24:55 +0200 Subject: [PATCH 158/337] Bump node from 14.16-alpine to 14.17.0-alpine (#484) * Bump node from 14.16-alpine to 14.17.0-alpine Bumps node from 14.16-alpine to 14.17.0-alpine. Signed-off-by: dependabot[bot] * Use node 14.17 in tests Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape --- Dockerfile | 4 ++-- tests/tests-Dockerfile | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Dockerfile b/Dockerfile index 06b1f8f7..c8ed3523 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM node:14.16-alpine as build +FROM node:14.17.0-alpine as build ENV NODE_ENV=production @@ -23,7 +23,7 @@ RUN yarn create-version-file \ && rm -rf .git .scripts # Final stage -FROM node:14.16-alpine +FROM node:14.17.0-alpine ENV NODE_ENV=production diff --git a/tests/tests-Dockerfile b/tests/tests-Dockerfile index cf4d2405..939b537e 100644 --- a/tests/tests-Dockerfile +++ b/tests/tests-Dockerfile @@ -1,4 +1,4 @@ -FROM node:14.16-alpine +FROM node:14.17-alpine # YARN_PRODUCTION=false is a workaround for https://github.com/yarnpkg/yarn/issues/4557 ENV NODE_ENV=production \ From 813aec73d3292791e530b0a674172ebd0d40c3e9 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 28 May 2021 07:01:08 +0000 Subject: [PATCH 159/337] Bump actions/cache from 2.1.5 to 2.1.6 (#485) Bumps [actions/cache](https://github.com/actions/cache) from 2.1.5 to 2.1.6. - [Release notes](https://github.com/actions/cache/releases) - [Commits](https://github.com/actions/cache/compare/v2.1.5...v2.1.6) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/test.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index 2d4a17fd..ff48cb39 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -26,7 +26,7 @@ jobs: echo "##[set-output name=dir;]$(yarn cache dir)" - name: Restore yarn cache - uses: actions/cache@v2.1.5 + uses: actions/cache@v2.1.6 id: yarn-cache with: path: ${{ steps.yarn-cache-dir-path.outputs.dir }} From 290f7dd4e0fe165fb7c7408b4afc924f4691a028 Mon Sep 17 00:00:00 2001 From: Felix Erdmann Date: Tue, 1 Jun 2021 16:13:58 +0200 Subject: [PATCH 160/337] Fix ltr (#487) * v0.0.31 * bump node-sketch-templater version --- packages/api/package.json | 2 +- packages/models/CHANGELOG.md | 3 +++ packages/models/package.json | 4 ++-- yarn.lock | 8 ++++---- 4 files changed, 10 insertions(+), 7 deletions(-) diff --git a/packages/api/package.json b/packages/api/package.json index f4c9058e..b67c33ef 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -10,7 +10,7 @@ "Norwin Roosen" ], "dependencies": { - "@sensebox/opensensemap-api-models": "^0.0.30", + "@sensebox/opensensemap-api-models": "^0.0.31", "@turf/area": "^6.3.0", "@turf/bbox": "^6.3.0", "@turf/centroid": "^6.3.0", diff --git a/packages/models/CHANGELOG.md b/packages/models/CHANGELOG.md index 72a92d7c..c0b6bafc 100644 --- a/packages/models/CHANGELOG.md +++ b/packages/models/CHANGELOG.md @@ -2,6 +2,9 @@ ## Unreleased +## v0.0.31 +- Update @sensebox/node-sketch-templater to v1.10.5 + ## v0.0.30 - Update @sensebox/node-sketch-templater to v1.10.4 diff --git a/packages/models/package.json b/packages/models/package.json index 9a0abbf7..7b3475c1 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -1,12 +1,12 @@ { "name": "@sensebox/opensensemap-api-models", "description": "openSenseMap data models and database connection", - "version": "0.0.30", + "version": "0.0.31", "main": "index.js", "license": "MIT", "dependencies": { "@sensebox/osem-protos": "^1.1.0", - "@sensebox/sketch-templater": "^1.10.4", + "@sensebox/sketch-templater": "^1.10.5", "bcrypt": "^5.0.1", "bunyan": "^1.8.15", "config": "^3.3.6", diff --git a/yarn.lock b/yarn.lock index 2994ac72..071d917f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -72,10 +72,10 @@ resolved "https://registry.yarnpkg.com/@sensebox/osem-protos/-/osem-protos-1.1.0.tgz#a7de8bc6be867953f1309181a012063c23299e79" integrity sha512-H+nUVcWlT0dvIqfJnYHuX9JBcCkP1ZKGE5YTRNWPbAEdZ11h+srpQsmeI58wK5hJcdukaZAjc4Dy96IeGM77aA== -"@sensebox/sketch-templater@^1.10.4": - version "1.10.4" - resolved "https://registry.yarnpkg.com/@sensebox/sketch-templater/-/sketch-templater-1.10.4.tgz#e33dd73b500a38633c0f9846f3beecbc1267e6b7" - integrity sha512-ysbkxAKc/uvh/Dg+zrZ6dioRy15e+UGSzPYbj/3Oy6tBmimyiwIxob7pCwIZ1DaR5mLcekDX+LGbVBioWTXD9w== +"@sensebox/sketch-templater@^1.10.5": + version "1.10.5" + resolved "https://registry.yarnpkg.com/@sensebox/sketch-templater/-/sketch-templater-1.10.5.tgz#ea4ceefa8ab5f4a7a222b7d8694d7aa51a7313fc" + integrity sha512-4SjU3HWsIThsi8M2iUXon95UNyZaXw2qbivsAh4eP7+HsXn1lXhuGOG1Q/wVZU0Ju62cY4jc93G+8Bixsab1Zw== dependencies: config "^1.29.2" dedent "^0.7.0" From ba2e0ecfecf1316dcf43d446b0acd9d7ad126aa2 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 8 Jun 2021 12:55:25 +0000 Subject: [PATCH 161/337] Bump css-what from 5.0.0 to 5.0.1 (#489) Bumps [css-what](https://github.com/fb55/css-what) from 5.0.0 to 5.0.1. - [Release notes](https://github.com/fb55/css-what/releases) - [Commits](https://github.com/fb55/css-what/compare/v5.0.0...v5.0.1) --- updated-dependencies: - dependency-name: css-what dependency-type: indirect ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 071d917f..a1d6fa2e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -896,9 +896,9 @@ css-select@^4.0.0: nth-check "^2.0.0" css-what@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/css-what/-/css-what-5.0.0.tgz#f0bf4f8bac07582722346ab243f6a35b512cfc47" - integrity sha512-qxyKHQvgKwzwDWC/rGbT821eJalfupxYW2qbSJSAtdSTimsr/MlaGONoNLllaUPZWf8QnbcKM/kPVYUQuEKAFA== + version "5.0.1" + resolved "https://registry.yarnpkg.com/css-what/-/css-what-5.0.1.tgz#3efa820131f4669a8ac2408f9c32e7c7de9f4cad" + integrity sha512-FYDTSHb/7KXsWICVsxdmiExPjCfRC4qRFBdVwv7Ax9hMnvMmEjP9RfxTEZ3qPZGmADDn2vAKSo9UcN1jKVYscg== csv-generate@^1.1.2: version "1.1.2" From 244b5b922b6daf59e9c1777914dab9c47d433df3 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 9 Jun 2021 12:58:35 +0000 Subject: [PATCH 162/337] Bump normalize-url from 4.5.0 to 4.5.1 (#491) Bumps [normalize-url](https://github.com/sindresorhus/normalize-url) from 4.5.0 to 4.5.1. - [Release notes](https://github.com/sindresorhus/normalize-url/releases) - [Commits](https://github.com/sindresorhus/normalize-url/commits) --- updated-dependencies: - dependency-name: normalize-url dependency-type: indirect ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index a1d6fa2e..60abbc9b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2584,9 +2584,9 @@ normalize-path@^3.0.0, normalize-path@~3.0.0: integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== normalize-url@^4.1.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-4.5.0.tgz#453354087e6ca96957bd8f5baf753f5982142129" - integrity sha512-2s47yzUxdexf1OhyRi4Em83iQk0aPvwTddtFz4hnSSw9dCEsLEGf6SwIO8ss/19S9iBb5sJaOuTvTGDeZI00BQ== + version "4.5.1" + resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-4.5.1.tgz#0dd90cf1288ee1d1313b87081c9a5932ee48518a" + integrity sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA== npm-bundled@^1.0.1: version "1.1.1" From a89ebd4095a916fb051314da8d8327be86e32e18 Mon Sep 17 00:00:00 2001 From: umut0 Date: Fri, 11 Jun 2021 10:50:06 +0200 Subject: [PATCH 163/337] =?UTF-8?q?add=20near=20and=20maxDistance=20parame?= =?UTF-8?q?ter=20to=20getBoxes=20request.=20lets=20you=20sear=E2=80=A6=20(?= =?UTF-8?q?#492)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * add near and maxDistance parameter to getBoxes request. lets you search for senseBoxes around a location * fix linting Co-authored-by: Umut Tas --- packages/api/lib/controllers/boxesController.js | 4 ++++ packages/api/lib/helpers/userParamHelpers.js | 6 ++++++ packages/models/src/box/box.js | 15 ++++++++++++++- 3 files changed, 24 insertions(+), 1 deletion(-) diff --git a/packages/api/lib/controllers/boxesController.js b/packages/api/lib/controllers/boxesController.js index 37e331ea..3a2d88ab 100644 --- a/packages/api/lib/controllers/boxesController.js +++ b/packages/api/lib/controllers/boxesController.js @@ -200,6 +200,8 @@ const geoJsonStringifyReplacer = function geoJsonStringifyReplacer (key, box) { * @apiParam {Boolean="true","false"} [classify=false] if specified, the api will classify the boxes accordingly to their last measurements. * @apiParam {Boolean="true","false"} [minimal=false] if specified, the api will only return a minimal set of box metadata consisting of [_id, updatedAt, currentLocation, exposure, name] for a fast response. * @apiParam {Boolean="true","false"} [full=false] if true the API will return populated lastMeasurements (use this with caution for now, expensive on the database) + * @apiParam {String} [near] A comma separated coordinate, if specified, the api will only return senseBoxes within maxDistance (in m) of this location + * @apiParam {Number} [maxDistance=1000] the amount of meters around the near Parameter that the api will search for senseBoxes * @apiUse ExposureFilterParam * @apiUse BBoxParam * @apiSampleRequest https://api.opensensemap.org/boxes @@ -574,6 +576,8 @@ module.exports = { { name: 'classify', defaultValue: 'false', allowedValues: ['true', 'false'] }, { name: 'minimal', defaultValue: 'false', allowedValues: ['true', 'false'] }, { name: 'full', defaultValue: 'false', allowedValues: ['true', 'false'] }, + { name: 'near' }, + { name: 'maxDistance' }, { predef: 'bbox' }, ]), parseAndValidateTimeParamsForFindAllBoxes, diff --git a/packages/api/lib/helpers/userParamHelpers.js b/packages/api/lib/helpers/userParamHelpers.js index b04f2b2d..b2ebf713 100644 --- a/packages/api/lib/helpers/userParamHelpers.js +++ b/packages/api/lib/helpers/userParamHelpers.js @@ -385,6 +385,12 @@ const retrieveParametersPredefs = { 'bbox' () { return { name: 'bbox', dataType: 'bbox' }; }, + 'near' () { + return { name: 'near', dataType: 'as-is' }; + }, + 'maxDistance' () { + return { name: 'maxDistance', dataType: 'as-is' }; + }, 'location' () { return { name: 'location', dataType: ['location'], paramValidatorAndParser: retrieveLocationParameter }; // dataType array ['location'] is needed for setting the userparam correctly }, diff --git a/packages/models/src/box/box.js b/packages/models/src/box/box.js index 83115a6b..fef52999 100644 --- a/packages/models/src/box/box.js +++ b/packages/models/src/box/box.js @@ -938,7 +938,7 @@ boxSchema.methods.getLocations = function getLocations ({ format, fromDate, toDa }; const buildFindBoxesQuery = function buildFindBoxesQuery (opts = {}) { - const { phenomenon, fromDate, toDate, bbox } = opts, + const { phenomenon, fromDate, toDate, bbox, near, maxDistance } = opts, query = {}; // simple string parameters @@ -953,6 +953,19 @@ const buildFindBoxesQuery = function buildFindBoxesQuery (opts = {}) { query['locations'] = { '$geoWithin': { '$geometry': bbox } }; } + // near search parameter + if (near) { + query['currentLocation'] = { + '$near': { + '$geometry': { + type: 'Point', + coordinates: [near.split(',')[0], near.split(',')[1]] + }, + '$maxDistance': maxDistance ? maxDistance : 1000, + } + }; + } + // search for phenomenon only together with time params if (fromDate || toDate) { if (phenomenon) { From 9abda421b6dd315110655f26f5839fe4d1c27ecd Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 16 Jun 2021 07:10:52 +0000 Subject: [PATCH 164/337] Bump node from 14.17.0-alpine to 14.17.1-alpine (#494) Bumps node from 14.17.0-alpine to 14.17.1-alpine. --- updated-dependencies: - dependency-name: node dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Dockerfile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index c8ed3523..45ad5c1f 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM node:14.17.0-alpine as build +FROM node:14.17.1-alpine as build ENV NODE_ENV=production @@ -23,7 +23,7 @@ RUN yarn create-version-file \ && rm -rf .git .scripts # Final stage -FROM node:14.17.0-alpine +FROM node:14.17.1-alpine ENV NODE_ENV=production From cccea683725a30dc04035bfe52b006354fd93923 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 1 Jul 2021 09:13:22 +0000 Subject: [PATCH 165/337] Bump actions/setup-node from 2.1.5 to 2.2.0 (#497) Bumps [actions/setup-node](https://github.com/actions/setup-node) from 2.1.5 to 2.2.0. - [Release notes](https://github.com/actions/setup-node/releases) - [Commits](https://github.com/actions/setup-node/compare/v2.1.5...v2.2.0) --- updated-dependencies: - dependency-name: actions/setup-node dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/test.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index ff48cb39..2617fc57 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -16,7 +16,7 @@ jobs: - uses: actions/checkout@v2 - name: Install Node.js 12 - uses: actions/setup-node@v2.1.5 + uses: actions/setup-node@v2.2.0 with: node-version: 12 From d3c94051a98ce7e363db9dd27353e007a37a4a44 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 8 Jul 2021 06:12:03 +0000 Subject: [PATCH 166/337] Bump node from 14.17.1-alpine to 14.17.3-alpine (#500) * Bump node from 14.17.1-alpine to 14.17.3-alpine Bumps node from 14.17.1-alpine to 14.17.3-alpine. --- updated-dependencies: - dependency-name: node dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] * use generic 14.17 node container image in Dockerfile Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape --- Dockerfile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index 45ad5c1f..7848383c 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM node:14.17.1-alpine as build +FROM node:14.17-alpine as build ENV NODE_ENV=production @@ -23,7 +23,7 @@ RUN yarn create-version-file \ && rm -rf .git .scripts # Final stage -FROM node:14.17.1-alpine +FROM node:14.17-alpine ENV NODE_ENV=production From f2370fafdfb4aac1b67d3904ce86b76cc16b582b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 21 Jul 2021 08:49:24 +0000 Subject: [PATCH 167/337] Bump actions/setup-node from 2.2.0 to 2.3.0 (#503) Bumps [actions/setup-node](https://github.com/actions/setup-node) from 2.2.0 to 2.3.0. - [Release notes](https://github.com/actions/setup-node/releases) - [Commits](https://github.com/actions/setup-node/compare/v2.2.0...v2.3.0) --- updated-dependencies: - dependency-name: actions/setup-node dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/test.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index 2617fc57..2d1d35ac 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -16,7 +16,7 @@ jobs: - uses: actions/checkout@v2 - name: Install Node.js 12 - uses: actions/setup-node@v2.2.0 + uses: actions/setup-node@v2.3.0 with: node-version: 12 From 8fdf18f9948f8da642e1a453c8eb031ed04951fe Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 4 Aug 2021 06:48:03 +0000 Subject: [PATCH 168/337] Bump actions/setup-node from 2.3.0 to 2.3.1 (#507) Bumps [actions/setup-node](https://github.com/actions/setup-node) from 2.3.0 to 2.3.1. - [Release notes](https://github.com/actions/setup-node/releases) - [Commits](https://github.com/actions/setup-node/compare/v2.3.0...v2.3.1) --- updated-dependencies: - dependency-name: actions/setup-node dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/test.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index 2d1d35ac..73edb2d8 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -16,7 +16,7 @@ jobs: - uses: actions/checkout@v2 - name: Install Node.js 12 - uses: actions/setup-node@v2.3.0 + uses: actions/setup-node@v2.3.1 with: node-version: 12 From 6107327a5b414575fb713b8b719397eb645e1ec5 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 4 Aug 2021 06:50:00 +0000 Subject: [PATCH 169/337] Bump tar from 4.4.13 to 4.4.15 (#506) Bumps [tar](https://github.com/npm/node-tar) from 4.4.13 to 4.4.15. - [Release notes](https://github.com/npm/node-tar/releases) - [Changelog](https://github.com/npm/node-tar/blob/main/CHANGELOG.md) - [Commits](https://github.com/npm/node-tar/compare/v4.4.13...v4.4.15) --- updated-dependencies: - dependency-name: tar dependency-type: indirect ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 60abbc9b..fa2e6dda 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3447,9 +3447,9 @@ table@^6.0.4: string-width "^4.2.0" tar@^4.4.2: - version "4.4.13" - resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.13.tgz#43b364bc52888d555298637b10d60790254ab525" - integrity sha512-w2VwSrBoHa5BsSyH+KxEqeQBAllHhccyMFVHtGtdMpF4W7IRWfZjFiQceJPChOeTsSDVUpER2T8FA93pr0L+QA== + version "4.4.15" + resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.15.tgz#3caced4f39ebd46ddda4d6203d48493a919697f8" + integrity sha512-ItbufpujXkry7bHH9NpQyTXPbJ72iTlXgkBAYsAjDXk3Ds8t/3NfO5P4xZGy7u+sYuQUbimgzswX4uQIEeNVOA== dependencies: chownr "^1.1.1" fs-minipass "^1.2.5" From 5e7f7750685f71ddad3a165b3efd2e68483be624 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 5 Aug 2021 07:08:30 +0000 Subject: [PATCH 170/337] Bump actions/setup-node from 2.3.1 to 2.3.2 (#508) Bumps [actions/setup-node](https://github.com/actions/setup-node) from 2.3.1 to 2.3.2. - [Release notes](https://github.com/actions/setup-node/releases) - [Commits](https://github.com/actions/setup-node/compare/v2.3.1...v2.3.2) --- updated-dependencies: - dependency-name: actions/setup-node dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/test.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index 73edb2d8..e8a68d58 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -16,7 +16,7 @@ jobs: - uses: actions/checkout@v2 - name: Install Node.js 12 - uses: actions/setup-node@v2.3.1 + uses: actions/setup-node@v2.3.2 with: node-version: 12 From ea15c09f43ffead7e5e0c52a60da13d012eb01de Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 6 Aug 2021 07:47:15 +0000 Subject: [PATCH 171/337] Bump actions/setup-node from 2.3.2 to 2.4.0 (#509) Bumps [actions/setup-node](https://github.com/actions/setup-node) from 2.3.2 to 2.4.0. - [Release notes](https://github.com/actions/setup-node/releases) - [Commits](https://github.com/actions/setup-node/compare/v2.3.2...v2.4.0) --- updated-dependencies: - dependency-name: actions/setup-node dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/test.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index e8a68d58..d99b0201 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -16,7 +16,7 @@ jobs: - uses: actions/checkout@v2 - name: Install Node.js 12 - uses: actions/setup-node@v2.3.2 + uses: actions/setup-node@v2.4.0 with: node-version: 12 From 754f0ad23a992a81d0e6dfb242bcc7174aadab32 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Wed, 8 Sep 2021 16:04:53 +0200 Subject: [PATCH 172/337] (api) add parameters to search for boxes with a name (#502) * (api) add parameters to search for boxes with a name * ran linting job * Return location for box --- .../api/lib/controllers/boxesController.js | 31 +++++++---- packages/models/src/box/box.js | 16 ++++++ tests/tests/005-create-boxes-test.js | 55 +++++++++++++++++++ 3 files changed, 92 insertions(+), 10 deletions(-) diff --git a/packages/api/lib/controllers/boxesController.js b/packages/api/lib/controllers/boxesController.js index 3a2d88ab..dc2aa306 100644 --- a/packages/api/lib/controllers/boxesController.js +++ b/packages/api/lib/controllers/boxesController.js @@ -192,6 +192,8 @@ const geoJsonStringifyReplacer = function geoJsonStringifyReplacer (key, box) { * @apiDescription With the optional `date` and `phenomenon` parameters you can find senseBoxes that have submitted data around that time, +/- 4 hours, or specify two dates separated by a comma. * @apiName getBoxes * @apiGroup Boxes + * @apiParam {String} [name] Search string to find boxes by name, if specified all other parameters are ignored. + * @apiParam {Number} [limit=5] Limit the search results. * @apiParam {RFC3339Date} [date] One or two RFC 3339 timestamps at which boxes should provide measurements. Use in combination with `phenomenon`. * @apiParam {String} [phenomenon] A sensor phenomenon (determined by sensor name) such as temperature, humidity or UV intensity. Use in combination with `date`. * @apiParam {String=json,geojson} [format=json] the format the sensor data is returned in. @@ -221,18 +223,25 @@ const getBoxes = async function getBoxes (req, res, next) { try { let stream; - if (req._userParams.minimal === 'true') { - stream = await Box.findBoxesMinimal(req._userParams); + + // Search boxes by name + // Directly return results and do nothing else + if (req._userParams.name) { + stream = await Box.findBoxes(req._userParams); } else { - stream = await Box.findBoxesLastMeasurements(req._userParams); - } + if (req._userParams.minimal === 'true') { + stream = await Box.findBoxesMinimal(req._userParams); + } else { + stream = await Box.findBoxesLastMeasurements(req._userParams); + } - if (req._userParams.classify === 'true') { - stream = stream - .pipe(new classifyTransformer()) - .on('error', function (err) { - res.end(`Error: ${err.message}`); - }); + if (req._userParams.classify === 'true') { + stream = stream + .pipe(new classifyTransformer()) + .on('error', function (err) { + res.end(`Error: ${err.message}`); + }); + } } stream @@ -567,6 +576,8 @@ module.exports = { ], getBoxes: [ retrieveParameters([ + { name: 'name', dataType: 'String' }, + { name: 'limit', dataType: 'Number', defaultValue: 5, min: 1, max: 20 }, { name: 'exposure', allowedValues: Box.BOX_VALID_EXPOSURES, dataType: ['String'] }, { name: 'model', dataType: ['StringWithEmpty'] }, { name: 'grouptag', dataType: ['StringWithEmpty'] }, diff --git a/packages/models/src/box/box.js b/packages/models/src/box/box.js index fef52999..105ddd09 100644 --- a/packages/models/src/box/box.js +++ b/packages/models/src/box/box.js @@ -976,6 +976,22 @@ const buildFindBoxesQuery = function buildFindBoxesQuery (opts = {}) { return query; }; +// return boxes that match the name paramter +boxSchema.statics.findBoxes = function findBoxes (opts = {}) { + const { name, limit } = opts; + const filter = { + name: { '$regex': name, '$options': 'i' } + }; + const projection = { + _id: 1, + name: 1, + currentLocation: 1 + }; + + return Promise.resolve(this.find(filter, projection).limit(limit) + .cursor({ lean: true })); +}; + // returns a minimal subset of the box documents for speed boxSchema.statics.findBoxesMinimal = function findBoxesMinimal (opts = {}) { const query = buildFindBoxesQuery(opts); diff --git a/tests/tests/005-create-boxes-test.js b/tests/tests/005-create-boxes-test.js index a1129a62..7bcf9ced 100644 --- a/tests/tests/005-create-boxes-test.js +++ b/tests/tests/005-create-boxes-test.js @@ -234,6 +234,61 @@ describe('openSenseMap API Routes: /boxes', function () { }); }); + it('should serach for boxes with a specific name', function () { + return chakram.get(`${BASE_URL}/boxes?name=sensebox`) + .then(function (response) { + expect(response).to.have.status(200); + expect(response).to.have.header('content-type', 'application/json; charset=utf-8'); + expect(response.body.length).to.be.equal(3); + + return chakram.wait(); + }); + }); + + it('should serach for boxes with a specific name and limit the results', function () { + return chakram.get(`${BASE_URL}/boxes?name=sensebox&limit=2`) + .then(function (response) { + expect(response).to.have.status(200); + expect(response).to.have.header('content-type', 'application/json; charset=utf-8'); + + expect(response.body.length).to.be.equal(2); + + return chakram.wait(); + }); + }); + + it('should deny searching for a name if limit is greater than max value', function () { + return chakram.get(`${BASE_URL}/boxes?name=sensebox&limit=21`) + .then(function (response) { + expect(response).to.have.status(422); + expect(response).to.have.header('content-type', 'application/json; charset=utf-8'); + expect(response).json({ code: 'UnprocessableEntity', message: 'Illegal value for parameter limit. Supplied value 21 is outside of allowed range (> 20)' }); + + return chakram.wait(); + }); + }); + + it('should deny searching for a name if limit is lower than min value', function () { + return chakram.get(`${BASE_URL}/boxes?name=sensebox&limit=0`) + .then(function (response) { + expect(response).to.have.status(422); + expect(response).to.have.header('content-type', 'application/json; charset=utf-8'); + expect(response).json({ code: 'UnprocessableEntity', message: 'Illegal value for parameter limit. Supplied value 0 is outside of allowed range (< 1)' }); + + return chakram.wait(); + }); + }); + + it('should return empty array if there are no results', function () { + return chakram.get(`${BASE_URL}/boxes?name=asdf&limit=5`) + .then(function (response) { + expect(response).to.have.status(200); + expect(response).to.have.header('content-type', 'application/json; charset=utf-8'); + expect(response).to.comprise.of.json([]); + + return chakram.wait(); + }); + }); it('should allow to create new sensors via PUT', function () { return chakram.put(`${BASE_URL}/boxes/${custombox_id}`, { 'sensors': [{ 'title': 'PM10', 'unit': 'µg/m³', 'sensorType': 'SDS 011', 'edited': 'true', 'new': 'true' }, { 'title': 'PM2.5', 'unit': 'µg/m³', 'sensorType': 'SDS 011', 'edited': 'true', 'new': 'true' }] }, { headers: { 'Authorization': `Bearer ${jwt2}` } }) From c00caee687b38934a5fb218535380cd7c2e14686 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 21 Sep 2021 11:37:27 +0000 Subject: [PATCH 173/337] Bump nth-check from 2.0.0 to 2.0.1 (#515) Bumps [nth-check](https://github.com/fb55/nth-check) from 2.0.0 to 2.0.1. - [Release notes](https://github.com/fb55/nth-check/releases) - [Commits](https://github.com/fb55/nth-check/compare/v2.0.0...v2.0.1) --- updated-dependencies: - dependency-name: nth-check dependency-type: indirect ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index fa2e6dda..f9d28503 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2620,9 +2620,9 @@ npmlog@^4.0.2, npmlog@^4.1.2: set-blocking "~2.0.0" nth-check@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-2.0.0.tgz#1bb4f6dac70072fc313e8c9cd1417b5074c0a125" - integrity sha512-i4sc/Kj8htBrAiH1viZ0TgU8Y5XqCaV/FziYK6TBczxmeKm3AEFWqqF3195yKudrarqy7Zu80Ra5dobFjn9X/Q== + version "2.0.1" + resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-2.0.1.tgz#2efe162f5c3da06a28959fbd3db75dbeea9f0fc2" + integrity sha512-it1vE95zF6dTT9lBsYbxvqh0Soy4SPowchj0UBGj/V6cTPnXXtQOPUbhZ6CmGzAD/rW22LQK6E96pcdJXk4A4w== dependencies: boolbase "^1.0.0" From 691a3b9ee98bd9c5d23ae7f959491342f8c81b13 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 29 Sep 2021 11:59:42 +0200 Subject: [PATCH 174/337] Bump node from 14.17-alpine to 14.18.0-alpine (#518) * Bump node from 14.17-alpine to 14.18.0-alpine Bumps node from 14.17-alpine to 14.18.0-alpine. --- updated-dependencies: - dependency-name: node dependency-type: direct:production ... Signed-off-by: dependabot[bot] * use minor container image * Use node-14.18 in tests Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Gerald Pape --- Dockerfile | 4 ++-- tests/tests-Dockerfile | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Dockerfile b/Dockerfile index 7848383c..ec8085c4 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM node:14.17-alpine as build +FROM node:14.18-alpine as build ENV NODE_ENV=production @@ -23,7 +23,7 @@ RUN yarn create-version-file \ && rm -rf .git .scripts # Final stage -FROM node:14.17-alpine +FROM node:14.18-alpine ENV NODE_ENV=production diff --git a/tests/tests-Dockerfile b/tests/tests-Dockerfile index 939b537e..c3cbeb9c 100644 --- a/tests/tests-Dockerfile +++ b/tests/tests-Dockerfile @@ -1,4 +1,4 @@ -FROM node:14.17-alpine +FROM node:14.18-alpine # YARN_PRODUCTION=false is a workaround for https://github.com/yarnpkg/yarn/issues/4557 ENV NODE_ENV=production \ From 80e7f49d1187205cabb31b7d5075103bd4041452 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Fri, 7 Jan 2022 10:54:13 +0100 Subject: [PATCH 175/337] Update used docker images and fix python installation (#533) --- Dockerfile | 2 +- docker-compose.yml | 2 +- tests/docker-compose.yml | 8 ++++---- tests/tests-Dockerfile | 2 +- 4 files changed, 7 insertions(+), 7 deletions(-) diff --git a/Dockerfile b/Dockerfile index ec8085c4..3188caac 100644 --- a/Dockerfile +++ b/Dockerfile @@ -2,7 +2,7 @@ FROM node:14.18-alpine as build ENV NODE_ENV=production -RUN apk --no-cache --virtual .build add build-base python git +RUN apk --no-cache --virtual .build add build-base python2 git # taken from node:6-onbuild #RUN mkdir -p /usr/src/app diff --git a/docker-compose.yml b/docker-compose.yml index 6660e051..9d8d4f69 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,7 +1,7 @@ version: "2" services: db: - image: sensebox/opensensemap-api-mongo + image: ghcr.io/sensebox/osem-dev-mongo:v1.0.1 ports: - "27017:27017" volumes: diff --git a/tests/docker-compose.yml b/tests/docker-compose.yml index 895088c3..669a7765 100644 --- a/tests/docker-compose.yml +++ b/tests/docker-compose.yml @@ -173,12 +173,12 @@ services: depends_on: - mailhog mailhog: - image: mailhog/mailhog:v1.0.0 + image: mailhog/mailhog:v1.0.1 ports: - "8025:8025" mqtt-osem-integration: - image: sensebox/mqtt-osem-integration:v0.0.7 + image: ghcr.io/sensebox/mqtt-osem-integration:v0.1.0 depends_on: - db environment: @@ -199,7 +199,7 @@ services: } mosquitto: - image: eclipse-mosquitto:1.4.12 + image: eclipse-mosquitto:1.6.15 db: - image: mongo:${MONGO_TAG:-3.4} + image: mongo:${MONGO_TAG:-5} diff --git a/tests/tests-Dockerfile b/tests/tests-Dockerfile index c3cbeb9c..6b15bc88 100644 --- a/tests/tests-Dockerfile +++ b/tests/tests-Dockerfile @@ -11,7 +11,7 @@ WORKDIR /usr/src/app # COPY in dev versions COPY . /usr/src/app -RUN apk --no-cache --virtual .build add build-base python git \ +RUN apk --no-cache --virtual .build add build-base python2 git \ && yarn install --pure-lockfile --production=false \ && apk del .build COPY . /usr/src/app From e1a8409a11ca63bf785a7d942785628c14333c15 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Wed, 12 Jan 2022 12:44:40 +0100 Subject: [PATCH 176/337] use multi-arch mongo image (#534) --- docker-compose.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docker-compose.yml b/docker-compose.yml index 9d8d4f69..9c93ca66 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,7 +1,7 @@ version: "2" services: db: - image: ghcr.io/sensebox/osem-dev-mongo:v1.0.1 + image: ghcr.io/mpfeil/osem-dev-mongo:main ports: - "27017:27017" volumes: From f496d516bdc6040decc17be2adc6af4e819578b8 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Thu, 13 Jan 2022 15:30:59 +0100 Subject: [PATCH 177/337] Allow MQTTS and WSS for MQTT Integration (#514) * Enable mqtts for integration * Add workflow to publish image to ghcr * Swap grpc package for new version * Load package definition the new way * Add wss and extend message * v0.0.32-beta.0 * Update mqtt dependency and add script for testing models * Update osem api models dependency * Update loadSync options according to old grpc.load function * Update lockfile * Update tests and mosquitto * Update workflows for master branch * Use version tag for mqtt container --- .github/workflows/registry-purge-pr.yaml | 20 + .github/workflows/registry-purge.yaml | 18 + .github/workflows/registry.yaml | 49 ++ package.json | 3 +- packages/api/package.json | 2 +- packages/models/CHANGELOG.md | 3 + packages/models/package.json | 5 +- packages/models/src/box/integrations.js | 8 +- packages/models/src/box/mqttClient.js | 18 +- tests/docker-compose.yml | 6 +- tests/mosquitto/mosquitto.conf | 2 + tests/tests/005-create-boxes-test.js | 2 +- tests/tests/006-submit-measurements-test.js | 2 +- yarn.lock | 838 +++++--------------- 14 files changed, 324 insertions(+), 652 deletions(-) create mode 100644 .github/workflows/registry-purge-pr.yaml create mode 100644 .github/workflows/registry-purge.yaml create mode 100644 .github/workflows/registry.yaml create mode 100644 tests/mosquitto/mosquitto.conf diff --git a/.github/workflows/registry-purge-pr.yaml b/.github/workflows/registry-purge-pr.yaml new file mode 100644 index 00000000..c8e102a5 --- /dev/null +++ b/.github/workflows/registry-purge-pr.yaml @@ -0,0 +1,20 @@ +name: Purge Pull Request Image + +# https://docs.github.com/en/actions/reference/events-that-trigger-workflows#registry_package +# Purge Pull Request Image +on: + pull_request: + types: [closed] + +jobs: + purge_pr_image: + runs-on: ubuntu-latest + steps: + - name: Purge Pull Request Image + uses: vlaurin/action-ghcr-prune@v0.2.0 + with: + token: ${{ secrets.GHCR_TOKEN}} + organization: ${{ github.repository_owner}} + container: ${{ github.event.repository.name }} + tag-regex: pr-${{github.event.pull_request.number}}$ + dry-run: true \ No newline at end of file diff --git a/.github/workflows/registry-purge.yaml b/.github/workflows/registry-purge.yaml new file mode 100644 index 00000000..94371cd5 --- /dev/null +++ b/.github/workflows/registry-purge.yaml @@ -0,0 +1,18 @@ +name: Purge untagged images + +# https://docs.github.com/en/actions/reference/events-that-trigger-workflows#registry_package +# Run cleanup job if a new package was published or updated +on: + registry_package: + +jobs: + purge_untagged_images: + runs-on: ubuntu-latest + steps: + - name: clean packages + uses: vlaurin/action-ghcr-prune@v0.2.0 + with: + token: ${{ secrets.GHCR_TOKEN}} + organization: ${{ github.repository_owner}} + container: ${{ github.event.repository.name }} + untagged: true \ No newline at end of file diff --git a/.github/workflows/registry.yaml b/.github/workflows/registry.yaml new file mode 100644 index 00000000..563519bb --- /dev/null +++ b/.github/workflows/registry.yaml @@ -0,0 +1,49 @@ +name: Build and publish to Github Container Registry + +on: + push: + branches: [ master ] + tags: [ 'v*.*.*' ] + pull_request: + branches: + - master + +env: + REGISTRY: ghcr.io + IMAGE_NAME: ${{ github.repository }} + +jobs: + build-and-push-images: + runs-on: ubuntu-latest + permissions: + contents: read + packages: write + + steps: + - name: Checkout repository + uses: actions/checkout@v2 + + - name: Log in to the Container registry + uses: docker/login-action@f054a8b539a109f9f41c372932f1ae047eff08c9 + with: + registry: ${{ env.REGISTRY }} + username: ${{ github.actor }} + password: ${{ secrets.GITHUB_TOKEN }} + + - name: Extract metadata (tags, labels) for Docker + id: meta + uses: docker/metadata-action@98669ae865ea3cffbcbaa878cf57c20bbf1c6c38 + with: + images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} + flavor: | + latest=auto + prefix= + suffix= + + - name: Build and push Docker image + uses: docker/build-push-action@ad44023a93711e3deb337508980b4b5e9bcdc5dc + with: + context: . + push: true + tags: ${{ steps.meta.outputs.tags }} + labels: ${{ steps.meta.outputs.labels }} diff --git a/package.json b/package.json index a555cc15..c8c4b3bf 100644 --- a/package.json +++ b/package.json @@ -9,6 +9,7 @@ "stop-dev-db": "sudo docker-compose down db", "build-test-env": "./.scripts/run-tests.sh build", "test": "./.scripts/run-tests.sh", + "test-models": "./.scripts/run-tests.sh only_models", "NOTpretest": "node tests/waitForHttp", "tag-container": "./.scripts/npm_tag-container.sh", "lint:ci": "eslint --ignore-pattern node_modules \"{tests,packages}/**/*.js\"", @@ -25,7 +26,7 @@ "eslint": "7.26.0", "mimelib": "^0.3.1", "mocha": "^8.3.2", - "mqtt": "^3.0.0", + "mqtt": "^4.2.8", "randomgeojson": "^1.0.0" } } diff --git a/packages/api/package.json b/packages/api/package.json index b67c33ef..92fa5fc5 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -10,7 +10,7 @@ "Norwin Roosen" ], "dependencies": { - "@sensebox/opensensemap-api-models": "^0.0.31", + "@sensebox/opensensemap-api-models": "^0.0.32-beta.0", "@turf/area": "^6.3.0", "@turf/bbox": "^6.3.0", "@turf/centroid": "^6.3.0", diff --git a/packages/models/CHANGELOG.md b/packages/models/CHANGELOG.md index c0b6bafc..1da0c41d 100644 --- a/packages/models/CHANGELOG.md +++ b/packages/models/CHANGELOG.md @@ -2,6 +2,9 @@ ## Unreleased +## v0.0.32-beta.0 +- Allow mqtts nad wss for mqtt-integration + ## v0.0.31 - Update @sensebox/node-sketch-templater to v1.10.5 diff --git a/packages/models/package.json b/packages/models/package.json index 7b3475c1..93748450 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -1,17 +1,18 @@ { "name": "@sensebox/opensensemap-api-models", "description": "openSenseMap data models and database connection", - "version": "0.0.31", + "version": "0.0.32-beta.0", "main": "index.js", "license": "MIT", "dependencies": { + "@grpc/grpc-js": "^1.3.7", + "@grpc/proto-loader": "^0.6.4", "@sensebox/osem-protos": "^1.1.0", "@sensebox/sketch-templater": "^1.10.5", "bcrypt": "^5.0.1", "bunyan": "^1.8.15", "config": "^3.3.6", "got": "^11.8.2", - "grpc": "^1.24.7", "isemail": "^3.0.0", "jsonpath": "^1.1.1", "lodash.isequal": "^4.5.0", diff --git a/packages/models/src/box/integrations.js b/packages/models/src/box/integrations.js index 2292526c..856f8203 100644 --- a/packages/models/src/box/integrations.js +++ b/packages/models/src/box/integrations.js @@ -7,7 +7,13 @@ const { mongoose } = require('../db'), const mqttSchema = new mongoose.Schema({ enabled: { type: Boolean, default: false, required: true }, - url: { type: String, trim: true, validate: [function validMqttUri (url) { return url === '' || url.startsWith('mqtt://') || url.startsWith('ws://'); }, '{PATH} must be either empty or start with mqtt:// or ws://'] }, + url: { type: String, trim: true, validate: [function validMqttUri (url) { return ( + url === '' || + url.startsWith('mqtt://') || + url.startsWith('mqtts://') || + url.startsWith('ws://') || + url.startsWith('wss://') + ); }, '{PATH} must be either empty or start with mqtt(s):// or ws(s)://'] }, topic: { type: String, trim: true }, messageFormat: { type: String, trim: true, enum: ['json', 'csv', 'application/json', 'text/csv', 'debug_plain', ''] }, decodeOptions: { type: String, trim: true, validate: isJSONParseableValidation }, diff --git a/packages/models/src/box/mqttClient.js b/packages/models/src/box/mqttClient.js index c6d5bac0..0bf79abd 100644 --- a/packages/models/src/box/mqttClient.js +++ b/packages/models/src/box/mqttClient.js @@ -1,6 +1,7 @@ 'use strict'; -const grpc = require('grpc'), +const protoLoader = require('@grpc/proto-loader'), + grpcLibrary = require('@grpc/grpc-js'), { mqttProto } = require('@sensebox/osem-protos'), log = require('../log'), config = require('config').get('openSenseMap-API-models'); @@ -22,9 +23,20 @@ module.exports = { return; } - const { MqttService } = grpc.load(mqttProto); + const packageDefinition = protoLoader.loadSync(mqttProto, { + keepCase: true, + longs: String, + enums: String, + defaults: true, + oneofs: true, + }); + const MqttService = grpcLibrary.loadPackageDefinition(packageDefinition).MqttService; - const credentials = grpc.credentials.createSsl(Buffer.from(ca_cert), Buffer.from(key), Buffer.from(cert)); + const credentials = grpcLibrary.credentials.createSsl( + Buffer.from(ca_cert), + Buffer.from(key), + Buffer.from(cert) + ); const client = new MqttService(url, credentials); log.info({ mqttClient: 'connected GRPC client' }); diff --git a/tests/docker-compose.yml b/tests/docker-compose.yml index 669a7765..f987835f 100644 --- a/tests/docker-compose.yml +++ b/tests/docker-compose.yml @@ -199,7 +199,11 @@ services: } mosquitto: - image: eclipse-mosquitto:1.6.15 + image: eclipse-mosquitto:2.0.12 + ports: + - "8883:8883" + volumes: + - ./mosquitto:/mosquitto/config db: image: mongo:${MONGO_TAG:-5} diff --git a/tests/mosquitto/mosquitto.conf b/tests/mosquitto/mosquitto.conf new file mode 100644 index 00000000..9979e720 --- /dev/null +++ b/tests/mosquitto/mosquitto.conf @@ -0,0 +1,2 @@ +allow_anonymous true +port 8883 \ No newline at end of file diff --git a/tests/tests/005-create-boxes-test.js b/tests/tests/005-create-boxes-test.js index 7bcf9ced..392d64e7 100644 --- a/tests/tests/005-create-boxes-test.js +++ b/tests/tests/005-create-boxes-test.js @@ -512,7 +512,7 @@ describe('openSenseMap API Routes: /boxes', function () { }); it('should allow to enable mqtt via PUT', function () { - const update_payload = { mqtt: { enabled: true, url: 'mqtt://mosquitto', topic: 'mytopic', messageFormat: 'json', decodeOptions: '{}', connectionOptions: '{}' } }; + const update_payload = { mqtt: { enabled: true, url: 'mqtt://mosquitto:8883', topic: 'mytopic', messageFormat: 'json', decodeOptions: '{}', connectionOptions: '{}' } }; return chakram.put(`${BASE_URL}/boxes/${boxIds[1]}`, update_payload, { headers: { 'Authorization': `Bearer ${jwt2}` } }) .then(function (response) { diff --git a/tests/tests/006-submit-measurements-test.js b/tests/tests/006-submit-measurements-test.js index 6ffdb7fb..035019c5 100644 --- a/tests/tests/006-submit-measurements-test.js +++ b/tests/tests/006-submit-measurements-test.js @@ -476,7 +476,7 @@ describe('submitting measurements', function () { const payload = JSON.stringify(json_submit_data.json_arr(boxes[0].sensors)); - return publishMqttMessage('mqtt://mosquitto', 'mytopic', payload) + return publishMqttMessage('mqtt://mosquitto:8883', 'mytopic', payload) .then(function () { return new Promise(function (resolve) { setTimeout(resolve, 500); diff --git a/yarn.lock b/yarn.lock index f9d28503..f5adb92d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -38,6 +38,24 @@ minimatch "^3.0.4" strip-json-comments "^3.1.1" +"@grpc/grpc-js@^1.3.7": + version "1.3.7" + resolved "https://registry.yarnpkg.com/@grpc/grpc-js/-/grpc-js-1.3.7.tgz#58b687aff93b743aafde237fd2ee9a3259d7f2d8" + integrity sha512-CKQVuwuSPh40tgOkR7c0ZisxYRiN05PcKPW72mQL5y++qd7CwBRoaJZvU5xfXnCJDFBmS3qZGQ71Frx6Ofo2XA== + dependencies: + "@types/node" ">=12.12.47" + +"@grpc/proto-loader@^0.6.4": + version "0.6.4" + resolved "https://registry.yarnpkg.com/@grpc/proto-loader/-/proto-loader-0.6.4.tgz#5438c0d771e92274e77e631babdc14456441cbdc" + integrity sha512-7xvDvW/vJEcmLUltCUGOgWRPM8Oofv0eCFSVMuKqaqWJaXSzmB+m9hiyqe34QofAl4WAzIKUZZlinIF9FOHyTQ== + dependencies: + "@types/long" "^4.0.1" + lodash.camelcase "^4.3.0" + long "^4.0.0" + protobufjs "^6.10.0" + yargs "^16.1.1" + "@mapbox/node-pre-gyp@^1.0.0": version "1.0.0" resolved "https://registry.yarnpkg.com/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.0.tgz#2b809e701da0f6729b47fe78ad4b9dc187a7d2e5" @@ -62,6 +80,59 @@ extsprintf "^1.4.0" lodash "^4.17.15" +"@protobufjs/aspromise@^1.1.1", "@protobufjs/aspromise@^1.1.2": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@protobufjs/aspromise/-/aspromise-1.1.2.tgz#9b8b0cc663d669a7d8f6f5d0893a14d348f30fbf" + integrity sha1-m4sMxmPWaafY9vXQiToU00jzD78= + +"@protobufjs/base64@^1.1.2": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@protobufjs/base64/-/base64-1.1.2.tgz#4c85730e59b9a1f1f349047dbf24296034bb2735" + integrity sha512-AZkcAA5vnN/v4PDqKyMR5lx7hZttPDgClv83E//FMNhR2TMcLUhfRUBHCmSl0oi9zMgDDqRUJkSxO3wm85+XLg== + +"@protobufjs/codegen@^2.0.4": + version "2.0.4" + resolved "https://registry.yarnpkg.com/@protobufjs/codegen/-/codegen-2.0.4.tgz#7ef37f0d010fb028ad1ad59722e506d9262815cb" + integrity sha512-YyFaikqM5sH0ziFZCN3xDC7zeGaB/d0IUb9CATugHWbd1FRFwWwt4ld4OYMPWu5a3Xe01mGAULCdqhMlPl29Jg== + +"@protobufjs/eventemitter@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@protobufjs/eventemitter/-/eventemitter-1.1.0.tgz#355cbc98bafad5978f9ed095f397621f1d066b70" + integrity sha1-NVy8mLr61ZePntCV85diHx0Ga3A= + +"@protobufjs/fetch@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@protobufjs/fetch/-/fetch-1.1.0.tgz#ba99fb598614af65700c1619ff06d454b0d84c45" + integrity sha1-upn7WYYUr2VwDBYZ/wbUVLDYTEU= + dependencies: + "@protobufjs/aspromise" "^1.1.1" + "@protobufjs/inquire" "^1.1.0" + +"@protobufjs/float@^1.0.2": + version "1.0.2" + resolved "https://registry.yarnpkg.com/@protobufjs/float/-/float-1.0.2.tgz#5e9e1abdcb73fc0a7cb8b291df78c8cbd97b87d1" + integrity sha1-Xp4avctz/Ap8uLKR33jIy9l7h9E= + +"@protobufjs/inquire@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@protobufjs/inquire/-/inquire-1.1.0.tgz#ff200e3e7cf2429e2dcafc1140828e8cc638f089" + integrity sha1-/yAOPnzyQp4tyvwRQIKOjMY48Ik= + +"@protobufjs/path@^1.1.2": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@protobufjs/path/-/path-1.1.2.tgz#6cc2b20c5c9ad6ad0dccfd21ca7673d8d7fbf68d" + integrity sha1-bMKyDFya1q0NzP0hynZz2Nf79o0= + +"@protobufjs/pool@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@protobufjs/pool/-/pool-1.1.0.tgz#09fd15f2d6d3abfa9b65bc366506d6ad7846ff54" + integrity sha1-Cf0V8tbTq/qbZbw2ZQbWrXhG/1Q= + +"@protobufjs/utf8@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@protobufjs/utf8/-/utf8-1.1.0.tgz#a777360b5b39a1a2e5106f8e858f2fd2d060c570" + integrity sha1-p3c2C1s5oaLlEG+OhY8v0tBgxXA= + "@sensebox/eslint-config-sensebox@^1.1.0": version "1.1.0" resolved "https://registry.yarnpkg.com/@sensebox/eslint-config-sensebox/-/eslint-config-sensebox-1.1.0.tgz#2fec4ec7945f34e7296c619fabd589d722ecd984" @@ -249,14 +320,6 @@ "@turf/helpers" "^6.3.0" "@turf/intersect" "^6.3.0" -"@types/bytebuffer@^5.0.40": - version "5.0.40" - resolved "https://registry.yarnpkg.com/@types/bytebuffer/-/bytebuffer-5.0.40.tgz#d6faac40dcfb09cd856cdc4c01d3690ba536d3ee" - integrity sha512-h48dyzZrPMz25K6Q4+NCwWaxwXany2FhQg/ErOcdZS1ZpsaDnDMZg8JYLMTGz7uvXKrcKGJUZJlZObyfgdaN9g== - dependencies: - "@types/long" "*" - "@types/node" "*" - "@types/cacheable-request@^6.0.1": version "6.0.1" resolved "https://registry.yarnpkg.com/@types/cacheable-request/-/cacheable-request-6.0.1.tgz#5d22f3dded1fd3a84c0bbeb5039a7419c2c91976" @@ -284,7 +347,7 @@ dependencies: "@types/node" "*" -"@types/long@*": +"@types/long@^4.0.1": version "4.0.1" resolved "https://registry.yarnpkg.com/@types/long/-/long-4.0.1.tgz#459c65fa1867dafe6a8f322c4c51695663cc55e9" integrity sha512-5tXH6Bx/kNGd3MgffdmP4dy2Z+G4eaXw0SE81Tq3BNadtnMR5/ySMzX4SLEzHJzSmPNn4HIdpQsBvXMUykr58w== @@ -294,6 +357,11 @@ resolved "https://registry.yarnpkg.com/@types/node/-/node-13.13.4.tgz#1581d6c16e3d4803eb079c87d4ac893ee7501c2c" integrity sha512-x26ur3dSXgv5AwKS0lNfbjpCakGIduWU1DU91Zz58ONRWrIKGunmZBNv4P7N+e27sJkiGDsw/3fT4AtsqQBrBA== +"@types/node@>=12.12.47", "@types/node@>=13.7.0": + version "16.6.0" + resolved "https://registry.yarnpkg.com/@types/node/-/node-16.6.0.tgz#0d5685f85066f94e97f19e8a67fe003c5fadacc4" + integrity sha512-OyiZPohMMjZEYqcVo/UJ04GyAxXOJEZO/FpzyXxcH4r/ArrVoXHf4MbUrkLp0Tz7/p1mMKpo5zJ6ZHl8XBNthQ== + "@types/responselike@*", "@types/responselike@^1.0.0": version "1.0.0" resolved "https://registry.yarnpkg.com/@types/responselike/-/responselike-1.0.0.tgz#251f4fe7d154d2bad125abe1b429b23afd262e29" @@ -426,14 +494,6 @@ argparse@^2.0.1: resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== -ascli@~1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/ascli/-/ascli-1.0.1.tgz#bcfa5974a62f18e81cabaeb49732ab4a88f906bc" - integrity sha1-vPpZdKYvGOgcq660lzKrSoj5Brw= - dependencies: - colour "~0.7.1" - optjs "~3.2.2" - asn1@~0.2.3: version "0.2.4" resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.4.tgz#8d2475dfab553bb33e77b54e59e880bb8ce23136" @@ -456,11 +516,6 @@ astral-regex@^2.0.0: resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-2.0.0.tgz#483143c567aeed4785759c0865786dc77d7d2e31" integrity sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ== -async-limiter@~1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/async-limiter/-/async-limiter-1.0.1.tgz#dd379e94f0db8310b08291f9d64c3209766617fd" - integrity sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ== - async@2.6.0: version "2.6.0" resolved "https://registry.yarnpkg.com/async/-/async-2.6.0.tgz#61a29abb6fcc026fea77e56d1c6ec53a795951f4" @@ -488,10 +543,10 @@ balanced-match@^1.0.0: resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" integrity sha1-ibTRmasr7kneFk6gK4nORi1xt2c= -base64-js@^1.3.0: - version "1.3.1" - resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.3.1.tgz#58ece8cb75dd07e71ed08c736abc5fac4dbf8df1" - integrity sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g== +base64-js@^1.3.1: + version "1.5.1" + resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" + integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== bcrypt-pbkdf@^1.0.0: version "1.0.2" @@ -513,13 +568,14 @@ binary-extensions@^2.0.0: resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.0.0.tgz#23c0df14f6a88077f5f986c0d167ec03c3d5537c" integrity sha512-Phlt0plgpIIBOGTT/ehfFnbNlfsDEiqmzE2KRXoX1bLIlir4X/MR+zSyBEkL05ffWgnRSf/DXv+WrUAVr93/ow== -bl@^1.2.2: - version "1.2.3" - resolved "https://registry.yarnpkg.com/bl/-/bl-1.2.3.tgz#1e8dd80142eac80d7158c9dccc047fb620e035e7" - integrity sha512-pvcNpa0UU69UT341rO6AYy4FVAIkUHuZXRIWbq+zHnsVcRzDDjIAhGuuYoi0d//cwIwtt4pkpKycWEfjdV+vww== +bl@^4.0.2: + version "4.1.0" + resolved "https://registry.yarnpkg.com/bl/-/bl-4.1.0.tgz#451535264182bec2fbbc83a62ab98cf11d9f7b3a" + integrity sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w== dependencies: - readable-stream "^2.3.5" - safe-buffer "^5.1.1" + buffer "^5.5.0" + inherits "^2.0.4" + readable-stream "^3.4.0" bluebird@3.5.0: version "3.5.0" @@ -571,6 +627,14 @@ buffer-shims@^1.0.0, buffer-shims@~1.0.0: resolved "https://registry.yarnpkg.com/buffer-shims/-/buffer-shims-1.0.0.tgz#9978ce317388c649ad8793028c3477ef044a8b51" integrity sha1-mXjOMXOIxkmth5MCjDR37wRKi1E= +buffer@^5.5.0: + version "5.7.1" + resolved "https://registry.yarnpkg.com/buffer/-/buffer-5.7.1.tgz#ba62e7c13133053582197160851a8f648e99eed0" + integrity sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ== + dependencies: + base64-js "^1.3.1" + ieee754 "^1.1.13" + bunyan@^1.8.1, bunyan@^1.8.15: version "1.8.15" resolved "https://registry.yarnpkg.com/bunyan/-/bunyan-1.8.15.tgz#8ce34ca908a17d0776576ca1b2f6cbd916e93b46" @@ -581,13 +645,6 @@ bunyan@^1.8.1, bunyan@^1.8.15: mv "~2" safe-json-stringify "~1" -bytebuffer@~5: - version "5.0.1" - resolved "https://registry.yarnpkg.com/bytebuffer/-/bytebuffer-5.0.1.tgz#582eea4b1a873b6d020a48d58df85f0bba6cfddd" - integrity sha1-WC7qSxqHO20CCkjVjfhfC7ps/d0= - dependencies: - long "~3" - cacheable-lookup@^5.0.3: version "5.0.3" resolved "https://registry.yarnpkg.com/cacheable-lookup/-/cacheable-lookup-5.0.3.tgz#049fdc59dffdd4fc285e8f4f82936591bd59fec3" @@ -606,24 +663,11 @@ cacheable-request@^7.0.1: normalize-url "^4.1.0" responselike "^2.0.0" -callback-stream@^1.0.2: - version "1.1.0" - resolved "https://registry.yarnpkg.com/callback-stream/-/callback-stream-1.1.0.tgz#4701a51266f06e06eaa71fc17233822d875f4908" - integrity sha1-RwGlEmbwbgbqpx/BcjOCLYdfSQg= - dependencies: - inherits "^2.0.1" - readable-stream "> 1.0.0 < 3.0.0" - callsites@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== -camelcase@^2.0.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-2.1.1.tgz#7c1d16d679a1bbe59ca02cacecfb011e201f5a1f" - integrity sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8= - camelcase@^6.0.0: version "6.2.0" resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.2.0.tgz#924af881c9d525ac9d87f40d964e5cea982a1809" @@ -739,25 +783,11 @@ chokidar@3.5.1: optionalDependencies: fsevents "~2.3.1" -chownr@^1.1.1: - version "1.1.4" - resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.4.tgz#6fc9d7b42d32a583596337666e7d08084da2cc6b" - integrity sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg== - chownr@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/chownr/-/chownr-2.0.0.tgz#15bfbe53d2eab4cf70f18a8cd68ebe5b3cb1dece" integrity sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ== -cliui@^3.0.3: - version "3.2.0" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-3.2.0.tgz#120601537a916d29940f934da3b48d585a39213d" - integrity sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0= - dependencies: - string-width "^1.0.1" - strip-ansi "^3.0.1" - wrap-ansi "^2.0.0" - cliui@^7.0.2: version "7.0.4" resolved "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f" @@ -816,11 +846,6 @@ color-name@~1.1.4: resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== -colour@~0.7.1: - version "0.7.1" - resolved "https://registry.yarnpkg.com/colour/-/colour-0.7.1.tgz#9cb169917ec5d12c0736d3e8685746df1cadf778" - integrity sha1-nLFpkX7F0SwHNtPoaFdG3xyt93g= - combined-stream@^1.0.6, combined-stream@~1.0.6: version "1.0.8" resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" @@ -841,14 +866,14 @@ concat-map@0.0.1: resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= -concat-stream@^1.6.2: - version "1.6.2" - resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.2.tgz#904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34" - integrity sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw== +concat-stream@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-2.0.0.tgz#414cf5af790a48c60ab9be4527d56d5e41133cb1" + integrity sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A== dependencies: buffer-from "^1.0.0" inherits "^2.0.3" - readable-stream "^2.2.2" + readable-stream "^3.0.2" typedarray "^0.0.6" config@^1.29.2: @@ -937,14 +962,6 @@ csv@^1.1.0: csv-stringify "^1.1.2" stream-transform "^0.2.2" -d@1, d@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/d/-/d-1.0.1.tgz#8698095372d58dbee346ffd0c7093f99f8f9eb5a" - integrity sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA== - dependencies: - es5-ext "^0.10.50" - type "^1.0.1" - dashdash@^1.12.0: version "1.14.1" resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" @@ -971,18 +988,6 @@ debug@4, debug@4.3.1, debug@^4.0.1, debug@^4.1.1: dependencies: ms "2.1.2" -debug@^3.2.6: - version "3.2.6" - resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b" - integrity sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ== - dependencies: - ms "^2.1.1" - -decamelize@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" - integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= - decamelize@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-4.0.0.tgz#aa472d7bf660eb15f3494efd531cab7f2a709837" @@ -1014,11 +1019,6 @@ deep-eql@^3.0.1: dependencies: type-detect "^4.0.0" -deep-extend@^0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac" - integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA== - deep-is@^0.1.3, deep-is@~0.1.3: version "0.1.3" resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" @@ -1046,7 +1046,7 @@ delegates@^1.0.0: resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" integrity sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o= -detect-libc@^1.0.2, detect-libc@^1.0.3: +detect-libc@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b" integrity sha1-+hN8S9aY7fVc1c0CrFWfkaTEups= @@ -1110,14 +1110,14 @@ dtrace-provider@^0.8.1, dtrace-provider@~0.8: dependencies: nan "^2.14.0" -duplexify@^3.5.1, duplexify@^3.6.0: - version "3.7.1" - resolved "https://registry.yarnpkg.com/duplexify/-/duplexify-3.7.1.tgz#2a4df5317f6ccfd91f86d6fd25d8d8a103b88309" - integrity sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g== +duplexify@^4.1.1: + version "4.1.2" + resolved "https://registry.yarnpkg.com/duplexify/-/duplexify-4.1.2.tgz#18b4f8d28289132fa0b9573c898d9f903f81c7b0" + integrity sha512-fz3OjcNCHmRP12MJoZMPglx8m4rrFP8rovnk4vT8Fs+aonZoCwGg10dSsQsfP/E62eZcPTMSMP6686fu9Qlqtw== dependencies: - end-of-stream "^1.0.0" - inherits "^2.0.1" - readable-stream "^2.0.0" + end-of-stream "^1.4.1" + inherits "^2.0.3" + readable-stream "^3.1.1" stream-shift "^1.0.0" ecc-jsbn@~0.1.1: @@ -1147,7 +1147,7 @@ encoding@~0.1.12: dependencies: iconv-lite "~0.4.13" -end-of-stream@^1.0.0, end-of-stream@^1.1.0, end-of-stream@^1.4.1: +end-of-stream@^1.1.0, end-of-stream@^1.4.1: version "1.4.4" resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0" integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q== @@ -1166,68 +1166,11 @@ entities@^2.0.0: resolved "https://registry.yarnpkg.com/entities/-/entities-2.1.0.tgz#992d3129cf7df6870b96c57858c249a120f8b8b5" integrity sha512-hCx1oky9PFrJ611mf0ifBLBRW8lUUVRlFolb5gWRfIELabBlbp9xZvrqZLZAs+NxFnbfQoeGd8wDkygjg7U85w== -es5-ext@^0.10.35, es5-ext@^0.10.50, es5-ext@~0.10.14: - version "0.10.53" - resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.53.tgz#93c5a3acfdbef275220ad72644ad02ee18368de1" - integrity sha512-Xs2Stw6NiNHWypzRTY1MtaG/uJlwCk8kH81920ma8mvN8Xq1gsfhZvpkImLQArw8AHnv8MT2I45J3c0R8slE+Q== - dependencies: - es6-iterator "~2.0.3" - es6-symbol "~3.1.3" - next-tick "~1.0.0" - -es6-iterator@~2.0.1, es6-iterator@~2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/es6-iterator/-/es6-iterator-2.0.3.tgz#a7de889141a05a94b0854403b2d0a0fbfa98f3b7" - integrity sha1-p96IkUGgWpSwhUQDstCg+/qY87c= - dependencies: - d "1" - es5-ext "^0.10.35" - es6-symbol "^3.1.1" - -es6-map@^0.1.5: - version "0.1.5" - resolved "https://registry.yarnpkg.com/es6-map/-/es6-map-0.1.5.tgz#9136e0503dcc06a301690f0bb14ff4e364e949f0" - integrity sha1-kTbgUD3MBqMBaQ8LsU/042TpSfA= - dependencies: - d "1" - es5-ext "~0.10.14" - es6-iterator "~2.0.1" - es6-set "~0.1.5" - es6-symbol "~3.1.1" - event-emitter "~0.3.5" - es6-promise@3.2.1: version "3.2.1" resolved "https://registry.yarnpkg.com/es6-promise/-/es6-promise-3.2.1.tgz#ec56233868032909207170c39448e24449dd1fc4" integrity sha1-7FYjOGgDKQkgcXDDlEjiREndH8Q= -es6-set@~0.1.5: - version "0.1.5" - resolved "https://registry.yarnpkg.com/es6-set/-/es6-set-0.1.5.tgz#d2b3ec5d4d800ced818db538d28974db0a73ccb1" - integrity sha1-0rPsXU2ADO2BjbU40ol02wpzzLE= - dependencies: - d "1" - es5-ext "~0.10.14" - es6-iterator "~2.0.1" - es6-symbol "3.1.1" - event-emitter "~0.3.5" - -es6-symbol@3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/es6-symbol/-/es6-symbol-3.1.1.tgz#bf00ef4fdab6ba1b46ecb7b629b4c7ed5715cc77" - integrity sha1-vwDvT9q2uhtG7Le2KbTH7VcVzHc= - dependencies: - d "1" - es5-ext "~0.10.14" - -es6-symbol@^3.1.1, es6-symbol@~3.1.1, es6-symbol@~3.1.3: - version "3.1.3" - resolved "https://registry.yarnpkg.com/es6-symbol/-/es6-symbol-3.1.3.tgz#bad5d3c1bcdac28269f4cb331e431c78ac705d18" - integrity sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA== - dependencies: - d "^1.0.1" - ext "^1.1.2" - escalade@^3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" @@ -1381,27 +1324,12 @@ esutils@^2.0.2: resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== -event-emitter@~0.3.5: - version "0.3.5" - resolved "https://registry.yarnpkg.com/event-emitter/-/event-emitter-0.3.5.tgz#df8c69eef1647923c7157b9ce83840610b02cc39" - integrity sha1-34xp7vFkeSPHFXuc6DhAYQsCzDk= - dependencies: - d "1" - es5-ext "~0.10.14" - -ext@^1.1.2: - version "1.4.0" - resolved "https://registry.yarnpkg.com/ext/-/ext-1.4.0.tgz#89ae7a07158f79d35517882904324077e4379244" - integrity sha512-Key5NIsUxdqKg3vIsdw9dSuXpPCQ297y6wBjL30edxwPgt2E44WcWBZey/ZvUc6sERLTxKdyCu4gZFmUbk1Q7A== - dependencies: - type "^2.0.0" - extend-object@1.x.x: version "1.0.0" resolved "https://registry.yarnpkg.com/extend-object/-/extend-object-1.0.0.tgz#42514f84015d1356caf5187969dfb2bc1bda0823" integrity sha1-QlFPhAFdE1bK9Rh5ad+yvBvaCCM= -extend@^3.0.0, extend@~3.0.2: +extend@~3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== @@ -1495,13 +1423,6 @@ formidable@^1.0.17: resolved "https://registry.yarnpkg.com/formidable/-/formidable-1.2.2.tgz#bf69aea2972982675f00865342b982986f6b8dd9" integrity sha512-V8gLm+41I/8kguQ4/o1D3RIHRmhYFG4pnNyonvua+40rqcEmT4+V71yaZ3B457xbbgCsCfjSPi65u/W6vK1U5Q== -fs-minipass@^1.2.5: - version "1.2.7" - resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-1.2.7.tgz#ccff8570841e7fe4265693da88936c55aed7f7c7" - integrity sha512-GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA== - dependencies: - minipass "^2.6.0" - fs-minipass@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-2.1.0.tgz#7f5036fdbf12c63c169190cbe4199c852271f9fb" @@ -1572,14 +1493,6 @@ getpass@^0.1.1: dependencies: assert-plus "^1.0.0" -glob-parent@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-3.1.0.tgz#9e6af6299d8d3bd2bd40430832bd113df906c5ae" - integrity sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4= - dependencies: - is-glob "^3.1.0" - path-dirname "^1.0.0" - glob-parent@^5.0.0, glob-parent@~5.1.0: version "5.1.1" resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.1.tgz#b6c1ef417c4e5663ea498f1c45afac6916bbc229" @@ -1587,23 +1500,7 @@ glob-parent@^5.0.0, glob-parent@~5.1.0: dependencies: is-glob "^4.0.1" -glob-stream@^6.1.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/glob-stream/-/glob-stream-6.1.0.tgz#7045c99413b3eb94888d83ab46d0b404cc7bdde4" - integrity sha1-cEXJlBOz65SIjYOrRtC0BMx73eQ= - dependencies: - extend "^3.0.0" - glob "^7.1.1" - glob-parent "^3.1.0" - is-negated-glob "^1.0.0" - ordered-read-streams "^1.0.0" - pumpify "^1.3.5" - readable-stream "^2.1.5" - remove-trailing-separator "^1.0.1" - to-absolute-glob "^2.0.0" - unique-stream "^2.0.2" - -glob@7.1.6, glob@^7.0.5, glob@^7.1.1, glob@^7.1.3: +glob@7.1.6, glob@^7.1.3: version "7.1.6" resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6" integrity sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA== @@ -1626,6 +1523,18 @@ glob@^6.0.1: once "^1.3.0" path-is-absolute "^1.0.0" +glob@^7.1.6: + version "7.1.7" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.7.tgz#3b193e9233f01d42d0b3f78294bbeeb418f94a90" + integrity sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ== + dependencies: + fs.realpath "^1.0.0" + inflight "^1.0.4" + inherits "2" + minimatch "^3.0.4" + once "^1.3.0" + path-is-absolute "^1.0.0" + globals@^12.1.0: version "12.4.0" resolved "https://registry.yarnpkg.com/globals/-/globals-12.4.0.tgz#a18813576a41b00a24a97e7f815918c2e19925f8" @@ -1662,18 +1571,6 @@ growl@1.10.5: resolved "https://registry.yarnpkg.com/growl/-/growl-1.10.5.tgz#f2735dc2283674fa67478b10181059355c369e5e" integrity sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA== -grpc@^1.24.7: - version "1.24.7" - resolved "https://registry.yarnpkg.com/grpc/-/grpc-1.24.7.tgz#58d8eb2a8a9c11ccd678f27403ba54ee4ea3d895" - integrity sha512-AFWychfq60LBUrelOWgT5PWk05n98z7/C8qCgeNAJ4YvK8khVNSlbEHMLaCu7COqbX1JwJxSbzw9B9YhnzKeYQ== - dependencies: - "@types/bytebuffer" "^5.0.40" - lodash.camelcase "^4.3.0" - lodash.clone "^4.5.0" - nan "^2.13.2" - node-pre-gyp "^0.16.0" - protobufjs "^5.0.3" - handle-thing@^1.2.5: version "1.2.5" resolved "https://registry.yarnpkg.com/handle-thing/-/handle-thing-1.2.5.tgz#fd7aad726bf1a5fd16dfc29b2f7a6601d27139c4" @@ -1712,15 +1609,13 @@ he@1.2.0: resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw== -help-me@^1.0.1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/help-me/-/help-me-1.1.0.tgz#8f2d508d0600b4a456da2f086556e7e5c056a3c6" - integrity sha1-jy1QjQYAtKRW2i8IZVbn5cBWo8Y= +help-me@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/help-me/-/help-me-3.0.0.tgz#9803c81b5f346ad2bce2c6a0ba01b82257d319e8" + integrity sha512-hx73jClhyk910sidBB7ERlnhMlFsJJIBqSVMFDwPN8o2v9nmp5KgLq1Xz1Bf1fCMMZ6mPrX159iG0VLy/fPMtQ== dependencies: - callback-stream "^1.0.2" - glob-stream "^6.1.0" - through2 "^2.0.1" - xtend "^4.0.0" + glob "^7.1.6" + readable-stream "^3.6.0" honeybadger@^1.4.0: version "1.4.0" @@ -1800,19 +1695,17 @@ http2-wrapper@^1.0.0-beta.5.2: quick-lru "^5.1.1" resolve-alpn "^1.0.0" -iconv-lite@^0.4.4, iconv-lite@~0.4.13: +iconv-lite@~0.4.13: version "0.4.24" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== dependencies: safer-buffer ">= 2.1.2 < 3" -ignore-walk@^3.0.1: - version "3.0.3" - resolved "https://registry.yarnpkg.com/ignore-walk/-/ignore-walk-3.0.3.tgz#017e2447184bfeade7c238e4aefdd1e8f95b1e37" - integrity sha512-m7o6xuOaT1aqheYHKf8W6J5pYH85ZI9w077erOzLje3JsB1gkafkAhHHY19dqjulgIZHFm32Cp5uNZgcQqdJKw== - dependencies: - minimatch "^3.0.4" +ieee754@^1.1.13: + version "1.2.1" + resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" + integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== ignore@^4.0.6: version "4.0.6" @@ -1840,29 +1733,11 @@ inflight@^1.0.4: once "^1.3.0" wrappy "1" -inherits@2, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.1, inherits@~2.0.3: +inherits@2, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.1, inherits@~2.0.3: version "2.0.4" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== -ini@~1.3.0: - version "1.3.8" - resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c" - integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew== - -invert-kv@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-1.0.0.tgz#104a8e4aaca6d3d8cd157a8ef8bfab2d7a3ffdb6" - integrity sha1-EEqOSqym09jNFXqO+L+rLXo//bY= - -is-absolute@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-absolute/-/is-absolute-1.0.0.tgz#395e1ae84b11f26ad1795e73c17378e48a301576" - integrity sha512-dOWoqflvcydARa360Gvv18DZ/gRuHKi2NU/wU5X1ZFzdYfH29nkiNZsF3mp4OJ3H4yo9Mx8A/uAGNzpzPN3yBA== - dependencies: - is-relative "^1.0.0" - is-windows "^1.0.1" - is-binary-path@~2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" @@ -1870,7 +1745,7 @@ is-binary-path@~2.1.0: dependencies: binary-extensions "^2.0.0" -is-extglob@^2.1.0, is-extglob@^2.1.1: +is-extglob@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= @@ -1892,13 +1767,6 @@ is-fullwidth-code-point@^3.0.0: resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== -is-glob@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a" - integrity sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo= - dependencies: - is-extglob "^2.1.0" - is-glob@^4.0.0, is-glob@^4.0.1, is-glob@~4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.1.tgz#7567dbe9f2f5e2467bc77ab83c4a29482407a5dc" @@ -1906,11 +1774,6 @@ is-glob@^4.0.0, is-glob@^4.0.1, is-glob@~4.0.1: dependencies: is-extglob "^2.1.1" -is-negated-glob@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-negated-glob/-/is-negated-glob-1.0.0.tgz#6910bca5da8c95e784b5751b976cf5a10fee36d2" - integrity sha1-aRC8pdqMleeEtXUbl2z1oQ/uNtI= - is-number@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" @@ -1926,13 +1789,6 @@ is-regexp@^1.0.0: resolved "https://registry.yarnpkg.com/is-regexp/-/is-regexp-1.0.0.tgz#fd2d883545c46bac5a633e7b9a09e87fa2cb5069" integrity sha1-/S2INUXEa6xaYz57mgnof6LLUGk= -is-relative@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-relative/-/is-relative-1.0.0.tgz#a1bb6935ce8c5dba1e8b9754b9b2dcc020e2260d" - integrity sha512-Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA== - dependencies: - is-unc-path "^1.0.0" - is-supported-regexp-flag@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/is-supported-regexp-flag/-/is-supported-regexp-flag-1.0.1.tgz#21ee16518d2c1dd3edd3e9a0d57e50207ac364ca" @@ -1943,18 +1799,6 @@ is-typedarray@~1.0.0: resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo= -is-unc-path@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-unc-path/-/is-unc-path-1.0.0.tgz#d731e8898ed090a12c352ad2eaed5095ad322c9d" - integrity sha512-mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ== - dependencies: - unc-path-regex "^0.1.2" - -is-windows@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" - integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA== - isarray@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" @@ -2110,13 +1954,6 @@ keyv@^4.0.0: dependencies: json-buffer "3.0.1" -lcid@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/lcid/-/lcid-1.0.0.tgz#308accafa0bc483a3867b4b6f2b9506251d1b835" - integrity sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU= - dependencies: - invert-kv "^1.0.0" - leven@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/leven/-/leven-2.1.0.tgz#c2e7a9f772094dee9d34202ae8acce4687875580" @@ -2150,11 +1987,6 @@ lodash.camelcase@^4.3.0: resolved "https://registry.yarnpkg.com/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz#b28aa6288a2b9fc651035c7711f65ab6190331a6" integrity sha1-soqmKIorn8ZRA1x3EfZathkDMaY= -lodash.clone@^4.5.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/lodash.clone/-/lodash.clone-4.5.0.tgz#195870450f5a13192478df4bc3d23d2dea1907b6" - integrity sha1-GVhwRQ9aExkkeN9Lw9I9LeoZB7Y= - lodash.get@4.4.2, lodash.get@~4.4.2: version "4.4.2" resolved "https://registry.yarnpkg.com/lodash.get/-/lodash.get-4.4.2.tgz#2d177f652fa31e939b4438d5341499dfa3825e99" @@ -2212,10 +2044,10 @@ log-symbols@4.0.0: dependencies: chalk "^4.0.0" -long@~3: - version "3.2.0" - resolved "https://registry.yarnpkg.com/long/-/long-3.2.0.tgz#d821b7138ca1cb581c172990ef14db200b5c474b" - integrity sha1-2CG3E4yhy1gcFymQ7xTbIAtcR0s= +long@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/long/-/long-4.0.0.tgz#9a7b71cfb7d361a194ea555241c92f7468d5bf28" + integrity sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA== lowercase-keys@^2.0.0: version "2.0.0" @@ -2296,14 +2128,6 @@ minimist@^1.1.0, minimist@^1.2.0, minimist@^1.2.5: resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== -minipass@^2.6.0, minipass@^2.8.6, minipass@^2.9.0: - version "2.9.0" - resolved "https://registry.yarnpkg.com/minipass/-/minipass-2.9.0.tgz#e713762e7d3e32fed803115cf93e04bca9fcc9a6" - integrity sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg== - dependencies: - safe-buffer "^5.1.2" - yallist "^3.0.0" - minipass@^3.0.0: version "3.1.3" resolved "https://registry.yarnpkg.com/minipass/-/minipass-3.1.3.tgz#7d42ff1f39635482e15f9cdb53184deebd5815fd" @@ -2311,13 +2135,6 @@ minipass@^3.0.0: dependencies: yallist "^4.0.0" -minizlib@^1.2.1: - version "1.3.3" - resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-1.3.3.tgz#2290de96818a34c29551c8a8d301216bd65a861d" - integrity sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q== - dependencies: - minipass "^2.9.0" - minizlib@^2.1.1: version "2.1.2" resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-2.1.2.tgz#e90d3466ba209b932451508a11ce3d3632145931" @@ -2326,18 +2143,18 @@ minizlib@^2.1.1: minipass "^3.0.0" yallist "^4.0.0" -mkdirp@^0.5.0, mkdirp@^0.5.3, mkdirp@~0.5.1: +mkdirp@^1.0.3, mkdirp@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" + integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== + +mkdirp@~0.5.1: version "0.5.5" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.5.tgz#d91cefd62d1436ca0f41620e251288d420099def" integrity sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ== dependencies: minimist "^1.2.5" -mkdirp@^1.0.3, mkdirp@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" - integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== - mocha@^8.3.2: version "8.3.2" resolved "https://registry.yarnpkg.com/mocha/-/mocha-8.3.2.tgz#53406f195fa86fbdebe71f8b1c6fb23221d69fcc" @@ -2427,37 +2244,34 @@ mpromise@0.5.5: resolved "https://registry.yarnpkg.com/mpromise/-/mpromise-0.5.5.tgz#f5b24259d763acc2257b0a0c8c6d866fd51732e6" integrity sha1-9bJCWddjrMIlewoMjG2Gb9UXMuY= -mqtt-packet@^6.0.0: - version "6.3.2" - resolved "https://registry.yarnpkg.com/mqtt-packet/-/mqtt-packet-6.3.2.tgz#a737734a9a64e8cffbad7ad9e116d35b912f2e00" - integrity sha512-i56+2kN6F57KInGtjjfUXSl4xG8u/zOvfaXFLKFAbBXzWkXOmwcmjaSCBPayf2IQCkQU0+h+S2DizCo3CF6gQA== +mqtt-packet@^6.8.0: + version "6.10.0" + resolved "https://registry.yarnpkg.com/mqtt-packet/-/mqtt-packet-6.10.0.tgz#c8b507832c4152e3e511c0efa104ae4a64cd418f" + integrity sha512-ja8+mFKIHdB1Tpl6vac+sktqy3gA8t9Mduom1BA75cI+R9AHnZOiaBQwpGiWnaVJLDGRdNhQmFaAqd7tkKSMGA== dependencies: - bl "^1.2.2" + bl "^4.0.2" debug "^4.1.1" - inherits "^2.0.3" - process-nextick-args "^2.0.0" - safe-buffer "^5.1.2" + process-nextick-args "^2.0.1" -mqtt@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/mqtt/-/mqtt-3.0.0.tgz#7961e5f61efba3eec37d5aa9c4cbcdeb6f841380" - integrity sha512-0nKV6MAc1ibKZwaZQUTb3iIdT4NVpj541BsYrqrGBcQdQ7Jd0MnZD1/6/nj1UFdGTboK9ZEUXvkCu2nPCugHFA== +mqtt@^4.2.8: + version "4.2.8" + resolved "https://registry.yarnpkg.com/mqtt/-/mqtt-4.2.8.tgz#f0e54b138bcdaef6c55c547b3a4de9cf9074208c" + integrity sha512-DJYjlXODVXtSDecN8jnNzi6ItX3+ufGsEs9OB3YV24HtkRrh7kpx8L5M1LuyF0KzaiGtWr2PzDcMGAY60KGOSA== dependencies: - base64-js "^1.3.0" commist "^1.0.0" - concat-stream "^1.6.2" - end-of-stream "^1.4.1" - es6-map "^0.1.5" - help-me "^1.0.1" + concat-stream "^2.0.0" + debug "^4.1.1" + duplexify "^4.1.1" + help-me "^3.0.0" inherits "^2.0.3" - minimist "^1.2.0" - mqtt-packet "^6.0.0" + minimist "^1.2.5" + mqtt-packet "^6.8.0" pump "^3.0.0" - readable-stream "^2.3.6" + readable-stream "^3.6.0" reinterval "^1.1.0" split2 "^3.1.0" - websocket-stream "^5.1.2" - xtend "^4.0.1" + ws "^7.5.0" + xtend "^4.0.2" mquery@2.3.3: version "2.3.3" @@ -2498,7 +2312,7 @@ mv@~2: ncp "~2.0.0" rimraf "~2.4.0" -nan@^2.13.2, nan@^2.14.0: +nan@^2.14.0: version "2.14.1" resolved "https://registry.yarnpkg.com/nan/-/nan-2.14.1.tgz#d7be34dfa3105b91494c3147089315eff8874b01" integrity sha512-isWHgVjnFjh2x2yuJ/tj3JbwoHu3UC2dX5G/88Cm24yB6YopVgxvBObDY7n5xW6ExmFhJpSEQqFPvq9zaXc8Jw== @@ -2518,25 +2332,11 @@ ncp@~2.0.0: resolved "https://registry.yarnpkg.com/ncp/-/ncp-2.0.0.tgz#195a21d6c46e361d2fb1281ba38b91e9df7bdbb3" integrity sha1-GVoh1sRuNh0vsSgbo4uR6d9727M= -needle@^2.5.0: - version "2.5.0" - resolved "https://registry.yarnpkg.com/needle/-/needle-2.5.0.tgz#e6fc4b3cc6c25caed7554bd613a5cf0bac8c31c0" - integrity sha512-o/qITSDR0JCyCKEQ1/1bnUXMmznxabbwi/Y4WwJElf+evwJNFNwIDMCCt5IigFVxgeGBJESLohGtIS9gEzo1fA== - dependencies: - debug "^3.2.6" - iconv-lite "^0.4.4" - sax "^1.2.4" - negotiator@^0.6.1: version "0.6.2" resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.2.tgz#feacf7ccf525a77ae9634436a64883ffeca346fb" integrity sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw== -next-tick@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/next-tick/-/next-tick-1.0.0.tgz#ca86d1fe8828169b0120208e3dc8424b9db8342c" - integrity sha1-yobR/ogoFpsBICCOPchCS524NCw= - node-addon-api@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-3.1.0.tgz#98b21931557466c6729e51cb77cd39c965f42239" @@ -2547,30 +2347,6 @@ node-fetch@^2.6.1: resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.1.tgz#045bd323631f76ed2e2b55573394416b639a0052" integrity sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw== -node-pre-gyp@^0.16.0: - version "0.16.0" - resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.16.0.tgz#238fa540364784e5015dfcdba78da3937e18dbdc" - integrity sha512-4efGA+X/YXAHLi1hN8KaPrILULaUn2nWecFrn1k2I+99HpoyvcOGEbtcOxpDiUwPF2ZANMJDh32qwOUPenuR1g== - dependencies: - detect-libc "^1.0.2" - mkdirp "^0.5.3" - needle "^2.5.0" - nopt "^4.0.1" - npm-packlist "^1.1.6" - npmlog "^4.0.2" - rc "^1.2.7" - rimraf "^2.6.1" - semver "^5.3.0" - tar "^4.4.2" - -nopt@^4.0.1: - version "4.0.3" - resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.3.tgz#a375cad9d02fd921278d954c2254d5aa57e15e48" - integrity sha512-CvaGwVMztSMJLOeXPrez7fyfObdZqNUK1cPAEzLHrTybIua9pMdmmPR5YwtfNftIOMv3DPUhFaxsZMNTQO20Kg== - dependencies: - abbrev "1" - osenv "^0.1.4" - nopt@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/nopt/-/nopt-5.0.0.tgz#530942bb58a512fccafe53fe210f13a25355dc88" @@ -2588,28 +2364,7 @@ normalize-url@^4.1.0: resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-4.5.1.tgz#0dd90cf1288ee1d1313b87081c9a5932ee48518a" integrity sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA== -npm-bundled@^1.0.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/npm-bundled/-/npm-bundled-1.1.1.tgz#1edd570865a94cdb1bc8220775e29466c9fb234b" - integrity sha512-gqkfgGePhTpAEgUsGEgcq1rqPXA+tv/aVBlgEzfXwA1yiUJF7xtEt3CtVwOjNYQOVknDk0F20w58Fnm3EtG0fA== - dependencies: - npm-normalize-package-bin "^1.0.1" - -npm-normalize-package-bin@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz#6e79a41f23fd235c0623218228da7d9c23b8f6e2" - integrity sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA== - -npm-packlist@^1.1.6: - version "1.4.8" - resolved "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-1.4.8.tgz#56ee6cc135b9f98ad3d51c1c95da22bbb9b2ef3e" - integrity sha512-5+AZgwru5IevF5ZdnFglB5wNlHG1AOOuw28WhUq8/8emhBmLv6jX5by4WJCh7lW0uSYZYS6DXqIsyZVIXRZU9A== - dependencies: - ignore-walk "^3.0.1" - npm-bundled "^1.0.1" - npm-normalize-package-bin "^1.0.1" - -npmlog@^4.0.2, npmlog@^4.1.2: +npmlog@^4.1.2: version "4.1.2" resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" integrity sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg== @@ -2677,43 +2432,6 @@ optionator@^0.9.1: type-check "^0.4.0" word-wrap "^1.2.3" -optjs@~3.2.2: - version "3.2.2" - resolved "https://registry.yarnpkg.com/optjs/-/optjs-3.2.2.tgz#69a6ce89c442a44403141ad2f9b370bd5bb6f4ee" - integrity sha1-aabOicRCpEQDFBrS+bNwvVu29O4= - -ordered-read-streams@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/ordered-read-streams/-/ordered-read-streams-1.0.1.tgz#77c0cb37c41525d64166d990ffad7ec6a0e1363e" - integrity sha1-d8DLN8QVJdZBZtmQ/61+xqDhNj4= - dependencies: - readable-stream "^2.0.1" - -os-homedir@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" - integrity sha1-/7xJiDNuDoM94MFox+8VISGqf7M= - -os-locale@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-1.4.0.tgz#20f9f17ae29ed345e8bde583b13d2009803c14d9" - integrity sha1-IPnxeuKe00XoveWDsT0gCYA8FNk= - dependencies: - lcid "^1.0.0" - -os-tmpdir@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" - integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ= - -osenv@^0.1.4: - version "0.1.5" - resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.5.tgz#85cdfafaeb28e8677f416e287592b5f3f49ea410" - integrity sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g== - dependencies: - os-homedir "^1.0.0" - os-tmpdir "^1.0.0" - p-cancelable@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/p-cancelable/-/p-cancelable-2.0.0.tgz#4a3740f5bdaf5ed5d7c3e34882c6fb5d6b266a6e" @@ -2752,11 +2470,6 @@ parse5@^6.0.1: resolved "https://registry.yarnpkg.com/parse5/-/parse5-6.0.1.tgz#e1a1c085c569b3dc08321184f19a39cc27f7c30b" integrity sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw== -path-dirname@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/path-dirname/-/path-dirname-1.0.2.tgz#cc33d24d525e099a5388c0336c6e32b9160609e0" - integrity sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA= - path-exists@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" @@ -2804,7 +2517,7 @@ prelude-ls@~1.1.2: resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" integrity sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ= -process-nextick-args@^2.0.0, process-nextick-args@~2.0.0: +process-nextick-args@^2.0.1, process-nextick-args@~2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag== @@ -2819,15 +2532,24 @@ progress@^2.0.0: resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== -protobufjs@^5.0.3: - version "5.0.3" - resolved "https://registry.yarnpkg.com/protobufjs/-/protobufjs-5.0.3.tgz#e4dfe9fb67c90b2630d15868249bcc4961467a17" - integrity sha512-55Kcx1MhPZX0zTbVosMQEO5R6/rikNXd9b6RQK4KSPcrSIIwoXTtebIczUrXlwaSrbz4x8XUVThGPob1n8I4QA== - dependencies: - ascli "~1" - bytebuffer "~5" - glob "^7.0.5" - yargs "^3.10.0" +protobufjs@^6.10.0: + version "6.11.2" + resolved "https://registry.yarnpkg.com/protobufjs/-/protobufjs-6.11.2.tgz#de39fabd4ed32beaa08e9bb1e30d08544c1edf8b" + integrity sha512-4BQJoPooKJl2G9j3XftkIXjoC9C0Av2NOrWmbLWT1vH32GcSUHjM0Arra6UfTsVyfMAuFzaLucXn1sadxJydAw== + dependencies: + "@protobufjs/aspromise" "^1.1.2" + "@protobufjs/base64" "^1.1.2" + "@protobufjs/codegen" "^2.0.4" + "@protobufjs/eventemitter" "^1.1.0" + "@protobufjs/fetch" "^1.1.0" + "@protobufjs/float" "^1.0.2" + "@protobufjs/inquire" "^1.1.0" + "@protobufjs/path" "^1.1.2" + "@protobufjs/pool" "^1.1.0" + "@protobufjs/utf8" "^1.1.0" + "@types/long" "^4.0.1" + "@types/node" ">=13.7.0" + long "^4.0.0" pseudomap@^1.0.2: version "1.0.2" @@ -2839,14 +2561,6 @@ psl@^1.1.28: resolved "https://registry.yarnpkg.com/psl/-/psl-1.8.0.tgz#9326f8bcfb013adcc005fdff056acce020e51c24" integrity sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ== -pump@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/pump/-/pump-2.0.1.tgz#12399add6e4cf7526d973cbc8b5ce2e2908b3909" - integrity sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA== - dependencies: - end-of-stream "^1.1.0" - once "^1.3.1" - pump@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" @@ -2855,15 +2569,6 @@ pump@^3.0.0: end-of-stream "^1.1.0" once "^1.3.1" -pumpify@^1.3.5: - version "1.5.1" - resolved "https://registry.yarnpkg.com/pumpify/-/pumpify-1.5.1.tgz#36513be246ab27570b1a374a5ce278bfd74370ce" - integrity sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ== - dependencies: - duplexify "^3.6.0" - inherits "^2.0.3" - pump "^2.0.0" - punycode@2.x.x, punycode@^2.1.0, punycode@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" @@ -2913,16 +2618,6 @@ rbush@^2.0.0: dependencies: quickselect "^1.0.1" -rc@^1.2.7: - version "1.2.8" - resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed" - integrity sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw== - dependencies: - deep-extend "^0.6.0" - ini "~1.3.0" - minimist "^1.2.0" - strip-json-comments "~2.0.1" - readable-stream@2.2.7: version "2.2.7" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.2.7.tgz#07057acbe2467b22042d36f98c5ad507054e95b1" @@ -2936,7 +2631,7 @@ readable-stream@2.2.7: string_decoder "~1.0.0" util-deprecate "~1.0.1" -"readable-stream@> 1.0.0 < 3.0.0", readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.6, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.2.9, readable-stream@^2.3.3, readable-stream@^2.3.5, readable-stream@^2.3.6, readable-stream@~2.3.6: +readable-stream@^2.0.1, readable-stream@^2.0.6, readable-stream@^2.2.9: version "2.3.7" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57" integrity sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw== @@ -2949,7 +2644,7 @@ readable-stream@2.2.7: string_decoder "~1.1.1" util-deprecate "~1.0.1" -readable-stream@^3.0.0: +readable-stream@^3.0.0, readable-stream@^3.0.2, readable-stream@^3.1.1, readable-stream@^3.4.0, readable-stream@^3.6.0: version "3.6.0" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198" integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA== @@ -2993,11 +2688,6 @@ reinterval@^1.1.0: resolved "https://registry.yarnpkg.com/reinterval/-/reinterval-1.1.0.tgz#3361ecfa3ca6c18283380dd0bb9546f390f5ece7" integrity sha1-M2Hs+jymwYKDOA3Qu5VG85D17Oc= -remove-trailing-separator@^1.0.1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" - integrity sha1-wkvOKig62tW8P1jg1IJJuSN52O8= - request-debug@0.x.x: version "0.2.0" resolved "https://registry.yarnpkg.com/request-debug/-/request-debug-0.2.0.tgz#fc054ec817181b04ca41a052c136f61c48abaf78" @@ -3120,13 +2810,6 @@ restify@^5.2.0: optionalDependencies: dtrace-provider "^0.8.1" -rimraf@^2.6.1: - version "2.7.1" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec" - integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w== - dependencies: - glob "^7.1.3" - rimraf@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" @@ -3141,7 +2824,7 @@ rimraf@~2.4.0: dependencies: glob "^6.0.1" -safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@~5.2.0: +safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.2, safe-buffer@~5.2.0: version "5.2.1" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== @@ -3161,17 +2844,12 @@ safe-json-stringify@^1.0.3, safe-json-stringify@^1.0.4, safe-json-stringify@~1: resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== -sax@^1.2.4: - version "1.2.4" - resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" - integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== - select-hose@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/select-hose/-/select-hose-2.0.0.tgz#625d8658f865af43ec962bfc376a37359a4994ca" integrity sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo= -semver@^5.0.1, semver@^5.1.0, semver@^5.3.0, semver@^5.6.0: +semver@^5.0.1, semver@^5.1.0, semver@^5.6.0: version "5.7.1" resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== @@ -3410,11 +3088,6 @@ strip-json-comments@3.1.1, strip-json-comments@^3.1.0, strip-json-comments@^3.1. resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== -strip-json-comments@~2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" - integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo= - supports-color@8.1.1: version "8.1.1" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-8.1.1.tgz#cd6fc17e28500cff56c1b86c0a7fd4a54a73005c" @@ -3446,19 +3119,6 @@ table@^6.0.4: slice-ansi "^4.0.0" string-width "^4.2.0" -tar@^4.4.2: - version "4.4.15" - resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.15.tgz#3caced4f39ebd46ddda4d6203d48493a919697f8" - integrity sha512-ItbufpujXkry7bHH9NpQyTXPbJ72iTlXgkBAYsAjDXk3Ds8t/3NfO5P4xZGy7u+sYuQUbimgzswX4uQIEeNVOA== - dependencies: - chownr "^1.1.1" - fs-minipass "^1.2.5" - minipass "^2.8.6" - minizlib "^1.2.1" - mkdirp "^0.5.0" - safe-buffer "^5.1.2" - yallist "^3.0.3" - tar@^6.1.0: version "6.1.0" resolved "https://registry.yarnpkg.com/tar/-/tar-6.1.0.tgz#d1724e9bcc04b977b18d5c573b333a2207229a83" @@ -3476,30 +3136,6 @@ text-table@^0.2.0: resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= -through2-filter@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/through2-filter/-/through2-filter-3.0.0.tgz#700e786df2367c2c88cd8aa5be4cf9c1e7831254" - integrity sha512-jaRjI2WxN3W1V8/FMZ9HKIBXixtiqs3SQSX4/YGIiP3gL6djW48VoZq9tDqeCWs3MT8YY5wb/zli8VW8snY1CA== - dependencies: - through2 "~2.0.0" - xtend "~4.0.0" - -through2@^2.0.1, through2@~2.0.0: - version "2.0.5" - resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.5.tgz#01c1e39eb31d07cb7d03a96a70823260b23132cd" - integrity sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ== - dependencies: - readable-stream "~2.3.6" - xtend "~4.0.1" - -to-absolute-glob@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/to-absolute-glob/-/to-absolute-glob-2.0.2.tgz#1865f43d9e74b0822db9f145b78cff7d0f7c849b" - integrity sha1-GGX0PZ50sIItufFFt4z/fQ98hJs= - dependencies: - is-absolute "^1.0.0" - is-negated-glob "^1.0.0" - to-regex-range@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" @@ -3571,44 +3207,16 @@ type-fest@^0.8.1: resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d" integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA== -type@^1.0.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/type/-/type-1.2.0.tgz#848dd7698dafa3e54a6c479e759c4bc3f18847a0" - integrity sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg== - -type@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/type/-/type-2.0.0.tgz#5f16ff6ef2eb44f260494dae271033b29c09a9c3" - integrity sha512-KBt58xCHry4Cejnc2ISQAF7QY+ORngsWfxezO68+12hKV6lQY8P/psIkcbjeHWn7MqcgciWJyCCevFMJdIXpow== - typedarray@^0.0.6: version "0.0.6" resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c= -ultron@~1.1.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/ultron/-/ultron-1.1.1.tgz#9fe1536a10a664a65266a1e3ccf85fd36302bc9c" - integrity sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og== - -unc-path-regex@^0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/unc-path-regex/-/unc-path-regex-0.1.2.tgz#e73dd3d7b0d7c5ed86fbac6b0ae7d8c6a69d50fa" - integrity sha1-5z3T17DXxe2G+6xrCufYxqadUPo= - underscore@1.12.1: version "1.12.1" resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.12.1.tgz#7bb8cc9b3d397e201cf8553336d262544ead829e" integrity sha512-hEQt0+ZLDVUMhebKxL4x1BTtDY7bavVofhZ9KZ4aI26X9SRaE+Y3m83XUL1UP2jn8ynjndwCCpEHdUG+9pP1Tw== -unique-stream@^2.0.2: - version "2.3.1" - resolved "https://registry.yarnpkg.com/unique-stream/-/unique-stream-2.3.1.tgz#c65d110e9a4adf9a6c5948b28053d9a8d04cbeac" - integrity sha512-2nY4TnBE70yoxHkDli7DMazpWiP7xMdCYqU2nBRO0UB+ZpEkGsSija7MvmvnZFUeC+mrgiUfcHSr3LmRFIg4+A== - dependencies: - json-stable-stringify-without-jsonify "^1.0.1" - through2-filter "^3.0.0" - uri-js@^4.2.2: version "4.2.2" resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.2.2.tgz#94c540e1ff772956e2299507c010aea6c8838eb0" @@ -3666,18 +3274,6 @@ wbuf@^1.1.0, wbuf@^1.7.2: dependencies: minimalistic-assert "^1.0.0" -websocket-stream@^5.1.2: - version "5.5.2" - resolved "https://registry.yarnpkg.com/websocket-stream/-/websocket-stream-5.5.2.tgz#49d87083d96839f0648f5513bbddd581f496b8a2" - integrity sha512-8z49MKIHbGk3C4HtuHWDtYX8mYej1wWabjthC/RupM9ngeukU4IWoM46dgth1UOS/T4/IqgEdCDJuMe2039OQQ== - dependencies: - duplexify "^3.5.1" - inherits "^2.0.1" - readable-stream "^2.3.3" - safe-buffer "^5.1.2" - ws "^3.2.0" - xtend "^4.0.0" - which@2.0.2, which@^2.0.1: version "2.0.2" resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" @@ -3692,11 +3288,6 @@ wide-align@1.1.3, wide-align@^1.1.0: dependencies: string-width "^1.0.2 || 2" -window-size@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.1.4.tgz#f8e1aa1ee5a53ec5bf151ffa09742a6ad7697876" - integrity sha1-+OGqHuWlPsW/FR/6CXQqatdpeHY= - word-wrap@^1.2.3, word-wrap@~1.2.3: version "1.2.3" resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c" @@ -3707,14 +3298,6 @@ workerpool@6.1.0: resolved "https://registry.yarnpkg.com/workerpool/-/workerpool-6.1.0.tgz#a8e038b4c94569596852de7a8ea4228eefdeb37b" integrity sha512-toV7q9rWNYha963Pl/qyeZ6wG+3nnsyvolaNUS8+R5Wtw6qJPTxIlOP1ZSvcGhEJw+l3HMMmtiNo9Gl61G4GVg== -wrap-ansi@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-2.1.0.tgz#d8fc3d284dd05794fe84973caecdd1cf824fdd85" - integrity sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU= - dependencies: - string-width "^1.0.1" - strip-ansi "^3.0.1" - wrap-ansi@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" @@ -3729,25 +3312,16 @@ wrappy@1: resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= -ws@^3.2.0: - version "3.3.3" - resolved "https://registry.yarnpkg.com/ws/-/ws-3.3.3.tgz#f1cf84fe2d5e901ebce94efaece785f187a228f2" - integrity sha512-nnWLa/NwZSt4KQJu51MYlCcSQ5g7INpOrOMt4XV8j4dqTXdmlUmSHQ8/oLC069ckre0fRsgfvsKwbTdtKLCDkA== - dependencies: - async-limiter "~1.0.0" - safe-buffer "~5.1.0" - ultron "~1.1.0" +ws@^7.5.0: + version "7.5.4" + resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.4.tgz#56bfa20b167427e138a7795de68d134fe92e21f9" + integrity sha512-zP9z6GXm6zC27YtspwH99T3qTG7bBFv2VIkeHstMLrLlDJuzA7tQ5ls3OJ1hOGGCzTQPniNJoHXIAOS0Jljohg== -xtend@^4.0.0, xtend@^4.0.1, xtend@~4.0.0, xtend@~4.0.1: +xtend@^4.0.2: version "4.0.2" resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ== -y18n@^3.2.0: - version "3.2.1" - resolved "https://registry.yarnpkg.com/y18n/-/y18n-3.2.1.tgz#6d15fba884c08679c0d77e88e7759e811e07fa41" - integrity sha1-bRX7qITAhnnA136I53WegR4H+kE= - y18n@^5.0.5: version "5.0.5" resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.5.tgz#8769ec08d03b1ea2df2500acef561743bbb9ab18" @@ -3758,11 +3332,6 @@ yallist@^2.1.2: resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" integrity sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI= -yallist@^3.0.0, yallist@^3.0.3: - version "3.1.1" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" - integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== - yallist@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" @@ -3788,7 +3357,7 @@ yargs-unparser@2.0.0: flat "^5.0.2" is-plain-obj "^2.1.0" -yargs@16.2.0, yargs@^16.2.0: +yargs@16.2.0, yargs@^16.1.1, yargs@^16.2.0: version "16.2.0" resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== @@ -3801,19 +3370,6 @@ yargs@16.2.0, yargs@^16.2.0: y18n "^5.0.5" yargs-parser "^20.2.2" -yargs@^3.10.0: - version "3.32.0" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-3.32.0.tgz#03088e9ebf9e756b69751611d2a5ef591482c995" - integrity sha1-AwiOnr+edWtpdRYR0qXvWRSCyZU= - dependencies: - camelcase "^2.0.1" - cliui "^3.0.3" - decamelize "^1.1.1" - os-locale "^1.4.0" - string-width "^1.0.1" - window-size "^0.1.4" - y18n "^3.2.0" - yocto-queue@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" From 302ba75511f6c5f7f6c464db614e55db44c1e266 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Thu, 13 Jan 2022 15:46:06 +0100 Subject: [PATCH 178/337] Remove dry-run option for deleting PR images (#540) --- .github/workflows/registry-purge-pr.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/registry-purge-pr.yaml b/.github/workflows/registry-purge-pr.yaml index c8e102a5..53ae4e20 100644 --- a/.github/workflows/registry-purge-pr.yaml +++ b/.github/workflows/registry-purge-pr.yaml @@ -17,4 +17,4 @@ jobs: organization: ${{ github.repository_owner}} container: ${{ github.event.repository.name }} tag-regex: pr-${{github.event.pull_request.number}}$ - dry-run: true \ No newline at end of file + dry-run: false \ No newline at end of file From e502f04752419c14858d939125f7a737b17d5c4a Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Thu, 13 Jan 2022 16:00:39 +0100 Subject: [PATCH 179/337] Remove docker hub login (#541) --- .github/workflows/test.yaml | 6 ------ 1 file changed, 6 deletions(-) diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index d99b0201..969befa5 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -48,12 +48,6 @@ jobs: steps: - uses: actions/checkout@v2 - - name: Login to DockerHub - uses: docker/login-action@v1 - with: - username: ${{ secrets.DOCKER_HUB_USER }} - password: ${{ secrets.DOCKER_HUB_PASS }} - - name: Execute tests run: | yarn test From a5501262112cbd0f9b1255fd83bf721bf4f2024a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 13 Jan 2022 16:06:50 +0100 Subject: [PATCH 180/337] Bump docker/login-action from 1 to 1.12.0 (#538) Bumps [docker/login-action](https://github.com/docker/login-action) from 1 to 1.12.0. - [Release notes](https://github.com/docker/login-action/releases) - [Commits](https://github.com/docker/login-action/compare/v1...42d299face0c5c43a0487c477f595ac9cf22f1a7) --- updated-dependencies: - dependency-name: docker/login-action dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/registry.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/registry.yaml b/.github/workflows/registry.yaml index 563519bb..7d314565 100644 --- a/.github/workflows/registry.yaml +++ b/.github/workflows/registry.yaml @@ -24,7 +24,7 @@ jobs: uses: actions/checkout@v2 - name: Log in to the Container registry - uses: docker/login-action@f054a8b539a109f9f41c372932f1ae047eff08c9 + uses: docker/login-action@42d299face0c5c43a0487c477f595ac9cf22f1a7 with: registry: ${{ env.REGISTRY }} username: ${{ github.actor }} From 6da73fa873f138cdc3a2e1cd2ed85d75a0b12371 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Thu, 13 Jan 2022 16:23:22 +0100 Subject: [PATCH 181/337] Use PAT in order to delete untagged images (#542) --- .github/workflows/registry.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/registry.yaml b/.github/workflows/registry.yaml index 7d314565..af8d670c 100644 --- a/.github/workflows/registry.yaml +++ b/.github/workflows/registry.yaml @@ -28,7 +28,7 @@ jobs: with: registry: ${{ env.REGISTRY }} username: ${{ github.actor }} - password: ${{ secrets.GITHUB_TOKEN }} + password: ${{ secrets.GHCR_TOKEN }} - name: Extract metadata (tags, labels) for Docker id: meta From 5044b3eaed8e92e42dd6e3f9b570ae404323e470 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Thu, 13 Jan 2022 16:58:37 +0100 Subject: [PATCH 182/337] Update docs for sensorTemplates on postNewBox (#535) --- package.json | 4 +++- packages/api/lib/controllers/boxesController.js | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index c8c4b3bf..5d6ecac3 100644 --- a/package.json +++ b/package.json @@ -14,7 +14,9 @@ "tag-container": "./.scripts/npm_tag-container.sh", "lint:ci": "eslint --ignore-pattern node_modules \"{tests,packages}/**/*.js\"", "lint": "eslint --ignore-pattern node_modules --fix \"{tests,packages}/**/*.js\"", - "create-version-file": "node .scripts/create-version.js" + "create-version-file": "node .scripts/create-version.js", + "build-docs": "npx apidoc@0.17.6 -i . -f js -e node_modules", + "serve-docs": "npx http-server@14.1.0 ./doc" }, "devDependencies": { "@sensebox/eslint-config-sensebox": "^1.1.0", diff --git a/packages/api/lib/controllers/boxesController.js b/packages/api/lib/controllers/boxesController.js index dc2aa306..1dd0d723 100644 --- a/packages/api/lib/controllers/boxesController.js +++ b/packages/api/lib/controllers/boxesController.js @@ -392,7 +392,7 @@ const getBox = async function getBox (req, res, next) { * @apiParam (RequestBody) {Location} location the coordinates of this senseBox. * @apiParam (RequestBody) {String="homeV2Lora","homeV2Ethernet","homeV2Wifi","homeEthernet","homeWifi","homeEthernetFeinstaub","homeWifiFeinstaub","luftdaten_sds011","luftdaten_sds011_dht11","luftdaten_sds011_dht22","luftdaten_sds011_bmp180","luftdaten_sds011_bme280","hackair_home_v2"} [model] specify the model if you want to use a predefined senseBox model, autocreating sensor definitions. * @apiParam (RequestBody) {Sensor[]} [sensors] an array containing the sensors of this senseBox. Only use if `model` is unspecified. - * @apiParam (RequestBody) {String="hdc1080","bmp280","tsl45315","veml6070","sds011","bme680","smt50","soundlevelmeter", "windspeed", "scd30"} [sensorTemplates] Specify which sensors should be included. + * @apiParam (RequestBody) {String[]="hdc1080","bmp280","tsl45315","veml6070","sds011","bme680","smt50","soundlevelmeter","windspeed","scd30"} [sensorTemplates] Specify which sensors should be included. * @apiParam (RequestBody) {Object} [mqtt] specify parameters of the MQTT integration for external measurement upload. Please see below for the accepted parameters * @apiParam (RequestBody) {Object} [ttn] specify parameters for the TTN integration for measurement from TheThingsNetwork.org upload. Please see below for the accepted parameters * @apiParam (RequestBody) {Boolean="true","false"} [useAuth] whether to use access_token or not for authentication From 3dc6696232e739b89a13e2aa6d20a4ef9d54d5d2 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Fri, 14 Jan 2022 13:35:59 +0100 Subject: [PATCH 183/337] Update and pin github actions (#546) --- .github/workflows/registry-purge-pr.yaml | 2 +- .github/workflows/registry-purge.yaml | 2 +- .github/workflows/registry.yaml | 6 +++--- .github/workflows/test.yaml | 4 ++-- 4 files changed, 7 insertions(+), 7 deletions(-) diff --git a/.github/workflows/registry-purge-pr.yaml b/.github/workflows/registry-purge-pr.yaml index 53ae4e20..b1eae511 100644 --- a/.github/workflows/registry-purge-pr.yaml +++ b/.github/workflows/registry-purge-pr.yaml @@ -11,7 +11,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Purge Pull Request Image - uses: vlaurin/action-ghcr-prune@v0.2.0 + uses: vlaurin/action-ghcr-prune@v0.3.0 with: token: ${{ secrets.GHCR_TOKEN}} organization: ${{ github.repository_owner}} diff --git a/.github/workflows/registry-purge.yaml b/.github/workflows/registry-purge.yaml index 94371cd5..36e7626b 100644 --- a/.github/workflows/registry-purge.yaml +++ b/.github/workflows/registry-purge.yaml @@ -10,7 +10,7 @@ jobs: runs-on: ubuntu-latest steps: - name: clean packages - uses: vlaurin/action-ghcr-prune@v0.2.0 + uses: vlaurin/action-ghcr-prune@v0.3.0 with: token: ${{ secrets.GHCR_TOKEN}} organization: ${{ github.repository_owner}} diff --git a/.github/workflows/registry.yaml b/.github/workflows/registry.yaml index af8d670c..ced818c6 100644 --- a/.github/workflows/registry.yaml +++ b/.github/workflows/registry.yaml @@ -24,7 +24,7 @@ jobs: uses: actions/checkout@v2 - name: Log in to the Container registry - uses: docker/login-action@42d299face0c5c43a0487c477f595ac9cf22f1a7 + uses: docker/login-action@v1.12.0 with: registry: ${{ env.REGISTRY }} username: ${{ github.actor }} @@ -32,7 +32,7 @@ jobs: - name: Extract metadata (tags, labels) for Docker id: meta - uses: docker/metadata-action@98669ae865ea3cffbcbaa878cf57c20bbf1c6c38 + uses: docker/metadata-action@v3.6.2 with: images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} flavor: | @@ -41,7 +41,7 @@ jobs: suffix= - name: Build and push Docker image - uses: docker/build-push-action@ad44023a93711e3deb337508980b4b5e9bcdc5dc + uses: docker/build-push-action@v2.7.0 with: context: . push: true diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index 969befa5..b3f30848 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -16,7 +16,7 @@ jobs: - uses: actions/checkout@v2 - name: Install Node.js 12 - uses: actions/setup-node@v2.4.0 + uses: actions/setup-node@v2.5.1 with: node-version: 12 @@ -26,7 +26,7 @@ jobs: echo "##[set-output name=dir;]$(yarn cache dir)" - name: Restore yarn cache - uses: actions/cache@v2.1.6 + uses: actions/cache@v2.1.7 id: yarn-cache with: path: ${{ steps.yarn-cache-dir-path.outputs.dir }} From b7a9719b2a1e226564fab0f5b74376f6e53cc14c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 18 Feb 2022 08:46:04 +0100 Subject: [PATCH 184/337] Bump docker/login-action from 1.12.0 to 1.13.0 (#556) Bumps [docker/login-action](https://github.com/docker/login-action) from 1.12.0 to 1.13.0. - [Release notes](https://github.com/docker/login-action/releases) - [Commits](https://github.com/docker/login-action/compare/v1.12.0...v1.13.0) --- updated-dependencies: - dependency-name: docker/login-action dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/registry.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/registry.yaml b/.github/workflows/registry.yaml index ced818c6..e5470494 100644 --- a/.github/workflows/registry.yaml +++ b/.github/workflows/registry.yaml @@ -24,7 +24,7 @@ jobs: uses: actions/checkout@v2 - name: Log in to the Container registry - uses: docker/login-action@v1.12.0 + uses: docker/login-action@v1.13.0 with: registry: ${{ env.REGISTRY }} username: ${{ github.actor }} From 2a062d419321ee4b1842faf176bafbae60f95305 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 18 Feb 2022 08:53:59 +0100 Subject: [PATCH 185/337] Bump node-fetch from 2.6.1 to 2.6.7 (#557) Bumps [node-fetch](https://github.com/node-fetch/node-fetch) from 2.6.1 to 2.6.7. - [Release notes](https://github.com/node-fetch/node-fetch/releases) - [Commits](https://github.com/node-fetch/node-fetch/compare/v2.6.1...v2.6.7) --- updated-dependencies: - dependency-name: node-fetch dependency-type: indirect ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- yarn.lock | 26 +++++++++++++++++++++++--- 1 file changed, 23 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index f5adb92d..cb08f307 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2343,9 +2343,11 @@ node-addon-api@^3.1.0: integrity sha512-flmrDNB06LIl5lywUz7YlNGZH/5p0M7W28k8hzd9Lshtdh1wshD2Y+U4h9LD6KObOy1f+fEVdgprPrEymjM5uw== node-fetch@^2.6.1: - version "2.6.1" - resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.1.tgz#045bd323631f76ed2e2b55573394416b639a0052" - integrity sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw== + version "2.6.7" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.7.tgz#24de9fba827e3b4ae44dc8b20256a379160052ad" + integrity sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ== + dependencies: + whatwg-url "^5.0.0" nopt@^5.0.0: version "5.0.0" @@ -3151,6 +3153,11 @@ tough-cookie@~2.5.0: psl "^1.1.28" punycode "^2.1.1" +tr46@~0.0.3: + version "0.0.3" + resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" + integrity sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o= + tunnel-agent@^0.6.0: version "0.6.0" resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" @@ -3274,6 +3281,19 @@ wbuf@^1.1.0, wbuf@^1.7.2: dependencies: minimalistic-assert "^1.0.0" +webidl-conversions@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" + integrity sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE= + +whatwg-url@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d" + integrity sha1-lmRU6HZUYuN2RNNib2dCzotwll0= + dependencies: + tr46 "~0.0.3" + webidl-conversions "^3.0.0" + which@2.0.2, which@^2.0.1: version "2.0.2" resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" From 2b68fa385885d41aa9903f36654f376ac2791d20 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 25 Feb 2022 09:22:42 +0100 Subject: [PATCH 186/337] Bump actions/setup-node from 2.5.1 to 3.0.0 (#559) Bumps [actions/setup-node](https://github.com/actions/setup-node) from 2.5.1 to 3.0.0. - [Release notes](https://github.com/actions/setup-node/releases) - [Commits](https://github.com/actions/setup-node/compare/v2.5.1...v3.0.0) --- updated-dependencies: - dependency-name: actions/setup-node dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/test.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index b3f30848..93b931b9 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -16,7 +16,7 @@ jobs: - uses: actions/checkout@v2 - name: Install Node.js 12 - uses: actions/setup-node@v2.5.1 + uses: actions/setup-node@v3.0.0 with: node-version: 12 From d29cd20d29ee11be18c01dc6c9e4017b6d07ba70 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Wed, 9 Mar 2022 08:48:24 +0100 Subject: [PATCH 187/337] Change grouptag to array to save multiple tags for a device (#536) * Change grouptag to array to save multiple tags for a device * Update grouptag to array in tests * Check different chai stuff * Update grouptag test cases * Fix migration * Change grouptag query * Remove unnecessary check * Update sketch-templater * Update node version to 16 * Set timeout * Return from promise * Try calling done() * Return again * Use done() in beofre and after * use chai-http * Use done() and set headers * Back to chakram * Return in hooks * Use old sketch templater * Return from hooks * Update sketch-templater dependency * Update sketch templater to latest version --- .github/workflows/test.yaml | 4 +- package.json | 1 + .../api/lib/controllers/boxesController.js | 6 +- .../8-node-update-grouptag.js | 59 ++++++ packages/models/package.json | 2 +- packages/models/src/box/box.js | 12 +- packages/models/test/tests/1-box.js | 15 +- tests/data/senseBoxSchema.js | 5 +- tests/tests/002-location_tests.js | 24 ++- tests/tests/005-create-boxes-test.js | 4 +- yarn.lock | 195 +++++++++++++++--- 11 files changed, 272 insertions(+), 55 deletions(-) create mode 100644 packages/models/migrations/8-9_box_grouptag/8-node-update-grouptag.js diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index 93b931b9..b4d0196f 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -15,10 +15,10 @@ jobs: steps: - uses: actions/checkout@v2 - - name: Install Node.js 12 + - name: Install Node.js 16 uses: actions/setup-node@v3.0.0 with: - node-version: 12 + node-version: 16 - name: Get yarn cache directory path id: yarn-cache-dir-path diff --git a/package.json b/package.json index 5d6ecac3..6511eeda 100644 --- a/package.json +++ b/package.json @@ -22,6 +22,7 @@ "@sensebox/eslint-config-sensebox": "^1.1.0", "@turf/invariant": "^6.1.2", "chai": "^4.3.4", + "chai-http": "^4.3.0", "chakram": "^1.5.0", "cheerio": "^1.0.0-rc.6", "csv-parse": "^4.15.4", diff --git a/packages/api/lib/controllers/boxesController.js b/packages/api/lib/controllers/boxesController.js index 1dd0d723..e3da8cca 100644 --- a/packages/api/lib/controllers/boxesController.js +++ b/packages/api/lib/controllers/boxesController.js @@ -76,7 +76,7 @@ const * @apiUse TTNBody * * @apiParam (RequestBody) {String} [name] the name of this senseBox. - * @apiParam (RequestBody) {String} [grouptag] the grouptag of this senseBox. Send '' (empty string) to delete this property. + * @apiParam (RequestBody) {String[]} [grouptag] the grouptag(s) of this senseBox. Send [] (empty array) to delete this property. * @apiParam (RequestBody) {Location} [location] the new coordinates of this senseBox. Measurements will keep the reference to their correct location * @apiParam (RequestBody) {Sensor[]} [sensors] an array containing the sensors of this senseBox. Only use if model is unspecified * @apiParam (RequestBody) {MqttOption} [mqtt] settings for the MQTT integration of this senseBox @@ -520,7 +520,7 @@ module.exports = { retrieveParameters([ { predef: 'boxId', required: true }, { name: 'name' }, - { name: 'grouptag', dataType: 'StringWithEmpty' }, + { name: 'grouptag', dataType: ['String'] }, { name: 'description', dataType: 'StringWithEmpty' }, { name: 'weblink', dataType: 'StringWithEmpty' }, { name: 'image', dataType: 'base64Image' }, @@ -551,7 +551,7 @@ module.exports = { checkContentType, retrieveParameters([ { name: 'name', required: true }, - { name: 'grouptag', aliases: ['tag'] }, + { name: 'grouptag', dataType: ['String'], aliases: ['tag'] }, { name: 'exposure', allowedValues: Box.BOX_VALID_EXPOSURES }, { name: 'model', allowedValues: Box.BOX_VALID_MODELS }, { name: 'sensors', dataType: ['object'] }, diff --git a/packages/models/migrations/8-9_box_grouptag/8-node-update-grouptag.js b/packages/models/migrations/8-9_box_grouptag/8-node-update-grouptag.js new file mode 100644 index 00000000..40b30264 --- /dev/null +++ b/packages/models/migrations/8-9_box_grouptag/8-node-update-grouptag.js @@ -0,0 +1,59 @@ +/* eslint-disable */ +"use strict"; + +const models = require("../../../models"); +const { mongoose, connect } = models.db; +const moment = require("moment"); + +const { Box } = models; + +const migrate = function migrate() { + const schemaVersion = mongoose.connection.db.collection("schemaVersion"); + + console.log('Starting "convert grouptag to array" migration'); + + return schemaVersion + .find({}) + .next() + .then(function (latestVersion) { + if (latestVersion.schemaVersion !== 8) { + throw new Error("Unexpected schema version... Exiting!"); + } + + return Box.find({grouptag: {$exists: true}}, ['grouptag']).exec(); + }) + .then(function (boxes) { + const promises = []; + for (let index = 0; index < boxes.length; index++) { + const box = boxes[index]; + + const grouptags = []; + grouptags.push(box.grouptag); + + box.set("grouptag", grouptags); + promises.push(box.save()); + } + + return Promise.all(promises).then(function () { + console.log("Migration done!"); + + return schemaVersion.update({}, { $inc: { schemaVersion: 1 } }); + }); + }); +}; + +// Connect to db and run migration +connect() + .then(function () { + migrate() + .then(function () { + mongoose.disconnect(); + }) + .catch(function (err) { + console.log(err); + mongoose.disconnect(); + }); + }) + .catch(function (err) { + console.log(err); + }); diff --git a/packages/models/package.json b/packages/models/package.json index 93748450..f82c7718 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -8,7 +8,7 @@ "@grpc/grpc-js": "^1.3.7", "@grpc/proto-loader": "^0.6.4", "@sensebox/osem-protos": "^1.1.0", - "@sensebox/sketch-templater": "^1.10.5", + "@sensebox/sketch-templater": "1.11.2", "bcrypt": "^5.0.1", "bunyan": "^1.8.15", "config": "^3.3.6", diff --git a/packages/models/src/box/box.js b/packages/models/src/box/box.js index 105ddd09..1710f603 100644 --- a/packages/models/src/box/box.js +++ b/packages/models/src/box/box.js @@ -65,7 +65,7 @@ const boxSchema = new Schema({ enum: ['unknown', 'indoor', 'outdoor', 'mobile'] }, grouptag: { - type: String, + type: [String], // Default value for array is [] (empty array) trim: true, required: false }, @@ -880,7 +880,7 @@ boxSchema.methods.updateBox = function updateBox (args) { // only grouptag, description and weblink can removed through setting them to empty string ('') for (const prop of ['name', 'exposure', 'grouptag', 'description', 'weblink', 'image', 'integrations.mqtt', 'integrations.ttn', 'model', 'useAuth']) { if (typeof args[prop] !== 'undefined') { - box.set(prop, (args[prop] === '' ? undefined : args[prop])); + box.set(prop, ((args[prop] === '' || (Array.isArray(args[prop]) && args[prop].length === 0)) ? undefined : args[prop])); } } @@ -938,16 +938,20 @@ boxSchema.methods.getLocations = function getLocations ({ format, fromDate, toDa }; const buildFindBoxesQuery = function buildFindBoxesQuery (opts = {}) { - const { phenomenon, fromDate, toDate, bbox, near, maxDistance } = opts, + const { phenomenon, fromDate, toDate, bbox, near, maxDistance, grouptag } = opts, query = {}; // simple string parameters - for (const param of ['exposure', 'model', 'grouptag']) { + for (const param of ['exposure', 'model']) { if (opts[param]) { query[param] = { '$in': opts[param] }; } } + if (grouptag) { + query['grouptag'] = { '$all': grouptag }; + } + // bbox search parameter if (bbox) { query['locations'] = { '$geoWithin': { '$geometry': bbox } }; diff --git a/packages/models/test/tests/1-box.js b/packages/models/test/tests/1-box.js index 2fed6d90..2d7fddf7 100644 --- a/packages/models/test/tests/1-box.js +++ b/packages/models/test/tests/1-box.js @@ -43,7 +43,7 @@ describe('Box model', function () { .then(shouldBeABoxWithSecrets) .then(function (box) { expect(box.name).equal('testSensebox'); - expect(box.grouptag).not.exist; + expect(box.grouptag).to.be.an('array').that.is.empty; expect(box.model).equal('homeEthernet'); expect(box.integrations.mqtt.enabled).false; @@ -60,7 +60,7 @@ describe('Box model', function () { it('should persist integrations and other properties upon creation', function () { const box = senseBox({ name: 'integrationsbox', - grouptag: 'grouptagTest', + grouptag: ['grouptagTest'], exposure: 'outdoor', ttn: { dev_id: 'test_devid', @@ -88,7 +88,8 @@ describe('Box model', function () { .then(function ({ integrations, name, grouptag, exposure }) { expect(name).equal('integrationsbox'); - expect(grouptag).equal('grouptagTest'); + // expect(grouptag).equal(['grouptagTest']); + expect(grouptag).to.be.an('array').that.include('grouptagTest'); expect(exposure).equal('outdoor'); @@ -560,7 +561,7 @@ describe('Box model', function () { }) { expect(name).equal(updatePayload.name); expect(exposure).equal(updatePayload.exposure); - expect(grouptag).equal(updatePayload.grouptag); + expect(grouptag).to.be.an('array').that.include(updatePayload.grouptag); expect(weblink).equal(updatePayload.weblink); expect(description).equal(updatePayload.description); expect(model).equal(updatePayload.model); @@ -616,11 +617,11 @@ describe('Box model', function () { return Box.findById(box._id); }) .then(function (box) { - expect(box.grouptag).equal(updatePayload.grouptag); + expect(box.grouptag).to.be.an('array').that.include(updatePayload.grouptag); expect(box.weblink).equal(updatePayload.weblink); expect(box.description).equal(updatePayload.description); - updatePayload.grouptag = ''; + updatePayload.grouptag = []; updatePayload.weblink = ''; updatePayload.description = ''; @@ -630,7 +631,7 @@ describe('Box model', function () { return Box.findById(box._id); }) .then(function ({ grouptag, weblink, description }) { - expect(grouptag).not.exist; + expect(grouptag).to.be.an('array').that.is.empty; expect(weblink).not.exist; expect(description).not.exist; }); diff --git a/tests/data/senseBoxSchema.js b/tests/data/senseBoxSchema.js index 9ee2325e..b32f4aa2 100644 --- a/tests/data/senseBoxSchema.js +++ b/tests/data/senseBoxSchema.js @@ -17,7 +17,10 @@ module.exports = { 'type': 'string' }, 'grouptag': { - 'type': 'string' + 'type': ['array', 'string'], + 'items': { + 'type': 'string' + } }, 'exposure': { 'type': 'string' diff --git a/tests/tests/002-location_tests.js b/tests/tests/002-location_tests.js index e4685702..ec0bbb49 100644 --- a/tests/tests/002-location_tests.js +++ b/tests/tests/002-location_tests.js @@ -26,22 +26,25 @@ const minimalSensebox = function minimalSensebox (location = [123, 12, 34], expo describe('openSenseMap API locations tests', function () { let authHeader, authHeaderBox, csvAndAuthHeader, box, submitTimeLoc1; - before('add test user', function (done) { + before('add test user', function () { const user = { name: 'locationtestuser', email: 'locationtestuser@test.test', password: '12345678' }; - chakram.post(`${process.env.OSEM_TEST_BASE_URL}/users/register`, user) + return chakram.post(`${process.env.OSEM_TEST_BASE_URL}/users/register`, user) .then(logResponseIfError) .then(function (response) { expect(response.body.token).to.exist; authHeader = { headers: { 'Authorization': `Bearer ${response.body.token}` } }; - done(); + + return chakram.wait(); }); }); - after('delete user', function (done) { - chakram.delete(`${process.env.OSEM_TEST_BASE_URL}/users/me`, { password: '12345678' }, authHeader) + after('delete user', function () { + return chakram.delete(`${process.env.OSEM_TEST_BASE_URL}/users/me`, { password: '12345678' }, authHeader) .then(logResponseIfError) - .then(() => done()); + .then(() => { + return chakram.wait(); + }); }); describe('location validation', function () { @@ -115,6 +118,7 @@ describe('openSenseMap API locations tests', function () { return chakram.wait(); }); + // .then(done, done); }); it('should allow to set the location for a new box as latLng object', function () { @@ -217,15 +221,17 @@ describe('openSenseMap API locations tests', function () { let BASE_URL = `${process.env.OSEM_TEST_BASE_URL}/boxes`; let result; - before('get box', function (done) { + before('get box', function () { BASE_URL = `${BASE_URL}/${box._id}`; // need to append at test runtime, not at parsetime - chakram.get(BASE_URL) + return chakram.get(BASE_URL) .then(logResponseIfError) .then(function (response) { expect(response).to.have.status(200); result = response.body; - done(); + // done(); + + return chakram.wait(); }); }); diff --git a/tests/tests/005-create-boxes-test.js b/tests/tests/005-create-boxes-test.js index 392d64e7..e61bf1da 100644 --- a/tests/tests/005-create-boxes-test.js +++ b/tests/tests/005-create-boxes-test.js @@ -538,7 +538,7 @@ describe('openSenseMap API Routes: /boxes', function () { expect(response).to.have.status(200); expect(response).to.comprise.of.json('data.name', update_payload.name); expect(response).to.comprise.of.json('data.exposure', update_payload.exposure); - expect(response).to.comprise.of.json('data.grouptag', update_payload.grouptag); + expect(response.body.data.grouptag).to.be.an('array').that.include(update_payload.grouptag); expect(response).to.comprise.of.json('data.description', update_payload.description); expect(response).to.comprise.of.json('data.currentLocation', { type: 'Point', @@ -676,7 +676,7 @@ describe('openSenseMap API Routes: /boxes', function () { }); it('should allow to unset the grouptag, description and weblink of the box via PUT', function () { - const update_payload = { grouptag: '', description: '', weblink: '' }; + const update_payload = { grouptag: [], description: '', weblink: '' }; return chakram.put(`${BASE_URL}/boxes/${boxIds[1]}`, update_payload, { headers: { 'Authorization': `Bearer ${jwt2}` } }) .then(function (response) { diff --git a/yarn.lock b/yarn.lock index cb08f307..ee3c4cca 100644 --- a/yarn.lock +++ b/yarn.lock @@ -143,12 +143,12 @@ resolved "https://registry.yarnpkg.com/@sensebox/osem-protos/-/osem-protos-1.1.0.tgz#a7de8bc6be867953f1309181a012063c23299e79" integrity sha512-H+nUVcWlT0dvIqfJnYHuX9JBcCkP1ZKGE5YTRNWPbAEdZ11h+srpQsmeI58wK5hJcdukaZAjc4Dy96IeGM77aA== -"@sensebox/sketch-templater@^1.10.5": - version "1.10.5" - resolved "https://registry.yarnpkg.com/@sensebox/sketch-templater/-/sketch-templater-1.10.5.tgz#ea4ceefa8ab5f4a7a222b7d8694d7aa51a7313fc" - integrity sha512-4SjU3HWsIThsi8M2iUXon95UNyZaXw2qbivsAh4eP7+HsXn1lXhuGOG1Q/wVZU0Ju62cY4jc93G+8Bixsab1Zw== +"@sensebox/sketch-templater@1.11.2": + version "1.11.2" + resolved "https://registry.yarnpkg.com/@sensebox/sketch-templater/-/sketch-templater-1.11.2.tgz#64f4cb184558bc0ce897c7366498d267255c52aa" + integrity sha512-I693bJ2IjqPXywEb8MlDnapvd+7FA6i4OFqMPbb6BKIp0DgsBYp1zapdQlS/JRFb+A9E9ZfOrQckG7UVNtp7UQ== dependencies: - config "^1.29.2" + config "^3.3.7" dedent "^0.7.0" "@sindresorhus/is@^4.0.0": @@ -330,11 +330,21 @@ "@types/node" "*" "@types/responselike" "*" +"@types/chai@4": + version "4.3.0" + resolved "https://registry.yarnpkg.com/@types/chai/-/chai-4.3.0.tgz#23509ebc1fa32f1b4d50d6a66c4032d5b8eaabdc" + integrity sha512-/ceqdqeRraGolFTcfoXNiqjyQhZzbINDngeoAq9GoHa8PPK1yNzTaxWjA6BFWp5Ua9JpXEMSS4s5i9tS0hOJtw== + "@types/color-name@^1.1.1": version "1.1.1" resolved "https://registry.yarnpkg.com/@types/color-name/-/color-name-1.1.1.tgz#1c1261bbeaa10a8055bbc5d8ab84b7b2afc846a0" integrity sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ== +"@types/cookiejar@*": + version "2.1.2" + resolved "https://registry.yarnpkg.com/@types/cookiejar/-/cookiejar-2.1.2.tgz#66ad9331f63fe8a3d3d9d8c6e3906dd10f6446e8" + integrity sha512-t73xJJrvdTjXrn4jLS9VSGRbz0nUY3cl2DMGDU48lKl+HR9dbbjW2A9r3g40VA++mQpy6uuHg33gy7du2BKpog== + "@types/http-cache-semantics@*": version "4.0.0" resolved "https://registry.yarnpkg.com/@types/http-cache-semantics/-/http-cache-semantics-4.0.0.tgz#9140779736aa2655635ee756e2467d787cfe8a2a" @@ -369,6 +379,14 @@ dependencies: "@types/node" "*" +"@types/superagent@^3.8.3": + version "3.8.7" + resolved "https://registry.yarnpkg.com/@types/superagent/-/superagent-3.8.7.tgz#1f1ed44634d5459b3a672eb7235a8e7cfd97704c" + integrity sha512-9KhCkyXv268A2nZ1Wvu7rQWM+BmdYUVkycFeNnYrUL5Zwu7o8wPQ3wBfW59dDP+wuoxw0ww8YKgTNv8j/cgscA== + dependencies: + "@types/cookiejar" "*" + "@types/node" "*" + "@ungap/promise-all-settled@1.1.2": version "1.1.2" resolved "https://registry.yarnpkg.com/@ungap/promise-all-settled/-/promise-all-settled-1.1.2.tgz#aa58042711d6e3275dd37dc597e5d31e8c290a44" @@ -465,9 +483,9 @@ anymatch@~3.1.1: picomatch "^2.0.4" apicache@^1.6.2: - version "1.6.2" - resolved "https://registry.yarnpkg.com/apicache/-/apicache-1.6.2.tgz#a0a3d51024fa2814c4ace7e9e7053ebcb0920ee6" - integrity sha512-3z5e+1E2qwZoqzFVgdx5l9nGhSG0kHv3v2G170vnJSz5uj4mCLVZfRw0o37aWwV8pTPXSkB8OBZz3TIur4H26g== + version "1.6.3" + resolved "https://registry.yarnpkg.com/apicache/-/apicache-1.6.3.tgz#4441aa40f2a48c9dd6f11c73be937d563405355b" + integrity sha512-jS3VfUFpQ9BesFQZcdd1vVYg3ZsO2kGPmTJHqycIYPAQs54r74CRiyj8DuzJpwzLwIfCBYzh4dy9Jt8xYbo27w== aproba@^1.0.3: version "1.2.0" @@ -663,6 +681,14 @@ cacheable-request@^7.0.1: normalize-url "^4.1.0" responselike "^2.0.0" +call-bind@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.2.tgz#b1d4e89e688119c3c9a903ad30abb2f6a919be3c" + integrity sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA== + dependencies: + function-bind "^1.1.1" + get-intrinsic "^1.0.2" + callsites@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" @@ -683,6 +709,19 @@ chai-as-promised@5.x.x: resolved "https://registry.yarnpkg.com/chai-as-promised/-/chai-as-promised-5.3.0.tgz#09d7a402908aa70dfdbead53e5853fc79d3ef21c" integrity sha1-CdekApCKpw39vq1T5YU/x50+8hw= +chai-http@^4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/chai-http/-/chai-http-4.3.0.tgz#3c37c675c1f4fe685185a307e345de7599337c1a" + integrity sha512-zFTxlN7HLMv+7+SPXZdkd5wUlK+KxH6Q7bIEMiEx0FK3zuuMqL7cwICAQ0V1+yYRozBburYuxN1qZstgHpFZQg== + dependencies: + "@types/chai" "4" + "@types/superagent" "^3.8.3" + cookiejar "^2.1.1" + is-ip "^2.0.0" + methods "^1.1.2" + qs "^6.5.1" + superagent "^3.7.0" + chai-subset@1.x.x: version "1.6.0" resolved "https://registry.yarnpkg.com/chai-subset/-/chai-subset-1.6.0.tgz#a5d0ca14e329a79596ed70058b6646bd6988cfe9" @@ -861,6 +900,11 @@ commist@^1.0.0: leven "^2.1.0" minimist "^1.1.0" +component-emitter@^1.2.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.3.0.tgz#16e4070fba8ae29b679f2215853ee181ab2eabc0" + integrity sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg== + concat-map@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" @@ -876,13 +920,6 @@ concat-stream@^2.0.0: readable-stream "^3.0.2" typedarray "^0.0.6" -config@^1.29.2: - version "1.31.0" - resolved "https://registry.yarnpkg.com/config/-/config-1.31.0.tgz#ab08aeba6536015d220cd0afe14b3e0501082542" - integrity sha512-Ep/l9Rd1J9IPueztJfpbOqVzuKHQh4ZODMNt9xqTYdBBNRXbV4oTu34kCkkfdRVcDq0ohtpaeXGgb+c0LQxFRA== - dependencies: - json5 "^1.0.1" - config@^3.3.6: version "3.3.6" resolved "https://registry.yarnpkg.com/config/-/config-3.3.6.tgz#b87799db7399cc34988f55379b5f43465b1b065c" @@ -890,11 +927,23 @@ config@^3.3.6: dependencies: json5 "^2.1.1" +config@^3.3.7: + version "3.3.7" + resolved "https://registry.yarnpkg.com/config/-/config-3.3.7.tgz#4310410dc2bf4e0effdca21a12a4035860a24ee4" + integrity sha512-mX/n7GKDYZMqvvkY6e6oBY49W8wxdmQt+ho/5lhwFDXqQW9gI+Ahp8EKp8VAbISPnmf2+Bv5uZK7lKXZ6pf1aA== + dependencies: + json5 "^2.1.1" + console-control-strings@^1.0.0, console-control-strings@~1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" integrity sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4= +cookiejar@^2.1.0, cookiejar@^2.1.1: + version "2.1.3" + resolved "https://registry.yarnpkg.com/cookiejar/-/cookiejar-2.1.3.tgz#fc7a6216e408e74414b90230050842dacda75acc" + integrity sha512-JxbCBUdrfr6AQjOXrxoTvAMJO4HBTUIlBzslcJPAz+/KT8yk53fXun51u+RenNYvad/+Vc2DIz5o9UxlCDymFQ== + core-util-is@1.0.2, core-util-is@~1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" @@ -988,6 +1037,13 @@ debug@4, debug@4.3.1, debug@^4.0.1, debug@^4.1.1: dependencies: ms "2.1.2" +debug@^3.1.0: + version "3.2.7" + resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a" + integrity sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ== + dependencies: + ms "^2.1.1" + decamelize@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-4.0.0.tgz#aa472d7bf660eb15f3494efd531cab7f2a709837" @@ -1329,7 +1385,7 @@ extend-object@1.x.x: resolved "https://registry.yarnpkg.com/extend-object/-/extend-object-1.0.0.tgz#42514f84015d1356caf5187969dfb2bc1bda0823" integrity sha1-QlFPhAFdE1bK9Rh5ad+yvBvaCCM= -extend@~3.0.2: +extend@^3.0.0, extend@~3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== @@ -1409,6 +1465,15 @@ forever-agent@~0.6.1: resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" integrity sha1-+8cfDEGt6zf5bFd60e1C2P2sypE= +form-data@^2.3.1: + version "2.5.1" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.5.1.tgz#f2cbec57b5e59e23716e128fe44d4e5dd23895f4" + integrity sha512-m21N3WOmEEURgk6B9GLOE4RuWOFf28Lhh9qGYeNlGq4VDXUlJy2th2slBNU8Gp8EzloYZOibZJ7t5ecIrFSjVA== + dependencies: + asynckit "^0.4.0" + combined-stream "^1.0.6" + mime-types "^2.1.12" + form-data@~2.3.2: version "2.3.3" resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.3.tgz#dcce52c05f644f298c6a7ab936bd724ceffbf3a6" @@ -1423,6 +1488,11 @@ formidable@^1.0.17: resolved "https://registry.yarnpkg.com/formidable/-/formidable-1.2.2.tgz#bf69aea2972982675f00865342b982986f6b8dd9" integrity sha512-V8gLm+41I/8kguQ4/o1D3RIHRmhYFG4pnNyonvua+40rqcEmT4+V71yaZ3B457xbbgCsCfjSPi65u/W6vK1U5Q== +formidable@^1.2.0: + version "1.2.6" + resolved "https://registry.yarnpkg.com/formidable/-/formidable-1.2.6.tgz#d2a51d60162bbc9b4a055d8457a7c75315d1a168" + integrity sha512-KcpbcpuLNOwrEjnbpMC0gS+X8ciDoZE1kkqzat4a8vrprf+s9pKNQ/QIwWfbfs4ltgmFl3MD177SNTkve3BwGQ== + fs-minipass@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-2.1.0.tgz#7f5036fdbf12c63c169190cbe4199c852271f9fb" @@ -1440,6 +1510,11 @@ fsevents@~2.3.1: resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== +function-bind@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" + integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== + functional-red-black-tree@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" @@ -1479,6 +1554,15 @@ get-func-name@^2.0.0: resolved "https://registry.yarnpkg.com/get-func-name/-/get-func-name-2.0.0.tgz#ead774abee72e20409433a066366023dd6887a41" integrity sha1-6td0q+5y4gQJQzoGY2YCPdaIekE= +get-intrinsic@^1.0.2: + version "1.1.1" + resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.1.1.tgz#15f59f376f855c446963948f0d24cd3637b4abc6" + integrity sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q== + dependencies: + function-bind "^1.1.1" + has "^1.0.3" + has-symbols "^1.0.1" + get-stream@^5.1.0: version "5.1.0" resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-5.1.0.tgz#01203cdc92597f9b909067c3e656cc1f4d3c4dc9" @@ -1599,11 +1683,23 @@ has-flag@^4.0.0: resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== +has-symbols@^1.0.1: + version "1.0.3" + resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.3.tgz#bb7b2c4349251dce87b125f7bdf874aa7c8b39f8" + integrity sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A== + has-unicode@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" integrity sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk= +has@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" + integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== + dependencies: + function-bind "^1.1.1" + he@1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" @@ -1738,6 +1834,11 @@ inherits@2, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.1, resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== +ip-regex@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/ip-regex/-/ip-regex-2.1.0.tgz#fa78bf5d2e6913c911ce9f819ee5146bb6d844e9" + integrity sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk= + is-binary-path@~2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" @@ -1774,6 +1875,13 @@ is-glob@^4.0.0, is-glob@^4.0.1, is-glob@~4.0.1: dependencies: is-extglob "^2.1.1" +is-ip@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/is-ip/-/is-ip-2.0.0.tgz#68eea07e8a0a0a94c2d080dd674c731ab2a461ab" + integrity sha1-aO6gfooKCpTC0IDdZ0xzGrKkYas= + dependencies: + ip-regex "^2.0.0" + is-number@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" @@ -1876,13 +1984,6 @@ json-stringify-safe@~5.0.1: resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" integrity sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus= -json5@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.1.tgz#779fb0018604fa854eacbf6252180d83543e3dbe" - integrity sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow== - dependencies: - minimist "^1.2.0" - json5@^2.1.1: version "2.1.3" resolved "https://registry.yarnpkg.com/json5/-/json5-2.1.3.tgz#c9b0f7fa9233bfe5807fe66fcf3a5617ed597d43" @@ -2069,6 +2170,11 @@ lru-cache@^6.0.0: dependencies: yallist "^4.0.0" +methods@^1.1.1, methods@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" + integrity sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4= + millify@^3.5.2: version "3.5.2" resolved "https://registry.yarnpkg.com/millify/-/millify-3.5.2.tgz#787dcdf55bd8161621c4d3c55a0b9443d89eabd2" @@ -2088,7 +2194,7 @@ mime-types@^2.1.12, mime-types@~2.1.19: dependencies: mime-db "1.44.0" -mime@^1.2.11: +mime@^1.2.11, mime@^1.4.1: version "1.6.0" resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== @@ -2123,7 +2229,7 @@ minimalistic-assert@^1.0.0: dependencies: brace-expansion "^1.1.7" -minimist@^1.1.0, minimist@^1.2.0, minimist@^1.2.5: +minimist@^1.1.0, minimist@^1.2.5: version "1.2.5" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== @@ -2398,6 +2504,11 @@ object-assign@^4.1.0: resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= +object-inspect@^1.9.0: + version "1.12.0" + resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.12.0.tgz#6e2c120e868fd1fd18cb4f18c31741d0d6e776f0" + integrity sha512-Ho2z80bVIvJloH+YzRmpZVQe87+qASmBUKZDWgx9cu+KDrX2ZDH/3tMy+gXbZETVGs2M8YdxObOh7XAtim9Y0g== + obuf@^1.0.0, obuf@^1.1.1: version "1.1.2" resolved "https://registry.yarnpkg.com/obuf/-/obuf-1.1.2.tgz#09bea3343d41859ebd446292d11c9d4db619084e" @@ -2586,6 +2697,13 @@ qs@^6.2.1: resolved "https://registry.yarnpkg.com/qs/-/qs-6.9.3.tgz#bfadcd296c2d549f1dffa560619132c977f5008e" integrity sha512-EbZYNarm6138UKKq46tdx08Yo/q9ZhFoAXAI1meAFd2GtbRDhbZY2WQSICskT0c5q99aFzLG1D4nvTk9tqfXIw== +qs@^6.5.1: + version "6.10.3" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.10.3.tgz#d6cde1b2ffca87b5aa57889816c5f81535e22e8e" + integrity sha512-wr7M2E0OFRfIfJZjKGieI8lBKb7fRCH4Fv5KNPEs7gJ8jadvotdsS08PzOKR7opXhZ/Xkjtt3WF9g38drmyRqQ== + dependencies: + side-channel "^1.0.4" + qs@~6.5.2: version "6.5.2" resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36" @@ -2633,7 +2751,7 @@ readable-stream@2.2.7: string_decoder "~1.0.0" util-deprecate "~1.0.1" -readable-stream@^2.0.1, readable-stream@^2.0.6, readable-stream@^2.2.9: +readable-stream@^2.0.1, readable-stream@^2.0.6, readable-stream@^2.2.9, readable-stream@^2.3.5: version "2.3.7" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57" integrity sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw== @@ -2887,6 +3005,15 @@ shebang-regex@^3.0.0: resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== +side-channel@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.0.4.tgz#efce5c8fdc104ee751b25c58d4290011fa5ea2cf" + integrity sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw== + dependencies: + call-bind "^1.0.0" + get-intrinsic "^1.0.2" + object-inspect "^1.9.0" + signal-exit@^3.0.0: version "3.0.3" resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.3.tgz#a1410c2edd8f077b08b4e253c8eacfcaf057461c" @@ -3090,6 +3217,22 @@ strip-json-comments@3.1.1, strip-json-comments@^3.1.0, strip-json-comments@^3.1. resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== +superagent@^3.7.0: + version "3.8.3" + resolved "https://registry.yarnpkg.com/superagent/-/superagent-3.8.3.tgz#460ea0dbdb7d5b11bc4f78deba565f86a178e128" + integrity sha512-GLQtLMCoEIK4eDv6OGtkOoSMt3D+oq0y3dsxMuYuDvaNUvuT8eFBuLmfR0iYYzHC1e8hpzC6ZsxbuP6DIalMFA== + dependencies: + component-emitter "^1.2.0" + cookiejar "^2.1.0" + debug "^3.1.0" + extend "^3.0.0" + form-data "^2.3.1" + formidable "^1.2.0" + methods "^1.1.1" + mime "^1.4.1" + qs "^6.5.1" + readable-stream "^2.3.5" + supports-color@8.1.1: version "8.1.1" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-8.1.1.tgz#cd6fc17e28500cff56c1b86c0a7fd4a54a73005c" From b1b233081bebd3b1bd463c4cc37f5a9d87a7501e Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Wed, 9 Mar 2022 13:57:18 +0100 Subject: [PATCH 188/337] v1.0.0 --- packages/models/CHANGELOG.md | 6 ++++++ packages/models/package.json | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/packages/models/CHANGELOG.md b/packages/models/CHANGELOG.md index 1da0c41d..7e86b429 100644 --- a/packages/models/CHANGELOG.md +++ b/packages/models/CHANGELOG.md @@ -2,6 +2,12 @@ ## Unreleased +## v1.0.0 + +- Update @sensebox/node-sketch-templater to v1.11.2 +- `grouptag` changed from `string` to `array` +- Allow mqtts nad wss for mqtt-integration + ## v0.0.32-beta.0 - Allow mqtts nad wss for mqtt-integration diff --git a/packages/models/package.json b/packages/models/package.json index f82c7718..bcb67154 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -1,7 +1,7 @@ { "name": "@sensebox/opensensemap-api-models", "description": "openSenseMap data models and database connection", - "version": "0.0.32-beta.0", + "version": "1.0.0", "main": "index.js", "license": "MIT", "dependencies": { From 906f33c10d2f49b1444b3e0ea6d426ea4129db49 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Wed, 9 Mar 2022 14:14:50 +0100 Subject: [PATCH 189/337] Update Changelog --- CHANGELOG.md | 7 +++++++ packages/api/package.json | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 9444b747..9f6f98ca 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,12 @@ # openSenseMap API Changelog +## v10.0 + +- Use @sensebox/opensensemap-api-models v1.0.0 +- Update CI +- Publish container on Github Registry +- Correct API documentation + ## v9.4 - Add Cayenne LPP Decoding diff --git a/packages/api/package.json b/packages/api/package.json index 92fa5fc5..7b952cae 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -10,7 +10,7 @@ "Norwin Roosen" ], "dependencies": { - "@sensebox/opensensemap-api-models": "^0.0.32-beta.0", + "@sensebox/opensensemap-api-models": "^1.0.0", "@turf/area": "^6.3.0", "@turf/bbox": "^6.3.0", "@turf/centroid": "^6.3.0", From 340df3cdae65ebc2f6ab12c5fad6dca9a5e8f1f9 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Wed, 9 Mar 2022 14:29:11 +0100 Subject: [PATCH 190/337] Update version script to support new semver --- .scripts/create-version.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.scripts/create-version.js b/.scripts/create-version.js index 832d2186..389e4600 100644 --- a/.scripts/create-version.js +++ b/.scripts/create-version.js @@ -19,7 +19,7 @@ try { const longHash = exec('git log --pretty=format:"%H" -n 1'); const tag = exec(`git tag --contains "${longHash}"`); - if (/^v[0-9]+$/.test(tag)) { + if (/^v[0-9]+.[0-9]+.[0-9]+$/.test(tag)) { writeVersionFile(tag); } else { const shortHash = exec('git log --pretty=format:"%h" -n 1'); From e7873ba40a2ee0fe58d7ed215a460a82f77cef92 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Thu, 10 Mar 2022 12:39:16 +0100 Subject: [PATCH 191/337] update migrations for useAuth, access_token and grouptags (#563) * update migrations for useAuth, access_token and grouptags * rename files * add migration to remove corrupted sensors, fix numbers Co-authored-by: Umut Tas --- .../10-node-update-grouptag.js} | 3 +- .../7-mongoshell-boxes-add-field.js | 23 ------- .../7-node-boxes-add-field-access-token.js | 55 ++++++++++++++++ .../8-node-boxes-fix-sensors.js | 62 +++++++++++++++++++ .../9-node-boxes-add-field-useAuth.js | 54 ++++++++++++++++ 5 files changed, 172 insertions(+), 25 deletions(-) rename packages/models/migrations/{8-9_box_grouptag/8-node-update-grouptag.js => 10-11_box_grouptag/10-node-update-grouptag.js} (94%) delete mode 100644 packages/models/migrations/7-8_box_access_token/7-mongoshell-boxes-add-field.js create mode 100644 packages/models/migrations/7-9_box_access_token/7-node-boxes-add-field-access-token.js create mode 100644 packages/models/migrations/7-9_box_access_token/8-node-boxes-fix-sensors.js create mode 100644 packages/models/migrations/7-9_box_access_token/9-node-boxes-add-field-useAuth.js diff --git a/packages/models/migrations/8-9_box_grouptag/8-node-update-grouptag.js b/packages/models/migrations/10-11_box_grouptag/10-node-update-grouptag.js similarity index 94% rename from packages/models/migrations/8-9_box_grouptag/8-node-update-grouptag.js rename to packages/models/migrations/10-11_box_grouptag/10-node-update-grouptag.js index 40b30264..326f0407 100644 --- a/packages/models/migrations/8-9_box_grouptag/8-node-update-grouptag.js +++ b/packages/models/migrations/10-11_box_grouptag/10-node-update-grouptag.js @@ -3,7 +3,6 @@ const models = require("../../../models"); const { mongoose, connect } = models.db; -const moment = require("moment"); const { Box } = models; @@ -16,7 +15,7 @@ const migrate = function migrate() { .find({}) .next() .then(function (latestVersion) { - if (latestVersion.schemaVersion !== 8) { + if (latestVersion.schemaVersion !== 10) { throw new Error("Unexpected schema version... Exiting!"); } diff --git a/packages/models/migrations/7-8_box_access_token/7-mongoshell-boxes-add-field.js b/packages/models/migrations/7-8_box_access_token/7-mongoshell-boxes-add-field.js deleted file mode 100644 index b0a25026..00000000 --- a/packages/models/migrations/7-8_box_access_token/7-mongoshell-boxes-add-field.js +++ /dev/null @@ -1,23 +0,0 @@ -/* eslint-disable */ - -// TODO add field lastMeasurementAt to boxes -db = db.getSiblingDB('OSeM-api'); - -// check schema version -var collections = db.getCollectionNames(); - -if (collections.indexOf("schemaVersion") === -1) { - print("Error: Unkown schema version. Exiting!"); - quit(); -} - -var latestVersion = db.schemaVersion.find({}).sort({ schemaVersion: -1 }).limit(1).next(); - -if (latestVersion.schemaVersion !== 7) { - print("Migration already applied... Exiting!"); - quit(); -} - -db.boxes.update({},{ $set: {"access_token": undefined} },false,true); - -db.schemaVersion.updateOne({}, { $inc: { schemaVersion: 1 }}); \ No newline at end of file diff --git a/packages/models/migrations/7-9_box_access_token/7-node-boxes-add-field-access-token.js b/packages/models/migrations/7-9_box_access_token/7-node-boxes-add-field-access-token.js new file mode 100644 index 00000000..f38226d1 --- /dev/null +++ b/packages/models/migrations/7-9_box_access_token/7-node-boxes-add-field-access-token.js @@ -0,0 +1,55 @@ +/* eslint-disable */ +"use strict"; + +const models = require("../../../models"); +const { mongoose, connect } = models.db; +const { Box } = models; +const crypto = require('crypto') + +const migrate = function migrate() { + const schemaVersion = mongoose.connection.db.collection("schemaVersion"); + + console.log('Starting "update access token" migration'); + + return schemaVersion + .find({}) + .next() + .then(function (latestVersion) { + if (latestVersion.schemaVersion !== 7) { + throw new Error("Unexpected schema version... Exiting!"); + } + + return Box.find({access_token: {$exists: false}}).exec(); + }) + .then(function (boxes) { + const promises = []; + for (let index = 0; index < boxes.length; index++) { + const box = boxes[index]; + + box.set("access_token", crypto.randomBytes(32).toString('hex')); + promises.push(box.save()); + } + + return Promise.all(promises).then(function () { + console.log("Migration done!"); + + return schemaVersion.update({}, { $inc: { schemaVersion: 1 } }); + }); + }); +}; + +// Connect to db and run migration +connect() + .then(function () { + migrate() + .then(function () { + mongoose.disconnect(); + }) + .catch(function (err) { + console.log(err); + mongoose.disconnect(); + }); + }) + .catch(function (err) { + console.log(err); + }); diff --git a/packages/models/migrations/7-9_box_access_token/8-node-boxes-fix-sensors.js b/packages/models/migrations/7-9_box_access_token/8-node-boxes-fix-sensors.js new file mode 100644 index 00000000..48739084 --- /dev/null +++ b/packages/models/migrations/7-9_box_access_token/8-node-boxes-fix-sensors.js @@ -0,0 +1,62 @@ +/* eslint-disable */ +"use strict"; + +const models = require("../../../models"); +const { mongoose, connect } = models.db; +const { Box } = models; + +const migrate = function migrate() { + const schemaVersion = mongoose.connection.db.collection("schemaVersion"); + + console.log('Starting "fix corrupt sensors" migration'); + + return schemaVersion + .find({}) + .next() + .then(function (latestVersion) { + if (latestVersion.schemaVersion !== 8) { + throw new Error("Unexpected schema version... Exiting!"); + } + + return Box.find({ "sensors" : {$elemMatch: { title : { $exists: false }}}}).exec(); + }) + .then(function (boxes) { + console.log("Found boxes: ", boxes.length) + const promises = []; + for (let index = 0; index < boxes.length; index++) { + const box = boxes[index]; + + let sensors = box.sensors.filter(sensor => { + if(sensor.title && sensor.unit){ + return true; + } else { + return false; + } + }) + box.set("sensors", sensors); + promises.push(box.save()); + } + + return Promise.all(promises).then(function () { + console.log("Migration done!"); + + return schemaVersion.update({}, { $inc: { schemaVersion: 1 } }); + }); + }); +}; + +// Connect to db and run migration +connect() + .then(function () { + migrate() + .then(function () { + mongoose.disconnect(); + }) + .catch(function (err) { + console.log(err); + mongoose.disconnect(); + }); + }) + .catch(function (err) { + console.log(err); + }); diff --git a/packages/models/migrations/7-9_box_access_token/9-node-boxes-add-field-useAuth.js b/packages/models/migrations/7-9_box_access_token/9-node-boxes-add-field-useAuth.js new file mode 100644 index 00000000..97815b38 --- /dev/null +++ b/packages/models/migrations/7-9_box_access_token/9-node-boxes-add-field-useAuth.js @@ -0,0 +1,54 @@ +/* eslint-disable */ +"use strict"; + +const models = require("../../../models"); +const { mongoose, connect } = models.db; +const { Box } = models; + +const migrate = function migrate() { + const schemaVersion = mongoose.connection.db.collection("schemaVersion"); + + console.log('Starting "update useAuth" migration'); + + return schemaVersion + .find({}) + .next() + .then(function (latestVersion) { + if (latestVersion.schemaVersion !== 9) { + throw new Error("Unexpected schema version... Exiting!"); + } + + return Box.find({useAuth: {$exists: false}}).exec(); + }) + .then(function (boxes) { + const promises = []; + for (let index = 0; index < boxes.length; index++) { + const box = boxes[index]; + + box.set("useAuth", false); + promises.push(box.save()); + } + + return Promise.all(promises).then(function () { + console.log("Migration done!"); + + return schemaVersion.update({}, { $inc: { schemaVersion: 1 } }); + }); + }); +}; + +// Connect to db and run migration +connect() + .then(function () { + migrate() + .then(function () { + mongoose.disconnect(); + }) + .catch(function (err) { + console.log(err); + mongoose.disconnect(); + }); + }) + .catch(function (err) { + console.log(err); + }); From 3840e7d24427b2b2b7fa2e730447237c8e3ca9e2 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 10 Mar 2022 12:52:28 +0100 Subject: [PATCH 192/337] Bump actions/checkout from 2 to 3 (#562) Bumps [actions/checkout](https://github.com/actions/checkout) from 2 to 3. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/v2...v3) --- updated-dependencies: - dependency-name: actions/checkout dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Matthias Pfeil --- .github/workflows/deploy-docs.yaml | 2 +- .github/workflows/registry.yaml | 2 +- .github/workflows/test.yaml | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/deploy-docs.yaml b/.github/workflows/deploy-docs.yaml index 221f8359..0f527100 100644 --- a/.github/workflows/deploy-docs.yaml +++ b/.github/workflows/deploy-docs.yaml @@ -15,7 +15,7 @@ jobs: name: Deploy docs runs-on: ubuntu-20.04 steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - name: Gather branch information id: version_info diff --git a/.github/workflows/registry.yaml b/.github/workflows/registry.yaml index e5470494..480ba137 100644 --- a/.github/workflows/registry.yaml +++ b/.github/workflows/registry.yaml @@ -21,7 +21,7 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@v2 + uses: actions/checkout@v3 - name: Log in to the Container registry uses: docker/login-action@v1.13.0 diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index b4d0196f..e93c4b55 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -13,7 +13,7 @@ jobs: name: Lint code runs-on: ubuntu-20.04 steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - name: Install Node.js 16 uses: actions/setup-node@v3.0.0 @@ -46,7 +46,7 @@ jobs: name: Run tests runs-on: ubuntu-20.04 steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - name: Execute tests run: | From 90de15bfe44eaa769714308c402a4acd0b5259dd Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 10 Mar 2022 13:03:59 +0100 Subject: [PATCH 193/337] Bump docker/login-action from 1.13.0 to 1.14.1 (#561) Bumps [docker/login-action](https://github.com/docker/login-action) from 1.13.0 to 1.14.1. - [Release notes](https://github.com/docker/login-action/releases) - [Commits](https://github.com/docker/login-action/compare/v1.13.0...v1.14.1) --- updated-dependencies: - dependency-name: docker/login-action dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Matthias Pfeil --- .github/workflows/registry.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/registry.yaml b/.github/workflows/registry.yaml index 480ba137..1a990e91 100644 --- a/.github/workflows/registry.yaml +++ b/.github/workflows/registry.yaml @@ -24,7 +24,7 @@ jobs: uses: actions/checkout@v3 - name: Log in to the Container registry - uses: docker/login-action@v1.13.0 + uses: docker/login-action@v1.14.1 with: registry: ${{ env.REGISTRY }} username: ${{ github.actor }} From a971e0868180539c1881f7901adfaec693e8664e Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Fri, 25 Mar 2022 12:04:24 +0100 Subject: [PATCH 194/337] Add new sensorLayout for DPS310 (#568) * Add new sensorLayout for DPS310 * senseBox V2 just uses DPS310 airpressure --- packages/api/lib/controllers/boxesController.js | 4 ++-- .../models/src/box/sensorLayouts/sensebox.home.mcu.js | 6 ++++-- .../sensorLayouts/sensorDefinitions/dps310_pressure.js | 8 ++++++++ .../sensorLayouts/sensorDefinitions/dps310_temperature.js | 8 ++++++++ .../src/box/sensorLayouts/sensorDefinitions/index.js | 8 ++++++-- 5 files changed, 28 insertions(+), 6 deletions(-) create mode 100644 packages/models/src/box/sensorLayouts/sensorDefinitions/dps310_pressure.js create mode 100644 packages/models/src/box/sensorLayouts/sensorDefinitions/dps310_temperature.js diff --git a/packages/api/lib/controllers/boxesController.js b/packages/api/lib/controllers/boxesController.js index e3da8cca..6e2861a2 100644 --- a/packages/api/lib/controllers/boxesController.js +++ b/packages/api/lib/controllers/boxesController.js @@ -392,7 +392,7 @@ const getBox = async function getBox (req, res, next) { * @apiParam (RequestBody) {Location} location the coordinates of this senseBox. * @apiParam (RequestBody) {String="homeV2Lora","homeV2Ethernet","homeV2Wifi","homeEthernet","homeWifi","homeEthernetFeinstaub","homeWifiFeinstaub","luftdaten_sds011","luftdaten_sds011_dht11","luftdaten_sds011_dht22","luftdaten_sds011_bmp180","luftdaten_sds011_bme280","hackair_home_v2"} [model] specify the model if you want to use a predefined senseBox model, autocreating sensor definitions. * @apiParam (RequestBody) {Sensor[]} [sensors] an array containing the sensors of this senseBox. Only use if `model` is unspecified. - * @apiParam (RequestBody) {String[]="hdc1080","bmp280","tsl45315","veml6070","sds011","bme680","smt50","soundlevelmeter","windspeed","scd30"} [sensorTemplates] Specify which sensors should be included. + * @apiParam (RequestBody) {String[]="hdc1080","bmp280","tsl45315","veml6070","sds011","bme680","smt50","soundlevelmeter","windspeed","scd30","dps310"} [sensorTemplates] Specify which sensors should be included. * @apiParam (RequestBody) {Object} [mqtt] specify parameters of the MQTT integration for external measurement upload. Please see below for the accepted parameters * @apiParam (RequestBody) {Object} [ttn] specify parameters for the TTN integration for measurement from TheThingsNetwork.org upload. Please see below for the accepted parameters * @apiParam (RequestBody) {Boolean="true","false"} [useAuth] whether to use access_token or not for authentication @@ -555,7 +555,7 @@ module.exports = { { name: 'exposure', allowedValues: Box.BOX_VALID_EXPOSURES }, { name: 'model', allowedValues: Box.BOX_VALID_MODELS }, { name: 'sensors', dataType: ['object'] }, - { name: 'sensorTemplates', dataType: ['String'], allowedValues: ['hdc1080', 'bmp280', 'sds 011', 'tsl45315', 'veml6070', 'bme680', 'smt50', 'soundlevelmeter', 'windspeed', 'scd30'] }, + { name: 'sensorTemplates', dataType: ['String'], allowedValues: ['hdc1080', 'bmp280', 'sds 011', 'tsl45315', 'veml6070', 'bme680', 'smt50', 'soundlevelmeter', 'windspeed', 'scd30', 'dps310'] }, { name: 'serialPort', dataType: 'String', defaultValue: 'Serial1', allowedValues: ['Serial1', 'Serial2'] }, { name: 'soilDigitalPort', dataType: 'String', defaultValue: 'A', allowedValues: ['A', 'B', 'C'] }, { name: 'soundMeterPort', dataType: 'String', defaultValue: 'B', allowedValues: ['A', 'B', 'C'] }, diff --git a/packages/models/src/box/sensorLayouts/sensebox.home.mcu.js b/packages/models/src/box/sensorLayouts/sensebox.home.mcu.js index c89f0c49..0351b02f 100644 --- a/packages/models/src/box/sensorLayouts/sensebox.home.mcu.js +++ b/packages/models/src/box/sensorLayouts/sensebox.home.mcu.js @@ -18,7 +18,8 @@ const { smt50_soiltemperature, soundlevelmeter, windspeed, - scd30_co2 + scd30_co2, + dps310_pressure } = sensorDefinitions; module.exports = [ @@ -37,5 +38,6 @@ module.exports = [ smt50_soiltemperature, soundlevelmeter, windspeed, - scd30_co2 + scd30_co2, + dps310_pressure, ]; diff --git a/packages/models/src/box/sensorLayouts/sensorDefinitions/dps310_pressure.js b/packages/models/src/box/sensorLayouts/sensorDefinitions/dps310_pressure.js new file mode 100644 index 00000000..482e092b --- /dev/null +++ b/packages/models/src/box/sensorLayouts/sensorDefinitions/dps310_pressure.js @@ -0,0 +1,8 @@ +'use strict'; + +module.exports = { + title: 'Luftdruck', + unit: 'hPa', + sensorType: 'DPS310', + icon: 'osem-barometer', +}; diff --git a/packages/models/src/box/sensorLayouts/sensorDefinitions/dps310_temperature.js b/packages/models/src/box/sensorLayouts/sensorDefinitions/dps310_temperature.js new file mode 100644 index 00000000..a556ae0a --- /dev/null +++ b/packages/models/src/box/sensorLayouts/sensorDefinitions/dps310_temperature.js @@ -0,0 +1,8 @@ +'use strict'; + +module.exports = { + title: 'Temperatur', + unit: '°C', + sensorType: 'DPS310', + icon: 'osem-thermometer', +}; diff --git a/packages/models/src/box/sensorLayouts/sensorDefinitions/index.js b/packages/models/src/box/sensorLayouts/sensorDefinitions/index.js index f7d020ea..024add67 100644 --- a/packages/models/src/box/sensorLayouts/sensorDefinitions/index.js +++ b/packages/models/src/box/sensorLayouts/sensorDefinitions/index.js @@ -40,7 +40,9 @@ const veml6070_uvintensity = require('./veml6070_uvintensity'), smt50_soiltemperature = require('./smt50_soiltemperature'), soundlevelmeter = require('./soundlevelmeter'), windspeed = require('./windspeed'), - scd30_co2 = require('./scd30_co2'); + scd30_co2 = require('./scd30_co2'), + dps310_temperature = require('./dps310_temperature'), + dps310_pressure = require('./dps310_pressure'); module.exports = { hdc1008_temperature, @@ -83,5 +85,7 @@ module.exports = { smt50_soiltemperature, soundlevelmeter, windspeed, - scd30_co2 + scd30_co2, + dps310_temperature, + dps310_pressure }; From 8ba9236135e1be1bf432d013b5417bd1096bfe01 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Wed, 30 Mar 2022 10:58:09 +0200 Subject: [PATCH 195/337] Update sketch-templater dependency --- packages/models/package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/models/package.json b/packages/models/package.json index bcb67154..244548fb 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -8,7 +8,7 @@ "@grpc/grpc-js": "^1.3.7", "@grpc/proto-loader": "^0.6.4", "@sensebox/osem-protos": "^1.1.0", - "@sensebox/sketch-templater": "1.11.2", + "@sensebox/sketch-templater": "1.12.0", "bcrypt": "^5.0.1", "bunyan": "^1.8.15", "config": "^3.3.6", diff --git a/yarn.lock b/yarn.lock index ee3c4cca..12353729 100644 --- a/yarn.lock +++ b/yarn.lock @@ -143,10 +143,10 @@ resolved "https://registry.yarnpkg.com/@sensebox/osem-protos/-/osem-protos-1.1.0.tgz#a7de8bc6be867953f1309181a012063c23299e79" integrity sha512-H+nUVcWlT0dvIqfJnYHuX9JBcCkP1ZKGE5YTRNWPbAEdZ11h+srpQsmeI58wK5hJcdukaZAjc4Dy96IeGM77aA== -"@sensebox/sketch-templater@1.11.2": - version "1.11.2" - resolved "https://registry.yarnpkg.com/@sensebox/sketch-templater/-/sketch-templater-1.11.2.tgz#64f4cb184558bc0ce897c7366498d267255c52aa" - integrity sha512-I693bJ2IjqPXywEb8MlDnapvd+7FA6i4OFqMPbb6BKIp0DgsBYp1zapdQlS/JRFb+A9E9ZfOrQckG7UVNtp7UQ== +"@sensebox/sketch-templater@1.12.0": + version "1.12.0" + resolved "https://registry.yarnpkg.com/@sensebox/sketch-templater/-/sketch-templater-1.12.0.tgz#ecb2567b927e06a5ab018eb04f9a1a5774056c22" + integrity sha512-4MGCEQ8huXL/g3uQe92UC7vSJJ3FU62ZcS2us0fxjUpJc4bC8mQ0h0XH6xvOhpAw6ONpXbwX0ebxDLmEZ5MEew== dependencies: config "^3.3.7" dedent "^0.7.0" From 4ed91bb613f519ce33b3c34e68b1baccd014128e Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Wed, 30 Mar 2022 11:01:59 +0200 Subject: [PATCH 196/337] v1.1.0 --- packages/models/CHANGELOG.md | 6 ++++++ packages/models/package.json | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/packages/models/CHANGELOG.md b/packages/models/CHANGELOG.md index 7e86b429..75e1e78a 100644 --- a/packages/models/CHANGELOG.md +++ b/packages/models/CHANGELOG.md @@ -2,6 +2,12 @@ ## Unreleased +## v1.1.0 + +- Add DPS310 sensor +- Update migrations +- Update @sensebox/node-sketch-templater to v1.12.0 + ## v1.0.0 - Update @sensebox/node-sketch-templater to v1.11.2 diff --git a/packages/models/package.json b/packages/models/package.json index 244548fb..208e5673 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -1,7 +1,7 @@ { "name": "@sensebox/opensensemap-api-models", "description": "openSenseMap data models and database connection", - "version": "1.0.0", + "version": "1.1.0", "main": "index.js", "license": "MIT", "dependencies": { From 7f721eac5223acbaa8041a66bd4fac64462b1a75 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Wed, 30 Mar 2022 11:16:08 +0200 Subject: [PATCH 197/337] Update Changelog --- CHANGELOG.md | 5 +++++ packages/api/package.json | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 9f6f98ca..a6686ae9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,10 @@ # openSenseMap API Changelog +## Unreleased + +- Use @sensebox/opensensemap-api-models v1.1.0 +- Update dependencies + ## v10.0 - Use @sensebox/opensensemap-api-models v1.0.0 diff --git a/packages/api/package.json b/packages/api/package.json index 7b952cae..cd7007e4 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -10,7 +10,7 @@ "Norwin Roosen" ], "dependencies": { - "@sensebox/opensensemap-api-models": "^1.0.0", + "@sensebox/opensensemap-api-models": "^1.1.0", "@turf/area": "^6.3.0", "@turf/bbox": "^6.3.0", "@turf/centroid": "^6.3.0", From 078a7956e6a16e5f5a84a535f29a47599eaf0710 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Wed, 30 Mar 2022 11:18:36 +0200 Subject: [PATCH 198/337] Correct Changelog --- CHANGELOG.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index a6686ae9..6985a962 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,11 +1,11 @@ # openSenseMap API Changelog -## Unreleased +## v10.0.2 - Use @sensebox/opensensemap-api-models v1.1.0 - Update dependencies -## v10.0 +## v10.0.0 - Use @sensebox/opensensemap-api-models v1.0.0 - Update CI From 22ae7ce2b1fe8f5f0ac2260bb99c7cfe38d72241 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Wed, 30 Mar 2022 14:52:28 +0200 Subject: [PATCH 199/337] Update seketch templater --- packages/models/package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/models/package.json b/packages/models/package.json index 208e5673..0e5e5db4 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -8,7 +8,7 @@ "@grpc/grpc-js": "^1.3.7", "@grpc/proto-loader": "^0.6.4", "@sensebox/osem-protos": "^1.1.0", - "@sensebox/sketch-templater": "1.12.0", + "@sensebox/sketch-templater": "1.12.1", "bcrypt": "^5.0.1", "bunyan": "^1.8.15", "config": "^3.3.6", diff --git a/yarn.lock b/yarn.lock index 12353729..19c1588d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -143,10 +143,10 @@ resolved "https://registry.yarnpkg.com/@sensebox/osem-protos/-/osem-protos-1.1.0.tgz#a7de8bc6be867953f1309181a012063c23299e79" integrity sha512-H+nUVcWlT0dvIqfJnYHuX9JBcCkP1ZKGE5YTRNWPbAEdZ11h+srpQsmeI58wK5hJcdukaZAjc4Dy96IeGM77aA== -"@sensebox/sketch-templater@1.12.0": - version "1.12.0" - resolved "https://registry.yarnpkg.com/@sensebox/sketch-templater/-/sketch-templater-1.12.0.tgz#ecb2567b927e06a5ab018eb04f9a1a5774056c22" - integrity sha512-4MGCEQ8huXL/g3uQe92UC7vSJJ3FU62ZcS2us0fxjUpJc4bC8mQ0h0XH6xvOhpAw6ONpXbwX0ebxDLmEZ5MEew== +"@sensebox/sketch-templater@1.12.1": + version "1.12.1" + resolved "https://registry.yarnpkg.com/@sensebox/sketch-templater/-/sketch-templater-1.12.1.tgz#4640fc22d5ae652d00b9ab7c590488bf25da2cee" + integrity sha512-LtHyUPsZSFTDIqzSce8Rgh25CRhZkj2NIVjNUrMFeB7WgoNwYJuq+aYr1QDGaL0AkREKL3JsUi+O4rjji3Uw3w== dependencies: config "^3.3.7" dedent "^0.7.0" From e425c7db65d8b88588738555735ef9b242dafa6f Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Wed, 30 Mar 2022 14:54:25 +0200 Subject: [PATCH 200/337] v1.1.1 --- packages/models/CHANGELOG.md | 4 ++++ packages/models/package.json | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/packages/models/CHANGELOG.md b/packages/models/CHANGELOG.md index 75e1e78a..7c79e72d 100644 --- a/packages/models/CHANGELOG.md +++ b/packages/models/CHANGELOG.md @@ -2,6 +2,10 @@ ## Unreleased +## v1.1.1 + +- Update @sensebox/node-sketch-templater to v1.12.1 + ## v1.1.0 - Add DPS310 sensor diff --git a/packages/models/package.json b/packages/models/package.json index 0e5e5db4..59cbc489 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -1,7 +1,7 @@ { "name": "@sensebox/opensensemap-api-models", "description": "openSenseMap data models and database connection", - "version": "1.1.0", + "version": "1.1.1", "main": "index.js", "license": "MIT", "dependencies": { From e9fe48e3fc537c9ac25d2b40b0aad9ac755c8877 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Wed, 30 Mar 2022 15:01:34 +0200 Subject: [PATCH 201/337] Update models package --- packages/api/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/api/package.json b/packages/api/package.json index cd7007e4..b9d0775b 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -10,7 +10,7 @@ "Norwin Roosen" ], "dependencies": { - "@sensebox/opensensemap-api-models": "^1.1.0", + "@sensebox/opensensemap-api-models": "^1.1.1", "@turf/area": "^6.3.0", "@turf/bbox": "^6.3.0", "@turf/centroid": "^6.3.0", From 90cb361119d651cbf2e37cf66073223bbcfce60d Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Wed, 30 Mar 2022 15:02:27 +0200 Subject: [PATCH 202/337] Update Changelog --- CHANGELOG.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 6985a962..938b4c94 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ # openSenseMap API Changelog +## v10.0.3 + +- Use @sensebox/opensensemap-api-models v1.1.1 + ## v10.0.2 - Use @sensebox/opensensemap-api-models v1.1.0 From 8deb15cf7f5412c15c8d0d6c22b114b81b42a450 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 31 Mar 2022 18:02:07 +0200 Subject: [PATCH 203/337] Bump vlaurin/action-ghcr-prune from 0.3.0 to 0.4.0 (#564) Bumps [vlaurin/action-ghcr-prune](https://github.com/vlaurin/action-ghcr-prune) from 0.3.0 to 0.4.0. - [Release notes](https://github.com/vlaurin/action-ghcr-prune/releases) - [Commits](https://github.com/vlaurin/action-ghcr-prune/compare/v0.3.0...v0.4.0) --- updated-dependencies: - dependency-name: vlaurin/action-ghcr-prune dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Matthias Pfeil --- .github/workflows/registry-purge-pr.yaml | 2 +- .github/workflows/registry-purge.yaml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/registry-purge-pr.yaml b/.github/workflows/registry-purge-pr.yaml index b1eae511..e73f5a66 100644 --- a/.github/workflows/registry-purge-pr.yaml +++ b/.github/workflows/registry-purge-pr.yaml @@ -11,7 +11,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Purge Pull Request Image - uses: vlaurin/action-ghcr-prune@v0.3.0 + uses: vlaurin/action-ghcr-prune@v0.4.0 with: token: ${{ secrets.GHCR_TOKEN}} organization: ${{ github.repository_owner}} diff --git a/.github/workflows/registry-purge.yaml b/.github/workflows/registry-purge.yaml index 36e7626b..60dcb384 100644 --- a/.github/workflows/registry-purge.yaml +++ b/.github/workflows/registry-purge.yaml @@ -10,7 +10,7 @@ jobs: runs-on: ubuntu-latest steps: - name: clean packages - uses: vlaurin/action-ghcr-prune@v0.3.0 + uses: vlaurin/action-ghcr-prune@v0.4.0 with: token: ${{ secrets.GHCR_TOKEN}} organization: ${{ github.repository_owner}} From 7bd4125f562d359b81d391e9488f8e8fb968e5df Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Mon, 2 May 2022 14:13:13 +0200 Subject: [PATCH 204/337] Luftdaten handler and sensor matchings (#578) * Add missing payload suffixes * Add luftadten sensor matchings --- .../src/measurement/decoding/luftdatenHandler.js | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/packages/models/src/measurement/decoding/luftdatenHandler.js b/packages/models/src/measurement/decoding/luftdatenHandler.js index 70c4cc0a..fff85857 100644 --- a/packages/models/src/measurement/decoding/luftdatenHandler.js +++ b/packages/models/src/measurement/decoding/luftdatenHandler.js @@ -63,12 +63,25 @@ const { transformAndValidateMeasurements } = require('./validators'); const matchings = { p0: ['pm01', 'pm0', 'p1.0', 'p0'], + p01: ['pm0.1', 'p0.1'], + p03: ['pm0.3', 'pm03', 'p0.3', 'p03'], + p05: ['pm0.5', 'pm05', 'p0.5', 'p05'], p1: ['pm10', 'p10', 'p1'], p2: ['pm2.5', 'pm25', 'p2.5', 'p25', 'p2'], + p4: ['pm4', 'p4'], + p5: ['pm5', 'p5'], + n1: ['nc1.0', 'nc1', 'n1.0', 'n1'], + n01: ['nc0.1', 'n0.1', 'nc01', 'n01'], + n03: ['nc0.3', 'n0.3', 'nc03', 'n03'], + n05: ['nc0.5', 'n0.5', 'nc05', 'n05'], + n4: ['nc4.0', 'n4.0', 'nc4', 'n4'], + n5: ['nc5', 'n5'], + n10: ['nc10', 'n10'], + n25: ['nc2.5', 'n2.5'], temperature: ['temperatur'], humidity: ['rel. luftfeuchte', 'luftfeuchtigkeit', 'luftfeuchte'], pressure: ['luftdruck', 'druck'], - signal: ['stärke', 'signal'] + signal: ['stärke', 'signal'], }; const findSensorId = function findSensorId (sensors, value_type) { @@ -158,4 +171,3 @@ module.exports = { return Promise.reject(new Error('Cannot decode empty message (luftdaten decoder)')); } }; - From 5ed7b606b69b6beb86ed36062d695ad48f7c98b4 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 2 May 2022 14:17:38 +0200 Subject: [PATCH 205/337] Bump docker/build-push-action from 2.7.0 to 2.9.0 (#552) Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 2.7.0 to 2.9.0. - [Release notes](https://github.com/docker/build-push-action/releases) - [Commits](https://github.com/docker/build-push-action/compare/v2.7.0...v2.9.0) --- updated-dependencies: - dependency-name: docker/build-push-action dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Matthias Pfeil --- .github/workflows/registry.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/registry.yaml b/.github/workflows/registry.yaml index 1a990e91..6362df65 100644 --- a/.github/workflows/registry.yaml +++ b/.github/workflows/registry.yaml @@ -41,7 +41,7 @@ jobs: suffix= - name: Build and push Docker image - uses: docker/build-push-action@v2.7.0 + uses: docker/build-push-action@v2.9.0 with: context: . push: true From 08b9663614abdef8e51d1ec5864e7480622c8e68 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 2 May 2022 14:21:50 +0200 Subject: [PATCH 206/337] Bump docker/metadata-action from 3.6.2 to 3.8.0 (#579) Bumps [docker/metadata-action](https://github.com/docker/metadata-action) from 3.6.2 to 3.8.0. - [Release notes](https://github.com/docker/metadata-action/releases) - [Commits](https://github.com/docker/metadata-action/compare/v3.6.2...v3.8.0) --- updated-dependencies: - dependency-name: docker/metadata-action dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Matthias Pfeil --- .github/workflows/registry.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/registry.yaml b/.github/workflows/registry.yaml index 6362df65..0b0df6de 100644 --- a/.github/workflows/registry.yaml +++ b/.github/workflows/registry.yaml @@ -32,7 +32,7 @@ jobs: - name: Extract metadata (tags, labels) for Docker id: meta - uses: docker/metadata-action@v3.6.2 + uses: docker/metadata-action@v3.8.0 with: images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} flavor: | From aa6bff48d27d44bee0c012ee1f8d1377a36b57ae Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 2 May 2022 14:41:30 +0200 Subject: [PATCH 207/337] Bump actions/setup-node from 3.0.0 to 3.1.1 (#575) Bumps [actions/setup-node](https://github.com/actions/setup-node) from 3.0.0 to 3.1.1. - [Release notes](https://github.com/actions/setup-node/releases) - [Commits](https://github.com/actions/setup-node/compare/v3.0.0...v3.1.1) --- updated-dependencies: - dependency-name: actions/setup-node dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Matthias Pfeil --- .github/workflows/test.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index e93c4b55..446e2744 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -16,7 +16,7 @@ jobs: - uses: actions/checkout@v3 - name: Install Node.js 16 - uses: actions/setup-node@v3.0.0 + uses: actions/setup-node@v3.1.1 with: node-version: 16 From 45b9555ea66e7cdb310ef57cb67715e5e159098f Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Wed, 18 May 2022 09:33:37 +0200 Subject: [PATCH 208/337] Update grouptag in management routes (#582) --- packages/api/lib/controllers/managementController.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/api/lib/controllers/managementController.js b/packages/api/lib/controllers/managementController.js index 33a65acf..3fdda452 100644 --- a/packages/api/lib/controllers/managementController.js +++ b/packages/api/lib/controllers/managementController.js @@ -241,7 +241,7 @@ module.exports = { retrieveParameters([ { predef: 'boxId', required: true }, { name: 'name' }, - { name: 'grouptag', dataType: 'StringWithEmpty' }, + { name: 'grouptag', dataType: ['String'] }, { name: 'description', dataType: 'StringWithEmpty' }, { name: 'weblink', dataType: 'StringWithEmpty' }, { name: 'image', dataType: 'base64Image' }, From a8ab6fd7441198d89595e860ef9fc73fd0482027 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 18 May 2022 18:07:19 +0200 Subject: [PATCH 209/337] Bump docker/login-action from 1.14.1 to 2.0.0 (#585) Bumps [docker/login-action](https://github.com/docker/login-action) from 1.14.1 to 2.0.0. - [Release notes](https://github.com/docker/login-action/releases) - [Commits](https://github.com/docker/login-action/compare/v1.14.1...v2.0.0) --- updated-dependencies: - dependency-name: docker/login-action dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Matthias Pfeil --- .github/workflows/registry.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/registry.yaml b/.github/workflows/registry.yaml index 0b0df6de..3e77bfae 100644 --- a/.github/workflows/registry.yaml +++ b/.github/workflows/registry.yaml @@ -24,7 +24,7 @@ jobs: uses: actions/checkout@v3 - name: Log in to the Container registry - uses: docker/login-action@v1.14.1 + uses: docker/login-action@v2.0.0 with: registry: ${{ env.REGISTRY }} username: ${{ github.actor }} From 347d5852c058109ed6ace1920506fae587f833c3 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 18 May 2022 18:09:45 +0200 Subject: [PATCH 210/337] Bump docker/build-push-action from 2.9.0 to 3.0.0 (#586) Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 2.9.0 to 3.0.0. - [Release notes](https://github.com/docker/build-push-action/releases) - [Commits](https://github.com/docker/build-push-action/compare/v2.9.0...v3.0.0) --- updated-dependencies: - dependency-name: docker/build-push-action dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Matthias Pfeil --- .github/workflows/registry.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/registry.yaml b/.github/workflows/registry.yaml index 3e77bfae..c007bb8b 100644 --- a/.github/workflows/registry.yaml +++ b/.github/workflows/registry.yaml @@ -41,7 +41,7 @@ jobs: suffix= - name: Build and push Docker image - uses: docker/build-push-action@v2.9.0 + uses: docker/build-push-action@v3.0.0 with: context: . push: true From 73b129fd68f7ab8657fa3d85df3434154da2ed58 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 18 May 2022 18:13:44 +0200 Subject: [PATCH 211/337] Bump actions/setup-node from 3.1.1 to 3.2.0 (#587) Bumps [actions/setup-node](https://github.com/actions/setup-node) from 3.1.1 to 3.2.0. - [Release notes](https://github.com/actions/setup-node/releases) - [Commits](https://github.com/actions/setup-node/compare/v3.1.1...v3.2.0) --- updated-dependencies: - dependency-name: actions/setup-node dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Matthias Pfeil --- .github/workflows/test.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index 446e2744..676e7643 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -16,7 +16,7 @@ jobs: - uses: actions/checkout@v3 - name: Install Node.js 16 - uses: actions/setup-node@v3.1.1 + uses: actions/setup-node@v3.2.0 with: node-version: 16 From 0daaf6fedd06d870f914e0b395b3450fe7f7309a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 18 May 2022 18:16:27 +0200 Subject: [PATCH 212/337] Bump docker/metadata-action from 3.8.0 to 4.0.1 (#584) Bumps [docker/metadata-action](https://github.com/docker/metadata-action) from 3.8.0 to 4.0.1. - [Release notes](https://github.com/docker/metadata-action/releases) - [Upgrade guide](https://github.com/docker/metadata-action/blob/master/UPGRADE.md) - [Commits](https://github.com/docker/metadata-action/compare/v3.8.0...v4.0.1) --- updated-dependencies: - dependency-name: docker/metadata-action dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Matthias Pfeil --- .github/workflows/registry.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/registry.yaml b/.github/workflows/registry.yaml index c007bb8b..81b06019 100644 --- a/.github/workflows/registry.yaml +++ b/.github/workflows/registry.yaml @@ -32,7 +32,7 @@ jobs: - name: Extract metadata (tags, labels) for Docker id: meta - uses: docker/metadata-action@v3.8.0 + uses: docker/metadata-action@v4.0.1 with: images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} flavor: | From e21ba2cd6af6930b5116d5778c347d978128e80d Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Tue, 12 Jul 2022 12:45:31 +0200 Subject: [PATCH 213/337] Add basic workflow for transfering a device to a different user (#525) * Add basic workflow for transfering a device to a different user * Add script to generate local docs * Change claim schema * Expire token after successful transfer * Add TTL to config * Add config to tests * Move TTL config to models * Add date param to create token for expires at * Add PUT and GET methods for transfers * Add tests for claim model * Add checks for expiresAt property * Add unique index for boxId to avoid more than one transfer token for a device * Add API tests for transfer a device * Add test for duplicate device id * Add test for complete transfer of a device * Reject claim box if token was not found * Fix doc types and references * Use timestamp plugin * Add pre save hook to set default expiresAt * Check date for timestamps in the past --- config/config.example.json | 6 +- .../api/lib/controllers/boxesController.js | 278 ++++++++++++++++-- packages/api/lib/helpers/userParamHelpers.js | 18 +- packages/api/lib/routes.js | 5 + packages/models/index.js | 6 + packages/models/src/box/claim.js | 93 ++++++ packages/models/src/user/user.js | 75 +++++ packages/models/test/helpers/ensureIndexes.js | 5 +- packages/models/test/index.js | 1 + packages/models/test/tests/3-claim.js | 166 +++++++++++ tests/tests/005-create-boxes-test.js | 171 ++++++++++- tests/tests/006-submit-measurements-test.js | 2 +- tests/tests/007-download-data-test.js | 2 +- 13 files changed, 792 insertions(+), 36 deletions(-) create mode 100644 packages/models/src/box/claim.js create mode 100644 packages/models/test/tests/3-claim.js diff --git a/config/config.example.json b/config/config.example.json index a791172d..752631d7 100644 --- a/config/config.example.json +++ b/config/config.example.json @@ -141,7 +141,7 @@ // Should be the naked domain and a port // No Default "url": "mqtt-osem-integration:3925" - } + }, }, "password": { // Minimum required password length @@ -151,6 +151,10 @@ // Default: 13 "salt_factor": 12 }, + "claims_ttl": { + "amount": 1, + "unit": "d" + }, // Location on the filesystem where images should be saved // Should always end with a trailing slash // Default: "./userimages/" diff --git a/packages/api/lib/controllers/boxesController.js b/packages/api/lib/controllers/boxesController.js index 6e2861a2..73263ae3 100644 --- a/packages/api/lib/controllers/boxesController.js +++ b/packages/api/lib/controllers/boxesController.js @@ -37,7 +37,7 @@ */ const - { Box } = require('@sensebox/opensensemap-api-models'), + { Box, User, Claim } = require('@sensebox/opensensemap-api-models'), { addCache, clearCache, checkContentType, redactEmail, postToSlack } = require('../helpers/apiUtils'), { point } = require('@turf/helpers'), classifyTransformer = require('../transformers/classifyTransformer'), @@ -45,7 +45,8 @@ const retrieveParameters, parseAndValidateTimeParamsForFindAllBoxes, validateFromToTimeParams, - checkPrivilege + checkPrivilege, + validateDateNotPast } = require('../helpers/userParamHelpers'), handleError = require('../helpers/errorHandler'), jsonstringify = require('stringify-stream'); @@ -487,24 +488,185 @@ const deleteBox = async function deleteBox (req, res, next) { } }; +/** + * @api {get} /boxes/transfer/:senseBoxId Get transfer information for a senseBox + * @apiDescription Get transfer information for a senseBox + * @apiName getTransfer + * @apiGroup Boxes + * @apiUse JWTokenAuth + * @apiUse BoxIdParam + */ +const getTransfer = async function getTransfer (req, res, next) { + const { boxId } = req._userParams; + try { + const transfer = await Claim.findClaimByDeviceID(boxId); + res.send(200, { + data: transfer, + }); + } catch (err) { + handleError(err, next); + } +}; + +/** + * @api {post} /boxes/transfer Mark a senseBox for transferring to a different user + * @apiDescription This will mark a senseBox for transfering it to a different user account + * @apiName createTransfer + * @apiGroup Boxes + * @apiParam (RequestBody) {String} boxId ID of the senseBox you want to transfer. + * @apiParam (RequestBody) {RFC3339Date} expiresAt Expiration date for transfer token (default: 24 hours from now). + * @apiUse JWTokenAuth + */ +const createTransfer = async function createTransfer (req, res, next) { + const { boxId, date } = req._userParams; + try { + const transferCode = await req.user.transferBox(boxId, date); + res.send(201, { + message: 'Box successfully prepared for transfer', + data: transferCode, + }); + } catch (err) { + handleError(err, next); + } +}; + +/** + * @api {put} /boxes/transfer/:senseBoxId Update a transfer token + * @apiDescription Update the expiration date of a transfer token + * @apiName updateTransfer + * @apiGroup Boxes + * @apiParam (RequestBody) {String} Transfer token you want to update. + * @apiParam (RequestBody) {RFC3339Date} expiresAt Expiration date for transfer token (default: 24 hours from now). + * @apiUse JWTokenAuth + * @apiUse BoxIdParam + */ +const updateTransfer = async function updateTransfer (req, res, next) { + const { boxId, token, date } = req._userParams; + try { + const transfer = await req.user.updateTransfer(boxId, token, date); + res.send(200, { + message: 'Transfer successfully updated', + data: transfer, + }); + } catch (err) { + handleError(err, next); + } +}; + +/** + * @api {delete} /boxes/transfer Revoke transfer token and remove senseBox from transfer + * @apiDescription This will revoke the transfer token and remove the senseBox from transfer + * @apiName removeTransfer + * @apiGroup Boxes + * @apiParam (RequestBody) {String} boxId ID of the senseBox you want to remove from transfer. + * @apiParam (RequestBody) {String} token Transfer token you want to revoke. + * @apiUse JWTokenAuth + */ +const removeTransfer = async function removeTransfer (req, res, next) { + const { boxId, token } = req._userParams; + try { + await req.user.removeTransfer(boxId, token); + res.send(204); + } catch (err) { + handleError(err, next); + } +}; + +/** + * @api {post} /boxes/claim Claim a senseBox marked for transfer + * @apiDescription This will claim a senseBox marked for transfer + * @apiName claimBox + * @apiGroup Boxes + * @apiUse ContentTypeJSON + * @apiParam (RequestBody) {String} token the token to claim a senseBox + * @apiUse JWTokenAuth + */ +const claimBox = async function claimBox (req, res, next) { + const { token } = req._userParams; + + try { + const { owner, claim } = await req.user.claimBox(token); + await User.transferOwnershipOfBox(owner, claim.boxId); + + await claim.expireToken(); + + res.send(200, { message: 'Device successfully claimed!' }); + } catch (err) { + handleError(err, next); + } +}; + module.exports = { // auth required deleteBox: [ checkContentType, retrieveParameters([ { predef: 'boxId', required: true }, - { predef: 'password' } + { predef: 'password' }, + ]), + checkPrivilege, + deleteBox, + ], + getTransfer: [ + retrieveParameters([{ predef: 'boxId', required: true }]), + checkPrivilege, + getTransfer, + ], + createTransfer: [ + retrieveParameters([ + { predef: 'boxId', required: true }, + { predef: 'dateNoDefault' }, + ]), + validateDateNotPast, + checkPrivilege, + createTransfer, + ], + updateTransfer: [ + retrieveParameters([ + { predef: 'boxId', required: true }, + { name: 'token', dataType: 'String' }, + { predef: 'dateNoDefault', required: true }, ]), + validateDateNotPast, checkPrivilege, - deleteBox + updateTransfer, + ], + removeTransfer: [ + retrieveParameters([ + { predef: 'boxId', required: true }, + { name: 'token', dataType: 'String' }, + ]), + checkPrivilege, + removeTransfer, + ], + claimBox: [ + checkContentType, + retrieveParameters([{ name: 'token', dataType: 'String' }]), + claimBox, ], getSketch: [ retrieveParameters([ { predef: 'boxId', required: true }, - { name: 'serialPort', dataType: 'String', allowedValues: ['Serial1', 'Serial2'] }, - { name: 'soilDigitalPort', dataType: 'String', allowedValues: ['A', 'B', 'C'] }, - { name: 'soundMeterPort', dataType: 'String', allowedValues: ['A', 'B', 'C'] }, - { name: 'windSpeedPort', dataType: 'String', allowedValues: ['A', 'B', 'C'] }, + { + name: 'serialPort', + dataType: 'String', + allowedValues: ['Serial1', 'Serial2'], + }, + { + name: 'soilDigitalPort', + dataType: 'String', + allowedValues: ['A', 'B', 'C'], + }, + { + name: 'soundMeterPort', + dataType: 'String', + allowedValues: ['A', 'B', 'C'], + }, + { + name: 'windSpeedPort', + dataType: 'String', + allowedValues: ['A', 'B', 'C'], + }, { name: 'ssid', dataType: 'StringWithEmpty' }, { name: 'password', dataType: 'StringWithEmpty' }, { name: 'devEUI', dataType: 'StringWithEmpty' }, @@ -513,7 +675,7 @@ module.exports = { { name: 'display_enabled', allowedValues: ['true', 'false'] }, ]), checkPrivilege, - getSketch + getSketch, ], updateBox: [ checkContentType, @@ -531,21 +693,25 @@ module.exports = { { name: 'addons', dataType: 'object' }, { predef: 'location' }, { name: 'useAuth', allowedValues: ['true', 'false'] }, - { name: 'generate_access_token', allowedValues: ['true', 'false'] } + { name: 'generate_access_token', allowedValues: ['true', 'false'] }, ]), checkPrivilege, - updateBox + updateBox, ], // no auth required getBoxLocations: [ retrieveParameters([ { predef: 'boxId', required: true }, - { name: 'format', defaultValue: 'json', allowedValues: ['json', 'geojson'] }, + { + name: 'format', + defaultValue: 'json', + allowedValues: ['json', 'geojson'], + }, { predef: 'toDate' }, { predef: 'fromDate' }, validateFromToTimeParams, ]), - getBoxLocations + getBoxLocations, ], postNewBox: [ checkContentType, @@ -555,37 +721,93 @@ module.exports = { { name: 'exposure', allowedValues: Box.BOX_VALID_EXPOSURES }, { name: 'model', allowedValues: Box.BOX_VALID_MODELS }, { name: 'sensors', dataType: ['object'] }, - { name: 'sensorTemplates', dataType: ['String'], allowedValues: ['hdc1080', 'bmp280', 'sds 011', 'tsl45315', 'veml6070', 'bme680', 'smt50', 'soundlevelmeter', 'windspeed', 'scd30', 'dps310'] }, - { name: 'serialPort', dataType: 'String', defaultValue: 'Serial1', allowedValues: ['Serial1', 'Serial2'] }, - { name: 'soilDigitalPort', dataType: 'String', defaultValue: 'A', allowedValues: ['A', 'B', 'C'] }, - { name: 'soundMeterPort', dataType: 'String', defaultValue: 'B', allowedValues: ['A', 'B', 'C'] }, - { name: 'windSpeedPort', dataType: 'String', defaultValue: 'C', allowedValues: ['A', 'B', 'C'] }, + { + name: 'sensorTemplates', + dataType: ['String'], + allowedValues: [ + 'hdc1080', + 'bmp280', + 'sds 011', + 'tsl45315', + 'veml6070', + 'bme680', + 'smt50', + 'soundlevelmeter', + 'windspeed', + 'scd30', + 'dps310', + ], + }, + { + name: 'serialPort', + dataType: 'String', + defaultValue: 'Serial1', + allowedValues: ['Serial1', 'Serial2'], + }, + { + name: 'soilDigitalPort', + dataType: 'String', + defaultValue: 'A', + allowedValues: ['A', 'B', 'C'], + }, + { + name: 'soundMeterPort', + dataType: 'String', + defaultValue: 'B', + allowedValues: ['A', 'B', 'C'], + }, + { + name: 'windSpeedPort', + dataType: 'String', + defaultValue: 'C', + allowedValues: ['A', 'B', 'C'], + }, { name: 'mqtt', dataType: 'object' }, { name: 'ttn', dataType: 'object' }, { name: 'useAuth', allowedValues: ['true', 'false'] }, - { predef: 'location', required: true } + { predef: 'location', required: true }, ]), - postNewBox + postNewBox, ], getBox: [ retrieveParameters([ { predef: 'boxId', required: true }, - { name: 'format', defaultValue: 'json', allowedValues: ['json', 'geojson'] } + { + name: 'format', + defaultValue: 'json', + allowedValues: ['json', 'geojson'], + }, ]), - getBox + getBox, ], getBoxes: [ retrieveParameters([ { name: 'name', dataType: 'String' }, { name: 'limit', dataType: 'Number', defaultValue: 5, min: 1, max: 20 }, - { name: 'exposure', allowedValues: Box.BOX_VALID_EXPOSURES, dataType: ['String'] }, + { + name: 'exposure', + allowedValues: Box.BOX_VALID_EXPOSURES, + dataType: ['String'], + }, { name: 'model', dataType: ['StringWithEmpty'] }, { name: 'grouptag', dataType: ['StringWithEmpty'] }, { name: 'phenomenon', dataType: 'StringWithEmpty' }, { name: 'date', dataType: ['RFC 3339'] }, - { name: 'format', defaultValue: 'json', allowedValues: ['json', 'geojson'] }, - { name: 'classify', defaultValue: 'false', allowedValues: ['true', 'false'] }, - { name: 'minimal', defaultValue: 'false', allowedValues: ['true', 'false'] }, + { + name: 'format', + defaultValue: 'json', + allowedValues: ['json', 'geojson'], + }, + { + name: 'classify', + defaultValue: 'false', + allowedValues: ['true', 'false'], + }, + { + name: 'minimal', + defaultValue: 'false', + allowedValues: ['true', 'false'], + }, { name: 'full', defaultValue: 'false', allowedValues: ['true', 'false'] }, { name: 'near' }, { name: 'maxDistance' }, @@ -593,6 +815,6 @@ module.exports = { ]), parseAndValidateTimeParamsForFindAllBoxes, addCache('5 minutes', 'getBoxes'), - getBoxes - ] + getBoxes, + ], }; diff --git a/packages/api/lib/helpers/userParamHelpers.js b/packages/api/lib/helpers/userParamHelpers.js index b2ebf713..d5e85755 100644 --- a/packages/api/lib/helpers/userParamHelpers.js +++ b/packages/api/lib/helpers/userParamHelpers.js @@ -354,6 +354,9 @@ const // functions which receive req._userparams as parameter const retrieveParametersPredefs = { + 'dateNoDefault' () { + return { name: 'date', dataType: 'RFC 3339' }; + }, 'fromDate' ({ toDate }) { if (!toDate) { return {}; @@ -512,6 +515,18 @@ const parseAndValidateTimeParamsForFindAllBoxes = function parseAndValidateTimeP next(); }; +const validateDateNotPast = function validateDateNotPast (req, res, next) { + if (req._userParams.date) { + const { date } = req._userParams; + if (date.isBefore(moment.utc().toDate())) { + return next(new InvalidArgumentError( + `Invalid date specified: date (${date.toISOString()}) must be in the future.` + )); + } + } + next(); +}; + const checkPrivilege = function checkPrivilege (req, res, next) { if (req.user && req.user.role === config.get('management_role')) { return next(); @@ -535,5 +550,6 @@ module.exports = { retrieveParameters, initUserParams, parseAndValidateTimeParamsForFindAllBoxes, - checkPrivilege + checkPrivilege, + validateDateNotPast }; diff --git a/packages/api/lib/routes.js b/packages/api/lib/routes.js index e93aca3a..702f3be3 100644 --- a/packages/api/lib/routes.js +++ b/packages/api/lib/routes.js @@ -99,6 +99,11 @@ const routes = { { path: `${usersPath}/me/boxes`, method: 'get', handler: usersController.getUserBoxes, reference: 'api-Users-getUserBoxes' }, { path: `${boxesPath}/:boxId/script`, method: 'get', handler: boxesController.getSketch, reference: 'api-Boxes-getSketch' }, { path: `${boxesPath}`, method: 'post', handler: boxesController.postNewBox, reference: 'api-Boxes-postNewBox' }, + { path: `${boxesPath}/claim`, method: 'post', handler: boxesController.claimBox, reference: 'api-Boxes-claimBox' }, + { path: `${boxesPath}/transfer`, method: 'post', handler: boxesController.createTransfer, reference: 'api-Boxes-createTransfer' }, + { path: `${boxesPath}/transfer`, method: 'del', handler: boxesController.removeTransfer, reference: 'api-Boxes-removeTransfer' }, + { path: `${boxesPath}/transfer/:boxId`, method: 'get', handler: boxesController.getTransfer, reference: 'api-Boxes-getTransfer' }, + { path: `${boxesPath}/transfer/:boxId`, method: 'put', handler: boxesController.updateTransfer, reference: 'api-Boxes-updateTransfer' }, { path: `${boxesPath}/:boxId`, method: 'put', handler: boxesController.updateBox, reference: 'api-Boxes-updateBox' }, { path: `${boxesPath}/:boxId`, method: 'del', handler: boxesController.deleteBox, reference: 'api-Boxes-deleteBox' }, { path: `${boxesPath}/:boxId/:sensorId/measurements`, method: 'del', handler: sensorsController.deleteSensorData, reference: 'api-Measurements-deleteMeasurements' }, diff --git a/packages/models/index.js b/packages/models/index.js index e7fcf468..efb9f434 100644 --- a/packages/models/index.js +++ b/packages/models/index.js @@ -32,6 +32,10 @@ config.util.setModuleDefaults('openSenseMap-API-models', { 'min_length': 8, 'salt_factor': 13 }, + 'claims_ttl': { + 'amount': 1, + 'unit': 'd' + }, 'image_folder': './userimages/', }); @@ -39,12 +43,14 @@ const { model: Box } = require('./src/box/box'), { model: Measurement } = require('./src/measurement/measurement'), { model: Sensor } = require('./src/sensor/sensor'), { model: User } = require('./src/user/user'), + { model: Claim } = require('./src/box/claim'), utils = require('./src/utils'), decoding = require('./src/measurement/decoding'), db = require('./src/db'); module.exports = { Box, + Claim, Measurement, Sensor, User, diff --git a/packages/models/src/box/claim.js b/packages/models/src/box/claim.js new file mode 100644 index 00000000..3b8d19cd --- /dev/null +++ b/packages/models/src/box/claim.js @@ -0,0 +1,93 @@ +'use strict'; + +const timestampsPlugin = require('mongoose-timestamp'); +const ModelError = require('../modelError'); + +const { mongoose } = require('../db'), + config = require('config').get('openSenseMap-API-models'), + Schema = mongoose.Schema, + moment = require('moment'), + crypto = require('crypto'); + +const { + amount, + unit +} = config.get('claims_ttl'); + +const claimSchema = new Schema({ + boxId: { + type: mongoose.Schema.Types.ObjectId, + ref: 'Box', + required: true, + }, + token: { + type: String, + }, + expiresAt: { + type: Date + }, +}); +claimSchema.plugin(timestampsPlugin); + +claimSchema.index({ expiresAt: 1 }, { expireAfterSeconds: 0 }); +claimSchema.index({ boxId: 1 }, { unique: true }); + +claimSchema.statics.initClaim = function initClaim (boxId, date) { + const token = crypto.randomBytes(6).toString('hex'); + + const claim = { + boxId, + token + }; + + if (date) { + claim['expiresAt'] = date; + } else { + claim['expiresAt'] = moment.utc().add(amount, unit) + .toDate(); + } + + return this.create(claim); +}; + +claimSchema.statics.findClaimByToken = function findClaimByToken (token) { + return this.findOne({ token: token }); +}; + +claimSchema.statics.findClaimByDeviceID = function findClaimByDeviceID (deviceId) { + return this.findOne({ boxId: deviceId }); +}; + +claimSchema.methods.expireToken = function expireToken () { + const claim = this; + claim.set('expiresAt', moment.utc().toDate()); + + return claim.save(); +}; + +const handleE11000 = function (error, res, next) { + if (error.name === 'MongoError' && error.code === 11000) { + return next(new ModelError('Token already exists for device.')); + } + next(); +}; + +claimSchema.pre('save', function claimPreSave (next) { + if (!this.expiresAt) { + this.expiresAt = moment.utc().add(amount, unit) + .toDate(); + } + next(); +}); + +claimSchema.post('save', handleE11000); +claimSchema.post('update', handleE11000); +claimSchema.post('findOneAndUpdate', handleE11000); +claimSchema.post('insertMany', handleE11000); + +const claimModel = mongoose.model('Claim', claimSchema); + +module.exports = { + schema: claimSchema, + model: claimModel +}; diff --git a/packages/models/src/user/user.js b/packages/models/src/user/user.js index 6df46592..92ca00c5 100644 --- a/packages/models/src/user/user.js +++ b/packages/models/src/user/user.js @@ -14,6 +14,7 @@ const { mongoose } = require('../db'), { min_length: password_min_length, salt_factor: password_salt_factor } = require('config').get('openSenseMap-API-models.password'), { v4: uuidv4 } = require('uuid'), { model: Box } = require('../box/box'), + { model: Claim } = require('../box/claim'), mails = require('./mails'), moment = require('moment'), timestamp = require('mongoose-timestamp'), @@ -352,6 +353,80 @@ userSchema.methods.removeBox = function removeBox (boxId) { }); }; +userSchema.methods.transferBox = function transferBox (boxId, date) { + const user = this; + + // checkBoxOwner throws ModelError + user.checkBoxOwner(boxId); + + return Claim.initClaim(boxId, date) + .then(function (claim) { + return claim; + }); +}; + +userSchema.methods.updateTransfer = function updateTransfer (boxId, token, date) { + const user = this; + + // checkBoxOwner throws ModelError + user.checkBoxOwner(boxId); + + return Claim.findClaimByToken(token) + .exec() + .then(function (claim) { + if (!claim) { + return Promise.reject( + new ModelError('Coudn\'t update, token not found', { + type: 'NotFoundError', + }) + ); + } + + claim.set('expiresAt', date); + + return claim.save(); + }); +}; + +userSchema.methods.removeTransfer = function removeTransfer (boxId, token) { + const user = this; + + // checkBoxOwner throws ModelError + user.checkBoxOwner(boxId); + + return Claim.findClaimByToken(token) + .exec() + .then(function (claim) { + if (!claim) { + return Promise.reject(new ModelError('Coudn\'t remove, token not found', { type: 'NotFoundError' })); + } + + // remove token + return claim.remove(); + }); +}; + +userSchema.methods.claimBox = function claimBox (token) { + const user = this; + + return Claim.findClaimByToken(token) + .exec() + .then(function (claim) { + + if (!claim) { + return Promise.reject(new ModelError('Token was not found', { type: 'NotFoundError' })); + } + + return { + owner: user.id, + claim + }; + }) + .catch(function (error) { + throw new ModelError(error.message, token); + }); +}; + userSchema.methods.destroyUser = function destroyUser ({ sendMail } = { sendMail: true }) { return this .populate('boxes') diff --git a/packages/models/test/helpers/ensureIndexes.js b/packages/models/test/helpers/ensureIndexes.js index 13e20788..bc37d424 100644 --- a/packages/models/test/helpers/ensureIndexes.js +++ b/packages/models/test/helpers/ensureIndexes.js @@ -1,11 +1,12 @@ 'use strict'; -const { User, Box, Measurement } = require('../../index'); +const { User, Box, Measurement, Claim } = require('../../index'); module.exports = function () { return Promise.all([ User.ensureIndexes(), Box.ensureIndexes(), - Measurement.ensureIndexes() + Measurement.ensureIndexes(), + Claim.ensureIndexes() ]); }; diff --git a/packages/models/test/index.js b/packages/models/test/index.js index 3b0caf87..1af8efc4 100644 --- a/packages/models/test/index.js +++ b/packages/models/test/index.js @@ -5,5 +5,6 @@ '0-user', '1-box', '2-utils', + '3-claim', ].forEach(t => require(`./tests/${t}`)); /* eslint-enable global-require */ diff --git a/packages/models/test/tests/3-claim.js b/packages/models/test/tests/3-claim.js new file mode 100644 index 00000000..4623d546 --- /dev/null +++ b/packages/models/test/tests/3-claim.js @@ -0,0 +1,166 @@ +'use strict'; + +/* global describe it before after */ +const expect = require('chai').expect, + { + db: { connect, mongoose }, + Claim, + } = require('../../index'), + dbConnectionString = require('../helpers/dbConnectionString'), + moment = require('moment'), + ensureIndexes = require('../helpers/ensureIndexes'); + +describe('Claim model', function () { + + // Object to save create claims during tests + // Will have 4 claims after creation + const testClaims = {}; + + before(function () { + return connect(dbConnectionString({ db: 'claimTest' })) + .then(() => ensureIndexes()); + }); + + after(function () { + mongoose.disconnect(); + }); + + // Create in total 4 claims / tokens in Claims collection + describe('Claim creation', function () { + it('should create a new claim / token (Claim.create) for transferring a device', function () { + return Claim.create({ + boxId: '6239a584de404f171cbfca42', + token: 'asdf1234', + }) + .then(function (claim) { + const id = claim._id; + + return Claim.findById(id); + }) + .then(function (claim) { + expect(mongoose.Types.ObjectId.isValid(claim.boxId)).true; + expect(claim.boxId.toString()).equal('6239a584de404f171cbfca42'); + expect(claim.token).equal('asdf1234'); + + // Difference between NOW and expiresAt should be around 24 + // Default expiresAt is 1 day in the future + const diff = moment + .duration(moment.utc(claim.expiresAt).diff(moment.utc())) + .asHours(); + expect(diff).to.be.closeTo(24, 1); + + testClaims[claim.boxId] = claim; + }); + }); + + it('should create a new claim / token (new Claim) for transferring a device', function () { + const claim = new Claim({ + boxId: '6239a584de404f171cbfca43', + token: '1234asdf', + }); + + return claim.save() + .then(function (claim) { + const id = claim._id; + + return Claim.findById(id); + }) + .then(function (claim) { + expect(mongoose.Types.ObjectId.isValid(claim.boxId)).true; + expect(claim.boxId.toString()).equal('6239a584de404f171cbfca43'); + expect(claim.token).equal('1234asdf'); + + // Difference between NOW and expiresAt should be around 24 + // Default expiresAt is 1 day in the future + const diff = moment + .duration(moment.utc(claim.expiresAt).diff(moment.utc())) + .asHours(); + expect(diff).to.be.closeTo(24, 1); + + testClaims[claim.boxId] = claim; + }); + }); + + it('should create a new claim / token with a generated 6 character token and default expiresAt', function () { + return Claim.initClaim('6239a584de404f171cbfca44') + .then(function (claim) { + expect(claim.token).to.be.a.string; + expect(claim.token).to.have.lengthOf(12); + + // Difference between NOW and expiresAt should be around 24 + // Default expiresAt is 1 day in the future + const diff = moment + .duration(moment.utc(claim.expiresAt).diff(moment.utc())) + .asHours(); + expect(diff).to.be.closeTo(24, 1); + + testClaims[claim.boxId] = claim; + }); + }); + + it('should create a new claim / token with a generated 6 character token and custom expiresAt', function () { + return Claim.initClaim('6239a584de404f171cbfca45', moment.utc().add(2, 'd')).then(function (claim) { + expect(claim.token).to.be.a.string; + expect(claim.token).to.have.lengthOf(12); + + // Difference between NOW and expiresAt should be around 48 + // because we are adding 2 days to expiresAt + const diff = moment + .duration(moment.utc(claim.expiresAt).diff(moment.utc())) + .asHours(); + expect(diff).to.be.closeTo(48, 1); + + testClaims[claim.boxId] = claim; + }); + }); + + it('should fail on creation of token with duplicate device id', function () { + return Claim.initClaim( + '6239a584de404f171cbfca44', + moment.utc().add(2, 'd') + ).catch(function (error) { + expect(error.name).equal('ModelError'); + expect(error.message).equal('Token already exists for device.'); + }); + }); + }); + + describe('Claim discovery', function () { + it('should find a claim / token by token', function () { + return Claim.findClaimByToken('asdf1234') + .then(function (claim) { + expect(claim.token).equal('asdf1234'); + expect(claim.boxId.toString()).equal('6239a584de404f171cbfca42'); + }); + }); + + it('should find a claim / token by device id', function () { + return Claim.findClaimByToken('1234asdf').then(function (claim) { + expect(claim.token).equal('1234asdf'); + expect(claim.boxId.toString()).equal('6239a584de404f171cbfca43'); + }); + }); + }); + + describe('Claim expiration', function () { + it('should expire claim / token directly', function () { + // We have to raise the timeout here and wait for the TTL! + // More information: https://www.mongodb.com/docs/manual/core/index-ttl/#timing-of-the-delete-operation + this.timeout(120000); + + return Claim.findClaimByToken('asdf1234') + .then(function (claim) { + return claim.expireToken(); + }) + .then(() => new Promise((resolve) => setTimeout(resolve, 70000))) + .then(function () { + return Claim.find({}); + }) + .then(function (claims) { + expect(claims).to.have.lengthOf(3); + }); + }); + }); + + +}); diff --git a/tests/tests/005-create-boxes-test.js b/tests/tests/005-create-boxes-test.js index e61bf1da..15b3b6bd 100644 --- a/tests/tests/005-create-boxes-test.js +++ b/tests/tests/005-create-boxes-test.js @@ -10,16 +10,18 @@ const BASE_URL = process.env.OSEM_TEST_BASE_URL, valid_sensebox = require('../data/valid_sensebox'), valid_user = require('../data/valid_user'), senseBoxSchema = require('../data/senseBoxSchema'), + getUserSchema = require('../data/getUserSchema'), getUserBoxesSchema = require('../data/getUserBoxesSchema'), custom_valid_sensebox = require('../data/custom_valid_sensebox'); describe('openSenseMap API Routes: /boxes', function () { - let jwt, jwt2; + let jwt, jwt2, jwt3; let custombox_id; let boxId, boxObj; const boxes = {}; const boxIds = []; let boxCount = 0; + let transferToken, transferBoxId; before(function () { return Promise.all([ @@ -145,6 +147,7 @@ describe('openSenseMap API Routes: /boxes', function () { expect(response.body.token).to.exist; const token = response.body.token; + jwt3 = token; return chakram.post(`${BASE_URL}/boxes`, valid_sensebox(), { headers: { 'Authorization': `Bearer ${token}` } }); }) @@ -169,6 +172,33 @@ describe('openSenseMap API Routes: /boxes', function () { }); }); + it('should allow to create a senseBox via POST used for transfering', function () { + return chakram.post(`${BASE_URL}/boxes`, valid_sensebox({ name: 'Transfer', }), { headers: { Authorization: `Bearer ${jwt}` }, }) + .then(function (response) { + expect(response).to.have.status(201); + expect(response).to.have.header( + 'content-type', + 'application/json; charset=utf-8' + ); + transferBoxId = response.body.data._id; + boxCount = boxCount + 1; + + return chakram.get(`${BASE_URL}/boxes/${transferBoxId}`); + }) + .then(function (response) { + expect(response).to.have.status(200); + expect(response).to.have.header( + 'content-type', + 'application/json; charset=utf-8' + ); + expect(response).to.have.schema(senseBoxSchema); + + expect(response.body).to.not.have.keys('integrations'); + + return chakram.wait(); + }); + }); + it('should let users retrieve their box with all fields', function () { return chakram.get(`${BASE_URL}/users/me/boxes`, { headers: { 'Authorization': `Bearer ${jwt}` } }) .then(function (response) { @@ -239,7 +269,7 @@ describe('openSenseMap API Routes: /boxes', function () { .then(function (response) { expect(response).to.have.status(200); expect(response).to.have.header('content-type', 'application/json; charset=utf-8'); - expect(response.body.length).to.be.equal(3); + expect(response.body.length).to.be.equal(4); return chakram.wait(); }); @@ -689,4 +719,141 @@ describe('openSenseMap API Routes: /boxes', function () { }); }); + it('should mark a device for transferring', function () { + const payload = { + boxId: transferBoxId + }; + + return chakram.post(`${BASE_URL}/boxes/transfer`, payload, { headers: { 'Authorization': `Bearer ${jwt}` } }) + .then(function (response) { + expect(response).to.have.status(201); + expect(response.body.message).equal( + 'Box successfully prepared for transfer' + ); + expect(response.body.data).not.to.be.undefined; + expect(response.body.data.token).to.be.a.string; + expect(response.body.data.token).to.have.lengthOf(12); + + // Difference between NOW and expiresAt should be around 24 + const diff = moment + .duration(moment.utc(response.body.data.expiresAt).diff(moment.utc())) + .asHours(); + expect(diff).to.be.closeTo(24, 1); + + transferToken = response.body.data.token; + }); + }); + + it('should update expiresAt of a transfer token', function () { + const payload = { + token: transferToken, + date: moment.utc().add(2, 'd') + }; + + return chakram.put(`${BASE_URL}/boxes/transfer/${transferBoxId}`, payload, { headers: { 'Authorization': `Bearer ${jwt}` } }) + .then(function (response) { + expect(response).to.have.status(200); + expect(response.body.message).equal('Transfer successfully updated'); + expect(response.body.data).not.to.be.undefined; + expect(response.body.data.token).to.have.lengthOf(12); + expect(response.body.data.token).equal(transferToken); + + // Difference between NOW and expiresAt should be around 48 + const diff = moment + .duration(moment.utc(response.body.data.expiresAt).diff(moment.utc())) + .asHours(); + expect(diff).to.be.closeTo(48, 1); + }); + }); + + it('should return a token for a device id', function () { + return chakram.get(`${BASE_URL}/boxes/transfer/${transferBoxId}`, { + headers: { Authorization: `Bearer ${jwt}` }, + }) + .then(function (response) { + expect(response).to.have.status(200); + expect(response.body.data.token).equal(transferToken); + expect(response.body.data.boxId).equal(transferBoxId); + }); + }); + + it('should revoke and delete a transfer token', function () { + // We have to raise the timeout here and wait for the TTL! + // More information: https://www.mongodb.com/docs/manual/core/index-ttl/#timing-of-the-delete-operation + this.timeout(120000); + + const payload = { + boxId: transferBoxId, + token: transferToken, + }; + + return chakram + .delete(`${BASE_URL}/boxes/transfer`, payload, { + headers: { 'Authorization': `Bearer ${jwt}` }, + }) + .then(function (response) { + expect(response).to.have.status(204); + }) + // .then(() => new Promise((resolve) => setTimeout(resolve, 70000))) + .then(function () { + return chakram.get(`${BASE_URL}/boxes/transfer/${transferBoxId}`, { headers: { 'Authorization': `Bearer ${jwt}` } }); + }) + .then(function (response) { + expect(response).to.have.status(200); + expect(response.body.data).to.be.null; + }); + }); + + it('should claim a transferable device and transfer it to the new account and remove it from the old account', function () { + const payload = { + boxId: transferBoxId, + }; + + // Create new transfer token + return chakram.post(`${BASE_URL}/boxes/transfer`, payload, { + headers: { Authorization: `Bearer ${jwt}` }, + }) + .then(function (response) { + expect(response).to.have.status(201); + expect(response.body.message).equal( + 'Box successfully prepared for transfer' + ); + expect(response.body.data).not.to.be.undefined; + expect(response.body.data.token).to.be.a.string; + expect(response.body.data.token).to.have.lengthOf(12); + + transferToken = response.body.data.token; + }) + .then(function () { + // Claim device with a different user + return chakram.post(`${BASE_URL}/boxes/claim`, { + token: transferToken + }, { + headers: { Authorization: `Bearer ${jwt3}` }, + }); + }) + .then(function (response) { + expect(response).to.have.status(200); + expect(response.body.message).equal('Device successfully claimed!'); + + // Login with new owner + return chakram.get(`${BASE_URL}/users/me`, { + headers: { Authorization: `Bearer ${jwt3}` }, + }); + }) + .then(function (response) { + expect(response).to.have.schema(getUserSchema); + expect(response.body.data.me.boxes).to.include(transferBoxId); + + // Login with previous owner + return chakram.get(`${BASE_URL}/users/me`, { + headers: { Authorization: `Bearer ${jwt}` }, + }); + }) + .then(function (response) { + expect(response).to.have.schema(getUserSchema); + expect(response.body.data.me.boxes).not.to.include(transferBoxId); + }); + }); + }); diff --git a/tests/tests/006-submit-measurements-test.js b/tests/tests/006-submit-measurements-test.js index 035019c5..5458b725 100644 --- a/tests/tests/006-submit-measurements-test.js +++ b/tests/tests/006-submit-measurements-test.js @@ -16,7 +16,7 @@ describe('submitting measurements', function () { let boxes = []; let boxIds = []; - const boxCount = 3; + const boxCount = 4; let countMeasurements = 32; before(function () { diff --git a/tests/tests/007-download-data-test.js b/tests/tests/007-download-data-test.js index f8bcfed2..d5fb8c93 100644 --- a/tests/tests/007-download-data-test.js +++ b/tests/tests/007-download-data-test.js @@ -19,7 +19,7 @@ describe('downloading data', function () { let boxes = []; let boxIds = []; - const boxCount = 3; + const boxCount = 4; before(function () { return chakram.post(`${BASE_URL}/users/sign-in`, { email: 'tester2@test.test', password: '12345678910' }) From 0bd30058524e528f36ae06c51a3599cfeb213108 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Fri, 12 Aug 2022 14:01:50 +0200 Subject: [PATCH 214/337] Move osem mongo dev image to api repo (#614) --- docker-compose.yml | 7 +++++-- images/mongodb/Dockerfile | 6 ++++++ images/mongodb/README.md | 3 +++ images/mongodb/osem_admin.sh | 9 +++++++++ 4 files changed, 23 insertions(+), 2 deletions(-) create mode 100644 images/mongodb/Dockerfile create mode 100644 images/mongodb/README.md create mode 100644 images/mongodb/osem_admin.sh diff --git a/docker-compose.yml b/docker-compose.yml index 9c93ca66..c0801065 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,7 +1,10 @@ -version: "2" +version: "3.9" + services: db: - image: ghcr.io/mpfeil/osem-dev-mongo:main + build: + context: ./images/mongodb + container_name: osem-dev-mongo ports: - "27017:27017" volumes: diff --git a/images/mongodb/Dockerfile b/images/mongodb/Dockerfile new file mode 100644 index 00000000..1a38d8a7 --- /dev/null +++ b/images/mongodb/Dockerfile @@ -0,0 +1,6 @@ +FROM mongo:5 + +LABEL org.opencontainers.image.source https://github.com/sensebox/openSenseMap-API/tree/master/images/mongodb +LABEL org.opencontainers.image.description "MongoDB development database for openSenseMap API" + +COPY ./osem_admin.sh /docker-entrypoint-initdb.d diff --git a/images/mongodb/README.md b/images/mongodb/README.md new file mode 100644 index 00000000..a9ab59c7 --- /dev/null +++ b/images/mongodb/README.md @@ -0,0 +1,3 @@ +# osem-dev-mongo + +MongoDB development database for openSenseMap API diff --git a/images/mongodb/osem_admin.sh b/images/mongodb/osem_admin.sh new file mode 100644 index 00000000..f1a0038b --- /dev/null +++ b/images/mongodb/osem_admin.sh @@ -0,0 +1,9 @@ +#!/bin/bash + +USER=${OSEM_dbuser:-"admin"} +DATABASE=OSeM-api +PASS=${OSEM_dbuserpass:-"admin"} + +echo "Creating openSenseMap Admin user..." +mongo OSeM-api --host localhost --eval "db.createUser({user: '$USER', pwd: '$PASS', roles: ['readWrite', 'dbAdmin']});" +echo "openSenseMap Admin user created." \ No newline at end of file From 6d06e038cc0da3a424534825b2ada406c86889f1 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Mon, 15 Aug 2022 11:00:57 +0200 Subject: [PATCH 215/337] v1.2.0 --- packages/models/CHANGELOG.md | 5 +++++ packages/models/package.json | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/packages/models/CHANGELOG.md b/packages/models/CHANGELOG.md index 7c79e72d..9888c0bf 100644 --- a/packages/models/CHANGELOG.md +++ b/packages/models/CHANGELOG.md @@ -2,6 +2,11 @@ ## Unreleased +## v1.2.0 + +- Extend `luftdatenHandler` (#578) +- Add workflow to transfer a device to different account (#525) + ## v1.1.1 - Update @sensebox/node-sketch-templater to v1.12.1 diff --git a/packages/models/package.json b/packages/models/package.json index 59cbc489..13dfa36e 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -1,7 +1,7 @@ { "name": "@sensebox/opensensemap-api-models", "description": "openSenseMap data models and database connection", - "version": "1.1.1", + "version": "1.2.0", "main": "index.js", "license": "MIT", "dependencies": { From 534b950df36867b8f73eeca48b45a9507cbbf168 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Mon, 15 Aug 2022 11:19:41 +0200 Subject: [PATCH 216/337] Update Changelog --- CHANGELOG.md | 9 +++++++++ packages/api/package.json | 2 +- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 938b4c94..8bf6f8b1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,14 @@ # openSenseMap API Changelog +## v10.1.1 + +- Use @sensebox/opensensemap-api-models v1.2.0 + +## v10.1.0 + +- Update grouptag in management routes (#582) +- Move osem mongo dev image to api repo (#614) + ## v10.0.3 - Use @sensebox/opensensemap-api-models v1.1.1 diff --git a/packages/api/package.json b/packages/api/package.json index b9d0775b..80e3c471 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -10,7 +10,7 @@ "Norwin Roosen" ], "dependencies": { - "@sensebox/opensensemap-api-models": "^1.1.1", + "@sensebox/opensensemap-api-models": "^1.2.0", "@turf/area": "^6.3.0", "@turf/bbox": "^6.3.0", "@turf/centroid": "^6.3.0", From 0cf726de1dbeda0643aadfc1d55fa9ea206fdcd6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 18 Nov 2022 14:26:18 +0100 Subject: [PATCH 217/337] Bump docker/metadata-action from 4.0.1 to 4.1.1 (#652) Bumps [docker/metadata-action](https://github.com/docker/metadata-action) from 4.0.1 to 4.1.1. - [Release notes](https://github.com/docker/metadata-action/releases) - [Commits](https://github.com/docker/metadata-action/compare/v4.0.1...v4.1.1) --- updated-dependencies: - dependency-name: docker/metadata-action dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/registry.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/registry.yaml b/.github/workflows/registry.yaml index 81b06019..db7a0bfd 100644 --- a/.github/workflows/registry.yaml +++ b/.github/workflows/registry.yaml @@ -32,7 +32,7 @@ jobs: - name: Extract metadata (tags, labels) for Docker id: meta - uses: docker/metadata-action@v4.0.1 + uses: docker/metadata-action@v4.1.1 with: images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} flavor: | From 494985c5c502a4bfa8ce006330ffdcd723b38332 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 18 Nov 2022 14:30:27 +0100 Subject: [PATCH 218/337] Bump docker/build-push-action from 3.0.0 to 3.2.0 (#646) Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 3.0.0 to 3.2.0. - [Release notes](https://github.com/docker/build-push-action/releases) - [Commits](https://github.com/docker/build-push-action/compare/v3.0.0...v3.2.0) --- updated-dependencies: - dependency-name: docker/build-push-action dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Matthias Pfeil --- .github/workflows/registry.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/registry.yaml b/.github/workflows/registry.yaml index db7a0bfd..345a097d 100644 --- a/.github/workflows/registry.yaml +++ b/.github/workflows/registry.yaml @@ -41,7 +41,7 @@ jobs: suffix= - name: Build and push Docker image - uses: docker/build-push-action@v3.0.0 + uses: docker/build-push-action@v3.2.0 with: context: . push: true From 1e1b948717f54d27304b83c06e9029d77f47be58 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 18 Nov 2022 14:34:17 +0100 Subject: [PATCH 219/337] Bump docker/login-action from 2.0.0 to 2.1.0 (#645) Bumps [docker/login-action](https://github.com/docker/login-action) from 2.0.0 to 2.1.0. - [Release notes](https://github.com/docker/login-action/releases) - [Commits](https://github.com/docker/login-action/compare/v2.0.0...v2.1.0) --- updated-dependencies: - dependency-name: docker/login-action dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Matthias Pfeil --- .github/workflows/registry.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/registry.yaml b/.github/workflows/registry.yaml index 345a097d..c15f34a7 100644 --- a/.github/workflows/registry.yaml +++ b/.github/workflows/registry.yaml @@ -24,7 +24,7 @@ jobs: uses: actions/checkout@v3 - name: Log in to the Container registry - uses: docker/login-action@v2.0.0 + uses: docker/login-action@v2.1.0 with: registry: ${{ env.REGISTRY }} username: ${{ github.actor }} From 2a1570d41e41a1f3b712bf7de671297962eb4eaf Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 18 Nov 2022 14:38:10 +0100 Subject: [PATCH 220/337] Bump actions/setup-node from 3.2.0 to 3.5.1 (#648) Bumps [actions/setup-node](https://github.com/actions/setup-node) from 3.2.0 to 3.5.1. - [Release notes](https://github.com/actions/setup-node/releases) - [Commits](https://github.com/actions/setup-node/compare/v3.2.0...v3.5.1) --- updated-dependencies: - dependency-name: actions/setup-node dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Matthias Pfeil --- .github/workflows/test.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index 676e7643..2c80fdf1 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -16,7 +16,7 @@ jobs: - uses: actions/checkout@v3 - name: Install Node.js 16 - uses: actions/setup-node@v3.2.0 + uses: actions/setup-node@v3.5.1 with: node-version: 16 From 447796e8190d85c11462a6a9099eea0fa03ba612 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 18 Nov 2022 14:42:58 +0100 Subject: [PATCH 221/337] Bump actions/cache from 2.1.7 to 3.0.11 (#649) Bumps [actions/cache](https://github.com/actions/cache) from 2.1.7 to 3.0.11. - [Release notes](https://github.com/actions/cache/releases) - [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md) - [Commits](https://github.com/actions/cache/compare/v2.1.7...v3.0.11) --- updated-dependencies: - dependency-name: actions/cache dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Matthias Pfeil --- .github/workflows/test.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index 2c80fdf1..2790478b 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -26,7 +26,7 @@ jobs: echo "##[set-output name=dir;]$(yarn cache dir)" - name: Restore yarn cache - uses: actions/cache@v2.1.7 + uses: actions/cache@v3.0.11 id: yarn-cache with: path: ${{ steps.yarn-cache-dir-path.outputs.dir }} From 7c8e8e3f15befb7dabe26ed75657be68cd6cf0bb Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Fri, 18 Nov 2022 14:50:45 +0100 Subject: [PATCH 222/337] Replace slack notifications with mattermost (#664) --- config/config.example.json | 4 ++ config/default.js | 45 ++++++++++--------- packages/api/app.js | 4 +- .../api/lib/controllers/boxesController.js | 6 +-- .../lib/controllers/managementController.js | 10 ++--- .../api/lib/controllers/usersController.js | 6 +-- packages/api/lib/helpers/apiUtils.js | 16 +++++++ packages/api/lib/helpers/escapeMarkdown.js | 29 ++++++++++++ 8 files changed, 85 insertions(+), 35 deletions(-) create mode 100644 packages/api/lib/helpers/escapeMarkdown.js diff --git a/config/config.example.json b/config/config.example.json index 752631d7..11692621 100644 --- a/config/config.example.json +++ b/config/config.example.json @@ -27,6 +27,10 @@ // If not specified, Slack integration is disabled // No default "slack_url": "https://hooks.slack.com/services/A1...7/Z.....K/r....g", + // A valid Mattermost incoming webhook url. Used for sending restart and status messages + // If not specified, Mattermost integration is disabled + // No default + "mattermost_url": "https://your-mattermost-server.com/hooks/xxx-generatedkey-xxx", // Users with this role are allowed to management access to the API // Default: "admin" "management_role": "manager", diff --git a/config/default.js b/config/default.js index e1e6e9d7..70ba3f3a 100644 --- a/config/default.js +++ b/config/default.js @@ -7,30 +7,31 @@ const defer = require('config/defer').deferConfig; const defaults = { - 'base_domain': 'localhost', - 'protocol': 'https', - 'port': 8000, - 'api_url': '', // if not set, generated from api_protocol and api_base_domain - 'honeybadger_apikey': '', - 'slack_url': '', - 'management_role': 'admin', - 'routes': { - 'boxes': '/boxes', - 'users': '/users', - 'statistics': '/statistics', - 'management': '/management' + base_domain: 'localhost', + protocol: 'https', + port: 8000, + api_url: '', // if not set, generated from api_protocol and api_base_domain + honeybadger_apikey: '', + slack_url: '', + mattermost_url: '', + management_role: 'admin', + routes: { + boxes: '/boxes', + users: '/users', + statistics: '/statistics', + management: '/management', }, - 'jwt': { - 'secret': 'OH GOD THIS IS SO INSECURE PLS CHANGE ME', // should be at least 32 characters - 'algorithm': 'HS256', - 'validity_ms': 3600000, // 1 hour - 'issuer': '' // usually the base url of the api. generated if not set from api_protocol and api_base_domain. for example https://api.opensensemap.org + jwt: { + secret: 'OH GOD THIS IS SO INSECURE PLS CHANGE ME', // should be at least 32 characters + algorithm: 'HS256', + validity_ms: 3600000, // 1 hour + issuer: '', // usually the base url of the api. generated if not set from api_protocol and api_base_domain. for example https://api.opensensemap.org + }, + refresh_token: { + secret: 'I ALSO WANT TO BE CHANGED', + algorithm: 'sha256', + validity_ms: 604800000, // 1 week }, - 'refresh_token': { - 'secret': 'I ALSO WANT TO BE CHANGED', - 'algorithm': 'sha256', - 'validity_ms': 604800000 // 1 week - } }; // computed keys diff --git a/packages/api/app.js b/packages/api/app.js index 624c4b91..c37f88d4 100644 --- a/packages/api/app.js +++ b/packages/api/app.js @@ -15,7 +15,7 @@ const restify = require('restify'), { fullResponse, queryParser, jsonBodyParser, pre: { sanitizePath } } = restify.plugins, config = require('config'), - { preRequest, preCors, Honeybadger, getVersion, postToSlack } = require('./lib/helpers/apiUtils'), + { preRequest, preCors, Honeybadger, getVersion, postToMattermost } = require('./lib/helpers/apiUtils'), routes = require('./lib/routes'), bunyan = require('bunyan'); @@ -48,7 +48,7 @@ db.connect() // start the server server.listen(Number(config.get('port')), function () { log.info(`${server.name} listening at ${server.url}`); - postToSlack(`openSenseMap API started. Version: ${getVersion}`); + postToMattermost(`openSenseMap API started. Version: ${getVersion}`); }); }) .catch(function (err) { diff --git a/packages/api/lib/controllers/boxesController.js b/packages/api/lib/controllers/boxesController.js index 73263ae3..7894e62b 100644 --- a/packages/api/lib/controllers/boxesController.js +++ b/packages/api/lib/controllers/boxesController.js @@ -38,7 +38,7 @@ const { Box, User, Claim } = require('@sensebox/opensensemap-api-models'), - { addCache, clearCache, checkContentType, redactEmail, postToSlack } = require('../helpers/apiUtils'), + { addCache, clearCache, checkContentType, redactEmail, postToMattermost } = require('../helpers/apiUtils'), { point } = require('@turf/helpers'), classifyTransformer = require('../transformers/classifyTransformer'), { @@ -411,7 +411,7 @@ const postNewBox = async function postNewBox (req, res, next) { newBox = await Box.populate(newBox, Box.BOX_SUB_PROPS_FOR_POPULATION); res.send(201, { message: 'Box successfully created', data: newBox }); clearCache(['getBoxes', 'getStats']); - postToSlack(`New Box: ${req.user.name} (${redactEmail(req.user.email)}) just registered "${newBox.name}" (${newBox.model}): `); + postToMattermost(`New Box: ${req.user.name} (${redactEmail(req.user.email)}) just registered "${newBox.name}" (${newBox.model}): `); } catch (err) { handleError(err, next); } @@ -481,7 +481,7 @@ const deleteBox = async function deleteBox (req, res, next) { const box = await req.user.removeBox(boxId); res.send({ code: 'Ok', message: 'box and all associated measurements marked for deletion' }); clearCache(['getBoxes', 'getStats']); - postToSlack(`Box deleted: ${req.user.name} (${redactEmail(req.user.email)}) just deleted "${box.name}" (${boxId})`); + postToMattermost(`Box deleted: ${req.user.name} (${redactEmail(req.user.email)}) just deleted "${box.name}" (${boxId})`); } catch (err) { handleError(err, next); diff --git a/packages/api/lib/controllers/managementController.js b/packages/api/lib/controllers/managementController.js index 3fdda452..1087e001 100644 --- a/packages/api/lib/controllers/managementController.js +++ b/packages/api/lib/controllers/managementController.js @@ -1,7 +1,7 @@ 'use strict'; const { Box, User } = require('@sensebox/opensensemap-api-models'), - { clearCache, checkContentType, postToSlack } = require('../helpers/apiUtils'), + { clearCache, checkContentType, postToMattermost } = require('../helpers/apiUtils'), { NotFoundError, BadRequestError } = require('restify-errors'), handleError = require('../helpers/errorHandler'), { @@ -96,7 +96,7 @@ const deleteBoxes = async function deleteBoxes (req, res, next) { const user = await User.findUserOfBox(boxId); await user.removeBox(boxId); clearCache(['getBoxes', 'getStats']); - postToSlack(`Management Action: Box deleted: ${req.user.name} (${req.user.email}) just deleted ${boxIds.join(',')}`); + postToMattermost(`Management Action: Box deleted: ${req.user.name} (${req.user.email}) just deleted ${boxIds.join(',')}`); } res.send({ boxIds }); } catch (err) { @@ -121,7 +121,7 @@ const updateBox = async function updateBox (req, res, next) { const user = await User.findUserOfBox(boxId); box.owner = user.toJSON({ includeSecrets: true }); - postToSlack(`Management Action: Box updated: ${req.user.name} (${req.user.email}) just updated "${box.name}" (${box.model}): `); + postToMattermost(`Management Action: Box updated: ${req.user.name} (${req.user.email}) just updated "${box.name}" (${box.model}): `); res.send({ code: 'Ok', data: box }); clearCache(['getBoxes']); } catch (err) { @@ -146,7 +146,7 @@ const updateUser = async function updateUser (req, res, next) { await user.save(); - postToSlack(`Management Action: User updated: ${req.user.name} (${req.user.email}) just updated "${user.name}" (${user.email})`); + postToMattermost(`Management Action: User updated: ${req.user.name} (${req.user.email}) just updated "${user.name}" (${user.email})`); res.send({ code: 'Ok', data: user }); } catch (err) { handleError(err, next); @@ -164,7 +164,7 @@ const deleteUsers = async function deleteUsers (req, res, next) { userNames.push(`${user.name} (${user.email})`); await user.destroyUser({ sendMail: false }); clearCache(['getBoxes', 'getStats']); - postToSlack(`Management Action: User deleted: ${req.user.name} (${req.user.email}) just deleted ${userNames.join(',')}`); + postToMattermost(`Management Action: User deleted: ${req.user.name} (${req.user.email}) just deleted ${userNames.join(',')}`); } res.send({ userIds }); } catch (err) { diff --git a/packages/api/lib/controllers/usersController.js b/packages/api/lib/controllers/usersController.js index a87b4dd9..2c72e479 100644 --- a/packages/api/lib/controllers/usersController.js +++ b/packages/api/lib/controllers/usersController.js @@ -2,7 +2,7 @@ const { User } = require('@sensebox/opensensemap-api-models'), { InternalServerError, ForbiddenError } = require('restify-errors'), - { checkContentType, redactEmail, postToSlack, clearCache } = require('../helpers/apiUtils'), + { checkContentType, redactEmail, clearCache, postToMattermost } = require('../helpers/apiUtils'), { retrieveParameters } = require('../helpers/userParamHelpers'), handleError = require('../helpers/errorHandler'), { createToken, refreshJwt, invalidateToken } = require('../helpers/jwtHelpers'); @@ -49,7 +49,7 @@ const registerUser = async function registerUser (req, res, next) { try { const newUser = await new User({ name, email, password, language }) .save(); - postToSlack(`New User: ${newUser.name} (${redactEmail(newUser.email)})`); + postToMattermost(`New User: ${newUser.name} (${redactEmail(newUser.email)})`); try { const { token, refreshToken } = await createToken(newUser); @@ -273,7 +273,7 @@ const deleteUser = async function deleteUser (req, res, next) { await req.user.destroyUser(); res.send(200, { code: 'Ok', message: 'User and all boxes of user marked for deletion. Bye Bye!' }); clearCache(['getBoxes', 'getStats']); - postToSlack(`User deleted: ${req.user.name} (${redactEmail(req.user.email)})`); + postToMattermost(`User deleted: ${req.user.name} (${redactEmail(req.user.email)})`); } catch (err) { handleError(err, next); } diff --git a/packages/api/lib/helpers/apiUtils.js b/packages/api/lib/helpers/apiUtils.js index f96257b3..30e7dd0d 100644 --- a/packages/api/lib/helpers/apiUtils.js +++ b/packages/api/lib/helpers/apiUtils.js @@ -1,5 +1,7 @@ 'use strict'; +const escapeMarkdown = require('./escapeMarkdown'); + const { NotAuthorizedError, UnsupportedMediaTypeError } = require('restify-errors'), config = require('config'), apicache = require('apicache'), @@ -128,6 +130,19 @@ const postToSlack = function postToSlack (text) { } }; +const postToMattermost = function postToMattermost (text) { + if (config.get('mattermost_url')) { + text = `[${hostname}]: ${text}`; + got + .post(config.get('mattermost_url'), { + json: { text: escapeMarkdown(text) }, + retry: 0, + }) + // swallow errors, we don't care + .catch(() => {}); + } +}; + const redactEmail = function redactEmail (email) { /* eslint-disable prefer-const */ let [name = '', domain = ''] = email.split('@'); @@ -198,6 +213,7 @@ module.exports = { preCors, Honeybadger, postToSlack, + postToMattermost, getVersion, redactEmail, createDownloadFilename, diff --git a/packages/api/lib/helpers/escapeMarkdown.js b/packages/api/lib/helpers/escapeMarkdown.js new file mode 100644 index 00000000..ea72ed69 --- /dev/null +++ b/packages/api/lib/helpers/escapeMarkdown.js @@ -0,0 +1,29 @@ +'use strict'; + +const replacements = [ + [/\*/g, '\\*', 'asterisks'], + [/#/g, '\\#', 'number signs'], + [/\//g, '\\/', 'slashes'], + [/\(/g, '\\(', 'parentheses'], + [/\)/g, '\\)', 'parentheses'], + [/\[/g, '\\[', 'square brackets'], + [/\]/g, '\\]', 'square brackets'], + [//g, '>', 'angle brackets'], + [/_/g, '\\_', 'underscores'], + [/`/g, '\\`', 'codeblocks'] +]; + +const escapeMarkdown = function (string, skips) { + skips = skips || []; + + return replacements.reduce(function (string, replacement) { + const name = replacement[2]; + + return name && skips.indexOf(name) !== -1 + ? string + : string.replace(replacement[0], replacement[1]); + }, string); +}; + +module.exports = escapeMarkdown; From 1dda7aa7f2ae27e292331367bdbe7ec7bb2d2f3d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 18 Nov 2022 15:06:54 +0100 Subject: [PATCH 223/337] Bump millify from 3.5.2 to 5.0.1 (#629) Bumps [millify](https://github.com/izolate/millify) from 3.5.2 to 5.0.1. - [Release notes](https://github.com/izolate/millify/releases) - [Changelog](https://github.com/izolate/millify/blob/master/CHANGELOG.md) - [Commits](https://github.com/izolate/millify/compare/v3.5.2...v5.0.1) --- updated-dependencies: - dependency-name: millify dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Matthias Pfeil --- packages/api/package.json | 2 +- yarn.lock | 51 ++++++++++++++++++++++++++++++++++----- 2 files changed, 46 insertions(+), 7 deletions(-) diff --git a/packages/api/package.json b/packages/api/package.json index 80e3c471..80b512d3 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -28,7 +28,7 @@ "honeybadger": "^1.4.0", "isemail": "^3.0.0", "jsonwebtoken": "^8.1.0", - "millify": "^3.5.2", + "millify": "^5.0.1", "moment": "^2.29.1", "ms": "^2.1.3", "restify": "^5.2.0", diff --git a/yarn.lock b/yarn.lock index 19c1588d..3358b0d9 100644 --- a/yarn.lock +++ b/yarn.lock @@ -459,6 +459,11 @@ ansi-regex@^5.0.0: resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.0.tgz#388539f55179bf39339c81af30a654d69f87cb75" integrity sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg== +ansi-regex@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" + integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== + ansi-styles@^3.2.1: version "3.2.1" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" @@ -2175,12 +2180,12 @@ methods@^1.1.1, methods@^1.1.2: resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" integrity sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4= -millify@^3.5.2: - version "3.5.2" - resolved "https://registry.yarnpkg.com/millify/-/millify-3.5.2.tgz#787dcdf55bd8161621c4d3c55a0b9443d89eabd2" - integrity sha512-MdcYAP+h3GR5BivnkBHov4nbkfAB2dHiDhzEui9ZtrsHUTGZmsM3zxIFhEjoQSWOFfRx+Yp0eYCWzUvgFEvAhw== +millify@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/millify/-/millify-5.0.1.tgz#f3f2cebf4d3071e127c05942f827c49754a03754" + integrity sha512-1IacXjRDMbRevt2++mBnrI2iFxljWlQapMUT9Bs+uAF3o/TrYdE46Uf6CqlmoOWMX1JDAlMorXPv4/hM1eE/kw== dependencies: - yargs "^16.2.0" + yargs "^17.0.1" mime-db@1.44.0: version "1.44.0" @@ -3153,6 +3158,15 @@ string-width@^4.1.0, string-width@^4.2.0: is-fullwidth-code-point "^3.0.0" strip-ansi "^6.0.0" +string-width@^4.2.3: + version "4.2.3" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" + integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== + dependencies: + emoji-regex "^8.0.0" + is-fullwidth-code-point "^3.0.0" + strip-ansi "^6.0.1" + string_decoder@^1.1.1: version "1.3.0" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" @@ -3212,6 +3226,13 @@ strip-ansi@^6.0.0: dependencies: ansi-regex "^5.0.0" +strip-ansi@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" + integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== + dependencies: + ansi-regex "^5.0.1" + strip-json-comments@3.1.1, strip-json-comments@^3.1.0, strip-json-comments@^3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" @@ -3510,6 +3531,11 @@ yargs-parser@^20.2.2: resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.6.tgz#69f920addf61aafc0b8b89002f5d66e28f2d8b20" integrity sha512-AP1+fQIWSM/sMiET8fyayjx/J+JmTPt2Mr0FkrgqB4todtfa53sOsrSAcIrJRD5XS20bKUwaDIuMkWKCEiQLKA== +yargs-parser@^21.0.0: + version "21.1.1" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.1.1.tgz#9096bceebf990d21bb31fa9516e0ede294a77d35" + integrity sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw== + yargs-unparser@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/yargs-unparser/-/yargs-unparser-2.0.0.tgz#f131f9226911ae5d9ad38c432fe809366c2325eb" @@ -3520,7 +3546,7 @@ yargs-unparser@2.0.0: flat "^5.0.2" is-plain-obj "^2.1.0" -yargs@16.2.0, yargs@^16.1.1, yargs@^16.2.0: +yargs@16.2.0, yargs@^16.1.1: version "16.2.0" resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== @@ -3533,6 +3559,19 @@ yargs@16.2.0, yargs@^16.1.1, yargs@^16.2.0: y18n "^5.0.5" yargs-parser "^20.2.2" +yargs@^17.0.1: + version "17.5.1" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.5.1.tgz#e109900cab6fcb7fd44b1d8249166feb0b36e58e" + integrity sha512-t6YAJcxDkNX7NFYiVtKvWUz8l+PaKTLiL63mJYWR2GnHq2gjEWISzsLp9wg3aY36dY1j+gfIEL3pIF+XlJJfbA== + dependencies: + cliui "^7.0.2" + escalade "^3.1.1" + get-caller-file "^2.0.5" + require-directory "^2.1.1" + string-width "^4.2.3" + y18n "^5.0.5" + yargs-parser "^21.0.0" + yocto-queue@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" From 7607208cedfb46d0c12d75ef1426e7f2c828c182 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 18 Nov 2022 15:14:11 +0100 Subject: [PATCH 224/337] Bump moment from 2.29.1 to 2.29.4 (#602) Bumps [moment](https://github.com/moment/moment) from 2.29.1 to 2.29.4. - [Release notes](https://github.com/moment/moment/releases) - [Changelog](https://github.com/moment/moment/blob/develop/CHANGELOG.md) - [Commits](https://github.com/moment/moment/compare/2.29.1...2.29.4) --- updated-dependencies: - dependency-name: moment dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- packages/api/package.json | 2 +- packages/models/package.json | 2 +- yarn.lock | 8 ++++---- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/api/package.json b/packages/api/package.json index 80b512d3..1cc23b47 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -29,7 +29,7 @@ "isemail": "^3.0.0", "jsonwebtoken": "^8.1.0", "millify": "^5.0.1", - "moment": "^2.29.1", + "moment": "^2.29.4", "ms": "^2.1.3", "restify": "^5.2.0", "restify-errors": "^8.0.2", diff --git a/packages/models/package.json b/packages/models/package.json index 13dfa36e..3ad728f9 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -16,7 +16,7 @@ "isemail": "^3.0.0", "jsonpath": "^1.1.1", "lodash.isequal": "^4.5.0", - "moment": "^2.29.1", + "moment": "^2.29.4", "mongoose": "^4.13.21", "mongoose-timestamp": "^0.6", "uuid": "^8.3.2" diff --git a/yarn.lock b/yarn.lock index 3358b0d9..0b647695 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2297,10 +2297,10 @@ mocha@^8.3.2: yargs-parser "20.2.4" yargs-unparser "2.0.0" -moment@^2.19.3, moment@^2.29.1: - version "2.29.1" - resolved "https://registry.yarnpkg.com/moment/-/moment-2.29.1.tgz#b2be769fa31940be9eeea6469c075e35006fa3d3" - integrity sha512-kHmoybcPV8Sqy59DwNDY3Jefr64lK/by/da0ViFcuA4DH0vQg5Q6Ze5VimxkfQNSC+Mls/Kx53s7TjP1RhFEDQ== +moment@^2.19.3, moment@^2.29.4: + version "2.29.4" + resolved "https://registry.yarnpkg.com/moment/-/moment-2.29.4.tgz#3dbe052889fe7c1b2ed966fcb3a77328964ef108" + integrity sha512-5LC9SOxjSc2HF6vO2CyuTDNivEdoz2IvyJJGj6X8DJ0eFyfszE0QiEd+iXmBvUP3WHxSjFH/vIsA0EN00cgr8w== mongodb-core@2.1.18: version "2.1.18" From ac1fa3189ec6961e70338d9ad8ac32d271e7df75 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Tue, 20 Dec 2022 18:17:57 +0100 Subject: [PATCH 225/337] Update management routes for admin users. (#675) * Dont run expensive populate and loop functions * Update tests * Use stream in management route * Add projection * Update tests --- .../lib/controllers/managementController.js | 34 +++++++------------ tests/tests/015-admin-test.js | 19 ++--------- 2 files changed, 14 insertions(+), 39 deletions(-) diff --git a/packages/api/lib/controllers/managementController.js b/packages/api/lib/controllers/managementController.js index 1087e001..e1da3ce4 100644 --- a/packages/api/lib/controllers/managementController.js +++ b/packages/api/lib/controllers/managementController.js @@ -6,27 +6,22 @@ const { Box, User } = require('@sensebox/opensensemap-api-models'), handleError = require('../helpers/errorHandler'), { retrieveParameters, - } = require('../helpers/userParamHelpers'); + } = require('../helpers/userParamHelpers'), + jsonstringify = require('stringify-stream'); const listBoxes = async function listBoxes (req, res, next) { - try { - let boxes = await Box.find().exec(); - const users = await User.find().exec(); - - boxes = boxes - .map(b => b.toJSON({ includeSecrets: true })); - - for (const user of users) { - for (const userbox of user.boxes) { - const foundbox = boxes.find(box => box._id.equals(userbox)); - if (foundbox) { - foundbox.owner = user.toJSON({ includeSecrets: true }); - } - } - } + // default format + const stringifier = jsonstringify({ open: '[', close: ']' }); - res.send({ code: 'Ok', boxes }); + try { + const stream = await Box.find({}, { _id: 1, name: 1, exposure: 1, model: 1, createdAt: 1, updatedAt: 1 }).cursor({ lean: true }); + stream + .pipe(stringifier) + .on('error', function (err) { + res.end(`Error: ${err.message}`); + }) + .pipe(res); } catch (err) { handleError(err, next); } @@ -35,15 +30,10 @@ const listBoxes = async function listBoxes (req, res, next) { const listUsers = async function listUsers (req, res, next) { try { const users = await User.find() - .populate('boxes') .then(function (users) { return users.map(function (user) { - const boxes = user.boxes.map(b => b.toJSON({ includeSecrets: true })); - user = user.toJSON({ includeSecrets: true }); - user.boxes = boxes; - return user; }); }); diff --git a/tests/tests/015-admin-test.js b/tests/tests/015-admin-test.js index 6afb3023..794e116e 100644 --- a/tests/tests/015-admin-test.js +++ b/tests/tests/015-admin-test.js @@ -82,10 +82,6 @@ describe('Management Tests', function () { expect(user._id).exist; expect(user.boxes).exist; - for (const box of user.boxes) { - expect(box.integrations).exist; - } - return chakram.wait(); }); @@ -100,15 +96,8 @@ describe('Management Tests', function () { describe('boxes management', function () { it('should allow to request a list of boxes with secrets', async function () { - const { body: { boxes } } = await requestWithAuth('get', `${MANAGEMENT_URL}/boxes`); - expect(Array.isArray(boxes)).true; - for (const box of boxes) { - expect(box.integrations).exist; - expect(box.owner).exist; - expect(box.owner.name).exist; - expect(box.owner.email).exist; - expect(box.owner._id).exist; - } + const { body } = await requestWithAuth('get', `${MANAGEMENT_URL}/boxes`); + expect(Array.isArray(body)).true; return chakram.wait(); }); @@ -117,10 +106,6 @@ describe('Management Tests', function () { const { body } = await requestWithAuth('get', `${MANAGEMENT_URL}/boxes/${normalUserBox._id}`); expect(body.name).equal(valid_sensebox().name); expect(body.integrations).exist; - expect(body.owner).exist; - expect(body.owner.name).exist; - expect(body.owner.email).exist; - expect(body.owner._id).exist; return chakram.wait(); }); From 84ec180336bcf5f38645af02f5ecf0078f43f465 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Wed, 4 Jan 2023 12:25:35 +0100 Subject: [PATCH 226/337] Upgrade bcrypt to use node v16 (#666) * Upgrade bcrypt to use node v16 * Update Dockerfile and versions * Update test Dockerfile to match production image * Install git because it is used by scripts * Copy version file * Update user permissions * Create image folder * Remove unused files and folders * Update test Dockerfile * Update restify to v7.7.0 * Update nodejs base image to latest v16 --- .dockerignore | 2 +- Dockerfile | 37 ++- packages/api/app.js | 4 +- packages/api/lib/routes.js | 18 +- packages/api/package.json | 2 +- packages/models/package.json | 2 +- tests/tests-Dockerfile | 22 +- tests/tests/004-users-test.js | 2 + yarn.lock | 576 +++++++++++++++++++--------------- 9 files changed, 381 insertions(+), 284 deletions(-) diff --git a/.dockerignore b/.dockerignore index cda16a31..d5658b2e 100644 --- a/.dockerignore +++ b/.dockerignore @@ -13,7 +13,7 @@ version.js *.md *-dev.sh *.log -.github tests apidoc apidoc.json +images \ No newline at end of file diff --git a/Dockerfile b/Dockerfile index 3188caac..cfe94c92 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,17 +1,18 @@ -FROM node:14.18-alpine as build +# Image selected based on https://snyk.io/blog/choosing-the-best-node-js-docker-image/ +# Used best practices from https://snyk.io/blog/10-best-practices-to-containerize-nodejs-web-applications-with-docker/ -ENV NODE_ENV=production +# --------------> The build image +FROM node:16.19.0-bullseye-slim as build -RUN apk --no-cache --virtual .build add build-base python2 git +RUN apt-get update && apt-get upgrade -y && apt-get install -y --no-install-recommends git dumb-init -# taken from node:6-onbuild -#RUN mkdir -p /usr/src/app WORKDIR /usr/src/app -# copy in main package.json and yarn.lock +# Copy in main package.json and yarn.lock COPY package.json /usr/src/app/ COPY yarn.lock /usr/src/app/ -# copy in workspace package.json files + +# Copy in workspace package.json files COPY packages/api/package.json /usr/src/app/packages/api/ COPY packages/models/package.json /usr/src/app/packages/models/ @@ -19,15 +20,25 @@ RUN yarn install --pure-lockfile --production COPY . /usr/src/app -RUN yarn create-version-file \ - && rm -rf .git .scripts +RUN yarn create-version-file -# Final stage -FROM node:14.18-alpine +# --------------> The production image +FROM node:16.19.0-bullseye-slim ENV NODE_ENV=production +COPY --from=build /usr/bin/dumb-init /usr/bin/dumb-init +USER node WORKDIR /usr/src/app -COPY --from=build /usr/src/app /usr/src/app -CMD [ "yarn", "start" ] +COPY --chown=node:node --from=build /usr/src/app/node_modules /usr/src/app/node_modules +COPY --chown=node:node --from=build /usr/src/app/version.js /usr/src/app/version.js +COPY --chown=node:node . /usr/src/app + +# Remove unused files and folders +RUN rm -rf .git .scripts + +# Create and change ownership of folder to store uploaded images +RUN mkdir -p /usr/src/app/dist/userimages && chown node:node /usr/src/app/dist/userimages + +CMD ["dumb-init", "node", "packages/api/app.js"] \ No newline at end of file diff --git a/packages/api/app.js b/packages/api/app.js index c37f88d4..c2e2adc6 100644 --- a/packages/api/app.js +++ b/packages/api/app.js @@ -23,7 +23,9 @@ const log = bunyan.createLogger({ name: 'opensensemap-api', serializers: bunyan. const server = restify.createServer({ name: `opensensemap-api (${getVersion})`, - log + log, + onceNext: true, + strictNext: false, }); // We're using caddy as proxy. It supplies a 'X-Forwarded-Proto' header diff --git a/packages/api/lib/routes.js b/packages/api/lib/routes.js index 702f3be3..cf8742f6 100644 --- a/packages/api/lib/routes.js +++ b/packages/api/lib/routes.js @@ -116,7 +116,6 @@ const routes = { { path: `${managementPath}/boxes/:boxId`, method: 'get', handler: managementController.getBox, reference: 'api-Admin-getBox' }, { path: `${managementPath}/boxes/:boxId`, method: 'put', handler: managementController.updateBox, reference: 'api-Admin-updateBox' }, { path: `${managementPath}/boxes/delete`, method: 'post', handler: managementController.deleteBoxes, reference: 'api-Admin-deleteBoxes' }, - { path: `${managementPath}/users`, method: 'get', handler: managementController.listUsers, reference: 'api-Admin-listUsers' }, { path: `${managementPath}/users/:userId`, method: 'get', handler: managementController.getUser, reference: 'api-Admin-getUser' }, { path: `${managementPath}/users/:userId`, method: 'put', handler: managementController.updateUser, reference: 'api-Admin-updateUser' }, @@ -136,16 +135,21 @@ const initRoutes = function initRoutes (server) { } // Attach secured routes (needs authorization through jwt) - server.use(verifyJwt); - + // The .use() method runs now for all routes + // https://github.com/restify/node-restify/issues/1685 for (const route of routes.auth) { - server[route.method]({ path: route.path }, route.handler); + server[route.method]({ path: route.path }, [verifyJwt, route.handler]); } - server.use(checkPrivilege); - + // Attach verifyJwt and checkPrivilage routes (needs authorization through jwt) + // The .use() method runs now for all routes + // https://github.com/restify/node-restify/issues/1685 for (const route of routes.management) { - server[route.method]({ path: route.path }, route.handler); + server[route.method]({ path: route.path }, [ + verifyJwt, + checkPrivilege, + route.handler, + ]); } }; diff --git a/packages/api/package.json b/packages/api/package.json index 1cc23b47..7515a58e 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -31,7 +31,7 @@ "millify": "^5.0.1", "moment": "^2.29.4", "ms": "^2.1.3", - "restify": "^5.2.0", + "restify": "7.7.0", "restify-errors": "^8.0.2", "simple-statistics": "^7.7.0", "stringify-stream": "^1.0.5", diff --git a/packages/models/package.json b/packages/models/package.json index 3ad728f9..ee41fcd1 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -9,7 +9,7 @@ "@grpc/proto-loader": "^0.6.4", "@sensebox/osem-protos": "^1.1.0", "@sensebox/sketch-templater": "1.12.1", - "bcrypt": "^5.0.1", + "bcrypt": "^5.1.0", "bunyan": "^1.8.15", "config": "^3.3.6", "got": "^11.8.2", diff --git a/tests/tests-Dockerfile b/tests/tests-Dockerfile index 6b15bc88..0e8dbddf 100644 --- a/tests/tests-Dockerfile +++ b/tests/tests-Dockerfile @@ -1,25 +1,21 @@ -FROM node:14.18-alpine +FROM node:16.19.0-bullseye-slim # YARN_PRODUCTION=false is a workaround for https://github.com/yarnpkg/yarn/issues/4557 ENV NODE_ENV=production \ YARN_PRODUCTION=false -# taken from node:6-onbuild -RUN mkdir -p /usr/src/app +RUN apt-get update \ + && apt-get upgrade -y \ + && apt-get install -y --no-install-recommends git dumb-init + WORKDIR /usr/src/app # COPY in dev versions COPY . /usr/src/app -RUN apk --no-cache --virtual .build add build-base python2 git \ - && yarn install --pure-lockfile --production=false \ - && apk del .build -COPY . /usr/src/app +RUN yarn install --pure-lockfile --production=false -# for git 2.1.4 -RUN apk --no-cache --virtual .git add git \ - && yarn create-version-file \ - && rm -rf .git \ - && apk del .git +RUN yarn create-version-file \ + && rm -rf .git -CMD [ "yarn", "start" ] +CMD ["dumb-init", "yarn", "start"] diff --git a/tests/tests/004-users-test.js b/tests/tests/004-users-test.js index 7379366e..baf6bfd9 100644 --- a/tests/tests/004-users-test.js +++ b/tests/tests/004-users-test.js @@ -129,6 +129,8 @@ describe('openSenseMap API Routes: /users', function () { }); it('should deny to change email and password at the same time', function () { + this.timeout(120000); + return chakram.put(`${BASE_URL}/users/me`, { email: 'new-email@email.www', newPassword: '87654321' }, { headers: { 'Authorization': `Bearer ${jwt}` } }) .then(function (response) { expect(response).to.have.status(400); diff --git a/yarn.lock b/yarn.lock index 0b647695..b9599cea 100644 --- a/yarn.lock +++ b/yarn.lock @@ -56,20 +56,20 @@ protobufjs "^6.10.0" yargs "^16.1.1" -"@mapbox/node-pre-gyp@^1.0.0": - version "1.0.0" - resolved "https://registry.yarnpkg.com/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.0.tgz#2b809e701da0f6729b47fe78ad4b9dc187a7d2e5" - integrity sha512-mEaiD1CURETR/dBIiJAwz0M0Q0mH3gCW4pPMaIlNt97mdzYUVeqGcTJSamgJpS6Tg4tBHDrOJpjdh5fJTLnyNQ== +"@mapbox/node-pre-gyp@^1.0.10": + version "1.0.10" + resolved "https://registry.yarnpkg.com/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.10.tgz#8e6735ccebbb1581e5a7e652244cadc8a844d03c" + integrity sha512-4ySo4CjzStuprMwk35H5pPbkymjv1SF3jGLj6rAHp/xT/RF7TL7bd9CTm1xDY49K2qF7jmR/g7k+SkLETP6opA== dependencies: - detect-libc "^1.0.3" - http-proxy-agent "^4.0.1" - mkdirp "^1.0.4" - node-fetch "^2.6.1" + detect-libc "^2.0.0" + https-proxy-agent "^5.0.0" + make-dir "^3.1.0" + node-fetch "^2.6.7" nopt "^5.0.0" - npmlog "^4.1.2" + npmlog "^5.0.1" rimraf "^3.0.2" - semver "^7.3.4" - tar "^6.1.0" + semver "^7.3.5" + tar "^6.1.11" "@netflix/nerror@^1.0.0": version "1.1.3" @@ -163,11 +163,6 @@ dependencies: defer-to-connect "^2.0.0" -"@tootallnate/once@1": - version "1.1.2" - resolved "https://registry.yarnpkg.com/@tootallnate/once/-/once-1.1.2.tgz#ccb91445360179a04e7fe6aff78c00ffc1eeaf82" - integrity sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw== - "@turf/area@^6.3.0": version "6.3.0" resolved "https://registry.yarnpkg.com/@turf/area/-/area-6.3.0.tgz#cdd02f8ca51da2889dfc90a3c9e8fef5d1e04dca" @@ -444,15 +439,10 @@ ansi-colors@4.1.1, ansi-colors@^4.1.1: resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.1.tgz#cbb9ae256bf750af1eab344f229aa27fe94ba348" integrity sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA== -ansi-regex@^2.0.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" - integrity sha1-w7M6te42DYbg5ijwRorn7yfWVN8= - ansi-regex@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998" - integrity sha1-7QMXwyIGT3lGbAKWa922Bas32Zg= + version "3.0.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.1.tgz#123d6479e92ad45ad897d4054e3c7ca7db4944e1" + integrity sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw== ansi-regex@^5.0.0: version "5.0.0" @@ -492,18 +482,18 @@ apicache@^1.6.2: resolved "https://registry.yarnpkg.com/apicache/-/apicache-1.6.3.tgz#4441aa40f2a48c9dd6f11c73be937d563405355b" integrity sha512-jS3VfUFpQ9BesFQZcdd1vVYg3ZsO2kGPmTJHqycIYPAQs54r74CRiyj8DuzJpwzLwIfCBYzh4dy9Jt8xYbo27w== -aproba@^1.0.3: - version "1.2.0" - resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" - integrity sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw== +"aproba@^1.0.3 || ^2.0.0": + version "2.0.0" + resolved "https://registry.yarnpkg.com/aproba/-/aproba-2.0.0.tgz#52520b8ae5b569215b354efc0caa3fe1e45a8adc" + integrity sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ== -are-we-there-yet@~1.1.2: - version "1.1.5" - resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz#4b35c2944f062a8bfcda66410760350fe9ddfc21" - integrity sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w== +are-we-there-yet@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-2.0.0.tgz#372e0e7bd279d8e94c653aaa1f67200884bf3e1c" + integrity sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw== dependencies: delegates "^1.0.0" - readable-stream "^2.0.6" + readable-stream "^3.6.0" argparse@^1.0.7: version "1.0.10" @@ -562,9 +552,9 @@ aws4@^1.8.0: integrity sha512-wMHVg2EOHaMRxbzgFJ9gtjOOCrI80OHLG14rxi28XwOW8ux6IiEbRCGGGqCtdAIg4FQCbW20k9RsT4y3gJlFug== balanced-match@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" - integrity sha1-ibTRmasr7kneFk6gK4nORi1xt2c= + version "1.0.2" + resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" + integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== base64-js@^1.3.1: version "1.5.1" @@ -578,13 +568,13 @@ bcrypt-pbkdf@^1.0.0: dependencies: tweetnacl "^0.14.3" -bcrypt@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/bcrypt/-/bcrypt-5.0.1.tgz#f1a2c20f208e2ccdceea4433df0c8b2c54ecdf71" - integrity sha512-9BTgmrhZM2t1bNuDtrtIMVSmmxZBrJ71n8Wg+YgdjHuIWYF7SjjmCPZFB+/5i/o/PIeRpwVJR3P+NrpIItUjqw== +bcrypt@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/bcrypt/-/bcrypt-5.1.0.tgz#bbb27665dbc400480a524d8991ac7434e8529e17" + integrity sha512-RHBS7HI5N5tEnGTmtR/pppX0mmDSBpQ4aCBsj7CEQfYXDcO74A8sIBYcJMuCsis2E81zDxeENYhv66oZwLiA+Q== dependencies: - "@mapbox/node-pre-gyp" "^1.0.0" - node-addon-api "^3.1.0" + "@mapbox/node-pre-gyp" "^1.0.10" + node-addon-api "^5.0.0" binary-extensions@^2.0.0: version "2.0.0" @@ -658,7 +648,7 @@ buffer@^5.5.0: base64-js "^1.3.1" ieee754 "^1.1.13" -bunyan@^1.8.1, bunyan@^1.8.15: +bunyan@^1.8.12, bunyan@^1.8.15: version "1.8.15" resolved "https://registry.yarnpkg.com/bunyan/-/bunyan-1.8.15.tgz#8ce34ca908a17d0776576ca1b2f6cbd916e93b46" integrity sha512-0tECWShh6wUysgucJcBAoYegf3JJoZWibxdqhTm7OHPeT42qdjkZ29QCMcKwbgU1kiH+auSIasNRXMLWXafXig== @@ -841,14 +831,6 @@ cliui@^7.0.2: strip-ansi "^6.0.0" wrap-ansi "^7.0.0" -clone-regexp@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/clone-regexp/-/clone-regexp-1.0.1.tgz#051805cd33173375d82118fc0918606da39fd60f" - integrity sha512-Fcij9IwRW27XedRIJnSOEupS7RVcXtObJXbcUOX93UCLqqOdRpkvzKywOOSizmEK/Is3S/RHX9dLdfo6R1Q1mw== - dependencies: - is-regexp "^1.0.0" - is-supported-regexp-flag "^1.0.0" - clone-response@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/clone-response/-/clone-response-1.0.2.tgz#d1dc973920314df67fbeb94223b4ee350239e96b" @@ -861,11 +843,6 @@ clone@^1.0.2: resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.4.tgz#da309cc263df15994c688ca902179ca3c7cd7c7e" integrity sha1-2jCcwmPfFZlMaIypAheco8fNfH4= -code-point-at@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" - integrity sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c= - color-convert@^1.9.0: version "1.9.3" resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" @@ -890,6 +867,11 @@ color-name@~1.1.4: resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== +color-support@^1.1.2: + version "1.1.3" + resolved "https://registry.yarnpkg.com/color-support/-/color-support-1.1.3.tgz#93834379a1cc9a0c61f82f52f0d04322251bd5a2" + integrity sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg== + combined-stream@^1.0.6, combined-stream@~1.0.6: version "1.0.8" resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" @@ -913,7 +895,7 @@ component-emitter@^1.2.0: concat-map@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" - integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= + integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg== concat-stream@^2.0.0: version "2.0.0" @@ -939,21 +921,26 @@ config@^3.3.7: dependencies: json5 "^2.1.1" -console-control-strings@^1.0.0, console-control-strings@~1.1.0: +console-control-strings@^1.0.0, console-control-strings@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" - integrity sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4= + integrity sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ== cookiejar@^2.1.0, cookiejar@^2.1.1: version "2.1.3" resolved "https://registry.yarnpkg.com/cookiejar/-/cookiejar-2.1.3.tgz#fc7a6216e408e74414b90230050842dacda75acc" integrity sha512-JxbCBUdrfr6AQjOXrxoTvAMJO4HBTUIlBzslcJPAz+/KT8yk53fXun51u+RenNYvad/+Vc2DIz5o9UxlCDymFQ== -core-util-is@1.0.2, core-util-is@~1.0.0: +core-util-is@1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= +core-util-is@~1.0.0: + version "1.0.3" + resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.3.tgz#a6042d3634c2b27e9328f837b965fac83808db85" + integrity sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ== + cross-spawn@^7.0.2: version "7.0.3" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" @@ -982,12 +969,12 @@ css-what@^5.0.0: csv-generate@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/csv-generate/-/csv-generate-1.1.2.tgz#ec6b00edaed6e59ad9c20582f4c364e28b146240" - integrity sha1-7GsA7a7W5ZrZwgWC9MNk4osUYkA= + integrity sha512-RdVP7RqqBRZlOiFY/OocxlghhaqhTknXhz08GsZF46BrCkLqVtYMBPTLQSqXg8dq5B42C9CNngnx+jYkIRRWZQ== csv-parse@^1.3.3: version "1.3.3" resolved "https://registry.yarnpkg.com/csv-parse/-/csv-parse-1.3.3.tgz#d1cfd8743c2f849a0abb2fd544db56695d19a490" - integrity sha1-0c/YdDwvhJoKuy/VRNtWaV0ZpJA= + integrity sha512-byxnDBxM1AVF3YfmsK7Smop9/usNz7gAZYSo9eYp61TGcNXraJby1rAiLyJSt1/8Iho2qaxZOtZCOvQMXogPtg== csv-parse@^4.15.4: version "4.15.4" @@ -997,7 +984,7 @@ csv-parse@^4.15.4: csv-stringify@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/csv-stringify/-/csv-stringify-1.1.2.tgz#77a41526581bce3380f12b00d7c5bbac70c82b58" - integrity sha1-d6QVJlgbzjOA8SsA18W7rHDIK1g= + integrity sha512-3NmNhhd+AkYs5YtM1GEh01VR6PKj6qch2ayfQaltx5xpcAdThjnbbI5eT8CzRVpXfGKAxnmrSYLsNl/4f3eWiw== dependencies: lodash.get "~4.4.2" @@ -1006,10 +993,10 @@ csv-stringify@^5.6.2: resolved "https://registry.yarnpkg.com/csv-stringify/-/csv-stringify-5.6.2.tgz#e653783e2189c4c797fbb12abf7f4943c787caa9" integrity sha512-n3rIVbX6ylm1YsX2NEug9IaPV8xRnT+9/NNZbrA/bcHgOSSeqtWla6XnI/xmyu57wIw+ASCAoX1oM6EZtqJV0A== -csv@^1.1.0: +csv@^1.1.1: version "1.2.1" resolved "https://registry.yarnpkg.com/csv/-/csv-1.2.1.tgz#5231edfc1c7152512ec45781076a7a97ff525c0c" - integrity sha1-UjHt/BxxUlEuxFeBB2p6l/9SXAw= + integrity sha512-YUBhU5VuO3pABm+7JqT+AumSjQ8q6cT6WcNFJZCb5bVs5Mbp/DNop9GiMQZgWUQ7gHFtV10r7osO6Qs4BTQrrA== dependencies: csv-generate "^1.1.2" csv-parse "^1.3.3" @@ -1035,7 +1022,14 @@ debug@2.6.9, debug@^2.6.8: dependencies: ms "2.0.0" -debug@4, debug@4.3.1, debug@^4.0.1, debug@^4.1.1: +debug@4: + version "4.3.4" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" + integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== + dependencies: + ms "2.1.2" + +debug@4.3.1, debug@^4.0.1, debug@^4.1.1: version "4.3.1" resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.1.tgz#f0d229c505e0c6d8c49ac553d1b13dc183f6b2ee" integrity sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ== @@ -1105,17 +1099,17 @@ delayed-stream@~1.0.0: delegates@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" - integrity sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o= + integrity sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ== -detect-libc@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b" - integrity sha1-+hN8S9aY7fVc1c0CrFWfkaTEups= +detect-libc@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-2.0.1.tgz#e1897aa88fa6ad197862937fbc0441ef352ee0cd" + integrity sha512-463v3ZeIrcWtdgIg6vI6XUncguvr2TnGl4SzDXinkt9mSLpBJKXT3mW6xT3VQdDN11+WVs29pgvivTc4Lp8v+w== detect-node@^2.0.3: - version "2.0.4" - resolved "https://registry.yarnpkg.com/detect-node/-/detect-node-2.0.4.tgz#014ee8f8f669c5c58023da64b8179c083a28c46c" - integrity sha512-ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw== + version "2.1.0" + resolved "https://registry.yarnpkg.com/detect-node/-/detect-node-2.1.0.tgz#c9c70775a49c3d03bc2c06d9a73be550f978f8b1" + integrity sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g== diff@5.0.0: version "5.0.0" @@ -1240,7 +1234,7 @@ escalade@^3.1.1: escape-regexp-component@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/escape-regexp-component/-/escape-regexp-component-1.0.2.tgz#9c63b6d0b25ff2a88c3adbd18c5b61acc3b9faa2" - integrity sha1-nGO20LJf8qiMOtvRjFthrMO5+qI= + integrity sha512-B0yxafj1D1ZTNEHkFoQxz4iboZSfaZHhaNhIug7GcUCL4ZUrVSJZTmWUAkPOFaYDfi3RNT9XM082TuGE6jpmiQ== escape-string-regexp@4.0.0: version "4.0.0" @@ -1385,6 +1379,13 @@ esutils@^2.0.2: resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== +ewma@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/ewma/-/ewma-2.0.1.tgz#9876c1c491ac5733c8666001a3961a04c97cf1e8" + integrity sha512-MYYK17A76cuuyvkR7MnqLW4iFYPEi5Isl2qb8rXiWpLiwFS9dxW/rncuNnjjgSENuVqZQkIuR4+DChVL4g1lnw== + dependencies: + assert-plus "^1.0.0" + extend-object@1.x.x: version "1.0.0" resolved "https://registry.yarnpkg.com/extend-object/-/extend-object-1.0.0.tgz#42514f84015d1356caf5187969dfb2bc1bda0823" @@ -1398,7 +1399,7 @@ extend@^3.0.0, extend@~3.0.2: extsprintf@1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.2.0.tgz#5ad946c22f5b32ba7f8cd7426711c6e8a3fc2529" - integrity sha1-WtlGwi9bMrp/jNdCZxHG6KP8JSk= + integrity sha512-T3PYC6HucmF4OfunfZb5d1nRvTSvWYhsr/Og33HANcCuCtGPUtWVyt/tTs8SU9sR0SGh5Z/xQCuX/D72ph2H+A== extsprintf@1.3.0: version "1.3.0" @@ -1410,6 +1411,11 @@ extsprintf@^1.2.0, extsprintf@^1.4.0: resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.0.tgz#e2689f8f356fad62cca65a3a91c5df5f9551692f" integrity sha1-4mifjzVvrWLMplo6kcXfX5VRaS8= +fast-decode-uri-component@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/fast-decode-uri-component/-/fast-decode-uri-component-1.0.1.tgz#46f8b6c22b30ff7a81357d4f59abfae938202543" + integrity sha512-WKgKWg5eUxvRZGwW8FvfbaH7AXSh2cL+3j5fMGzUMCxWBJ3dV3a7Wz8y2f/uQ0e3B6WmodD3oS54jTQ9HVTIIg== + fast-deep-equal@^3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.1.tgz#545145077c501491e33b15ec408c294376e94ae4" @@ -1439,6 +1445,15 @@ fill-range@^7.0.1: dependencies: to-regex-range "^5.0.1" +find-my-way@^1.13.0: + version "1.18.1" + resolved "https://registry.yarnpkg.com/find-my-way/-/find-my-way-1.18.1.tgz#5db605eab7211ee6af7ab08eb4f568060aa8e9f6" + integrity sha512-5M9oQuUPNDxr7w7g65Rv2acToLUIjVUbnMsltXNQaSYWOwjf+2MBp7sMuY+pfO+OPCo2qwcxsr29VQQ09ouVMg== + dependencies: + fast-decode-uri-component "^1.0.0" + safe-regex "^1.1.0" + semver-store "^0.3.0" + find-up@5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/find-up/-/find-up-5.0.0.tgz#4c92819ecb7083561e4f4a240a86be5198f536fc" @@ -1488,12 +1503,7 @@ form-data@~2.3.2: combined-stream "^1.0.6" mime-types "^2.1.12" -formidable@^1.0.17: - version "1.2.2" - resolved "https://registry.yarnpkg.com/formidable/-/formidable-1.2.2.tgz#bf69aea2972982675f00865342b982986f6b8dd9" - integrity sha512-V8gLm+41I/8kguQ4/o1D3RIHRmhYFG4pnNyonvua+40rqcEmT4+V71yaZ3B457xbbgCsCfjSPi65u/W6vK1U5Q== - -formidable@^1.2.0: +formidable@^1.2.0, formidable@^1.2.1: version "1.2.6" resolved "https://registry.yarnpkg.com/formidable/-/formidable-1.2.6.tgz#d2a51d60162bbc9b4a055d8457a7c75315d1a168" integrity sha512-KcpbcpuLNOwrEjnbpMC0gS+X8ciDoZE1kkqzat4a8vrprf+s9pKNQ/QIwWfbfs4ltgmFl3MD177SNTkve3BwGQ== @@ -1508,7 +1518,7 @@ fs-minipass@^2.0.0: fs.realpath@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" - integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= + integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== fsevents@~2.3.1: version "2.3.2" @@ -1525,19 +1535,20 @@ functional-red-black-tree@^1.0.1: resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" integrity sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc= -gauge@~2.7.3: - version "2.7.4" - resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7" - integrity sha1-LANAXHU4w51+s3sxcCLjJfsBi/c= +gauge@^3.0.0: + version "3.0.2" + resolved "https://registry.yarnpkg.com/gauge/-/gauge-3.0.2.tgz#03bf4441c044383908bcfa0656ad91803259b395" + integrity sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q== dependencies: - aproba "^1.0.3" + aproba "^1.0.3 || ^2.0.0" + color-support "^1.1.2" console-control-strings "^1.0.0" - has-unicode "^2.0.0" - object-assign "^4.1.0" + has-unicode "^2.0.1" + object-assign "^4.1.1" signal-exit "^3.0.0" - string-width "^1.0.1" - strip-ansi "^3.0.1" - wide-align "^1.1.0" + string-width "^4.2.3" + strip-ansi "^6.0.1" + wide-align "^1.1.2" geojson-rbush@3.x: version "3.1.2" @@ -1589,7 +1600,7 @@ glob-parent@^5.0.0, glob-parent@~5.1.0: dependencies: is-glob "^4.0.1" -glob@7.1.6, glob@^7.1.3: +glob@7.1.6: version "7.1.6" resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6" integrity sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA== @@ -1612,6 +1623,18 @@ glob@^6.0.1: once "^1.3.0" path-is-absolute "^1.0.0" +glob@^7.1.3: + version "7.2.3" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" + integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== + dependencies: + fs.realpath "^1.0.0" + inflight "^1.0.4" + inherits "2" + minimatch "^3.1.1" + once "^1.3.0" + path-is-absolute "^1.0.0" + glob@^7.1.6: version "7.1.7" resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.7.tgz#3b193e9233f01d42d0b3f78294bbeeb418f94a90" @@ -1663,7 +1686,7 @@ growl@1.10.5: handle-thing@^1.2.5: version "1.2.5" resolved "https://registry.yarnpkg.com/handle-thing/-/handle-thing-1.2.5.tgz#fd7aad726bf1a5fd16dfc29b2f7a6601d27139c4" - integrity sha1-/Xqtcmvxpf0W38KbL3pmAdJxOcQ= + integrity sha512-Ld9EYcBflMUF6SsJLGDADVH50jSzLNIUUrOFlFGK/zwqimATg9+wY4jsLWCR7DZSxt2BfK0+liHUMdoR11bjLg== har-schema@^2.0.0: version "2.0.0" @@ -1693,10 +1716,10 @@ has-symbols@^1.0.1: resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.3.tgz#bb7b2c4349251dce87b125f7bdf874aa7c8b39f8" integrity sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A== -has-unicode@^2.0.0: +has-unicode@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" - integrity sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk= + integrity sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ== has@^1.0.3: version "1.0.3" @@ -1734,7 +1757,7 @@ hooks-fixed@2.0.2: hpack.js@^2.1.6: version "2.1.6" resolved "https://registry.yarnpkg.com/hpack.js/-/hpack.js-2.1.6.tgz#87774c0949e513f42e84575b3c45681fade2a0b2" - integrity sha1-h3dMCUnlE/QuhFdbPEVoH63ioLI= + integrity sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ== dependencies: inherits "^2.0.1" obuf "^1.0.0" @@ -1759,24 +1782,15 @@ http-cache-semantics@^4.0.0: http-deceiver@^1.2.7: version "1.2.7" resolved "https://registry.yarnpkg.com/http-deceiver/-/http-deceiver-1.2.7.tgz#fa7168944ab9a519d337cb0bec7284dc3e723d87" - integrity sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc= - -http-proxy-agent@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz#8a8c8ef7f5932ccf953c296ca8291b95aa74aa3a" - integrity sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg== - dependencies: - "@tootallnate/once" "1" - agent-base "6" - debug "4" + integrity sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw== -http-signature@^1.0.0: - version "1.3.4" - resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.3.4.tgz#a65b41193110b222364e776fd1ac848655a0e2f0" - integrity sha512-CbG3io8gUSIxNNSgq+XMjgpTMzAeVRipxVXjuGrDhH5M1a2kZ03w20s8FCLR1NjnnJj10KbvabvckmtQcYNb9g== +http-signature@^1.2.0: + version "1.3.6" + resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.3.6.tgz#cb6fbfdf86d1c974f343be94e87f7fc128662cf9" + integrity sha512-3adrsD6zqo4GsTqtO7FyrejHNv+NgiIfAfv68+jVlFmSr9OGy7zrxONceFRLKvnnZA5jbxQBX1u9PpB6Wi32Gw== dependencies: assert-plus "^1.0.0" - jsprim "^1.2.2" + jsprim "^2.0.2" sshpk "^1.14.1" http-signature@~1.2.0: @@ -1796,6 +1810,14 @@ http2-wrapper@^1.0.0-beta.5.2: quick-lru "^5.1.1" resolve-alpn "^1.0.0" +https-proxy-agent@^5.0.0: + version "5.0.1" + resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz#c59ef224a04fe8b754f3db0063a25ea30d0005d6" + integrity sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA== + dependencies: + agent-base "6" + debug "4" + iconv-lite@~0.4.13: version "0.4.24" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" @@ -1829,7 +1851,7 @@ imurmurhash@^0.1.4: inflight@^1.0.4: version "1.0.6" resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" - integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= + integrity sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA== dependencies: once "^1.3.0" wrappy "1" @@ -1856,17 +1878,10 @@ is-extglob@^2.1.1: resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= -is-fullwidth-code-point@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb" - integrity sha1-754xOG8DGn8NZDr4L95QxFfvAMs= - dependencies: - number-is-nan "^1.0.0" - is-fullwidth-code-point@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" - integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8= + integrity sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w== is-fullwidth-code-point@^3.0.0: version "3.0.0" @@ -1897,16 +1912,6 @@ is-plain-obj@^2.1.0: resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-2.1.0.tgz#45e42e37fccf1f40da8e5f76ee21515840c09287" integrity sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA== -is-regexp@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-regexp/-/is-regexp-1.0.0.tgz#fd2d883545c46bac5a633e7b9a09e87fa2cb5069" - integrity sha1-/S2INUXEa6xaYz57mgnof6LLUGk= - -is-supported-regexp-flag@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-supported-regexp-flag/-/is-supported-regexp-flag-1.0.1.tgz#21ee16518d2c1dd3edd3e9a0d57e50207ac364ca" - integrity sha512-3vcJecUUrpgCqc/ca0aWeNu64UGgxcvO60K/Fkr1N6RSvfGCTU60UKN68JDmKokgba0rFFJs12EnzOQa14ubKQ== - is-typedarray@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" @@ -1915,7 +1920,7 @@ is-typedarray@~1.0.0: isarray@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" - integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= + integrity sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ== isemail@^3.0.0: version "3.2.0" @@ -1979,6 +1984,11 @@ json-schema@0.2.3: resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13" integrity sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM= +json-schema@0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.4.0.tgz#f7de4cf6efab838ebaeb3236474cbba5a1930ab5" + integrity sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA== + json-stable-stringify-without-jsonify@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" @@ -2031,6 +2041,16 @@ jsprim@^1.2.2: json-schema "0.2.3" verror "1.10.0" +jsprim@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-2.0.2.tgz#77ca23dbcd4135cd364800d22ff82c2185803d4d" + integrity sha512-gqXddjPqQ6G40VdnI6T6yObEC+pDNvyP95wdQhkWkg7crHH3km5qP1FsOXEkzEQwnz6gz5qGTn1c2Y52wP3OyQ== + dependencies: + assert-plus "1.0.0" + extsprintf "1.3.0" + json-schema "0.4.0" + verror "1.10.0" + jwa@^1.4.1: version "1.4.1" resolved "https://registry.yarnpkg.com/jwa/-/jwa-1.4.1.tgz#743c32985cb9e98655530d53641b66c8645b039a" @@ -2138,7 +2158,7 @@ lodash.once@^4.0.0: resolved "https://registry.yarnpkg.com/lodash.once/-/lodash.once-4.1.1.tgz#0dd3971213c7c56df880977d504c88fb471a97ac" integrity sha1-DdOXEhPHxW34gJd9UEyI+0cal6w= -lodash@^4.14.0, lodash@^4.17.15, lodash@^4.17.20, lodash@^4.17.21, lodash@^4.17.4, lodash@^4.2.1: +lodash@^4.14.0, lodash@^4.17.10, lodash@^4.17.15, lodash@^4.17.20, lodash@^4.17.21, lodash@^4.2.1: version "4.17.21" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== @@ -2160,7 +2180,7 @@ lowercase-keys@^2.0.0: resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-2.0.0.tgz#2603e78b7b4b0006cbca2fbcc8a3202558ac9479" integrity sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA== -lru-cache@^4.0.1: +lru-cache@^4.1.3: version "4.1.5" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.5.tgz#8bbe50ea85bed59bc9e33dcab8235ee9bcf443cd" integrity sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g== @@ -2175,6 +2195,13 @@ lru-cache@^6.0.0: dependencies: yallist "^4.0.0" +make-dir@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f" + integrity sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw== + dependencies: + semver "^6.0.0" + methods@^1.1.1, methods@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" @@ -2199,7 +2226,7 @@ mime-types@^2.1.12, mime-types@~2.1.19: dependencies: mime-db "1.44.0" -mime@^1.2.11, mime@^1.4.1: +mime@^1.4.1, mime@^1.5.0: version "1.6.0" resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== @@ -2227,22 +2254,29 @@ minimalistic-assert@^1.0.0: resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7" integrity sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A== -"minimatch@2 || 3", minimatch@3.0.4, minimatch@^3.0.4: +"minimatch@2 || 3", minimatch@3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== dependencies: brace-expansion "^1.1.7" +minimatch@^3.0.4, minimatch@^3.1.1: + version "3.1.2" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" + integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== + dependencies: + brace-expansion "^1.1.7" + minimist@^1.1.0, minimist@^1.2.5: version "1.2.5" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== minipass@^3.0.0: - version "3.1.3" - resolved "https://registry.yarnpkg.com/minipass/-/minipass-3.1.3.tgz#7d42ff1f39635482e15f9cdb53184deebd5815fd" - integrity sha512-Mgd2GdMVzY+x3IJ+oHnVM+KG3lA5c8tnabyJKmHSaG2kAGpudxuOf8ToDkhumF7UzME7DecbQE9uOZhNm7PuJg== + version "3.3.4" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-3.3.4.tgz#ca99f95dd77c43c7a76bf51e6d200025eee0ffae" + integrity sha512-I9WPbWHCGu8W+6k1ZiGpPu0GkoKBeorkfKNuAFBNS1HNFJvke82sxvI5bzcCNpWPorkOO5QQ+zomzzwRxejXiw== dependencies: yallist "^4.0.0" @@ -2254,7 +2288,7 @@ minizlib@^2.1.1: minipass "^3.0.0" yallist "^4.0.0" -mkdirp@^1.0.3, mkdirp@^1.0.4: +mkdirp@^1.0.3: version "1.0.4" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== @@ -2444,16 +2478,16 @@ ncp@~2.0.0: integrity sha1-GVoh1sRuNh0vsSgbo4uR6d9727M= negotiator@^0.6.1: - version "0.6.2" - resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.2.tgz#feacf7ccf525a77ae9634436a64883ffeca346fb" - integrity sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw== + version "0.6.3" + resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.3.tgz#58e323a72fedc0d6f9cd4d31fe49f51479590ccd" + integrity sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg== -node-addon-api@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-3.1.0.tgz#98b21931557466c6729e51cb77cd39c965f42239" - integrity sha512-flmrDNB06LIl5lywUz7YlNGZH/5p0M7W28k8hzd9Lshtdh1wshD2Y+U4h9LD6KObOy1f+fEVdgprPrEymjM5uw== +node-addon-api@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-5.0.0.tgz#7d7e6f9ef89043befdb20c1989c905ebde18c501" + integrity sha512-CvkDw2OEnme7ybCykJpVcKH+uAOLV2qLqiyla128dN9TkEWfrYmxG6C2boDe5KcNQqZF3orkqzGgOMvZ/JNekA== -node-fetch@^2.6.1: +node-fetch@^2.6.7: version "2.6.7" resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.7.tgz#24de9fba827e3b4ae44dc8b20256a379160052ad" integrity sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ== @@ -2477,15 +2511,15 @@ normalize-url@^4.1.0: resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-4.5.1.tgz#0dd90cf1288ee1d1313b87081c9a5932ee48518a" integrity sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA== -npmlog@^4.1.2: - version "4.1.2" - resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" - integrity sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg== +npmlog@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-5.0.1.tgz#f06678e80e29419ad67ab964e0fa69959c1eb8b0" + integrity sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw== dependencies: - are-we-there-yet "~1.1.2" - console-control-strings "~1.1.0" - gauge "~2.7.3" - set-blocking "~2.0.0" + are-we-there-yet "^2.0.0" + console-control-strings "^1.1.0" + gauge "^3.0.0" + set-blocking "^2.0.0" nth-check@^2.0.0: version "2.0.1" @@ -2494,20 +2528,15 @@ nth-check@^2.0.0: dependencies: boolbase "^1.0.0" -number-is-nan@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" - integrity sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0= - oauth-sign@~0.9.0: version "0.9.0" resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455" integrity sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ== -object-assign@^4.1.0: +object-assign@^4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" - integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= + integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg== object-inspect@^1.9.0: version "1.12.0" @@ -2596,7 +2625,7 @@ path-exists@^4.0.0: path-is-absolute@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" - integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= + integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg== path-key@^3.1.0: version "3.1.1" @@ -2618,6 +2647,11 @@ picomatch@^2.0.4, picomatch@^2.2.1: resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.2.2.tgz#21f333e9b6b8eaff02468f5146ea406d345f4dad" integrity sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg== +pidusage@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/pidusage/-/pidusage-1.2.0.tgz#65ee96ace4e08a4cd3f9240996c85b367171ee92" + integrity sha512-OGo+iSOk44HRJ8q15AyG570UYxcm5u+R99DI8Khu8P3tKGkVu5EZX4ywHglWSTMNNXQ274oeGpYrvFEhDIFGPg== + polygon-clipping@^0.15.2: version "0.15.2" resolved "https://registry.yarnpkg.com/polygon-clipping/-/polygon-clipping-0.15.2.tgz#076199182bf23a4a6cf6c7003f3b81ecf30b2cb8" @@ -2672,7 +2706,7 @@ protobufjs@^6.10.0: pseudomap@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" - integrity sha1-8FKijacOYYkX7wqKw0wa5aaChrM= + integrity sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ== psl@^1.1.28: version "1.8.0" @@ -2697,11 +2731,6 @@ q@1.x.x: resolved "https://registry.yarnpkg.com/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7" integrity sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc= -qs@^6.2.1: - version "6.9.3" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.9.3.tgz#bfadcd296c2d549f1dffa560619132c977f5008e" - integrity sha512-EbZYNarm6138UKKq46tdx08Yo/q9ZhFoAXAI1meAFd2GtbRDhbZY2WQSICskT0c5q99aFzLG1D4nvTk9tqfXIw== - qs@^6.5.1: version "6.10.3" resolved "https://registry.yarnpkg.com/qs/-/qs-6.10.3.tgz#d6cde1b2ffca87b5aa57889816c5f81535e22e8e" @@ -2709,6 +2738,13 @@ qs@^6.5.1: dependencies: side-channel "^1.0.4" +qs@^6.5.2: + version "6.11.0" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.11.0.tgz#fd0d963446f7a65e1367e01abd85429453f0c37a" + integrity sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q== + dependencies: + side-channel "^1.0.4" + qs@~6.5.2: version "6.5.2" resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36" @@ -2756,7 +2792,7 @@ readable-stream@2.2.7: string_decoder "~1.0.0" util-deprecate "~1.0.1" -readable-stream@^2.0.1, readable-stream@^2.0.6, readable-stream@^2.2.9, readable-stream@^2.3.5: +readable-stream@^2.0.1, readable-stream@^2.2.9, readable-stream@^2.3.5: version "2.3.7" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57" integrity sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw== @@ -2886,10 +2922,10 @@ responselike@^2.0.0: dependencies: lowercase-keys "^2.0.0" -restify-errors@^4.2.3: - version "4.3.0" - resolved "https://registry.yarnpkg.com/restify-errors/-/restify-errors-4.3.0.tgz#ec90f30934d7f3119135181dfc303e30be601abe" - integrity sha1-7JDzCTTX8xGRNRgd/DA+ML5gGr4= +restify-errors@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/restify-errors/-/restify-errors-5.0.0.tgz#668717e100683eec6ce0d515f89ff1dbec254a8d" + integrity sha512-+vby9Kxf7qlzvbZSTIEGkIixkeHG+pVCl34dk6eKnL+ua4pCezpdLT/1/eabzPZb65ADrgoc04jeWrrF1E1pvQ== dependencies: assert-plus "^1.0.0" lodash "^4.2.1" @@ -2908,33 +2944,40 @@ restify-errors@^8.0.2: optionalDependencies: safe-json-stringify "^1.0.4" -restify@^5.2.0: - version "5.2.1" - resolved "https://registry.yarnpkg.com/restify/-/restify-5.2.1.tgz#f04cdc1bcf763ec085b5e5a01610819b21d1f148" - integrity sha512-OZbqEvRm04Px+vXm3d31sI58HjN2qRaY6O6tA9LGRgyLZJ5+oW4qaLCdKddXfUX6MjtwAc+LLkDQmDbYUifLXA== +restify@7.7.0: + version "7.7.0" + resolved "https://registry.yarnpkg.com/restify/-/restify-7.7.0.tgz#4e0e3884fc8716f14bea292c2957ca706fc427f7" + integrity sha512-BGirRv70pIy5W7tqX7s7+NNjBcjzU2YYgV4KABVbR5g8JjMeucgUzaf2VvTUSmz83qMZAuQ/gXEmPFyPHIcfJQ== dependencies: assert-plus "^1.0.0" - bunyan "^1.8.1" - clone-regexp "^1.0.0" - csv "^1.1.0" + bunyan "^1.8.12" + csv "^1.1.1" escape-regexp-component "^1.0.2" - formidable "^1.0.17" - http-signature "^1.0.0" - lodash "^4.17.4" - lru-cache "^4.0.1" - mime "^1.2.11" + ewma "^2.0.1" + find-my-way "^1.13.0" + formidable "^1.2.1" + http-signature "^1.2.0" + lodash "^4.17.10" + lru-cache "^4.1.3" + mime "^1.5.0" negotiator "^0.6.1" - once "^1.3.0" - qs "^6.2.1" - restify-errors "^4.2.3" - semver "^5.0.1" - spdy "^3.3.3" - uuid "^3.0.0" + once "^1.4.0" + pidusage "^1.2.0" + qs "^6.5.2" + restify-errors "^5.0.0" + semver "^5.4.1" + spdy "^3.4.7" + uuid "^3.1.0" vasync "^1.6.4" - verror "^1.9.0" + verror "^1.10.0" optionalDependencies: dtrace-provider "^0.8.1" +ret@~0.1.10: + version "0.1.15" + resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc" + integrity sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg== + rimraf@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" @@ -2964,6 +3007,13 @@ safe-json-stringify@^1.0.3, safe-json-stringify@^1.0.4, safe-json-stringify@~1: resolved "https://registry.yarnpkg.com/safe-json-stringify/-/safe-json-stringify-1.2.0.tgz#356e44bc98f1f93ce45df14bcd7c01cda86e0afd" integrity sha512-gH8eh2nZudPQO6TytOvbxnuhYBOvDBBLW52tz5q6X58lJcd/tkmqFR+5Z9adS8aJtURSXWThWy/xJtJwixErvg== +safe-regex@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e" + integrity sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg== + dependencies: + ret "~0.1.10" + "safer-buffer@>= 2.1.2 < 3", safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0: version "2.1.2" resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" @@ -2972,20 +3022,37 @@ safe-json-stringify@^1.0.3, safe-json-stringify@^1.0.4, safe-json-stringify@~1: select-hose@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/select-hose/-/select-hose-2.0.0.tgz#625d8658f865af43ec962bfc376a37359a4994ca" - integrity sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo= + integrity sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg== + +semver-store@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/semver-store/-/semver-store-0.3.0.tgz#ce602ff07df37080ec9f4fb40b29576547befbe9" + integrity sha512-TcZvGMMy9vodEFSse30lWinkj+JgOBvPn8wRItpQRSayhc+4ssDs335uklkfvQQJgL/WvmHLVj4Ycv2s7QCQMg== -semver@^5.0.1, semver@^5.1.0, semver@^5.6.0: +semver@^5.1.0, semver@^5.4.1, semver@^5.6.0: version "5.7.1" resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== -semver@^7.2.1, semver@^7.3.4: +semver@^6.0.0: + version "6.3.0" + resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" + integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== + +semver@^7.2.1: version "7.3.4" resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.4.tgz#27aaa7d2e4ca76452f98d3add093a72c943edc97" integrity sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw== dependencies: lru-cache "^6.0.0" +semver@^7.3.5: + version "7.3.8" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.8.tgz#07a78feafb3f7b32347d725e33de7e2a2df67798" + integrity sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A== + dependencies: + lru-cache "^6.0.0" + serialize-javascript@5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-5.0.1.tgz#7886ec848049a462467a97d3d918ebb2aaf934f4" @@ -2993,10 +3060,10 @@ serialize-javascript@5.0.1: dependencies: randombytes "^2.1.0" -set-blocking@~2.0.0: +set-blocking@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" - integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc= + integrity sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw== shebang-command@^2.0.0: version "2.0.0" @@ -3020,9 +3087,9 @@ side-channel@^1.0.4: object-inspect "^1.9.0" signal-exit@^3.0.0: - version "3.0.3" - resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.3.tgz#a1410c2edd8f077b08b4e253c8eacfcaf057461c" - integrity sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA== + version "3.0.7" + resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" + integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== simple-statistics@^7.7.0: version "7.7.0" @@ -3066,10 +3133,10 @@ spdy-transport@^2.0.18: safe-buffer "^5.0.1" wbuf "^1.7.2" -spdy@^3.3.3: +spdy@^3.4.7: version "3.4.7" resolved "https://registry.yarnpkg.com/spdy/-/spdy-3.4.7.tgz#42ff41ece5cc0f99a3a6c28aabb73f5c3b03acbc" - integrity sha1-Qv9B7OXMD5mjpsKKq7c/XDsDrLw= + integrity sha512-jEvgkLRpMza5GON0oDzvLTLMAVfB5BxeOPbsWyisEyE8IbxL6cCiKbr8xrJdScs6XoOUp7pQy4PI+GVczHbO4w== dependencies: debug "^2.6.8" handle-thing "^1.2.5" @@ -3095,7 +3162,22 @@ sprintf-js@~1.0.2: resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= -sshpk@^1.14.1, sshpk@^1.7.0: +sshpk@^1.14.1: + version "1.17.0" + resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.17.0.tgz#578082d92d4fe612b13007496e543fa0fbcbe4c5" + integrity sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ== + dependencies: + asn1 "~0.2.3" + assert-plus "^1.0.0" + bcrypt-pbkdf "^1.0.0" + dashdash "^1.12.0" + ecc-jsbn "~0.1.1" + getpass "^0.1.1" + jsbn "~0.1.0" + safer-buffer "^2.0.2" + tweetnacl "~0.14.0" + +sshpk@^1.7.0: version "1.16.1" resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.16.1.tgz#fb661c0bef29b39db40769ee39fa70093d6f6877" integrity sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg== @@ -3130,16 +3212,7 @@ stream-shift@^1.0.0: stream-transform@^0.2.2: version "0.2.2" resolved "https://registry.yarnpkg.com/stream-transform/-/stream-transform-0.2.2.tgz#75867487f49528f8bf1d82499658753d02df7838" - integrity sha1-dYZ0h/SVKPi/HYJJllh1PQLfeDg= - -string-width@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" - integrity sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M= - dependencies: - code-point-at "^1.0.0" - is-fullwidth-code-point "^1.0.0" - strip-ansi "^3.0.0" + integrity sha512-VfCjIZ8fk0v81py/OJef/s8YFic5HWkV53eeHjGBjFysySVqBVb3/GSwDUOF/E4yOrFF14y1JN6irTHQP1S0Gw== "string-width@^1.0.2 || 2": version "2.1.1" @@ -3149,6 +3222,15 @@ string-width@^1.0.1: is-fullwidth-code-point "^2.0.0" strip-ansi "^4.0.0" +"string-width@^1.0.2 || 2 || 3 || 4", string-width@^4.2.3: + version "4.2.3" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" + integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== + dependencies: + emoji-regex "^8.0.0" + is-fullwidth-code-point "^3.0.0" + strip-ansi "^6.0.1" + string-width@^4.1.0, string-width@^4.2.0: version "4.2.0" resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.0.tgz#952182c46cc7b2c313d1596e623992bd163b72b5" @@ -3158,15 +3240,6 @@ string-width@^4.1.0, string-width@^4.2.0: is-fullwidth-code-point "^3.0.0" strip-ansi "^6.0.0" -string-width@^4.2.3: - version "4.2.3" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" - integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== - dependencies: - emoji-regex "^8.0.0" - is-fullwidth-code-point "^3.0.0" - strip-ansi "^6.0.1" - string_decoder@^1.1.1: version "1.3.0" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" @@ -3205,17 +3278,10 @@ stringify-stream@^1.0.5: dependencies: readable-stream "~2.1.0" -strip-ansi@^3.0.0, strip-ansi@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" - integrity sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8= - dependencies: - ansi-regex "^2.0.0" - strip-ansi@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f" - integrity sha1-qEeQIusaw2iocTibY1JixQXuNo8= + integrity sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow== dependencies: ansi-regex "^3.0.0" @@ -3285,10 +3351,10 @@ table@^6.0.4: slice-ansi "^4.0.0" string-width "^4.2.0" -tar@^6.1.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/tar/-/tar-6.1.0.tgz#d1724e9bcc04b977b18d5c573b333a2207229a83" - integrity sha512-DUCttfhsnLCjwoDoFcI+B2iJgYa93vBnDUATYEeRx6sntCTdN01VnqsIuTlALXla/LWooNg0yEGeB+Y8WdFxGA== +tar@^6.1.11: + version "6.1.12" + resolved "https://registry.yarnpkg.com/tar/-/tar-6.1.12.tgz#3b742fb05669b55671fb769ab67a7791ea1a62e6" + integrity sha512-jU4TdemS31uABHd+Lt5WEYJuzn+TJTCBLljvIAHZOz6M9Os5pJ4dD+vRFLxPa/n3T0iEFzpi+0x1UfuDZYbRMw== dependencies: chownr "^2.0.0" fs-minipass "^2.0.0" @@ -3320,7 +3386,7 @@ tough-cookie@~2.5.0: tr46@~0.0.3: version "0.0.3" resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" - integrity sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o= + integrity sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw== tunnel-agent@^0.6.0: version "0.6.0" @@ -3400,7 +3466,7 @@ util-deprecate@^1.0.1, util-deprecate@~1.0.1: resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= -uuid@^3.0.0, uuid@^3.3.2: +uuid@^3.1.0, uuid@^3.3.2: version "3.4.0" resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee" integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A== @@ -3418,11 +3484,11 @@ v8-compile-cache@^2.0.3: vasync@^1.6.4: version "1.6.4" resolved "https://registry.yarnpkg.com/vasync/-/vasync-1.6.4.tgz#dfe93616ad0e7ae801b332a9d88bfc5cdc8e1d1f" - integrity sha1-3+k2Fq0OeugBszKp2Iv8XNyOHR8= + integrity sha512-3oQMomVgQgHzNe5iKuT8PGOhMCQcg1wfh00Nh/Kl39ERdTlw/uNS7kbrhEraDMDKWHdDdc0iBFahPEd/Ft2b+A== dependencies: verror "1.6.0" -verror@1.10.0, verror@^1.8.1, verror@^1.9.0: +verror@1.10.0: version "1.10.0" resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400" integrity sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA= @@ -3434,10 +3500,19 @@ verror@1.10.0, verror@^1.8.1, verror@^1.9.0: verror@1.6.0: version "1.6.0" resolved "https://registry.yarnpkg.com/verror/-/verror-1.6.0.tgz#7d13b27b1facc2e2da90405eb5ea6e5bdd252ea5" - integrity sha1-fROyex+swuLakEBetepuW90lLqU= + integrity sha512-bIOaZx4+Bf6a7sIORfmYnyKLDLk/lhVym6rjYlq+vkitYKnhFmUpmPpDTCltWFrUTlGKs6sCeoDWfMA0oOOneA== dependencies: extsprintf "1.2.0" +verror@^1.10.0, verror@^1.8.1: + version "1.10.1" + resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.1.tgz#4bf09eeccf4563b109ed4b3d458380c972b0cdeb" + integrity sha512-veufcmxri4e3XSrT0xwfUR7kguIkaxBeosDg00yDWhk49wdwkSUrvvsm7nc75e1PUyvIeZj6nS8VQRYz2/S4Xg== + dependencies: + assert-plus "^1.0.0" + core-util-is "1.0.2" + extsprintf "^1.2.0" + wbuf@^1.1.0, wbuf@^1.7.2: version "1.7.3" resolved "https://registry.yarnpkg.com/wbuf/-/wbuf-1.7.3.tgz#c1d8d149316d3ea852848895cb6a0bfe887b87df" @@ -3448,12 +3523,12 @@ wbuf@^1.1.0, wbuf@^1.7.2: webidl-conversions@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" - integrity sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE= + integrity sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ== whatwg-url@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d" - integrity sha1-lmRU6HZUYuN2RNNib2dCzotwll0= + integrity sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw== dependencies: tr46 "~0.0.3" webidl-conversions "^3.0.0" @@ -3465,13 +3540,20 @@ which@2.0.2, which@^2.0.1: dependencies: isexe "^2.0.0" -wide-align@1.1.3, wide-align@^1.1.0: +wide-align@1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.3.tgz#ae074e6bdc0c14a431e804e624549c633b000457" integrity sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA== dependencies: string-width "^1.0.2 || 2" +wide-align@^1.1.2: + version "1.1.5" + resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.5.tgz#df1d4c206854369ecf3c9a4898f1b23fbd9d15d3" + integrity sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg== + dependencies: + string-width "^1.0.2 || 2 || 3 || 4" + word-wrap@^1.2.3, word-wrap@~1.2.3: version "1.2.3" resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c" @@ -3494,7 +3576,7 @@ wrap-ansi@^7.0.0: wrappy@1: version "1.0.2" resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" - integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= + integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== ws@^7.5.0: version "7.5.4" @@ -3514,7 +3596,7 @@ y18n@^5.0.5: yallist@^2.1.2: version "2.1.2" resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" - integrity sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI= + integrity sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A== yallist@^4.0.0: version "4.0.0" From 2094417a336dd24be70524fae72da490a5bf19bd Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Wed, 4 Jan 2023 14:08:24 +0100 Subject: [PATCH 227/337] Remove own mongodb image and use original mongo image directly (#688) --- .gitignore | 6 ++++++ {images => .scripts}/mongodb/osem_admin.sh | 0 .scripts/mongodb/osem_seed_boxes.sh | 10 ++++++++++ .scripts/mongodb/osem_seed_measurements.sh | 9 +++++++++ CONTRIBUTING.md | 7 +++---- docker-compose.yml | 19 +++++++++---------- dumps/.gitkeep | 0 images/mongodb/Dockerfile | 6 ------ images/mongodb/README.md | 3 --- 9 files changed, 37 insertions(+), 23 deletions(-) rename {images => .scripts}/mongodb/osem_admin.sh (100%) create mode 100644 .scripts/mongodb/osem_seed_boxes.sh create mode 100644 .scripts/mongodb/osem_seed_measurements.sh create mode 100644 dumps/.gitkeep delete mode 100644 images/mongodb/Dockerfile delete mode 100644 images/mongodb/README.md diff --git a/.gitignore b/.gitignore index f208467a..f4867d4a 100644 --- a/.gitignore +++ b/.gitignore @@ -26,3 +26,9 @@ dev_run_migration.sh development.json userimages* + +# exclude everything +dumps/* + +# exception to the rule +!dumps/.gitkeep diff --git a/images/mongodb/osem_admin.sh b/.scripts/mongodb/osem_admin.sh similarity index 100% rename from images/mongodb/osem_admin.sh rename to .scripts/mongodb/osem_admin.sh diff --git a/.scripts/mongodb/osem_seed_boxes.sh b/.scripts/mongodb/osem_seed_boxes.sh new file mode 100644 index 00000000..e29265f6 --- /dev/null +++ b/.scripts/mongodb/osem_seed_boxes.sh @@ -0,0 +1,10 @@ + +#!/bin/bash + +USER=${OSEM_dbuser:-"admin"} +DATABASE=OSeM-api +PASS=${OSEM_dbuserpass:-"admin"} + +echo "Going to restore openSenseMap boxes export" +mongorestore --db OSeM-api --username $USER --password $PASS --authenticationDatabase OSeM-api --gzip --archive=./exports/boxes +echo "Export was restored" \ No newline at end of file diff --git a/.scripts/mongodb/osem_seed_measurements.sh b/.scripts/mongodb/osem_seed_measurements.sh new file mode 100644 index 00000000..31c5d319 --- /dev/null +++ b/.scripts/mongodb/osem_seed_measurements.sh @@ -0,0 +1,9 @@ +#!/bin/bash + +USER=${OSEM_dbuser:-"admin"} +DATABASE=OSeM-api +PASS=${OSEM_dbuserpass:-"admin"} + +echo "Going to restore openSenseMap measurements export" +mongorestore --db OSeM-api --username $USER --password $PASS --authenticationDatabase OSeM-api --gzip --archive=./exports/measurements +echo "Export was restored" \ No newline at end of file diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index e83988ff..19063e44 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -27,11 +27,10 @@ To install all dependencies, run ### Starting the project locally -Before starting the development database, create the following network +If you have some MongoDB dumps of `boxes` or `measurements` place them within the `dumps` folder and comment in the +volume mappings within the `docker-compose.yml`. The dumps will be seeded for you. - docker network create api-db-network - -Afterwards, start your development database +Start your development database docker-compose up -d diff --git a/docker-compose.yml b/docker-compose.yml index c0801065..fcba270a 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,19 +1,18 @@ version: "3.9" +volumes: + mongo-data: + services: db: - build: - context: ./images/mongodb + image: mongo:5 container_name: osem-dev-mongo ports: - "27017:27017" volumes: - mongo-data:/data/db - networks: - - api-db-network - -volumes: - mongo-data: -networks: - api-db-network: - external: true + # - ./dumps/boxes:/exports/boxes + # - ./dumps/measurements:/exports/measurements + - ./.scripts/mongodb/osem_admin.sh:/docker-entrypoint-initdb.d/osem_admin.sh + # - ./.scripts/mongodb/osem_seed_boxes.sh:/docker-entrypoint-initdb.d/osem_seed_boxes.sh + # - ./.scripts/mongodb/osem_seed_measurements.sh:/docker-entrypoint-initdb.d/osem_seed_measurements.sh diff --git a/dumps/.gitkeep b/dumps/.gitkeep new file mode 100644 index 00000000..e69de29b diff --git a/images/mongodb/Dockerfile b/images/mongodb/Dockerfile deleted file mode 100644 index 1a38d8a7..00000000 --- a/images/mongodb/Dockerfile +++ /dev/null @@ -1,6 +0,0 @@ -FROM mongo:5 - -LABEL org.opencontainers.image.source https://github.com/sensebox/openSenseMap-API/tree/master/images/mongodb -LABEL org.opencontainers.image.description "MongoDB development database for openSenseMap API" - -COPY ./osem_admin.sh /docker-entrypoint-initdb.d diff --git a/images/mongodb/README.md b/images/mongodb/README.md deleted file mode 100644 index a9ab59c7..00000000 --- a/images/mongodb/README.md +++ /dev/null @@ -1,3 +0,0 @@ -# osem-dev-mongo - -MongoDB development database for openSenseMap API From a2d0b286a37693efe4f761491949dd4100bfc42d Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Wed, 4 Jan 2023 16:40:11 +0100 Subject: [PATCH 228/337] Fix mattermost message escaping (#689) --- packages/api/lib/controllers/boxesController.js | 10 +++++++++- packages/api/lib/controllers/managementController.js | 4 +++- packages/api/lib/helpers/escapeMarkdown.js | 10 +++++----- 3 files changed, 17 insertions(+), 7 deletions(-) diff --git a/packages/api/lib/controllers/boxesController.js b/packages/api/lib/controllers/boxesController.js index 7894e62b..7ef90bfc 100644 --- a/packages/api/lib/controllers/boxesController.js +++ b/packages/api/lib/controllers/boxesController.js @@ -411,7 +411,15 @@ const postNewBox = async function postNewBox (req, res, next) { newBox = await Box.populate(newBox, Box.BOX_SUB_PROPS_FOR_POPULATION); res.send(201, { message: 'Box successfully created', data: newBox }); clearCache(['getBoxes', 'getStats']); - postToMattermost(`New Box: ${req.user.name} (${redactEmail(req.user.email)}) just registered "${newBox.name}" (${newBox.model}): `); + postToMattermost( + `New Box: ${req.user.name} (${redactEmail( + req.user.email + )}) just registered "${newBox.name}" (${ + newBox.model + }): [https://opensensemap.org/explore/${ + newBox._id + }](https://opensensemap.org/explore/${newBox._id})` + ); } catch (err) { handleError(err, next); } diff --git a/packages/api/lib/controllers/managementController.js b/packages/api/lib/controllers/managementController.js index e1da3ce4..ea377c35 100644 --- a/packages/api/lib/controllers/managementController.js +++ b/packages/api/lib/controllers/managementController.js @@ -111,7 +111,9 @@ const updateBox = async function updateBox (req, res, next) { const user = await User.findUserOfBox(boxId); box.owner = user.toJSON({ includeSecrets: true }); - postToMattermost(`Management Action: Box updated: ${req.user.name} (${req.user.email}) just updated "${box.name}" (${box.model}): `); + postToMattermost( + `Management Action: Box updated: ${req.user.name} (${req.user.email}) just updated "${box.name}" (${box.model}): [https://opensensemap.org/explore/${box._id}](https://opensensemap.org/explore/${box._id})` + ); res.send({ code: 'Ok', data: box }); clearCache(['getBoxes']); } catch (err) { diff --git a/packages/api/lib/helpers/escapeMarkdown.js b/packages/api/lib/helpers/escapeMarkdown.js index ea72ed69..7866f2aa 100644 --- a/packages/api/lib/helpers/escapeMarkdown.js +++ b/packages/api/lib/helpers/escapeMarkdown.js @@ -3,11 +3,11 @@ const replacements = [ [/\*/g, '\\*', 'asterisks'], [/#/g, '\\#', 'number signs'], - [/\//g, '\\/', 'slashes'], - [/\(/g, '\\(', 'parentheses'], - [/\)/g, '\\)', 'parentheses'], - [/\[/g, '\\[', 'square brackets'], - [/\]/g, '\\]', 'square brackets'], + // [/\//g, '\\/', 'slashes'], + // [/\(/g, '\\(', 'parentheses'], + // [/\)/g, '\\)', 'parentheses'], + // [/\[/g, '\\[', 'square brackets'], + // [/\]/g, '\\]', 'square brackets'], [//g, '>', 'angle brackets'], [/_/g, '\\_', 'underscores'], From 31c5ab44a12f6b2c2ff15b1a09705068ac431290 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Thu, 5 Jan 2023 11:44:13 +0100 Subject: [PATCH 229/337] Add count parameter for getLatestMeasurements (#588) * Add count parameter for getLatestMeasurements * Add projection and restructure lastMeasurements * add tests and doc for count measurement feature Co-authored-by: Umut Tas --- docker-compose.yml | 2 +- .../lib/controllers/measurementsController.js | 27 +++++++++- .../models/src/measurement/measurement.js | 53 +++++++++++++++++++ tests/tests/007-download-data-test.js | 12 +++++ 4 files changed, 92 insertions(+), 2 deletions(-) diff --git a/docker-compose.yml b/docker-compose.yml index fcba270a..073ffffd 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -15,4 +15,4 @@ services: # - ./dumps/measurements:/exports/measurements - ./.scripts/mongodb/osem_admin.sh:/docker-entrypoint-initdb.d/osem_admin.sh # - ./.scripts/mongodb/osem_seed_boxes.sh:/docker-entrypoint-initdb.d/osem_seed_boxes.sh - # - ./.scripts/mongodb/osem_seed_measurements.sh:/docker-entrypoint-initdb.d/osem_seed_measurements.sh + # - ./.scripts/mongodb/osem_seed_measurements.sh:/docker-entrypoint-initdb.d/osem_seed_measurements.sh \ No newline at end of file diff --git a/packages/api/lib/controllers/measurementsController.js b/packages/api/lib/controllers/measurementsController.js index e9e031e8..38b4ca3e 100644 --- a/packages/api/lib/controllers/measurementsController.js +++ b/packages/api/lib/controllers/measurementsController.js @@ -19,6 +19,7 @@ const * @apiGroup Measurements * @apiName getLatestMeasurements * @apiUse BoxIdParam + * @apiParam {NumberNumber=1-100} [count] Number of measurements to be retrieved for every sensor. */ /** * @api {get} /boxes/:senseBoxId/sensors/:sensorId Get latest measurements of a sensor @@ -35,7 +36,30 @@ const getLatestMeasurements = async function getLatestMeasurements (req, res, ne let box; try { - box = await Box.findBoxById(req._userParams.boxId, { onlyLastMeasurements: true }); + if (req._userParams.count) { + box = await Box.findBoxById(req._userParams.boxId, { + populate: false, + onlyLastMeasurements: false, + count: req._userParams.count, + projection: { + name: 1, + lastMeasurementAt: 1, + sensors: 1, + grouptag: 1 + } + }); + + const measurements = await Measurement.findLatestMeasurementsForSensorsWithCount(box, req._userParams.count); + for (let index = 0; index < box.sensors.length; index++) { + const sensor = box.sensors[index]; + const values = measurements.find(elem => elem._id.equals(sensor._id)); + sensor['lastMeasurements'] = values; + } + } else { + box = await Box.findBoxById(req._userParams.boxId, { + onlyLastMeasurements: true + }); + } } catch (err) { handleError(err, next); @@ -413,6 +437,7 @@ module.exports = { retrieveParameters([ { predef: 'boxId', required: true }, { predef: 'sensorId' }, + { name: 'count', dataType: 'Integer', min: 1, max: 100, required: false }, { name: 'onlyValue', required: false } ]), getLatestMeasurements diff --git a/packages/models/src/measurement/measurement.js b/packages/models/src/measurement/measurement.js index bf8d7e04..c5411927 100644 --- a/packages/models/src/measurement/measurement.js +++ b/packages/models/src/measurement/measurement.js @@ -86,6 +86,59 @@ measurementSchema.statics.findLatestMeasurementsForSensors = function findLatest .exec(); }; +measurementSchema.statics.findLatestMeasurementsForSensorsWithCount = function findLatestMeasurementsForSensorsWithCount (box, count) { + const match = { + $or: [] + }; + for (let index = 0; index < box.sensors.length; index++) { + const sensor = box.sensors[index]; + match.$or.push({ + sensor_id: sensor._id + }); + } + + return this.aggregate([ + { + $match: match, + }, + { + $sort: { + createdAt: -1, + }, + }, + { + $limit: count * box.sensors.length, + }, + { + $group: { + _id: '$sensor_id', + measurements: { + $push: { + value: '$value', + createdAt: '$createdAt', + } + }, + fromDate: { + $last: '$createdAt', + }, + toDate: { + $first: '$createdAt', + }, + }, + }, + { + $project: { + _id: 1, + measurements: { + $slice: ['$measurements', count], + }, + fromDate: 1, + toDate: 1, + }, + }, + ]).exec(); +}; + measurementSchema.statics.getMeasurementsStream = function getMeasurementsStream ({ fromDate, toDate, sensorId }) { const queryLimit = 10000; diff --git a/tests/tests/007-download-data-test.js b/tests/tests/007-download-data-test.js index d5fb8c93..3df170f3 100644 --- a/tests/tests/007-download-data-test.js +++ b/tests/tests/007-download-data-test.js @@ -194,6 +194,18 @@ describe('downloading data', function () { }); }); + it('should return the sensors of a box with 3 measurements for /boxes/:boxid/sensors?count=3 GET', function () { + return chakram.get(`${BASE_URL}/boxes/${boxIds[0]}/sensors?count=3`) + .then(function (response) { + expect(response).to.have.status(200); + expect(response).to.have.header('content-type', 'application/json; charset=utf-8'); + expect(response).to.have.schema(boxSensorsSchema); + expect(response.body.sensors[0].lastMeasurements.measurements.length).to.be.equal(3); + + return chakram.wait(); + }); + }); + it('should return a single sensor of a box for /boxes/:boxid/sensors/:sensorId GET', function () { return chakram.get(`${BASE_URL}/boxes/${boxes[0]._id}/sensors/${boxes[0].sensors[0]._id}`) .then(function (response) { From d9f76421509ead638e8bb22c41ba87c5c986907b Mon Sep 17 00:00:00 2001 From: umut0 Date: Thu, 5 Jan 2023 11:50:46 +0100 Subject: [PATCH 230/337] Feat download by grouptag (#660) * download measurements by grouptag * allow multiple grouptags and clean code * tests and docs for download by grouptag Co-authored-by: Matthias Pfeil --- docker-compose.yml | 3 +- .../lib/controllers/measurementsController.js | 47 +++++++++++++++++++ packages/api/lib/routes.js | 1 + packages/models/src/box/box.js | 40 ++++++++++++++++ tests/tests/005-create-boxes-test.js | 37 ++++++++++++++- tests/tests/007-download-data-test.js | 16 +++++++ 6 files changed, 142 insertions(+), 2 deletions(-) diff --git a/docker-compose.yml b/docker-compose.yml index 073ffffd..b3728c08 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -15,4 +15,5 @@ services: # - ./dumps/measurements:/exports/measurements - ./.scripts/mongodb/osem_admin.sh:/docker-entrypoint-initdb.d/osem_admin.sh # - ./.scripts/mongodb/osem_seed_boxes.sh:/docker-entrypoint-initdb.d/osem_seed_boxes.sh - # - ./.scripts/mongodb/osem_seed_measurements.sh:/docker-entrypoint-initdb.d/osem_seed_measurements.sh \ No newline at end of file + # - ./.scripts/mongodb/osem_seed_measurements.sh:/docker-entrypoint-initdb.d/osem_seed_measurements.sh + \ No newline at end of file diff --git a/packages/api/lib/controllers/measurementsController.js b/packages/api/lib/controllers/measurementsController.js index 38b4ca3e..a5cdd7a0 100644 --- a/packages/api/lib/controllers/measurementsController.js +++ b/packages/api/lib/controllers/measurementsController.js @@ -233,6 +233,46 @@ const getDataMulti = async function getDataMulti (req, res, next) { } }; + +/** + * @api {get,post} /boxes/data?grouptag=:grouptag Get latest measurements for a grouptag as JSON + * @apiDescription Download data of a given grouptag from multiple senseBoxes as JSON + * @apiGroup Measurements + * @apiName getDataByGroupTag + * @apiParam {String} grouptag The grouptag to search by. + */ +const getDataByGroupTag = async function getDataByGroupTag (req, res, next) { + const { grouptag, format } = req._userParams; + const queryTags = grouptag.split(','); + // build query + const queryParams = {}; + if (grouptag) { + queryParams['grouptag'] = { '$all': queryTags }; + } + + try { + let stream = await Box.findMeasurementsOfBoxesByTagStream({ + query: queryParams + }); + stream = stream + .on('error', function (err) { + return handleError(err, next); + }); + switch (format) { + case 'json': + res.header('Content-Type', 'application/json'); + stream = stream + .pipe(jsonstringify({ open: '[', close: ']' })); + break; + } + + stream + .pipe(res); + } catch (err) { + handleError(err, next); + } +}; + /** * @api {post} /boxes/:senseBoxId/:sensorId Post new measurement * @apiDescription Posts a new measurement to a specific sensor of a box. @@ -433,6 +473,13 @@ module.exports = { validateFromToTimeParams, getDataMulti ], + getDataByGroupTag: [ + retrieveParameters([ + { name: 'grouptag', required: true }, + { name: 'format', defaultValue: 'json', allowedValues: ['json'] } + ]), + getDataByGroupTag + ], getLatestMeasurements: [ retrieveParameters([ { predef: 'boxId', required: true }, diff --git a/packages/api/lib/routes.js b/packages/api/lib/routes.js index cf8742f6..8a249535 100644 --- a/packages/api/lib/routes.js +++ b/packages/api/lib/routes.js @@ -78,6 +78,7 @@ const routes = { { path: `${statisticsPath}/descriptive`, method: 'get', handler: statisticsController.descriptiveStatisticsHandler, reference: 'api-Statistics-descriptive' }, { path: `${boxesPath}`, method: 'get', handler: boxesController.getBoxes, reference: 'api-Boxes-getBoxes' }, { path: `${boxesPath}/data`, method: 'get', handler: measurementsController.getDataMulti, reference: 'api-Measurements-getDataMulti' }, + { path: `${boxesPath}/data/bytag`, method: 'get', handler: measurementsController.getDataByGroupTag, reference: 'api-Measurements-getDataByGroupTag' }, { path: `${boxesPath}/:boxId`, method: 'get', handler: boxesController.getBox, reference: 'api-Boxes-getBox' }, { path: `${boxesPath}/:boxId/sensors`, method: 'get', handler: measurementsController.getLatestMeasurements, reference: 'api-Measurements-getLatestMeasurements' }, { path: `${boxesPath}/:boxId/sensors/:sensorId`, method: 'get', handler: measurementsController.getLatestMeasurements, reference: 'api-Measurements-getLatestMeasurementOfSensor' }, diff --git a/packages/models/src/box/box.js b/packages/models/src/box/box.js index 1710f603..d65dd454 100644 --- a/packages/models/src/box/box.js +++ b/packages/models/src/box/box.js @@ -767,6 +767,46 @@ boxSchema.statics.findMeasurementsOfBoxesStream = function findMeasurementsOfBox }); }; +boxSchema.statics.findMeasurementsOfBoxesByTagStream = function findMeasurementsOfBoxesByTagStream (opts) { + const { query } = opts; + + return this.find(query, BOX_PROPS_FOR_POPULATION) + .lean() + .then(function (boxData) { + if (boxData.length === 0) { + throw new ModelError('No senseBoxes found', { type: 'NotFoundError' }); + } + + const sensors = Object.create(null); + // store all matching sensors under sensors[sensorId] + for (let i = 0, len = boxData.length; i < len; i++) { + for (let j = 0, sensorslen = boxData[i].sensors.length; j < sensorslen; j++) { + const sensor = boxData[i].sensors[j]; + + sensor.boxId = boxData[i]._id.toString(); + sensor.sensorId = sensor._id.toString(); + + sensors[boxData[i].sensors[j]['_id']] = sensor; + } + } + + // // construct a stream transformer applied to queried measurements + // // that augments each measure with queried columns (location, ...) + // // and applies transformations to timestamps + const transformer = measurementTransformer(['sensorId', 'boxId'], sensors, undefined); + + const measureQuery = { + 'sensor_id': { '$in': Object.keys(sensors) }, + // 'createdAt': { '$gt': from, '$lt': to } + }; + + return Measurement.find(measureQuery, { 'createdAt': 1, 'value': 1, 'location': 1, '_id': 0, 'sensor_id': 1 }) + .cursor({ lean: true, order: 1 }) + .map(transformer); + }); +}; + + // try to add sensors defined in addons to the box. If the sensors already exist, // nothing is done. boxSchema.methods.addAddon = function addAddon (addon) { diff --git a/tests/tests/005-create-boxes-test.js b/tests/tests/005-create-boxes-test.js index 15b3b6bd..104e8de9 100644 --- a/tests/tests/005-create-boxes-test.js +++ b/tests/tests/005-create-boxes-test.js @@ -595,6 +595,41 @@ describe('openSenseMap API Routes: /boxes', function () { return chakram.wait(); }); }); + it('should allow to update the box via PUT with array as grouptags', function () { + const update_payload = { name: 'neuername', exposure: 'outdoor', grouptag: ['newgroup'], description: 'total neue beschreibung', location: { lat: 54.2, lng: 21.1 }, weblink: 'http://www.google.de', image: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVQYV2NgYAAAAAMAAWgmWQ0AAAAASUVORK5CYII=' }; + + return chakram.put(`${BASE_URL}/boxes/${boxIds[2]}`, update_payload, { headers: { 'Authorization': `Bearer ${jwt2}` } }) + .then(function (response) { + expect(response).to.have.status(200); + expect(response).to.comprise.of.json('data.name', update_payload.name); + expect(response).to.comprise.of.json('data.exposure', update_payload.exposure); + expect(response.body.data.grouptag).to.have.same.members(update_payload.grouptag); + expect(response).to.comprise.of.json('data.description', update_payload.description); + expect(response).to.comprise.of.json('data.currentLocation', { + type: 'Point', + coordinates: [update_payload.location.lng, update_payload.location.lat] + }); + + // loc field with old schema (backwards compat): + expect(response).to.comprise.of.json('data.loc', [{ + type: 'Feature', + geometry: { + type: 'Point', + coordinates: [ + update_payload.location.lng, + update_payload.location.lat + ] + } + }]); + + // image should contain timestamp. request duration should be less than 1s. + expect(response).to.comprise.of.json('data.image', function (image) { + return expect(moment().diff(moment(parseInt(image.split('_')[1].slice(0, -4), 36) * 1000))).to.be.below(1000); + }); + + return chakram.wait(); + }); + }); it('should deny to update a box of other users', function () { let otherJwt, otherBoxId; @@ -677,7 +712,7 @@ describe('openSenseMap API Routes: /boxes', function () { expect(response).to.have.status(200); expect(response).to.have.header('content-type', 'application/json; charset=utf-8'); expect(Array.isArray(response.body)).to.be.true; - expect(response.body.length).to.be.equal(1); + expect(response.body.length).to.be.equal(2); return chakram.wait(); }); diff --git a/tests/tests/007-download-data-test.js b/tests/tests/007-download-data-test.js index 3df170f3..4acc6e3f 100644 --- a/tests/tests/007-download-data-test.js +++ b/tests/tests/007-download-data-test.js @@ -584,4 +584,20 @@ describe('downloading data', function () { }); + describe('/boxes/data/bytag?grouptag=newgroup', function () { + + const expectedMeasurementsCount = 40; + + it('should allow download data by Grouptag /boxes/data/bytag=newgroup as json', function () { + return chakram.get(`${BASE_URL}/boxes/data/bytag?grouptag=newgroup`) + .then(function (response) { + expect(response).to.have.status(200); + expect(response.body.length).to.be.equal(expectedMeasurementsCount); + expect(response).to.have.header('content-type', 'application/json'); + + return chakram.wait(); + }); + }); + }); + }); From 785b108fea7f33a80d220be0376bcd89f9f53b87 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Thu, 5 Jan 2023 12:13:21 +0100 Subject: [PATCH 231/337] Shared boxes for users (#605) * shared boxes for users, TODO: function to share box with others * use third test box for grouptag tests Co-authored-by: Umut Tas --- .../api/lib/controllers/boxesController.js | 2 + .../api/lib/controllers/usersController.js | 7 +- packages/models/src/box/box.js | 2 +- packages/models/src/user/user.js | 15 ++ tests/data/getUserBoxesSchema.js | 187 +++++++++++++++++- tests/data/valid_sensebox.js | 1 + tests/tests/005-create-boxes-test.js | 7 +- 7 files changed, 213 insertions(+), 8 deletions(-) diff --git a/packages/api/lib/controllers/boxesController.js b/packages/api/lib/controllers/boxesController.js index 7ef90bfc..03170c17 100644 --- a/packages/api/lib/controllers/boxesController.js +++ b/packages/api/lib/controllers/boxesController.js @@ -397,6 +397,7 @@ const getBox = async function getBox (req, res, next) { * @apiParam (RequestBody) {Object} [mqtt] specify parameters of the MQTT integration for external measurement upload. Please see below for the accepted parameters * @apiParam (RequestBody) {Object} [ttn] specify parameters for the TTN integration for measurement from TheThingsNetwork.org upload. Please see below for the accepted parameters * @apiParam (RequestBody) {Boolean="true","false"} [useAuth] whether to use access_token or not for authentication + * @apiParam (RequestBody) {Boolean="true","false"} [sharedBox] whether to share this box (allows transfer to another user while still being able to read the secret and commit measurements) * * @apiUse LocationBody * @apiUse SensorBody @@ -774,6 +775,7 @@ module.exports = { { name: 'ttn', dataType: 'object' }, { name: 'useAuth', allowedValues: ['true', 'false'] }, { predef: 'location', required: true }, + { name: 'sharedBox', allowedValues: ['true', 'false'] } ]), postNewBox, ], diff --git a/packages/api/lib/controllers/usersController.js b/packages/api/lib/controllers/usersController.js index 2c72e479..3995cf6d 100644 --- a/packages/api/lib/controllers/usersController.js +++ b/packages/api/lib/controllers/usersController.js @@ -199,9 +199,9 @@ const confirmEmailAddress = async function confirmEmailAddress (req, res, next) }; /** - * @api {post} /users/me/boxes list all boxes of the signed in user + * @api {post} /users/me/boxes list all boxes and sharedBoxes of the signed in user * @apiName getUserBoxes - * @apiDescription List all boxes of the signed in user with secret fields + * @apiDescription List all boxes and sharedBoxes of the signed in user with secret fields * @apiGroup Users * @apiSuccess {String} code `Ok` * @apiSuccess {String} data A json object with a single `boxes` array field @@ -209,7 +209,8 @@ const confirmEmailAddress = async function confirmEmailAddress (req, res, next) const getUserBoxes = async function getUserBoxes (req, res, next) { try { const boxes = await req.user.getBoxes(); - res.send(200, { code: 'Ok', data: { boxes } }); + const sharedBoxes = await req.user.getSharedBoxes(); + res.send(200, { code: 'Ok', data: { boxes: boxes, sharedBoxes: sharedBoxes } }); } catch (err) { handleError(err, next); } diff --git a/packages/models/src/box/box.js b/packages/models/src/box/box.js index d65dd454..890918bb 100644 --- a/packages/models/src/box/box.js +++ b/packages/models/src/box/box.js @@ -727,7 +727,7 @@ boxSchema.statics.findMeasurementsOfBoxesStream = function findMeasurementsOfBox // store all matching sensors under sensors[sensorId] for (let i = 0, len = boxData.length; i < len; i++) { for (let j = 0, sensorslen = boxData[i].sensors.length; j < sensorslen; j++) { - if (boxData[i].sensors[j][sensorProperty].toString() === phenomenon) { + if (boxData[i].sensors[j][sensorProperty] && boxData[i].sensors[j][sensorProperty].toString() === phenomenon) { const sensor = boxData[i].sensors[j]; sensor.lat = boxData[i].currentLocation.coordinates[1]; diff --git a/packages/models/src/user/user.js b/packages/models/src/user/user.js index 92ca00c5..914c5530 100644 --- a/packages/models/src/user/user.js +++ b/packages/models/src/user/user.js @@ -61,6 +61,10 @@ const userSchema = new mongoose.Schema({ type: mongoose.Schema.Types.ObjectId, ref: 'Box' }], + sharedBoxes: [{ + type: mongoose.Schema.Types.ObjectId, + ref: 'Box' + }], language: { type: String, trim: true, @@ -286,6 +290,9 @@ userSchema.methods.addBox = function addBox (params) { // persist the saved box in the user savedBox.serialPort = serialPort; user.boxes.addToSet(savedBox._id); + if (params.sharedBox) { + user.sharedBoxes.addToSet(savedBox._id); + } return user.save() .then(function () { @@ -550,6 +557,14 @@ userSchema.methods.getBoxes = function getBoxes () { }); }; +userSchema.methods.getSharedBoxes = function getSharedBoxes () { + return Box.find({ _id: { $in: this.sharedBoxes } }) + .populate(Box.BOX_SUB_PROPS_FOR_POPULATION) + .then(function (boxes) { + return boxes.map(b => b.toJSON({ includeSecrets: true })); + }); +}; + userSchema.statics.confirmEmail = function confirmEmail ({ token, email }) { return this.findOne({ $and: [{ $or: [{ email: email }, { unconfirmedEmail: email }] }, { emailConfirmationToken: token }] }) .exec() diff --git a/tests/data/getUserBoxesSchema.js b/tests/data/getUserBoxesSchema.js index 9770b6ea..9f10bb44 100644 --- a/tests/data/getUserBoxesSchema.js +++ b/tests/data/getUserBoxesSchema.js @@ -193,10 +193,195 @@ module.exports = { 'integrations' ] } + }, + 'sharedBoxes': { + 'type': 'array', + 'items': { + 'type': 'object', + 'properties': { + 'createdAt': { + 'type': 'string' + }, + 'exposure': { + 'type': 'string' + }, + 'model': { + 'type': 'string' + }, + 'name': { + 'type': 'string' + }, + 'updatedAt': { + 'type': 'string' + }, + 'useAuth': { + 'type': 'boolean' + }, + 'access_token': { + 'type': 'string' + }, + 'currentLocation': { + 'type': 'object', + 'properties': { + 'coordinates': { + 'type': 'array', + 'items': { 'type': 'number' } + }, + 'timestamp': { 'type': 'string' }, + 'type': { 'type': 'string' } + }, + 'required': [ + 'coordinates', + 'timestamp', + 'type' + ] + }, + 'loc': { + 'type': 'array', + 'items': { + 'type': 'object', + 'properties': { + 'geometry': { + 'type': 'object', + 'properties': { + 'coordinates': { + 'type': 'array', + 'items': { + 'type': 'number' + } + }, + 'type': { + 'type': 'string' + } + }, + 'required': [ + 'coordinates', + 'type' + ] + }, + 'type': { + 'type': 'string' + } + }, + 'required': [ + 'geometry', + 'type' + ] + } + }, + 'sensors': { + 'type': 'array', + 'items': { + 'type': 'object', + 'properties': { + 'title': { + 'type': 'string' + }, + 'unit': { + 'type': 'string' + }, + 'sensorType': { + 'type': 'string' + }, + 'icon': { + 'type': 'string' + }, + '_id': { + 'type': 'string' + }, + 'lastMeasurement': { + 'type': 'object', + 'properties': { + 'value': { + 'type': 'string' + }, + 'createdAt': { + 'type': 'string' + } + }, + 'required': [ + 'value', + 'createdAt' + ] + } + }, + 'required': [ + 'title', + 'unit', + 'sensorType', + '_id' + ] + } + }, + '_id': { + 'type': 'string' + }, + 'integrations': { + 'type': 'object', + 'properties': { + 'mqtt': { + 'type': 'object', + 'properties': { + 'url': { + 'type': 'string' + }, + 'topic': { + 'type': 'string' + }, + 'decodeOptions': { + 'type': 'string' + }, + 'connectionOptions': { + 'type': 'string' + }, + 'messageFormat': { + 'type': 'string' + }, + 'enabled': { + 'type': 'boolean' + } + }, + 'required': [ + 'enabled' + ] + }, + 'ttn': { + 'type': 'object', + 'properties': { + 'dev_id': { + 'type': 'string' + }, + 'app_id': { + 'type': 'string' + }, + 'profile': { + 'type': 'string' + } + }, + } + }, + 'required': [ + 'mqtt' + ] + } + }, + 'required': [ + 'createdAt', + 'exposure', + 'name', + 'updatedAt', + 'currentLocation', + 'loc', + 'sensors', + '_id', + 'integrations' + ] + } } }, 'required': [ - 'boxes' + 'boxes', + 'sharedBoxes' ] } }, diff --git a/tests/data/valid_sensebox.js b/tests/data/valid_sensebox.js index 9082a72b..9caa6721 100644 --- a/tests/data/valid_sensebox.js +++ b/tests/data/valid_sensebox.js @@ -26,6 +26,7 @@ module.exports = function ({ bbox, model, sensors, lonlat, name = '', sensorTemp 'exposure': 'indoor', 'weblink': 'https://api.opensensemap.org', 'location': loc, + 'sharedBox': true, 'mqtt': { 'enabled': false, 'url': '', diff --git a/tests/tests/005-create-boxes-test.js b/tests/tests/005-create-boxes-test.js index 104e8de9..3bdbea47 100644 --- a/tests/tests/005-create-boxes-test.js +++ b/tests/tests/005-create-boxes-test.js @@ -156,7 +156,7 @@ describe('openSenseMap API Routes: /boxes', function () { expect(response).to.have.header('content-type', 'application/json; charset=utf-8'); boxCount = boxCount + 1; - //boxIds.push(response.body.data._id); + boxIds.push(response.body.data._id); return chakram.get(`${BASE_URL}/boxes/${response.body.data._id}`); }) @@ -199,12 +199,13 @@ describe('openSenseMap API Routes: /boxes', function () { }); }); - it('should let users retrieve their box with all fields', function () { + it('should let users retrieve their boxes and sharedBoxes with all fields', function () { return chakram.get(`${BASE_URL}/users/me/boxes`, { headers: { 'Authorization': `Bearer ${jwt}` } }) .then(function (response) { expect(response).to.have.status(200); expect(response).to.have.schema(getUserBoxesSchema); expect(response).to.comprise.of.json('data.boxes.0.integrations.mqtt', { enabled: false }); + expect(response).to.comprise.of.json('data.sharedBoxes.0.integrations.mqtt', { enabled: false }); return chakram.wait(); }); @@ -598,7 +599,7 @@ describe('openSenseMap API Routes: /boxes', function () { it('should allow to update the box via PUT with array as grouptags', function () { const update_payload = { name: 'neuername', exposure: 'outdoor', grouptag: ['newgroup'], description: 'total neue beschreibung', location: { lat: 54.2, lng: 21.1 }, weblink: 'http://www.google.de', image: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVQYV2NgYAAAAAMAAWgmWQ0AAAAASUVORK5CYII=' }; - return chakram.put(`${BASE_URL}/boxes/${boxIds[2]}`, update_payload, { headers: { 'Authorization': `Bearer ${jwt2}` } }) + return chakram.put(`${BASE_URL}/boxes/${boxIds[3]}`, update_payload, { headers: { 'Authorization': `Bearer ${jwt2}` } }) .then(function (response) { expect(response).to.have.status(200); expect(response).to.comprise.of.json('data.name', update_payload.name); From 07b4641220774886d66287c43d1bedcbb3230eba Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Thu, 5 Jan 2023 12:38:51 +0100 Subject: [PATCH 232/337] v2.0.0 --- packages/models/CHANGELOG.md | 6 ++++++ packages/models/package.json | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/packages/models/CHANGELOG.md b/packages/models/CHANGELOG.md index 9888c0bf..985d8445 100644 --- a/packages/models/CHANGELOG.md +++ b/packages/models/CHANGELOG.md @@ -2,6 +2,12 @@ ## Unreleased +## v2.0.0 + +- Update dependencies (#602, #666) +- Added `findLatestMeasurementsForSensorsWithCount` static method to Measurement schema (#588) +- Added `sharedBoxes` functionality (#605) + ## v1.2.0 - Extend `luftdatenHandler` (#578) diff --git a/packages/models/package.json b/packages/models/package.json index ee41fcd1..a64937ff 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -1,7 +1,7 @@ { "name": "@sensebox/opensensemap-api-models", "description": "openSenseMap data models and database connection", - "version": "1.2.0", + "version": "2.0.0", "main": "index.js", "license": "MIT", "dependencies": { From 3983b4a4c902a2fe1e40263015e2e42ddbd5163b Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Thu, 5 Jan 2023 12:56:50 +0100 Subject: [PATCH 233/337] Update api models and contributor --- packages/api/package.json | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/packages/api/package.json b/packages/api/package.json index 7515a58e..16171e4e 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -7,10 +7,12 @@ "contributors": [ "Christoph Kisfeld", "Gerald Pape", - "Norwin Roosen" + "Norwin Roosen", + "Umut Tas", + "Felix Erdmann" ], "dependencies": { - "@sensebox/opensensemap-api-models": "^1.2.0", + "@sensebox/opensensemap-api-models": "2.0.0", "@turf/area": "^6.3.0", "@turf/bbox": "^6.3.0", "@turf/centroid": "^6.3.0", From cf1e9ca7bd5121b84194116ab7388a0be31781c9 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Thu, 5 Jan 2023 12:57:11 +0100 Subject: [PATCH 234/337] Update Changelog --- CHANGELOG.md | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 8bf6f8b1..bc1c858c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,15 @@ # openSenseMap API Changelog +## v10.2.0 + +- Use @sensebox/opensensemap-api-models v2.0.0 +- Add Mattermost notifications (#664) +- Update dependencies (#629, #602, #666) +- Fix Mattermost messages (#689) +- Add `grouptag` parameter for downloads (#660) +- Add `sharedBoxes` functionality (#605) +- Add `count` parameter for getLastMeasurements (#588) + ## v10.1.1 - Use @sensebox/opensensemap-api-models v1.2.0 From f47a9fa38e22c57aea78bbc28b36f018e1613b38 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Thu, 5 Jan 2023 15:28:35 +0100 Subject: [PATCH 235/337] Fix broken sensors with undefined values (#691) --- packages/models/src/box/box.js | 4 +++- .../measurement/decoding/luftdatenHandler.js | 20 ++++++++++--------- 2 files changed, 14 insertions(+), 10 deletions(-) diff --git a/packages/models/src/box/box.js b/packages/models/src/box/box.js index 890918bb..3d87c9db 100644 --- a/packages/models/src/box/box.js +++ b/packages/models/src/box/box.js @@ -497,7 +497,9 @@ boxSchema.methods.saveMeasurement = function saveMeasurement (measurement) { boxSchema.methods.sensorIds = function sensorIds () { const sensorIds = []; for (let i = this.sensors.length - 1; i >= 0; i--) { - sensorIds.push(this.sensors[i]._id.toString()); + if (this.sensors[i]._id) { + sensorIds.push(this.sensors[i]._id.toString()); + } } return sensorIds; diff --git a/packages/models/src/measurement/decoding/luftdatenHandler.js b/packages/models/src/measurement/decoding/luftdatenHandler.js index fff85857..e739fde7 100644 --- a/packages/models/src/measurement/decoding/luftdatenHandler.js +++ b/packages/models/src/measurement/decoding/luftdatenHandler.js @@ -106,15 +106,17 @@ const findSensorId = function findSensorId (sensors, value_type) { let sensorId; for (const sensor of sensors) { - const title = sensor.title.toLowerCase(); - const type = sensor.sensorType.toLowerCase(); - if ( - (title === vt_phenomenon || matchings[vt_phenomenon].includes(title) || matchings[vt_phenomenon].some(alias => title.includes(alias))) - && - (type.startsWith(vt_sensortype)) - ) { - sensorId = sensor._id.toString(); - break; + if (sensor.title && sensor.sensorType) { + const title = sensor.title.toLowerCase(); + const type = sensor.sensorType.toLowerCase(); + if ( + (title === vt_phenomenon || matchings[vt_phenomenon].includes(title) || matchings[vt_phenomenon].some(alias => title.includes(alias))) + && + (type.startsWith(vt_sensortype)) + ) { + sensorId = sensor._id.toString(); + break; + } } } From 0adcfa4149254c0ce3a9989ef6f7b514b1ccf2ad Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Thu, 5 Jan 2023 15:30:19 +0100 Subject: [PATCH 236/337] v2.0.1 --- packages/models/CHANGELOG.md | 4 ++++ packages/models/package.json | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/packages/models/CHANGELOG.md b/packages/models/CHANGELOG.md index 985d8445..8463e1c0 100644 --- a/packages/models/CHANGELOG.md +++ b/packages/models/CHANGELOG.md @@ -2,6 +2,10 @@ ## Unreleased +## v2.0.1 + +- Fix `undefined` errors in luftdatenHandler (#691) + ## v2.0.0 - Update dependencies (#602, #666) diff --git a/packages/models/package.json b/packages/models/package.json index a64937ff..f5058acb 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -1,7 +1,7 @@ { "name": "@sensebox/opensensemap-api-models", "description": "openSenseMap data models and database connection", - "version": "2.0.0", + "version": "2.0.1", "main": "index.js", "license": "MIT", "dependencies": { From e6259456f72674d7d31613b11d40310a13b2fe2c Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Thu, 5 Jan 2023 15:34:31 +0100 Subject: [PATCH 237/337] Update models dependency --- packages/api/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/api/package.json b/packages/api/package.json index 16171e4e..647e5a0d 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -12,7 +12,7 @@ "Felix Erdmann" ], "dependencies": { - "@sensebox/opensensemap-api-models": "2.0.0", + "@sensebox/opensensemap-api-models": "2.0.1", "@turf/area": "^6.3.0", "@turf/bbox": "^6.3.0", "@turf/centroid": "^6.3.0", From c13218281db059eff05858b30194ba21b3066d05 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Thu, 5 Jan 2023 15:34:42 +0100 Subject: [PATCH 238/337] Update changelog --- CHANGELOG.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index bc1c858c..496ef70a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ # openSenseMap API Changelog +## v10.2.1 + +- Use @sensebox/opensensemap-api-models v2.0.1 + ## v10.2.0 - Use @sensebox/opensensemap-api-models v2.0.0 From d272f2627cd56b0f335c287326c1e55814d12f13 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Thu, 5 Jan 2023 16:29:03 +0100 Subject: [PATCH 239/337] Check if id is undefined (#692) --- packages/models/src/box/box.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/models/src/box/box.js b/packages/models/src/box/box.js index 3d87c9db..32200502 100644 --- a/packages/models/src/box/box.js +++ b/packages/models/src/box/box.js @@ -1088,7 +1088,7 @@ boxSchema.statics.findBoxesLastMeasurements = function findBoxesLastMeasurements for (let i = 0; i < measurementsLength; i++) { //iterate measurments for (const sensor of box.sensors) { - if (sensor._id.equals(measurements[i].sensor_id)) { + if (sensor._id && sensor._id.equals(measurements[i].sensor_id)) { measurements[i].sensor_id = undefined; sensor.lastMeasurement = measurements[i]; From 15fdeda6789cce939e75bff8002712fc0cfa9366 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Thu, 5 Jan 2023 16:32:04 +0100 Subject: [PATCH 240/337] v2.0.2 --- packages/models/CHANGELOG.md | 4 ++++ packages/models/package.json | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/packages/models/CHANGELOG.md b/packages/models/CHANGELOG.md index 8463e1c0..1457fd4d 100644 --- a/packages/models/CHANGELOG.md +++ b/packages/models/CHANGELOG.md @@ -2,6 +2,10 @@ ## Unreleased +## v2.0.2 + +- Fix `undefined` errors in findMeasurementsForSensors (#692) + ## v2.0.1 - Fix `undefined` errors in luftdatenHandler (#691) diff --git a/packages/models/package.json b/packages/models/package.json index f5058acb..9b591985 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -1,7 +1,7 @@ { "name": "@sensebox/opensensemap-api-models", "description": "openSenseMap data models and database connection", - "version": "2.0.1", + "version": "2.0.2", "main": "index.js", "license": "MIT", "dependencies": { From 1d8f797b6a44c262e6d2246c31e4f280f98bb0ab Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Thu, 5 Jan 2023 16:34:49 +0100 Subject: [PATCH 241/337] Update dependencies and Changelog --- CHANGELOG.md | 4 ++++ packages/api/package.json | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 496ef70a..8bfd0344 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ # openSenseMap API Changelog +## v10.2.2 + +- Use @sensebox/opensensemap-api-models v2.0.2 + ## v10.2.1 - Use @sensebox/opensensemap-api-models v2.0.1 diff --git a/packages/api/package.json b/packages/api/package.json index 647e5a0d..de2e5aed 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -12,7 +12,7 @@ "Felix Erdmann" ], "dependencies": { - "@sensebox/opensensemap-api-models": "2.0.1", + "@sensebox/opensensemap-api-models": "2.0.2", "@turf/area": "^6.3.0", "@turf/bbox": "^6.3.0", "@turf/centroid": "^6.3.0", From a181f2561917e2371af70267961aaa3284ed53f0 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Mon, 9 Jan 2023 11:45:23 +0100 Subject: [PATCH 242/337] Validate near parameter (#694) * Change near param to predef and validate passed value * Update documentation * Update paramValidatorAndParser function * Add tests for near parameter * Update tests --- CONTRIBUTING.md | 2 +- .../api/lib/controllers/boxesController.js | 4 ++-- packages/api/lib/helpers/userParamHelpers.js | 23 ++++++++++++++++++- packages/models/src/box/box.js | 2 +- tests/tests/002-location_tests.js | 8 +++++++ 5 files changed, 34 insertions(+), 5 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 19063e44..65843d42 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -14,7 +14,7 @@ Make sure you have the following tools installed: - Docker - Docker Compose -- Node.Js v14 +- Node.Js v16 - Yarn package manager Fork, then clone the repo: diff --git a/packages/api/lib/controllers/boxesController.js b/packages/api/lib/controllers/boxesController.js index 03170c17..4d1e9516 100644 --- a/packages/api/lib/controllers/boxesController.js +++ b/packages/api/lib/controllers/boxesController.js @@ -203,7 +203,7 @@ const geoJsonStringifyReplacer = function geoJsonStringifyReplacer (key, box) { * @apiParam {Boolean="true","false"} [classify=false] if specified, the api will classify the boxes accordingly to their last measurements. * @apiParam {Boolean="true","false"} [minimal=false] if specified, the api will only return a minimal set of box metadata consisting of [_id, updatedAt, currentLocation, exposure, name] for a fast response. * @apiParam {Boolean="true","false"} [full=false] if true the API will return populated lastMeasurements (use this with caution for now, expensive on the database) - * @apiParam {String} [near] A comma separated coordinate, if specified, the api will only return senseBoxes within maxDistance (in m) of this location + * @apiParam {Number} [near] A comma separated coordinate, if specified, the api will only return senseBoxes within maxDistance (in m) of this location * @apiParam {Number} [maxDistance=1000] the amount of meters around the near Parameter that the api will search for senseBoxes * @apiUse ExposureFilterParam * @apiUse BBoxParam @@ -819,7 +819,7 @@ module.exports = { allowedValues: ['true', 'false'], }, { name: 'full', defaultValue: 'false', allowedValues: ['true', 'false'] }, - { name: 'near' }, + { predef: 'near' }, { name: 'maxDistance' }, { predef: 'bbox' }, ]), diff --git a/packages/api/lib/helpers/userParamHelpers.js b/packages/api/lib/helpers/userParamHelpers.js index d5e85755..4eddac6b 100644 --- a/packages/api/lib/helpers/userParamHelpers.js +++ b/packages/api/lib/helpers/userParamHelpers.js @@ -348,6 +348,27 @@ const retrieveLocationParameter = function ({ value }) { } }; +const retrieveNearParameter = function ({ value, dataType, dataTypeIsArray }) { + try { + // wrap dataType in array for calling of casting function + dataType = dataTypeIsArray ? dataType[0] : dataType; + if (!dataTypeIsArray && Array.isArray(value)) { + return { error: ARRAY_NOT_ALLOWED }; + } + + // test and cast value against dataType + value = castParam(value, dataType, dataTypeIsArray); + + if (typeof value === 'undefined') { + return { error: CAST_FAILED }; + } + + return { castedValue: transformAndValidateCoords(value) }; + } catch (err) { + return { error: ERROR_CUSTOM_MESSAGE, message: err.message }; + } +}; + const GET_DATA_MULTI_DEFAULT_COLUMNS = ['sensorId', 'createdAt', 'value', 'lat', 'lon'], GET_DATA_MULTI_ALLOWED_COLUMNS = ['createdAt', 'value', 'lat', 'lon', 'height', 'unit', 'boxId', 'sensorId', 'phenomenon', 'sensorType', 'boxName', 'exposure']; @@ -389,7 +410,7 @@ const retrieveParametersPredefs = { return { name: 'bbox', dataType: 'bbox' }; }, 'near' () { - return { name: 'near', dataType: 'as-is' }; + return { name: 'near', dataType: ['Number'], paramValidatorAndParser: retrieveNearParameter }; }, 'maxDistance' () { return { name: 'maxDistance', dataType: 'as-is' }; diff --git a/packages/models/src/box/box.js b/packages/models/src/box/box.js index 32200502..279799ae 100644 --- a/packages/models/src/box/box.js +++ b/packages/models/src/box/box.js @@ -1005,7 +1005,7 @@ const buildFindBoxesQuery = function buildFindBoxesQuery (opts = {}) { '$near': { '$geometry': { type: 'Point', - coordinates: [near.split(',')[0], near.split(',')[1]] + coordinates: [near[0], near[1]] }, '$maxDistance': maxDistance ? maxDistance : 1000, } diff --git a/tests/tests/002-location_tests.js b/tests/tests/002-location_tests.js index ec0bbb49..63c4ae03 100644 --- a/tests/tests/002-location_tests.js +++ b/tests/tests/002-location_tests.js @@ -284,6 +284,14 @@ describe('openSenseMap API locations tests', function () { }); }); + it('should reject filtering boxes near a location with wrong parameter values', function () { + return chakram.get(`${BASE_URL}?near=test,60`).then(function (response) { + expect(response).to.have.status(422); + + return chakram.wait(); + }); + }); + }); describe('POST /boxes/:boxID/:sensorID', function () { From 5e241cc5df197dddce674e2357d44144d4fb4600 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Mon, 9 Jan 2023 17:06:15 +0100 Subject: [PATCH 243/337] v2.0.3 --- packages/models/CHANGELOG.md | 4 ++++ packages/models/package.json | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/packages/models/CHANGELOG.md b/packages/models/CHANGELOG.md index 1457fd4d..c349f4f1 100644 --- a/packages/models/CHANGELOG.md +++ b/packages/models/CHANGELOG.md @@ -2,6 +2,10 @@ ## Unreleased +## v2.0.3 + +- Change handling `near` parameter (#694) + ## v2.0.2 - Fix `undefined` errors in findMeasurementsForSensors (#692) diff --git a/packages/models/package.json b/packages/models/package.json index 9b591985..22ad371c 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -1,7 +1,7 @@ { "name": "@sensebox/opensensemap-api-models", "description": "openSenseMap data models and database connection", - "version": "2.0.2", + "version": "2.0.3", "main": "index.js", "license": "MIT", "dependencies": { From 40ce844454acbc91973f65c8b6b93603f7dd73b7 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Mon, 9 Jan 2023 17:08:31 +0100 Subject: [PATCH 244/337] Update changelog --- CHANGELOG.md | 5 +++++ packages/api/package.json | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 8bfd0344..aa40d0d7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,10 @@ # openSenseMap API Changelog +## v10.2.3 + +- Use @sensebox/opensensemap-api-models v2.0.3 +- Validate `near` parameter (#694) + ## v10.2.2 - Use @sensebox/opensensemap-api-models v2.0.2 diff --git a/packages/api/package.json b/packages/api/package.json index de2e5aed..d1f1c9b6 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -12,7 +12,7 @@ "Felix Erdmann" ], "dependencies": { - "@sensebox/opensensemap-api-models": "2.0.2", + "@sensebox/opensensemap-api-models": "2.0.3", "@turf/area": "^6.3.0", "@turf/bbox": "^6.3.0", "@turf/centroid": "^6.3.0", From f3202b495a7ffd33911276ec397c391a137b2889 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Mon, 9 Jan 2023 17:34:08 +0100 Subject: [PATCH 245/337] Update restify to v8.6.1 (#693) --- packages/api/package.json | 2 +- yarn.lock | 381 +++++++++++++++++++++++--------------- 2 files changed, 228 insertions(+), 155 deletions(-) diff --git a/packages/api/package.json b/packages/api/package.json index d1f1c9b6..86cdfc17 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -33,7 +33,7 @@ "millify": "^5.0.1", "moment": "^2.29.4", "ms": "^2.1.3", - "restify": "7.7.0", + "restify": "8.6.1", "restify-errors": "^8.0.2", "simple-statistics": "^7.7.0", "stringify-stream": "^1.0.5", diff --git a/yarn.lock b/yarn.lock index b9599cea..b70b4f70 100644 --- a/yarn.lock +++ b/yarn.lock @@ -966,42 +966,40 @@ css-what@^5.0.0: resolved "https://registry.yarnpkg.com/css-what/-/css-what-5.0.1.tgz#3efa820131f4669a8ac2408f9c32e7c7de9f4cad" integrity sha512-FYDTSHb/7KXsWICVsxdmiExPjCfRC4qRFBdVwv7Ax9hMnvMmEjP9RfxTEZ3qPZGmADDn2vAKSo9UcN1jKVYscg== -csv-generate@^1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/csv-generate/-/csv-generate-1.1.2.tgz#ec6b00edaed6e59ad9c20582f4c364e28b146240" - integrity sha512-RdVP7RqqBRZlOiFY/OocxlghhaqhTknXhz08GsZF46BrCkLqVtYMBPTLQSqXg8dq5B42C9CNngnx+jYkIRRWZQ== - -csv-parse@^1.3.3: - version "1.3.3" - resolved "https://registry.yarnpkg.com/csv-parse/-/csv-parse-1.3.3.tgz#d1cfd8743c2f849a0abb2fd544db56695d19a490" - integrity sha512-byxnDBxM1AVF3YfmsK7Smop9/usNz7gAZYSo9eYp61TGcNXraJby1rAiLyJSt1/8Iho2qaxZOtZCOvQMXogPtg== +csv-generate@^3.4.3: + version "3.4.3" + resolved "https://registry.yarnpkg.com/csv-generate/-/csv-generate-3.4.3.tgz#bc42d943b45aea52afa896874291da4b9108ffff" + integrity sha512-w/T+rqR0vwvHqWs/1ZyMDWtHHSJaN06klRqJXBEpDJaM/+dZkso0OKh1VcuuYvK3XM53KysVNq8Ko/epCK8wOw== csv-parse@^4.15.4: version "4.15.4" resolved "https://registry.yarnpkg.com/csv-parse/-/csv-parse-4.15.4.tgz#ad1ec62aaf71a642982dfcb81f1848184d691db5" integrity sha512-OdBbFc0yZhOm17lSxqkirrHlFFVpKRT0wp4DAGoJelsP3LbGzV9LNr7XmM/lrr0uGkCtaqac9UhP8PDHXOAbMg== -csv-stringify@^1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/csv-stringify/-/csv-stringify-1.1.2.tgz#77a41526581bce3380f12b00d7c5bbac70c82b58" - integrity sha512-3NmNhhd+AkYs5YtM1GEh01VR6PKj6qch2ayfQaltx5xpcAdThjnbbI5eT8CzRVpXfGKAxnmrSYLsNl/4f3eWiw== - dependencies: - lodash.get "~4.4.2" +csv-parse@^4.16.3: + version "4.16.3" + resolved "https://registry.yarnpkg.com/csv-parse/-/csv-parse-4.16.3.tgz#7ca624d517212ebc520a36873c3478fa66efbaf7" + integrity sha512-cO1I/zmz4w2dcKHVvpCr7JVRu8/FymG5OEpmvsZYlccYolPBLoVGKUHgNoc4ZGkFeFlWGEDmMyBM+TTqRdW/wg== csv-stringify@^5.6.2: version "5.6.2" resolved "https://registry.yarnpkg.com/csv-stringify/-/csv-stringify-5.6.2.tgz#e653783e2189c4c797fbb12abf7f4943c787caa9" integrity sha512-n3rIVbX6ylm1YsX2NEug9IaPV8xRnT+9/NNZbrA/bcHgOSSeqtWla6XnI/xmyu57wIw+ASCAoX1oM6EZtqJV0A== -csv@^1.1.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/csv/-/csv-1.2.1.tgz#5231edfc1c7152512ec45781076a7a97ff525c0c" - integrity sha512-YUBhU5VuO3pABm+7JqT+AumSjQ8q6cT6WcNFJZCb5bVs5Mbp/DNop9GiMQZgWUQ7gHFtV10r7osO6Qs4BTQrrA== +csv-stringify@^5.6.5: + version "5.6.5" + resolved "https://registry.yarnpkg.com/csv-stringify/-/csv-stringify-5.6.5.tgz#c6d74badda4b49a79bf4e72f91cce1e33b94de00" + integrity sha512-PjiQ659aQ+fUTQqSrd1XEDnOr52jh30RBurfzkscaE2tPaFsDH5wOAHJiw8XAHphRknCwMUE9KRayc4K/NbO8A== + +csv@^5.1.1: + version "5.5.3" + resolved "https://registry.yarnpkg.com/csv/-/csv-5.5.3.tgz#cd26c1e45eae00ce6a9b7b27dcb94955ec95207d" + integrity sha512-QTaY0XjjhTQOdguARF0lGKm5/mEq9PD9/VhZZegHDIBq2tQwgNpHc3dneD4mGo2iJs+fTKv5Bp0fZ+BRuY3Z0g== dependencies: - csv-generate "^1.1.2" - csv-parse "^1.3.3" - csv-stringify "^1.1.2" - stream-transform "^0.2.2" + csv-generate "^3.4.3" + csv-parse "^4.16.3" + csv-stringify "^5.6.5" + stream-transform "^2.1.3" dashdash@^1.12.0: version "1.14.1" @@ -1015,14 +1013,14 @@ dashify@^2.0.0: resolved "https://registry.yarnpkg.com/dashify/-/dashify-2.0.0.tgz#fff270ca2868ca427fee571de35691d6e437a648" integrity sha512-hpA5C/YrPjucXypHPPc0oJ1l9Hf6wWbiOL7Ik42cxnsUOhWiCB/fylKbKqqJalW9FgkNQCw16YO8uW9Hs0Iy1A== -debug@2.6.9, debug@^2.6.8: +debug@2.6.9: version "2.6.9" resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== dependencies: ms "2.0.0" -debug@4: +debug@4, debug@^4.1.0: version "4.3.4" resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== @@ -1101,12 +1099,22 @@ delegates@^1.0.0: resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" integrity sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ== +depd@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" + integrity sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ== + +destroy@~1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.0.4.tgz#978857442c44749e4206613e37946205826abd80" + integrity sha512-3NdhDuEXnfun/z7x9GOElY49LoqVHoGScmOKwmxhsS8N5Y+Z8KyPPDnaSzqWgYt/ji4mqwfTS34Htrk0zPIXVg== + detect-libc@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-2.0.1.tgz#e1897aa88fa6ad197862937fbc0441ef352ee0cd" integrity sha512-463v3ZeIrcWtdgIg6vI6XUncguvr2TnGl4SzDXinkt9mSLpBJKXT3mW6xT3VQdDN11+WVs29pgvivTc4Lp8v+w== -detect-node@^2.0.3: +detect-node@^2.0.4: version "2.1.0" resolved "https://registry.yarnpkg.com/detect-node/-/detect-node-2.1.0.tgz#c9c70775a49c3d03bc2c06d9a73be550f978f8b1" integrity sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g== @@ -1190,11 +1198,21 @@ ecdsa-sig-formatter@1.0.11: dependencies: safe-buffer "^5.0.1" +ee-first@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" + integrity sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow== + emoji-regex@^8.0.0: version "8.0.0" resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== +encodeurl@~1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" + integrity sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w== + encoding@~0.1.12: version "0.1.12" resolved "https://registry.yarnpkg.com/encoding/-/encoding-0.1.12.tgz#538b66f3ee62cd1ab51ec323829d1f9480c74beb" @@ -1231,6 +1249,11 @@ escalade@^3.1.1: resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== +escape-html@~1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" + integrity sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow== + escape-regexp-component@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/escape-regexp-component/-/escape-regexp-component-1.0.2.tgz#9c63b6d0b25ff2a88c3adbd18c5b61acc3b9faa2" @@ -1379,6 +1402,11 @@ esutils@^2.0.2: resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== +etag@~1.8.1: + version "1.8.1" + resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" + integrity sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg== + ewma@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/ewma/-/ewma-2.0.1.tgz#9876c1c491ac5733c8666001a3961a04c97cf1e8" @@ -1396,11 +1424,6 @@ extend@^3.0.0, extend@~3.0.2: resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== -extsprintf@1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.2.0.tgz#5ad946c22f5b32ba7f8cd7426711c6e8a3fc2529" - integrity sha512-T3PYC6HucmF4OfunfZb5d1nRvTSvWYhsr/Og33HANcCuCtGPUtWVyt/tTs8SU9sR0SGh5Z/xQCuX/D72ph2H+A== - extsprintf@1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05" @@ -1445,13 +1468,13 @@ fill-range@^7.0.1: dependencies: to-regex-range "^5.0.1" -find-my-way@^1.13.0: - version "1.18.1" - resolved "https://registry.yarnpkg.com/find-my-way/-/find-my-way-1.18.1.tgz#5db605eab7211ee6af7ab08eb4f568060aa8e9f6" - integrity sha512-5M9oQuUPNDxr7w7g65Rv2acToLUIjVUbnMsltXNQaSYWOwjf+2MBp7sMuY+pfO+OPCo2qwcxsr29VQQ09ouVMg== +find-my-way@^2.0.1: + version "2.2.5" + resolved "https://registry.yarnpkg.com/find-my-way/-/find-my-way-2.2.5.tgz#86ce825266fa28cd962e538a45ec2aaa84c3d514" + integrity sha512-GjRZZlGcGmTh9t+6Xrj5K0YprpoAFCAiCPgmAH9Kb09O4oX6hYuckDfnDipYj+Q7B1GtYWSzDI5HEecNYscLQg== dependencies: fast-decode-uri-component "^1.0.0" - safe-regex "^1.1.0" + safe-regex2 "^2.0.0" semver-store "^0.3.0" find-up@5.0.0: @@ -1508,6 +1531,11 @@ formidable@^1.2.0, formidable@^1.2.1: resolved "https://registry.yarnpkg.com/formidable/-/formidable-1.2.6.tgz#d2a51d60162bbc9b4a055d8457a7c75315d1a168" integrity sha512-KcpbcpuLNOwrEjnbpMC0gS+X8ciDoZE1kkqzat4a8vrprf+s9pKNQ/QIwWfbfs4ltgmFl3MD177SNTkve3BwGQ== +fresh@0.5.2: + version "0.5.2" + resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" + integrity sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q== + fs-minipass@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-2.1.0.tgz#7f5036fdbf12c63c169190cbe4199c852271f9fb" @@ -1683,10 +1711,10 @@ growl@1.10.5: resolved "https://registry.yarnpkg.com/growl/-/growl-1.10.5.tgz#f2735dc2283674fa67478b10181059355c369e5e" integrity sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA== -handle-thing@^1.2.5: - version "1.2.5" - resolved "https://registry.yarnpkg.com/handle-thing/-/handle-thing-1.2.5.tgz#fd7aad726bf1a5fd16dfc29b2f7a6601d27139c4" - integrity sha512-Ld9EYcBflMUF6SsJLGDADVH50jSzLNIUUrOFlFGK/zwqimATg9+wY4jsLWCR7DZSxt2BfK0+liHUMdoR11bjLg== +handle-thing@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/handle-thing/-/handle-thing-2.0.1.tgz#857f79ce359580c340d43081cc648970d0bb234e" + integrity sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg== har-schema@^2.0.0: version "2.0.0" @@ -1784,6 +1812,16 @@ http-deceiver@^1.2.7: resolved "https://registry.yarnpkg.com/http-deceiver/-/http-deceiver-1.2.7.tgz#fa7168944ab9a519d337cb0bec7284dc3e723d87" integrity sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw== +http-errors@~1.6.2: + version "1.6.3" + resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.6.3.tgz#8b55680bb4be283a0b5bf4ea2e38580be1d9320d" + integrity sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A== + dependencies: + depd "~1.1.2" + inherits "2.0.3" + setprototypeof "1.1.0" + statuses ">= 1.4.0 < 2" + http-signature@^1.2.0: version "1.3.6" resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.3.6.tgz#cb6fbfdf86d1c974f343be94e87f7fc128662cf9" @@ -1861,6 +1899,11 @@ inherits@2, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.1, resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== +inherits@2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" + integrity sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw== + ip-regex@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/ip-regex/-/ip-regex-2.1.0.tgz#fa78bf5d2e6913c911ce9f819ee5146bb6d844e9" @@ -2113,7 +2156,7 @@ lodash.camelcase@^4.3.0: resolved "https://registry.yarnpkg.com/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz#b28aa6288a2b9fc651035c7711f65ab6190331a6" integrity sha1-soqmKIorn8ZRA1x3EfZathkDMaY= -lodash.get@4.4.2, lodash.get@~4.4.2: +lodash.get@4.4.2: version "4.4.2" resolved "https://registry.yarnpkg.com/lodash.get/-/lodash.get-4.4.2.tgz#2d177f652fa31e939b4438d5341499dfa3825e99" integrity sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk= @@ -2158,7 +2201,7 @@ lodash.once@^4.0.0: resolved "https://registry.yarnpkg.com/lodash.once/-/lodash.once-4.1.1.tgz#0dd3971213c7c56df880977d504c88fb471a97ac" integrity sha1-DdOXEhPHxW34gJd9UEyI+0cal6w= -lodash@^4.14.0, lodash@^4.17.10, lodash@^4.17.15, lodash@^4.17.20, lodash@^4.17.21, lodash@^4.2.1: +lodash@^4.14.0, lodash@^4.17.11, lodash@^4.17.15, lodash@^4.17.20, lodash@^4.17.21: version "4.17.21" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== @@ -2180,13 +2223,12 @@ lowercase-keys@^2.0.0: resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-2.0.0.tgz#2603e78b7b4b0006cbca2fbcc8a3202558ac9479" integrity sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA== -lru-cache@^4.1.3: - version "4.1.5" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.5.tgz#8bbe50ea85bed59bc9e33dcab8235ee9bcf443cd" - integrity sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g== +lru-cache@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920" + integrity sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w== dependencies: - pseudomap "^1.0.2" - yallist "^2.1.2" + yallist "^3.0.2" lru-cache@^6.0.0: version "6.0.0" @@ -2226,11 +2268,21 @@ mime-types@^2.1.12, mime-types@~2.1.19: dependencies: mime-db "1.44.0" -mime@^1.4.1, mime@^1.5.0: +mime@1.4.1: + version "1.4.1" + resolved "https://registry.yarnpkg.com/mime/-/mime-1.4.1.tgz#121f9ebc49e3766f311a76e1fa1c8003c4b03aa6" + integrity sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ== + +mime@^1.4.1: version "1.6.0" resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== +mime@^2.4.3: + version "2.6.0" + resolved "https://registry.yarnpkg.com/mime/-/mime-2.6.0.tgz#a2a682a95cd4d0cb1d6257e28f83da7e35800367" + integrity sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg== + mimelib@^0.3.1: version "0.3.1" resolved "https://registry.yarnpkg.com/mimelib/-/mimelib-0.3.1.tgz#787add2415d827acb3af6ec4bca1ea9596418853" @@ -2288,6 +2340,11 @@ minizlib@^2.1.1: minipass "^3.0.0" yallist "^4.0.0" +mixme@^0.5.1: + version "0.5.4" + resolved "https://registry.yarnpkg.com/mixme/-/mixme-0.5.4.tgz#8cb3bd0cd32a513c161bf1ca99d143f0bcf2eff3" + integrity sha512-3KYa4m4Vlqx98GPdOHghxSdNtTvcP8E0kkaJ5Dlh+h2DRzF7zpuVVcA8B0QpKd11YJeP9QQ7ASkKzOeu195Wzw== + mkdirp@^1.0.3: version "1.0.4" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" @@ -2477,7 +2534,7 @@ ncp@~2.0.0: resolved "https://registry.yarnpkg.com/ncp/-/ncp-2.0.0.tgz#195a21d6c46e361d2fb1281ba38b91e9df7bdbb3" integrity sha1-GVoh1sRuNh0vsSgbo4uR6d9727M= -negotiator@^0.6.1: +negotiator@^0.6.2: version "0.6.3" resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.3.tgz#58e323a72fedc0d6f9cd4d31fe49f51479590ccd" integrity sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg== @@ -2543,11 +2600,18 @@ object-inspect@^1.9.0: resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.12.0.tgz#6e2c120e868fd1fd18cb4f18c31741d0d6e776f0" integrity sha512-Ho2z80bVIvJloH+YzRmpZVQe87+qASmBUKZDWgx9cu+KDrX2ZDH/3tMy+gXbZETVGs2M8YdxObOh7XAtim9Y0g== -obuf@^1.0.0, obuf@^1.1.1: +obuf@^1.0.0, obuf@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/obuf/-/obuf-1.1.2.tgz#09bea3343d41859ebd446292d11c9d4db619084e" integrity sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg== +on-finished@~2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947" + integrity sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww== + dependencies: + ee-first "1.1.1" + once@^1.3.0, once@^1.3.1, once@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" @@ -2647,10 +2711,12 @@ picomatch@^2.0.4, picomatch@^2.2.1: resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.2.2.tgz#21f333e9b6b8eaff02468f5146ea406d345f4dad" integrity sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg== -pidusage@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/pidusage/-/pidusage-1.2.0.tgz#65ee96ace4e08a4cd3f9240996c85b367171ee92" - integrity sha512-OGo+iSOk44HRJ8q15AyG570UYxcm5u+R99DI8Khu8P3tKGkVu5EZX4ywHglWSTMNNXQ274oeGpYrvFEhDIFGPg== +pidusage@^2.0.17: + version "2.0.21" + resolved "https://registry.yarnpkg.com/pidusage/-/pidusage-2.0.21.tgz#7068967b3d952baea73e57668c98b9eaa876894e" + integrity sha512-cv3xAQos+pugVX+BfXpHsbyz/dLzX+lr44zNMsYiGxUw+kV5sgQCIcLd1z+0vq+KyC7dJ+/ts2PsfgWfSC3WXA== + dependencies: + safe-buffer "^5.2.1" polygon-clipping@^0.15.2: version "0.15.2" @@ -2703,11 +2769,6 @@ protobufjs@^6.10.0: "@types/node" ">=13.7.0" long "^4.0.0" -pseudomap@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" - integrity sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ== - psl@^1.1.28: version "1.8.0" resolved "https://registry.yarnpkg.com/psl/-/psl-1.8.0.tgz#9326f8bcfb013adcc005fdff056acce020e51c24" @@ -2738,7 +2799,7 @@ qs@^6.5.1: dependencies: side-channel "^1.0.4" -qs@^6.5.2: +qs@^6.7.0: version "6.11.0" resolved "https://registry.yarnpkg.com/qs/-/qs-6.11.0.tgz#fd0d963446f7a65e1367e01abd85429453f0c37a" integrity sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q== @@ -2772,6 +2833,11 @@ randomgeojson@^1.0.0: resolved "https://registry.yarnpkg.com/randomgeojson/-/randomgeojson-1.0.0.tgz#2446f5a5cd88365365a10ebdda9fe76656fa6b1f" integrity sha1-JEb1pc2INlNloQ692p/nZlb6ax8= +range-parser@~1.2.0: + version "1.2.1" + resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" + integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== + rbush@^2.0.0: version "2.0.2" resolved "https://registry.yarnpkg.com/rbush/-/rbush-2.0.2.tgz#bb6005c2731b7ba1d5a9a035772927d16a614605" @@ -2792,7 +2858,7 @@ readable-stream@2.2.7: string_decoder "~1.0.0" util-deprecate "~1.0.1" -readable-stream@^2.0.1, readable-stream@^2.2.9, readable-stream@^2.3.5: +readable-stream@^2.0.1, readable-stream@^2.3.5: version "2.3.7" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57" integrity sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw== @@ -2805,7 +2871,7 @@ readable-stream@^2.0.1, readable-stream@^2.2.9, readable-stream@^2.3.5: string_decoder "~1.1.1" util-deprecate "~1.0.1" -readable-stream@^3.0.0, readable-stream@^3.0.2, readable-stream@^3.1.1, readable-stream@^3.4.0, readable-stream@^3.6.0: +readable-stream@^3.0.0, readable-stream@^3.0.2, readable-stream@^3.0.6, readable-stream@^3.1.1, readable-stream@^3.4.0, readable-stream@^3.6.0: version "3.6.0" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198" integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA== @@ -2922,17 +2988,6 @@ responselike@^2.0.0: dependencies: lowercase-keys "^2.0.0" -restify-errors@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/restify-errors/-/restify-errors-5.0.0.tgz#668717e100683eec6ce0d515f89ff1dbec254a8d" - integrity sha512-+vby9Kxf7qlzvbZSTIEGkIixkeHG+pVCl34dk6eKnL+ua4pCezpdLT/1/eabzPZb65ADrgoc04jeWrrF1E1pvQ== - dependencies: - assert-plus "^1.0.0" - lodash "^4.2.1" - verror "^1.8.1" - optionalDependencies: - safe-json-stringify "^1.0.3" - restify-errors@^8.0.2: version "8.0.2" resolved "https://registry.yarnpkg.com/restify-errors/-/restify-errors-8.0.2.tgz#0b9678738e37888e4fefe52aa6ee92771ec954e9" @@ -2944,39 +2999,39 @@ restify-errors@^8.0.2: optionalDependencies: safe-json-stringify "^1.0.4" -restify@7.7.0: - version "7.7.0" - resolved "https://registry.yarnpkg.com/restify/-/restify-7.7.0.tgz#4e0e3884fc8716f14bea292c2957ca706fc427f7" - integrity sha512-BGirRv70pIy5W7tqX7s7+NNjBcjzU2YYgV4KABVbR5g8JjMeucgUzaf2VvTUSmz83qMZAuQ/gXEmPFyPHIcfJQ== +restify@8.6.1: + version "8.6.1" + resolved "https://registry.yarnpkg.com/restify/-/restify-8.6.1.tgz#728d391797e2fe20d6a748737da156a66575796f" + integrity sha512-I54/Geo2qN4K/2Ers+zNAU/A/nwPrcoTVBVeamw/sROv/kLLuMAzidLmO3f6842tKFxxQvcNhOMYoWZAhYr3vQ== dependencies: assert-plus "^1.0.0" bunyan "^1.8.12" - csv "^1.1.1" + csv "^5.1.1" escape-regexp-component "^1.0.2" ewma "^2.0.1" - find-my-way "^1.13.0" + find-my-way "^2.0.1" formidable "^1.2.1" http-signature "^1.2.0" - lodash "^4.17.10" - lru-cache "^4.1.3" - mime "^1.5.0" - negotiator "^0.6.1" + lodash "^4.17.11" + lru-cache "^5.1.1" + mime "^2.4.3" + negotiator "^0.6.2" once "^1.4.0" - pidusage "^1.2.0" - qs "^6.5.2" - restify-errors "^5.0.0" - semver "^5.4.1" - spdy "^3.4.7" - uuid "^3.1.0" - vasync "^1.6.4" - verror "^1.10.0" + pidusage "^2.0.17" + qs "^6.7.0" + restify-errors "^8.0.2" + semver "^6.1.1" + send "^0.16.2" + spdy "^4.0.0" + uuid "^3.3.2" + vasync "^2.2.0" optionalDependencies: dtrace-provider "^0.8.1" -ret@~0.1.10: - version "0.1.15" - resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc" - integrity sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg== +ret@~0.2.0: + version "0.2.2" + resolved "https://registry.yarnpkg.com/ret/-/ret-0.2.2.tgz#b6861782a1f4762dce43402a71eb7a283f44573c" + integrity sha512-M0b3YWQs7R3Z917WRQy1HHA7Ba7D8hvZg6UE5mLykJxQVE2ju0IXbGlaHPPlkY+WN7wFP+wUMXmBFA0aV6vYGQ== rimraf@^3.0.2: version "3.0.2" @@ -2992,7 +3047,7 @@ rimraf@~2.4.0: dependencies: glob "^6.0.1" -safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.2, safe-buffer@~5.2.0: +safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.2, safe-buffer@^5.2.1, safe-buffer@~5.2.0: version "5.2.1" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== @@ -3002,17 +3057,17 @@ safe-buffer@~5.1.0, safe-buffer@~5.1.1: resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== -safe-json-stringify@^1.0.3, safe-json-stringify@^1.0.4, safe-json-stringify@~1: +safe-json-stringify@^1.0.4, safe-json-stringify@~1: version "1.2.0" resolved "https://registry.yarnpkg.com/safe-json-stringify/-/safe-json-stringify-1.2.0.tgz#356e44bc98f1f93ce45df14bcd7c01cda86e0afd" integrity sha512-gH8eh2nZudPQO6TytOvbxnuhYBOvDBBLW52tz5q6X58lJcd/tkmqFR+5Z9adS8aJtURSXWThWy/xJtJwixErvg== -safe-regex@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e" - integrity sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg== +safe-regex2@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/safe-regex2/-/safe-regex2-2.0.0.tgz#b287524c397c7a2994470367e0185e1916b1f5b9" + integrity sha512-PaUSFsUaNNuKwkBijoAPHAK6/eM6VirvyPWlZ7BAQy4D+hCvh4B6lIG+nPdhbFfIbP+gTGBcrdsOaUs0F+ZBOQ== dependencies: - ret "~0.1.10" + ret "~0.2.0" "safer-buffer@>= 2.1.2 < 3", safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0: version "2.1.2" @@ -3029,12 +3084,12 @@ semver-store@^0.3.0: resolved "https://registry.yarnpkg.com/semver-store/-/semver-store-0.3.0.tgz#ce602ff07df37080ec9f4fb40b29576547befbe9" integrity sha512-TcZvGMMy9vodEFSse30lWinkj+JgOBvPn8wRItpQRSayhc+4ssDs335uklkfvQQJgL/WvmHLVj4Ycv2s7QCQMg== -semver@^5.1.0, semver@^5.4.1, semver@^5.6.0: +semver@^5.1.0, semver@^5.6.0: version "5.7.1" resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== -semver@^6.0.0: +semver@^6.0.0, semver@^6.1.1: version "6.3.0" resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== @@ -3053,6 +3108,25 @@ semver@^7.3.5: dependencies: lru-cache "^6.0.0" +send@^0.16.2: + version "0.16.2" + resolved "https://registry.yarnpkg.com/send/-/send-0.16.2.tgz#6ecca1e0f8c156d141597559848df64730a6bbc1" + integrity sha512-E64YFPUssFHEFBvpbbjr44NCLtI1AohxQ8ZSiJjQLskAdKuriYEP6VyGEsRDH8ScozGpkaX1BGvhanqCwkcEZw== + dependencies: + debug "2.6.9" + depd "~1.1.2" + destroy "~1.0.4" + encodeurl "~1.0.2" + escape-html "~1.0.3" + etag "~1.8.1" + fresh "0.5.2" + http-errors "~1.6.2" + mime "1.4.1" + ms "2.0.0" + on-finished "~2.3.0" + range-parser "~1.2.0" + statuses "~1.4.0" + serialize-javascript@5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-5.0.1.tgz#7886ec848049a462467a97d3d918ebb2aaf934f4" @@ -3065,6 +3139,11 @@ set-blocking@^2.0.0: resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" integrity sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw== +setprototypeof@1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.1.0.tgz#d0bd85536887b6fe7c0d818cb962d9d91c54e656" + integrity sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ== + shebang-command@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" @@ -3120,30 +3199,28 @@ source-map@~0.6.1: resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== -spdy-transport@^2.0.18: - version "2.1.1" - resolved "https://registry.yarnpkg.com/spdy-transport/-/spdy-transport-2.1.1.tgz#c54815d73858aadd06ce63001e7d25fa6441623b" - integrity sha512-q7D8c148escoB3Z7ySCASadkegMmUZW8Wb/Q1u0/XBgDKMO880rLQDj8Twiew/tYi7ghemKUi/whSYOwE17f5Q== +spdy-transport@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/spdy-transport/-/spdy-transport-3.0.0.tgz#00d4863a6400ad75df93361a1608605e5dcdcf31" + integrity sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw== dependencies: - debug "^2.6.8" - detect-node "^2.0.3" + debug "^4.1.0" + detect-node "^2.0.4" hpack.js "^2.1.6" - obuf "^1.1.1" - readable-stream "^2.2.9" - safe-buffer "^5.0.1" - wbuf "^1.7.2" + obuf "^1.1.2" + readable-stream "^3.0.6" + wbuf "^1.7.3" -spdy@^3.4.7: - version "3.4.7" - resolved "https://registry.yarnpkg.com/spdy/-/spdy-3.4.7.tgz#42ff41ece5cc0f99a3a6c28aabb73f5c3b03acbc" - integrity sha512-jEvgkLRpMza5GON0oDzvLTLMAVfB5BxeOPbsWyisEyE8IbxL6cCiKbr8xrJdScs6XoOUp7pQy4PI+GVczHbO4w== +spdy@^4.0.0: + version "4.0.2" + resolved "https://registry.yarnpkg.com/spdy/-/spdy-4.0.2.tgz#b74f466203a3eda452c02492b91fb9e84a27677b" + integrity sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA== dependencies: - debug "^2.6.8" - handle-thing "^1.2.5" + debug "^4.1.0" + handle-thing "^2.0.0" http-deceiver "^1.2.7" - safe-buffer "^5.0.1" select-hose "^2.0.0" - spdy-transport "^2.0.18" + spdy-transport "^3.0.0" splaytree@^3.1.0: version "3.1.0" @@ -3204,15 +3281,27 @@ static-eval@2.0.2: dependencies: escodegen "^1.8.1" +"statuses@>= 1.4.0 < 2": + version "1.5.0" + resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c" + integrity sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA== + +statuses@~1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.4.0.tgz#bb73d446da2796106efcc1b601a253d6c46bd087" + integrity sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew== + stream-shift@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.1.tgz#d7088281559ab2778424279b0877da3c392d5a3d" integrity sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ== -stream-transform@^0.2.2: - version "0.2.2" - resolved "https://registry.yarnpkg.com/stream-transform/-/stream-transform-0.2.2.tgz#75867487f49528f8bf1d82499658753d02df7838" - integrity sha512-VfCjIZ8fk0v81py/OJef/s8YFic5HWkV53eeHjGBjFysySVqBVb3/GSwDUOF/E4yOrFF14y1JN6irTHQP1S0Gw== +stream-transform@^2.1.3: + version "2.1.3" + resolved "https://registry.yarnpkg.com/stream-transform/-/stream-transform-2.1.3.tgz#a1c3ecd72ddbf500aa8d342b0b9df38f5aa598e3" + integrity sha512-9GHUiM5hMiCi6Y03jD2ARC1ettBXkQBoQAe7nJsPknnI0ow10aXjTnew8QtYQmLjzn974BnmWEAJgCY6ZP1DeQ== + dependencies: + mixme "^0.5.1" "string-width@^1.0.2 || 2": version "2.1.1" @@ -3466,7 +3555,7 @@ util-deprecate@^1.0.1, util-deprecate@~1.0.1: resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= -uuid@^3.1.0, uuid@^3.3.2: +uuid@^3.3.2: version "3.4.0" resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee" integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A== @@ -3481,12 +3570,12 @@ v8-compile-cache@^2.0.3: resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.1.0.tgz#e14de37b31a6d194f5690d67efc4e7f6fc6ab30e" integrity sha512-usZBT3PW+LOjM25wbqIlZwPeJV+3OSz3M1k1Ws8snlW39dZyYL9lOGC5FgPVHfk0jKmjiDV8Z0mIbVQPiwFs7g== -vasync@^1.6.4: - version "1.6.4" - resolved "https://registry.yarnpkg.com/vasync/-/vasync-1.6.4.tgz#dfe93616ad0e7ae801b332a9d88bfc5cdc8e1d1f" - integrity sha512-3oQMomVgQgHzNe5iKuT8PGOhMCQcg1wfh00Nh/Kl39ERdTlw/uNS7kbrhEraDMDKWHdDdc0iBFahPEd/Ft2b+A== +vasync@^2.2.0: + version "2.2.1" + resolved "https://registry.yarnpkg.com/vasync/-/vasync-2.2.1.tgz#d881379ff3685e4affa8e775cf0fd369262a201b" + integrity sha512-Hq72JaTpcTFdWiNA4Y22Amej2GH3BFmBaKPPlDZ4/oC8HNn2ISHLkFrJU4Ds8R3jcUi7oo5Y9jcMHKjES+N9wQ== dependencies: - verror "1.6.0" + verror "1.10.0" verror@1.10.0: version "1.10.0" @@ -3497,23 +3586,7 @@ verror@1.10.0: core-util-is "1.0.2" extsprintf "^1.2.0" -verror@1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/verror/-/verror-1.6.0.tgz#7d13b27b1facc2e2da90405eb5ea6e5bdd252ea5" - integrity sha512-bIOaZx4+Bf6a7sIORfmYnyKLDLk/lhVym6rjYlq+vkitYKnhFmUpmPpDTCltWFrUTlGKs6sCeoDWfMA0oOOneA== - dependencies: - extsprintf "1.2.0" - -verror@^1.10.0, verror@^1.8.1: - version "1.10.1" - resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.1.tgz#4bf09eeccf4563b109ed4b3d458380c972b0cdeb" - integrity sha512-veufcmxri4e3XSrT0xwfUR7kguIkaxBeosDg00yDWhk49wdwkSUrvvsm7nc75e1PUyvIeZj6nS8VQRYz2/S4Xg== - dependencies: - assert-plus "^1.0.0" - core-util-is "1.0.2" - extsprintf "^1.2.0" - -wbuf@^1.1.0, wbuf@^1.7.2: +wbuf@^1.1.0, wbuf@^1.7.3: version "1.7.3" resolved "https://registry.yarnpkg.com/wbuf/-/wbuf-1.7.3.tgz#c1d8d149316d3ea852848895cb6a0bfe887b87df" integrity sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA== @@ -3593,10 +3666,10 @@ y18n@^5.0.5: resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.5.tgz#8769ec08d03b1ea2df2500acef561743bbb9ab18" integrity sha512-hsRUr4FFrvhhRH12wOdfs38Gy7k2FFzB9qgN9v3aLykRq0dRcdcpz5C9FxdS2NuhOrI/628b/KSTJ3rwHysYSg== -yallist@^2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" - integrity sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A== +yallist@^3.0.2: + version "3.1.1" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" + integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== yallist@^4.0.0: version "4.0.0" From c01f8a98a4003560d77e4238bc3be31b0b839ba6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 9 Jan 2023 17:38:07 +0100 Subject: [PATCH 246/337] Bump actions/setup-node from 3.5.1 to 3.6.0 (#695) Bumps [actions/setup-node](https://github.com/actions/setup-node) from 3.5.1 to 3.6.0. - [Release notes](https://github.com/actions/setup-node/releases) - [Commits](https://github.com/actions/setup-node/compare/v3.5.1...v3.6.0) --- updated-dependencies: - dependency-name: actions/setup-node dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/test.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index 2790478b..74d71eed 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -16,7 +16,7 @@ jobs: - uses: actions/checkout@v3 - name: Install Node.js 16 - uses: actions/setup-node@v3.5.1 + uses: actions/setup-node@v3.6.0 with: node-version: 16 From ae17228de7443291f65275c5bb5cb34eedd09615 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 9 Jan 2023 17:46:17 +0100 Subject: [PATCH 247/337] Bump jsonwebtoken from 8.5.1 to 9.0.0 (#682) Bumps [jsonwebtoken](https://github.com/auth0/node-jsonwebtoken) from 8.5.1 to 9.0.0. - [Release notes](https://github.com/auth0/node-jsonwebtoken/releases) - [Changelog](https://github.com/auth0/node-jsonwebtoken/blob/master/CHANGELOG.md) - [Commits](https://github.com/auth0/node-jsonwebtoken/compare/v8.5.1...v9.0.0) --- updated-dependencies: - dependency-name: jsonwebtoken dependency-type: direct:production ... Signed-off-by: dependabot[bot] Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Matthias Pfeil --- packages/api/package.json | 2 +- yarn.lock | 64 +++++---------------------------------- 2 files changed, 9 insertions(+), 57 deletions(-) diff --git a/packages/api/package.json b/packages/api/package.json index 86cdfc17..8689d385 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -29,7 +29,7 @@ "got": "^11.8.2", "honeybadger": "^1.4.0", "isemail": "^3.0.0", - "jsonwebtoken": "^8.1.0", + "jsonwebtoken": "^9.0.0", "millify": "^5.0.1", "moment": "^2.29.4", "ms": "^2.1.3", diff --git a/yarn.lock b/yarn.lock index b70b4f70..6ff464d7 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2058,21 +2058,15 @@ jsonpath@^1.1.1: static-eval "2.0.2" underscore "1.12.1" -jsonwebtoken@^8.1.0: - version "8.5.1" - resolved "https://registry.yarnpkg.com/jsonwebtoken/-/jsonwebtoken-8.5.1.tgz#00e71e0b8df54c2121a1f26137df2280673bcc0d" - integrity sha512-XjwVfRS6jTMsqYs0EsuJ4LGxXV14zQybNd4L2r0UvbVnSF9Af8x7p5MzbJ90Ioz/9TI41/hTCvznF/loiSzn8w== +jsonwebtoken@^9.0.0: + version "9.0.0" + resolved "https://registry.yarnpkg.com/jsonwebtoken/-/jsonwebtoken-9.0.0.tgz#d0faf9ba1cc3a56255fe49c0961a67e520c1926d" + integrity sha512-tuGfYXxkQGDPnLJ7SibiQgVgeDgfbPq2k2ICcbgqW8WxWLBAxKQM/ZCu/IT8SOSwmaYl4dpTFCW5xZv7YbbWUw== dependencies: jws "^3.2.2" - lodash.includes "^4.3.0" - lodash.isboolean "^3.0.3" - lodash.isinteger "^4.0.4" - lodash.isnumber "^3.0.3" - lodash.isplainobject "^4.0.6" - lodash.isstring "^4.0.1" - lodash.once "^4.0.0" + lodash "^4.17.21" ms "^2.1.1" - semver "^5.6.0" + semver "^7.3.8" jsprim@^1.2.2: version "1.4.1" @@ -2161,46 +2155,11 @@ lodash.get@4.4.2: resolved "https://registry.yarnpkg.com/lodash.get/-/lodash.get-4.4.2.tgz#2d177f652fa31e939b4438d5341499dfa3825e99" integrity sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk= -lodash.includes@^4.3.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/lodash.includes/-/lodash.includes-4.3.0.tgz#60bb98a87cb923c68ca1e51325483314849f553f" - integrity sha1-YLuYqHy5I8aMoeUTJUgzFISfVT8= - -lodash.isboolean@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz#6c2e171db2a257cd96802fd43b01b20d5f5870f6" - integrity sha1-bC4XHbKiV82WgC/UOwGyDV9YcPY= - lodash.isequal@^4.5.0: version "4.5.0" resolved "https://registry.yarnpkg.com/lodash.isequal/-/lodash.isequal-4.5.0.tgz#415c4478f2bcc30120c22ce10ed3226f7d3e18e0" integrity sha1-QVxEePK8wwEgwizhDtMib30+GOA= -lodash.isinteger@^4.0.4: - version "4.0.4" - resolved "https://registry.yarnpkg.com/lodash.isinteger/-/lodash.isinteger-4.0.4.tgz#619c0af3d03f8b04c31f5882840b77b11cd68343" - integrity sha1-YZwK89A/iwTDH1iChAt3sRzWg0M= - -lodash.isnumber@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz#3ce76810c5928d03352301ac287317f11c0b1ffc" - integrity sha1-POdoEMWSjQM1IwGsKHMX8RwLH/w= - -lodash.isplainobject@^4.0.6: - version "4.0.6" - resolved "https://registry.yarnpkg.com/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz#7c526a52d89b45c45cc690b88163be0497f550cb" - integrity sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs= - -lodash.isstring@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/lodash.isstring/-/lodash.isstring-4.0.1.tgz#d527dfb5456eca7cc9bb95d5daeaf88ba54a5451" - integrity sha1-1SfftUVuynzJu5XV2ur4i6VKVFE= - -lodash.once@^4.0.0: - version "4.1.1" - resolved "https://registry.yarnpkg.com/lodash.once/-/lodash.once-4.1.1.tgz#0dd3971213c7c56df880977d504c88fb471a97ac" - integrity sha1-DdOXEhPHxW34gJd9UEyI+0cal6w= - lodash@^4.14.0, lodash@^4.17.11, lodash@^4.17.15, lodash@^4.17.20, lodash@^4.17.21: version "4.17.21" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" @@ -3084,7 +3043,7 @@ semver-store@^0.3.0: resolved "https://registry.yarnpkg.com/semver-store/-/semver-store-0.3.0.tgz#ce602ff07df37080ec9f4fb40b29576547befbe9" integrity sha512-TcZvGMMy9vodEFSse30lWinkj+JgOBvPn8wRItpQRSayhc+4ssDs335uklkfvQQJgL/WvmHLVj4Ycv2s7QCQMg== -semver@^5.1.0, semver@^5.6.0: +semver@^5.1.0: version "5.7.1" resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== @@ -3094,14 +3053,7 @@ semver@^6.0.0, semver@^6.1.1: resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== -semver@^7.2.1: - version "7.3.4" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.4.tgz#27aaa7d2e4ca76452f98d3add093a72c943edc97" - integrity sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw== - dependencies: - lru-cache "^6.0.0" - -semver@^7.3.5: +semver@^7.2.1, semver@^7.3.5, semver@^7.3.8: version "7.3.8" resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.8.tgz#07a78feafb3f7b32347d725e33de7e2a2df67798" integrity sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A== From 4d6fce79e2b9b78fea2440245a20b2357965914d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 9 Jan 2023 17:56:35 +0100 Subject: [PATCH 248/337] Bump actions/cache from 3.0.11 to 3.2.3 (#699) Bumps [actions/cache](https://github.com/actions/cache) from 3.0.11 to 3.2.3. - [Release notes](https://github.com/actions/cache/releases) - [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md) - [Commits](https://github.com/actions/cache/compare/v3.0.11...v3.2.3) --- updated-dependencies: - dependency-name: actions/cache dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/test.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index 74d71eed..f7abbd46 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -26,7 +26,7 @@ jobs: echo "##[set-output name=dir;]$(yarn cache dir)" - name: Restore yarn cache - uses: actions/cache@v3.0.11 + uses: actions/cache@v3.2.3 id: yarn-cache with: path: ${{ steps.yarn-cache-dir-path.outputs.dir }} From 9b523cf8dd2790c70aec43cdfdb488281990d2a6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 12 Jan 2023 13:08:23 +0100 Subject: [PATCH 249/337] Bump docker/metadata-action from 4.1.1 to 4.2.0 (#703) Bumps [docker/metadata-action](https://github.com/docker/metadata-action) from 4.1.1 to 4.2.0. - [Release notes](https://github.com/docker/metadata-action/releases) - [Commits](https://github.com/docker/metadata-action/compare/v4.1.1...v4.2.0) --- updated-dependencies: - dependency-name: docker/metadata-action dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/registry.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/registry.yaml b/.github/workflows/registry.yaml index c15f34a7..e22ab719 100644 --- a/.github/workflows/registry.yaml +++ b/.github/workflows/registry.yaml @@ -32,7 +32,7 @@ jobs: - name: Extract metadata (tags, labels) for Docker id: meta - uses: docker/metadata-action@v4.1.1 + uses: docker/metadata-action@v4.2.0 with: images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} flavor: | From b1d6f559c14a6a2d736da7c63348b879d617441b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 12 Jan 2023 14:24:11 +0100 Subject: [PATCH 250/337] Bump vlaurin/action-ghcr-prune from 0.4.0 to 0.5.0 (#696) Bumps [vlaurin/action-ghcr-prune](https://github.com/vlaurin/action-ghcr-prune) from 0.4.0 to 0.5.0. - [Release notes](https://github.com/vlaurin/action-ghcr-prune/releases) - [Commits](https://github.com/vlaurin/action-ghcr-prune/compare/v0.4.0...v0.5.0) --- updated-dependencies: - dependency-name: vlaurin/action-ghcr-prune dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/registry-purge-pr.yaml | 2 +- .github/workflows/registry-purge.yaml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/registry-purge-pr.yaml b/.github/workflows/registry-purge-pr.yaml index e73f5a66..fbabdf0b 100644 --- a/.github/workflows/registry-purge-pr.yaml +++ b/.github/workflows/registry-purge-pr.yaml @@ -11,7 +11,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Purge Pull Request Image - uses: vlaurin/action-ghcr-prune@v0.4.0 + uses: vlaurin/action-ghcr-prune@v0.5.0 with: token: ${{ secrets.GHCR_TOKEN}} organization: ${{ github.repository_owner}} diff --git a/.github/workflows/registry-purge.yaml b/.github/workflows/registry-purge.yaml index 60dcb384..153d0c7c 100644 --- a/.github/workflows/registry-purge.yaml +++ b/.github/workflows/registry-purge.yaml @@ -10,7 +10,7 @@ jobs: runs-on: ubuntu-latest steps: - name: clean packages - uses: vlaurin/action-ghcr-prune@v0.4.0 + uses: vlaurin/action-ghcr-prune@v0.5.0 with: token: ${{ secrets.GHCR_TOKEN}} organization: ${{ github.repository_owner}} From b6f476657cb4cca49503a27b780fd1b27273e145 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Thu, 12 Jan 2023 14:32:41 +0100 Subject: [PATCH 251/337] Update Readme closes #700 (#704) --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 18a43676..0563c2a6 100644 --- a/README.md +++ b/README.md @@ -11,7 +11,7 @@ You'll find that the repostiory uses yarn workspaces to separate the [API](packa Configuration of both the api and the models is done using mechanisms provided by [lorenwest/node-config](https://github.com/lorenwest/node-config). You can find an annotated example configuration with all keys in [`config/config.example.json`](config/config.example.json). ## Development -- Have [Node.js] v14, [yarn](https://yarnpkg.com/), [Docker](https://docs.docker.com/engine/installation/) and [docker-compose](https://docs.docker.com/compose/install/) installed +- Have [Node.js] v16, [yarn](https://yarnpkg.com/), [Docker](https://docs.docker.com/engine/installation/) and [docker-compose](https://docs.docker.com/compose/install/) installed - Start your development database (`docker-compose up -d db`) - Create branch for your feature (`git checkout my-awesome-feature`) - Run `yarn install` @@ -60,7 +60,7 @@ yarn test - Is generated and pushed to GitHub by GitHub Actions [file](.github/workflows/test.yaml) ### Tags and Versions -Git Tags are used for Docker hub builds (like `v1`). Version number is increased by one for each new version. Docker images are built automatically by the Docker hub for all tags starting with `v` +Git Tags are used for Github Container Registry builds (like `v1`). Version number is increased by following semantic versioning. Docker images are built automatically by Github Actions for all tags starting with `v` all pushes to `master` and all pull requests against `master`. #### Versioned container images - Check out `master` branch From ad5c6ddecfd643c2c8f343f59b4a4bdedd630dec Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Thu, 12 Jan 2023 14:52:56 +0100 Subject: [PATCH 252/337] Upgrade restify to v9.0.0 (#702) * Upgrade restify to v9.0.0 * Update more API route handlers * Resolve streams * Update csv-stringify * Update csv stringifier * Flush headers to fix csv format * Fix liniting and add error handler * Flush headers before streaming response to client * Flush headers again --- packages/api/app.js | 5 +- .../api/lib/controllers/boxesController.js | 48 +-- .../lib/controllers/managementController.js | 42 +-- .../lib/controllers/measurementsController.js | 69 ++-- .../api/lib/controllers/sensorsController.js | 4 +- .../lib/controllers/statisticsController.js | 34 +- .../api/lib/controllers/usersController.js | 51 +-- packages/api/lib/helpers/apiUtils.js | 4 +- packages/api/lib/helpers/errorHandler.js | 15 +- packages/api/lib/helpers/userParamHelpers.js | 55 ++- packages/api/lib/routes.js | 3 +- packages/api/package.json | 11 +- packages/models/package.json | 2 +- packages/models/src/box/box.js | 6 +- packages/models/src/log.js | 7 +- yarn.lock | 324 ++++++++++++------ 16 files changed, 399 insertions(+), 281 deletions(-) diff --git a/packages/api/app.js b/packages/api/app.js index c2e2adc6..2ab35628 100644 --- a/packages/api/app.js +++ b/packages/api/app.js @@ -17,9 +17,10 @@ const config = require('config'), { preRequest, preCors, Honeybadger, getVersion, postToMattermost } = require('./lib/helpers/apiUtils'), routes = require('./lib/routes'), - bunyan = require('bunyan'); + pino = require('pino'); -const log = bunyan.createLogger({ name: 'opensensemap-api', serializers: bunyan.stdSerializers }); +// const log = bunyan.createLogger({ name: 'opensensemap-api', serializers: bunyan.stdSerializers }); +const log = pino({ name: 'opensensemap-api', sserializers: pino.stdSerializers }); const server = restify.createServer({ name: `opensensemap-api (${getVersion})`, diff --git a/packages/api/lib/controllers/boxesController.js b/packages/api/lib/controllers/boxesController.js index 4d1e9516..00b9cc4f 100644 --- a/packages/api/lib/controllers/boxesController.js +++ b/packages/api/lib/controllers/boxesController.js @@ -132,7 +132,7 @@ const * @apiUse ContentTypeJSON * */ -const updateBox = async function updateBox (req, res, next) { +const updateBox = async function updateBox (req, res) { try { let box = await Box.findBoxById(req._userParams.boxId, { lean: false, populate: false }); box = await box.updateBox(req._userParams); @@ -143,7 +143,7 @@ const updateBox = async function updateBox (req, res, next) { res.send({ code: 'Ok', data: box.toJSON({ includeSecrets: true }) }); clearCache(['getBoxes']); } catch (err) { - handleError(err, next); + return handleError(err); } }; @@ -167,12 +167,12 @@ const updateBox = async function updateBox (req, res, next) { * { "coordinates": [7.68323, 51.9423], "type": "Point", "timestamp": "2017-07-27T12:02:00Z"} * ] */ -const getBoxLocations = async function getBoxLocations (req, res, next) { +const getBoxLocations = async function getBoxLocations (req, res) { try { const box = await Box.findBoxById(req._userParams.boxId, { onlyLocations: true, lean: false }); res.send(await box.getLocations(req._userParams)); } catch (err) { - handleError(err, next); + return handleError(err); } }; @@ -211,7 +211,7 @@ const geoJsonStringifyReplacer = function geoJsonStringifyReplacer (key, box) { * @apiSampleRequest https://api.opensensemap.org/boxes?date=2015-03-07T02:50Z&phenomenon=Temperatur * @apiSampleRequest https://api.opensensemap.org/boxes?date=2015-03-07T02:50Z,2015-04-07T02:50Z&phenomenon=Temperatur */ -const getBoxes = async function getBoxes (req, res, next) { +const getBoxes = async function getBoxes (req, res) { // content-type is always application/json for this route res.header('Content-Type', 'application/json; charset=utf-8'); @@ -252,7 +252,7 @@ const getBoxes = async function getBoxes (req, res, next) { }) .pipe(res); } catch (err) { - handleError(err, next); + return handleError(err); } }; @@ -357,7 +357,7 @@ const getBoxes = async function getBoxes (req, res, next) { } */ -const getBox = async function getBox (req, res, next) { +const getBox = async function getBox (req, res) { const { format, boxId } = req._userParams; try { @@ -372,7 +372,7 @@ const getBox = async function getBox (req, res, next) { } res.send(box); } catch (err) { - handleError(err, next); + return handleError(err); } }; @@ -406,7 +406,7 @@ const getBox = async function getBox (req, res, next) { * @apiUse ContentTypeJSON * @apiUse JWTokenAuth */ -const postNewBox = async function postNewBox (req, res, next) { +const postNewBox = async function postNewBox (req, res) { try { let newBox = await req.user.addBox(req._userParams); newBox = await Box.populate(newBox, Box.BOX_SUB_PROPS_FOR_POPULATION); @@ -422,7 +422,7 @@ const postNewBox = async function postNewBox (req, res, next) { }](https://opensensemap.org/explore/${newBox._id})` ); } catch (err) { - handleError(err, next); + return handleError(err); } }; @@ -443,7 +443,7 @@ const postNewBox = async function postNewBox (req, res, next) { * @apiUse JWTokenAuth * @apiUse BoxIdParam */ -const getSketch = async function getSketch (req, res, next) { +const getSketch = async function getSketch (req, res) { res.header('Content-Type', 'text/plain; charset=utf-8'); try { const box = await Box.findBoxById(req._userParams.boxId, { populate: false, lean: false }); @@ -468,7 +468,7 @@ const getSketch = async function getSketch (req, res, next) { res.send(box.getSketch(params)); } catch (err) { - handleError(err, next); + return handleError(err); } }; @@ -482,7 +482,7 @@ const getSketch = async function getSketch (req, res, next) { * @apiUse JWTokenAuth * @apiUse BoxIdParam */ -const deleteBox = async function deleteBox (req, res, next) { +const deleteBox = async function deleteBox (req, res) { const { password, boxId } = req._userParams; try { @@ -493,7 +493,7 @@ const deleteBox = async function deleteBox (req, res, next) { postToMattermost(`Box deleted: ${req.user.name} (${redactEmail(req.user.email)}) just deleted "${box.name}" (${boxId})`); } catch (err) { - handleError(err, next); + return handleError(err); } }; @@ -505,7 +505,7 @@ const deleteBox = async function deleteBox (req, res, next) { * @apiUse JWTokenAuth * @apiUse BoxIdParam */ -const getTransfer = async function getTransfer (req, res, next) { +const getTransfer = async function getTransfer (req, res) { const { boxId } = req._userParams; try { const transfer = await Claim.findClaimByDeviceID(boxId); @@ -513,7 +513,7 @@ const getTransfer = async function getTransfer (req, res, next) { data: transfer, }); } catch (err) { - handleError(err, next); + return handleError(err); } }; @@ -526,7 +526,7 @@ const getTransfer = async function getTransfer (req, res, next) { * @apiParam (RequestBody) {RFC3339Date} expiresAt Expiration date for transfer token (default: 24 hours from now). * @apiUse JWTokenAuth */ -const createTransfer = async function createTransfer (req, res, next) { +const createTransfer = async function createTransfer (req, res) { const { boxId, date } = req._userParams; try { const transferCode = await req.user.transferBox(boxId, date); @@ -535,7 +535,7 @@ const createTransfer = async function createTransfer (req, res, next) { data: transferCode, }); } catch (err) { - handleError(err, next); + return handleError(err); } }; @@ -549,7 +549,7 @@ const createTransfer = async function createTransfer (req, res, next) { * @apiUse JWTokenAuth * @apiUse BoxIdParam */ -const updateTransfer = async function updateTransfer (req, res, next) { +const updateTransfer = async function updateTransfer (req, res) { const { boxId, token, date } = req._userParams; try { const transfer = await req.user.updateTransfer(boxId, token, date); @@ -558,7 +558,7 @@ const updateTransfer = async function updateTransfer (req, res, next) { data: transfer, }); } catch (err) { - handleError(err, next); + return handleError(err); } }; @@ -571,13 +571,13 @@ const updateTransfer = async function updateTransfer (req, res, next) { * @apiParam (RequestBody) {String} token Transfer token you want to revoke. * @apiUse JWTokenAuth */ -const removeTransfer = async function removeTransfer (req, res, next) { +const removeTransfer = async function removeTransfer (req, res) { const { boxId, token } = req._userParams; try { await req.user.removeTransfer(boxId, token); res.send(204); } catch (err) { - handleError(err, next); + return handleError(err); } }; @@ -590,7 +590,7 @@ const removeTransfer = async function removeTransfer (req, res, next) { * @apiParam (RequestBody) {String} token the token to claim a senseBox * @apiUse JWTokenAuth */ -const claimBox = async function claimBox (req, res, next) { +const claimBox = async function claimBox (req, res) { const { token } = req._userParams; try { @@ -601,7 +601,7 @@ const claimBox = async function claimBox (req, res, next) { res.send(200, { message: 'Device successfully claimed!' }); } catch (err) { - handleError(err, next); + return handleError(err); } }; diff --git a/packages/api/lib/controllers/managementController.js b/packages/api/lib/controllers/managementController.js index ea377c35..84e217af 100644 --- a/packages/api/lib/controllers/managementController.js +++ b/packages/api/lib/controllers/managementController.js @@ -10,7 +10,7 @@ const { Box, User } = require('@sensebox/opensensemap-api-models'), jsonstringify = require('stringify-stream'); -const listBoxes = async function listBoxes (req, res, next) { +const listBoxes = async function listBoxes (req, res) { // default format const stringifier = jsonstringify({ open: '[', close: ']' }); @@ -23,11 +23,11 @@ const listBoxes = async function listBoxes (req, res, next) { }) .pipe(res); } catch (err) { - handleError(err, next); + return handleError(err); } }; -const listUsers = async function listUsers (req, res, next) { +const listUsers = async function listUsers (req, res) { try { const users = await User.find() .then(function (users) { @@ -40,11 +40,11 @@ const listUsers = async function listUsers (req, res, next) { res.send({ code: 'Ok', users }); } catch (err) { - handleError(err, next); + return handleError(err); } }; -const getUser = async function getUser (req, res, next) { +const getUser = async function getUser (req, res) { const { userId } = req._userParams; try { @@ -57,11 +57,11 @@ const getUser = async function getUser (req, res, next) { }); res.send(user.toJSON({ includeSecrets: true })); } catch (err) { - handleError(err, next); + return handleError(err); } }; -const getBox = async function getBox (req, res, next) { +const getBox = async function getBox (req, res) { const { boxId } = req._userParams; try { @@ -74,11 +74,11 @@ const getBox = async function getBox (req, res, next) { res.send(box); } catch (err) { - handleError(err, next); + return handleError(err); } }; -const deleteBoxes = async function deleteBoxes (req, res, next) { +const deleteBoxes = async function deleteBoxes (req, res) { const { boxIds } = req._userParams; try { @@ -90,11 +90,11 @@ const deleteBoxes = async function deleteBoxes (req, res, next) { } res.send({ boxIds }); } catch (err) { - handleError(err, next); + return handleError(err); } }; -const updateBox = async function updateBox (req, res, next) { +const updateBox = async function updateBox (req, res) { try { const { owner, boxId } = req._userParams; // update owner @@ -117,17 +117,17 @@ const updateBox = async function updateBox (req, res, next) { res.send({ code: 'Ok', data: box }); clearCache(['getBoxes']); } catch (err) { - handleError(err, next); + return handleError(err); } }; -const updateUser = async function updateUser (req, res, next) { +const updateUser = async function updateUser (req, res) { try { const { userId } = req._userParams; const user = await User.findById(userId); if (!user) { - throw new NotFoundError('Box not found'); + return Promise.reject(new NotFoundError('Box not found')); } for (const param of ['email', 'name', 'password', 'role', 'language']) { @@ -141,11 +141,11 @@ const updateUser = async function updateUser (req, res, next) { postToMattermost(`Management Action: User updated: ${req.user.name} (${req.user.email}) just updated "${user.name}" (${user.email})`); res.send({ code: 'Ok', data: user }); } catch (err) { - handleError(err, next); + return handleError(err); } }; -const deleteUsers = async function deleteUsers (req, res, next) { +const deleteUsers = async function deleteUsers (req, res) { try { const { userIds } = req._userParams; @@ -160,16 +160,16 @@ const deleteUsers = async function deleteUsers (req, res, next) { } res.send({ userIds }); } catch (err) { - handleError(err, next); + return handleError(err); } }; -const execUserAction = async function execUserAction (req, res, next) { +const execUserAction = async function execUserAction (req, res) { try { const { userId, boxId, action } = req._userParams; if (action === 'resendBoxMail' && !boxId) { - throw new BadRequestError('Action \'resendBoxMail\' requires parameter boxId.'); + return Promise.reject(new BadRequestError('Action \'resendBoxMail\' requires parameter boxId.')); } const user = await User.findById(userId) @@ -179,7 +179,7 @@ const execUserAction = async function execUserAction (req, res, next) { if (action === 'resendBoxMail') { box = user.boxes.find(id => id.equals(boxId)); if (!box) { - throw new BadRequestError(`Box with id ${boxId} not in this user.`); + return Promise.reject(new BadRequestError(`Box with id ${boxId} not in this user.`)); } } @@ -203,7 +203,7 @@ const execUserAction = async function execUserAction (req, res, next) { res.send({ code: 'Ok' }); } catch (err) { - handleError(err, next); + return handleError(err); } }; diff --git a/packages/api/lib/controllers/measurementsController.js b/packages/api/lib/controllers/measurementsController.js index a5cdd7a0..e7e72ab3 100644 --- a/packages/api/lib/controllers/measurementsController.js +++ b/packages/api/lib/controllers/measurementsController.js @@ -1,12 +1,18 @@ 'use strict'; -const - { BadRequestError, UnsupportedMediaTypeError } = require('restify-errors'), +const { + BadRequestError, + UnsupportedMediaTypeError, + } = require('restify-errors'), { Measurement, Box } = require('@sensebox/opensensemap-api-models'), - { checkContentType, createDownloadFilename, csvStringifier } = require('../helpers/apiUtils'), + { + checkContentType, + createDownloadFilename, + csvStringifier, + } = require('../helpers/apiUtils'), { retrieveParameters, - validateFromToTimeParams + validateFromToTimeParams, } = require('../helpers/userParamHelpers'), handleError = require('../helpers/errorHandler'), OutlierTransformer = require('../transformers/outlierTransformer'), @@ -30,7 +36,7 @@ const * @apiUse SensorIdParam * @apiParam {Boolean="true","false"} [onlyValue] If set to true only returns the measured value without information about the sensor. Requires a sensorId. */ -const getLatestMeasurements = async function getLatestMeasurements (req, res, next) { +const getLatestMeasurements = async function getLatestMeasurements (req, res) { const { _userParams: params } = req; let box; @@ -61,9 +67,7 @@ const getLatestMeasurements = async function getLatestMeasurements (req, res, ne }); } } catch (err) { - handleError(err, next); - - return; + return handleError(err); } if (params.sensorId) { @@ -122,7 +126,7 @@ const jsonLocationReplacer = function jsonLocationReplacer (k, v) { * @apiParam {Boolean="true","false"} [download] if specified, the api will set the `content-disposition` header thus forcing browsers to download instead of displaying. Is always true for format csv. * @apiUse SeparatorParam */ -const getData = function getData (req, res, next) { +const getData = async function getData (req, res) { const { sensorId, format, download, outliers, outlierWindow, delimiter } = req._userParams; let stringifier; @@ -141,7 +145,7 @@ const getData = function getData (req, res, next) { let measurementsStream = Measurement.getMeasurementsStream(req._userParams) .on('error', function (err) { - return handleError(err, next); + return handleError(err); }); if (outliers) { @@ -152,6 +156,9 @@ const getData = function getData (req, res, next) { })); } + // A last time flush headers :) + res.flushHeaders(); + measurementsStream .pipe(stringifier) .pipe(res); @@ -173,7 +180,7 @@ const getData = function getData (req, res, next) { * @apiParam {String=createdAt,value,lat,lon,height,boxId,boxName,exposure,sensorId,phenomenon,unit,sensorType} [columns=sensorId,createdAt,value,lat,lon] Comma separated list of columns to export. * @apiParam {Boolean=true,false} [download=true] Set the `content-disposition` header to force browsers to download instead of displaying. */ -const getDataMulti = async function getDataMulti (req, res, next) { +const getDataMulti = async function getDataMulti (req, res) { const { boxId, bbox, exposure, delimiter, columns, fromDate, toDate, phenomenon, download, format } = req._userParams; // build query @@ -182,9 +189,9 @@ const getDataMulti = async function getDataMulti (req, res, next) { }; if (boxId && bbox) { - return next(new BadRequestError('please specify only boxId or bbox')); + return Promise.reject(new BadRequestError('please specify only boxId or bbox')); } else if (!boxId && !bbox) { - return next(new BadRequestError('please specify either boxId or bbox')); + return Promise.reject(new BadRequestError('please specify either boxId or bbox')); } if (boxId) { @@ -206,30 +213,32 @@ const getDataMulti = async function getDataMulti (req, res, next) { }); stream = stream .on('error', function (err) { - return handleError(err, next); + return handleError(err); }); switch (format) { case 'csv': res.header('Content-Type', 'text/csv'); - stream = stream - .pipe(csvStringifier(columns, delimiter)); + stream = stream.pipe(csvStringifier(columns, delimiter)); break; case 'json': res.header('Content-Type', 'application/json'); - stream = stream - .pipe(jsonstringify({ open: '[', close: ']' })); + // stringifier = jsonstringify({ open: '[', close: ']' }); + stream = stream.pipe(jsonstringify({ open: '[', close: ']' })); break; } if (download === 'true') { - res.header('Content-Disposition', `attachment; filename=${createDownloadFilename(req.date(), 'download', [phenomenon, ...columns], format)}`); + res.setHeader('Content-Disposition', `attachment; filename=${createDownloadFilename(req.date(), 'download', [phenomenon, ...columns], format)}`); } + // flushHeaders is fixing csv-stringify + res.flushHeaders(); + stream .pipe(res); } catch (err) { - handleError(err, next); + return handleError(err); } }; @@ -241,7 +250,7 @@ const getDataMulti = async function getDataMulti (req, res, next) { * @apiName getDataByGroupTag * @apiParam {String} grouptag The grouptag to search by. */ -const getDataByGroupTag = async function getDataByGroupTag (req, res, next) { +const getDataByGroupTag = async function getDataByGroupTag (req, res) { const { grouptag, format } = req._userParams; const queryTags = grouptag.split(','); // build query @@ -256,7 +265,7 @@ const getDataByGroupTag = async function getDataByGroupTag (req, res, next) { }); stream = stream .on('error', function (err) { - return handleError(err, next); + return handleError(err); }); switch (format) { case 'json': @@ -269,7 +278,7 @@ const getDataByGroupTag = async function getDataByGroupTag (req, res, next) { stream .pipe(res); } catch (err) { - handleError(err, next); + return handleError(err); } }; @@ -287,13 +296,13 @@ const getDataByGroupTag = async function getDataByGroupTag (req, res, next) { * @apiParam (RequestBody) {Location} [location] the WGS84-coordinates of the measurement. * @apiHeader {String} Authorization Box' unique access_token. Will be used as authorization token if box has auth enabled (e.g. useAuth: true) */ -const postNewMeasurement = async function postNewMeasurement (req, res, next) { +const postNewMeasurement = async function postNewMeasurement (req, res) { const { boxId, sensorId, value, createdAt, location } = req._userParams; try { const box = await Box.findBoxById(boxId, { populate: false, lean: false }); if (box.useAuth && box.access_token && box.access_token !== req.headers.authorization) { - throw new UnauthorizedError('Box access token not valid!'); + return Promise.reject(new UnauthorizedError('Box access token not valid!')); } const [measurement] = await Measurement.decodeMeasurements([{ @@ -305,7 +314,7 @@ const postNewMeasurement = async function postNewMeasurement (req, res, next) { await box.saveMeasurement(measurement); res.send(201, 'Measurement saved in box'); } catch (err) { - handleError(err, next); + return handleError(err); } }; @@ -388,7 +397,7 @@ const postNewMeasurement = async function postNewMeasurement (req, res, next) { * "error": "4" * } */ -const postNewMeasurements = async function postNewMeasurements (req, res, next) { +const postNewMeasurements = async function postNewMeasurements (req, res) { const { boxId, luftdaten, hackair } = req._userParams; let contentType = req.getContentType(); @@ -408,17 +417,17 @@ const postNewMeasurements = async function postNewMeasurements (req, res, next) // authorization for all boxes that have not opt out if ((box.useAuth || contentType === 'hackair') && box.access_token && box.access_token !== req.headers.authorization) { - throw new UnauthorizedError('Box access token not valid!'); + return Promise.reject(new UnauthorizedError('Box access token not valid!')); } const measurements = await Measurement.decodeMeasurements(req.body, { contentType, sensors: box.sensors }); await box.saveMeasurementsArray(measurements); res.send(201, 'Measurements saved in box'); } catch (err) { - handleError(err, next); + return handleError(err); } } else { - return next(new UnsupportedMediaTypeError('Unsupported content-type.')); + return Promise.reject(new UnsupportedMediaTypeError('Unsupported content-type.')); } }; diff --git a/packages/api/lib/controllers/sensorsController.js b/packages/api/lib/controllers/sensorsController.js index 65feaf50..554d30fe 100644 --- a/packages/api/lib/controllers/sensorsController.js +++ b/packages/api/lib/controllers/sensorsController.js @@ -40,13 +40,13 @@ const { Box } = require('@sensebox/opensensemap-api-models'), * @apiParam (RequestBody) {RFC3339Date[]} [timestamps] Allows to specify timestamps which should be deleted * @apiParam (RequestBody) {Boolean=true,false} [deleteAllMeasurements=false] Specify `deleteAllMeasurements` with a value of `true` to delete all measurements of this sensor */ -const deleteSensorData = async function deleteSensorData (req, res, next) { +const deleteSensorData = async function deleteSensorData (req, res) { try { const box = await Box.findBoxById(req._userParams.boxId, { lean: false }); const message = await box.deleteMeasurementsOfSensor(req._userParams); res.send({ code: 'Ok', message }); } catch (err) { - handleError(err, next); + return handleError(err); } }; diff --git a/packages/api/lib/controllers/statisticsController.js b/packages/api/lib/controllers/statisticsController.js index 8aa74a36..a5e6e81e 100644 --- a/packages/api/lib/controllers/statisticsController.js +++ b/packages/api/lib/controllers/statisticsController.js @@ -24,7 +24,7 @@ const { Box, Measurement } = require('@sensebox/opensensemap-api-models'), * @apiSuccessExample {json} [human=true] * ["318","118M","393"] */ -const getStatistics = async function getStatistics (req, res, next) { +const getStatistics = async function getStatistics (req, res) { const { human } = req._userParams; try { let results = await Promise.all([ @@ -43,7 +43,7 @@ const getStatistics = async function getStatistics (req, res, next) { res.send(200, results); } catch (err) { - return next(err); + return err; } }; @@ -72,14 +72,14 @@ const getStatistics = async function getStatistics (req, res, next) { const idwColumns = ['sensorId', 'value', 'lat', 'lon']; -const idwHandler = async function (req, res, next) { +const idwHandler = async function (req, res) { const { phenomenon, bbox, exposure, cellWidth, gridType, power, numTimeSteps, numClasses, fromDate, toDate } = req._userParams; // validate bbox param, we don't want too much load on our server! const areaSqKm = area(bbox) / 10e6; if (areaSqKm / cellWidth > 2500) { - return next(new UnprocessableEntityError('planned computation too expensive ((area in square kilometers / cellWidth) > 2500)')); + return Promise.reject(new UnprocessableEntityError('planned computation too expensive ((area in square kilometers / cellWidth) > 2500)')); } // build query @@ -102,9 +102,12 @@ const idwHandler = async function (req, res, next) { }); res.header('Content-Type', 'application/json; charset=utf-8'); + // Flush again + res.flushHeaders(); + cursor .on('error', function (err) { - return handleError(err, next); + return handleError(err); }) .pipe(idwTransformer({ numTimeSteps, @@ -121,7 +124,7 @@ const idwHandler = async function (req, res, next) { }) .pipe(res); } catch (err) { - handleError(err, next); + return handleError(err); } }; @@ -186,13 +189,13 @@ const idwHandler = async function (req, res, next) { * 5a8e8c6c8432c3001bfe4156,2018-02-05T00:00:00.000Z,17 */ const minWindowLengthMs = ms('1m'); -const descriptiveStatisticsHandler = async function descriptiveStatisticsHandler (req, res, next) { +const descriptiveStatisticsHandler = async function descriptiveStatisticsHandler (req, res) { const { boxId, bbox, exposure, delimiter, columns, phenomenon, operation, download, format, window } = req._userParams; let { fromDate, toDate } = req._userParams; const windowMs = Math.round(ms(window) / minWindowLengthMs) * minWindowLengthMs; if (!windowMs || windowMs < minWindowLengthMs) { - return next(new BadRequestError(`Invalid window length. Smallest window size is ${ms(minWindowLengthMs, { long: true })}.`)); + return Promise.reject(new BadRequestError(`Invalid window length. Smallest window size is ${ms(minWindowLengthMs, { long: true })}.`)); } // compute start and end times in milliseconds @@ -212,9 +215,9 @@ const descriptiveStatisticsHandler = async function descriptiveStatisticsHandler toDate = new Date(toDate + windowMs); if (boxId && bbox) { - return next(new BadRequestError('please specify only boxId or bbox')); + return Promise.reject(new BadRequestError('please specify only boxId or bbox')); } else if (!boxId && !bbox) { - return next(new BadRequestError('please specify either boxId or bbox')); + return Promise.reject(new BadRequestError('please specify either boxId or bbox')); } const opts = { @@ -299,10 +302,13 @@ const descriptiveStatisticsHandler = async function descriptiveStatisticsHandler res.header('Content-Disposition', `attachment; filename=${createDownloadFilename(req.date(), operation, [phenomenon, ...columns], fileExtension)}`); } + // Flush again to stream + res.flushHeaders(); + // stream response to client cursor .on('error', function (err) { - return handleError(err, next); + return handleError(err); }) .pipe(new DescriptiveStatisticsTransformer({ operation, @@ -310,15 +316,15 @@ const descriptiveStatisticsHandler = async function descriptiveStatisticsHandler tidy: (format === 'tidy') })) .on('error', function (err) { - return handleError(err, next); + return handleError(err); }) .pipe(stringifier) .on('error', function (err) { - return handleError(err, next); + return handleError(err); }) .pipe(res); } catch (err) { - handleError(err, next); + return handleError(err); } }; diff --git a/packages/api/lib/controllers/usersController.js b/packages/api/lib/controllers/usersController.js index 3995cf6d..7e2028f7 100644 --- a/packages/api/lib/controllers/usersController.js +++ b/packages/api/lib/controllers/usersController.js @@ -43,7 +43,7 @@ const { User } = require('@sensebox/opensensemap-api-models'), * @apiSuccess (Created 201) {String} refreshToken valid refresh token * @apiSuccess (Created 201) {Object} data `{ "user": {"name":"fullname","email":"test@test.de","role":"user","language":"en_US","boxes":[],"emailIsConfirmed":false} }` */ -const registerUser = async function registerUser (req, res, next) { +const registerUser = async function registerUser (req, res) { const { email, password, language, name } = req._userParams; try { @@ -56,10 +56,10 @@ const registerUser = async function registerUser (req, res, next) { return res.send(201, { code: 'Created', message: 'Successfully registered new user', data: { user: newUser }, token, refreshToken }); } catch (err) { - return next(new InternalServerError(`User successfully created but unable to create jwt token: ${err.message}`)); + return Promise.reject(new InternalServerError(`User successfully created but unable to create jwt token: ${err.message}`)); } } catch (err) { - handleError(err, next); + return handleError(err); } }; @@ -77,7 +77,7 @@ const registerUser = async function registerUser (req, res, next) { * @apiSuccess {Object} data `{ "user": {"name":"fullname","email":"test@test.de","role":"user","language":"en_US","boxes":[],"emailIsConfirmed":false} }` * @apiError {String} 403 Unauthorized */ -const signIn = async function signIn (req, res, next) { +const signIn = async function signIn (req, res) { const { email: emailOrName, password } = req._userParams; try { @@ -87,7 +87,7 @@ const signIn = async function signIn (req, res, next) { .exec(); if (!user) { - throw new ForbiddenError('User and or password not valid!'); + return Promise.reject(new ForbiddenError('User and or password not valid!')); } if (await user.checkPassword(password)) { @@ -97,9 +97,10 @@ const signIn = async function signIn (req, res, next) { } } catch (err) { if (err.name === 'ModelError' && err.message === 'Password incorrect') { - return handleError(new ForbiddenError('User and or password not valid!'), next); + return handleError(new ForbiddenError('User and or password not valid!')); } - handleError(err, next); + + return handleError(err); } }; @@ -116,12 +117,12 @@ const signIn = async function signIn (req, res, next) { * @apiSuccess {Object} data `{ "user": {"name":"fullname","email":"test@test.de","role":"user","language":"en_US","boxes":[],"emailIsConfirmed":false} }` * @apiError {Object} Forbidden `{"code":"ForbiddenError","message":"Refresh token invalid or too old. Please sign in with your username and password."}` */ -const refreshJWT = async function refreshJWT (req, res, next) { +const refreshJWT = async function refreshJWT (req, res) { try { const { token, refreshToken, user } = await refreshJwt(req._userParams.token); res.send(200, { code: 'Authorized', message: 'Successfully refreshed auth', data: { user }, token, refreshToken }); } catch (err) { - handleError(err, next); + return handleError(err); } }; @@ -134,7 +135,7 @@ const refreshJWT = async function refreshJWT (req, res, next) { * @apiSuccess {String} code `Ok` * @apiSuccess {String} message `Successfully signed out` */ -const signOut = function signOut (req, res) { +const signOut = async function signOut (req, res) { invalidateToken(req); return res.send(200, { code: 'Ok', message: 'Successfully signed out' }); @@ -150,12 +151,12 @@ const signOut = function signOut (req, res) { * @apiSuccess {String} message `Password reset initiated` */ // generate new password reset token and send the token to the user -const requestResetPassword = async function requestResetPassword (req, res, next) { +const requestResetPassword = async function requestResetPassword (req, res) { try { await User.initPasswordReset(req._userParams); res.send(200, { code: 'Ok', message: 'Password reset initiated' }); } catch (err) { - handleError(err, next); + return handleError(err); } }; @@ -170,12 +171,12 @@ const requestResetPassword = async function requestResetPassword (req, res, next * @apiSuccess {String} message `Password successfully changed. You can now login with your new password` */ // set new password with reset token as auth -const resetPassword = async function resetPassword (req, res, next) { +const resetPassword = async function resetPassword (req, res) { try { await User.resetPassword(req._userParams); res.send(200, { code: 'Ok', message: 'Password successfully changed. You can now login with your new password' }); } catch (err) { - handleError(err, next); + return handleError(err); } }; @@ -189,12 +190,12 @@ const resetPassword = async function resetPassword (req, res, next) { * @apiSuccess {String} code `Ok` * @apiSuccess {String} message `E-Mail successfully confirmed. Thank you` */ -const confirmEmailAddress = async function confirmEmailAddress (req, res, next) { +const confirmEmailAddress = async function confirmEmailAddress (req, res) { try { await User.confirmEmail(req._userParams); res.send(200, { code: 'Ok', message: 'E-Mail successfully confirmed. Thank you' }); } catch (err) { - handleError(err, next); + return handleError(err); } }; @@ -206,13 +207,13 @@ const confirmEmailAddress = async function confirmEmailAddress (req, res, next) * @apiSuccess {String} code `Ok` * @apiSuccess {String} data A json object with a single `boxes` array field */ -const getUserBoxes = async function getUserBoxes (req, res, next) { +const getUserBoxes = async function getUserBoxes (req, res) { try { const boxes = await req.user.getBoxes(); const sharedBoxes = await req.user.getSharedBoxes(); res.send(200, { code: 'Ok', data: { boxes: boxes, sharedBoxes: sharedBoxes } }); } catch (err) { - handleError(err, next); + return handleError(err); } }; @@ -223,7 +224,7 @@ const getUserBoxes = async function getUserBoxes (req, res, next) { * @apiGroup Users * @apiUse JWTokenAuth */ -const getUser = function getUser (req, res) { +const getUser = async function getUser (req, res) { res.send(200, { code: 'Ok', data: { me: req.user } }); }; @@ -239,7 +240,7 @@ const getUser = function getUser (req, res) { * @apiParam {String} [newPassword] the new password for this user. Should be at least 8 characters long. * @apiParam {String} currentPassword the current password for this user. */ -const updateUser = async function updateUser (req, res, next) { +const updateUser = async function updateUser (req, res) { try { const { updated, signOut, messages, updatedUser } = await req.user.updateUser(req._userParams); if (updated === false) { @@ -251,7 +252,7 @@ const updateUser = async function updateUser (req, res, next) { } res.send(200, { code: 'Ok', message: `User successfully saved.${messages.join('.')}`, data: { me: updatedUser } }); } catch (err) { - handleError(err, next); + return handleError(err); } }; @@ -264,7 +265,7 @@ const updateUser = async function updateUser (req, res, next) { * @apiParam {String} password the current password for this user. */ -const deleteUser = async function deleteUser (req, res, next) { +const deleteUser = async function deleteUser (req, res) { const { password } = req._userParams; try { @@ -276,7 +277,7 @@ const deleteUser = async function deleteUser (req, res, next) { clearCache(['getBoxes', 'getStats']); postToMattermost(`User deleted: ${req.user.name} (${redactEmail(req.user.email)})`); } catch (err) { - handleError(err, next); + return handleError(err); } }; @@ -289,7 +290,7 @@ const deleteUser = async function deleteUser (req, res, next) { * @apiSuccess {String} code `Ok` * @apiSuccess {String} message `Email confirmation has been sent to ` */ -const requestEmailConfirmation = async function requestEmailConfirmation (req, res, next) { +const requestEmailConfirmation = async function requestEmailConfirmation (req, res) { try { const result = await req.user.resendEmailConfirmation(); let usedAddress = result.email; @@ -298,7 +299,7 @@ const requestEmailConfirmation = async function requestEmailConfirmation (req, r } res.send(200, { code: 'Ok', message: `Email confirmation has been sent to ${usedAddress}` }); } catch (err) { - handleError(err, next); + return handleError(err); } }; diff --git a/packages/api/lib/helpers/apiUtils.js b/packages/api/lib/helpers/apiUtils.js index 30e7dd0d..6095754d 100644 --- a/packages/api/lib/helpers/apiUtils.js +++ b/packages/api/lib/helpers/apiUtils.js @@ -6,7 +6,7 @@ const { NotAuthorizedError, UnsupportedMediaTypeError } = require('restify-error config = require('config'), apicache = require('apicache'), got = require('got'), - csvstringify = require('csv-stringify'), + { stringify } = require('csv-stringify'), hostname = require('os').hostname(); const addCache = function addCache (duration, group) { @@ -198,7 +198,7 @@ const computeTimestampTruncationLength = function computeTimestampTruncationLeng }; const csvStringifier = function csvStringifier (columns, delimiter) { - return csvstringify({ + return stringify({ columns, delimiter, header: 1, cast: { date: d => d.toISOString() } diff --git a/packages/api/lib/helpers/errorHandler.js b/packages/api/lib/helpers/errorHandler.js index 37d90e48..41a7ed93 100644 --- a/packages/api/lib/helpers/errorHandler.js +++ b/packages/api/lib/helpers/errorHandler.js @@ -4,13 +4,13 @@ const restifyErrors = require('restify-errors'); const restifyErrorNames = Object.keys(restifyErrors).filter(e => e.includes('Error') && e !== 'codeToHttpError'); -const handleError = function (err, next) { +const handleError = function (err) { if (err.name === 'ModelError') { if (err.data && err.data.type) { - return next(new restifyErrors[err.data.type](err.message)); + return Promise.reject(new restifyErrors[err.data.type](err.message)); } - return next(new restifyErrors.BadRequestError(err.message)); + return Promise.reject(new restifyErrors.BadRequestError(err.message)); } if (err.name === 'ValidationError') { @@ -21,11 +21,11 @@ const handleError = function (err, next) { } } - return next(new restifyErrors.UnprocessableEntityError(`Validation failed: ${msgs.join(', ')}`)); + return Promise.reject(new restifyErrors.UnprocessableEntityError(`Validation failed: ${msgs.join(', ')}`)); } if (restifyErrorNames.includes(err.name)) { - return next(err); + return Promise.reject(err); } if (err.errors) { @@ -33,11 +33,10 @@ const handleError = function (err, next) { .map(f => `${err.errors[f].message}`) .join(', '); - return next(new restifyErrors.UnprocessableEntityError(msg)); + return Promise.reject(new restifyErrors.UnprocessableEntityError(msg)); } - return next(new restifyErrors.InternalServerError(err.message)); + return Promise.reject(new restifyErrors.InternalServerError(err.message)); }; module.exports = handleError; - diff --git a/packages/api/lib/helpers/userParamHelpers.js b/packages/api/lib/helpers/userParamHelpers.js index 4eddac6b..3ccd80fe 100644 --- a/packages/api/lib/helpers/userParamHelpers.js +++ b/packages/api/lib/helpers/userParamHelpers.js @@ -206,12 +206,10 @@ const castParam = function castParam (param, paramDataType, dataTypeIsArray) { return param; }; -const initUserParams = function initUserParams (req, res, next) { +const initUserParams = async function initUserParams (req) { if (!req._userParams) { req._userParams = Object.create(null); } - - next(); }; const setUserParam = function setUserParam (req, paramName, paramValue) { @@ -423,7 +421,7 @@ const retrieveParametersPredefs = { } }; -const handleAndSetParameterRequest = function handleAndSetParameterRequest (req, next, { name, aliases, dataType = 'String', allowedValues, mapping, required = false, defaultValue, min, max, paramValidatorAndParser = validateAndCastParam }) { +const handleAndSetParameterRequest = async function handleAndSetParameterRequest (req, { name, aliases, dataType = 'String', allowedValues, mapping, required = false, defaultValue, min, max, paramValidatorAndParser = validateAndCastParam }) { // extract param from request const { value, nameUsed } = extractParam({ req, name, aliases }); // there was no user supplied value but a default value @@ -433,7 +431,7 @@ const handleAndSetParameterRequest = function handleAndSetParameterRequest (req, return; } else if (typeof value === 'undefined' && required === true) { // no user supplied value and required -> error - return next(new BadRequestError(`missing required parameter ${name}`)); + return Promise.reject(new BadRequestError(`missing required parameter ${name}`)); } else if (typeof value === 'undefined' && required === false) { // no value and not required, skip to the next parameter return; @@ -445,15 +443,15 @@ const handleAndSetParameterRequest = function handleAndSetParameterRequest (req, const { castedValue, error, message } = paramValidatorAndParser({ value, dataType, allowedValues, mapping, dataTypeIsArray, min, max }); switch (error) { case ARRAY_NOT_ALLOWED: - return next(new BadRequestError(`Parameter ${nameUsed} must only be specified once`)); + return Promise.reject(new BadRequestError(`Parameter ${nameUsed} must only be specified once`)); case CAST_FAILED: /* eslint-disable prefer-template */ - return next(new UnprocessableEntityError(`Parameter ${nameUsed} is not parseable as datatype ${(dataTypeIsArray ? 'array of ' + dataType[0] : dataType)}`)); + return Promise.reject(new UnprocessableEntityError(`Parameter ${nameUsed} is not parseable as datatype ${(dataTypeIsArray ? 'array of ' + dataType[0] : dataType)}`)); /* eslint-enable prefer-template */ case ILLEGAL_VALUE: - return next(new UnprocessableEntityError(`Illegal value for parameter ${nameUsed}. allowed values: ${allowedValues.join(', ')}`)); + return Promise.reject(new UnprocessableEntityError(`Illegal value for parameter ${nameUsed}. allowed values: ${allowedValues.join(', ')}`)); case ERROR_CUSTOM_MESSAGE: - return next(new UnprocessableEntityError(`Illegal value for parameter ${nameUsed}. ${message}`)); + return Promise.reject(new UnprocessableEntityError(`Illegal value for parameter ${nameUsed}. ${message}`)); } // no error matched @@ -472,7 +470,7 @@ const handleAndSetParameterRequest = function handleAndSetParameterRequest (req, // min: minimal value for Numbers and Integers. Compared with >= // max: maximal value for Numbers and Integers. Compared with < const retrieveParameters = function retrieveParameters (parameters = []) { - return function (req, res, next) { + return async function (req) { //for (let { name, aliases, dataType, allowedValues, mapping, required, defaultValue, predef } of parameters) { for (const parameter of parameters) { // predef has precedence over all other keys @@ -484,86 +482,81 @@ const retrieveParameters = function retrieveParameters (parameters = []) { Object.assign(parameterPredef, parameter); // handle paramter request - handleAndSetParameterRequest(req, next, parameterPredef); + await handleAndSetParameterRequest(req, parameterPredef); continue; } if (parameter.name) { - handleAndSetParameterRequest(req, next, parameter); + await handleAndSetParameterRequest(req, parameter); } } - - return next(); }; }; const fromToTimeParamsSanityCheck = function fromToTimeParamsSanityCheck (fromDate, toDate) { if ((fromDate && !toDate) || (toDate && !fromDate)) { - return new BadRequestError('fromDate and toDate need to be specified simultaneously'); + return Promise.reject(BadRequestError('fromDate and toDate need to be specified simultaneously')); } if (fromDate && toDate) { if (fromDate.isAfter(toDate)) { - return new InvalidArgumentError(`Invalid time frame specified: fromDate (${fromDate.toISOString()}) is after toDate (${toDate.toISOString()})`); + return Promise.reject(new InvalidArgumentError(`Invalid time frame specified: fromDate (${fromDate.toISOString()}) is after toDate (${toDate.toISOString()})`)); } } }; -const validateFromToTimeParams = function validateFromToTimeParams (req, res, next) { - next(fromToTimeParamsSanityCheck(req._userParams.fromDate, req._userParams.toDate)); +const validateFromToTimeParams = async function validateFromToTimeParams (req) { + return (fromToTimeParamsSanityCheck(req._userParams.fromDate, req._userParams.toDate)); }; -const parseAndValidateTimeParamsForFindAllBoxes = function parseAndValidateTimeParamsForFindAllBoxes (req, res, next) { +const parseAndValidateTimeParamsForFindAllBoxes = async function parseAndValidateTimeParamsForFindAllBoxes (req) { if (req._userParams.date) { const [fromDate, toDate, ...rest] = req._userParams.date; if (rest.length !== 0) { - return next(new UnprocessableEntityError('invalid number of dates for date parameter supplied')); + return Promise.reject(new UnprocessableEntityError('invalid number of dates for date parameter supplied')); } else if (!toDate) { setUserParam(req, 'fromDate', fromDate.clone().subtract(4, 'hours')); // sub 4 setUserParam(req, 'toDate', fromDate.clone().add(4, 'hours')); // then add 4 to get into the future } else { const timesSane = fromToTimeParamsSanityCheck(fromDate, toDate); if (typeof timesSane !== 'undefined') { - return next(timesSane); + return timesSane; } setUserParam(req, 'fromDate', fromDate); setUserParam(req, 'toDate', toDate); } } - - next(); }; -const validateDateNotPast = function validateDateNotPast (req, res, next) { +const validateDateNotPast = async function validateDateNotPast (req) { if (req._userParams.date) { const { date } = req._userParams; if (date.isBefore(moment.utc().toDate())) { - return next(new InvalidArgumentError( + return Promise.reject(new InvalidArgumentError( `Invalid date specified: date (${date.toISOString()}) must be in the future.` )); } } - next(); }; -const checkPrivilege = function checkPrivilege (req, res, next) { +const checkPrivilege = async function checkPrivilege (req) { if (req.user && req.user.role === config.get('management_role')) { - return next(); + return; } if (req._userParams.boxId) { try { req.user.checkBoxOwner(req._userParams.boxId); - return next(); + return; } catch (err) { - return handleModelError(err, next); + return handleModelError(err); } } - return next(new ForbiddenError('Not signed in or not authorized to access.')); + return Promise.reject(new ForbiddenError('Not signed in or not authorized to access.')); }; module.exports = { diff --git a/packages/api/lib/routes.js b/packages/api/lib/routes.js index 8a249535..48d6cdd2 100644 --- a/packages/api/lib/routes.js +++ b/packages/api/lib/routes.js @@ -26,7 +26,7 @@ const spaces = function spaces (num) { * @apiDescription Returns all routes of this API in human readable format * @apiGroup Misc */ -const printRoutes = function printRoutes (req, res) { +const printRoutes = async function printRoutes (req, res) { res.header('Content-Type', 'text/plain; charset=utf-8'); const lines = [ @@ -122,7 +122,6 @@ const routes = { { path: `${managementPath}/users/:userId`, method: 'put', handler: managementController.updateUser, reference: 'api-Admin-updateUser' }, { path: `${managementPath}/users/delete`, method: 'post', handler: managementController.deleteUsers, reference: 'api-Admin-deleteUsers' }, { path: `${managementPath}/users/:userId/exec`, method: 'post', handler: managementController.execUserAction, reference: 'api-Admin-execUserAction' }, - ] }; diff --git a/packages/api/package.json b/packages/api/package.json index 8689d385..1d1e8292 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -22,9 +22,8 @@ "@turf/square-grid": "^6.3.0", "@turf/triangle-grid": "^6.3.0", "apicache": "^1.6.2", - "bunyan": "^1.8.15", "config": "^3.3.6", - "csv-stringify": "^5.6.2", + "csv-stringify": "^6.2.3", "dashify": "^2.0.0", "got": "^11.8.2", "honeybadger": "^1.4.0", @@ -33,11 +32,15 @@ "millify": "^5.0.1", "moment": "^2.29.4", "ms": "^2.1.3", - "restify": "8.6.1", + "pino": "^8.8.0", + "restify": "9.0.0", "restify-errors": "^8.0.2", "simple-statistics": "^7.7.0", "stringify-stream": "^1.0.5", "uuid": "^8.3.2" }, - "private": true + "private": true, + "devDependencies": { + "csv-parse": "^4.15.4" + } } diff --git a/packages/models/package.json b/packages/models/package.json index 22ad371c..cc0fe68e 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -10,7 +10,6 @@ "@sensebox/osem-protos": "^1.1.0", "@sensebox/sketch-templater": "1.12.1", "bcrypt": "^5.1.0", - "bunyan": "^1.8.15", "config": "^3.3.6", "got": "^11.8.2", "isemail": "^3.0.0", @@ -19,6 +18,7 @@ "moment": "^2.29.4", "mongoose": "^4.13.21", "mongoose-timestamp": "^0.6", + "pino": "^8.8.0", "uuid": "^8.3.2" }, "scripts": { diff --git a/packages/models/src/box/box.js b/packages/models/src/box/box.js index 279799ae..0ec698eb 100644 --- a/packages/models/src/box/box.js +++ b/packages/models/src/box/box.js @@ -717,6 +717,8 @@ boxSchema.statics.findMeasurementsOfBoxesStream = function findMeasurementsOfBox return Promise.reject(new Error('missing sensor query')); } + // return this.find(query, BOX_PROPS_FOR_POPULATION).cursor({ lean: true }); + return this.find(query, BOX_PROPS_FOR_POPULATION) .lean() .then(function (boxData) { @@ -772,7 +774,7 @@ boxSchema.statics.findMeasurementsOfBoxesStream = function findMeasurementsOfBox boxSchema.statics.findMeasurementsOfBoxesByTagStream = function findMeasurementsOfBoxesByTagStream (opts) { const { query } = opts; - return this.find(query, BOX_PROPS_FOR_POPULATION) + return Promise.resolve(this.find(query, BOX_PROPS_FOR_POPULATION) .lean() .then(function (boxData) { if (boxData.length === 0) { @@ -805,7 +807,7 @@ boxSchema.statics.findMeasurementsOfBoxesByTagStream = function findMeasurements return Measurement.find(measureQuery, { 'createdAt': 1, 'value': 1, 'location': 1, '_id': 0, 'sensor_id': 1 }) .cursor({ lean: true, order: 1 }) .map(transformer); - }); + })); }; diff --git a/packages/models/src/log.js b/packages/models/src/log.js index 5fe8a140..c513e095 100644 --- a/packages/models/src/log.js +++ b/packages/models/src/log.js @@ -1,5 +1,8 @@ 'use strict'; -const bunyan = require('bunyan'); +const pino = require('pino'); -module.exports = bunyan.createLogger({ name: 'opensensemap-api-models', serializers: bunyan.stdSerializers }); +module.exports = pino({ + name: 'opensensemap-api-models', + serializers: pino.stdSerializers +}); diff --git a/yarn.lock b/yarn.lock index 6ff464d7..7daf4003 100644 --- a/yarn.lock +++ b/yarn.lock @@ -392,6 +392,13 @@ abbrev@1: resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q== +abort-controller@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/abort-controller/-/abort-controller-3.0.0.tgz#eaf54d53b62bae4138e809ca225c8439a6efb392" + integrity sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg== + dependencies: + event-target-shim "^5.0.0" + acorn-jsx@^5.3.1: version "5.3.1" resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.1.tgz#fc8661e11b7ac1539c47dbfea2e72b3af34d267b" @@ -541,6 +548,11 @@ asynckit@^0.4.0: resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" integrity sha1-x57Zf380y48robyXkLzDZkdLS3k= +atomic-sleep@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/atomic-sleep/-/atomic-sleep-1.0.0.tgz#eb85b77a601fc932cfe432c5acd364a9e2c9075b" + integrity sha512-kNOjDqAh7px0XWNI+4QbzoiR/nTkHAWNud2uvnJquD1/x5a7EQZMJT0AczqK0Qn67oY/TTQ1LbUKajZpp3I9tQ== + aws-sign2@~0.7.0: version "0.7.0" resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8" @@ -648,15 +660,13 @@ buffer@^5.5.0: base64-js "^1.3.1" ieee754 "^1.1.13" -bunyan@^1.8.12, bunyan@^1.8.15: - version "1.8.15" - resolved "https://registry.yarnpkg.com/bunyan/-/bunyan-1.8.15.tgz#8ce34ca908a17d0776576ca1b2f6cbd916e93b46" - integrity sha512-0tECWShh6wUysgucJcBAoYegf3JJoZWibxdqhTm7OHPeT42qdjkZ29QCMcKwbgU1kiH+auSIasNRXMLWXafXig== - optionalDependencies: - dtrace-provider "~0.8" - moment "^2.19.3" - mv "~2" - safe-json-stringify "~1" +buffer@^6.0.3: + version "6.0.3" + resolved "https://registry.yarnpkg.com/buffer/-/buffer-6.0.3.tgz#2ace578459cc8fbe2a70aaa8f52ee63b6a74c6c6" + integrity sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA== + dependencies: + base64-js "^1.3.1" + ieee754 "^1.2.1" cacheable-lookup@^5.0.3: version "5.0.3" @@ -971,26 +981,21 @@ csv-generate@^3.4.3: resolved "https://registry.yarnpkg.com/csv-generate/-/csv-generate-3.4.3.tgz#bc42d943b45aea52afa896874291da4b9108ffff" integrity sha512-w/T+rqR0vwvHqWs/1ZyMDWtHHSJaN06klRqJXBEpDJaM/+dZkso0OKh1VcuuYvK3XM53KysVNq8Ko/epCK8wOw== -csv-parse@^4.15.4: - version "4.15.4" - resolved "https://registry.yarnpkg.com/csv-parse/-/csv-parse-4.15.4.tgz#ad1ec62aaf71a642982dfcb81f1848184d691db5" - integrity sha512-OdBbFc0yZhOm17lSxqkirrHlFFVpKRT0wp4DAGoJelsP3LbGzV9LNr7XmM/lrr0uGkCtaqac9UhP8PDHXOAbMg== - -csv-parse@^4.16.3: +csv-parse@^4.15.4, csv-parse@^4.16.3: version "4.16.3" resolved "https://registry.yarnpkg.com/csv-parse/-/csv-parse-4.16.3.tgz#7ca624d517212ebc520a36873c3478fa66efbaf7" integrity sha512-cO1I/zmz4w2dcKHVvpCr7JVRu8/FymG5OEpmvsZYlccYolPBLoVGKUHgNoc4ZGkFeFlWGEDmMyBM+TTqRdW/wg== -csv-stringify@^5.6.2: - version "5.6.2" - resolved "https://registry.yarnpkg.com/csv-stringify/-/csv-stringify-5.6.2.tgz#e653783e2189c4c797fbb12abf7f4943c787caa9" - integrity sha512-n3rIVbX6ylm1YsX2NEug9IaPV8xRnT+9/NNZbrA/bcHgOSSeqtWla6XnI/xmyu57wIw+ASCAoX1oM6EZtqJV0A== - csv-stringify@^5.6.5: version "5.6.5" resolved "https://registry.yarnpkg.com/csv-stringify/-/csv-stringify-5.6.5.tgz#c6d74badda4b49a79bf4e72f91cce1e33b94de00" integrity sha512-PjiQ659aQ+fUTQqSrd1XEDnOr52jh30RBurfzkscaE2tPaFsDH5wOAHJiw8XAHphRknCwMUE9KRayc4K/NbO8A== +csv-stringify@^6.2.3: + version "6.2.3" + resolved "https://registry.yarnpkg.com/csv-stringify/-/csv-stringify-6.2.3.tgz#fefd25e66fd48f8f42f43b85a66a4663a2c3e796" + integrity sha512-4qGjUMwnlaRc00gc2jrIYh2w/h1fo25B0mTuY9K8fBiIgtmCX3LcgUbrEGViL98Ci4Se/F5LFEtu8k+dItJVZQ== + csv@^5.1.1: version "5.5.3" resolved "https://registry.yarnpkg.com/csv/-/csv-5.5.3.tgz#cd26c1e45eae00ce6a9b7b27dcb94955ec95207d" @@ -1166,7 +1171,7 @@ domutils@^2.5.1, domutils@^2.5.2: domelementtype "^2.2.0" domhandler "^4.1.0" -dtrace-provider@^0.8.1, dtrace-provider@~0.8: +dtrace-provider@^0.8.1: version "0.8.8" resolved "https://registry.yarnpkg.com/dtrace-provider/-/dtrace-provider-0.8.8.tgz#2996d5490c37e1347be263b423ed7b297fb0d97e" integrity sha512-b7Z7cNtHPhH9EJhNNbbeqTcXB8LGFFZhq1PGgEvpeHlzd36bhbdTWoE/Ba/YguqpBSlAPKnARWhVlhunCMwfxg== @@ -1407,6 +1412,16 @@ etag@~1.8.1: resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" integrity sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg== +event-target-shim@^5.0.0: + version "5.0.1" + resolved "https://registry.yarnpkg.com/event-target-shim/-/event-target-shim-5.0.1.tgz#5d4d3ebdf9583d63a5333ce2deb7480ab2b05789" + integrity sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ== + +events@^3.3.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400" + integrity sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q== + ewma@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/ewma/-/ewma-2.0.1.tgz#9876c1c491ac5733c8666001a3961a04c97cf1e8" @@ -1454,6 +1469,16 @@ fast-levenshtein@^2.0.6, fast-levenshtein@~2.0.6: resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= +fast-redact@^3.0.0, fast-redact@^3.1.1: + version "3.1.2" + resolved "https://registry.yarnpkg.com/fast-redact/-/fast-redact-3.1.2.tgz#d58e69e9084ce9fa4c1a6fa98a3e1ecf5d7839aa" + integrity sha512-+0em+Iya9fKGfEQGcd62Yv6onjBmmhV1uh86XVfOU8VwAe6kaFdQCWI9s0/Nnugx5Vd9tdbZ7e6gE2tR9dzXdw== + +fast-safe-stringify@^2.0.8: + version "2.1.1" + resolved "https://registry.yarnpkg.com/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz#c406a83b6e70d9e35ce3b30a81141df30aeba884" + integrity sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA== + file-entry-cache@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz#211b2dd9659cb0394b073e7323ac3c933d522027" @@ -1498,6 +1523,11 @@ flat@^5.0.2: resolved "https://registry.yarnpkg.com/flat/-/flat-5.0.2.tgz#8ca6fe332069ffa9d324c327198c598259ceb241" integrity sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ== +flatstr@^1.0.12: + version "1.0.12" + resolved "https://registry.yarnpkg.com/flatstr/-/flatstr-1.0.12.tgz#c2ba6a08173edbb6c9640e3055b95e287ceb5931" + integrity sha512-4zPxDyhCyiN2wIAtSLI6gc82/EjqZc1onI4Mz/l0pWrAlsSfYH/2ZIcU+e3oA2wDwbzIWNKwa23F8rh6+DRWkw== + flatted@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.1.0.tgz#a5d06b4a8b01e3a63771daa5cb7a1903e2e57067" @@ -1640,17 +1670,6 @@ glob@7.1.6: once "^1.3.0" path-is-absolute "^1.0.0" -glob@^6.0.1: - version "6.0.4" - resolved "https://registry.yarnpkg.com/glob/-/glob-6.0.4.tgz#0f08860f6a155127b2fadd4f9ce24b1aab6e4d22" - integrity sha1-DwiGD2oVUSey+t1PnOJLGqtuTSI= - dependencies: - inflight "^1.0.4" - inherits "2" - minimatch "2 || 3" - once "^1.3.0" - path-is-absolute "^1.0.0" - glob@^7.1.3: version "7.2.3" resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" @@ -1812,17 +1831,18 @@ http-deceiver@^1.2.7: resolved "https://registry.yarnpkg.com/http-deceiver/-/http-deceiver-1.2.7.tgz#fa7168944ab9a519d337cb0bec7284dc3e723d87" integrity sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw== -http-errors@~1.6.2: - version "1.6.3" - resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.6.3.tgz#8b55680bb4be283a0b5bf4ea2e38580be1d9320d" - integrity sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A== +http-errors@1.8.1: + version "1.8.1" + resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.8.1.tgz#7c3f28577cbc8a207388455dbd62295ed07bd68c" + integrity sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g== dependencies: depd "~1.1.2" - inherits "2.0.3" - setprototypeof "1.1.0" - statuses ">= 1.4.0 < 2" + inherits "2.0.4" + setprototypeof "1.2.0" + statuses ">= 1.5.0 < 2" + toidentifier "1.0.1" -http-signature@^1.2.0: +http-signature@^1.3.6: version "1.3.6" resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.3.6.tgz#cb6fbfdf86d1c974f343be94e87f7fc128662cf9" integrity sha512-3adrsD6zqo4GsTqtO7FyrejHNv+NgiIfAfv68+jVlFmSr9OGy7zrxONceFRLKvnnZA5jbxQBX1u9PpB6Wi32Gw== @@ -1863,7 +1883,7 @@ iconv-lite@~0.4.13: dependencies: safer-buffer ">= 2.1.2 < 3" -ieee754@^1.1.13: +ieee754@^1.1.13, ieee754@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== @@ -1894,16 +1914,11 @@ inflight@^1.0.4: once "^1.3.0" wrappy "1" -inherits@2, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.1, inherits@~2.0.3: +inherits@2, inherits@2.0.4, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.1, inherits@~2.0.3: version "2.0.4" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== -inherits@2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" - integrity sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw== - ip-regex@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/ip-regex/-/ip-regex-2.1.0.tgz#fa78bf5d2e6913c911ce9f819ee5146bb6d844e9" @@ -2227,12 +2242,7 @@ mime-types@^2.1.12, mime-types@~2.1.19: dependencies: mime-db "1.44.0" -mime@1.4.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/mime/-/mime-1.4.1.tgz#121f9ebc49e3766f311a76e1fa1c8003c4b03aa6" - integrity sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ== - -mime@^1.4.1: +mime@1.6.0, mime@^1.4.1: version "1.6.0" resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== @@ -2265,7 +2275,7 @@ minimalistic-assert@^1.0.0: resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7" integrity sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A== -"minimatch@2 || 3", minimatch@3.0.4: +minimatch@3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== @@ -2309,13 +2319,6 @@ mkdirp@^1.0.3: resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== -mkdirp@~0.5.1: - version "0.5.5" - resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.5.tgz#d91cefd62d1436ca0f41620e251288d420099def" - integrity sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ== - dependencies: - minimist "^1.2.5" - mocha@^8.3.2: version "8.3.2" resolved "https://registry.yarnpkg.com/mocha/-/mocha-8.3.2.tgz#53406f195fa86fbdebe71f8b1c6fb23221d69fcc" @@ -2347,7 +2350,7 @@ mocha@^8.3.2: yargs-parser "20.2.4" yargs-unparser "2.0.0" -moment@^2.19.3, moment@^2.29.4: +moment@^2.29.4: version "2.29.4" resolved "https://registry.yarnpkg.com/moment/-/moment-2.29.4.tgz#3dbe052889fe7c1b2ed966fcb3a77328964ef108" integrity sha512-5LC9SOxjSc2HF6vO2CyuTDNivEdoz2IvyJJGj6X8DJ0eFyfszE0QiEd+iXmBvUP3WHxSjFH/vIsA0EN00cgr8w== @@ -2464,15 +2467,6 @@ muri@1.3.0: resolved "https://registry.yarnpkg.com/muri/-/muri-1.3.0.tgz#aeccf3db64c56aa7c5b34e00f95b7878527a4721" integrity sha512-FiaFwKl864onHFFUV/a2szAl7X0fxVlSKNdhTf+BM8i8goEgYut8u5P9MqQqIYwvaMxjzVESsoEm/2kfkFH1rg== -mv@~2: - version "2.1.1" - resolved "https://registry.yarnpkg.com/mv/-/mv-2.1.1.tgz#ae6ce0d6f6d5e0a4f7d893798d03c1ea9559b6a2" - integrity sha1-rmzg1vbV4KT32JN5jQPB6pVZtqI= - dependencies: - mkdirp "~0.5.1" - ncp "~2.0.0" - rimraf "~2.4.0" - nan@^2.14.0: version "2.14.1" resolved "https://registry.yarnpkg.com/nan/-/nan-2.14.1.tgz#d7be34dfa3105b91494c3147089315eff8874b01" @@ -2488,11 +2482,6 @@ natural-compare@^1.4.0: resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc= -ncp@~2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/ncp/-/ncp-2.0.0.tgz#195a21d6c46e361d2fb1281ba38b91e9df7bdbb3" - integrity sha1-GVoh1sRuNh0vsSgbo4uR6d9727M= - negotiator@^0.6.2: version "0.6.3" resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.3.tgz#58e323a72fedc0d6f9cd4d31fe49f51479590ccd" @@ -2564,6 +2553,11 @@ obuf@^1.0.0, obuf@^1.1.2: resolved "https://registry.yarnpkg.com/obuf/-/obuf-1.1.2.tgz#09bea3343d41859ebd446292d11c9d4db619084e" integrity sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg== +on-exit-leak-free@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/on-exit-leak-free/-/on-exit-leak-free-2.1.0.tgz#5c703c968f7e7f851885f6459bf8a8a57edc9cc4" + integrity sha512-VuCaZZAjReZ3vUwgOB8LxAosIurDiAW0s13rI1YwmaP++jvcxP77AWoQvenZebpCA2m8WC1/EosPYPMjnRAp/w== + on-finished@~2.3.0: version "2.3.0" resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947" @@ -2677,6 +2671,54 @@ pidusage@^2.0.17: dependencies: safe-buffer "^5.2.1" +pino-abstract-transport@v1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/pino-abstract-transport/-/pino-abstract-transport-1.0.0.tgz#cc0d6955fffcadb91b7b49ef220a6cc111d48bb3" + integrity sha512-c7vo5OpW4wIS42hUVcT5REsL8ZljsUfBjqV/e2sFxmFEFZiq1XLUp5EYLtuDH6PEHq9W1egWqRbnLUP5FuZmOA== + dependencies: + readable-stream "^4.0.0" + split2 "^4.0.0" + +pino-std-serializers@^3.1.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/pino-std-serializers/-/pino-std-serializers-3.2.0.tgz#b56487c402d882eb96cd67c257868016b61ad671" + integrity sha512-EqX4pwDPrt3MuOAAUBMU0Tk5kR/YcCM5fNPEzgCO2zJ5HfX0vbiH9HbJglnyeQsN96Kznae6MWD47pZB5avTrg== + +pino-std-serializers@^6.0.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/pino-std-serializers/-/pino-std-serializers-6.1.0.tgz#307490fd426eefc95e06067e85d8558603e8e844" + integrity sha512-KO0m2f1HkrPe9S0ldjx7za9BJjeHqBku5Ch8JyxETxT8dEFGz1PwgrHaOQupVYitpzbFSYm7nnljxD8dik2c+g== + +pino@^6.3.2: + version "6.14.0" + resolved "https://registry.yarnpkg.com/pino/-/pino-6.14.0.tgz#b745ea87a99a6c4c9b374e4f29ca7910d4c69f78" + integrity sha512-iuhEDel3Z3hF9Jfe44DPXR8l07bhjuFY3GMHIXbjnY9XcafbyDDwl2sN2vw2GjMPf5Nkoe+OFao7ffn9SXaKDg== + dependencies: + fast-redact "^3.0.0" + fast-safe-stringify "^2.0.8" + flatstr "^1.0.12" + pino-std-serializers "^3.1.0" + process-warning "^1.0.0" + quick-format-unescaped "^4.0.3" + sonic-boom "^1.0.2" + +pino@^8.8.0: + version "8.8.0" + resolved "https://registry.yarnpkg.com/pino/-/pino-8.8.0.tgz#1f0d6695a224aa06afc7ad60f2ccc4772d3b9233" + integrity sha512-cF8iGYeu2ODg2gIwgAHcPrtR63ILJz3f7gkogaHC/TXVVXxZgInmNYiIpDYEwgEkxZti2Se6P2W2DxlBIZe6eQ== + dependencies: + atomic-sleep "^1.0.0" + fast-redact "^3.1.1" + on-exit-leak-free "^2.1.0" + pino-abstract-transport v1.0.0 + pino-std-serializers "^6.0.0" + process-warning "^2.0.0" + quick-format-unescaped "^4.0.3" + real-require "^0.2.0" + safe-stable-stringify "^2.3.1" + sonic-boom "^3.1.0" + thread-stream "^2.0.0" + polygon-clipping@^0.15.2: version "0.15.2" resolved "https://registry.yarnpkg.com/polygon-clipping/-/polygon-clipping-0.15.2.tgz#076199182bf23a4a6cf6c7003f3b81ecf30b2cb8" @@ -2704,6 +2746,21 @@ process-nextick-args@~1.0.6: resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-1.0.7.tgz#150e20b756590ad3f91093f25a4f2ad8bff30ba3" integrity sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M= +process-warning@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/process-warning/-/process-warning-1.0.0.tgz#980a0b25dc38cd6034181be4b7726d89066b4616" + integrity sha512-du4wfLyj4yCZq1VupnVSZmRsPJsNuxoDQFdCFHLaYiEbFBD7QE0a+I4D7hOxrVnh78QE/YipFAj9lXHiXocV+Q== + +process-warning@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/process-warning/-/process-warning-2.1.0.tgz#1e60e3bfe8183033bbc1e702c2da74f099422d1a" + integrity sha512-9C20RLxrZU/rFnxWncDkuF6O999NdIf3E1ws4B0ZeY3sRVPzWBMsYDE2lxjxhiXxg464cQTgKUGm8/i6y2YGXg== + +process@^0.11.10: + version "0.11.10" + resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182" + integrity sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A== + progress@^2.0.0: version "2.0.3" resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" @@ -2770,6 +2827,11 @@ qs@~6.5.2: resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36" integrity sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA== +quick-format-unescaped@^4.0.3: + version "4.0.4" + resolved "https://registry.yarnpkg.com/quick-format-unescaped/-/quick-format-unescaped-4.0.4.tgz#93ef6dd8d3453cbc7970dd614fad4c5954d6b5a7" + integrity sha512-tYC1Q1hgyRuHgloV/YXs2w15unPVh8qfu/qCTfhTYamaw7fyhumKa2yGpdSo87vY32rIclj+4fWYQXUMs9EHvg== + quick-lru@^5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/quick-lru/-/quick-lru-5.1.1.tgz#366493e6b3e42a3a6885e2e99d18f80fb7a8c932" @@ -2792,7 +2854,7 @@ randomgeojson@^1.0.0: resolved "https://registry.yarnpkg.com/randomgeojson/-/randomgeojson-1.0.0.tgz#2446f5a5cd88365365a10ebdda9fe76656fa6b1f" integrity sha1-JEb1pc2INlNloQ692p/nZlb6ax8= -range-parser@~1.2.0: +range-parser@~1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== @@ -2839,6 +2901,16 @@ readable-stream@^3.0.0, readable-stream@^3.0.2, readable-stream@^3.0.6, readable string_decoder "^1.1.1" util-deprecate "^1.0.1" +readable-stream@^4.0.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-4.3.0.tgz#0914d0c72db03b316c9733bb3461d64a3cc50cba" + integrity sha512-MuEnA0lbSi7JS8XM+WNJlWZkHAAdm7gETHdFK//Q/mChGyj2akEFtdLZh32jSdkWGbRwCW9pn6g3LWDdDeZnBQ== + dependencies: + abort-controller "^3.0.0" + buffer "^6.0.3" + events "^3.3.0" + process "^0.11.10" + readable-stream@~2.1.0: version "2.1.5" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.1.5.tgz#66fa8b720e1438b364681f2ad1a63c618448c9d0" @@ -2859,6 +2931,11 @@ readdirp@~3.5.0: dependencies: picomatch "^2.2.1" +real-require@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/real-require/-/real-require-0.2.0.tgz#209632dea1810be2ae063a6ac084fee7e33fba78" + integrity sha512-57frrGM/OCTLqLOAh0mhVA9VBMHd+9U7Zb2THMGdBUoZVOtGbJzjxsYGDJ3A9AYYCP4hn6y1TVbaOfzWtm5GFg== + regexp-clone@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/regexp-clone/-/regexp-clone-0.0.1.tgz#a7c2e09891fdbf38fbb10d376fb73003e68ac589" @@ -2958,29 +3035,29 @@ restify-errors@^8.0.2: optionalDependencies: safe-json-stringify "^1.0.4" -restify@8.6.1: - version "8.6.1" - resolved "https://registry.yarnpkg.com/restify/-/restify-8.6.1.tgz#728d391797e2fe20d6a748737da156a66575796f" - integrity sha512-I54/Geo2qN4K/2Ers+zNAU/A/nwPrcoTVBVeamw/sROv/kLLuMAzidLmO3f6842tKFxxQvcNhOMYoWZAhYr3vQ== +restify@9.0.0: + version "9.0.0" + resolved "https://registry.yarnpkg.com/restify/-/restify-9.0.0.tgz#9f75680ed7f740e2058141639c89b16eeb597a03" + integrity sha512-3bl0+3GdwCGvHKRf95Zhem/kc/zzWtcxl1kKmv3uDLN64WsXImRcMFR7ryqKVuv5RGIkOU7kVSbCbyxrLhHWdg== dependencies: assert-plus "^1.0.0" - bunyan "^1.8.12" csv "^5.1.1" escape-regexp-component "^1.0.2" ewma "^2.0.1" find-my-way "^2.0.1" formidable "^1.2.1" - http-signature "^1.2.0" + http-signature "^1.3.6" lodash "^4.17.11" lru-cache "^5.1.1" mime "^2.4.3" negotiator "^0.6.2" once "^1.4.0" pidusage "^2.0.17" + pino "^6.3.2" qs "^6.7.0" restify-errors "^8.0.2" semver "^6.1.1" - send "^0.16.2" + send "^0.17.1" spdy "^4.0.0" uuid "^3.3.2" vasync "^2.2.0" @@ -2999,13 +3076,6 @@ rimraf@^3.0.2: dependencies: glob "^7.1.3" -rimraf@~2.4.0: - version "2.4.5" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.4.5.tgz#ee710ce5d93a8fdb856fb5ea8ff0e2d75934b2da" - integrity sha1-7nEM5dk6j9uFb7Xqj/Di11k0sto= - dependencies: - glob "^6.0.1" - safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.2, safe-buffer@^5.2.1, safe-buffer@~5.2.0: version "5.2.1" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" @@ -3016,7 +3086,7 @@ safe-buffer@~5.1.0, safe-buffer@~5.1.1: resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== -safe-json-stringify@^1.0.4, safe-json-stringify@~1: +safe-json-stringify@^1.0.4: version "1.2.0" resolved "https://registry.yarnpkg.com/safe-json-stringify/-/safe-json-stringify-1.2.0.tgz#356e44bc98f1f93ce45df14bcd7c01cda86e0afd" integrity sha512-gH8eh2nZudPQO6TytOvbxnuhYBOvDBBLW52tz5q6X58lJcd/tkmqFR+5Z9adS8aJtURSXWThWy/xJtJwixErvg== @@ -3028,6 +3098,11 @@ safe-regex2@^2.0.0: dependencies: ret "~0.2.0" +safe-stable-stringify@^2.3.1: + version "2.4.2" + resolved "https://registry.yarnpkg.com/safe-stable-stringify/-/safe-stable-stringify-2.4.2.tgz#ec7b037768098bf65310d1d64370de0dc02353aa" + integrity sha512-gMxvPJYhP0O9n2pvcfYfIuYgbledAOJFcqRThtPRmjscaipiwcwPPKLytpVzMkG2HAN87Qmo2d4PtGiri1dSLA== + "safer-buffer@>= 2.1.2 < 3", safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0: version "2.1.2" resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" @@ -3060,10 +3135,10 @@ semver@^7.2.1, semver@^7.3.5, semver@^7.3.8: dependencies: lru-cache "^6.0.0" -send@^0.16.2: - version "0.16.2" - resolved "https://registry.yarnpkg.com/send/-/send-0.16.2.tgz#6ecca1e0f8c156d141597559848df64730a6bbc1" - integrity sha512-E64YFPUssFHEFBvpbbjr44NCLtI1AohxQ8ZSiJjQLskAdKuriYEP6VyGEsRDH8ScozGpkaX1BGvhanqCwkcEZw== +send@^0.17.1: + version "0.17.2" + resolved "https://registry.yarnpkg.com/send/-/send-0.17.2.tgz#926622f76601c41808012c8bf1688fe3906f7820" + integrity sha512-UJYB6wFSJE3G00nEivR5rgWp8c2xXvJ3OPWPhmuteU0IKj8nKbG3DrjiOmLwpnHGYWAVwA69zmTm++YG0Hmwww== dependencies: debug "2.6.9" depd "~1.1.2" @@ -3072,12 +3147,12 @@ send@^0.16.2: escape-html "~1.0.3" etag "~1.8.1" fresh "0.5.2" - http-errors "~1.6.2" - mime "1.4.1" - ms "2.0.0" + http-errors "1.8.1" + mime "1.6.0" + ms "2.1.3" on-finished "~2.3.0" - range-parser "~1.2.0" - statuses "~1.4.0" + range-parser "~1.2.1" + statuses "~1.5.0" serialize-javascript@5.0.1: version "5.0.1" @@ -3091,10 +3166,10 @@ set-blocking@^2.0.0: resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" integrity sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw== -setprototypeof@1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.1.0.tgz#d0bd85536887b6fe7c0d818cb962d9d91c54e656" - integrity sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ== +setprototypeof@1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.2.0.tgz#66c9a24a73f9fc28cbe66b09fed3d33dcaf1b424" + integrity sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw== shebang-command@^2.0.0: version "2.0.0" @@ -3146,6 +3221,21 @@ sliced@1.0.1: resolved "https://registry.yarnpkg.com/sliced/-/sliced-1.0.1.tgz#0b3a662b5d04c3177b1926bea82b03f837a2ef41" integrity sha1-CzpmK10Ewxd7GSa+qCsD+Dei70E= +sonic-boom@^1.0.2: + version "1.4.1" + resolved "https://registry.yarnpkg.com/sonic-boom/-/sonic-boom-1.4.1.tgz#d35d6a74076624f12e6f917ade7b9d75e918f53e" + integrity sha512-LRHh/A8tpW7ru89lrlkU4AszXt1dbwSjVWguGrmlxE7tawVmDBlI1PILMkXAxJTwqhgsEeTHzj36D5CmHgQmNg== + dependencies: + atomic-sleep "^1.0.0" + flatstr "^1.0.12" + +sonic-boom@^3.1.0: + version "3.2.1" + resolved "https://registry.yarnpkg.com/sonic-boom/-/sonic-boom-3.2.1.tgz#972ceab831b5840a08a002fa95a672008bda1c38" + integrity sha512-iITeTHxy3B9FGu8aVdiDXUVAcHMF9Ss0cCsAOo2HfCrmVGT3/DT5oYaeu0M/YKZDlKTvChEyPq0zI9Hf33EX6A== + dependencies: + atomic-sleep "^1.0.0" + source-map@~0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" @@ -3186,6 +3276,11 @@ split2@^3.1.0: dependencies: readable-stream "^3.0.0" +split2@^4.0.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/split2/-/split2-4.1.0.tgz#101907a24370f85bb782f08adaabe4e281ecf809" + integrity sha512-VBiJxFkxiXRlUIeyMQi8s4hgvKCSjtknJv/LVYbrgALPwf5zSKmEwV9Lst25AkvMDnvxODugjdl6KZgwKM1WYQ== + sprintf-js@~1.0.2: version "1.0.3" resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" @@ -3233,16 +3328,11 @@ static-eval@2.0.2: dependencies: escodegen "^1.8.1" -"statuses@>= 1.4.0 < 2": +"statuses@>= 1.5.0 < 2", statuses@~1.5.0: version "1.5.0" resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c" integrity sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA== -statuses@~1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.4.0.tgz#bb73d446da2796106efcc1b601a253d6c46bd087" - integrity sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew== - stream-shift@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.1.tgz#d7088281559ab2778424279b0877da3c392d5a3d" @@ -3409,6 +3499,13 @@ text-table@^0.2.0: resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= +thread-stream@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/thread-stream/-/thread-stream-2.2.0.tgz#310c03a253f729094ce5d4638ef5186dfa80a9e8" + integrity sha512-rUkv4/fnb4rqy/gGy7VuqK6wE1+1DOCOWy4RMeaV69ZHMP11tQKZvZSip1yTgrKCMZzEMcCL/bKfHvSfDHx+iQ== + dependencies: + real-require "^0.2.0" + to-regex-range@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" @@ -3416,6 +3513,11 @@ to-regex-range@^5.0.1: dependencies: is-number "^7.0.0" +toidentifier@1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.1.tgz#3be34321a88a820ed1bd80dfaa33e479fbb8dd35" + integrity sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA== + tough-cookie@~2.5.0: version "2.5.0" resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.5.0.tgz#cd9fb2a0aa1d5a12b473bd9fb96fa3dcff65ade2" From 37f47c681a37895d394cb73162c9b8fe24d3b007 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 16 Jan 2023 09:24:10 +0100 Subject: [PATCH 253/337] Bump docker/build-push-action from 3.2.0 to 3.3.0 (#708) Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 3.2.0 to 3.3.0. - [Release notes](https://github.com/docker/build-push-action/releases) - [Commits](https://github.com/docker/build-push-action/compare/v3.2.0...v3.3.0) --- updated-dependencies: - dependency-name: docker/build-push-action dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/registry.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/registry.yaml b/.github/workflows/registry.yaml index e22ab719..220e002c 100644 --- a/.github/workflows/registry.yaml +++ b/.github/workflows/registry.yaml @@ -41,7 +41,7 @@ jobs: suffix= - name: Build and push Docker image - uses: docker/build-push-action@v3.2.0 + uses: docker/build-push-action@v3.3.0 with: context: . push: true From 99442a9a7c4cb5c052f10d77b5df454ecb2f35fb Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 16 Jan 2023 09:36:17 +0100 Subject: [PATCH 254/337] Bump docker/metadata-action from 4.2.0 to 4.3.0 (#707) Bumps [docker/metadata-action](https://github.com/docker/metadata-action) from 4.2.0 to 4.3.0. - [Release notes](https://github.com/docker/metadata-action/releases) - [Commits](https://github.com/docker/metadata-action/compare/v4.2.0...v4.3.0) --- updated-dependencies: - dependency-name: docker/metadata-action dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Matthias Pfeil --- .github/workflows/registry.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/registry.yaml b/.github/workflows/registry.yaml index 220e002c..4dc0bb6d 100644 --- a/.github/workflows/registry.yaml +++ b/.github/workflows/registry.yaml @@ -32,7 +32,7 @@ jobs: - name: Extract metadata (tags, labels) for Docker id: meta - uses: docker/metadata-action@v4.2.0 + uses: docker/metadata-action@v4.3.0 with: images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} flavor: | From 9225b9bf26ec628f6e31c670278deafc31ed58ae Mon Sep 17 00:00:00 2001 From: Eric Thieme-Garmann Date: Tue, 7 Feb 2023 09:24:23 +0100 Subject: [PATCH 255/337] Add SPS30 sensors (#678) * added sps30 to models and routes * remove logs and bump models version * added sps30 to the documentation --- packages/api/lib/controllers/boxesController.js | 3 ++- packages/models/CHANGELOG.md | 4 ++++ packages/models/package.json | 2 +- .../src/box/sensorLayouts/sensebox.home.mcu.js | 10 +++++++++- .../box/sensorLayouts/sensorDefinitions/index.js | 14 +++++++++++--- .../sensorLayouts/sensorDefinitions/sps30_pm1.js | 8 ++++++++ .../sensorLayouts/sensorDefinitions/sps30_pm10.js | 8 ++++++++ .../sensorLayouts/sensorDefinitions/sps30_pm25.js | 8 ++++++++ .../sensorLayouts/sensorDefinitions/sps30_pm4.js | 8 ++++++++ yarn.lock | 8 ++++---- 10 files changed, 63 insertions(+), 10 deletions(-) create mode 100644 packages/models/src/box/sensorLayouts/sensorDefinitions/sps30_pm1.js create mode 100644 packages/models/src/box/sensorLayouts/sensorDefinitions/sps30_pm10.js create mode 100644 packages/models/src/box/sensorLayouts/sensorDefinitions/sps30_pm25.js create mode 100644 packages/models/src/box/sensorLayouts/sensorDefinitions/sps30_pm4.js diff --git a/packages/api/lib/controllers/boxesController.js b/packages/api/lib/controllers/boxesController.js index 00b9cc4f..8a3771ba 100644 --- a/packages/api/lib/controllers/boxesController.js +++ b/packages/api/lib/controllers/boxesController.js @@ -393,7 +393,7 @@ const getBox = async function getBox (req, res) { * @apiParam (RequestBody) {Location} location the coordinates of this senseBox. * @apiParam (RequestBody) {String="homeV2Lora","homeV2Ethernet","homeV2Wifi","homeEthernet","homeWifi","homeEthernetFeinstaub","homeWifiFeinstaub","luftdaten_sds011","luftdaten_sds011_dht11","luftdaten_sds011_dht22","luftdaten_sds011_bmp180","luftdaten_sds011_bme280","hackair_home_v2"} [model] specify the model if you want to use a predefined senseBox model, autocreating sensor definitions. * @apiParam (RequestBody) {Sensor[]} [sensors] an array containing the sensors of this senseBox. Only use if `model` is unspecified. - * @apiParam (RequestBody) {String[]="hdc1080","bmp280","tsl45315","veml6070","sds011","bme680","smt50","soundlevelmeter","windspeed","scd30","dps310"} [sensorTemplates] Specify which sensors should be included. + * @apiParam (RequestBody) {String[]="hdc1080","bmp280","tsl45315","veml6070","sds011","bme680","smt50","soundlevelmeter","windspeed","scd30","dps310","sps30"} [sensorTemplates] Specify which sensors should be included. * @apiParam (RequestBody) {Object} [mqtt] specify parameters of the MQTT integration for external measurement upload. Please see below for the accepted parameters * @apiParam (RequestBody) {Object} [ttn] specify parameters for the TTN integration for measurement from TheThingsNetwork.org upload. Please see below for the accepted parameters * @apiParam (RequestBody) {Boolean="true","false"} [useAuth] whether to use access_token or not for authentication @@ -745,6 +745,7 @@ module.exports = { 'windspeed', 'scd30', 'dps310', + 'sps30' ], }, { diff --git a/packages/models/CHANGELOG.md b/packages/models/CHANGELOG.md index c349f4f1..77efad09 100644 --- a/packages/models/CHANGELOG.md +++ b/packages/models/CHANGELOG.md @@ -20,6 +20,10 @@ - Added `findLatestMeasurementsForSensorsWithCount` static method to Measurement schema (#588) - Added `sharedBoxes` functionality (#605) +## v1.3.1 +- Add SPS30 sensor +- Update @sensebox/node-sketch-templater to v1.13.0 + ## v1.2.0 - Extend `luftdatenHandler` (#578) diff --git a/packages/models/package.json b/packages/models/package.json index cc0fe68e..da2bfb39 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -8,7 +8,7 @@ "@grpc/grpc-js": "^1.3.7", "@grpc/proto-loader": "^0.6.4", "@sensebox/osem-protos": "^1.1.0", - "@sensebox/sketch-templater": "1.12.1", + "@sensebox/sketch-templater": "1.13.0", "bcrypt": "^5.1.0", "config": "^3.3.6", "got": "^11.8.2", diff --git a/packages/models/src/box/sensorLayouts/sensebox.home.mcu.js b/packages/models/src/box/sensorLayouts/sensebox.home.mcu.js index 0351b02f..e2740e5a 100644 --- a/packages/models/src/box/sensorLayouts/sensebox.home.mcu.js +++ b/packages/models/src/box/sensorLayouts/sensebox.home.mcu.js @@ -19,7 +19,11 @@ const { soundlevelmeter, windspeed, scd30_co2, - dps310_pressure + dps310_pressure, + sps30_pm1, + sps30_pm25, + sps30_pm4, + sps30_pm10 } = sensorDefinitions; module.exports = [ @@ -40,4 +44,8 @@ module.exports = [ windspeed, scd30_co2, dps310_pressure, + sps30_pm1, + sps30_pm25, + sps30_pm4, + sps30_pm10 ]; diff --git a/packages/models/src/box/sensorLayouts/sensorDefinitions/index.js b/packages/models/src/box/sensorLayouts/sensorDefinitions/index.js index 024add67..2fb2aba7 100644 --- a/packages/models/src/box/sensorLayouts/sensorDefinitions/index.js +++ b/packages/models/src/box/sensorLayouts/sensorDefinitions/index.js @@ -1,5 +1,6 @@ 'use strict'; + const veml6070_uvintensity = require('./veml6070_uvintensity'), tsl45315_lightintensity = require('./tsl45315_lightintensity'), bmp280_pressure = require('./bmp280_pressure'), @@ -42,8 +43,11 @@ const veml6070_uvintensity = require('./veml6070_uvintensity'), windspeed = require('./windspeed'), scd30_co2 = require('./scd30_co2'), dps310_temperature = require('./dps310_temperature'), - dps310_pressure = require('./dps310_pressure'); - + dps310_pressure = require('./dps310_pressure'), + sps30_pm1 = require('./sps30_pm1'), + sps30_pm25 = require('./sps30_pm25'), + sps30_pm4 = require('./sps30_pm4'), + sps30_pm10 = require('./sps30_pm10'); module.exports = { hdc1008_temperature, hdc1080_temperature, @@ -87,5 +91,9 @@ module.exports = { windspeed, scd30_co2, dps310_temperature, - dps310_pressure + dps310_pressure, + sps30_pm1, + sps30_pm25, + sps30_pm4, + sps30_pm10 }; diff --git a/packages/models/src/box/sensorLayouts/sensorDefinitions/sps30_pm1.js b/packages/models/src/box/sensorLayouts/sensorDefinitions/sps30_pm1.js new file mode 100644 index 00000000..4e31745e --- /dev/null +++ b/packages/models/src/box/sensorLayouts/sensorDefinitions/sps30_pm1.js @@ -0,0 +1,8 @@ +'use strict'; + +module.exports = { + title: 'PM1', + unit: 'µg/m³', + sensorType: 'SPS30', + icon: 'osem-cloud' +}; diff --git a/packages/models/src/box/sensorLayouts/sensorDefinitions/sps30_pm10.js b/packages/models/src/box/sensorLayouts/sensorDefinitions/sps30_pm10.js new file mode 100644 index 00000000..eaa63af4 --- /dev/null +++ b/packages/models/src/box/sensorLayouts/sensorDefinitions/sps30_pm10.js @@ -0,0 +1,8 @@ +'use strict'; + +module.exports = { + title: 'PM10', + unit: 'µg/m³', + sensorType: 'SPS30', + icon: 'osem-cloud' +}; diff --git a/packages/models/src/box/sensorLayouts/sensorDefinitions/sps30_pm25.js b/packages/models/src/box/sensorLayouts/sensorDefinitions/sps30_pm25.js new file mode 100644 index 00000000..0c42bd0c --- /dev/null +++ b/packages/models/src/box/sensorLayouts/sensorDefinitions/sps30_pm25.js @@ -0,0 +1,8 @@ +'use strict'; + +module.exports = { + title: 'PM2.5', + unit: 'µg/m³', + sensorType: 'SPS30', + icon: 'osem-cloud' +}; diff --git a/packages/models/src/box/sensorLayouts/sensorDefinitions/sps30_pm4.js b/packages/models/src/box/sensorLayouts/sensorDefinitions/sps30_pm4.js new file mode 100644 index 00000000..818cc3cd --- /dev/null +++ b/packages/models/src/box/sensorLayouts/sensorDefinitions/sps30_pm4.js @@ -0,0 +1,8 @@ +'use strict'; + +module.exports = { + title: 'PM4', + unit: 'µg/m³', + sensorType: 'SPS30', + icon: 'osem-cloud' +}; diff --git a/yarn.lock b/yarn.lock index 7daf4003..8f95cb23 100644 --- a/yarn.lock +++ b/yarn.lock @@ -143,10 +143,10 @@ resolved "https://registry.yarnpkg.com/@sensebox/osem-protos/-/osem-protos-1.1.0.tgz#a7de8bc6be867953f1309181a012063c23299e79" integrity sha512-H+nUVcWlT0dvIqfJnYHuX9JBcCkP1ZKGE5YTRNWPbAEdZ11h+srpQsmeI58wK5hJcdukaZAjc4Dy96IeGM77aA== -"@sensebox/sketch-templater@1.12.1": - version "1.12.1" - resolved "https://registry.yarnpkg.com/@sensebox/sketch-templater/-/sketch-templater-1.12.1.tgz#4640fc22d5ae652d00b9ab7c590488bf25da2cee" - integrity sha512-LtHyUPsZSFTDIqzSce8Rgh25CRhZkj2NIVjNUrMFeB7WgoNwYJuq+aYr1QDGaL0AkREKL3JsUi+O4rjji3Uw3w== +"@sensebox/sketch-templater@1.13.0": + version "1.13.0" + resolved "https://registry.yarnpkg.com/@sensebox/sketch-templater/-/sketch-templater-1.13.0.tgz#f2af96a67014cb6e7fe1d1f9e48aad433a98e2b2" + integrity sha512-8ZYvXlhrTiVXpD5tuf8nhYCk8iR/uxI5fiYQO9e3mR20aHiVIVlsEI4QysGhVxAsOsgntHD5IOOikpY7XaC2Ig== dependencies: config "^3.3.7" dedent "^0.7.0" From e584268c4a73e64f2d97a1a471bd06c925f59d42 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 13 Mar 2023 18:09:40 +0100 Subject: [PATCH 256/337] Bump actions/cache from 3.2.3 to 3.3.0 (#732) Bumps [actions/cache](https://github.com/actions/cache) from 3.2.3 to 3.3.0. - [Release notes](https://github.com/actions/cache/releases) - [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md) - [Commits](https://github.com/actions/cache/compare/v3.2.3...v3.3.0) --- updated-dependencies: - dependency-name: actions/cache dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/test.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index f7abbd46..272b64cc 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -26,7 +26,7 @@ jobs: echo "##[set-output name=dir;]$(yarn cache dir)" - name: Restore yarn cache - uses: actions/cache@v3.2.3 + uses: actions/cache@v3.3.0 id: yarn-cache with: path: ${{ steps.yarn-cache-dir-path.outputs.dir }} From 3794b7cb74c4cf16f3bbed829b5461790ef48fa8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 13 Mar 2023 17:13:15 +0000 Subject: [PATCH 257/337] Bump docker/build-push-action from 3.3.0 to 4.0.0 (#714) Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 3.3.0 to 4.0.0. - [Release notes](https://github.com/docker/build-push-action/releases) - [Commits](https://github.com/docker/build-push-action/compare/v3.3.0...v4.0.0) --- updated-dependencies: - dependency-name: docker/build-push-action dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Matthias Pfeil --- .github/workflows/registry.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/registry.yaml b/.github/workflows/registry.yaml index 4dc0bb6d..5a58d96f 100644 --- a/.github/workflows/registry.yaml +++ b/.github/workflows/registry.yaml @@ -41,7 +41,7 @@ jobs: suffix= - name: Build and push Docker image - uses: docker/build-push-action@v3.3.0 + uses: docker/build-push-action@v4.0.0 with: context: . push: true From 3a25e4bd2847a614844d75eb1191e7176104c958 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 14 Mar 2023 10:41:44 +0100 Subject: [PATCH 258/337] Bump actions/cache from 3.3.0 to 3.3.1 (#733) Bumps [actions/cache](https://github.com/actions/cache) from 3.3.0 to 3.3.1. - [Release notes](https://github.com/actions/cache/releases) - [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md) - [Commits](https://github.com/actions/cache/compare/v3.3.0...v3.3.1) --- updated-dependencies: - dependency-name: actions/cache dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/test.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index 272b64cc..5cfe7c1a 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -26,7 +26,7 @@ jobs: echo "##[set-output name=dir;]$(yarn cache dir)" - name: Restore yarn cache - uses: actions/cache@v3.3.0 + uses: actions/cache@v3.3.1 id: yarn-cache with: path: ${{ steps.yarn-cache-dir-path.outputs.dir }} From d53154a9c9bc227354badc7b8c60d99c087578d7 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Wed, 22 Mar 2023 08:55:52 +0100 Subject: [PATCH 259/337] Remove old mailer and add Redis based queue system (#736) * Add BullMQ and send mails to redis queue * Skip tests for now * Include new mailer und configuration * Fix mail tests * Log addition to queue * Fix lint errors --- docker-compose.yml | 1 - .../api/lib/controllers/usersController.js | 149 +++++++++---- packages/models/index.js | 58 ++--- packages/models/package.json | 1 + packages/models/src/user/mails.js | 158 +++++++------- packages/models/src/user/user.js | 3 +- tests/docker-compose.yml | 157 +++----------- tests/redis/local-redis-stack.conf | 33 +++ tests/tests/ZZZ-mail-test.js | 4 +- yarn.lock | 203 ++++++++++++++++-- 10 files changed, 483 insertions(+), 284 deletions(-) create mode 100644 tests/redis/local-redis-stack.conf diff --git a/docker-compose.yml b/docker-compose.yml index b3728c08..fcba270a 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -16,4 +16,3 @@ services: - ./.scripts/mongodb/osem_admin.sh:/docker-entrypoint-initdb.d/osem_admin.sh # - ./.scripts/mongodb/osem_seed_boxes.sh:/docker-entrypoint-initdb.d/osem_seed_boxes.sh # - ./.scripts/mongodb/osem_seed_measurements.sh:/docker-entrypoint-initdb.d/osem_seed_measurements.sh - \ No newline at end of file diff --git a/packages/api/lib/controllers/usersController.js b/packages/api/lib/controllers/usersController.js index 7e2028f7..09242962 100644 --- a/packages/api/lib/controllers/usersController.js +++ b/packages/api/lib/controllers/usersController.js @@ -2,10 +2,19 @@ const { User } = require('@sensebox/opensensemap-api-models'), { InternalServerError, ForbiddenError } = require('restify-errors'), - { checkContentType, redactEmail, clearCache, postToMattermost } = require('../helpers/apiUtils'), + { + checkContentType, + redactEmail, + clearCache, + postToMattermost, + } = require('../helpers/apiUtils'), { retrieveParameters } = require('../helpers/userParamHelpers'), handleError = require('../helpers/errorHandler'), - { createToken, refreshJwt, invalidateToken } = require('../helpers/jwtHelpers'); + { + createToken, + refreshJwt, + invalidateToken, + } = require('../helpers/jwtHelpers'); /** * define for nested user parameter for box creation request @@ -47,16 +56,27 @@ const registerUser = async function registerUser (req, res) { const { email, password, language, name } = req._userParams; try { - const newUser = await new User({ name, email, password, language }) - .save(); - postToMattermost(`New User: ${newUser.name} (${redactEmail(newUser.email)})`); + const newUser = await new User({ name, email, password, language }).save(); + postToMattermost( + `New User: ${newUser.name} (${redactEmail(newUser.email)})` + ); try { const { token, refreshToken } = await createToken(newUser); - return res.send(201, { code: 'Created', message: 'Successfully registered new user', data: { user: newUser }, token, refreshToken }); + return res.send(201, { + code: 'Created', + message: 'Successfully registered new user', + data: { user: newUser }, + token, + refreshToken, + }); } catch (err) { - return Promise.reject(new InternalServerError(`User successfully created but unable to create jwt token: ${err.message}`)); + return Promise.reject( + new InternalServerError( + `User successfully created but unable to create jwt token: ${err.message}` + ) + ); } } catch (err) { return handleError(err); @@ -82,18 +102,26 @@ const signIn = async function signIn (req, res) { try { // lowercase for email - const user = await User - .findOne({ $or: [{ email: emailOrName.toLowerCase() }, { name: emailOrName }] }) - .exec(); + const user = await User.findOne({ + $or: [{ email: emailOrName.toLowerCase() }, { name: emailOrName }], + }).exec(); if (!user) { - return Promise.reject(new ForbiddenError('User and or password not valid!')); + return Promise.reject( + new ForbiddenError('User and or password not valid!') + ); } if (await user.checkPassword(password)) { const { token, refreshToken } = await createToken(user); - return res.send(200, { code: 'Authorized', message: 'Successfully signed in', data: { user }, token, refreshToken }); + return res.send(200, { + code: 'Authorized', + message: 'Successfully signed in', + data: { user }, + token, + refreshToken, + }); } } catch (err) { if (err.name === 'ModelError' && err.message === 'Password incorrect') { @@ -119,8 +147,16 @@ const signIn = async function signIn (req, res) { */ const refreshJWT = async function refreshJWT (req, res) { try { - const { token, refreshToken, user } = await refreshJwt(req._userParams.token); - res.send(200, { code: 'Authorized', message: 'Successfully refreshed auth', data: { user }, token, refreshToken }); + const { token, refreshToken, user } = await refreshJwt( + req._userParams.token + ); + res.send(200, { + code: 'Authorized', + message: 'Successfully refreshed auth', + data: { user }, + token, + refreshToken, + }); } catch (err) { return handleError(err); } @@ -174,7 +210,11 @@ const requestResetPassword = async function requestResetPassword (req, res) { const resetPassword = async function resetPassword (req, res) { try { await User.resetPassword(req._userParams); - res.send(200, { code: 'Ok', message: 'Password successfully changed. You can now login with your new password' }); + res.send(200, { + code: 'Ok', + message: + 'Password successfully changed. You can now login with your new password', + }); } catch (err) { return handleError(err); } @@ -193,7 +233,10 @@ const resetPassword = async function resetPassword (req, res) { const confirmEmailAddress = async function confirmEmailAddress (req, res) { try { await User.confirmEmail(req._userParams); - res.send(200, { code: 'Ok', message: 'E-Mail successfully confirmed. Thank you' }); + res.send(200, { + code: 'Ok', + message: 'E-Mail successfully confirmed. Thank you', + }); } catch (err) { return handleError(err); } @@ -211,7 +254,10 @@ const getUserBoxes = async function getUserBoxes (req, res) { try { const boxes = await req.user.getBoxes(); const sharedBoxes = await req.user.getSharedBoxes(); - res.send(200, { code: 'Ok', data: { boxes: boxes, sharedBoxes: sharedBoxes } }); + res.send(200, { + code: 'Ok', + data: { boxes: boxes, sharedBoxes: sharedBoxes }, + }); } catch (err) { return handleError(err); } @@ -242,15 +288,23 @@ const getUser = async function getUser (req, res) { */ const updateUser = async function updateUser (req, res) { try { - const { updated, signOut, messages, updatedUser } = await req.user.updateUser(req._userParams); + const { updated, signOut, messages, updatedUser } = + await req.user.updateUser(req._userParams); if (updated === false) { - return res.send(200, { code: 'Ok', message: 'No changed properties supplied. User remains unchanged.' }); + return res.send(200, { + code: 'Ok', + message: 'No changed properties supplied. User remains unchanged.', + }); } if (signOut === true) { invalidateToken(req); } - res.send(200, { code: 'Ok', message: `User successfully saved.${messages.join('.')}`, data: { me: updatedUser } }); + res.send(200, { + code: 'Ok', + message: `User successfully saved.${messages.join('.')}`, + data: { me: updatedUser }, + }); } catch (err) { return handleError(err); } @@ -273,9 +327,14 @@ const deleteUser = async function deleteUser (req, res) { invalidateToken(req); await req.user.destroyUser(); - res.send(200, { code: 'Ok', message: 'User and all boxes of user marked for deletion. Bye Bye!' }); + res.send(200, { + code: 'Ok', + message: 'User and all boxes of user marked for deletion. Bye Bye!', + }); clearCache(['getBoxes', 'getStats']); - postToMattermost(`User deleted: ${req.user.name} (${redactEmail(req.user.email)})`); + postToMattermost( + `User deleted: ${req.user.name} (${redactEmail(req.user.email)})` + ); } catch (err) { return handleError(err); } @@ -290,14 +349,20 @@ const deleteUser = async function deleteUser (req, res) { * @apiSuccess {String} code `Ok` * @apiSuccess {String} message `Email confirmation has been sent to ` */ -const requestEmailConfirmation = async function requestEmailConfirmation (req, res) { +const requestEmailConfirmation = async function requestEmailConfirmation ( + req, + res +) { try { const result = await req.user.resendEmailConfirmation(); let usedAddress = result.email; if (result.unconfirmedEmail) { usedAddress = result.unconfirmedEmail; } - res.send(200, { code: 'Ok', message: `Email confirmation has been sent to ${usedAddress}` }); + res.send(200, { + code: 'Ok', + message: `Email confirmation has been sent to ${usedAddress}`, + }); } catch (err) { return handleError(err); } @@ -310,9 +375,9 @@ module.exports = { { name: 'email', dataType: 'email', required: true }, { predef: 'password' }, { name: 'name', required: true, dataType: 'as-is' }, - { name: 'language', defaultValue: 'en_US' } + { name: 'language', defaultValue: 'en_US' }, ]), - registerUser + registerUser, ], signIn: [ checkContentType, @@ -320,23 +385,21 @@ module.exports = { { name: 'email', required: true }, { predef: 'password' }, ]), - signIn + signIn, ], signOut, resetPassword: [ checkContentType, retrieveParameters([ { name: 'token', required: true }, - { predef: 'password' } + { predef: 'password' }, ]), - resetPassword + resetPassword, ], requestResetPassword: [ checkContentType, - retrieveParameters([ - { name: 'email', dataType: 'email', required: true } - ]), - requestResetPassword + retrieveParameters([{ name: 'email', dataType: 'email', required: true }]), + requestResetPassword, ], confirmEmailAddress: [ checkContentType, @@ -344,7 +407,7 @@ module.exports = { { name: 'token', required: true }, { name: 'email', dataType: 'email', required: true }, ]), - confirmEmailAddress + confirmEmailAddress, ], requestEmailConfirmation, getUserBoxes, @@ -355,23 +418,19 @@ module.exports = { { predef: 'password', name: 'currentPassword', required: false }, { predef: 'password', name: 'newPassword', required: false }, { name: 'name', dataType: 'as-is' }, - { name: 'language' } + { name: 'language' }, ]), - updateUser + updateUser, ], getUser, refreshJWT: [ checkContentType, - retrieveParameters([ - { name: 'token', required: true } - ]), - refreshJWT + retrieveParameters([{ name: 'token', required: true }]), + refreshJWT, ], deleteUser: [ checkContentType, - retrieveParameters([ - { predef: 'password' } - ]), - deleteUser - ] + retrieveParameters([{ predef: 'password' }]), + deleteUser, + ], }; diff --git a/packages/models/index.js b/packages/models/index.js index efb9f434..9f5247b3 100644 --- a/packages/models/index.js +++ b/packages/models/index.js @@ -7,36 +7,44 @@ process.env.SUPPRESS_NO_CONFIG_WARNING = 'y'; const config = require('config'); config.util.setModuleDefaults('openSenseMap-API-models', { - 'db': { - 'host': 'localhost', - 'port': 27017, - 'user': 'admin', - 'userpass': 'admin', - 'authsource': 'OSeM-api', - 'db': 'OSeM-api', - 'mongo_uri': '' + db: { + host: 'localhost', + port: 27017, + user: 'admin', + userpass: 'admin', + authsource: 'OSeM-api', + db: 'OSeM-api', + mongo_uri: '', }, - 'integrations': { - 'ca_cert': '', - 'cert': '', - 'key': '', - 'mailer': { - 'url': '', - 'origin': '' + integrations: { + ca_cert: '', + cert: '', + key: '', + redis: { + host: '', + port: 6379, + username: '', + password: '', + db: 0, + }, + mailer: { + url: '', + origin: '', + queue: 'mails', + }, + mqtt: { + url: '', }, - 'mqtt': { - 'url': '' - } }, - 'password': { - 'min_length': 8, - 'salt_factor': 13 + password: { + min_length: 8, + salt_factor: 13, }, - 'claims_ttl': { - 'amount': 1, - 'unit': 'd' + claims_ttl: { + amount: 1, + unit: 'd', }, - 'image_folder': './userimages/', + image_folder: './userimages/', }); const { model: Box } = require('./src/box/box'), diff --git a/packages/models/package.json b/packages/models/package.json index da2bfb39..cc10d64a 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -10,6 +10,7 @@ "@sensebox/osem-protos": "^1.1.0", "@sensebox/sketch-templater": "1.13.0", "bcrypt": "^5.1.0", + "bullmq": "^3.10.1", "config": "^3.3.6", "got": "^11.8.2", "isemail": "^3.0.0", diff --git a/packages/models/src/user/mails.js b/packages/models/src/user/mails.js index 1d7ed496..fab76100 100644 --- a/packages/models/src/user/mails.js +++ b/packages/models/src/user/mails.js @@ -3,21 +3,23 @@ const config = require('config').get('openSenseMap-API-models.integrations'), log = require('../log'); -const noMailerConfiguredFunc = function () { - return Promise.resolve({ 'msg': 'no mailer configured' }); +const noQueueConfiguredFunc = function () { + return Promise.resolve({ msg: 'no queue configured' }); }; module.exports = { - sendMail: noMailerConfiguredFunc + addToQueue: noQueueConfiguredFunc, }; -if (config.get('mailer.url')) { +if (config.has('redis') && config.has('redis.host') && config.has('redis.port') && config.has('redis.username') && config.has('redis.password') && config.has('redis.db') && config.has('mailer.queue')) { /* eslint-disable global-require */ - const got = require('got'); + const { Queue } = require('bullmq'); /* eslint-enable global-require */ + let queue; + const mailTemplates = { - 'newBox' (user, box) { + newBox (user, box) { const sketchParams = { encoding: 'base64', ssid: '', @@ -28,7 +30,7 @@ if (config.get('mailer.url')) { windSpeedPort: box.windSpeedPort, devEUI: '', appEUI: '', - appKey: '' + appKey: '', }; if (box.access_token) { @@ -37,64 +39,64 @@ if (config.get('mailer.url')) { return { payload: { - box + box, }, attachment: { filename: 'senseBox.ino', - contents: box.getSketch(sketchParams) - } + contents: box.getSketch(sketchParams), + }, }; }, - 'newBoxLuftdaten' (user, box) { + newBoxLuftdaten (user, box) { return { payload: { - box - } + box, + }, }; }, - 'newBoxHackAir' (user, box) { + newBoxHackAir (user, box) { return { payload: { - box - } + box, + }, }; }, - 'newUser' (user) { + newUser (user) { return { payload: { token: user.emailConfirmationToken, - email: user.email - } + email: user.email, + }, }; }, // email confirmation request - 'passwordReset' (user) { + passwordReset (user) { return { payload: { - token: user.resetPasswordToken - } + token: user.resetPasswordToken, + }, }; }, - 'newUserManagement' (user, boxes) { + newUserManagement (user, boxes) { return { payload: { boxes, - token: user.resetPasswordToken - } + token: user.resetPasswordToken, + }, }; }, - 'confirmEmail' (user) { + confirmEmail (user) { return { recipient: { address: user.unconfirmedEmail, - name: user.name + name: user.name, }, payload: { token: user.emailConfirmationToken, - email: user.unconfirmedEmail - } + email: user.unconfirmedEmail, + }, }; }, - 'resendEmailConfirmation' (user) { + resendEmailConfirmation (user) { let addressToUse = user.email; if (user.unconfirmedEmail) { addressToUse = user.unconfirmedEmail; @@ -103,73 +105,81 @@ if (config.get('mailer.url')) { return { recipient: { address: addressToUse, - name: user.name + name: user.name, }, payload: { token: user.emailConfirmationToken, - email: addressToUse - } + email: addressToUse, + }, }; }, - 'newSketch' (user, box) { + newSketch (user, box) { return { payload: { - box + box, }, attachment: { filename: 'senseBox.ino', - contents: box.getSketch({ encoding: 'base64', access_token: box.access_token }) - } + contents: box.getSketch({ + encoding: 'base64', + access_token: box.access_token, + }), + }, }; }, - 'deleteUser' () { + deleteUser () { return {}; - } + }, }; - const requestMailer = (payload) => { - return got.post(config.get('mailer.url'), { - cert: config.get('cert'), - key: config.get('key'), - ca: config.get('ca_cert'), - json: payload, - ecdhCurve: 'auto' - }) - .then((response) => { - log.info({ msg: 'successfully sent mails', mailer_response: response.body, mailer_response_code: response.statusCode }); - - return response; - }) - .catch((err) => { - throw err; - }); + const requestQueue = () => { + if (queue) { + return queue; + } + queue = new Queue(config.get('mailer.queue'), { + connection: { + host: config.get('redis.host'), + port: config.get('redis.port'), + username: config.get('redis.username'), + password: config.get('redis.password'), + db: config.get('redis.db'), + }, + }); + + return queue; }; module.exports = { - sendMail (template, user, data) { - if (!(template in mailTemplates)) { - return Promise.reject(new Error(`template ${template} not implemented`)); - } - - const { payload = {}, attachment, recipient = { address: user.email, name: user.name } } = mailTemplates[template](user, data); + addToQueue (template, user, data) { + const { + payload = {}, + attachment, + recipient = { address: user.email, name: user.name }, + } = mailTemplates[template](user, data); // add user and origin to payload payload.user = user; payload.origin = config.get('mailer.origin'); - // complete the payload - const mailRequestPayload = [ - { - template, - lang: user.language, - recipient, - payload, - attachment - } - ]; - - return requestMailer(mailRequestPayload); - + return requestQueue().add(template, { + template, + lang: user.language, + recipient, + payload, + attachment + }, { + removeOnComplete: true, + }) + .then((response) => { + log.info({ + msg: 'Successfully added mail to queue', + job_id: response.id, + template: response.name + }); + }) + .catch((err) => { + throw err; + }); } }; } diff --git a/packages/models/src/user/user.js b/packages/models/src/user/user.js index 914c5530..046e5bf8 100644 --- a/packages/models/src/user/user.js +++ b/packages/models/src/user/user.js @@ -644,7 +644,8 @@ userSchema.statics.transferOwnershipOfBox = function transferOwnershipOfBox (new }; userSchema.methods.mail = function mail (template, data) { - return mails.sendMail(template, this, data); + // return mails.sendMail(template, this, data); + return mails.addToQueue(template, this, data); }; const handleE11000 = function (error, res, next) { diff --git a/tests/docker-compose.yml b/tests/docker-compose.yml index f987835f..13b020fe 100644 --- a/tests/docker-compose.yml +++ b/tests/docker-compose.yml @@ -26,14 +26,21 @@ services: "salt_factor": 1 }, "image_folder": "/userimages/", - "integrations": { "ca_cert": "-----BEGIN CERTIFICATE-----\nMIIE8jCCAtqgAwIBAgIBATANBgkqhkiG9w0BAQsFADAZMRcwFQYDVQQDEw5vcGVu\nU2Vuc2VNYXBDQTAeFw0xODAxMjQxMzQ1NDlaFw0yODAxMjQxMzQ1NDlaMBkxFzAV\nBgNVBAMTDm9wZW5TZW5zZU1hcENBMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIIC\nCgKCAgEAtRv1MmOOMnL1vqaFF1uf6XzHvUUkFoQsktRMQgr4Kq4TpBJdt2yrEWAf\ngBup20//Hb3pu1tGHnINRlrfnRbu/0Twq0iXP+zjzrn1TIppbQb8Hr5gci25vY8e\nfc3ZRhYDrPyf+Z+F3U5Skr2itvBEshSiy3L53YG+JJ6ohPeVW3ePoBOIZvFYEGNV\nDsEbt3DVAjdFOfB4SypZG9UyX8xNUw7aAbjLib9CkdT2hEDiZ6iiKDklxZnNt1fm\nYQ/FGJRMd3ZTMddrGcexPSY1dQOJHrnlf+fVkahfqLD4RmVaL0O4cc/e/YIJQEZi\nblD+cUduKl0itkeXj1PEbYyngGixkJ+9+WuZvOwTqNrCgWU1uXrRH3UKn2XGYQau\nauq4AqnEgvMSev7nxdXEznzey1ugEeNSHXyyvj70KrUEHJ1kL4aL53YD0Xd8Y0hL\n88MHl3GkjkojZ68U0a/0TUSfTuv+JdP19HfZY5qVKst1309tlgaOiQXafAsiVBRr\ncieFHXxvoruQy/6pTwGRtfWbyujib+xXaTX36y08IXK0Jb45WJDoVgPswsHYqF6E\n/AH0NSRZrXckfMQviUea27/lOD1M96cwslDjvOngJdUu1zBGLdfQ8SWcs1HqdG7i\nq+Iuh/UGq4aJgRTENEBrc4kjQQyZszXBJmRxAWKIgN0h+jEzGIsCAwEAAaNFMEMw\nDgYDVR0PAQH/BAQDAgEGMBIGA1UdEwEB/wQIMAYBAf8CAQAwHQYDVR0OBBYEFJl6\n7zgZ/9GRVgb1dBglkSyXfGNRMA0GCSqGSIb3DQEBCwUAA4ICAQBYJIxwwt+/C1+6\nyjIDzQ6wkfdDWzBj9kfV90plp4zX7rhT+M2t/en0/lN2BgK3J1fw+PWbku6A19hA\nniZ/mBZrKki0UzzqGO1/ovh3izC2zeRL1lqwxdxj29+2waPk2vH/sy97AuY3q/5G\nE+H96RReOJZxysIAg2UxXpvgdupnTGMrh+fuU7iGm9NYLSLuD2SaZY/ZThSPFXOh\nb59W6gMmNKo6rN09jj994rJQfsxH2JOkqiTHfwXp3Ch4Zg80XC9RvvRk6S4dtnLe\npQy+Bg3YjQ+sSUIaNrvWoP8ut+9aHdfSlQi/7aYD7tYEhdTK7G++4RWZ0C31G9an\n6Yjcg1lJDWkP+ii91danhisdCwP2xteRXzpFM/uJ/dY+xBaX/Kp12bhF8PzbgJHa\nrsDApLlywVSrZtglSJ5eBhDbuLPEGqATWCExvlPO2R4MF1CID/+aybj5o9Zfmok4\nU8Z1QwLZElpTh1OhkYCyIzRJ2eG1Hx6svLh6nx4ai3iumbjzWh+E4xrncdTBA6hk\nRKF+yZKDfpFF8iwemKExthQwCSjqEGi6bYf02Gw6A226FSqdD2Tw0TghnXtT9fQ6\nyBx1uNSDDXdCFWmPzvZIMLe335mP2RKQrcGIbAUi0WgTuqFNyCshnoWmQigP6lqK\nC5m4Hth2wvbwzeqDD2kvRQfpipy9Cw==\n-----END CERTIFICATE-----\n", "key": "-----BEGIN RSA PRIVATE KEY-----\nMIIJKAIBAAKCAgEAtRv1MmOOMnL1vqaFF1uf6XzHvUUkFoQsktRMQgr4Kq4TpBJd\nt2yrEWAfgBup20//Hb3pu1tGHnINRlrfnRbu/0Twq0iXP+zjzrn1TIppbQb8Hr5g\nci25vY8efc3ZRhYDrPyf+Z+F3U5Skr2itvBEshSiy3L53YG+JJ6ohPeVW3ePoBOI\nZvFYEGNVDsEbt3DVAjdFOfB4SypZG9UyX8xNUw7aAbjLib9CkdT2hEDiZ6iiKDkl\nxZnNt1fmYQ/FGJRMd3ZTMddrGcexPSY1dQOJHrnlf+fVkahfqLD4RmVaL0O4cc/e\n/YIJQEZiblD+cUduKl0itkeXj1PEbYyngGixkJ+9+WuZvOwTqNrCgWU1uXrRH3UK\nn2XGYQauauq4AqnEgvMSev7nxdXEznzey1ugEeNSHXyyvj70KrUEHJ1kL4aL53YD\n0Xd8Y0hL88MHl3GkjkojZ68U0a/0TUSfTuv+JdP19HfZY5qVKst1309tlgaOiQXa\nfAsiVBRrcieFHXxvoruQy/6pTwGRtfWbyujib+xXaTX36y08IXK0Jb45WJDoVgPs\nwsHYqF6E/AH0NSRZrXckfMQviUea27/lOD1M96cwslDjvOngJdUu1zBGLdfQ8SWc\ns1HqdG7iq+Iuh/UGq4aJgRTENEBrc4kjQQyZszXBJmRxAWKIgN0h+jEzGIsCAwEA\nAQKCAgBsqjuyYh19k5BzNcKBQ05tb5sAqy19/QwphQvETISeRxgtx39HgQIbSMtd\nuDtwBU2S8NH+wkMOHWxtnDSzMoFv1FN60fE+P8pnzRerNxkOe7RmVd/UYi8h1296\nGDqXXLoT3ve1dMuC/2138iRhE0SEfPE4lOHqz9/gZPnD3jFVUiVw7IdZDNHD83Wj\nhqY0qJSF4de9bdUfdGdG1eKFrDVw8mZHxjMJkSJGEbtfmva9L2csLy3EpAXUTf9C\nmY2us7w1qV89dn0iWLi1cel9LgPl1bAn0FhKLvZGZvhwdHtqBH30e77V6GHYmOKS\nQjKIkU0+Sed76vS64I3pFQ2jdC2lEBmvYrdX4n8Ab/yWBi/KyouJW583KlevLbPk\n0GsDVQiolLLl4z5gcpGCoLH8jm/soGfXWyTBbd5Ei+01Zf/yYHTtYPh2WYLFBZ4z\nnnhbTcquOoqF44wXPRqOBKVX1amiMG4llmIne89DGlZQaP9A+4Q+o/5aTkInupwT\nBI2JRLe/YZb/0S/wOGKGFygvM1p1I/ToCg2FOX0ZWzkRZ9Sr9RAKMX3VHImYRSID\nszU/PSPxSAjy22u1vgO6wAAaOaO1OS4JwpKbhqVyjuvzvIwHMVfTgqyhIRsk39Ev\nuTqHTse8v6S+fJY3RDLR1ereWJgPpzKnDPxg2F5ROXVGaDZb0QKCAQEAzJ5c3mDz\nKsrsf0HpmK+w95gb4pPd529BLNVv/tKBNqUkg1jsYriL7nGLVNSKFDmIyokOb/sI\nqzDQRNg/4LanH8lhrmtmCeH05Tkz3Aj1IwF8I8/fr/57Aj0DgxFSJ3aDgys2q4ld\ngIR3fe4hIDF0rXb8bAYqOt7rfl3qvbRSsLjQCi358fHRQeMGDjyC9FZ6POwdQFAP\n531uXNYnnePnuXfuSgzVBp83pW3V8rW4YkpFoPhT38msVny63EAhRcoot/2X96Cd\njRQNq/5v8G0luBv2DEDSP/CDfTZKhkMaauf8KIACLeYYNTz2gFvDfa5TroqAe5De\nHZHfqh94wyBV9wKCAQEA4pZTGWk1S0WQz01AlMvRXiM7H7jEAmddRgrpQ2w7g+Ss\nkJesYzREZ7j/kIpK3ACuQXjW/Tjlnpkp206ocCIoIwExOVG4vsewDEGaYqOvllro\n+GW7O4DhwgeUWAao/Ge1T/gu+8z/VM9N88udbc0xq8P0jn6xial9rLkhll5rZDS7\niIz1mFAzrADU5c7TvElXs86KX+T6+/sE2nNwsImaZHC1oclIHl9WnJy/qCPYFS04\nY6q9vg+vOlzRc6KgmOp/5Jex2oQsXKx45v0O8+mfLlyT6CBw4rWb0ksHC3aM8zCr\ncGmgbzqVYYIewnZ//yRm98Mty8p/m3p3iNNzHExdDQKCAQBfrel1HtZ1+x9tPi/x\n8q2IiTr4zvXjg3VxdniBKoO7Pqt9M7aNTwg3viZNy3ipjmG1ezMiD7t0+UVZ+9ia\nxi4NwggIHDZBhsQR75adXB7seIRI5qoNTKzOViNvRUkqJNPIIQvWWEw9jTOm0hPx\nTs7lUg8koBldH+H0XAwpGsnT0weMywTmKpIUAglR3N/LSyirlijzaryVHWTeylEK\nFojDhB4LyEZQa2EE3QA/FtQaOeqnI5dsvIv2gSqLVP15+dbiehV2eEdTsb3W4AoN\n3avWlFSQVDs8JMYHZbyhXX1b4hBaC8l5Fu/Y7SHC0aXu/fYpVqBPp2UFZLG2hjLc\n4yDvAoIBACzF84mz5loHVwP/ieFdHPPzFj3AbsrizeWHRmySOHhpeUfhEKlRrKqq\nPaW8DerHH6fETwcedREPxtuVAWeW+ENieu2OnmjkYH8rf2w6V/nn4N0kjQjHANUs\nVj3GoyGtBIDW08Hh0hpaFFc2RtdpkoUUZYC6vC4tla3Jrz9dTO8yFFR5NhZw0qUM\nTQVUBzbPb0sSZvln78hW47Ce2wenSSDLvLhJY7zMrfqoZp685nfYxam8FV43DzMD\nIEgvPHi67aan6vb44yM02XcbThcYdOHeXUOjFWtW44F8XdoABP4RAe9mj9MqylXI\nNnfKnqQ19zrCEIySaQC6BGC/F6Hh3QkCggEBAMQxjQVI0eUBv8C+/e9HsbvnvtPz\nBSpGdKKDvp+vfw8dP0rxCFHeDeBglTOGOB4uTUGGkU2l6HDA/pFdSOmsiXLpc/Ai\nQX4n2sj5R5W4mCiYVuHWo/BCkEF7utcwHu3raBhnYeuUooISfe2S8A/66PF9lnO9\n+FVODW6Q+qdHNH349AXwtgOS/neg16I5hw0PgMkcNuJl+bgXlyy+0O8N2/37ofb1\nbvj+34qtubGRdgtSP/EF8NxYWIz3VVqVyHtPOKoAR2Aa1ilg8ixbS1KfiqZejY6u\nTZMPvBabA8anDKtUFq7OFkzPYxMYNkL4rZGltiZMPuRRJ5RKw+yNxaLVz3M=\n-----END RSA PRIVATE KEY-----\n", "cert": "-----BEGIN CERTIFICATE-----\nMIIFTTCCAzWgAwIBAgIRALQEmnFXPN2DhNRd0IV9DcAwDQYJKoZIhvcNAQELBQAw\nGTEXMBUGA1UEAxMOb3BlblNlbnNlTWFwQ0EwHhcNMTgwMTI0MTM0NTUzWhcNMjgw\nMTI0MTM0NTQ4WjAYMRYwFAYDVQQDDA1tYWlsZXJfY2xpZW50MIICIjANBgkqhkiG\n9w0BAQEFAAOCAg8AMIICCgKCAgEAtRv1MmOOMnL1vqaFF1uf6XzHvUUkFoQsktRM\nQgr4Kq4TpBJdt2yrEWAfgBup20//Hb3pu1tGHnINRlrfnRbu/0Twq0iXP+zjzrn1\nTIppbQb8Hr5gci25vY8efc3ZRhYDrPyf+Z+F3U5Skr2itvBEshSiy3L53YG+JJ6o\nhPeVW3ePoBOIZvFYEGNVDsEbt3DVAjdFOfB4SypZG9UyX8xNUw7aAbjLib9CkdT2\nhEDiZ6iiKDklxZnNt1fmYQ/FGJRMd3ZTMddrGcexPSY1dQOJHrnlf+fVkahfqLD4\nRmVaL0O4cc/e/YIJQEZiblD+cUduKl0itkeXj1PEbYyngGixkJ+9+WuZvOwTqNrC\ngWU1uXrRH3UKn2XGYQauauq4AqnEgvMSev7nxdXEznzey1ugEeNSHXyyvj70KrUE\nHJ1kL4aL53YD0Xd8Y0hL88MHl3GkjkojZ68U0a/0TUSfTuv+JdP19HfZY5qVKst1\n309tlgaOiQXafAsiVBRrcieFHXxvoruQy/6pTwGRtfWbyujib+xXaTX36y08IXK0\nJb45WJDoVgPswsHYqF6E/AH0NSRZrXckfMQviUea27/lOD1M96cwslDjvOngJdUu\n1zBGLdfQ8SWcs1HqdG7iq+Iuh/UGq4aJgRTENEBrc4kjQQyZszXBJmRxAWKIgN0h\n+jEzGIsCAwEAAaOBkDCBjTAOBgNVHQ8BAf8EBAMCA7gwHQYDVR0lBBYwFAYIKwYB\nBQUHAwEGCCsGAQUFBwMCMB0GA1UdDgQWBBSZeu84Gf/RkVYG9XQYJZEsl3xjUTAf\nBgNVHSMEGDAWgBSZeu84Gf/RkVYG9XQYJZEsl3xjUTAcBgNVHREEFTATggZtYWls\nZXKCCWxvY2FsaG9zdDANBgkqhkiG9w0BAQsFAAOCAgEAKh+FD9v6fuHsl9ZGMP6H\nOI2of3PJRLTEMdp2rKJ1V9ULmr7sCO3fz7vUWdyKMuJXmtt6RKWwZMQfL26fsM+l\nz18wWoNly5OhhrSf6gJF2zEEr+X6emTn/RPHejc6eQKFqrdypwi890PSmhUZShz8\nCHxbUqWLmlc6CYx6t3pDcQ4/ryr5kx9cPFiPovxo+7Cc8eTkRQQfiwBUnNlXiwIq\n5R9MCZR7/XjskJeV2WzqWeRAfQgvcCvAzCEyrb/I5bLYrBwQFnATxhPvfDjZ2E+E\nK6sE/MqEXzU1gQM/zaCzpd1pXMq7PF+NkEsHuOTdZ0CvM31LD+RwxUwuETTCFuj5\n9bfhq0CTUs3Cdot9kQ+jASWMGhAhMYolhjnd58rSF4DCG9rdCl877lC1S/oNpoUU\nSN6g7X8P7HgynQZTOjUadXNbsS92KubyjE0kS1krV6yh3JH+izfgdI+ABpcHzOAB\n2fE+vRfjVbM3qeE5t4HfD8FwZKhw+PUqrDr8qKQyRX1HPpd7wcF/9bd1mMsUkAdg\nVhnkGh9AP2jDDC9xvP/LbslU+UCRXoA5hW5suey+L2cF516iR55UNObAk/TyGjVm\neXVP290e3TZZ5v2BzJdbf2rT5N6DpKntauljfbc7KQm3HZ/2aGn9O3FvzYuhUxGE\nnNAr/VqDx2/WivNpl2OEz18=\n-----END CERTIFICATE-----\n", "mailer": { "url": "https://mailer:3924/", - "origin": "http://osem-api:8000" + "origin": "http://osem-api:8000", + "queue": "mails" + }, + "redis": { + "host": "redis-stack", + "port": 6379, + "username": "queue", + "password": "somepassword", + "db": 0 }, "mqtt": { "url": "mqtt-osem-integration:3925" @@ -46,139 +53,36 @@ services: } depends_on: - db + - redis-stack mailer: - image: sensebox/sensebox-mailer:${SENSEBOX_MAILER_TAG:-v0.0.1} + image: ghcr.io/opensensemap/mailer:main + platform: linux/amd64 environment: - SENSEBOX_MAILER_SERVER_CERT: |- - -----BEGIN CERTIFICATE----- - MIIFTTCCAzWgAwIBAgIRAI1rdthaIupxUz0b/od53eUwDQYJKoZIhvcNAQELBQAw - GTEXMBUGA1UEAxMOb3BlblNlbnNlTWFwQ0EwHhcNMTgwMTI0MTM0NTUzWhcNMjgw - MTI0MTM0NTQ4WjAYMRYwFAYDVQQDDA1tYWlsZXJfc2VydmVyMIICIjANBgkqhkiG - 9w0BAQEFAAOCAg8AMIICCgKCAgEAtRv1MmOOMnL1vqaFF1uf6XzHvUUkFoQsktRM - Qgr4Kq4TpBJdt2yrEWAfgBup20//Hb3pu1tGHnINRlrfnRbu/0Twq0iXP+zjzrn1 - TIppbQb8Hr5gci25vY8efc3ZRhYDrPyf+Z+F3U5Skr2itvBEshSiy3L53YG+JJ6o - hPeVW3ePoBOIZvFYEGNVDsEbt3DVAjdFOfB4SypZG9UyX8xNUw7aAbjLib9CkdT2 - hEDiZ6iiKDklxZnNt1fmYQ/FGJRMd3ZTMddrGcexPSY1dQOJHrnlf+fVkahfqLD4 - RmVaL0O4cc/e/YIJQEZiblD+cUduKl0itkeXj1PEbYyngGixkJ+9+WuZvOwTqNrC - gWU1uXrRH3UKn2XGYQauauq4AqnEgvMSev7nxdXEznzey1ugEeNSHXyyvj70KrUE - HJ1kL4aL53YD0Xd8Y0hL88MHl3GkjkojZ68U0a/0TUSfTuv+JdP19HfZY5qVKst1 - 309tlgaOiQXafAsiVBRrcieFHXxvoruQy/6pTwGRtfWbyujib+xXaTX36y08IXK0 - Jb45WJDoVgPswsHYqF6E/AH0NSRZrXckfMQviUea27/lOD1M96cwslDjvOngJdUu - 1zBGLdfQ8SWcs1HqdG7iq+Iuh/UGq4aJgRTENEBrc4kjQQyZszXBJmRxAWKIgN0h - +jEzGIsCAwEAAaOBkDCBjTAOBgNVHQ8BAf8EBAMCA7gwHQYDVR0lBBYwFAYIKwYB - BQUHAwEGCCsGAQUFBwMCMB0GA1UdDgQWBBSZeu84Gf/RkVYG9XQYJZEsl3xjUTAf - BgNVHSMEGDAWgBSZeu84Gf/RkVYG9XQYJZEsl3xjUTAcBgNVHREEFTATggZtYWls - ZXKCCWxvY2FsaG9zdDANBgkqhkiG9w0BAQsFAAOCAgEAmvXA9eXTucGaGtQdbbz3 - uDkxGIeqE24hmFiK3gykUeQ+h3NQsM0FnKKuLjCLqMgGo1Dr8BSMDoTrlx9ellfP - GzAyM/0xZzaDNxYr5fjVgQuy9BFyjJIvDUAbT4df3USGW8URln3a2lop4HqOBzeN - 9mnyNT1Ta0TCLkOgV10KVj38vP8YiJmegKiYgHqpVQ//ntjvigJYDOmwQbZQjxMn - 4tuld6rZ4Rq/gAiHtk76UyFv3aXm0p6wT+s/WdlPkwkqftcgvtl2TnR32U9un4Pj - MhQlYbHEE9SJ01FuNmdeMXRf0HkOk4CGpm5WqFZVaVRtR2kHGuji1WXuWxcpnNBf - epHX1ZOHmJ0lKKSzbmfIS2KAOTKgr3jFBz47+AH1lDIjuef9FYhPHIOgEr/KjIjo - 9H7JLDQmBlI6pssGWcsAsi+vOPzC01MwWfBa0c75WFFWuJcbzCGQYUn9ZF9iOePv - EQ1fmzPB0A8AjqNoMfzvj4OvvJF6HCoBjRzcVbMX2P0zZB+zwYadpswo11zlMN81 - dGuDRXYAYva69gJU5+Lj71TfusSa14lkVJ2ITi12eyTkxH2uuVTqXSVQXvWgrgS/ - RrdADwYsMqT1IJYYXlVNLFcJyRVfyGEsqA1uTImij2/Pa2miXGdpRjFqEWGGJZ5a - E9oQ4S8eb7hnqaXfQuJtMsg= - -----END CERTIFICATE----- - SENSEBOX_MAILER_SERVER_KEY: |- - -----BEGIN RSA PRIVATE KEY----- - MIIJKAIBAAKCAgEAtRv1MmOOMnL1vqaFF1uf6XzHvUUkFoQsktRMQgr4Kq4TpBJd - t2yrEWAfgBup20//Hb3pu1tGHnINRlrfnRbu/0Twq0iXP+zjzrn1TIppbQb8Hr5g - ci25vY8efc3ZRhYDrPyf+Z+F3U5Skr2itvBEshSiy3L53YG+JJ6ohPeVW3ePoBOI - ZvFYEGNVDsEbt3DVAjdFOfB4SypZG9UyX8xNUw7aAbjLib9CkdT2hEDiZ6iiKDkl - xZnNt1fmYQ/FGJRMd3ZTMddrGcexPSY1dQOJHrnlf+fVkahfqLD4RmVaL0O4cc/e - /YIJQEZiblD+cUduKl0itkeXj1PEbYyngGixkJ+9+WuZvOwTqNrCgWU1uXrRH3UK - n2XGYQauauq4AqnEgvMSev7nxdXEznzey1ugEeNSHXyyvj70KrUEHJ1kL4aL53YD - 0Xd8Y0hL88MHl3GkjkojZ68U0a/0TUSfTuv+JdP19HfZY5qVKst1309tlgaOiQXa - fAsiVBRrcieFHXxvoruQy/6pTwGRtfWbyujib+xXaTX36y08IXK0Jb45WJDoVgPs - wsHYqF6E/AH0NSRZrXckfMQviUea27/lOD1M96cwslDjvOngJdUu1zBGLdfQ8SWc - s1HqdG7iq+Iuh/UGq4aJgRTENEBrc4kjQQyZszXBJmRxAWKIgN0h+jEzGIsCAwEA - AQKCAgBsqjuyYh19k5BzNcKBQ05tb5sAqy19/QwphQvETISeRxgtx39HgQIbSMtd - uDtwBU2S8NH+wkMOHWxtnDSzMoFv1FN60fE+P8pnzRerNxkOe7RmVd/UYi8h1296 - GDqXXLoT3ve1dMuC/2138iRhE0SEfPE4lOHqz9/gZPnD3jFVUiVw7IdZDNHD83Wj - hqY0qJSF4de9bdUfdGdG1eKFrDVw8mZHxjMJkSJGEbtfmva9L2csLy3EpAXUTf9C - mY2us7w1qV89dn0iWLi1cel9LgPl1bAn0FhKLvZGZvhwdHtqBH30e77V6GHYmOKS - QjKIkU0+Sed76vS64I3pFQ2jdC2lEBmvYrdX4n8Ab/yWBi/KyouJW583KlevLbPk - 0GsDVQiolLLl4z5gcpGCoLH8jm/soGfXWyTBbd5Ei+01Zf/yYHTtYPh2WYLFBZ4z - nnhbTcquOoqF44wXPRqOBKVX1amiMG4llmIne89DGlZQaP9A+4Q+o/5aTkInupwT - BI2JRLe/YZb/0S/wOGKGFygvM1p1I/ToCg2FOX0ZWzkRZ9Sr9RAKMX3VHImYRSID - szU/PSPxSAjy22u1vgO6wAAaOaO1OS4JwpKbhqVyjuvzvIwHMVfTgqyhIRsk39Ev - uTqHTse8v6S+fJY3RDLR1ereWJgPpzKnDPxg2F5ROXVGaDZb0QKCAQEAzJ5c3mDz - Ksrsf0HpmK+w95gb4pPd529BLNVv/tKBNqUkg1jsYriL7nGLVNSKFDmIyokOb/sI - qzDQRNg/4LanH8lhrmtmCeH05Tkz3Aj1IwF8I8/fr/57Aj0DgxFSJ3aDgys2q4ld - gIR3fe4hIDF0rXb8bAYqOt7rfl3qvbRSsLjQCi358fHRQeMGDjyC9FZ6POwdQFAP - 531uXNYnnePnuXfuSgzVBp83pW3V8rW4YkpFoPhT38msVny63EAhRcoot/2X96Cd - jRQNq/5v8G0luBv2DEDSP/CDfTZKhkMaauf8KIACLeYYNTz2gFvDfa5TroqAe5De - HZHfqh94wyBV9wKCAQEA4pZTGWk1S0WQz01AlMvRXiM7H7jEAmddRgrpQ2w7g+Ss - kJesYzREZ7j/kIpK3ACuQXjW/Tjlnpkp206ocCIoIwExOVG4vsewDEGaYqOvllro - +GW7O4DhwgeUWAao/Ge1T/gu+8z/VM9N88udbc0xq8P0jn6xial9rLkhll5rZDS7 - iIz1mFAzrADU5c7TvElXs86KX+T6+/sE2nNwsImaZHC1oclIHl9WnJy/qCPYFS04 - Y6q9vg+vOlzRc6KgmOp/5Jex2oQsXKx45v0O8+mfLlyT6CBw4rWb0ksHC3aM8zCr - cGmgbzqVYYIewnZ//yRm98Mty8p/m3p3iNNzHExdDQKCAQBfrel1HtZ1+x9tPi/x - 8q2IiTr4zvXjg3VxdniBKoO7Pqt9M7aNTwg3viZNy3ipjmG1ezMiD7t0+UVZ+9ia - xi4NwggIHDZBhsQR75adXB7seIRI5qoNTKzOViNvRUkqJNPIIQvWWEw9jTOm0hPx - Ts7lUg8koBldH+H0XAwpGsnT0weMywTmKpIUAglR3N/LSyirlijzaryVHWTeylEK - FojDhB4LyEZQa2EE3QA/FtQaOeqnI5dsvIv2gSqLVP15+dbiehV2eEdTsb3W4AoN - 3avWlFSQVDs8JMYHZbyhXX1b4hBaC8l5Fu/Y7SHC0aXu/fYpVqBPp2UFZLG2hjLc - 4yDvAoIBACzF84mz5loHVwP/ieFdHPPzFj3AbsrizeWHRmySOHhpeUfhEKlRrKqq - PaW8DerHH6fETwcedREPxtuVAWeW+ENieu2OnmjkYH8rf2w6V/nn4N0kjQjHANUs - Vj3GoyGtBIDW08Hh0hpaFFc2RtdpkoUUZYC6vC4tla3Jrz9dTO8yFFR5NhZw0qUM - TQVUBzbPb0sSZvln78hW47Ce2wenSSDLvLhJY7zMrfqoZp685nfYxam8FV43DzMD - IEgvPHi67aan6vb44yM02XcbThcYdOHeXUOjFWtW44F8XdoABP4RAe9mj9MqylXI - NnfKnqQ19zrCEIySaQC6BGC/F6Hh3QkCggEBAMQxjQVI0eUBv8C+/e9HsbvnvtPz - BSpGdKKDvp+vfw8dP0rxCFHeDeBglTOGOB4uTUGGkU2l6HDA/pFdSOmsiXLpc/Ai - QX4n2sj5R5W4mCiYVuHWo/BCkEF7utcwHu3raBhnYeuUooISfe2S8A/66PF9lnO9 - +FVODW6Q+qdHNH349AXwtgOS/neg16I5hw0PgMkcNuJl+bgXlyy+0O8N2/37ofb1 - bvj+34qtubGRdgtSP/EF8NxYWIz3VVqVyHtPOKoAR2Aa1ilg8ixbS1KfiqZejY6u - TZMPvBabA8anDKtUFq7OFkzPYxMYNkL4rZGltiZMPuRRJ5RKw+yNxaLVz3M= - -----END RSA PRIVATE KEY----- - SENSEBOX_MAILER_CA_CERT: |- - -----BEGIN CERTIFICATE----- - MIIE8jCCAtqgAwIBAgIBATANBgkqhkiG9w0BAQsFADAZMRcwFQYDVQQDEw5vcGVu - U2Vuc2VNYXBDQTAeFw0xODAxMjQxMzQ1NDlaFw0yODAxMjQxMzQ1NDlaMBkxFzAV - BgNVBAMTDm9wZW5TZW5zZU1hcENBMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIIC - CgKCAgEAtRv1MmOOMnL1vqaFF1uf6XzHvUUkFoQsktRMQgr4Kq4TpBJdt2yrEWAf - gBup20//Hb3pu1tGHnINRlrfnRbu/0Twq0iXP+zjzrn1TIppbQb8Hr5gci25vY8e - fc3ZRhYDrPyf+Z+F3U5Skr2itvBEshSiy3L53YG+JJ6ohPeVW3ePoBOIZvFYEGNV - DsEbt3DVAjdFOfB4SypZG9UyX8xNUw7aAbjLib9CkdT2hEDiZ6iiKDklxZnNt1fm - YQ/FGJRMd3ZTMddrGcexPSY1dQOJHrnlf+fVkahfqLD4RmVaL0O4cc/e/YIJQEZi - blD+cUduKl0itkeXj1PEbYyngGixkJ+9+WuZvOwTqNrCgWU1uXrRH3UKn2XGYQau - auq4AqnEgvMSev7nxdXEznzey1ugEeNSHXyyvj70KrUEHJ1kL4aL53YD0Xd8Y0hL - 88MHl3GkjkojZ68U0a/0TUSfTuv+JdP19HfZY5qVKst1309tlgaOiQXafAsiVBRr - cieFHXxvoruQy/6pTwGRtfWbyujib+xXaTX36y08IXK0Jb45WJDoVgPswsHYqF6E - /AH0NSRZrXckfMQviUea27/lOD1M96cwslDjvOngJdUu1zBGLdfQ8SWcs1HqdG7i - q+Iuh/UGq4aJgRTENEBrc4kjQQyZszXBJmRxAWKIgN0h+jEzGIsCAwEAAaNFMEMw - DgYDVR0PAQH/BAQDAgEGMBIGA1UdEwEB/wQIMAYBAf8CAQAwHQYDVR0OBBYEFJl6 - 7zgZ/9GRVgb1dBglkSyXfGNRMA0GCSqGSIb3DQEBCwUAA4ICAQBYJIxwwt+/C1+6 - yjIDzQ6wkfdDWzBj9kfV90plp4zX7rhT+M2t/en0/lN2BgK3J1fw+PWbku6A19hA - niZ/mBZrKki0UzzqGO1/ovh3izC2zeRL1lqwxdxj29+2waPk2vH/sy97AuY3q/5G - E+H96RReOJZxysIAg2UxXpvgdupnTGMrh+fuU7iGm9NYLSLuD2SaZY/ZThSPFXOh - b59W6gMmNKo6rN09jj994rJQfsxH2JOkqiTHfwXp3Ch4Zg80XC9RvvRk6S4dtnLe - pQy+Bg3YjQ+sSUIaNrvWoP8ut+9aHdfSlQi/7aYD7tYEhdTK7G++4RWZ0C31G9an - 6Yjcg1lJDWkP+ii91danhisdCwP2xteRXzpFM/uJ/dY+xBaX/Kp12bhF8PzbgJHa - rsDApLlywVSrZtglSJ5eBhDbuLPEGqATWCExvlPO2R4MF1CID/+aybj5o9Zfmok4 - U8Z1QwLZElpTh1OhkYCyIzRJ2eG1Hx6svLh6nx4ai3iumbjzWh+E4xrncdTBA6hk - RKF+yZKDfpFF8iwemKExthQwCSjqEGi6bYf02Gw6A226FSqdD2Tw0TghnXtT9fQ6 - yBx1uNSDDXdCFWmPzvZIMLe335mP2RKQrcGIbAUi0WgTuqFNyCshnoWmQigP6lqK - C5m4Hth2wvbwzeqDD2kvRQfpipy9Cw== - -----END CERTIFICATE----- - SENSEBOX_MAILER_SMTP_SERVER: mailhog - SENSEBOX_MAILER_SMTP_PORT: 1025 - SENSEBOX_MAILER_SMTP_USER: ignored - SENSEBOX_MAILER_SMTP_PASSWORD: ignored - SENSEBOX_MAILER_FROM_DOMAIN: senseboxtest - + - SMTP_HOST=mailhog + - SMTP_PORT=1025 + - SMTP_SECURE=false + - SMTP_USERNAME=ignored + - SMTP_PASSWORD=ignored + - REDIS_HOST=redis-stack + - REDIS_PORT=6379 + - REDIS_USERNAME=queue + - REDIS_PASSWORD=somepassword + - REDIS_DB=0 + - BULLMQ_QUEUE_NAME=mails depends_on: - mailhog + - redis-stack + mailhog: image: mailhog/mailhog:v1.0.1 + platform: linux/amd64 ports: - "8025:8025" mqtt-osem-integration: image: ghcr.io/sensebox/mqtt-osem-integration:v0.1.0 + platform: linux/amd64 depends_on: - db environment: @@ -205,5 +109,12 @@ services: volumes: - ./mosquitto:/mosquitto/config + redis-stack: + image: redis/redis-stack-server:latest + volumes: + - ./redis/local-redis-stack.conf:/redis-stack.conf + ports: + - 6379:6379 + db: image: mongo:${MONGO_TAG:-5} diff --git a/tests/redis/local-redis-stack.conf b/tests/redis/local-redis-stack.conf new file mode 100644 index 00000000..14c55e39 --- /dev/null +++ b/tests/redis/local-redis-stack.conf @@ -0,0 +1,33 @@ +# Redis configuration file example. +# +# Note that in order to read the configuration file, Redis must be +# started with the file path as first argument: +# +# ./redis-server /path/to/redis.conf + +# Note on units: when memory size is needed, it is possible to specify +# it in the usual form of 1k 5GB 4M and so forth: +# +# 1k => 1000 bytes +# 1kb => 1024 bytes +# 1m => 1000000 bytes +# 1mb => 1024*1024 bytes +# 1g => 1000000000 bytes +# 1gb => 1024*1024*1024 bytes +# +# units are case insensitive so 1GB 1Gb 1gB are all the same. + +################################## NETWORK ##################################### + +port 6379 + +############################## APPEND ONLY MODE ############################### + +appendonly yes + +################################## SECURITY ################################### + +user queue on +@all -@dangerous +INFO ~bull:mails:* >somepassword +user worker on +@all -@dangerous +INFO +CLIENT ~bull:mails:* >somepassword + +requirepass super-secret \ No newline at end of file diff --git a/tests/tests/ZZZ-mail-test.js b/tests/tests/ZZZ-mail-test.js index e98e44fd..835f8606 100644 --- a/tests/tests/ZZZ-mail-test.js +++ b/tests/tests/ZZZ-mail-test.js @@ -419,7 +419,7 @@ describe('mails', function () { let hasLink = false; links.each(function (_, link) { const href = $(link).attr('href'); - if (href.includes('luftdaten_feinstaub.html')) { + if (href.includes('opensensemap-luftdaten')) { hasLink = true; } }); @@ -443,7 +443,7 @@ describe('mails', function () { let hasLink = false; links.each(function (_, link) { const href = $(link).attr('href'); - if (href.includes('hackair_home_v2.html')) { + if (href.includes('opensensemap-hackair')) { hasLink = true; } }); diff --git a/yarn.lock b/yarn.lock index 8f95cb23..463422a4 100644 --- a/yarn.lock +++ b/yarn.lock @@ -56,6 +56,11 @@ protobufjs "^6.10.0" yargs "^16.1.1" +"@ioredis/commands@^1.1.1": + version "1.2.0" + resolved "https://registry.yarnpkg.com/@ioredis/commands/-/commands-1.2.0.tgz#6d61b3097470af1fdbbe622795b8921d42018e11" + integrity sha512-Sx1pU8EM64o2BrqNpEO1CNLtKQwyhuXuqyfH7oGKCk+1a33d2r5saW8zNwm3j6BTExtjrv2BxTgzzkMwts6vGg== + "@mapbox/node-pre-gyp@^1.0.10": version "1.0.10" resolved "https://registry.yarnpkg.com/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.10.tgz#8e6735ccebbb1581e5a7e652244cadc8a844d03c" @@ -71,6 +76,36 @@ semver "^7.3.5" tar "^6.1.11" +"@msgpackr-extract/msgpackr-extract-darwin-arm64@3.0.2": + version "3.0.2" + resolved "https://registry.yarnpkg.com/@msgpackr-extract/msgpackr-extract-darwin-arm64/-/msgpackr-extract-darwin-arm64-3.0.2.tgz#44d752c1a2dc113f15f781b7cc4f53a307e3fa38" + integrity sha512-9bfjwDxIDWmmOKusUcqdS4Rw+SETlp9Dy39Xui9BEGEk19dDwH0jhipwFzEff/pFg95NKymc6TOTbRKcWeRqyQ== + +"@msgpackr-extract/msgpackr-extract-darwin-x64@3.0.2": + version "3.0.2" + resolved "https://registry.yarnpkg.com/@msgpackr-extract/msgpackr-extract-darwin-x64/-/msgpackr-extract-darwin-x64-3.0.2.tgz#f954f34355712212a8e06c465bc06c40852c6bb3" + integrity sha512-lwriRAHm1Yg4iDf23Oxm9n/t5Zpw1lVnxYU3HnJPTi2lJRkKTrps1KVgvL6m7WvmhYVt/FIsssWay+k45QHeuw== + +"@msgpackr-extract/msgpackr-extract-linux-arm64@3.0.2": + version "3.0.2" + resolved "https://registry.yarnpkg.com/@msgpackr-extract/msgpackr-extract-linux-arm64/-/msgpackr-extract-linux-arm64-3.0.2.tgz#45c63037f045c2b15c44f80f0393fa24f9655367" + integrity sha512-FU20Bo66/f7He9Fp9sP2zaJ1Q8L9uLPZQDub/WlUip78JlPeMbVL8546HbZfcW9LNciEXc8d+tThSJjSC+tmsg== + +"@msgpackr-extract/msgpackr-extract-linux-arm@3.0.2": + version "3.0.2" + resolved "https://registry.yarnpkg.com/@msgpackr-extract/msgpackr-extract-linux-arm/-/msgpackr-extract-linux-arm-3.0.2.tgz#35707efeafe6d22b3f373caf9e8775e8920d1399" + integrity sha512-MOI9Dlfrpi2Cuc7i5dXdxPbFIgbDBGgKR5F2yWEa6FVEtSWncfVNKW5AKjImAQ6CZlBK9tympdsZJ2xThBiWWA== + +"@msgpackr-extract/msgpackr-extract-linux-x64@3.0.2": + version "3.0.2" + resolved "https://registry.yarnpkg.com/@msgpackr-extract/msgpackr-extract-linux-x64/-/msgpackr-extract-linux-x64-3.0.2.tgz#091b1218b66c341f532611477ef89e83f25fae4f" + integrity sha512-gsWNDCklNy7Ajk0vBBf9jEx04RUxuDQfBse918Ww+Qb9HCPoGzS+XJTLe96iN3BVK7grnLiYghP/M4L8VsaHeA== + +"@msgpackr-extract/msgpackr-extract-win32-x64@3.0.2": + version "3.0.2" + resolved "https://registry.yarnpkg.com/@msgpackr-extract/msgpackr-extract-win32-x64/-/msgpackr-extract-win32-x64-3.0.2.tgz#0f164b726869f71da3c594171df5ebc1c4b0a407" + integrity sha512-O+6Gs8UeDbyFpbSh2CPEz/UOrrdWPTBYNblZK5CxxLisYt4kGX3Sc+czffFonyjiGSq3jWLwJS/CCJc7tBr4sQ== + "@netflix/nerror@^1.0.0": version "1.1.3" resolved "https://registry.yarnpkg.com/@netflix/nerror/-/nerror-1.1.3.tgz#9d88eccca442f1d544f2761d15ea557dc0a44ed2" @@ -620,6 +655,13 @@ brace-expansion@^1.1.7: balanced-match "^1.0.0" concat-map "0.0.1" +brace-expansion@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-2.0.1.tgz#1edc459e0f0c548486ecf9fc99f2221364b9a0ae" + integrity sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA== + dependencies: + balanced-match "^1.0.0" + braces@~3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" @@ -668,6 +710,20 @@ buffer@^6.0.3: base64-js "^1.3.1" ieee754 "^1.2.1" +bullmq@^3.10.1: + version "3.10.1" + resolved "https://registry.yarnpkg.com/bullmq/-/bullmq-3.10.1.tgz#798ce661cdb9dd3acb9a5748c4e7e351a2b46edd" + integrity sha512-NHysIgywLRB0C1OXY1YQPXsDRnozBWBREPTyeX72ARolkHMkj0IXY+nG36N1pxc2OToPkMHyhSQxaY4jmaM0VQ== + dependencies: + cron-parser "^4.6.0" + glob "^8.0.3" + ioredis "^5.3.0" + lodash "^4.17.21" + msgpackr "^1.6.2" + semver "^7.3.7" + tslib "^2.0.0" + uuid "^9.0.0" + cacheable-lookup@^5.0.3: version "5.0.3" resolved "https://registry.yarnpkg.com/cacheable-lookup/-/cacheable-lookup-5.0.3.tgz#049fdc59dffdd4fc285e8f4f82936591bd59fec3" @@ -853,6 +909,11 @@ clone@^1.0.2: resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.4.tgz#da309cc263df15994c688ca902179ca3c7cd7c7e" integrity sha1-2jCcwmPfFZlMaIypAheco8fNfH4= +cluster-key-slot@^1.1.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/cluster-key-slot/-/cluster-key-slot-1.1.2.tgz#88ddaa46906e303b5de30d3153b7d9fe0a0c19ac" + integrity sha512-RMr0FhtfXemyinomL4hrWcYJxmX6deFdCxpJzhDttxgO1+bcCnkk+9drydLVDmAMG7NE6aN/fl4F7ucU/90gAA== + color-convert@^1.9.0: version "1.9.3" resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" @@ -918,11 +979,11 @@ concat-stream@^2.0.0: typedarray "^0.0.6" config@^3.3.6: - version "3.3.6" - resolved "https://registry.yarnpkg.com/config/-/config-3.3.6.tgz#b87799db7399cc34988f55379b5f43465b1b065c" - integrity sha512-Hj5916C5HFawjYJat1epbyY2PlAgLpBtDUlr0MxGLgo3p5+7kylyvnRY18PqJHgnNWXcdd0eWDemT7eYWuFgwg== + version "3.3.9" + resolved "https://registry.yarnpkg.com/config/-/config-3.3.9.tgz#27fae95b43e0e1d5723e54143c090954d8e49572" + integrity sha512-G17nfe+cY7kR0wVpc49NCYvNtelm/pPy8czHoFkAgtV1lkmcp7DHtWCdDu+C9Z7gb2WVqa9Tm3uF9aKaPbCfhg== dependencies: - json5 "^2.1.1" + json5 "^2.2.3" config@^3.3.7: version "3.3.7" @@ -951,6 +1012,13 @@ core-util-is@~1.0.0: resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.3.tgz#a6042d3634c2b27e9328f837b965fac83808db85" integrity sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ== +cron-parser@^4.6.0: + version "4.8.1" + resolved "https://registry.yarnpkg.com/cron-parser/-/cron-parser-4.8.1.tgz#47062ea63d21d78c10ddedb08ea4c5b6fc2750fb" + integrity sha512-jbokKWGcyU4gl6jAfX97E1gDpY12DJ1cLJZmoDzaAln/shZ+S3KBFBuA2Q6WeUN4gJf/8klnV1EfvhA2lK5IRQ== + dependencies: + luxon "^3.2.1" + cross-spawn@^7.0.2: version "7.0.3" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" @@ -1025,7 +1093,7 @@ debug@2.6.9: dependencies: ms "2.0.0" -debug@4, debug@^4.1.0: +debug@4, debug@^4.1.0, debug@^4.3.4: version "4.3.4" resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== @@ -1104,6 +1172,11 @@ delegates@^1.0.0: resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" integrity sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ== +denque@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/denque/-/denque-2.1.0.tgz#e93e1a6569fb5e66f16a3c2a2964617d349d6ab1" + integrity sha512-HVQE3AAb/pxF8fQAoiqpvg9i3evqug3hoiwakOyZAwJm+6vZehbkYXZ0l4JxS+I3QxM97v5aaRNhj8v5oBhekw== + depd@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" @@ -1694,6 +1767,17 @@ glob@^7.1.6: once "^1.3.0" path-is-absolute "^1.0.0" +glob@^8.0.3: + version "8.1.0" + resolved "https://registry.yarnpkg.com/glob/-/glob-8.1.0.tgz#d388f656593ef708ee3e34640fdfb99a9fd1c33e" + integrity sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ== + dependencies: + fs.realpath "^1.0.0" + inflight "^1.0.4" + inherits "2" + minimatch "^5.0.1" + once "^1.3.0" + globals@^12.1.0: version "12.4.0" resolved "https://registry.yarnpkg.com/globals/-/globals-12.4.0.tgz#a18813576a41b00a24a97e7f815918c2e19925f8" @@ -1919,6 +2003,21 @@ inherits@2, inherits@2.0.4, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, i resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== +ioredis@^5.3.0: + version "5.3.1" + resolved "https://registry.yarnpkg.com/ioredis/-/ioredis-5.3.1.tgz#55d394a51258cee3af9e96c21c863b1a97bf951f" + integrity sha512-C+IBcMysM6v52pTLItYMeV4Hz7uriGtoJdz7SSBDX6u+zwSYGirLdQh3L7t/OItWITcw3gTFMjJReYUwS4zihg== + dependencies: + "@ioredis/commands" "^1.1.1" + cluster-key-slot "^1.1.0" + debug "^4.3.4" + denque "^2.1.0" + lodash.defaults "^4.2.0" + lodash.isarguments "^3.1.0" + redis-errors "^1.2.0" + redis-parser "^3.0.0" + standard-as-callback "^2.1.0" + ip-regex@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/ip-regex/-/ip-regex-2.1.0.tgz#fa78bf5d2e6913c911ce9f819ee5146bb6d844e9" @@ -2057,12 +2156,10 @@ json-stringify-safe@~5.0.1: resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" integrity sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus= -json5@^2.1.1: - version "2.1.3" - resolved "https://registry.yarnpkg.com/json5/-/json5-2.1.3.tgz#c9b0f7fa9233bfe5807fe66fcf3a5617ed597d43" - integrity sha512-KXPvOm8K9IJKFM0bmdn8QXh7udDh1g/giieX0NLCaMnb4hEiVFqnop2ImTXCc5e0/oHz3LTqmHGtExn5hfMkOA== - dependencies: - minimist "^1.2.5" +json5@^2.1.1, json5@^2.2.3: + version "2.2.3" + resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" + integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== jsonpath@^1.1.1: version "1.1.1" @@ -2165,11 +2262,21 @@ lodash.camelcase@^4.3.0: resolved "https://registry.yarnpkg.com/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz#b28aa6288a2b9fc651035c7711f65ab6190331a6" integrity sha1-soqmKIorn8ZRA1x3EfZathkDMaY= +lodash.defaults@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/lodash.defaults/-/lodash.defaults-4.2.0.tgz#d09178716ffea4dde9e5fb7b37f6f0802274580c" + integrity sha512-qjxPLHd3r5DnsdGacqOMU6pb/avJzdh9tFX2ymgoZE27BmjXrNy/y4LoaiTeAb+O3gL8AfpJGtqfX/ae2leYYQ== + lodash.get@4.4.2: version "4.4.2" resolved "https://registry.yarnpkg.com/lodash.get/-/lodash.get-4.4.2.tgz#2d177f652fa31e939b4438d5341499dfa3825e99" integrity sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk= +lodash.isarguments@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz#2f573d85c6a24289ff00663b491c1d338ff3458a" + integrity sha512-chi4NHZlZqZD18a0imDHnZPrDeBbTtVN7GXMwuGdRH9qotxAjYs3aVLKc7zNOG9eddR5Ksd8rvFEBc9SsggPpg== + lodash.isequal@^4.5.0: version "4.5.0" resolved "https://registry.yarnpkg.com/lodash.isequal/-/lodash.isequal-4.5.0.tgz#415c4478f2bcc30120c22ce10ed3226f7d3e18e0" @@ -2211,6 +2318,11 @@ lru-cache@^6.0.0: dependencies: yallist "^4.0.0" +luxon@^3.2.1: + version "3.3.0" + resolved "https://registry.yarnpkg.com/luxon/-/luxon-3.3.0.tgz#d73ab5b5d2b49a461c47cedbc7e73309b4805b48" + integrity sha512-An0UCfG/rSiqtAIiBPO0Y9/zAnHUZxAMiCpTd5h2smgsj7GGmcenvrvww2cqNA8/4A5ZrD1gJpHN2mIHZQF+Mg== + make-dir@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f" @@ -2289,11 +2401,23 @@ minimatch@^3.0.4, minimatch@^3.1.1: dependencies: brace-expansion "^1.1.7" -minimist@^1.1.0, minimist@^1.2.5: +minimatch@^5.0.1: + version "5.1.6" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-5.1.6.tgz#1cfcb8cf5522ea69952cd2af95ae09477f122a96" + integrity sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g== + dependencies: + brace-expansion "^2.0.1" + +minimist@^1.1.0: version "1.2.5" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== +minimist@^1.2.5: + version "1.2.8" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" + integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA== + minipass@^3.0.0: version "3.3.4" resolved "https://registry.yarnpkg.com/minipass/-/minipass-3.3.4.tgz#ca99f95dd77c43c7a76bf51e6d200025eee0ffae" @@ -2462,6 +2586,27 @@ ms@2.1.3, ms@^2.1.1, ms@^2.1.3: resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== +msgpackr-extract@^3.0.1: + version "3.0.2" + resolved "https://registry.yarnpkg.com/msgpackr-extract/-/msgpackr-extract-3.0.2.tgz#e05ec1bb4453ddf020551bcd5daaf0092a2c279d" + integrity sha512-SdzXp4kD/Qf8agZ9+iTu6eql0m3kWm1A2y1hkpTeVNENutaB0BwHlSvAIaMxwntmRUAUjon2V4L8Z/njd0Ct8A== + dependencies: + node-gyp-build-optional-packages "5.0.7" + optionalDependencies: + "@msgpackr-extract/msgpackr-extract-darwin-arm64" "3.0.2" + "@msgpackr-extract/msgpackr-extract-darwin-x64" "3.0.2" + "@msgpackr-extract/msgpackr-extract-linux-arm" "3.0.2" + "@msgpackr-extract/msgpackr-extract-linux-arm64" "3.0.2" + "@msgpackr-extract/msgpackr-extract-linux-x64" "3.0.2" + "@msgpackr-extract/msgpackr-extract-win32-x64" "3.0.2" + +msgpackr@^1.6.2: + version "1.8.5" + resolved "https://registry.yarnpkg.com/msgpackr/-/msgpackr-1.8.5.tgz#8cadfb935357680648f33699d0e833c9179dbfeb" + integrity sha512-mpPs3qqTug6ahbblkThoUY2DQdNXcm4IapwOS3Vm/87vmpzLVelvp9h3It1y9l1VPpiFLV11vfOXnmeEwiIXwg== + optionalDependencies: + msgpackr-extract "^3.0.1" + muri@1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/muri/-/muri-1.3.0.tgz#aeccf3db64c56aa7c5b34e00f95b7878527a4721" @@ -2499,6 +2644,11 @@ node-fetch@^2.6.7: dependencies: whatwg-url "^5.0.0" +node-gyp-build-optional-packages@5.0.7: + version "5.0.7" + resolved "https://registry.yarnpkg.com/node-gyp-build-optional-packages/-/node-gyp-build-optional-packages-5.0.7.tgz#5d2632bbde0ab2f6e22f1bbac2199b07244ae0b3" + integrity sha512-YlCCc6Wffkx0kHkmam79GKvDQ6x+QZkMjFGrIMxgFNILFvGSbCp2fCBC55pGTT9gVaz8Na5CLmxt/urtzRv36w== + nopt@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/nopt/-/nopt-5.0.0.tgz#530942bb58a512fccafe53fe210f13a25355dc88" @@ -2936,6 +3086,18 @@ real-require@^0.2.0: resolved "https://registry.yarnpkg.com/real-require/-/real-require-0.2.0.tgz#209632dea1810be2ae063a6ac084fee7e33fba78" integrity sha512-57frrGM/OCTLqLOAh0mhVA9VBMHd+9U7Zb2THMGdBUoZVOtGbJzjxsYGDJ3A9AYYCP4hn6y1TVbaOfzWtm5GFg== +redis-errors@^1.0.0, redis-errors@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/redis-errors/-/redis-errors-1.2.0.tgz#eb62d2adb15e4eaf4610c04afe1529384250abad" + integrity sha512-1qny3OExCf0UvUV/5wpYKf2YwPcOqXzkwKKSmKHiE6ZMQs5heeE/c8eXK+PNllPvmjgAbfnsbpkGZWy8cBpn9w== + +redis-parser@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/redis-parser/-/redis-parser-3.0.0.tgz#b66d828cdcafe6b4b8a428a7def4c6bcac31c8b4" + integrity sha512-DJnGAeenTdpMEH6uAJRK/uiyEIH9WVsUmoLwzudwGJUwZPp80PDBWPHXSAGNPwNvIXAbe7MSUB1zQFugFml66A== + dependencies: + redis-errors "^1.0.0" + regexp-clone@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/regexp-clone/-/regexp-clone-0.0.1.tgz#a7c2e09891fdbf38fbb10d376fb73003e68ac589" @@ -3128,7 +3290,7 @@ semver@^6.0.0, semver@^6.1.1: resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== -semver@^7.2.1, semver@^7.3.5, semver@^7.3.8: +semver@^7.2.1, semver@^7.3.5, semver@^7.3.7, semver@^7.3.8: version "7.3.8" resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.8.tgz#07a78feafb3f7b32347d725e33de7e2a2df67798" integrity sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A== @@ -3321,6 +3483,11 @@ stack-trace@~0.0.9: resolved "https://registry.yarnpkg.com/stack-trace/-/stack-trace-0.0.10.tgz#547c70b347e8d32b4e108ea1a2a159e5fdde19c0" integrity sha1-VHxws0fo0ytOEI6hoqFZ5f3eGcA= +standard-as-callback@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/standard-as-callback/-/standard-as-callback-2.1.0.tgz#8953fc05359868a77b5b9739a665c5977bb7df45" + integrity sha512-qoRRSyROncaz1z0mvYqIE4lCd9p2R90i6GxW3uZv5ucSu8tU7B5HXUP1gG8pVZsYNVaXjk8ClXHPttLyxAL48A== + static-eval@2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/static-eval/-/static-eval-2.0.2.tgz#2d1759306b1befa688938454c546b7871f806a42" @@ -3531,6 +3698,11 @@ tr46@~0.0.3: resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" integrity sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw== +tslib@^2.0.0: + version "2.5.0" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.5.0.tgz#42bfed86f5787aeb41d031866c8f402429e0fddf" + integrity sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg== + tunnel-agent@^0.6.0: version "0.6.0" resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" @@ -3619,6 +3791,11 @@ uuid@^8.3.2: resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg== +uuid@^9.0.0: + version "9.0.0" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-9.0.0.tgz#592f550650024a38ceb0c562f2f6aa435761efb5" + integrity sha512-MXcSTerfPa4uqyzStbRoTgt5XIe3x5+42+q1sDuy3R5MDk66URdLMOZe5aPX/SQd+kuYAh0FdP/pO28IkQyTeg== + v8-compile-cache@^2.0.3: version "2.1.0" resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.1.0.tgz#e14de37b31a6d194f5690d67efc4e7f6fc6ab30e" From dcccd6b0f262f6e02d6c152d10efa71656f3647d Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Wed, 22 Mar 2023 09:03:01 +0100 Subject: [PATCH 260/337] v3.0.0 --- packages/models/CHANGELOG.md | 8 +++++++- packages/models/package.json | 2 +- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/packages/models/CHANGELOG.md b/packages/models/CHANGELOG.md index 77efad09..419153e5 100644 --- a/packages/models/CHANGELOG.md +++ b/packages/models/CHANGELOG.md @@ -2,6 +2,12 @@ ## Unreleased +## v3.0.0 + +- Upgrade `restify` to v9.0.0 +- Add SPS30 sensors +- Remove old mailer and add Redis based queue system + ## v2.0.3 - Change handling `near` parameter (#694) @@ -21,7 +27,7 @@ - Added `sharedBoxes` functionality (#605) ## v1.3.1 -- Add SPS30 sensor +- Add SPS30 sensor - Update @sensebox/node-sketch-templater to v1.13.0 ## v1.2.0 diff --git a/packages/models/package.json b/packages/models/package.json index cc10d64a..9693811d 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -1,7 +1,7 @@ { "name": "@sensebox/opensensemap-api-models", "description": "openSenseMap data models and database connection", - "version": "2.0.3", + "version": "3.0.0", "main": "index.js", "license": "MIT", "dependencies": { From 960a1c937d17b621e1450775fe0ed69b196455fe Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Wed, 22 Mar 2023 09:13:57 +0100 Subject: [PATCH 261/337] Update opensensemap-api-models dependency --- packages/api/package.json | 2 +- yarn.lock | 100 +++++++++++++++++++++++++++++++++----- 2 files changed, 90 insertions(+), 12 deletions(-) diff --git a/packages/api/package.json b/packages/api/package.json index 1d1e8292..22c3ab83 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -12,7 +12,7 @@ "Felix Erdmann" ], "dependencies": { - "@sensebox/opensensemap-api-models": "2.0.3", + "@sensebox/opensensemap-api-models": "3.0.0", "@turf/area": "^6.3.0", "@turf/bbox": "^6.3.0", "@turf/centroid": "^6.3.0", diff --git a/yarn.lock b/yarn.lock index 463422a4..f294eac7 100644 --- a/yarn.lock +++ b/yarn.lock @@ -173,11 +173,40 @@ resolved "https://registry.yarnpkg.com/@sensebox/eslint-config-sensebox/-/eslint-config-sensebox-1.1.0.tgz#2fec4ec7945f34e7296c619fabd589d722ecd984" integrity sha512-MhwFHGmt7X/Wb/aISS/pJvBuO8HqpkVfB8GsUKOosWEfvug4cTN7N/pXBOxINukG34LcKDLp1xdyxuEo64CMSw== +"@sensebox/opensensemap-api-models@2.0.3": + version "2.0.3" + resolved "https://registry.yarnpkg.com/@sensebox/opensensemap-api-models/-/opensensemap-api-models-2.0.3.tgz#c0e5bdb273882bc9ab9f5e553840652bbd700830" + integrity sha512-VCf6+94t9hCNWhhXqHHHLE2f46g5UbNF373u78vsZ/c0RL2bKBOfxIfj4X9doffC4AprQHxPn4gI+64ecWcBKA== + dependencies: + "@grpc/grpc-js" "^1.3.7" + "@grpc/proto-loader" "^0.6.4" + "@sensebox/osem-protos" "^1.1.0" + "@sensebox/sketch-templater" "1.12.1" + bcrypt "^5.1.0" + bunyan "^1.8.15" + config "^3.3.6" + got "^11.8.2" + isemail "^3.0.0" + jsonpath "^1.1.1" + lodash.isequal "^4.5.0" + moment "^2.29.4" + mongoose "^4.13.21" + mongoose-timestamp "^0.6" + uuid "^8.3.2" + "@sensebox/osem-protos@^1.1.0": version "1.1.0" resolved "https://registry.yarnpkg.com/@sensebox/osem-protos/-/osem-protos-1.1.0.tgz#a7de8bc6be867953f1309181a012063c23299e79" integrity sha512-H+nUVcWlT0dvIqfJnYHuX9JBcCkP1ZKGE5YTRNWPbAEdZ11h+srpQsmeI58wK5hJcdukaZAjc4Dy96IeGM77aA== +"@sensebox/sketch-templater@1.12.1": + version "1.12.1" + resolved "https://registry.yarnpkg.com/@sensebox/sketch-templater/-/sketch-templater-1.12.1.tgz#4640fc22d5ae652d00b9ab7c590488bf25da2cee" + integrity sha512-LtHyUPsZSFTDIqzSce8Rgh25CRhZkj2NIVjNUrMFeB7WgoNwYJuq+aYr1QDGaL0AkREKL3JsUi+O4rjji3Uw3w== + dependencies: + config "^3.3.7" + dedent "^0.7.0" + "@sensebox/sketch-templater@1.13.0": version "1.13.0" resolved "https://registry.yarnpkg.com/@sensebox/sketch-templater/-/sketch-templater-1.13.0.tgz#f2af96a67014cb6e7fe1d1f9e48aad433a98e2b2" @@ -724,6 +753,16 @@ bullmq@^3.10.1: tslib "^2.0.0" uuid "^9.0.0" +bunyan@^1.8.15: + version "1.8.15" + resolved "https://registry.yarnpkg.com/bunyan/-/bunyan-1.8.15.tgz#8ce34ca908a17d0776576ca1b2f6cbd916e93b46" + integrity sha512-0tECWShh6wUysgucJcBAoYegf3JJoZWibxdqhTm7OHPeT42qdjkZ29QCMcKwbgU1kiH+auSIasNRXMLWXafXig== + optionalDependencies: + dtrace-provider "~0.8" + moment "^2.19.3" + mv "~2" + safe-json-stringify "~1" + cacheable-lookup@^5.0.3: version "5.0.3" resolved "https://registry.yarnpkg.com/cacheable-lookup/-/cacheable-lookup-5.0.3.tgz#049fdc59dffdd4fc285e8f4f82936591bd59fec3" @@ -1244,7 +1283,7 @@ domutils@^2.5.1, domutils@^2.5.2: domelementtype "^2.2.0" domhandler "^4.1.0" -dtrace-provider@^0.8.1: +dtrace-provider@^0.8.1, dtrace-provider@~0.8: version "0.8.8" resolved "https://registry.yarnpkg.com/dtrace-provider/-/dtrace-provider-0.8.8.tgz#2996d5490c37e1347be263b423ed7b297fb0d97e" integrity sha512-b7Z7cNtHPhH9EJhNNbbeqTcXB8LGFFZhq1PGgEvpeHlzd36bhbdTWoE/Ba/YguqpBSlAPKnARWhVlhunCMwfxg== @@ -1743,6 +1782,17 @@ glob@7.1.6: once "^1.3.0" path-is-absolute "^1.0.0" +glob@^6.0.1: + version "6.0.4" + resolved "https://registry.yarnpkg.com/glob/-/glob-6.0.4.tgz#0f08860f6a155127b2fadd4f9ce24b1aab6e4d22" + integrity sha512-MKZeRNyYZAVVVG1oZeLaWie1uweH40m9AZwIwxyPbTSX4hHrVYSzLg0Ro5Z5R7XKkIX+Cc6oD1rqeDJnwsB8/A== + dependencies: + inflight "^1.0.4" + inherits "2" + minimatch "2 || 3" + once "^1.3.0" + path-is-absolute "^1.0.0" + glob@^7.1.3: version "7.2.3" resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" @@ -2387,6 +2437,13 @@ minimalistic-assert@^1.0.0: resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7" integrity sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A== +"minimatch@2 || 3", minimatch@^3.0.4, minimatch@^3.1.1: + version "3.1.2" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" + integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== + dependencies: + brace-expansion "^1.1.7" + minimatch@3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" @@ -2394,13 +2451,6 @@ minimatch@3.0.4: dependencies: brace-expansion "^1.1.7" -minimatch@^3.0.4, minimatch@^3.1.1: - version "3.1.2" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" - integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== - dependencies: - brace-expansion "^1.1.7" - minimatch@^5.0.1: version "5.1.6" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-5.1.6.tgz#1cfcb8cf5522ea69952cd2af95ae09477f122a96" @@ -2413,7 +2463,7 @@ minimist@^1.1.0: resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== -minimist@^1.2.5: +minimist@^1.2.5, minimist@^1.2.6: version "1.2.8" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA== @@ -2443,6 +2493,13 @@ mkdirp@^1.0.3: resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== +mkdirp@~0.5.1: + version "0.5.6" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.6.tgz#7def03d2432dcae4ba1d611445c48396062255f6" + integrity sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw== + dependencies: + minimist "^1.2.6" + mocha@^8.3.2: version "8.3.2" resolved "https://registry.yarnpkg.com/mocha/-/mocha-8.3.2.tgz#53406f195fa86fbdebe71f8b1c6fb23221d69fcc" @@ -2474,7 +2531,7 @@ mocha@^8.3.2: yargs-parser "20.2.4" yargs-unparser "2.0.0" -moment@^2.29.4: +moment@^2.19.3, moment@^2.29.4: version "2.29.4" resolved "https://registry.yarnpkg.com/moment/-/moment-2.29.4.tgz#3dbe052889fe7c1b2ed966fcb3a77328964ef108" integrity sha512-5LC9SOxjSc2HF6vO2CyuTDNivEdoz2IvyJJGj6X8DJ0eFyfszE0QiEd+iXmBvUP3WHxSjFH/vIsA0EN00cgr8w== @@ -2612,6 +2669,15 @@ muri@1.3.0: resolved "https://registry.yarnpkg.com/muri/-/muri-1.3.0.tgz#aeccf3db64c56aa7c5b34e00f95b7878527a4721" integrity sha512-FiaFwKl864onHFFUV/a2szAl7X0fxVlSKNdhTf+BM8i8goEgYut8u5P9MqQqIYwvaMxjzVESsoEm/2kfkFH1rg== +mv@~2: + version "2.1.1" + resolved "https://registry.yarnpkg.com/mv/-/mv-2.1.1.tgz#ae6ce0d6f6d5e0a4f7d893798d03c1ea9559b6a2" + integrity sha512-at/ZndSy3xEGJ8i0ygALh8ru9qy7gWW1cmkaqBN29JmMlIvM//MEO9y1sk/avxuwnPcfhkejkLsuPxH81BrkSg== + dependencies: + mkdirp "~0.5.1" + ncp "~2.0.0" + rimraf "~2.4.0" + nan@^2.14.0: version "2.14.1" resolved "https://registry.yarnpkg.com/nan/-/nan-2.14.1.tgz#d7be34dfa3105b91494c3147089315eff8874b01" @@ -2627,6 +2693,11 @@ natural-compare@^1.4.0: resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc= +ncp@~2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/ncp/-/ncp-2.0.0.tgz#195a21d6c46e361d2fb1281ba38b91e9df7bdbb3" + integrity sha512-zIdGUrPRFTUELUvr3Gmc7KZ2Sw/h1PiVM0Af/oHB6zgnV1ikqSfRk+TOufi79aHYCW3NiOXmr1BP5nWbzojLaA== + negotiator@^0.6.2: version "0.6.3" resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.3.tgz#58e323a72fedc0d6f9cd4d31fe49f51479590ccd" @@ -3238,6 +3309,13 @@ rimraf@^3.0.2: dependencies: glob "^7.1.3" +rimraf@~2.4.0: + version "2.4.5" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.4.5.tgz#ee710ce5d93a8fdb856fb5ea8ff0e2d75934b2da" + integrity sha512-J5xnxTyqaiw06JjMftq7L9ouA448dw/E7dKghkP9WpKNuwmARNNg+Gk8/u5ryb9N/Yo2+z3MCwuqFK/+qPOPfQ== + dependencies: + glob "^6.0.1" + safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.2, safe-buffer@^5.2.1, safe-buffer@~5.2.0: version "5.2.1" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" @@ -3248,7 +3326,7 @@ safe-buffer@~5.1.0, safe-buffer@~5.1.1: resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== -safe-json-stringify@^1.0.4: +safe-json-stringify@^1.0.4, safe-json-stringify@~1: version "1.2.0" resolved "https://registry.yarnpkg.com/safe-json-stringify/-/safe-json-stringify-1.2.0.tgz#356e44bc98f1f93ce45df14bcd7c01cda86e0afd" integrity sha512-gH8eh2nZudPQO6TytOvbxnuhYBOvDBBLW52tz5q6X58lJcd/tkmqFR+5Z9adS8aJtURSXWThWy/xJtJwixErvg== From 63dd8926be7f264db3038c1cb262228b449a7c67 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Wed, 22 Mar 2023 09:20:10 +0100 Subject: [PATCH 262/337] Update changelog and release v11.0.0 --- CHANGELOG.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index aa40d0d7..daadf09d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,12 @@ # openSenseMap API Changelog +## v11.0.0 + +- Use @sensebox/opensensemap-api-models v3.0.0 +- Update Github Action dependencies +- Update restify +- Update Readme information + ## v10.2.3 - Use @sensebox/opensensemap-api-models v2.0.3 From cabb6b5cbd5533a761f6c56e418fef7379f06a8b Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Thu, 13 Apr 2023 14:04:54 +0200 Subject: [PATCH 263/337] Update Sketch Templater (#738) * Update sketch templater to latest release fixing the sketch compilation --- packages/models/package.json | 2 +- yarn.lock | 114 +++++++---------------------------- 2 files changed, 22 insertions(+), 94 deletions(-) diff --git a/packages/models/package.json b/packages/models/package.json index 9693811d..e74f88d2 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -8,7 +8,7 @@ "@grpc/grpc-js": "^1.3.7", "@grpc/proto-loader": "^0.6.4", "@sensebox/osem-protos": "^1.1.0", - "@sensebox/sketch-templater": "1.13.0", + "@sensebox/sketch-templater": "1.13.1", "bcrypt": "^5.1.0", "bullmq": "^3.10.1", "config": "^3.3.6", diff --git a/yarn.lock b/yarn.lock index f294eac7..b6592c8e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -173,47 +173,19 @@ resolved "https://registry.yarnpkg.com/@sensebox/eslint-config-sensebox/-/eslint-config-sensebox-1.1.0.tgz#2fec4ec7945f34e7296c619fabd589d722ecd984" integrity sha512-MhwFHGmt7X/Wb/aISS/pJvBuO8HqpkVfB8GsUKOosWEfvug4cTN7N/pXBOxINukG34LcKDLp1xdyxuEo64CMSw== -"@sensebox/opensensemap-api-models@2.0.3": - version "2.0.3" - resolved "https://registry.yarnpkg.com/@sensebox/opensensemap-api-models/-/opensensemap-api-models-2.0.3.tgz#c0e5bdb273882bc9ab9f5e553840652bbd700830" - integrity sha512-VCf6+94t9hCNWhhXqHHHLE2f46g5UbNF373u78vsZ/c0RL2bKBOfxIfj4X9doffC4AprQHxPn4gI+64ecWcBKA== - dependencies: - "@grpc/grpc-js" "^1.3.7" - "@grpc/proto-loader" "^0.6.4" - "@sensebox/osem-protos" "^1.1.0" - "@sensebox/sketch-templater" "1.12.1" - bcrypt "^5.1.0" - bunyan "^1.8.15" - config "^3.3.6" - got "^11.8.2" - isemail "^3.0.0" - jsonpath "^1.1.1" - lodash.isequal "^4.5.0" - moment "^2.29.4" - mongoose "^4.13.21" - mongoose-timestamp "^0.6" - uuid "^8.3.2" - "@sensebox/osem-protos@^1.1.0": version "1.1.0" resolved "https://registry.yarnpkg.com/@sensebox/osem-protos/-/osem-protos-1.1.0.tgz#a7de8bc6be867953f1309181a012063c23299e79" integrity sha512-H+nUVcWlT0dvIqfJnYHuX9JBcCkP1ZKGE5YTRNWPbAEdZ11h+srpQsmeI58wK5hJcdukaZAjc4Dy96IeGM77aA== -"@sensebox/sketch-templater@1.12.1": - version "1.12.1" - resolved "https://registry.yarnpkg.com/@sensebox/sketch-templater/-/sketch-templater-1.12.1.tgz#4640fc22d5ae652d00b9ab7c590488bf25da2cee" - integrity sha512-LtHyUPsZSFTDIqzSce8Rgh25CRhZkj2NIVjNUrMFeB7WgoNwYJuq+aYr1QDGaL0AkREKL3JsUi+O4rjji3Uw3w== - dependencies: - config "^3.3.7" - dedent "^0.7.0" - -"@sensebox/sketch-templater@1.13.0": - version "1.13.0" - resolved "https://registry.yarnpkg.com/@sensebox/sketch-templater/-/sketch-templater-1.13.0.tgz#f2af96a67014cb6e7fe1d1f9e48aad433a98e2b2" - integrity sha512-8ZYvXlhrTiVXpD5tuf8nhYCk8iR/uxI5fiYQO9e3mR20aHiVIVlsEI4QysGhVxAsOsgntHD5IOOikpY7XaC2Ig== +"@sensebox/sketch-templater@1.13.1": + version "1.13.1" + resolved "https://registry.yarnpkg.com/@sensebox/sketch-templater/-/sketch-templater-1.13.1.tgz#ecfe6201e7d584d7cd5f6e9a3bc4ea62d3889afe" + integrity sha512-zlwKd/usPPMyE5uyD7ngAN/BIpMTjVrQ9SKdWrdANjdW19vsr3IXFv7liHvSh2od1ipPt+JgIENMJAMCJJG4sA== dependencies: config "^3.3.7" dedent "^0.7.0" + eol "^0.9.1" "@sindresorhus/is@^4.0.0": version "4.0.0" @@ -753,16 +725,6 @@ bullmq@^3.10.1: tslib "^2.0.0" uuid "^9.0.0" -bunyan@^1.8.15: - version "1.8.15" - resolved "https://registry.yarnpkg.com/bunyan/-/bunyan-1.8.15.tgz#8ce34ca908a17d0776576ca1b2f6cbd916e93b46" - integrity sha512-0tECWShh6wUysgucJcBAoYegf3JJoZWibxdqhTm7OHPeT42qdjkZ29QCMcKwbgU1kiH+auSIasNRXMLWXafXig== - optionalDependencies: - dtrace-provider "~0.8" - moment "^2.19.3" - mv "~2" - safe-json-stringify "~1" - cacheable-lookup@^5.0.3: version "5.0.3" resolved "https://registry.yarnpkg.com/cacheable-lookup/-/cacheable-lookup-5.0.3.tgz#049fdc59dffdd4fc285e8f4f82936591bd59fec3" @@ -1283,7 +1245,7 @@ domutils@^2.5.1, domutils@^2.5.2: domelementtype "^2.2.0" domhandler "^4.1.0" -dtrace-provider@^0.8.1, dtrace-provider@~0.8: +dtrace-provider@^0.8.1: version "0.8.8" resolved "https://registry.yarnpkg.com/dtrace-provider/-/dtrace-provider-0.8.8.tgz#2996d5490c37e1347be263b423ed7b297fb0d97e" integrity sha512-b7Z7cNtHPhH9EJhNNbbeqTcXB8LGFFZhq1PGgEvpeHlzd36bhbdTWoE/Ba/YguqpBSlAPKnARWhVlhunCMwfxg== @@ -1356,6 +1318,11 @@ entities@^2.0.0: resolved "https://registry.yarnpkg.com/entities/-/entities-2.1.0.tgz#992d3129cf7df6870b96c57858c249a120f8b8b5" integrity sha512-hCx1oky9PFrJ611mf0ifBLBRW8lUUVRlFolb5gWRfIELabBlbp9xZvrqZLZAs+NxFnbfQoeGd8wDkygjg7U85w== +eol@^0.9.1: + version "0.9.1" + resolved "https://registry.yarnpkg.com/eol/-/eol-0.9.1.tgz#f701912f504074be35c6117a5c4ade49cd547acd" + integrity sha512-Ds/TEoZjwggRoz/Q2O7SE3i4Jm66mqTDfmdHdq/7DKVk3bro9Q8h6WdXKdPqFLMoqxrDK5SVRzHVPOS6uuGtrg== + es6-promise@3.2.1: version "3.2.1" resolved "https://registry.yarnpkg.com/es6-promise/-/es6-promise-3.2.1.tgz#ec56233868032909207170c39448e24449dd1fc4" @@ -1782,17 +1749,6 @@ glob@7.1.6: once "^1.3.0" path-is-absolute "^1.0.0" -glob@^6.0.1: - version "6.0.4" - resolved "https://registry.yarnpkg.com/glob/-/glob-6.0.4.tgz#0f08860f6a155127b2fadd4f9ce24b1aab6e4d22" - integrity sha512-MKZeRNyYZAVVVG1oZeLaWie1uweH40m9AZwIwxyPbTSX4hHrVYSzLg0Ro5Z5R7XKkIX+Cc6oD1rqeDJnwsB8/A== - dependencies: - inflight "^1.0.4" - inherits "2" - minimatch "2 || 3" - once "^1.3.0" - path-is-absolute "^1.0.0" - glob@^7.1.3: version "7.2.3" resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" @@ -2437,13 +2393,6 @@ minimalistic-assert@^1.0.0: resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7" integrity sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A== -"minimatch@2 || 3", minimatch@^3.0.4, minimatch@^3.1.1: - version "3.1.2" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" - integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== - dependencies: - brace-expansion "^1.1.7" - minimatch@3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" @@ -2451,6 +2400,13 @@ minimatch@3.0.4: dependencies: brace-expansion "^1.1.7" +minimatch@^3.0.4, minimatch@^3.1.1: + version "3.1.2" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" + integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== + dependencies: + brace-expansion "^1.1.7" + minimatch@^5.0.1: version "5.1.6" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-5.1.6.tgz#1cfcb8cf5522ea69952cd2af95ae09477f122a96" @@ -2463,7 +2419,7 @@ minimist@^1.1.0: resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== -minimist@^1.2.5, minimist@^1.2.6: +minimist@^1.2.5: version "1.2.8" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA== @@ -2493,13 +2449,6 @@ mkdirp@^1.0.3: resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== -mkdirp@~0.5.1: - version "0.5.6" - resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.6.tgz#7def03d2432dcae4ba1d611445c48396062255f6" - integrity sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw== - dependencies: - minimist "^1.2.6" - mocha@^8.3.2: version "8.3.2" resolved "https://registry.yarnpkg.com/mocha/-/mocha-8.3.2.tgz#53406f195fa86fbdebe71f8b1c6fb23221d69fcc" @@ -2531,7 +2480,7 @@ mocha@^8.3.2: yargs-parser "20.2.4" yargs-unparser "2.0.0" -moment@^2.19.3, moment@^2.29.4: +moment@^2.29.4: version "2.29.4" resolved "https://registry.yarnpkg.com/moment/-/moment-2.29.4.tgz#3dbe052889fe7c1b2ed966fcb3a77328964ef108" integrity sha512-5LC9SOxjSc2HF6vO2CyuTDNivEdoz2IvyJJGj6X8DJ0eFyfszE0QiEd+iXmBvUP3WHxSjFH/vIsA0EN00cgr8w== @@ -2669,15 +2618,6 @@ muri@1.3.0: resolved "https://registry.yarnpkg.com/muri/-/muri-1.3.0.tgz#aeccf3db64c56aa7c5b34e00f95b7878527a4721" integrity sha512-FiaFwKl864onHFFUV/a2szAl7X0fxVlSKNdhTf+BM8i8goEgYut8u5P9MqQqIYwvaMxjzVESsoEm/2kfkFH1rg== -mv@~2: - version "2.1.1" - resolved "https://registry.yarnpkg.com/mv/-/mv-2.1.1.tgz#ae6ce0d6f6d5e0a4f7d893798d03c1ea9559b6a2" - integrity sha512-at/ZndSy3xEGJ8i0ygALh8ru9qy7gWW1cmkaqBN29JmMlIvM//MEO9y1sk/avxuwnPcfhkejkLsuPxH81BrkSg== - dependencies: - mkdirp "~0.5.1" - ncp "~2.0.0" - rimraf "~2.4.0" - nan@^2.14.0: version "2.14.1" resolved "https://registry.yarnpkg.com/nan/-/nan-2.14.1.tgz#d7be34dfa3105b91494c3147089315eff8874b01" @@ -2693,11 +2633,6 @@ natural-compare@^1.4.0: resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc= -ncp@~2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/ncp/-/ncp-2.0.0.tgz#195a21d6c46e361d2fb1281ba38b91e9df7bdbb3" - integrity sha512-zIdGUrPRFTUELUvr3Gmc7KZ2Sw/h1PiVM0Af/oHB6zgnV1ikqSfRk+TOufi79aHYCW3NiOXmr1BP5nWbzojLaA== - negotiator@^0.6.2: version "0.6.3" resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.3.tgz#58e323a72fedc0d6f9cd4d31fe49f51479590ccd" @@ -3309,13 +3244,6 @@ rimraf@^3.0.2: dependencies: glob "^7.1.3" -rimraf@~2.4.0: - version "2.4.5" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.4.5.tgz#ee710ce5d93a8fdb856fb5ea8ff0e2d75934b2da" - integrity sha512-J5xnxTyqaiw06JjMftq7L9ouA448dw/E7dKghkP9WpKNuwmARNNg+Gk8/u5ryb9N/Yo2+z3MCwuqFK/+qPOPfQ== - dependencies: - glob "^6.0.1" - safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.2, safe-buffer@^5.2.1, safe-buffer@~5.2.0: version "5.2.1" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" @@ -3326,7 +3254,7 @@ safe-buffer@~5.1.0, safe-buffer@~5.1.1: resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== -safe-json-stringify@^1.0.4, safe-json-stringify@~1: +safe-json-stringify@^1.0.4: version "1.2.0" resolved "https://registry.yarnpkg.com/safe-json-stringify/-/safe-json-stringify-1.2.0.tgz#356e44bc98f1f93ce45df14bcd7c01cda86e0afd" integrity sha512-gH8eh2nZudPQO6TytOvbxnuhYBOvDBBLW52tz5q6X58lJcd/tkmqFR+5Z9adS8aJtURSXWThWy/xJtJwixErvg== From 0ab54aef3b465d6bcccc3a62f5b5bc36972eda37 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Mon, 17 Apr 2023 10:01:01 +0200 Subject: [PATCH 264/337] v3.0.1 --- packages/models/CHANGELOG.md | 4 ++++ packages/models/package.json | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/packages/models/CHANGELOG.md b/packages/models/CHANGELOG.md index 419153e5..c44c60ad 100644 --- a/packages/models/CHANGELOG.md +++ b/packages/models/CHANGELOG.md @@ -2,6 +2,10 @@ ## Unreleased +## v3.0.1 + +- Update `@sensebox/sketch-templater` to fix compiling bug + ## v3.0.0 - Upgrade `restify` to v9.0.0 diff --git a/packages/models/package.json b/packages/models/package.json index e74f88d2..eab1cd9d 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -1,7 +1,7 @@ { "name": "@sensebox/opensensemap-api-models", "description": "openSenseMap data models and database connection", - "version": "3.0.0", + "version": "3.0.1", "main": "index.js", "license": "MIT", "dependencies": { From 76b1602e533b33e7a31b474e7f5d73310450e983 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Mon, 17 Apr 2023 10:10:26 +0200 Subject: [PATCH 265/337] Update sketch-templater dependency --- packages/api/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/api/package.json b/packages/api/package.json index 22c3ab83..f530cb76 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -12,7 +12,7 @@ "Felix Erdmann" ], "dependencies": { - "@sensebox/opensensemap-api-models": "3.0.0", + "@sensebox/opensensemap-api-models": "3.0.1", "@turf/area": "^6.3.0", "@turf/bbox": "^6.3.0", "@turf/centroid": "^6.3.0", From 2e645bdc4c80e668720b5eaaf384a35d2909569e Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Mon, 17 Apr 2023 10:12:18 +0200 Subject: [PATCH 266/337] Update CHANGELOG and release v11.0.1 --- CHANGELOG.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index daadf09d..3be6d010 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ # openSenseMap API Changelog +## v11.0.1 + +- Use @sensebox/opensensemap-api-models v3.0.1 + ## v11.0.0 - Use @sensebox/opensensemap-api-models v3.0.0 From e43f71c52c676a8a62c9951a7f1410d0941585ec Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 3 Jul 2023 15:30:40 +0200 Subject: [PATCH 267/337] Bump docker/login-action from 2.1.0 to 2.2.0 (#753) Bumps [docker/login-action](https://github.com/docker/login-action) from 2.1.0 to 2.2.0. - [Release notes](https://github.com/docker/login-action/releases) - [Commits](https://github.com/docker/login-action/compare/v2.1.0...v2.2.0) --- updated-dependencies: - dependency-name: docker/login-action dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/registry.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/registry.yaml b/.github/workflows/registry.yaml index 5a58d96f..c263c19a 100644 --- a/.github/workflows/registry.yaml +++ b/.github/workflows/registry.yaml @@ -24,7 +24,7 @@ jobs: uses: actions/checkout@v3 - name: Log in to the Container registry - uses: docker/login-action@v2.1.0 + uses: docker/login-action@v2.2.0 with: registry: ${{ env.REGISTRY }} username: ${{ github.actor }} From a66f33d8832c1b81c49345f6de3498f3fd89854e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 3 Jul 2023 15:35:59 +0200 Subject: [PATCH 268/337] Bump docker/build-push-action from 4.0.0 to 4.1.1 (#759) Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 4.0.0 to 4.1.1. - [Release notes](https://github.com/docker/build-push-action/releases) - [Commits](https://github.com/docker/build-push-action/compare/v4.0.0...v4.1.1) --- updated-dependencies: - dependency-name: docker/build-push-action dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Matthias Pfeil --- .github/workflows/registry.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/registry.yaml b/.github/workflows/registry.yaml index c263c19a..d19ac8a4 100644 --- a/.github/workflows/registry.yaml +++ b/.github/workflows/registry.yaml @@ -41,7 +41,7 @@ jobs: suffix= - name: Build and push Docker image - uses: docker/build-push-action@v4.0.0 + uses: docker/build-push-action@v4.1.1 with: context: . push: true From 50741764f82f7a6ed58150cc191ef8891a1beb5c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 3 Jul 2023 15:45:21 +0200 Subject: [PATCH 269/337] Bump docker/metadata-action from 4.3.0 to 4.6.0 (#760) Bumps [docker/metadata-action](https://github.com/docker/metadata-action) from 4.3.0 to 4.6.0. - [Release notes](https://github.com/docker/metadata-action/releases) - [Commits](https://github.com/docker/metadata-action/compare/v4.3.0...v4.6.0) --- updated-dependencies: - dependency-name: docker/metadata-action dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Matthias Pfeil --- .github/workflows/registry.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/registry.yaml b/.github/workflows/registry.yaml index d19ac8a4..6dff3038 100644 --- a/.github/workflows/registry.yaml +++ b/.github/workflows/registry.yaml @@ -32,7 +32,7 @@ jobs: - name: Extract metadata (tags, labels) for Docker id: meta - uses: docker/metadata-action@v4.3.0 + uses: docker/metadata-action@v4.6.0 with: images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} flavor: | From d14bbdd1865634168ebb5eb1423701f86823acad Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Tue, 4 Jul 2023 14:06:14 +0200 Subject: [PATCH 270/337] Simple pagination for embedded boxes on user object (#762) * Add simple pagination for embedded boxes on user object * add boxes count to response * Add endpoint to retireve single box of a logged in user * Fix typoes in tests --- .scripts/run-tests.sh | 2 +- .../api/lib/controllers/usersController.js | 43 ++++- packages/api/lib/routes.js | 1 + packages/models/src/user/user.js | 19 +- tests/data/getUserBoxSchema.js | 177 ++++++++++++++++++ tests/tests/005-create-boxes-test.js | 67 +++++++ 6 files changed, 303 insertions(+), 6 deletions(-) create mode 100644 tests/data/getUserBoxSchema.js diff --git a/.scripts/run-tests.sh b/.scripts/run-tests.sh index 274e6677..33255464 100755 --- a/.scripts/run-tests.sh +++ b/.scripts/run-tests.sh @@ -22,7 +22,7 @@ only_models_tests=${only_models_tests:-} git_branch=$(git rev-parse --abbrev-ref HEAD) function runComposeCommand() { - sudo docker-compose -p osemapitest -f ./tests/docker-compose.yml "$@" + docker-compose -p osemapitest -f ./tests/docker-compose.yml "$@" } function cleanup() { diff --git a/packages/api/lib/controllers/usersController.js b/packages/api/lib/controllers/usersController.js index 09242962..effaf51c 100644 --- a/packages/api/lib/controllers/usersController.js +++ b/packages/api/lib/controllers/usersController.js @@ -247,16 +247,42 @@ const confirmEmailAddress = async function confirmEmailAddress (req, res) { * @apiName getUserBoxes * @apiDescription List all boxes and sharedBoxes of the signed in user with secret fields * @apiGroup Users + * @apiParam {Integer} page the selected page for pagination * @apiSuccess {String} code `Ok` * @apiSuccess {String} data A json object with a single `boxes` array field */ const getUserBoxes = async function getUserBoxes (req, res) { + const { page } = req._userParams; try { - const boxes = await req.user.getBoxes(); + const boxes = await req.user.getBoxes(page); const sharedBoxes = await req.user.getSharedBoxes(); res.send(200, { code: 'Ok', - data: { boxes: boxes, sharedBoxes: sharedBoxes }, + data: { boxes: boxes, boxes_count: req.user.boxes.length, sharedBoxes: sharedBoxes }, + }); + } catch (err) { + return handleError(err); + } +}; + +/** + * @api {get} /users/me/boxes/:boxId get specific box of the signed in user + * @apiName getUserBox + * @apiDescription Get specific box of the signed in user with secret fields + * @apiGroup Users + * @apiParam {Integer} page the selected page for pagination + * @apiSuccess {String} code `Ok` + * @apiSuccess {String} data A json object with a single `box` object field + */ +const getUserBox = async function getUserBox (req, res) { + const { boxId } = req._userParams; + try { + const box = await req.user.getBox(boxId); + res.send(200, { + code: 'Ok', + data: { + box + }, }); } catch (err) { return handleError(err); @@ -410,7 +436,18 @@ module.exports = { confirmEmailAddress, ], requestEmailConfirmation, - getUserBoxes, + getUserBox: [ + retrieveParameters([ + { predef: 'boxId', required: true } + ]), + getUserBox, + ], + getUserBoxes: [ + retrieveParameters([ + { name: 'page', dataType: 'Integer', defaultValue: 0, min: 0 }, + ]), + getUserBoxes, + ], updateUser: [ checkContentType, retrieveParameters([ diff --git a/packages/api/lib/routes.js b/packages/api/lib/routes.js index 48d6cdd2..d14152d4 100644 --- a/packages/api/lib/routes.js +++ b/packages/api/lib/routes.js @@ -98,6 +98,7 @@ const routes = { { path: `${usersPath}/me`, method: 'get', handler: usersController.getUser, reference: 'api-Users-getUser' }, { path: `${usersPath}/me`, method: 'put', handler: usersController.updateUser, reference: 'api-Users-updateUser' }, { path: `${usersPath}/me/boxes`, method: 'get', handler: usersController.getUserBoxes, reference: 'api-Users-getUserBoxes' }, + { path: `${usersPath}/me/boxes/:boxId`, method: 'get', handler: usersController.getUserBox, reference: 'api-Users-getUserBox' }, { path: `${boxesPath}/:boxId/script`, method: 'get', handler: boxesController.getSketch, reference: 'api-Boxes-getSketch' }, { path: `${boxesPath}`, method: 'post', handler: boxesController.postNewBox, reference: 'api-Boxes-postNewBox' }, { path: `${boxesPath}/claim`, method: 'post', handler: boxesController.claimBox, reference: 'api-Boxes-claimBox' }, diff --git a/packages/models/src/user/user.js b/packages/models/src/user/user.js index 046e5bf8..19423ee4 100644 --- a/packages/models/src/user/user.js +++ b/packages/models/src/user/user.js @@ -549,19 +549,34 @@ userSchema.methods.updateUser = function updateUser ({ email, language, name, cu }); }; -userSchema.methods.getBoxes = function getBoxes () { +userSchema.methods.getBoxes = function getBoxes (page) { return Box.find({ _id: { $in: this.boxes } }) + .limit(25) + .skip(page * 25) .populate(Box.BOX_SUB_PROPS_FOR_POPULATION) .then(function (boxes) { return boxes.map(b => b.toJSON({ includeSecrets: true })); }); }; +userSchema.methods.getBox = function getBox (boxId) { + const user = this; + + // checkBoxOwner throws ModelError + user.checkBoxOwner(boxId); + + return Box.findOne({ _id: boxId }) + .populate(Box.BOX_SUB_PROPS_FOR_POPULATION) + .then(function (box) { + return box.toJSON({ includeSecrets: true }); + }); +}; + userSchema.methods.getSharedBoxes = function getSharedBoxes () { return Box.find({ _id: { $in: this.sharedBoxes } }) .populate(Box.BOX_SUB_PROPS_FOR_POPULATION) .then(function (boxes) { - return boxes.map(b => b.toJSON({ includeSecrets: true })); + return boxes.map((b) => b.toJSON({ includeSecrets: true })); }); }; diff --git a/tests/data/getUserBoxSchema.js b/tests/data/getUserBoxSchema.js new file mode 100644 index 00000000..30c1b864 --- /dev/null +++ b/tests/data/getUserBoxSchema.js @@ -0,0 +1,177 @@ +'use strict'; + +module.exports = { + $schema: 'http://json-schema.org/draft-04/schema#', + type: 'object', + properties: { + code: { + type: 'string', + }, + data: { + type: 'object', + properties: { + box: { + type: 'object', + properties: { + createdAt: { + type: 'string', + }, + exposure: { + type: 'string', + }, + model: { + type: 'string', + }, + name: { + type: 'string', + }, + updatedAt: { + type: 'string', + }, + useAuth: { + type: 'boolean', + }, + access_token: { + type: 'string', + }, + currentLocation: { + type: 'object', + properties: { + coordinates: { + type: 'array', + items: { type: 'number' }, + }, + timestamp: { type: 'string' }, + type: { type: 'string' }, + }, + required: ['coordinates', 'timestamp', 'type'], + }, + loc: { + type: 'array', + items: { + type: 'object', + properties: { + geometry: { + type: 'object', + properties: { + coordinates: { + type: 'array', + items: { + type: 'number', + }, + }, + type: { + type: 'string', + }, + }, + required: ['coordinates', 'type'], + }, + type: { + type: 'string', + }, + }, + required: ['geometry', 'type'], + }, + }, + sensors: { + type: 'array', + items: { + type: 'object', + properties: { + title: { + type: 'string', + }, + unit: { + type: 'string', + }, + sensorType: { + type: 'string', + }, + icon: { + type: 'string', + }, + _id: { + type: 'string', + }, + lastMeasurement: { + type: 'object', + properties: { + value: { + type: 'string', + }, + createdAt: { + type: 'string', + }, + }, + required: ['value', 'createdAt'], + }, + }, + required: ['title', 'unit', 'sensorType', '_id'], + }, + }, + _id: { + type: 'string', + }, + integrations: { + type: 'object', + properties: { + mqtt: { + type: 'object', + properties: { + url: { + type: 'string', + }, + topic: { + type: 'string', + }, + decodeOptions: { + type: 'string', + }, + connectionOptions: { + type: 'string', + }, + messageFormat: { + type: 'string', + }, + enabled: { + type: 'boolean', + }, + }, + required: ['enabled'], + }, + ttn: { + type: 'object', + properties: { + dev_id: { + type: 'string', + }, + app_id: { + type: 'string', + }, + profile: { + type: 'string', + }, + }, + }, + }, + required: ['mqtt'], + }, + }, + required: [ + 'createdAt', + 'exposure', + 'name', + 'updatedAt', + 'currentLocation', + 'loc', + 'sensors', + '_id', + 'integrations', + ], + }, + }, + required: ['box'], + }, + }, + required: ['code', 'data'], +}; diff --git a/tests/tests/005-create-boxes-test.js b/tests/tests/005-create-boxes-test.js index 3bdbea47..f8edcc1c 100644 --- a/tests/tests/005-create-boxes-test.js +++ b/tests/tests/005-create-boxes-test.js @@ -12,6 +12,7 @@ const BASE_URL = process.env.OSEM_TEST_BASE_URL, senseBoxSchema = require('../data/senseBoxSchema'), getUserSchema = require('../data/getUserSchema'), getUserBoxesSchema = require('../data/getUserBoxesSchema'), + getUserBoxSchema = require('../data/getUserBoxSchema'), custom_valid_sensebox = require('../data/custom_valid_sensebox'); describe('openSenseMap API Routes: /boxes', function () { @@ -211,6 +212,32 @@ describe('openSenseMap API Routes: /boxes', function () { }); }); + it('should let users retrieve one of their boxes with all fields', function () { + let boxId; + + return chakram + .get(`${BASE_URL}/users/me/boxes`, { + headers: { Authorization: `Bearer ${jwt}` }, + }) + .then(function (response) { + expect(response).to.have.status(200); + expect(response).to.have.schema(getUserBoxesSchema); + + return response; + }) + .then(function (response) { + boxId = response.body.data.boxes[0]._id; + + return chakram.get(`${BASE_URL}/users/me/boxes/${boxId}`, { + headers: { Authorization: `Bearer ${jwt}` }, + }); + }) + .then(function (response) { + expect(response).to.have.status(200); + expect(response).to.have.schema(getUserBoxSchema); + }); + }); + it('should return a box as geojson', function () { return chakram.get(`${BASE_URL}/boxes/${boxId}?format=geojson`) .then(function (response) { @@ -707,6 +734,46 @@ describe('openSenseMap API Routes: /boxes', function () { }); }); + it('should deny to retrieve a box of other user', function () { + let otherJwt, otherBoxId; + + return chakram + .post(`${BASE_URL}/users/sign-in`, { + name: 'mrtest2', + email: 'tester3@test.test', + password: '12345678', + }) + .then(function (response) { + expect(response).to.have.status(200); + expect(response).to.have.header( + 'content-type', + 'application/json; charset=utf-8' + ); + + expect(response.body.token).to.exist; + + otherJwt = response.body.token; + + return chakram.get(`${BASE_URL}/users/me/boxes`, { + headers: { Authorization: `Bearer ${otherJwt}` }, + }); + }) + .then(function (response) { + otherBoxId = response.body.data.boxes[0]._id; + + return chakram.get(`${BASE_URL}/users/me/boxes/${otherBoxId}`, { + headers: { Authorization: `Bearer ${jwt}` }, + }); + }) + .then(function (response) { + expect(response).to.have.status(403); + expect(response).to.have.json({ + code: 'Forbidden', + message: 'User does not own this senseBox', + }); + }); + }); + it('should allow to filter boxes by grouptag', function () { return chakram.get(`${BASE_URL}/boxes?grouptag=newgroup`) .then(function (response) { From 1df9366e2d565878f0adf3d2552b83f6330fe166 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Thu, 6 Jul 2023 11:03:46 +0200 Subject: [PATCH 271/337] v3.1.0 --- packages/models/CHANGELOG.md | 5 +++++ packages/models/package.json | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/packages/models/CHANGELOG.md b/packages/models/CHANGELOG.md index c44c60ad..b86604d1 100644 --- a/packages/models/CHANGELOG.md +++ b/packages/models/CHANGELOG.md @@ -2,6 +2,11 @@ ## Unreleased +## v3.1.0 + +- Add `page` parameter to `getBoxes` method in user model +- Add new `getBox` to user model for retreiving single box with secrets + ## v3.0.1 - Update `@sensebox/sketch-templater` to fix compiling bug diff --git a/packages/models/package.json b/packages/models/package.json index eab1cd9d..171d939d 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -1,7 +1,7 @@ { "name": "@sensebox/opensensemap-api-models", "description": "openSenseMap data models and database connection", - "version": "3.0.1", + "version": "3.1.0", "main": "index.js", "license": "MIT", "dependencies": { From 890f930f0a3422d2d3267aecac5423f4b12c3b1e Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Thu, 6 Jul 2023 11:26:20 +0200 Subject: [PATCH 272/337] v0.0.0 --- package.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/package.json b/package.json index 6511eeda..bb1f9e6e 100644 --- a/package.json +++ b/package.json @@ -31,5 +31,6 @@ "mocha": "^8.3.2", "mqtt": "^4.2.8", "randomgeojson": "^1.0.0" - } + }, + "version": "0.0.0" } From 861dd9b2e9498b380b52839da84aa9ab27f1fc42 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Thu, 6 Jul 2023 11:27:05 +0200 Subject: [PATCH 273/337] Update changelog and release v11.1.0 --- CHANGELOG.md | 6 ++++++ packages/api/package.json | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 3be6d010..3b2e28dc 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,11 @@ # openSenseMap API Changelog +## v11.1.0 + +- Use @sensebox/opensensemap-api-models v3.1.0 +- New route `/users/me/boxes/:boxId` to get specific box of logged in user +- New `page` parameter for `/users/me/boxes?page=` for pagination of user embedded boxes. Default page size is 25. + ## v11.0.1 - Use @sensebox/opensensemap-api-models v3.0.1 diff --git a/packages/api/package.json b/packages/api/package.json index f530cb76..d61b7d10 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -12,7 +12,7 @@ "Felix Erdmann" ], "dependencies": { - "@sensebox/opensensemap-api-models": "3.0.1", + "@sensebox/opensensemap-api-models": "3.1.0", "@turf/area": "^6.3.0", "@turf/bbox": "^6.3.0", "@turf/centroid": "^6.3.0", From a8ac31eca48dad7c749a3e64b5396a72725a14c8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 7 Sep 2023 08:19:41 +0200 Subject: [PATCH 274/337] Bump actions/checkout from 3 to 4 (#799) Bumps [actions/checkout](https://github.com/actions/checkout) from 3 to 4. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/v3...v4) --- updated-dependencies: - dependency-name: actions/checkout dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/deploy-docs.yaml | 2 +- .github/workflows/registry.yaml | 2 +- .github/workflows/test.yaml | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/deploy-docs.yaml b/.github/workflows/deploy-docs.yaml index 0f527100..0c94b298 100644 --- a/.github/workflows/deploy-docs.yaml +++ b/.github/workflows/deploy-docs.yaml @@ -15,7 +15,7 @@ jobs: name: Deploy docs runs-on: ubuntu-20.04 steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Gather branch information id: version_info diff --git a/.github/workflows/registry.yaml b/.github/workflows/registry.yaml index 6dff3038..0f2c3b3a 100644 --- a/.github/workflows/registry.yaml +++ b/.github/workflows/registry.yaml @@ -21,7 +21,7 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Log in to the Container registry uses: docker/login-action@v2.2.0 diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index 5cfe7c1a..9d205c21 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -13,7 +13,7 @@ jobs: name: Lint code runs-on: ubuntu-20.04 steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Install Node.js 16 uses: actions/setup-node@v3.6.0 @@ -46,7 +46,7 @@ jobs: name: Run tests runs-on: ubuntu-20.04 steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Execute tests run: | From f43f489a10cadb4237166915df9950bde65c8866 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 7 Sep 2023 08:27:11 +0200 Subject: [PATCH 275/337] Bump actions/setup-node from 3.6.0 to 3.8.1 (#793) Bumps [actions/setup-node](https://github.com/actions/setup-node) from 3.6.0 to 3.8.1. - [Release notes](https://github.com/actions/setup-node/releases) - [Commits](https://github.com/actions/setup-node/compare/v3.6.0...v3.8.1) --- updated-dependencies: - dependency-name: actions/setup-node dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Matthias Pfeil --- .github/workflows/test.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index 9d205c21..489d4570 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -16,7 +16,7 @@ jobs: - uses: actions/checkout@v4 - name: Install Node.js 16 - uses: actions/setup-node@v3.6.0 + uses: actions/setup-node@v3.8.1 with: node-version: 16 From 51276d15fa7c7574f9fb61f5f943b7cc5c950f2e Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Thu, 7 Sep 2023 10:07:12 +0200 Subject: [PATCH 276/337] Update restify to support node 18 (#801) * Update restify to support node 18 * Update restify to v11.1.0 * Add some log messages * Fix linting errors --- Dockerfile | 4 +- packages/api/package.json | 2 +- .../src/measurement/decoding/validators.js | 1 - tests/tests-Dockerfile | 2 +- yarn.lock | 266 ++++++++---------- 5 files changed, 124 insertions(+), 151 deletions(-) diff --git a/Dockerfile b/Dockerfile index cfe94c92..4c4375c6 100644 --- a/Dockerfile +++ b/Dockerfile @@ -2,7 +2,7 @@ # Used best practices from https://snyk.io/blog/10-best-practices-to-containerize-nodejs-web-applications-with-docker/ # --------------> The build image -FROM node:16.19.0-bullseye-slim as build +FROM node:18.17.1-bullseye-slim as build RUN apt-get update && apt-get upgrade -y && apt-get install -y --no-install-recommends git dumb-init @@ -23,7 +23,7 @@ COPY . /usr/src/app RUN yarn create-version-file # --------------> The production image -FROM node:16.19.0-bullseye-slim +FROM node:18.17.1-bullseye-slim ENV NODE_ENV=production COPY --from=build /usr/bin/dumb-init /usr/bin/dumb-init diff --git a/packages/api/package.json b/packages/api/package.json index d61b7d10..12bab079 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -33,7 +33,7 @@ "moment": "^2.29.4", "ms": "^2.1.3", "pino": "^8.8.0", - "restify": "9.0.0", + "restify": "11.1.0", "restify-errors": "^8.0.2", "simple-statistics": "^7.7.0", "stringify-stream": "^1.0.5", diff --git a/packages/models/src/measurement/decoding/validators.js b/packages/models/src/measurement/decoding/validators.js index 08b37004..18053858 100644 --- a/packages/models/src/measurement/decoding/validators.js +++ b/packages/models/src/measurement/decoding/validators.js @@ -71,7 +71,6 @@ const transformAndValidateMeasurements = function transformAndValidateMeasuremen // finally attach a mongodb objectId elem._id = mongoose.Types.ObjectId(); } - // sort measurements/locations by date arr.sort((a, b) => a.createdAt.diff(b.createdAt)); diff --git a/tests/tests-Dockerfile b/tests/tests-Dockerfile index 0e8dbddf..07ab0158 100644 --- a/tests/tests-Dockerfile +++ b/tests/tests-Dockerfile @@ -1,4 +1,4 @@ -FROM node:16.19.0-bullseye-slim +FROM node:18.17.1-bullseye-slim # YARN_PRODUCTION=false is a workaround for https://github.com/yarnpkg/yarn/issues/4557 ENV NODE_ENV=production \ diff --git a/yarn.lock b/yarn.lock index b6592c8e..b1fc67f0 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1045,35 +1045,40 @@ css-what@^5.0.0: resolved "https://registry.yarnpkg.com/css-what/-/css-what-5.0.1.tgz#3efa820131f4669a8ac2408f9c32e7c7de9f4cad" integrity sha512-FYDTSHb/7KXsWICVsxdmiExPjCfRC4qRFBdVwv7Ax9hMnvMmEjP9RfxTEZ3qPZGmADDn2vAKSo9UcN1jKVYscg== -csv-generate@^3.4.3: - version "3.4.3" - resolved "https://registry.yarnpkg.com/csv-generate/-/csv-generate-3.4.3.tgz#bc42d943b45aea52afa896874291da4b9108ffff" - integrity sha512-w/T+rqR0vwvHqWs/1ZyMDWtHHSJaN06klRqJXBEpDJaM/+dZkso0OKh1VcuuYvK3XM53KysVNq8Ko/epCK8wOw== +csv-generate@^4.2.6: + version "4.2.6" + resolved "https://registry.yarnpkg.com/csv-generate/-/csv-generate-4.2.6.tgz#7146b41313d7c91d19d99891ef400d7f0931e908" + integrity sha512-VtnYqhWLcsUocA346ewFOk+rrqcoT663j11vXzD2uelXq9WguQ3QzDeVD8ISso7hhVtkDSHcWl9psdemeiEHDA== -csv-parse@^4.15.4, csv-parse@^4.16.3: +csv-parse@^4.15.4: version "4.16.3" resolved "https://registry.yarnpkg.com/csv-parse/-/csv-parse-4.16.3.tgz#7ca624d517212ebc520a36873c3478fa66efbaf7" integrity sha512-cO1I/zmz4w2dcKHVvpCr7JVRu8/FymG5OEpmvsZYlccYolPBLoVGKUHgNoc4ZGkFeFlWGEDmMyBM+TTqRdW/wg== -csv-stringify@^5.6.5: - version "5.6.5" - resolved "https://registry.yarnpkg.com/csv-stringify/-/csv-stringify-5.6.5.tgz#c6d74badda4b49a79bf4e72f91cce1e33b94de00" - integrity sha512-PjiQ659aQ+fUTQqSrd1XEDnOr52jh30RBurfzkscaE2tPaFsDH5wOAHJiw8XAHphRknCwMUE9KRayc4K/NbO8A== +csv-parse@^5.4.0: + version "5.4.0" + resolved "https://registry.yarnpkg.com/csv-parse/-/csv-parse-5.4.0.tgz#6793210a4a49a9a74b3fde3f9d00f3f52044fd89" + integrity sha512-JiQosUWiOFgp4hQn0an+SBoV9IKdqzhROM0iiN4LB7UpfJBlsSJlWl9nq4zGgxgMAzHJ6V4t29VAVD+3+2NJAg== csv-stringify@^6.2.3: version "6.2.3" resolved "https://registry.yarnpkg.com/csv-stringify/-/csv-stringify-6.2.3.tgz#fefd25e66fd48f8f42f43b85a66a4663a2c3e796" integrity sha512-4qGjUMwnlaRc00gc2jrIYh2w/h1fo25B0mTuY9K8fBiIgtmCX3LcgUbrEGViL98Ci4Se/F5LFEtu8k+dItJVZQ== -csv@^5.1.1: - version "5.5.3" - resolved "https://registry.yarnpkg.com/csv/-/csv-5.5.3.tgz#cd26c1e45eae00ce6a9b7b27dcb94955ec95207d" - integrity sha512-QTaY0XjjhTQOdguARF0lGKm5/mEq9PD9/VhZZegHDIBq2tQwgNpHc3dneD4mGo2iJs+fTKv5Bp0fZ+BRuY3Z0g== +csv-stringify@^6.4.0: + version "6.4.0" + resolved "https://registry.yarnpkg.com/csv-stringify/-/csv-stringify-6.4.0.tgz#6d006dca9194700e44f9fbc541bee8bbbd4f459c" + integrity sha512-HQsw0QXiN5fdlO+R8/JzCZnR3Fqp8E87YVnhHlaPtNGJjt6ffbV0LpOkieIb1x6V1+xt878IYq77SpXHWAqKkA== + +csv@^6.2.2: + version "6.3.1" + resolved "https://registry.yarnpkg.com/csv/-/csv-6.3.1.tgz#52fb5d676ea084b2659dacd2b324e420bdd68989" + integrity sha512-ZTcWLvr0Ux0IQDz/QzhCToBVIZtF5GDrStMt9I8mRSk0jPnfF9OeYKz0EZTspaAEOK6hf515ag97nKmwoyU8ZA== dependencies: - csv-generate "^3.4.3" - csv-parse "^4.16.3" - csv-stringify "^5.6.5" - stream-transform "^2.1.3" + csv-generate "^4.2.6" + csv-parse "^5.4.0" + csv-stringify "^6.4.0" + stream-transform "^3.2.6" dashdash@^1.12.0: version "1.14.1" @@ -1178,15 +1183,15 @@ denque@^2.1.0: resolved "https://registry.yarnpkg.com/denque/-/denque-2.1.0.tgz#e93e1a6569fb5e66f16a3c2a2964617d349d6ab1" integrity sha512-HVQE3AAb/pxF8fQAoiqpvg9i3evqug3hoiwakOyZAwJm+6vZehbkYXZ0l4JxS+I3QxM97v5aaRNhj8v5oBhekw== -depd@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" - integrity sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ== +depd@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/depd/-/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df" + integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw== -destroy@~1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.0.4.tgz#978857442c44749e4206613e37946205826abd80" - integrity sha512-3NdhDuEXnfun/z7x9GOElY49LoqVHoGScmOKwmxhsS8N5Y+Z8KyPPDnaSzqWgYt/ji4mqwfTS34Htrk0zPIXVg== +destroy@1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.2.0.tgz#4803735509ad8be552934c67df614f94e66fa015" + integrity sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg== detect-libc@^2.0.0: version "2.0.1" @@ -1245,7 +1250,7 @@ domutils@^2.5.1, domutils@^2.5.2: domelementtype "^2.2.0" domhandler "^4.1.0" -dtrace-provider@^0.8.1: +dtrace-provider@~0.8: version "0.8.8" resolved "https://registry.yarnpkg.com/dtrace-provider/-/dtrace-provider-0.8.8.tgz#2996d5490c37e1347be263b423ed7b297fb0d97e" integrity sha512-b7Z7cNtHPhH9EJhNNbbeqTcXB8LGFFZhq1PGgEvpeHlzd36bhbdTWoE/Ba/YguqpBSlAPKnARWhVlhunCMwfxg== @@ -1528,7 +1533,7 @@ extsprintf@^1.2.0, extsprintf@^1.4.0: resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.0.tgz#e2689f8f356fad62cca65a3a91c5df5f9551692f" integrity sha1-4mifjzVvrWLMplo6kcXfX5VRaS8= -fast-decode-uri-component@^1.0.0: +fast-decode-uri-component@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/fast-decode-uri-component/-/fast-decode-uri-component-1.0.1.tgz#46f8b6c22b30ff7a81357d4f59abfae938202543" integrity sha512-WKgKWg5eUxvRZGwW8FvfbaH7AXSh2cL+3j5fMGzUMCxWBJ3dV3a7Wz8y2f/uQ0e3B6WmodD3oS54jTQ9HVTIIg== @@ -1538,6 +1543,11 @@ fast-deep-equal@^3.1.1: resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.1.tgz#545145077c501491e33b15ec408c294376e94ae4" integrity sha512-8UEa58QDLauDNfpbrX55Q9jrGHThw2ZMdOky5Gl1CDtVeJDPVrG4Jxx1N8jw2gkWaff5UUuX1KJd+9zGe2B+ZA== +fast-deep-equal@^3.1.3: + version "3.1.3" + resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" + integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== + fast-json-stable-stringify@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" @@ -1548,16 +1558,18 @@ fast-levenshtein@^2.0.6, fast-levenshtein@~2.0.6: resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= -fast-redact@^3.0.0, fast-redact@^3.1.1: +fast-querystring@^1.0.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/fast-querystring/-/fast-querystring-1.1.2.tgz#a6d24937b4fc6f791b4ee31dcb6f53aeafb89f53" + integrity sha512-g6KuKWmFXc0fID8WWH0jit4g0AGBoJhCkJMb1RmbsSEUNvQ+ZC8D6CUZ+GtF8nMzSPXnhiePyyqqipzNNEnHjg== + dependencies: + fast-decode-uri-component "^1.0.1" + +fast-redact@^3.1.1: version "3.1.2" resolved "https://registry.yarnpkg.com/fast-redact/-/fast-redact-3.1.2.tgz#d58e69e9084ce9fa4c1a6fa98a3e1ecf5d7839aa" integrity sha512-+0em+Iya9fKGfEQGcd62Yv6onjBmmhV1uh86XVfOU8VwAe6kaFdQCWI9s0/Nnugx5Vd9tdbZ7e6gE2tR9dzXdw== -fast-safe-stringify@^2.0.8: - version "2.1.1" - resolved "https://registry.yarnpkg.com/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz#c406a83b6e70d9e35ce3b30a81141df30aeba884" - integrity sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA== - file-entry-cache@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz#211b2dd9659cb0394b073e7323ac3c933d522027" @@ -1572,14 +1584,14 @@ fill-range@^7.0.1: dependencies: to-regex-range "^5.0.1" -find-my-way@^2.0.1: - version "2.2.5" - resolved "https://registry.yarnpkg.com/find-my-way/-/find-my-way-2.2.5.tgz#86ce825266fa28cd962e538a45ec2aaa84c3d514" - integrity sha512-GjRZZlGcGmTh9t+6Xrj5K0YprpoAFCAiCPgmAH9Kb09O4oX6hYuckDfnDipYj+Q7B1GtYWSzDI5HEecNYscLQg== +find-my-way@^7.2.0: + version "7.6.2" + resolved "https://registry.yarnpkg.com/find-my-way/-/find-my-way-7.6.2.tgz#4dd40200d3536aeef5c7342b10028e04cf79146c" + integrity sha512-0OjHn1b1nCX3eVbm9ByeEHiscPYiHLfhei1wOUU9qffQkk98wE0Lo8VrVYfSGMgnSnDh86DxedduAnBf4nwUEw== dependencies: - fast-decode-uri-component "^1.0.0" + fast-deep-equal "^3.1.3" + fast-querystring "^1.0.0" safe-regex2 "^2.0.0" - semver-store "^0.3.0" find-up@5.0.0: version "5.0.0" @@ -1602,11 +1614,6 @@ flat@^5.0.2: resolved "https://registry.yarnpkg.com/flat/-/flat-5.0.2.tgz#8ca6fe332069ffa9d324c327198c598259ceb241" integrity sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ== -flatstr@^1.0.12: - version "1.0.12" - resolved "https://registry.yarnpkg.com/flatstr/-/flatstr-1.0.12.tgz#c2ba6a08173edbb6c9640e3055b95e287ceb5931" - integrity sha512-4zPxDyhCyiN2wIAtSLI6gc82/EjqZc1onI4Mz/l0pWrAlsSfYH/2ZIcU+e3oA2wDwbzIWNKwa23F8rh6+DRWkw== - flatted@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.1.0.tgz#a5d06b4a8b01e3a63771daa5cb7a1903e2e57067" @@ -1921,15 +1928,15 @@ http-deceiver@^1.2.7: resolved "https://registry.yarnpkg.com/http-deceiver/-/http-deceiver-1.2.7.tgz#fa7168944ab9a519d337cb0bec7284dc3e723d87" integrity sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw== -http-errors@1.8.1: - version "1.8.1" - resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.8.1.tgz#7c3f28577cbc8a207388455dbd62295ed07bd68c" - integrity sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g== +http-errors@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-2.0.0.tgz#b7774a1486ef73cf7667ac9ae0858c012c57b9d3" + integrity sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ== dependencies: - depd "~1.1.2" + depd "2.0.0" inherits "2.0.4" setprototypeof "1.2.0" - statuses ">= 1.5.0 < 2" + statuses "2.0.1" toidentifier "1.0.1" http-signature@^1.3.6: @@ -2310,13 +2317,6 @@ lowercase-keys@^2.0.0: resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-2.0.0.tgz#2603e78b7b4b0006cbca2fbcc8a3202558ac9479" integrity sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA== -lru-cache@^5.1.1: - version "5.1.1" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920" - integrity sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w== - dependencies: - yallist "^3.0.2" - lru-cache@^6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94" @@ -2324,6 +2324,11 @@ lru-cache@^6.0.0: dependencies: yallist "^4.0.0" +lru-cache@^7.14.1: + version "7.18.3" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-7.18.3.tgz#f793896e0fd0e954a59dfdd82f0773808df6aa89" + integrity sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA== + luxon@^3.2.1: version "3.3.0" resolved "https://registry.yarnpkg.com/luxon/-/luxon-3.3.0.tgz#d73ab5b5d2b49a461c47cedbc7e73309b4805b48" @@ -2365,10 +2370,10 @@ mime@1.6.0, mime@^1.4.1: resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== -mime@^2.4.3: - version "2.6.0" - resolved "https://registry.yarnpkg.com/mime/-/mime-2.6.0.tgz#a2a682a95cd4d0cb1d6257e28f83da7e35800367" - integrity sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg== +mime@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/mime/-/mime-3.0.0.tgz#b374550dca3a0c18443b0c950a6a58f1931cf7a7" + integrity sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A== mimelib@^0.3.1: version "0.3.1" @@ -2439,11 +2444,6 @@ minizlib@^2.1.1: minipass "^3.0.0" yallist "^4.0.0" -mixme@^0.5.1: - version "0.5.4" - resolved "https://registry.yarnpkg.com/mixme/-/mixme-0.5.4.tgz#8cb3bd0cd32a513c161bf1ca99d143f0bcf2eff3" - integrity sha512-3KYa4m4Vlqx98GPdOHghxSdNtTvcP8E0kkaJ5Dlh+h2DRzF7zpuVVcA8B0QpKd11YJeP9QQ7ASkKzOeu195Wzw== - mkdirp@^1.0.3: version "1.0.4" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" @@ -2714,10 +2714,10 @@ on-exit-leak-free@^2.1.0: resolved "https://registry.yarnpkg.com/on-exit-leak-free/-/on-exit-leak-free-2.1.0.tgz#5c703c968f7e7f851885f6459bf8a8a57edc9cc4" integrity sha512-VuCaZZAjReZ3vUwgOB8LxAosIurDiAW0s13rI1YwmaP++jvcxP77AWoQvenZebpCA2m8WC1/EosPYPMjnRAp/w== -on-finished@~2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947" - integrity sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww== +on-finished@2.4.1: + version "2.4.1" + resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.4.1.tgz#58c8c44116e54845ad57f14ab10b03533184ac3f" + integrity sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg== dependencies: ee-first "1.1.1" @@ -2820,10 +2820,10 @@ picomatch@^2.0.4, picomatch@^2.2.1: resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.2.2.tgz#21f333e9b6b8eaff02468f5146ea406d345f4dad" integrity sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg== -pidusage@^2.0.17: - version "2.0.21" - resolved "https://registry.yarnpkg.com/pidusage/-/pidusage-2.0.21.tgz#7068967b3d952baea73e57668c98b9eaa876894e" - integrity sha512-cv3xAQos+pugVX+BfXpHsbyz/dLzX+lr44zNMsYiGxUw+kV5sgQCIcLd1z+0vq+KyC7dJ+/ts2PsfgWfSC3WXA== +pidusage@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/pidusage/-/pidusage-3.0.2.tgz#6faa5402b2530b3af2cf93d13bcf202889724a53" + integrity sha512-g0VU+y08pKw5M8EZ2rIGiEBaB8wrQMjYGFfW2QVIfyT8V+fq8YFLkvlz4bz5ljvFDJYNFCWT3PWqcRr2FKO81w== dependencies: safe-buffer "^5.2.1" @@ -2835,28 +2835,27 @@ pino-abstract-transport@v1.0.0: readable-stream "^4.0.0" split2 "^4.0.0" -pino-std-serializers@^3.1.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/pino-std-serializers/-/pino-std-serializers-3.2.0.tgz#b56487c402d882eb96cd67c257868016b61ad671" - integrity sha512-EqX4pwDPrt3MuOAAUBMU0Tk5kR/YcCM5fNPEzgCO2zJ5HfX0vbiH9HbJglnyeQsN96Kznae6MWD47pZB5avTrg== - pino-std-serializers@^6.0.0: version "6.1.0" resolved "https://registry.yarnpkg.com/pino-std-serializers/-/pino-std-serializers-6.1.0.tgz#307490fd426eefc95e06067e85d8558603e8e844" integrity sha512-KO0m2f1HkrPe9S0ldjx7za9BJjeHqBku5Ch8JyxETxT8dEFGz1PwgrHaOQupVYitpzbFSYm7nnljxD8dik2c+g== -pino@^6.3.2: - version "6.14.0" - resolved "https://registry.yarnpkg.com/pino/-/pino-6.14.0.tgz#b745ea87a99a6c4c9b374e4f29ca7910d4c69f78" - integrity sha512-iuhEDel3Z3hF9Jfe44DPXR8l07bhjuFY3GMHIXbjnY9XcafbyDDwl2sN2vw2GjMPf5Nkoe+OFao7ffn9SXaKDg== +pino@^8.7.0: + version "8.15.0" + resolved "https://registry.yarnpkg.com/pino/-/pino-8.15.0.tgz#67c61d5e397bf297e5a0433976a7f7b8aa6f876b" + integrity sha512-olUADJByk4twxccmAxb1RiGKOSvddHugCV3wkqjyv+3Sooa2KLrmXrKEWOKi0XPCLasRR5jBXxioE1jxUa4KzQ== dependencies: - fast-redact "^3.0.0" - fast-safe-stringify "^2.0.8" - flatstr "^1.0.12" - pino-std-serializers "^3.1.0" - process-warning "^1.0.0" + atomic-sleep "^1.0.0" + fast-redact "^3.1.1" + on-exit-leak-free "^2.1.0" + pino-abstract-transport v1.0.0 + pino-std-serializers "^6.0.0" + process-warning "^2.0.0" quick-format-unescaped "^4.0.3" - sonic-boom "^1.0.2" + real-require "^0.2.0" + safe-stable-stringify "^2.3.1" + sonic-boom "^3.1.0" + thread-stream "^2.0.0" pino@^8.8.0: version "8.8.0" @@ -2902,11 +2901,6 @@ process-nextick-args@~1.0.6: resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-1.0.7.tgz#150e20b756590ad3f91093f25a4f2ad8bff30ba3" integrity sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M= -process-warning@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/process-warning/-/process-warning-1.0.0.tgz#980a0b25dc38cd6034181be4b7726d89066b4616" - integrity sha512-du4wfLyj4yCZq1VupnVSZmRsPJsNuxoDQFdCFHLaYiEbFBD7QE0a+I4D7hOxrVnh78QE/YipFAj9lXHiXocV+Q== - process-warning@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/process-warning/-/process-warning-2.1.0.tgz#1e60e3bfe8183033bbc1e702c2da74f099422d1a" @@ -3203,34 +3197,34 @@ restify-errors@^8.0.2: optionalDependencies: safe-json-stringify "^1.0.4" -restify@9.0.0: - version "9.0.0" - resolved "https://registry.yarnpkg.com/restify/-/restify-9.0.0.tgz#9f75680ed7f740e2058141639c89b16eeb597a03" - integrity sha512-3bl0+3GdwCGvHKRf95Zhem/kc/zzWtcxl1kKmv3uDLN64WsXImRcMFR7ryqKVuv5RGIkOU7kVSbCbyxrLhHWdg== +restify@11.1.0: + version "11.1.0" + resolved "https://registry.yarnpkg.com/restify/-/restify-11.1.0.tgz#5296d55062fd4d27450a3dc219df3d7d8bcdaaa6" + integrity sha512-ng7uBlj4wpIpshhAjNNSd6JG5Eg32+zgync2gG8OlF4e2xzIflZo54GJ/qLs765OtQaVU+uJPcNOL5Atm2F/dg== dependencies: assert-plus "^1.0.0" - csv "^5.1.1" + csv "^6.2.2" escape-regexp-component "^1.0.2" ewma "^2.0.1" - find-my-way "^2.0.1" + find-my-way "^7.2.0" formidable "^1.2.1" http-signature "^1.3.6" lodash "^4.17.11" - lru-cache "^5.1.1" - mime "^2.4.3" + lru-cache "^7.14.1" + mime "^3.0.0" negotiator "^0.6.2" once "^1.4.0" - pidusage "^2.0.17" - pino "^6.3.2" + pidusage "^3.0.2" + pino "^8.7.0" qs "^6.7.0" restify-errors "^8.0.2" - semver "^6.1.1" - send "^0.17.1" + semver "^7.3.8" + send "^0.18.0" spdy "^4.0.0" - uuid "^3.3.2" + uuid "^9.0.0" vasync "^2.2.0" optionalDependencies: - dtrace-provider "^0.8.1" + dtrace-provider "~0.8" ret@~0.2.0: version "0.2.2" @@ -3281,17 +3275,12 @@ select-hose@^2.0.0: resolved "https://registry.yarnpkg.com/select-hose/-/select-hose-2.0.0.tgz#625d8658f865af43ec962bfc376a37359a4994ca" integrity sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg== -semver-store@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/semver-store/-/semver-store-0.3.0.tgz#ce602ff07df37080ec9f4fb40b29576547befbe9" - integrity sha512-TcZvGMMy9vodEFSse30lWinkj+JgOBvPn8wRItpQRSayhc+4ssDs335uklkfvQQJgL/WvmHLVj4Ycv2s7QCQMg== - semver@^5.1.0: version "5.7.1" resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== -semver@^6.0.0, semver@^6.1.1: +semver@^6.0.0: version "6.3.0" resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== @@ -3303,24 +3292,24 @@ semver@^7.2.1, semver@^7.3.5, semver@^7.3.7, semver@^7.3.8: dependencies: lru-cache "^6.0.0" -send@^0.17.1: - version "0.17.2" - resolved "https://registry.yarnpkg.com/send/-/send-0.17.2.tgz#926622f76601c41808012c8bf1688fe3906f7820" - integrity sha512-UJYB6wFSJE3G00nEivR5rgWp8c2xXvJ3OPWPhmuteU0IKj8nKbG3DrjiOmLwpnHGYWAVwA69zmTm++YG0Hmwww== +send@^0.18.0: + version "0.18.0" + resolved "https://registry.yarnpkg.com/send/-/send-0.18.0.tgz#670167cc654b05f5aa4a767f9113bb371bc706be" + integrity sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg== dependencies: debug "2.6.9" - depd "~1.1.2" - destroy "~1.0.4" + depd "2.0.0" + destroy "1.2.0" encodeurl "~1.0.2" escape-html "~1.0.3" etag "~1.8.1" fresh "0.5.2" - http-errors "1.8.1" + http-errors "2.0.0" mime "1.6.0" ms "2.1.3" - on-finished "~2.3.0" + on-finished "2.4.1" range-parser "~1.2.1" - statuses "~1.5.0" + statuses "2.0.1" serialize-javascript@5.0.1: version "5.0.1" @@ -3389,14 +3378,6 @@ sliced@1.0.1: resolved "https://registry.yarnpkg.com/sliced/-/sliced-1.0.1.tgz#0b3a662b5d04c3177b1926bea82b03f837a2ef41" integrity sha1-CzpmK10Ewxd7GSa+qCsD+Dei70E= -sonic-boom@^1.0.2: - version "1.4.1" - resolved "https://registry.yarnpkg.com/sonic-boom/-/sonic-boom-1.4.1.tgz#d35d6a74076624f12e6f917ade7b9d75e918f53e" - integrity sha512-LRHh/A8tpW7ru89lrlkU4AszXt1dbwSjVWguGrmlxE7tawVmDBlI1PILMkXAxJTwqhgsEeTHzj36D5CmHgQmNg== - dependencies: - atomic-sleep "^1.0.0" - flatstr "^1.0.12" - sonic-boom@^3.1.0: version "3.2.1" resolved "https://registry.yarnpkg.com/sonic-boom/-/sonic-boom-3.2.1.tgz#972ceab831b5840a08a002fa95a672008bda1c38" @@ -3501,22 +3482,20 @@ static-eval@2.0.2: dependencies: escodegen "^1.8.1" -"statuses@>= 1.5.0 < 2", statuses@~1.5.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c" - integrity sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA== +statuses@2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/statuses/-/statuses-2.0.1.tgz#55cb000ccf1d48728bd23c685a063998cf1a1b63" + integrity sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ== stream-shift@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.1.tgz#d7088281559ab2778424279b0877da3c392d5a3d" integrity sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ== -stream-transform@^2.1.3: - version "2.1.3" - resolved "https://registry.yarnpkg.com/stream-transform/-/stream-transform-2.1.3.tgz#a1c3ecd72ddbf500aa8d342b0b9df38f5aa598e3" - integrity sha512-9GHUiM5hMiCi6Y03jD2ARC1ettBXkQBoQAe7nJsPknnI0ow10aXjTnew8QtYQmLjzn974BnmWEAJgCY6ZP1DeQ== - dependencies: - mixme "^0.5.1" +stream-transform@^3.2.6: + version "3.2.6" + resolved "https://registry.yarnpkg.com/stream-transform/-/stream-transform-3.2.6.tgz#7caeaaf68d2bf94fc412a520f2deb3c49b3bc0ab" + integrity sha512-/pyOvaCQFqYTmrFhmMbnAEVo3SsTx1H39eUVPOtYeAgbEUc+rDo7GoP8LbHJgU83mKtzJe/7Nq/ipaAnUOHgJQ== "string-width@^1.0.2 || 2": version "2.1.1" @@ -3903,11 +3882,6 @@ y18n@^5.0.5: resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.5.tgz#8769ec08d03b1ea2df2500acef561743bbb9ab18" integrity sha512-hsRUr4FFrvhhRH12wOdfs38Gy7k2FFzB9qgN9v3aLykRq0dRcdcpz5C9FxdS2NuhOrI/628b/KSTJ3rwHysYSg== -yallist@^3.0.2: - version "3.1.1" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" - integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== - yallist@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" From e06041943161efe065821edd1d8b42aedbc3d208 Mon Sep 17 00:00:00 2001 From: Eric Thieme-Garmann Date: Thu, 7 Sep 2023 14:34:25 +0200 Subject: [PATCH 277/337] (feat): new route for querying tags (#577) * added route to get all tags as json array * lint stuff * remove logs * added status code to response * lint again * adjusted getting tags function, renamed route * return error and remove next * Add basic test for tags route --------- Co-authored-by: Thiemann96 Co-authored-by: Matthias Pfeil --- .../api/lib/controllers/boxesController.js | 18 +++++++++++++++++- packages/api/lib/routes.js | 1 + tests/data/valid_sensebox.js | 4 ++++ tests/tests/005-create-boxes-test.js | 14 ++++++++++++++ 4 files changed, 36 insertions(+), 1 deletion(-) diff --git a/packages/api/lib/controllers/boxesController.js b/packages/api/lib/controllers/boxesController.js index 8a3771ba..71875377 100644 --- a/packages/api/lib/controllers/boxesController.js +++ b/packages/api/lib/controllers/boxesController.js @@ -605,6 +605,18 @@ const claimBox = async function claimBox (req, res) { } }; +const getAllTags = async function getAllTags (req, res) { + try { + const grouptags = await Box.find().distinct('grouptag') + .exec(); + + res.send({ code: 'Ok', data: grouptags }); + } catch (err) { + return handleError(err); + } +}; + + module.exports = { // auth required deleteBox: [ @@ -826,6 +838,10 @@ module.exports = { ]), parseAndValidateTimeParamsForFindAllBoxes, addCache('5 minutes', 'getBoxes'), - getBoxes, + getBoxes ], + getAllTags: [ + addCache('5 minutes', 'getAllTags'), + getAllTags + ] }; diff --git a/packages/api/lib/routes.js b/packages/api/lib/routes.js index d14152d4..dccd8f9e 100644 --- a/packages/api/lib/routes.js +++ b/packages/api/lib/routes.js @@ -74,6 +74,7 @@ const routes = { 'noauth': [ { path: '/', method: 'get', handler: printRoutes, reference: 'api-Misc-printRoutes' }, { path: '/stats', method: 'get', handler: statisticsController.getStatistics, reference: 'api-Misc-getStatistics' }, + { path: '/tags', method: 'get', handler: boxesController.getAllTags, reference: 'api-Boxes-getAllTags' }, { path: `${statisticsPath}/idw`, method: 'get', handler: statisticsController.getIdw, reference: 'api-Interpolation-calculateIdw' }, { path: `${statisticsPath}/descriptive`, method: 'get', handler: statisticsController.descriptiveStatisticsHandler, reference: 'api-Statistics-descriptive' }, { path: `${boxesPath}`, method: 'get', handler: boxesController.getBoxes, reference: 'api-Boxes-getBoxes' }, diff --git a/tests/data/valid_sensebox.js b/tests/data/valid_sensebox.js index 9caa6721..0ecee00b 100644 --- a/tests/data/valid_sensebox.js +++ b/tests/data/valid_sensebox.js @@ -23,6 +23,10 @@ module.exports = function ({ bbox, model, sensors, lonlat, name = '', sensorTemp const box = { 'name': `senseBox${name}`, 'model': model, + 'grouptag': [ + 'tag1', + 'tag2' + ], 'exposure': 'indoor', 'weblink': 'https://api.opensensemap.org', 'location': loc, diff --git a/tests/tests/005-create-boxes-test.js b/tests/tests/005-create-boxes-test.js index f8edcc1c..a5e3aa4e 100644 --- a/tests/tests/005-create-boxes-test.js +++ b/tests/tests/005-create-boxes-test.js @@ -173,6 +173,20 @@ describe('openSenseMap API Routes: /boxes', function () { }); }); + it('should return distinct grouptags of boxes', function () { + return chakram.get(`${BASE_URL}/tags`) + .then(function (response) { + expect(response).to.have.status(200); + expect(response).to.have.header( + 'content-type', + 'application/json; charset=utf-8' + ); + + expect(Array.isArray(response.body.data)).to.be.true; + expect(response.body.data.length).to.be.equal(2); + }); + }); + it('should allow to create a senseBox via POST used for transfering', function () { return chakram.post(`${BASE_URL}/boxes`, valid_sensebox({ name: 'Transfer', }), { headers: { Authorization: `Bearer ${jwt}` }, }) .then(function (response) { From 62b0ae6b964456a96498cd457c51620d69d46500 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 8 Sep 2023 08:08:37 +0200 Subject: [PATCH 278/337] Bump actions/cache from 3.3.1 to 3.3.2 (#804) Bumps [actions/cache](https://github.com/actions/cache) from 3.3.1 to 3.3.2. - [Release notes](https://github.com/actions/cache/releases) - [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md) - [Commits](https://github.com/actions/cache/compare/v3.3.1...v3.3.2) --- updated-dependencies: - dependency-name: actions/cache dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/test.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index 489d4570..cd3ca873 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -26,7 +26,7 @@ jobs: echo "##[set-output name=dir;]$(yarn cache dir)" - name: Restore yarn cache - uses: actions/cache@v3.3.1 + uses: actions/cache@v3.3.2 id: yarn-cache with: path: ${{ steps.yarn-cache-dir-path.outputs.dir }} From d0e04cd1d21e63194dd4981a31bc2b62ff355628 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 11 Sep 2023 10:05:33 +0200 Subject: [PATCH 279/337] Bump docker/build-push-action from 4.1.1 to 4.2.1 (#806) Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 4.1.1 to 4.2.1. - [Release notes](https://github.com/docker/build-push-action/releases) - [Commits](https://github.com/docker/build-push-action/compare/v4.1.1...v4.2.1) --- updated-dependencies: - dependency-name: docker/build-push-action dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/registry.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/registry.yaml b/.github/workflows/registry.yaml index 0f2c3b3a..de008fd9 100644 --- a/.github/workflows/registry.yaml +++ b/.github/workflows/registry.yaml @@ -41,7 +41,7 @@ jobs: suffix= - name: Build and push Docker image - uses: docker/build-push-action@v4.1.1 + uses: docker/build-push-action@v4.2.1 with: context: . push: true From c9ca8951a5531bbc2bc7fefd340290a15de5134b Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Mon, 11 Sep 2023 14:37:26 +0200 Subject: [PATCH 280/337] Add configuration for pagination and remove population for lastMeasurement (#774) --- packages/models/index.js | 3 +++ packages/models/src/user/user.js | 7 ++++--- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/packages/models/index.js b/packages/models/index.js index 9f5247b3..fb34435d 100644 --- a/packages/models/index.js +++ b/packages/models/index.js @@ -44,6 +44,9 @@ config.util.setModuleDefaults('openSenseMap-API-models', { amount: 1, unit: 'd', }, + pagination: { + max_boxes: 3 + }, image_folder: './userimages/', }); diff --git a/packages/models/src/user/user.js b/packages/models/src/user/user.js index 19423ee4..4c729bfe 100644 --- a/packages/models/src/user/user.js +++ b/packages/models/src/user/user.js @@ -12,6 +12,7 @@ const { mongoose } = require('../db'), bcrypt = require('bcrypt'), crypto = require('crypto'), { min_length: password_min_length, salt_factor: password_salt_factor } = require('config').get('openSenseMap-API-models.password'), + { max_boxes: pagination_max_boxes } = require('config').get('openSenseMap-API-models.pagination'), { v4: uuidv4 } = require('uuid'), { model: Box } = require('../box/box'), { model: Claim } = require('../box/claim'), @@ -551,8 +552,8 @@ userSchema.methods.updateUser = function updateUser ({ email, language, name, cu userSchema.methods.getBoxes = function getBoxes (page) { return Box.find({ _id: { $in: this.boxes } }) - .limit(25) - .skip(page * 25) + .limit(pagination_max_boxes) + .skip(page * pagination_max_boxes) .populate(Box.BOX_SUB_PROPS_FOR_POPULATION) .then(function (boxes) { return boxes.map(b => b.toJSON({ includeSecrets: true })); @@ -566,7 +567,7 @@ userSchema.methods.getBox = function getBox (boxId) { user.checkBoxOwner(boxId); return Box.findOne({ _id: boxId }) - .populate(Box.BOX_SUB_PROPS_FOR_POPULATION) + // .populate(Box.BOX_SUB_PROPS_FOR_POPULATION) .then(function (box) { return box.toJSON({ includeSecrets: true }); }); From 60986d404a929b7d78f5ef925017276f160d1fc6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 15 Sep 2023 15:22:20 +0200 Subject: [PATCH 281/337] Bump docker/login-action from 2.2.0 to 3.0.0 (#811) Bumps [docker/login-action](https://github.com/docker/login-action) from 2.2.0 to 3.0.0. - [Release notes](https://github.com/docker/login-action/releases) - [Commits](https://github.com/docker/login-action/compare/v2.2.0...v3.0.0) --- updated-dependencies: - dependency-name: docker/login-action dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/registry.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/registry.yaml b/.github/workflows/registry.yaml index de008fd9..89566441 100644 --- a/.github/workflows/registry.yaml +++ b/.github/workflows/registry.yaml @@ -24,7 +24,7 @@ jobs: uses: actions/checkout@v4 - name: Log in to the Container registry - uses: docker/login-action@v2.2.0 + uses: docker/login-action@v3.0.0 with: registry: ${{ env.REGISTRY }} username: ${{ github.actor }} From 7d92103900633d7406a931963730b683d27aedeb Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 15 Sep 2023 15:26:09 +0200 Subject: [PATCH 282/337] Bump docker/metadata-action from 4.6.0 to 5.0.0 (#810) Bumps [docker/metadata-action](https://github.com/docker/metadata-action) from 4.6.0 to 5.0.0. - [Release notes](https://github.com/docker/metadata-action/releases) - [Upgrade guide](https://github.com/docker/metadata-action/blob/master/UPGRADE.md) - [Commits](https://github.com/docker/metadata-action/compare/v4.6.0...v5.0.0) --- updated-dependencies: - dependency-name: docker/metadata-action dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Matthias Pfeil --- .github/workflows/registry.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/registry.yaml b/.github/workflows/registry.yaml index 89566441..eda8e9f1 100644 --- a/.github/workflows/registry.yaml +++ b/.github/workflows/registry.yaml @@ -32,7 +32,7 @@ jobs: - name: Extract metadata (tags, labels) for Docker id: meta - uses: docker/metadata-action@v4.6.0 + uses: docker/metadata-action@v5.0.0 with: images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} flavor: | From 92989dd71dae04167ab18ea682bec3aaba4ac2d3 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 15 Sep 2023 15:52:33 +0200 Subject: [PATCH 283/337] Bump docker/build-push-action from 4.2.1 to 5.0.0 (#809) Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 4.2.1 to 5.0.0. - [Release notes](https://github.com/docker/build-push-action/releases) - [Commits](https://github.com/docker/build-push-action/compare/v4.2.1...v5.0.0) --- updated-dependencies: - dependency-name: docker/build-push-action dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Matthias Pfeil --- .github/workflows/registry.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/registry.yaml b/.github/workflows/registry.yaml index eda8e9f1..c517df02 100644 --- a/.github/workflows/registry.yaml +++ b/.github/workflows/registry.yaml @@ -41,7 +41,7 @@ jobs: suffix= - name: Build and push Docker image - uses: docker/build-push-action@v4.2.1 + uses: docker/build-push-action@v5.0.0 with: context: . push: true From f193b36634f5fa00c0d3740dd033af105f92a2e3 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Thu, 28 Sep 2023 10:07:06 +0200 Subject: [PATCH 284/337] (docs): clarify longitude and latitude order (#818) --- packages/api/lib/helpers/userParamHelpers.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/api/lib/helpers/userParamHelpers.js b/packages/api/lib/helpers/userParamHelpers.js index 3ccd80fe..918a9b87 100644 --- a/packages/api/lib/helpers/userParamHelpers.js +++ b/packages/api/lib/helpers/userParamHelpers.js @@ -330,7 +330,7 @@ const validateAndCastParam = function validateAndCastParam ({ value, dataType, a * @apiParam (LocationOption) {Number} [height] Height above ground in meters. * * @apiParamExample {application/json} Location Object: - * { "lat": 51.972, "lng": 7.684, "height": 66.6 } + * { "lng": 7.684, "lat": 51.972, "height": 66.6 } * * @apiParamExample {application/json} Location Array: * [7.684, 51.972, 66.6] From 241699db717554304d4aedc03448aa5bef2f93e3 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Thu, 28 Sep 2023 10:15:06 +0200 Subject: [PATCH 285/337] (docs): document getDataByTag correctly (#819) --- packages/api/lib/controllers/measurementsController.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/api/lib/controllers/measurementsController.js b/packages/api/lib/controllers/measurementsController.js index e7e72ab3..ce4c8863 100644 --- a/packages/api/lib/controllers/measurementsController.js +++ b/packages/api/lib/controllers/measurementsController.js @@ -244,11 +244,13 @@ const getDataMulti = async function getDataMulti (req, res) { /** - * @api {get,post} /boxes/data?grouptag=:grouptag Get latest measurements for a grouptag as JSON + * @api {get} /boxes/data/bytag Get latest measurements for a grouptag as JSON * @apiDescription Download data of a given grouptag from multiple senseBoxes as JSON + * @apiDeprecated Will change in the upcoming release to /boxes/data?grouptag=:grouptag * @apiGroup Measurements * @apiName getDataByGroupTag * @apiParam {String} grouptag The grouptag to search by. + * @apiParam {String=json} format=json */ const getDataByGroupTag = async function getDataByGroupTag (req, res) { const { grouptag, format } = req._userParams; From 8e01cc1478808eac6f240eda9e8e4e87ebd4a94d Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Thu, 28 Sep 2023 10:52:44 +0200 Subject: [PATCH 286/337] Return correct response if user was not updated (#820) * Return correct response if user was not updated * Add test to check updated user --- packages/models/src/user/user.js | 4 ++++ tests/tests/004-users-test.js | 18 ++++++++++++++++++ 2 files changed, 22 insertions(+) diff --git a/packages/models/src/user/user.js b/packages/models/src/user/user.js index 4c729bfe..ea20c648 100644 --- a/packages/models/src/user/user.js +++ b/packages/models/src/user/user.js @@ -539,6 +539,10 @@ userSchema.methods.updateUser = function updateUser ({ email, language, name, cu return user.save(); }) .then(function (updatedUser) { + if (updatedUser.updated === false) { + return updatedUser; + } + return { updated: true, signOut, messages: msgs, updatedUser }; }) .catch(function (err) { diff --git a/tests/tests/004-users-test.js b/tests/tests/004-users-test.js index baf6bfd9..6d8c803f 100644 --- a/tests/tests/004-users-test.js +++ b/tests/tests/004-users-test.js @@ -197,6 +197,24 @@ describe('openSenseMap API Routes: /users', function () { }); }); + it('should return that no changed properties are applied and user remains unchanged', function () { + return chakram + .put( + `${BASE_URL}/users/me`, + { name: 'new Name' }, + { headers: { Authorization: `Bearer ${jwt}` } } + ) + .then(function (response) { + expect(response).to.have.status(200); + expect(response).to.have.json( + 'message', + 'No changed properties supplied. User remains unchanged.' + ); + + return chakram.wait(); + }); + }); + it('should deny to change name to existing name', function () { return chakram.put(`${BASE_URL}/users/me`, { name: 'this is just a nickname', currentPassword: '12345678' }, { headers: { 'Authorization': `Bearer ${jwt}` } }) .then(function (response) { From 54fb29469509e8304e7954947059c3fc3d3fd916 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Fri, 29 Sep 2023 12:12:38 +0200 Subject: [PATCH 287/337] better return types documentation (#821) * Start defining basic return types * Add more success responses and return values --- .../api/lib/controllers/boxesController.js | 90 +++++++++++++++++++ .../lib/controllers/measurementsController.js | 54 +++++++++++ .../api/lib/controllers/sensorsController.js | 21 +++++ 3 files changed, 165 insertions(+) diff --git a/packages/api/lib/controllers/boxesController.js b/packages/api/lib/controllers/boxesController.js index 71875377..f80ab765 100644 --- a/packages/api/lib/controllers/boxesController.js +++ b/packages/api/lib/controllers/boxesController.js @@ -36,6 +36,26 @@ * @apiParam (TTNOption) {Number} [port] The TTN port to listen for messages. Optional, if not provided, all ports are used. */ +/** + * @apiDefine BoxSuccessResponse + * + * @apiSuccess {String} _id unique identifier of this senseBox + * @apiSuccess {String} name the name of this senseBox + * @apiSuccess {String} exposure the exposure of this senseBox + * @apiSuccess {String} model the model of this senseBox + * @apiSuccess {RFC3339Date} lastMeasurementAt timestamp of the lastest measurement of one of the sensors of this senseBox + * @apiSuccess {String} [weblink] external weblink + * @apiSuccess {String} [description] detailed description of the senseBox + * @apiSuccess {RFC3339Date} createdAt timestamp of the creation date of the senseBox + * @apiSuccess {RFC3339Date} updatedAt timestamp of last update of the senseBox + * @apiSuccess {String[]} grouptag the grouptags of this senseBox + * @apiSuccess {Object} currentLocation the coordinates of this senseBox + * @apiSuccess {Coordinates[]} currentLocation.coordinates of the latest location of the senseBox + * @apiSuccess {RFC3339Date} currentLocation.timestamp timestamp of the location + * @apiSuccess {String} currentLocation.coordinates.type type of the coordinates + * @apiSuccess {String} [image] image showing the senseBox + */ + const { Box, User, Claim } = require('@sensebox/opensensemap-api-models'), { addCache, clearCache, checkContentType, redactEmail, postToMattermost } = require('../helpers/apiUtils'), @@ -210,6 +230,72 @@ const geoJsonStringifyReplacer = function geoJsonStringifyReplacer (key, box) { * @apiSampleRequest https://api.opensensemap.org/boxes * @apiSampleRequest https://api.opensensemap.org/boxes?date=2015-03-07T02:50Z&phenomenon=Temperatur * @apiSampleRequest https://api.opensensemap.org/boxes?date=2015-03-07T02:50Z,2015-04-07T02:50Z&phenomenon=Temperatur + * + * @apiSuccessExample {application/json} Example response for :minimal=true + * [ + * { + "_id": "5ee91626dc1438001b473b52", + "name": "Lucht sensor", + "currentLocation": { + "timestamp": "2020-06-16T18:57:42.322Z", + "coordinates": [ + 5.38517, + 51.426135 + ], + "type": "Point" + }, + "exposure": "outdoor", + "lastMeasurementAt": "2020-06-16T20:51:23.414Z" + }, + { + "_id": "5ee92557dc1438001b4d3eee", + "name": "BabCity", + "currentLocation": { + "timestamp": "2020-06-16T20:02:31.083Z", + "coordinates": [ + 4.78833, + 51.936062 + ], + "type": "Point" + }, + "exposure": "outdoor", + "lastMeasurementAt": "2022-01-23T20:14:48.808Z" + } + * ] + + * @apiSuccessExample {application/json} Example response for :minimal=true and :classify=true + * [ + * { + "_id": "5ee91626dc1438001b473b52", + "name": "Lucht sensor", + "currentLocation": { + "timestamp": "2020-06-16T18:57:42.322Z", + "coordinates": [ + 5.38517, + 51.426135 + ], + "type": "Point" + }, + "exposure": "outdoor", + "lastMeasurementAt": "2020-06-16T20:51:23.414Z", + "state": "old" + }, + { + "_id": "5ee92557dc1438001b4d3eee", + "name": "BabCity", + "currentLocation": { + "timestamp": "2020-06-16T20:02:31.083Z", + "coordinates": [ + 4.78833, + 51.936062 + ], + "type": "Point" + }, + "exposure": "outdoor", + "lastMeasurementAt": "2022-01-23T20:14:48.808Z", + "state": "old" + } + * ] */ const getBoxes = async function getBoxes (req, res) { // content-type is always application/json for this route @@ -264,6 +350,10 @@ const getBoxes = async function getBoxes (req, res) { * @apiUse BoxIdParam * @apiParam {String=json,geojson} [format=json] The format the sensor data is returned in. If `geojson`, a GeoJSON Point Feature is returned. * + * @apiUse BoxSuccessResponse + * @apiUse SensorsArray + * @apiUse SensorLastMeasurement + * * @apiSuccessExample Example data on success: * { "_id": "57000b8745fd40c8196ad04c", diff --git a/packages/api/lib/controllers/measurementsController.js b/packages/api/lib/controllers/measurementsController.js index ce4c8863..3bda374c 100644 --- a/packages/api/lib/controllers/measurementsController.js +++ b/packages/api/lib/controllers/measurementsController.js @@ -19,6 +19,23 @@ const { jsonstringify = require('stringify-stream'), { UnauthorizedError, NotFoundError } = require('restify-errors'); +/** + * @apiDefine SensorLastMeasurement + * + * @apiSuccess {Object} sensors.lastMeasurement Object representing the latest measruement + * @apiSuccess {String} sensors.lastMeasurement.value the measured value of the sensor + * @apiSuccess {RFC3339Date} sensor.lastMeasurement.createdAt the timestamp of the measurement + */ + +/** + * @apiDefine MeasurementArray + * + * @apiSuccess {Measurement[]} measurement Array containing queried measurements + * @apiSuccess {String[]} measurement.location + * @apiSuccess {String} measurement.value the measured value of the sensor + * @apiSuccess {RFC3339Date} measurement.createdAt timestamp of the measurement + */ + /** * @api {get} /boxes/:senseBoxId/sensors Get latest measurements of a senseBox * @apiDescription Get the latest measurements of all sensors of the specified senseBox. @@ -26,6 +43,10 @@ const { * @apiName getLatestMeasurements * @apiUse BoxIdParam * @apiParam {NumberNumber=1-100} [count] Number of measurements to be retrieved for every sensor. + * + * @apiSuccess {String} _id unique identifier of this senseBox + * @apiUse SensorsArray + * @apiUse SensorLastMeasurement */ /** * @api {get} /boxes/:senseBoxId/sensors/:sensorId Get latest measurements of a sensor @@ -35,6 +56,9 @@ const { * @apiUse BoxIdParam * @apiUse SensorIdParam * @apiParam {Boolean="true","false"} [onlyValue] If set to true only returns the measured value without information about the sensor. Requires a sensorId. + * + * @apiUse SensorSuccessResponse + * @apiUse SensorLastMeasurement */ const getLatestMeasurements = async function getLatestMeasurements (req, res) { const { _userParams: params } = req; @@ -125,6 +149,36 @@ const jsonLocationReplacer = function jsonLocationReplacer (k, v) { * @apiParam {String="json","csv"} [format=json] Can be 'json' (default) or 'csv' (default: json) * @apiParam {Boolean="true","false"} [download] if specified, the api will set the `content-disposition` header thus forcing browsers to download instead of displaying. Is always true for format csv. * @apiUse SeparatorParam + * + * @apiUse MeasurementArray + * @apiSuccessExample Example data for :format=json + * [ + { + "location": [ + 7, + 52 + ], + "createdAt": "2023-09-29T08:06:13.254Z", + "value": "6.38" + }, + { + "location": [ + 7, + 52 + ], + "createdAt": "2023-09-29T08:06:12.312Z", + "value": "6.38" + } + ] + * + * @apiSuccessExample Example data for :format=csv + * createdAt,value +2023-09-29T08:06:13.254Z,6.38 +2023-09-29T08:06:12.312Z,6.38 +2023-09-29T08:06:11.513Z,6.38 +2023-09-29T08:06:10.380Z,6.38 +2023-09-29T08:06:09.569Z,6.38 +2023-09-29T08:06:05.967Z,6.38 */ const getData = async function getData (req, res) { const { sensorId, format, download, outliers, outlierWindow, delimiter } = req._userParams; diff --git a/packages/api/lib/controllers/sensorsController.js b/packages/api/lib/controllers/sensorsController.js index 554d30fe..61f289a4 100644 --- a/packages/api/lib/controllers/sensorsController.js +++ b/packages/api/lib/controllers/sensorsController.js @@ -20,6 +20,27 @@ const { Box } = require('@sensebox/opensensemap-api-models'), * */ +/** + * @apiDefine SensorSuccessResponse + * + * @apiSuccess {String} sensors._id unique identifier of the sensor + * @apiSuccess {String} sensors.title the title of the phenomenon the sensor observes. + * @apiSuccess {String} sensors.sensorType sensorType the type of the sensor. + * @apiSuccess {String} sensors.unit the unit of the phenomenon the sensor observes. + * @apiSuccess {String} [sensors.icon] the visual representation for the openSenseMap of this sensor. + */ + +/** + * @apiDefine SensorsArray + * + * @apiSuccess {Sensor[]} sensors Array containing sensor objects + * @apiSuccess {String} sensors._id unique identifier of the sensor + * @apiSuccess {String} sensors.title the title of the phenomenon the sensor observes. + * @apiSuccess {String} sensors.sensorType sensorType the type of the sensor. + * @apiSuccess {String} sensors.unit the unit of the phenomenon the sensor observes. + * @apiSuccess {String} [sensors.icon] the visual representation for the openSenseMap of this sensor. + */ + /** * @apiDefine SensorIdParam * From 7c65fe10cc005fa6e0236c1b0965e91e63d4fca4 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Fri, 29 Sep 2023 15:53:37 +0200 Subject: [PATCH 288/337] (feat): add description to postNewBox route (#822) --- .../api/lib/controllers/boxesController.js | 77 +++++++++---------- packages/models/src/box/box.js | 2 + 2 files changed, 40 insertions(+), 39 deletions(-) diff --git a/packages/api/lib/controllers/boxesController.js b/packages/api/lib/controllers/boxesController.js index f80ab765..029546b2 100644 --- a/packages/api/lib/controllers/boxesController.js +++ b/packages/api/lib/controllers/boxesController.js @@ -478,6 +478,7 @@ const getBox = async function getBox (req, res) { * measurements in. The accepted formats are listed under `Measurements/Post mutliple new Measurements` * * @apiParam (RequestBody) {String} name the name of this senseBox. + * @apiParam (RequestBody) {String} [description] detailed description of this senseBox. * @apiParam (RequestBody) {String} [grouptag] the grouptag of this senseBox. * @apiParam (RequestBody) {String="indoor","outdoor","mobile","unknown"} exposure the exposure of this senseBox. * @apiParam (RequestBody) {Location} location the coordinates of this senseBox. @@ -713,47 +714,47 @@ module.exports = { checkContentType, retrieveParameters([ { predef: 'boxId', required: true }, - { predef: 'password' }, + { predef: 'password' } ]), checkPrivilege, - deleteBox, + deleteBox ], getTransfer: [ retrieveParameters([{ predef: 'boxId', required: true }]), checkPrivilege, - getTransfer, + getTransfer ], createTransfer: [ retrieveParameters([ { predef: 'boxId', required: true }, - { predef: 'dateNoDefault' }, + { predef: 'dateNoDefault' } ]), validateDateNotPast, checkPrivilege, - createTransfer, + createTransfer ], updateTransfer: [ retrieveParameters([ { predef: 'boxId', required: true }, { name: 'token', dataType: 'String' }, - { predef: 'dateNoDefault', required: true }, + { predef: 'dateNoDefault', required: true } ]), validateDateNotPast, checkPrivilege, - updateTransfer, + updateTransfer ], removeTransfer: [ retrieveParameters([ { predef: 'boxId', required: true }, - { name: 'token', dataType: 'String' }, + { name: 'token', dataType: 'String' } ]), checkPrivilege, - removeTransfer, + removeTransfer ], claimBox: [ checkContentType, retrieveParameters([{ name: 'token', dataType: 'String' }]), - claimBox, + claimBox ], getSketch: [ retrieveParameters([ @@ -761,32 +762,32 @@ module.exports = { { name: 'serialPort', dataType: 'String', - allowedValues: ['Serial1', 'Serial2'], + allowedValues: ['Serial1', 'Serial2'] }, { name: 'soilDigitalPort', dataType: 'String', - allowedValues: ['A', 'B', 'C'], + allowedValues: ['A', 'B', 'C'] }, { name: 'soundMeterPort', dataType: 'String', - allowedValues: ['A', 'B', 'C'], + allowedValues: ['A', 'B', 'C'] }, { name: 'windSpeedPort', dataType: 'String', - allowedValues: ['A', 'B', 'C'], + allowedValues: ['A', 'B', 'C'] }, { name: 'ssid', dataType: 'StringWithEmpty' }, { name: 'password', dataType: 'StringWithEmpty' }, { name: 'devEUI', dataType: 'StringWithEmpty' }, { name: 'appEUI', dataType: 'StringWithEmpty' }, { name: 'appKey', dataType: 'StringWithEmpty' }, - { name: 'display_enabled', allowedValues: ['true', 'false'] }, + { name: 'display_enabled', allowedValues: ['true', 'false'] } ]), checkPrivilege, - getSketch, + getSketch ], updateBox: [ checkContentType, @@ -804,10 +805,10 @@ module.exports = { { name: 'addons', dataType: 'object' }, { predef: 'location' }, { name: 'useAuth', allowedValues: ['true', 'false'] }, - { name: 'generate_access_token', allowedValues: ['true', 'false'] }, + { name: 'generate_access_token', allowedValues: ['true', 'false'] } ]), checkPrivilege, - updateBox, + updateBox ], // no auth required getBoxLocations: [ @@ -816,18 +817,19 @@ module.exports = { { name: 'format', defaultValue: 'json', - allowedValues: ['json', 'geojson'], + allowedValues: ['json', 'geojson'] }, { predef: 'toDate' }, { predef: 'fromDate' }, - validateFromToTimeParams, + validateFromToTimeParams ]), - getBoxLocations, + getBoxLocations ], postNewBox: [ checkContentType, retrieveParameters([ { name: 'name', required: true }, + { name: 'description', dataType: 'StringWithEmpty' }, { name: 'grouptag', dataType: ['String'], aliases: ['tag'] }, { name: 'exposure', allowedValues: Box.BOX_VALID_EXPOSURES }, { name: 'model', allowedValues: Box.BOX_VALID_MODELS }, @@ -848,31 +850,31 @@ module.exports = { 'scd30', 'dps310', 'sps30' - ], + ] }, { name: 'serialPort', dataType: 'String', defaultValue: 'Serial1', - allowedValues: ['Serial1', 'Serial2'], + allowedValues: ['Serial1', 'Serial2'] }, { name: 'soilDigitalPort', dataType: 'String', defaultValue: 'A', - allowedValues: ['A', 'B', 'C'], + allowedValues: ['A', 'B', 'C'] }, { name: 'soundMeterPort', dataType: 'String', defaultValue: 'B', - allowedValues: ['A', 'B', 'C'], + allowedValues: ['A', 'B', 'C'] }, { name: 'windSpeedPort', dataType: 'String', defaultValue: 'C', - allowedValues: ['A', 'B', 'C'], + allowedValues: ['A', 'B', 'C'] }, { name: 'mqtt', dataType: 'object' }, { name: 'ttn', dataType: 'object' }, @@ -880,7 +882,7 @@ module.exports = { { predef: 'location', required: true }, { name: 'sharedBox', allowedValues: ['true', 'false'] } ]), - postNewBox, + postNewBox ], getBox: [ retrieveParameters([ @@ -888,10 +890,10 @@ module.exports = { { name: 'format', defaultValue: 'json', - allowedValues: ['json', 'geojson'], - }, + allowedValues: ['json', 'geojson'] + } ]), - getBox, + getBox ], getBoxes: [ retrieveParameters([ @@ -900,7 +902,7 @@ module.exports = { { name: 'exposure', allowedValues: Box.BOX_VALID_EXPOSURES, - dataType: ['String'], + dataType: ['String'] }, { name: 'model', dataType: ['StringWithEmpty'] }, { name: 'grouptag', dataType: ['StringWithEmpty'] }, @@ -909,29 +911,26 @@ module.exports = { { name: 'format', defaultValue: 'json', - allowedValues: ['json', 'geojson'], + allowedValues: ['json', 'geojson'] }, { name: 'classify', defaultValue: 'false', - allowedValues: ['true', 'false'], + allowedValues: ['true', 'false'] }, { name: 'minimal', defaultValue: 'false', - allowedValues: ['true', 'false'], + allowedValues: ['true', 'false'] }, { name: 'full', defaultValue: 'false', allowedValues: ['true', 'false'] }, { predef: 'near' }, { name: 'maxDistance' }, - { predef: 'bbox' }, + { predef: 'bbox' } ]), parseAndValidateTimeParamsForFindAllBoxes, addCache('5 minutes', 'getBoxes'), getBoxes ], - getAllTags: [ - addCache('5 minutes', 'getAllTags'), - getAllTags - ] + getAllTags: [addCache('5 minutes', 'getAllTags'), getAllTags] }; diff --git a/packages/models/src/box/box.js b/packages/models/src/box/box.js index 0ec698eb..993b0715 100644 --- a/packages/models/src/box/box.js +++ b/packages/models/src/box/box.js @@ -220,6 +220,7 @@ boxSchema.post('save', function boxPostSave (savedBox) { // initializes and saves new box document boxSchema.statics.initNew = function ({ name, + description, location, grouptag, exposure, @@ -279,6 +280,7 @@ boxSchema.statics.initNew = function ({ // create box document and persist in database return this.create({ name, + description, currentLocation: boxLocation, locations: [boxLocation], grouptag, From a05420b1fb994a628d5dd07ddb721d405f8c0187 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Mon, 2 Oct 2023 10:55:12 +0200 Subject: [PATCH 289/337] Update mongoose to latest v5 (#813) * Update mongoose to latest v5 * Update validator for sensors array in box schema * Update ttnSchema validator * return new box * return newly created device * tweak before hook * Clean up tests --- packages/models/package.json | 2 +- packages/models/src/box/box.js | 186 ++++++++------- packages/models/src/box/integrations.js | 2 +- packages/models/src/db.js | 4 +- packages/models/test/tests/0-user.js | 27 ++- yarn.lock | 300 +++++++++++++----------- 6 files changed, 283 insertions(+), 238 deletions(-) diff --git a/packages/models/package.json b/packages/models/package.json index 171d939d..2ce02370 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -17,7 +17,7 @@ "jsonpath": "^1.1.1", "lodash.isequal": "^4.5.0", "moment": "^2.29.4", - "mongoose": "^4.13.21", + "mongoose": "^5.13.20", "mongoose-timestamp": "^0.6", "pino": "^8.8.0", "uuid": "^8.3.2" diff --git a/packages/models/src/box/box.js b/packages/models/src/box/box.js index 993b0715..a29100bd 100644 --- a/packages/models/src/box/box.js +++ b/packages/models/src/box/box.js @@ -44,95 +44,113 @@ const locationSchema = new Schema({ }); //senseBox schema -const boxSchema = new Schema({ - name: { - type: String, - required: true, - trim: true - }, - locations: { - type: [locationSchema], - required: true, - }, - currentLocation: { - type: locationSchema, - required: true, - }, - exposure: { - type: String, - trim: true, - required: true, - enum: ['unknown', 'indoor', 'outdoor', 'mobile'] - }, - grouptag: { - type: [String], // Default value for array is [] (empty array) - trim: true, - required: false - }, - model: { - type: String, - required: true, - trim: true, - default: 'custom', - enum: ['custom', ...sensorLayouts.models] - }, - weblink: { - type: String, - trim: true, - required: false - }, - description: { - type: String, - trim: true, - required: false - }, - image: { - type: String, - trim: true, - required: false, - /* eslint-disable func-name-matching */ - set: function imageSetter ({ type, data, deleteImage }) { - /* eslint-enable func-name-matching */ - if (type && data) { - const filename = `${this._id}_${Math.round(Date.now() / 1000).toString(36)}.${type}`; - try { - fs.writeFileSync(`${imageFolder}${filename}`, data); - } catch (err) { - log.warn(err); - - return; - } +const boxSchema = new Schema( + { + name: { + type: String, + required: true, + trim: true + }, + locations: { + type: [locationSchema], + required: true + }, + currentLocation: { + type: locationSchema, + required: true + }, + exposure: { + type: String, + trim: true, + required: true, + enum: ['unknown', 'indoor', 'outdoor', 'mobile'] + }, + grouptag: { + type: [String], // Default value for array is [] (empty array) + trim: true, + required: false + }, + model: { + type: String, + required: true, + trim: true, + default: 'custom', + enum: ['custom', ...sensorLayouts.models] + }, + weblink: { + type: String, + trim: true, + required: false + }, + description: { + type: String, + trim: true, + required: false + }, + image: { + type: String, + trim: true, + required: false, + /* eslint-disable func-name-matching */ + set: function imageSetter ({ type, data, deleteImage }) { + /* eslint-enable func-name-matching */ + if (type && data) { + const filename = `${this._id}_${Math.round( + Date.now() / 1000 + ).toString(36)}.${type}`; + try { + fs.writeFileSync(`${imageFolder}${filename}`, data); + } catch (err) { + log.warn(err); + + return; + } - return filename; - } else if (deleteImage === true) { - if (this.image) { - const oldFilename = `${imageFolder}${this.image}`; - const extensionToUse = this.image.slice(this.image.lastIndexOf('.')); - const newFilename = `${imageFolder}${Buffer.from((Buffer.from(`${Math.random().toString(36) - .slice(2)}${Date.now()}`).toString('base64'))).toString('hex')}${extensionToUse}`; - fs.rename(oldFilename, newFilename, () => {}); + return filename; + } else if (deleteImage === true) { + if (this.image) { + const oldFilename = `${imageFolder}${this.image}`; + const extensionToUse = this.image.slice( + this.image.lastIndexOf('.') + ); + const newFilename = `${imageFolder}${Buffer.from( + Buffer.from( + `${Math.random().toString(36) + .slice(2)}${Date.now()}` + ).toString('base64') + ).toString('hex')}${extensionToUse}`; + fs.rename(oldFilename, newFilename, () => {}); + } } } + }, + sensors: { + type: [sensorSchema], + // required: [true, 'sensors are required if model is invalid or missing.'], + // https://github.com/Automattic/mongoose/issues/5139#issuecomment-429990002 + validate: { + validator: (v) => { + return v === null || v.length > 0; + }, + message: () => 'sensors are required if model is invalid or missing.' + } + }, + lastMeasurementAt: { + type: Date, + required: false + }, + access_token: { + type: String, + required: true + }, + useAuth: { + type: Boolean, + required: true, + default: false } }, - sensors: { - type: [sensorSchema], - required: [true, 'sensors are required if model is invalid or missing.'], - }, - lastMeasurementAt: { - type: Date, - required: false - }, - access_token: { - type: String, - required: true - }, - useAuth: { - type: Boolean, - required: true, - default: false, - } -}, { usePushEach: true }); + { usePushEach: true } +); boxSchema.plugin(timestamp); const BOX_PROPS_FOR_POPULATION = { diff --git a/packages/models/src/box/integrations.js b/packages/models/src/box/integrations.js index 856f8203..1f227d37 100644 --- a/packages/models/src/box/integrations.js +++ b/packages/models/src/box/integrations.js @@ -57,7 +57,7 @@ const integrationSchema = new mongoose.Schema({ validator: function validTTNDecodeOptions (ttn) { /* eslint-enable func-name-matching */ if (['debug', 'lora-serialization', 'cayenne-lpp'].indexOf(ttn.profile) !== -1) { - return (ttn.decodeOptions && ttn.decodeOptions.constructor === Array); + return (ttn.decodeOptions && Array.isArray(ttn.decodeOptions)); } }, msg: 'this profile requires an array \'decodeOptions\'' diff --git a/packages/models/src/db.js b/packages/models/src/db.js index 9da12e74..cf12a50a 100644 --- a/packages/models/src/db.js +++ b/packages/models/src/db.js @@ -38,8 +38,8 @@ const connect = function connect (uri) { return new Promise(function (resolve, reject) { mongoose .connect(uri, { - useMongoClient: true, - reconnectTries: Number.MAX_VALUE, + useNewUrlParser: true, + useUnifiedTopology: true, promiseLibrary: global.Promise }) .then(function () { diff --git a/packages/models/test/tests/0-user.js b/packages/models/test/tests/0-user.js index 382067fb..e1f2793f 100644 --- a/packages/models/test/tests/0-user.js +++ b/packages/models/test/tests/0-user.js @@ -15,6 +15,18 @@ const shouldNotHappenThenner = function (err) { expect(false).true; }; +const getDevices = function () { + const boxes = [ + senseBox({ name: 'sb1' }), + senseBox({ name: 'sb2' }), + senseBox({ name: 'sb3' }) + ]; + + return new Promise((resolve) => { + setTimeout(() => resolve(boxes), 200); + }); +}; + describe('User model', function () { before(function () { return connect(dbConnectionString({ db: 'userTest' })) @@ -506,15 +518,14 @@ describe('User model', function () { }); describe('Box management', function () { - const boxes = [senseBox({ name: 'sb1' }), senseBox({ name: 'sb2' }), senseBox({ name: 'sb3' })]; let userBoxes; - before(function () { - return User.findOne({ name: 'Valid Username 2' }) - .then(function (user) { - return Promise.all(boxes.map(function (box) { - return user.addBox(box); - })); - }); + before(async function () { + const user = await User.findOne({ name: 'Valid Username 2' }); + + const devices = await getDevices(); + for (const device of devices) { + await user.addBox(device); + } }); it('should allow to get all boxes with all details of a user', function () { diff --git a/yarn.lock b/yarn.lock index b1fc67f0..03acdc4b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -351,6 +351,20 @@ "@turf/helpers" "^6.3.0" "@turf/intersect" "^6.3.0" +"@types/bson@*": + version "4.2.0" + resolved "https://registry.yarnpkg.com/@types/bson/-/bson-4.2.0.tgz#a2f71e933ff54b2c3bf267b67fa221e295a33337" + integrity sha512-ELCPqAdroMdcuxqwMgUpifQyRoTpyYCNr1V9xKyF40VsBobsj+BbWNRvwGchMgBPGqkw655ypkjj2MEF5ywVwg== + dependencies: + bson "*" + +"@types/bson@1.x || 4.0.x": + version "4.0.5" + resolved "https://registry.yarnpkg.com/@types/bson/-/bson-4.0.5.tgz#9e0e1d1a6f8866483f96868a9b33bc804926b1fc" + integrity sha512-vVLwMUqhYJSQ/WKcE60eFqcyuWse5fGH+NMAXHuKrUAPoryq3ATxk5o4bgYNtg5aOM4APVg7Hnb3ASqUYG0PKg== + dependencies: + "@types/node" "*" + "@types/cacheable-request@^6.0.1": version "6.0.1" resolved "https://registry.yarnpkg.com/@types/cacheable-request/-/cacheable-request-6.0.1.tgz#5d22f3dded1fd3a84c0bbeb5039a7419c2c91976" @@ -393,6 +407,14 @@ resolved "https://registry.yarnpkg.com/@types/long/-/long-4.0.1.tgz#459c65fa1867dafe6a8f322c4c51695663cc55e9" integrity sha512-5tXH6Bx/kNGd3MgffdmP4dy2Z+G4eaXw0SE81Tq3BNadtnMR5/ySMzX4SLEzHJzSmPNn4HIdpQsBvXMUykr58w== +"@types/mongodb@^3.5.27": + version "3.6.20" + resolved "https://registry.yarnpkg.com/@types/mongodb/-/mongodb-3.6.20.tgz#b7c5c580644f6364002b649af1c06c3c0454e1d2" + integrity sha512-WcdpPJCakFzcWWD9juKoZbRtQxKIMYF/JIAM4JrNHrMcnJL6/a2NWjXxW7fo9hxboxxkg+icff8d7+WIEvKgYQ== + dependencies: + "@types/bson" "*" + "@types/node" "*" + "@types/node@*": version "13.13.4" resolved "https://registry.yarnpkg.com/@types/node/-/node-13.13.4.tgz#1581d6c16e3d4803eb079c87d4ac893ee7501c2c" @@ -572,13 +594,6 @@ astral-regex@^2.0.0: resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-2.0.0.tgz#483143c567aeed4785759c0865786dc77d7d2e31" integrity sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ== -async@2.6.0: - version "2.6.0" - resolved "https://registry.yarnpkg.com/async/-/async-2.6.0.tgz#61a29abb6fcc026fea77e56d1c6ec53a795951f4" - integrity sha512-xAfGg1/NTLBBKlHFmnd7PlmUW9KhVQIUuSrYem9xzFUZy13ScvtyGGejaae9iAVRiRq9+Cx7DPFaAAhCpyxyPw== - dependencies: - lodash "^4.14.0" - asynckit@^0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" @@ -629,6 +644,14 @@ binary-extensions@^2.0.0: resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.0.0.tgz#23c0df14f6a88077f5f986c0d167ec03c3d5537c" integrity sha512-Phlt0plgpIIBOGTT/ehfFnbNlfsDEiqmzE2KRXoX1bLIlir4X/MR+zSyBEkL05ffWgnRSf/DXv+WrUAVr93/ow== +bl@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/bl/-/bl-2.2.1.tgz#8c11a7b730655c5d56898cdc871224f40fd901d5" + integrity sha512-6Pesp1w0DEX1N550i/uGV/TqucVL4AM/pgThFSN/Qq9si1/DF9aIHs1BxD8V/QU0HoeHO6cQRTAuYnLPKq1e4g== + dependencies: + readable-stream "^2.3.5" + safe-buffer "^5.1.1" + bl@^4.0.2: version "4.1.0" resolved "https://registry.yarnpkg.com/bl/-/bl-4.1.0.tgz#451535264182bec2fbbc83a62ab98cf11d9f7b3a" @@ -638,10 +661,10 @@ bl@^4.0.2: inherits "^2.0.4" readable-stream "^3.4.0" -bluebird@3.5.0: - version "3.5.0" - resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.0.tgz#791420d7f551eea2897453a8a77653f96606d67c" - integrity sha1-eRQg1/VR7qKJdFOop3ZT+WYG1nw= +bluebird@3.5.1: + version "3.5.1" + resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.1.tgz#d9551f9de98f1fcda1e683d17ee91a0602ee2eb9" + integrity sha512-MKiLiV+I1AA596t9w1sQJ8jkiSr5+ZKi0WKrYGUn6d1Fx+Ij4tIj+m2WMQSGczs5jZVxV339chE8iwk6F64wjA== boolbase@^1.0.0: version "1.0.0" @@ -675,10 +698,15 @@ browser-stdout@1.3.1: resolved "https://registry.yarnpkg.com/browser-stdout/-/browser-stdout-1.3.1.tgz#baa559ee14ced73452229bad7326467c61fabd60" integrity sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw== -bson@~1.0.4: - version "1.0.9" - resolved "https://registry.yarnpkg.com/bson/-/bson-1.0.9.tgz#12319f8323b1254739b7c6bef8d3e89ae05a2f57" - integrity sha512-IQX9/h7WdMBIW/q/++tGd+emQr0XMdeZ6icnT/74Xk9fnabWn+gZgpE+9V+gujL3hhJOoNrnDVY7tWdzc7NUTg== +bson@*: + version "6.1.0" + resolved "https://registry.yarnpkg.com/bson/-/bson-6.1.0.tgz#ea7c98b90540e1632173da6b1f70187827e6ae8c" + integrity sha512-yiQ3KxvpVoRpx1oD1uPz4Jit9tAVTJgjdmjDKtUErkOoL9VNoF8Dd58qtAOL5E40exx2jvAT9sqdRSK/r+SHlA== + +bson@^1.1.4: + version "1.1.6" + resolved "https://registry.yarnpkg.com/bson/-/bson-1.1.6.tgz#fb819be9a60cd677e0853aee4ca712a785d6618a" + integrity sha512-EvVNVeGo4tHxwi8L6bPj3y3itEvStdwvvlojVxxbyYfoaxJ6keLgrTuKdyfEAszFK+H3olzBuafE0yoh0D1gdg== buffer-equal-constant-time@1.0.1: version "1.0.1" @@ -690,7 +718,7 @@ buffer-from@^1.0.0: resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.1.tgz#32713bc028f75c02fdb710d7c7bcec1f2c6070ef" integrity sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A== -buffer-shims@^1.0.0, buffer-shims@~1.0.0: +buffer-shims@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/buffer-shims/-/buffer-shims-1.0.0.tgz#9978ce317388c649ad8793028c3477ef044a8b51" integrity sha1-mXjOMXOIxkmth5MCjDR37wRKi1E= @@ -1099,6 +1127,13 @@ debug@2.6.9: dependencies: ms "2.0.0" +debug@3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261" + integrity sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g== + dependencies: + ms "2.0.0" + debug@4, debug@^4.1.0, debug@^4.3.4: version "4.3.4" resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" @@ -1178,6 +1213,11 @@ delegates@^1.0.0: resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" integrity sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ== +denque@^1.4.1: + version "1.5.1" + resolved "https://registry.yarnpkg.com/denque/-/denque-1.5.1.tgz#07f670e29c9a78f8faecb2566a1e2c11929c5cbf" + integrity sha512-XwE+iZ4D6ZUB7mfYRMb5wByE8L74HCn30FBN7sWnXksWc1LO1bPDl67pBR9o/kC4z/xSNAwkMYcGgqDV3BE3Hw== + denque@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/denque/-/denque-2.1.0.tgz#e93e1a6569fb5e66f16a3c2a2964617d349d6ab1" @@ -1328,11 +1368,6 @@ eol@^0.9.1: resolved "https://registry.yarnpkg.com/eol/-/eol-0.9.1.tgz#f701912f504074be35c6117a5c4ade49cd547acd" integrity sha512-Ds/TEoZjwggRoz/Q2O7SE3i4Jm66mqTDfmdHdq/7DKVk3bro9Q8h6WdXKdPqFLMoqxrDK5SVRzHVPOS6uuGtrg== -es6-promise@3.2.1: - version "3.2.1" - resolved "https://registry.yarnpkg.com/es6-promise/-/es6-promise-3.2.1.tgz#ec56233868032909207170c39448e24449dd1fc4" - integrity sha1-7FYjOGgDKQkgcXDDlEjiREndH8Q= - escalade@^3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" @@ -1893,11 +1928,6 @@ honeybadger@^1.4.0: request "~2.88.0" stack-trace "~0.0.9" -hooks-fixed@2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/hooks-fixed/-/hooks-fixed-2.0.2.tgz#20076daa07e77d8a6106883ce3f1722e051140b0" - integrity sha512-YurCM4gQSetcrhwEtpQHhQ4M7Zo7poNGqY4kQGeBS6eZtOcT3tnNs01ThFa0jYBByAiYt1MjMjP/YApG0EnAvQ== - hpack.js@^2.1.6: version "2.1.6" resolved "https://registry.yarnpkg.com/hpack.js/-/hpack.js-2.1.6.tgz#87774c0949e513f42e84575b3c45681fade2a0b2" @@ -2230,10 +2260,10 @@ jws@^3.2.2: jwa "^1.4.1" safe-buffer "^5.0.1" -kareem@1.5.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/kareem/-/kareem-1.5.0.tgz#e3e4101d9dcfde299769daf4b4db64d895d17448" - integrity sha1-4+QQHZ3P3imXadr0tNtk2JXRdEg= +kareem@2.3.2: + version "2.3.2" + resolved "https://registry.yarnpkg.com/kareem/-/kareem-2.3.2.tgz#78c4508894985b8d38a0dc15e1a8e11078f2ca93" + integrity sha512-STHz9P7X2L4Kwn72fA4rGyqyXdmrMSdxqHx9IXon/FXluXieaFA6KJ2upcHAHxQPQ0LeM/OjLrhFxifHewOALQ== keyv@^4.0.0: version "4.0.0" @@ -2280,11 +2310,6 @@ lodash.defaults@^4.2.0: resolved "https://registry.yarnpkg.com/lodash.defaults/-/lodash.defaults-4.2.0.tgz#d09178716ffea4dde9e5fb7b37f6f0802274580c" integrity sha512-qjxPLHd3r5DnsdGacqOMU6pb/avJzdh9tFX2ymgoZE27BmjXrNy/y4LoaiTeAb+O3gL8AfpJGtqfX/ae2leYYQ== -lodash.get@4.4.2: - version "4.4.2" - resolved "https://registry.yarnpkg.com/lodash.get/-/lodash.get-4.4.2.tgz#2d177f652fa31e939b4438d5341499dfa3825e99" - integrity sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk= - lodash.isarguments@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz#2f573d85c6a24289ff00663b491c1d338ff3458a" @@ -2295,7 +2320,7 @@ lodash.isequal@^4.5.0: resolved "https://registry.yarnpkg.com/lodash.isequal/-/lodash.isequal-4.5.0.tgz#415c4478f2bcc30120c22ce10ed3226f7d3e18e0" integrity sha1-QVxEePK8wwEgwizhDtMib30+GOA= -lodash@^4.14.0, lodash@^4.17.11, lodash@^4.17.15, lodash@^4.17.20, lodash@^4.17.21: +lodash@^4.17.11, lodash@^4.17.15, lodash@^4.17.20, lodash@^4.17.21: version "4.17.21" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== @@ -2341,6 +2366,11 @@ make-dir@^3.1.0: dependencies: semver "^6.0.0" +memory-pager@^1.0.2: + version "1.5.0" + resolved "https://registry.yarnpkg.com/memory-pager/-/memory-pager-1.5.0.tgz#d8751655d22d384682741c972f2c3d6dfa3e66b5" + integrity sha512-ZS4Bp4r/Zoeq6+NLJpP+0Zzm0pR8whtGPf1XExKLJBAczGMnSi3It14OiNCStjQjM6NU1okjQGSxgEZN8eBYKg== + methods@^1.1.1, methods@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" @@ -2485,22 +2515,23 @@ moment@^2.29.4: resolved "https://registry.yarnpkg.com/moment/-/moment-2.29.4.tgz#3dbe052889fe7c1b2ed966fcb3a77328964ef108" integrity sha512-5LC9SOxjSc2HF6vO2CyuTDNivEdoz2IvyJJGj6X8DJ0eFyfszE0QiEd+iXmBvUP3WHxSjFH/vIsA0EN00cgr8w== -mongodb-core@2.1.18: - version "2.1.18" - resolved "https://registry.yarnpkg.com/mongodb-core/-/mongodb-core-2.1.18.tgz#4c46139bdf3a1f032ded91db49f38eec01659050" - integrity sha1-TEYTm986HwMt7ZHbSfOO7AFlkFA= +mongodb@3.7.4: + version "3.7.4" + resolved "https://registry.yarnpkg.com/mongodb/-/mongodb-3.7.4.tgz#119530d826361c3e12ac409b769796d6977037a4" + integrity sha512-K5q8aBqEXMwWdVNh94UQTwZ6BejVbFhh1uB6c5FKtPE9eUMZPUO3sRZdgIEcHSrAWmxzpG/FeODDKL388sqRmw== dependencies: - bson "~1.0.4" - require_optional "~1.0.0" + bl "^2.2.1" + bson "^1.1.4" + denque "^1.4.1" + optional-require "^1.1.8" + safe-buffer "^5.1.2" + optionalDependencies: + saslprep "^1.0.0" -mongodb@2.2.34: - version "2.2.34" - resolved "https://registry.yarnpkg.com/mongodb/-/mongodb-2.2.34.tgz#a34f59bbeb61754aec432de72c3fe21526a44c1a" - integrity sha1-o09Zu+thdUrsQy3nLD/iFSakTBo= - dependencies: - es6-promise "3.2.1" - mongodb-core "2.1.18" - readable-stream "2.2.7" +mongoose-legacy-pluralize@1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/mongoose-legacy-pluralize/-/mongoose-legacy-pluralize-1.0.2.tgz#3ba9f91fa507b5186d399fb40854bff18fb563e4" + integrity sha512-Yo/7qQU4/EyIS8YDFSeenIvXxZN+ld7YdV9LqFVQJzTLye8unujAWPZ4NWKfFA+RNjh+wvTWKY9Z3E5XM6ZZiQ== mongoose-timestamp@^0.6: version "0.6.0" @@ -2509,34 +2540,30 @@ mongoose-timestamp@^0.6: dependencies: defaults "^1.0.3" -mongoose@^4.13.21: - version "4.13.21" - resolved "https://registry.yarnpkg.com/mongoose/-/mongoose-4.13.21.tgz#83f4a8461b19aca1b2274feaaaf262b71b6f034d" - integrity sha512-0VZtQu1rSUPwUtbb7zh6CymI0nNkVInOIDbtWNlna070qnUO14On8PpSVSwlx3gwmkKL2OkP4ioCj5YHC6trMg== - dependencies: - async "2.6.0" - bson "~1.0.4" - hooks-fixed "2.0.2" - kareem "1.5.0" - lodash.get "4.4.2" - mongodb "2.2.34" - mpath "0.5.1" - mpromise "0.5.5" - mquery "2.3.3" - ms "2.0.0" - muri "1.3.0" - regexp-clone "0.0.1" +mongoose@^5.13.20: + version "5.13.20" + resolved "https://registry.yarnpkg.com/mongoose/-/mongoose-5.13.20.tgz#247d3b2c6c4c4b71779d07dda0c72e1bd48a7370" + integrity sha512-TjGFa/XnJYt+wLmn8y9ssjyO2OhBMeEBtOHb9iJM16EWu2Du6L1Q6zSiEK2ziyYQM8agb4tumNIQFzqbxId7MA== + dependencies: + "@types/bson" "1.x || 4.0.x" + "@types/mongodb" "^3.5.27" + bson "^1.1.4" + kareem "2.3.2" + mongodb "3.7.4" + mongoose-legacy-pluralize "1.0.2" + mpath "0.8.4" + mquery "3.2.5" + ms "2.1.2" + optional-require "1.0.x" + regexp-clone "1.0.0" + safe-buffer "5.2.1" + sift "13.5.2" sliced "1.0.1" -mpath@0.5.1: - version "0.5.1" - resolved "https://registry.yarnpkg.com/mpath/-/mpath-0.5.1.tgz#17131501f1ff9e6e4fbc8ffa875aa7065b5775ab" - integrity sha512-H8OVQ+QEz82sch4wbODFOz+3YQ61FYz/z3eJ5pIdbMEaUzDqA268Wd+Vt4Paw9TJfvDgVKaayC0gBzMIw2jhsg== - -mpromise@0.5.5: - version "0.5.5" - resolved "https://registry.yarnpkg.com/mpromise/-/mpromise-0.5.5.tgz#f5b24259d763acc2257b0a0c8c6d866fd51732e6" - integrity sha1-9bJCWddjrMIlewoMjG2Gb9UXMuY= +mpath@0.8.4: + version "0.8.4" + resolved "https://registry.yarnpkg.com/mpath/-/mpath-0.8.4.tgz#6b566d9581621d9e931dd3b142ed3618e7599313" + integrity sha512-DTxNZomBcTWlrMW76jy1wvV37X/cNNxPW1y2Jzd4DZkAaC5ZGsm8bfGfNOthcDuRJujXLqiuS6o3Tpy0JEoh7g== mqtt-packet@^6.8.0: version "6.10.0" @@ -2567,15 +2594,16 @@ mqtt@^4.2.8: ws "^7.5.0" xtend "^4.0.2" -mquery@2.3.3: - version "2.3.3" - resolved "https://registry.yarnpkg.com/mquery/-/mquery-2.3.3.tgz#221412e5d4e7290ca5582dd16ea8f190a506b518" - integrity sha512-NC8L14kn+qxJbbJ1gbcEMDxF0sC3sv+1cbRReXXwVvowcwY1y9KoVZFq0ebwARibsadu8lx8nWGvm3V0Pf0ZWQ== +mquery@3.2.5: + version "3.2.5" + resolved "https://registry.yarnpkg.com/mquery/-/mquery-3.2.5.tgz#8f2305632e4bb197f68f60c0cffa21aaf4060c51" + integrity sha512-VjOKHHgU84wij7IUoZzFRU07IAxd5kWJaDmyUzQlbjHjyoeK5TNeeo8ZsFDtTYnSgpW6n/nMNIHvE3u8Lbrf4A== dependencies: - bluebird "3.5.0" - debug "2.6.9" - regexp-clone "0.0.1" - sliced "0.0.5" + bluebird "3.5.1" + debug "3.1.0" + regexp-clone "^1.0.0" + safe-buffer "5.1.2" + sliced "1.0.1" ms@2.0.0: version "2.0.0" @@ -2613,11 +2641,6 @@ msgpackr@^1.6.2: optionalDependencies: msgpackr-extract "^3.0.1" -muri@1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/muri/-/muri-1.3.0.tgz#aeccf3db64c56aa7c5b34e00f95b7878527a4721" - integrity sha512-FiaFwKl864onHFFUV/a2szAl7X0fxVlSKNdhTf+BM8i8goEgYut8u5P9MqQqIYwvaMxjzVESsoEm/2kfkFH1rg== - nan@^2.14.0: version "2.14.1" resolved "https://registry.yarnpkg.com/nan/-/nan-2.14.1.tgz#d7be34dfa3105b91494c3147089315eff8874b01" @@ -2728,6 +2751,18 @@ once@^1.3.0, once@^1.3.1, once@^1.4.0: dependencies: wrappy "1" +optional-require@1.0.x: + version "1.0.3" + resolved "https://registry.yarnpkg.com/optional-require/-/optional-require-1.0.3.tgz#275b8e9df1dc6a17ad155369c2422a440f89cb07" + integrity sha512-RV2Zp2MY2aeYK5G+B/Sps8lW5NHAzE5QClbFP15j+PWmP+T9PxlJXBOOLoSAdgwFvS4t0aMR4vpedMkbHfh0nA== + +optional-require@^1.1.8: + version "1.1.8" + resolved "https://registry.yarnpkg.com/optional-require/-/optional-require-1.1.8.tgz#16364d76261b75d964c482b2406cb824d8ec44b7" + integrity sha512-jq83qaUb0wNg9Krv1c5OQ+58EK+vHde6aBPzLvPPqJm89UQWsvSuFy9X/OSNJnFeSOKo7btE0n8Nl2+nE+z5nA== + dependencies: + require-at "^1.0.6" + optionator@^0.8.1: version "0.8.3" resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.3.tgz#84fa1d036fe9d3c7e21d99884b601167ec8fb495" @@ -3016,19 +3051,6 @@ rbush@^2.0.0: dependencies: quickselect "^1.0.1" -readable-stream@2.2.7: - version "2.2.7" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.2.7.tgz#07057acbe2467b22042d36f98c5ad507054e95b1" - integrity sha1-BwV6y+JGeyIELTb5jFrVBwVOlbE= - dependencies: - buffer-shims "~1.0.0" - core-util-is "~1.0.0" - inherits "~2.0.1" - isarray "~1.0.0" - process-nextick-args "~1.0.6" - string_decoder "~1.0.0" - util-deprecate "~1.0.1" - readable-stream@^2.0.1, readable-stream@^2.3.5: version "2.3.7" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57" @@ -3098,10 +3120,10 @@ redis-parser@^3.0.0: dependencies: redis-errors "^1.0.0" -regexp-clone@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/regexp-clone/-/regexp-clone-0.0.1.tgz#a7c2e09891fdbf38fbb10d376fb73003e68ac589" - integrity sha1-p8LgmJH9vzj7sQ03b7cwA+aKxYk= +regexp-clone@1.0.0, regexp-clone@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/regexp-clone/-/regexp-clone-1.0.0.tgz#222db967623277056260b992626354a04ce9bf63" + integrity sha512-TuAasHQNamyyJ2hb97IuBEif4qBHGjPHBS64sZwytpLEqtBQ1gPJTnOaQ6qmpET16cK14kkjbazl6+p0RRv0yw== regexpp@^3.1.0: version "3.1.0" @@ -3146,6 +3168,11 @@ request@2.x.x, request@~2.88.0: tunnel-agent "^0.6.0" uuid "^3.3.2" +require-at@^1.0.6: + version "1.0.6" + resolved "https://registry.yarnpkg.com/require-at/-/require-at-1.0.6.tgz#9eb7e3c5e00727f5a4744070a7f560d4de4f6e6a" + integrity sha512-7i1auJbMUrXEAZCOQ0VNJgmcT2VOKPRl2YGJwgpHpC9CE91Mv4/4UYIUm4chGJaI381ZDq1JUicFii64Hapd8g== + require-directory@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" @@ -3156,24 +3183,11 @@ require-from-string@^2.0.2: resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909" integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw== -require_optional@~1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/require_optional/-/require_optional-1.0.1.tgz#4cf35a4247f64ca3df8c2ef208cc494b1ca8fc2e" - integrity sha512-qhM/y57enGWHAe3v/NcwML6a3/vfESLe/sGM2dII+gEO0BpKRUkWZow/tyloNqJyN6kXSl3RyyM8Ll5D/sJP8g== - dependencies: - resolve-from "^2.0.0" - semver "^5.1.0" - resolve-alpn@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/resolve-alpn/-/resolve-alpn-1.0.0.tgz#745ad60b3d6aff4b4a48e01b8c0bdc70959e0e8c" integrity sha512-rTuiIEqFmGxne4IovivKSDzld2lWW9QCjqv80SYjPgf+gS35eaCAjaP54CCwGAwBtnCsvNLYtqxe1Nw+i6JEmA== -resolve-from@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-2.0.0.tgz#9480ab20e94ffa1d9e80a804c7ea147611966b57" - integrity sha1-lICrIOlP+h2egKgEx+oUdhGWa1c= - resolve-from@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" @@ -3238,16 +3252,16 @@ rimraf@^3.0.2: dependencies: glob "^7.1.3" -safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.2, safe-buffer@^5.2.1, safe-buffer@~5.2.0: - version "5.2.1" - resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" - integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== - -safe-buffer@~5.1.0, safe-buffer@~5.1.1: +safe-buffer@5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: version "5.1.2" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== +safe-buffer@5.2.1, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@^5.2.1, safe-buffer@~5.2.0: + version "5.2.1" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" + integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== + safe-json-stringify@^1.0.4: version "1.2.0" resolved "https://registry.yarnpkg.com/safe-json-stringify/-/safe-json-stringify-1.2.0.tgz#356e44bc98f1f93ce45df14bcd7c01cda86e0afd" @@ -3270,16 +3284,18 @@ safe-stable-stringify@^2.3.1: resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== +saslprep@^1.0.0: + version "1.0.3" + resolved "https://registry.yarnpkg.com/saslprep/-/saslprep-1.0.3.tgz#4c02f946b56cf54297e347ba1093e7acac4cf226" + integrity sha512-/MY/PEMbk2SuY5sScONwhUDsV2p77Znkb/q3nSVstq/yQzYJOH/Azh29p9oJLsl3LnQwSvZDKagDGBsBwSooag== + dependencies: + sparse-bitfield "^3.0.3" + select-hose@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/select-hose/-/select-hose-2.0.0.tgz#625d8658f865af43ec962bfc376a37359a4994ca" integrity sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg== -semver@^5.1.0: - version "5.7.1" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" - integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== - semver@^6.0.0: version "6.3.0" resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" @@ -3349,6 +3365,11 @@ side-channel@^1.0.4: get-intrinsic "^1.0.2" object-inspect "^1.9.0" +sift@13.5.2: + version "13.5.2" + resolved "https://registry.yarnpkg.com/sift/-/sift-13.5.2.tgz#24a715e13c617b086166cd04917d204a591c9da6" + integrity sha512-+gxdEOMA2J+AI+fVsCqeNn7Tgx3M9ZN9jdi95939l1IJ8cZsqS8sqpJyOkic2SJk+1+98Uwryt/gL6XDaV+UZA== + signal-exit@^3.0.0: version "3.0.7" resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" @@ -3368,11 +3389,6 @@ slice-ansi@^4.0.0: astral-regex "^2.0.0" is-fullwidth-code-point "^3.0.0" -sliced@0.0.5: - version "0.0.5" - resolved "https://registry.yarnpkg.com/sliced/-/sliced-0.0.5.tgz#5edc044ca4eb6f7816d50ba2fc63e25d8fe4707f" - integrity sha1-XtwETKTrb3gW1Qui/GPiXY/kcH8= - sliced@1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/sliced/-/sliced-1.0.1.tgz#0b3a662b5d04c3177b1926bea82b03f837a2ef41" @@ -3390,6 +3406,13 @@ source-map@~0.6.1: resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== +sparse-bitfield@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/sparse-bitfield/-/sparse-bitfield-3.0.3.tgz#ff4ae6e68656056ba4b3e792ab3334d38273ca11" + integrity sha512-kvzhi7vqKTfkh0PZU+2D2PIllw2ymqJKujUcyPMd9Y75Nv4nPbGJZXNhxsgdQab2BmlDct1YnfQCguEvHr7VsQ== + dependencies: + memory-pager "^1.0.2" + spdy-transport@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/spdy-transport/-/spdy-transport-3.0.0.tgz#00d4863a6400ad75df93361a1608605e5dcdcf31" @@ -3535,13 +3558,6 @@ string_decoder@~0.10.x: resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94" integrity sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ= -string_decoder@~1.0.0: - version "1.0.3" - resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.0.3.tgz#0fc67d7c141825de94282dd536bec6b9bce860ab" - integrity sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ== - dependencies: - safe-buffer "~5.1.0" - string_decoder@~1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" From 2313031063416136c6edcb7c1032d880f6e7a342 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Mon, 2 Oct 2023 11:06:47 +0200 Subject: [PATCH 290/337] (chore): update grpc dependencies (#824) * Update grpc dependencise * Extend pr template --- .github/PULL_REQUEST_TEMPLATE.md | 1 + packages/models/package.json | 4 +- yarn.lock | 74 +++++++++++++++++++------------- 3 files changed, 48 insertions(+), 31 deletions(-) diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md index 64b6a3df..d0678e48 100644 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -17,6 +17,7 @@ - [ ] Bug fix (non-breaking change which fixes an issue) - [ ] New feature (non-breaking change which adds functionality) - [ ] Breaking change (fix or feature that would cause existing functionality to change) +- [ ] Chore (update dependencies or documentation) ## Checklist: diff --git a/packages/models/package.json b/packages/models/package.json index 2ce02370..937c32c6 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -5,8 +5,8 @@ "main": "index.js", "license": "MIT", "dependencies": { - "@grpc/grpc-js": "^1.3.7", - "@grpc/proto-loader": "^0.6.4", + "@grpc/grpc-js": "^1.9.4", + "@grpc/proto-loader": "^0.7.10", "@sensebox/osem-protos": "^1.1.0", "@sensebox/sketch-templater": "1.13.1", "bcrypt": "^5.1.0", diff --git a/yarn.lock b/yarn.lock index 03acdc4b..37e1ba01 100644 --- a/yarn.lock +++ b/yarn.lock @@ -38,23 +38,23 @@ minimatch "^3.0.4" strip-json-comments "^3.1.1" -"@grpc/grpc-js@^1.3.7": - version "1.3.7" - resolved "https://registry.yarnpkg.com/@grpc/grpc-js/-/grpc-js-1.3.7.tgz#58b687aff93b743aafde237fd2ee9a3259d7f2d8" - integrity sha512-CKQVuwuSPh40tgOkR7c0ZisxYRiN05PcKPW72mQL5y++qd7CwBRoaJZvU5xfXnCJDFBmS3qZGQ71Frx6Ofo2XA== +"@grpc/grpc-js@^1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@grpc/grpc-js/-/grpc-js-1.9.4.tgz#6cf152869910c2ac3429eee08c1dbdc84e7bafea" + integrity sha512-oEnzYiDuEsBydZBtP84BkpduLsE1nSAO4KrhTLHRzNrIQE647fhchmosTQsJdCo8X9zBBt+l5+fNk+m/yCFJ/Q== dependencies: + "@grpc/proto-loader" "^0.7.8" "@types/node" ">=12.12.47" -"@grpc/proto-loader@^0.6.4": - version "0.6.4" - resolved "https://registry.yarnpkg.com/@grpc/proto-loader/-/proto-loader-0.6.4.tgz#5438c0d771e92274e77e631babdc14456441cbdc" - integrity sha512-7xvDvW/vJEcmLUltCUGOgWRPM8Oofv0eCFSVMuKqaqWJaXSzmB+m9hiyqe34QofAl4WAzIKUZZlinIF9FOHyTQ== +"@grpc/proto-loader@^0.7.10", "@grpc/proto-loader@^0.7.8": + version "0.7.10" + resolved "https://registry.yarnpkg.com/@grpc/proto-loader/-/proto-loader-0.7.10.tgz#6bf26742b1b54d0a473067743da5d3189d06d720" + integrity sha512-CAqDfoaQ8ykFd9zqBDn4k6iWT9loLAlc2ETmDFS9JCD70gDcnA4L3AFEo2iV7KyAtAAHFW9ftq1Fz+Vsgq80RQ== dependencies: - "@types/long" "^4.0.1" lodash.camelcase "^4.3.0" - long "^4.0.0" - protobufjs "^6.10.0" - yargs "^16.1.1" + long "^5.0.0" + protobufjs "^7.2.4" + yargs "^17.7.2" "@ioredis/commands@^1.1.1": version "1.2.0" @@ -402,11 +402,6 @@ dependencies: "@types/node" "*" -"@types/long@^4.0.1": - version "4.0.1" - resolved "https://registry.yarnpkg.com/@types/long/-/long-4.0.1.tgz#459c65fa1867dafe6a8f322c4c51695663cc55e9" - integrity sha512-5tXH6Bx/kNGd3MgffdmP4dy2Z+G4eaXw0SE81Tq3BNadtnMR5/ySMzX4SLEzHJzSmPNn4HIdpQsBvXMUykr58w== - "@types/mongodb@^3.5.27": version "3.6.20" resolved "https://registry.yarnpkg.com/@types/mongodb/-/mongodb-3.6.20.tgz#b7c5c580644f6364002b649af1c06c3c0454e1d2" @@ -926,6 +921,15 @@ cliui@^7.0.2: strip-ansi "^6.0.0" wrap-ansi "^7.0.0" +cliui@^8.0.1: + version "8.0.1" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-8.0.1.tgz#0c04b075db02cbfe60dc8e6cf2f5486b1a3608aa" + integrity sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ== + dependencies: + string-width "^4.2.0" + strip-ansi "^6.0.1" + wrap-ansi "^7.0.0" + clone-response@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/clone-response/-/clone-response-1.0.2.tgz#d1dc973920314df67fbeb94223b4ee350239e96b" @@ -2332,10 +2336,10 @@ log-symbols@4.0.0: dependencies: chalk "^4.0.0" -long@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/long/-/long-4.0.0.tgz#9a7b71cfb7d361a194ea555241c92f7468d5bf28" - integrity sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA== +long@^5.0.0: + version "5.2.3" + resolved "https://registry.yarnpkg.com/long/-/long-5.2.3.tgz#a3ba97f3877cf1d778eccbcb048525ebb77499e1" + integrity sha512-lcHwpNoggQTObv5apGNCTdJrO69eHOZMi4BNC+rTLER8iHAqGrUVeLh/irVIM7zTw2bOXA8T6uNPeujwOLg/2Q== lowercase-keys@^2.0.0: version "2.0.0" @@ -2951,10 +2955,10 @@ progress@^2.0.0: resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== -protobufjs@^6.10.0: - version "6.11.2" - resolved "https://registry.yarnpkg.com/protobufjs/-/protobufjs-6.11.2.tgz#de39fabd4ed32beaa08e9bb1e30d08544c1edf8b" - integrity sha512-4BQJoPooKJl2G9j3XftkIXjoC9C0Av2NOrWmbLWT1vH32GcSUHjM0Arra6UfTsVyfMAuFzaLucXn1sadxJydAw== +protobufjs@^7.2.4: + version "7.2.5" + resolved "https://registry.yarnpkg.com/protobufjs/-/protobufjs-7.2.5.tgz#45d5c57387a6d29a17aab6846dcc283f9b8e7f2d" + integrity sha512-gGXRSXvxQ7UiPgfw8gevrfRWcTlSbOFg+p/N+JVJEK5VhueL2miT6qTymqAmjr1Q5WbOCyJbyrk6JfWKwlFn6A== dependencies: "@protobufjs/aspromise" "^1.1.2" "@protobufjs/base64" "^1.1.2" @@ -2966,9 +2970,8 @@ protobufjs@^6.10.0: "@protobufjs/path" "^1.1.2" "@protobufjs/pool" "^1.1.0" "@protobufjs/utf8" "^1.1.0" - "@types/long" "^4.0.1" "@types/node" ">=13.7.0" - long "^4.0.0" + long "^5.0.0" psl@^1.1.28: version "1.8.0" @@ -3913,7 +3916,7 @@ yargs-parser@^20.2.2: resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.6.tgz#69f920addf61aafc0b8b89002f5d66e28f2d8b20" integrity sha512-AP1+fQIWSM/sMiET8fyayjx/J+JmTPt2Mr0FkrgqB4todtfa53sOsrSAcIrJRD5XS20bKUwaDIuMkWKCEiQLKA== -yargs-parser@^21.0.0: +yargs-parser@^21.0.0, yargs-parser@^21.1.1: version "21.1.1" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.1.1.tgz#9096bceebf990d21bb31fa9516e0ede294a77d35" integrity sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw== @@ -3928,7 +3931,7 @@ yargs-unparser@2.0.0: flat "^5.0.2" is-plain-obj "^2.1.0" -yargs@16.2.0, yargs@^16.1.1: +yargs@16.2.0: version "16.2.0" resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== @@ -3954,6 +3957,19 @@ yargs@^17.0.1: y18n "^5.0.5" yargs-parser "^21.0.0" +yargs@^17.7.2: + version "17.7.2" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.7.2.tgz#991df39aca675a192b816e1e0363f9d75d2aa269" + integrity sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w== + dependencies: + cliui "^8.0.1" + escalade "^3.1.1" + get-caller-file "^2.0.5" + require-directory "^2.1.1" + string-width "^4.2.3" + y18n "^5.0.5" + yargs-parser "^21.1.1" + yocto-queue@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" From 75363da86571ed079d193d6879a2157bb5b57342 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Mon, 2 Oct 2023 11:17:56 +0200 Subject: [PATCH 291/337] Update mocha dependency (#825) --- package.json | 2 +- yarn.lock | 213 +++++++++++++++++++++++---------------------------- 2 files changed, 95 insertions(+), 120 deletions(-) diff --git a/package.json b/package.json index bb1f9e6e..e2203814 100644 --- a/package.json +++ b/package.json @@ -28,7 +28,7 @@ "csv-parse": "^4.15.4", "eslint": "7.26.0", "mimelib": "^0.3.1", - "mocha": "^8.3.2", + "mocha": "^10.2.0", "mqtt": "^4.2.8", "randomgeojson": "^1.0.0" }, diff --git a/yarn.lock b/yarn.lock index 37e1ba01..884735b8 100644 --- a/yarn.lock +++ b/yarn.lock @@ -435,11 +435,6 @@ "@types/cookiejar" "*" "@types/node" "*" -"@ungap/promise-all-settled@1.1.2": - version "1.1.2" - resolved "https://registry.yarnpkg.com/@ungap/promise-all-settled/-/promise-all-settled-1.1.2.tgz#aa58042711d6e3275dd37dc597e5d31e8c290a44" - integrity sha512-sL/cEvJWAnClXw0wHk85/2L0G6Sj8UB0Ctc1TEMbKSsmpRosqhwj9gWgFRZSrBr2f9tiXISwNhCPmlfqUqyb9Q== - abbrev@1: version "1.1.1" resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" @@ -499,11 +494,6 @@ ansi-colors@4.1.1, ansi-colors@^4.1.1: resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.1.tgz#cbb9ae256bf750af1eab344f229aa27fe94ba348" integrity sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA== -ansi-regex@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.1.tgz#123d6479e92ad45ad897d4054e3c7ca7db4944e1" - integrity sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw== - ansi-regex@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.0.tgz#388539f55179bf39339c81af30a654d69f87cb75" @@ -529,10 +519,10 @@ ansi-styles@^4.0.0, ansi-styles@^4.1.0: "@types/color-name" "^1.1.1" color-convert "^2.0.1" -anymatch@~3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.1.tgz#c55ecf02185e2469259399310c173ce31233b142" - integrity sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg== +anymatch@~3.1.2: + version "3.1.3" + resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.3.tgz#790c58b19ba1720a84205b57c618d5ad8524973e" + integrity sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw== dependencies: normalize-path "^3.0.0" picomatch "^2.0.4" @@ -864,6 +854,14 @@ chalk@^4.0.0: ansi-styles "^4.1.0" supports-color "^7.1.0" +chalk@^4.1.0: + version "4.1.2" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" + integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== + dependencies: + ansi-styles "^4.1.0" + supports-color "^7.1.0" + check-error@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/check-error/-/check-error-1.0.2.tgz#574d312edd88bb5dd8912e9286dd6c0aed4aac82" @@ -892,20 +890,20 @@ cheerio@^1.0.0-rc.6: parse5 "^6.0.1" parse5-htmlparser2-tree-adapter "^6.0.1" -chokidar@3.5.1: - version "3.5.1" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.1.tgz#ee9ce7bbebd2b79f49f304799d5468e31e14e68a" - integrity sha512-9+s+Od+W0VJJzawDma/gvBNQqkTiqYTWLuZoyAsivsI4AaWTCzHG06/TMjsf1cYe9Cb97UCEhjz7HvnPk2p/tw== +chokidar@3.5.3: + version "3.5.3" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.3.tgz#1cf37c8707b932bd1af1ae22c0432e2acd1903bd" + integrity sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw== dependencies: - anymatch "~3.1.1" + anymatch "~3.1.2" braces "~3.0.2" - glob-parent "~5.1.0" + glob-parent "~5.1.2" is-binary-path "~2.1.0" is-glob "~4.0.1" normalize-path "~3.0.0" - readdirp "~3.5.0" + readdirp "~3.6.0" optionalDependencies: - fsevents "~2.3.1" + fsevents "~2.3.2" chownr@^2.0.0: version "2.0.0" @@ -1138,20 +1136,13 @@ debug@3.1.0: dependencies: ms "2.0.0" -debug@4, debug@^4.1.0, debug@^4.3.4: +debug@4, debug@4.3.4, debug@^4.1.0, debug@^4.3.4: version "4.3.4" resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== dependencies: ms "2.1.2" -debug@4.3.1, debug@^4.0.1, debug@^4.1.1: - version "4.3.1" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.1.tgz#f0d229c505e0c6d8c49ac553d1b13dc183f6b2ee" - integrity sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ== - dependencies: - ms "2.1.2" - debug@^3.1.0: version "3.2.7" resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a" @@ -1159,6 +1150,13 @@ debug@^3.1.0: dependencies: ms "^2.1.1" +debug@^4.0.1, debug@^4.1.1: + version "4.3.1" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.1.tgz#f0d229c505e0c6d8c49ac553d1b13dc183f6b2ee" + integrity sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ== + dependencies: + ms "2.1.2" + decamelize@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-4.0.0.tgz#aa472d7bf660eb15f3494efd531cab7f2a709837" @@ -1703,10 +1701,10 @@ fs.realpath@^1.0.0: resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== -fsevents@~2.3.1: - version "2.3.2" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" - integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== +fsevents@~2.3.2: + version "2.3.3" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6" + integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw== function-bind@^1.1.1: version "1.1.1" @@ -1776,17 +1774,24 @@ getpass@^0.1.1: dependencies: assert-plus "^1.0.0" -glob-parent@^5.0.0, glob-parent@~5.1.0: +glob-parent@^5.0.0: version "5.1.1" resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.1.tgz#b6c1ef417c4e5663ea498f1c45afac6916bbc229" integrity sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ== dependencies: is-glob "^4.0.1" -glob@7.1.6: - version "7.1.6" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6" - integrity sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA== +glob-parent@~5.1.2: + version "5.1.2" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" + integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== + dependencies: + is-glob "^4.0.1" + +glob@7.2.0: + version "7.2.0" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.0.tgz#d15535af7732e02e948f4c41628bd910293f6023" + integrity sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q== dependencies: fs.realpath "^1.0.0" inflight "^1.0.4" @@ -1861,11 +1866,6 @@ got@^11.8.2: p-cancelable "^2.0.0" responselike "^2.0.0" -growl@1.10.5: - version "1.10.5" - resolved "https://registry.yarnpkg.com/growl/-/growl-1.10.5.tgz#f2735dc2283674fa67478b10181059355c369e5e" - integrity sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA== - handle-thing@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/handle-thing/-/handle-thing-2.0.1.tgz#857f79ce359580c340d43081cc648970d0bb234e" @@ -2082,11 +2082,6 @@ is-extglob@^2.1.1: resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= -is-fullwidth-code-point@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" - integrity sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w== - is-fullwidth-code-point@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" @@ -2121,6 +2116,11 @@ is-typedarray@~1.0.0: resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo= +is-unicode-supported@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz#3f26c76a809593b52bfa2ecb5710ed2779b522a7" + integrity sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw== + isarray@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" @@ -2148,10 +2148,10 @@ js-tokens@^4.0.0: resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== -js-yaml@4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.0.0.tgz#f426bc0ff4b4051926cd588c71113183409a121f" - integrity sha512-pqon0s+4ScYUvX30wxQi3PogGFAlUyH0awepWvwkj4jD4v+ova3RiYw8bmA6x2rDrEaj8i/oWKoRxpVNW+Re8Q== +js-yaml@4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602" + integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA== dependencies: argparse "^2.0.1" @@ -2329,12 +2329,13 @@ lodash@^4.17.11, lodash@^4.17.15, lodash@^4.17.20, lodash@^4.17.21: resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== -log-symbols@4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-4.0.0.tgz#69b3cc46d20f448eccdb75ea1fa733d9e821c920" - integrity sha512-FN8JBzLx6CzeMrB0tg6pqlGU1wCrXW+ZXGH481kfsBqer0hToTIiHdjH4Mq8xJUbvATujKCvaREGWpGUionraA== +log-symbols@4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-4.1.0.tgz#3fbdbb95b4683ac9fc785111e792e558d4abd503" + integrity sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg== dependencies: - chalk "^4.0.0" + chalk "^4.1.0" + is-unicode-supported "^0.1.0" long@^5.0.0: version "5.2.3" @@ -2432,12 +2433,12 @@ minimalistic-assert@^1.0.0: resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7" integrity sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A== -minimatch@3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" - integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== +minimatch@5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-5.0.1.tgz#fb9022f7528125187c92bd9e9b6366be1cf3415b" + integrity sha512-nLDxIFRyhDblz3qMuq+SoRZED4+miJ/G+tdDrjkkkRnjAsBexeGpgjLEQ0blJy7rHhR2b93rhQY4SvyWu9v03g== dependencies: - brace-expansion "^1.1.7" + brace-expansion "^2.0.1" minimatch@^3.0.4, minimatch@^3.1.1: version "3.1.2" @@ -2483,33 +2484,29 @@ mkdirp@^1.0.3: resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== -mocha@^8.3.2: - version "8.3.2" - resolved "https://registry.yarnpkg.com/mocha/-/mocha-8.3.2.tgz#53406f195fa86fbdebe71f8b1c6fb23221d69fcc" - integrity sha512-UdmISwr/5w+uXLPKspgoV7/RXZwKRTiTjJ2/AC5ZiEztIoOYdfKb19+9jNmEInzx5pBsCyJQzarAxqIGBNYJhg== +mocha@^10.2.0: + version "10.2.0" + resolved "https://registry.yarnpkg.com/mocha/-/mocha-10.2.0.tgz#1fd4a7c32ba5ac372e03a17eef435bd00e5c68b8" + integrity sha512-IDY7fl/BecMwFHzoqF2sg/SHHANeBoMMXFlS9r0OXKDssYE1M5O43wUY/9BVPeIvfH2zmEbBfseqN9gBQZzXkg== dependencies: - "@ungap/promise-all-settled" "1.1.2" ansi-colors "4.1.1" browser-stdout "1.3.1" - chokidar "3.5.1" - debug "4.3.1" + chokidar "3.5.3" + debug "4.3.4" diff "5.0.0" escape-string-regexp "4.0.0" find-up "5.0.0" - glob "7.1.6" - growl "1.10.5" + glob "7.2.0" he "1.2.0" - js-yaml "4.0.0" - log-symbols "4.0.0" - minimatch "3.0.4" + js-yaml "4.1.0" + log-symbols "4.1.0" + minimatch "5.0.1" ms "2.1.3" - nanoid "3.1.20" - serialize-javascript "5.0.1" + nanoid "3.3.3" + serialize-javascript "6.0.0" strip-json-comments "3.1.1" supports-color "8.1.1" - which "2.0.2" - wide-align "1.1.3" - workerpool "6.1.0" + workerpool "6.2.1" yargs "16.2.0" yargs-parser "20.2.4" yargs-unparser "2.0.0" @@ -2650,10 +2647,10 @@ nan@^2.14.0: resolved "https://registry.yarnpkg.com/nan/-/nan-2.14.1.tgz#d7be34dfa3105b91494c3147089315eff8874b01" integrity sha512-isWHgVjnFjh2x2yuJ/tj3JbwoHu3UC2dX5G/88Cm24yB6YopVgxvBObDY7n5xW6ExmFhJpSEQqFPvq9zaXc8Jw== -nanoid@3.1.20: - version "3.1.20" - resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.1.20.tgz#badc263c6b1dcf14b71efaa85f6ab4c1d6cfc788" - integrity sha512-a1cQNyczgKbLX9jwbS/+d7W8fX/RfgYR7lVWwWOGIPNgK2m0MWvrGF6/m4kk6U3QcFMnZf3RIhL0v2Jgh/0Uxw== +nanoid@3.3.3: + version "3.3.3" + resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.3.tgz#fd8e8b7aa761fe807dba2d1b98fb7241bb724a25" + integrity sha512-p1sjXuopFs0xg+fPASzQ28agW1oHD7xDsd9Xkf3T15H3c/cifrFHVwrh74PdoklAPi+i7MdRsE47vm2r6JoB+w== natural-compare@^1.4.0: version "1.4.0" @@ -3099,10 +3096,10 @@ readable-stream@~2.1.0: string_decoder "~0.10.x" util-deprecate "~1.0.1" -readdirp@~3.5.0: - version "3.5.0" - resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.5.0.tgz#9ba74c019b15d365278d2e91bb8c48d7b4d42c9e" - integrity sha512-cMhu7c/8rdhkHXWsY+osBhfSy0JikwpHK/5+imo+LpeasTF8ouErHrlYkwT0++njiyuDvc7OFY5T3ukvZ8qmFQ== +readdirp@~3.6.0: + version "3.6.0" + resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7" + integrity sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA== dependencies: picomatch "^2.2.1" @@ -3330,10 +3327,10 @@ send@^0.18.0: range-parser "~1.2.1" statuses "2.0.1" -serialize-javascript@5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-5.0.1.tgz#7886ec848049a462467a97d3d918ebb2aaf934f4" - integrity sha512-SaaNal9imEO737H2c05Og0/8LUXG7EnsZyMa8MzkmuHoELfT6txuj0cMqRj6zfPKnmQ1yasR4PCJc8x+M4JSPA== +serialize-javascript@6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-6.0.0.tgz#efae5d88f45d7924141da8b5c3a7a7e663fefeb8" + integrity sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag== dependencies: randombytes "^2.1.0" @@ -3523,14 +3520,6 @@ stream-transform@^3.2.6: resolved "https://registry.yarnpkg.com/stream-transform/-/stream-transform-3.2.6.tgz#7caeaaf68d2bf94fc412a520f2deb3c49b3bc0ab" integrity sha512-/pyOvaCQFqYTmrFhmMbnAEVo3SsTx1H39eUVPOtYeAgbEUc+rDo7GoP8LbHJgU83mKtzJe/7Nq/ipaAnUOHgJQ== -"string-width@^1.0.2 || 2": - version "2.1.1" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" - integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw== - dependencies: - is-fullwidth-code-point "^2.0.0" - strip-ansi "^4.0.0" - "string-width@^1.0.2 || 2 || 3 || 4", string-width@^4.2.3: version "4.2.3" resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" @@ -3580,13 +3569,6 @@ stringify-stream@^1.0.5: dependencies: readable-stream "~2.1.0" -strip-ansi@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f" - integrity sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow== - dependencies: - ansi-regex "^3.0.0" - strip-ansi@^6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.0.tgz#0b1571dd7669ccd4f3e06e14ef1eed26225ae532" @@ -3841,20 +3823,13 @@ whatwg-url@^5.0.0: tr46 "~0.0.3" webidl-conversions "^3.0.0" -which@2.0.2, which@^2.0.1: +which@^2.0.1: version "2.0.2" resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== dependencies: isexe "^2.0.0" -wide-align@1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.3.tgz#ae074e6bdc0c14a431e804e624549c633b000457" - integrity sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA== - dependencies: - string-width "^1.0.2 || 2" - wide-align@^1.1.2: version "1.1.5" resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.5.tgz#df1d4c206854369ecf3c9a4898f1b23fbd9d15d3" @@ -3867,10 +3842,10 @@ word-wrap@^1.2.3, word-wrap@~1.2.3: resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c" integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ== -workerpool@6.1.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/workerpool/-/workerpool-6.1.0.tgz#a8e038b4c94569596852de7a8ea4228eefdeb37b" - integrity sha512-toV7q9rWNYha963Pl/qyeZ6wG+3nnsyvolaNUS8+R5Wtw6qJPTxIlOP1ZSvcGhEJw+l3HMMmtiNo9Gl61G4GVg== +workerpool@6.2.1: + version "6.2.1" + resolved "https://registry.yarnpkg.com/workerpool/-/workerpool-6.2.1.tgz#46fc150c17d826b86a008e5a4508656777e9c343" + integrity sha512-ILEIE97kDZvF9Wb9f6h5aXK4swSlKGUcOEGiIYb2OOu/IrDU9iwj0fD//SsA6E5ibwJxpEvhullJY4Sl4GcpAw== wrap-ansi@^7.0.0: version "7.0.0" From 7942432445d683ff73c57f86253da979506542a4 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Mon, 2 Oct 2023 11:32:01 +0200 Subject: [PATCH 292/337] Update mqtt dependency (#826) --- package.json | 2 +- yarn.lock | 190 ++++++++++++++++++++++++++------------------------- 2 files changed, 99 insertions(+), 93 deletions(-) diff --git a/package.json b/package.json index e2203814..3211d5a4 100644 --- a/package.json +++ b/package.json @@ -29,7 +29,7 @@ "eslint": "7.26.0", "mimelib": "^0.3.1", "mocha": "^10.2.0", - "mqtt": "^4.2.8", + "mqtt": "^5.0.5", "randomgeojson": "^1.0.0" }, "version": "0.0.0" diff --git a/yarn.lock b/yarn.lock index 884735b8..a2b49a00 100644 --- a/yarn.lock +++ b/yarn.lock @@ -420,6 +420,14 @@ resolved "https://registry.yarnpkg.com/@types/node/-/node-16.6.0.tgz#0d5685f85066f94e97f19e8a67fe003c5fadacc4" integrity sha512-OyiZPohMMjZEYqcVo/UJ04GyAxXOJEZO/FpzyXxcH4r/ArrVoXHf4MbUrkLp0Tz7/p1mMKpo5zJ6ZHl8XBNthQ== +"@types/readable-stream@^4.0.1": + version "4.0.3" + resolved "https://registry.yarnpkg.com/@types/readable-stream/-/readable-stream-4.0.3.tgz#ec70b21c668a836b72ae178656833b45a8998ef7" + integrity sha512-Z8BOzyIj3UPpn3j5DmDNKIw4wPN9N8a1d1oyteiprWq+wxdgQNC0UfFAQwWjmjyA7uoj7mvoWgxWWH66zYtm4Q== + dependencies: + "@types/node" "*" + safe-buffer "~5.1.1" + "@types/responselike@*", "@types/responselike@^1.0.0": version "1.0.0" resolved "https://registry.yarnpkg.com/@types/responselike/-/responselike-1.0.0.tgz#251f4fe7d154d2bad125abe1b429b23afd262e29" @@ -435,6 +443,13 @@ "@types/cookiejar" "*" "@types/node" "*" +"@types/ws@^8.5.5": + version "8.5.6" + resolved "https://registry.yarnpkg.com/@types/ws/-/ws-8.5.6.tgz#e9ad51f0ab79b9110c50916c9fcbddc36d373065" + integrity sha512-8B5EO9jLVCy+B58PLHvLDuOD8DRVMgQzq8d55SjLCOn9kqGyqOvy27exVaTio1q1nX5zLu8/6N0n2ThSxOM6tg== + dependencies: + "@types/node" "*" + abbrev@1: version "1.1.1" resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" @@ -637,12 +652,12 @@ bl@^2.2.1: readable-stream "^2.3.5" safe-buffer "^5.1.1" -bl@^4.0.2: - version "4.1.0" - resolved "https://registry.yarnpkg.com/bl/-/bl-4.1.0.tgz#451535264182bec2fbbc83a62ab98cf11d9f7b3a" - integrity sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w== +bl@^5.0.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/bl/-/bl-5.1.0.tgz#183715f678c7188ecef9fe475d90209400624273" + integrity sha512-tv1ZJHLfTDnXE6tMHv73YgSJaWR2AFuPwMntBe7XL/GBFHnT0CLnsHMogfk5+GzCDC5ZWarSCYaIGATZt9dNsQ== dependencies: - buffer "^5.5.0" + buffer "^6.0.3" inherits "^2.0.4" readable-stream "^3.4.0" @@ -708,14 +723,6 @@ buffer-shims@^1.0.0: resolved "https://registry.yarnpkg.com/buffer-shims/-/buffer-shims-1.0.0.tgz#9978ce317388c649ad8793028c3477ef044a8b51" integrity sha1-mXjOMXOIxkmth5MCjDR37wRKi1E= -buffer@^5.5.0: - version "5.7.1" - resolved "https://registry.yarnpkg.com/buffer/-/buffer-5.7.1.tgz#ba62e7c13133053582197160851a8f648e99eed0" - integrity sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ== - dependencies: - base64-js "^1.3.1" - ieee754 "^1.1.13" - buffer@^6.0.3: version "6.0.3" resolved "https://registry.yarnpkg.com/buffer/-/buffer-6.0.3.tgz#2ace578459cc8fbe2a70aaa8f52ee63b6a74c6c6" @@ -981,13 +988,10 @@ combined-stream@^1.0.6, combined-stream@~1.0.6: dependencies: delayed-stream "~1.0.0" -commist@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/commist/-/commist-1.1.0.tgz#17811ec6978f6c15ee4de80c45c9beb77cee35d5" - integrity sha512-rraC8NXWOEjhADbZe9QBNzLAN5Q3fsTPQtBV+fEVj6xKIgDgNiEVE6ZNfHpZOqfQ21YUzfVNUXLOEZquYvQPPg== - dependencies: - leven "^2.1.0" - minimist "^1.1.0" +commist@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/commist/-/commist-3.2.0.tgz#da9c8e5f245ac21510badc4b10c46b5bcc9b56cd" + integrity sha512-4PIMoPniho+LqXmpS5d3NuGYncG6XWlkBSVGiWycL22dd42OYdUGil2CWuzklaJoNxyxUSpO4MKIBU94viWNAw== component-emitter@^1.2.0: version "1.3.0" @@ -1136,7 +1140,7 @@ debug@3.1.0: dependencies: ms "2.0.0" -debug@4, debug@4.3.4, debug@^4.1.0, debug@^4.3.4: +debug@4, debug@4.3.4, debug@^4.1.0, debug@^4.3.1, debug@^4.3.4: version "4.3.4" resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== @@ -1299,7 +1303,7 @@ dtrace-provider@~0.8: dependencies: nan "^2.14.0" -duplexify@^4.1.1: +duplexify@^4.1.2: version "4.1.2" resolved "https://registry.yarnpkg.com/duplexify/-/duplexify-4.1.2.tgz#18b4f8d28289132fa0b9573c898d9f903f81c7b0" integrity sha512-fz3OjcNCHmRP12MJoZMPglx8m4rrFP8rovnk4vT8Fs+aonZoCwGg10dSsQsfP/E62eZcPTMSMP6686fu9Qlqtw== @@ -1812,19 +1816,7 @@ glob@^7.1.3: once "^1.3.0" path-is-absolute "^1.0.0" -glob@^7.1.6: - version "7.1.7" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.7.tgz#3b193e9233f01d42d0b3f78294bbeeb418f94a90" - integrity sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ== - dependencies: - fs.realpath "^1.0.0" - inflight "^1.0.4" - inherits "2" - minimatch "^3.0.4" - once "^1.3.0" - path-is-absolute "^1.0.0" - -glob@^8.0.3: +glob@^8.0.0, glob@^8.0.3: version "8.1.0" resolved "https://registry.yarnpkg.com/glob/-/glob-8.1.0.tgz#d388f656593ef708ee3e34640fdfb99a9fd1c33e" integrity sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ== @@ -1916,12 +1908,12 @@ he@1.2.0: resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw== -help-me@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/help-me/-/help-me-3.0.0.tgz#9803c81b5f346ad2bce2c6a0ba01b82257d319e8" - integrity sha512-hx73jClhyk910sidBB7ERlnhMlFsJJIBqSVMFDwPN8o2v9nmp5KgLq1Xz1Bf1fCMMZ6mPrX159iG0VLy/fPMtQ== +help-me@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/help-me/-/help-me-4.2.0.tgz#50712bfd799ff1854ae1d312c36eafcea85b0563" + integrity sha512-TAOnTB8Tz5Dw8penUuzHVrKNKlCIbwwbHnXraNJxPwf8LRtE2HlM84RYuezMFcwOJmoYOCWVDyJ8TQGxn9PgxA== dependencies: - glob "^7.1.6" + glob "^8.0.0" readable-stream "^3.6.0" honeybadger@^1.4.0: @@ -2014,7 +2006,7 @@ iconv-lite@~0.4.13: dependencies: safer-buffer ">= 2.1.2 < 3" -ieee754@^1.1.13, ieee754@^1.2.1: +ieee754@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== @@ -2143,6 +2135,11 @@ isstream@~0.1.2: resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" integrity sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo= +js-sdsl@4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/js-sdsl/-/js-sdsl-4.3.0.tgz#aeefe32a451f7af88425b11fdb5f58c90ae1d711" + integrity sha512-mifzlm2+5nZ+lEcLJMoBK0/IH/bDg8XnJfd/Wq6IP+xoCjLZsTOnV2QpxlVbX9bMnkl5PdEjNtBJ9Cj1NjifhQ== + js-tokens@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" @@ -2276,11 +2273,6 @@ keyv@^4.0.0: dependencies: json-buffer "3.0.1" -leven@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/leven/-/leven-2.1.0.tgz#c2e7a9f772094dee9d34202ae8acce4687875580" - integrity sha1-wuep93IJTe6dNCAq6KzORoeHVYA= - levn@^0.4.1: version "0.4.1" resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade" @@ -2354,7 +2346,7 @@ lru-cache@^6.0.0: dependencies: yallist "^4.0.0" -lru-cache@^7.14.1: +lru-cache@^7.14.1, lru-cache@^7.18.3: version "7.18.3" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-7.18.3.tgz#f793896e0fd0e954a59dfdd82f0773808df6aa89" integrity sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA== @@ -2454,12 +2446,7 @@ minimatch@^5.0.1: dependencies: brace-expansion "^2.0.1" -minimist@^1.1.0: - version "1.2.5" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" - integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== - -minimist@^1.2.5: +minimist@^1.2.8: version "1.2.8" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA== @@ -2566,34 +2553,36 @@ mpath@0.8.4: resolved "https://registry.yarnpkg.com/mpath/-/mpath-0.8.4.tgz#6b566d9581621d9e931dd3b142ed3618e7599313" integrity sha512-DTxNZomBcTWlrMW76jy1wvV37X/cNNxPW1y2Jzd4DZkAaC5ZGsm8bfGfNOthcDuRJujXLqiuS6o3Tpy0JEoh7g== -mqtt-packet@^6.8.0: - version "6.10.0" - resolved "https://registry.yarnpkg.com/mqtt-packet/-/mqtt-packet-6.10.0.tgz#c8b507832c4152e3e511c0efa104ae4a64cd418f" - integrity sha512-ja8+mFKIHdB1Tpl6vac+sktqy3gA8t9Mduom1BA75cI+R9AHnZOiaBQwpGiWnaVJLDGRdNhQmFaAqd7tkKSMGA== +mqtt-packet@^8.2.0: + version "8.2.0" + resolved "https://registry.yarnpkg.com/mqtt-packet/-/mqtt-packet-8.2.0.tgz#07cfdf72771f2c17c5689183162d1e4ad613438f" + integrity sha512-21Vo7XdRXUw2qhdTfk8GeOl2jtb8Dkwd4dKxn/epvf37mxTxHodvBJoozTPZGVwh57JXlsh2ChsaxMsAfqxp+A== dependencies: - bl "^4.0.2" + bl "^5.0.0" debug "^4.1.1" process-nextick-args "^2.0.1" -mqtt@^4.2.8: - version "4.2.8" - resolved "https://registry.yarnpkg.com/mqtt/-/mqtt-4.2.8.tgz#f0e54b138bcdaef6c55c547b3a4de9cf9074208c" - integrity sha512-DJYjlXODVXtSDecN8jnNzi6ItX3+ufGsEs9OB3YV24HtkRrh7kpx8L5M1LuyF0KzaiGtWr2PzDcMGAY60KGOSA== +mqtt@^5.0.5: + version "5.0.5" + resolved "https://registry.yarnpkg.com/mqtt/-/mqtt-5.0.5.tgz#645819f48d6f3dba7962c28c5392e9b696c7081a" + integrity sha512-Ahbzk7nddvYg0aOezbYl/d9o8wcEbZw1NjiH+CmGObxiHsG4HgL7+IaRkph5yxwH679GVMAwtfsyUY2dFBSVSw== dependencies: - commist "^1.0.0" + "@types/readable-stream" "^4.0.1" + "@types/ws" "^8.5.5" + commist "^3.2.0" concat-stream "^2.0.0" - debug "^4.1.1" - duplexify "^4.1.1" - help-me "^3.0.0" - inherits "^2.0.3" - minimist "^1.2.5" - mqtt-packet "^6.8.0" - pump "^3.0.0" - readable-stream "^3.6.0" + debug "^4.3.4" + duplexify "^4.1.2" + help-me "^4.2.0" + lru-cache "^7.18.3" + minimist "^1.2.8" + mqtt-packet "^8.2.0" + number-allocator "^1.0.14" + readable-stream "^4.4.2" reinterval "^1.1.0" - split2 "^3.1.0" - ws "^7.5.0" - xtend "^4.0.2" + rfdc "^1.3.0" + split2 "^4.2.0" + ws "^8.13.0" mquery@3.2.5: version "3.2.5" @@ -2713,6 +2702,14 @@ nth-check@^2.0.0: dependencies: boolbase "^1.0.0" +number-allocator@^1.0.14: + version "1.0.14" + resolved "https://registry.yarnpkg.com/number-allocator/-/number-allocator-1.0.14.tgz#1f2e32855498a7740dcc8c78bed54592d930ee4d" + integrity sha512-OrL44UTVAvkKdOdRQZIJpLkAdjXGTRda052sN4sO77bKEzYYqWKMBjQvrJFzqygI99gL6Z4u2xctPW1tB8ErvA== + dependencies: + debug "^4.3.1" + js-sdsl "4.3.0" + oauth-sign@~0.9.0: version "0.9.0" resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455" @@ -3064,7 +3061,7 @@ readable-stream@^2.0.1, readable-stream@^2.3.5: string_decoder "~1.1.1" util-deprecate "~1.0.1" -readable-stream@^3.0.0, readable-stream@^3.0.2, readable-stream@^3.0.6, readable-stream@^3.1.1, readable-stream@^3.4.0, readable-stream@^3.6.0: +readable-stream@^3.0.2, readable-stream@^3.0.6, readable-stream@^3.1.1, readable-stream@^3.4.0, readable-stream@^3.6.0: version "3.6.0" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198" integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA== @@ -3083,6 +3080,17 @@ readable-stream@^4.0.0: events "^3.3.0" process "^0.11.10" +readable-stream@^4.4.2: + version "4.4.2" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-4.4.2.tgz#e6aced27ad3b9d726d8308515b9a1b98dc1b9d13" + integrity sha512-Lk/fICSyIhodxy1IDK2HazkeGjSmezAWX2egdtJnYhtzKEsBPJowlI6F6LPb5tqIQILrMbx22S5o3GuJavPusA== + dependencies: + abort-controller "^3.0.0" + buffer "^6.0.3" + events "^3.3.0" + process "^0.11.10" + string_decoder "^1.3.0" + readable-stream@~2.1.0: version "2.1.5" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.1.5.tgz#66fa8b720e1438b364681f2ad1a63c618448c9d0" @@ -3245,6 +3253,11 @@ ret@~0.2.0: resolved "https://registry.yarnpkg.com/ret/-/ret-0.2.2.tgz#b6861782a1f4762dce43402a71eb7a283f44573c" integrity sha512-M0b3YWQs7R3Z917WRQy1HHA7Ba7D8hvZg6UE5mLykJxQVE2ju0IXbGlaHPPlkY+WN7wFP+wUMXmBFA0aV6vYGQ== +rfdc@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/rfdc/-/rfdc-1.3.0.tgz#d0b7c441ab2720d05dc4cf26e01c89631d9da08b" + integrity sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA== + rimraf@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" @@ -3441,18 +3454,16 @@ splaytree@^3.1.0: resolved "https://registry.yarnpkg.com/splaytree/-/splaytree-3.1.0.tgz#17d4a0108a6da3627579690b7b847241e18ddec8" integrity sha512-gvUGR7xnOy0fLKTCxDeUZYgU/I1Tdf8M/lM1Qrf8L2TIOR5ipZjGk02uYcdv0o2x7WjVRgpm3iS2clLyuVAt0Q== -split2@^3.1.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/split2/-/split2-3.1.1.tgz#c51f18f3e06a8c4469aaab487687d8d956160bb6" - integrity sha512-emNzr1s7ruq4N+1993yht631/JH+jaj0NYBosuKmLcq+JkGQ9MmTw1RB1fGaTCzUuseRIClrlSLHRNYGwWQ58Q== - dependencies: - readable-stream "^3.0.0" - split2@^4.0.0: version "4.1.0" resolved "https://registry.yarnpkg.com/split2/-/split2-4.1.0.tgz#101907a24370f85bb782f08adaabe4e281ecf809" integrity sha512-VBiJxFkxiXRlUIeyMQi8s4hgvKCSjtknJv/LVYbrgALPwf5zSKmEwV9Lst25AkvMDnvxODugjdl6KZgwKM1WYQ== +split2@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/split2/-/split2-4.2.0.tgz#c9c5920904d148bab0b9f67145f245a86aadbfa4" + integrity sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg== + sprintf-js@~1.0.2: version "1.0.3" resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" @@ -3538,7 +3549,7 @@ string-width@^4.1.0, string-width@^4.2.0: is-fullwidth-code-point "^3.0.0" strip-ansi "^6.0.0" -string_decoder@^1.1.1: +string_decoder@^1.1.1, string_decoder@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== @@ -3861,15 +3872,10 @@ wrappy@1: resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== -ws@^7.5.0: - version "7.5.4" - resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.4.tgz#56bfa20b167427e138a7795de68d134fe92e21f9" - integrity sha512-zP9z6GXm6zC27YtspwH99T3qTG7bBFv2VIkeHstMLrLlDJuzA7tQ5ls3OJ1hOGGCzTQPniNJoHXIAOS0Jljohg== - -xtend@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" - integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ== +ws@^8.13.0: + version "8.14.2" + resolved "https://registry.yarnpkg.com/ws/-/ws-8.14.2.tgz#6c249a806eb2db7a20d26d51e7709eab7b2e6c7f" + integrity sha512-wEBG1ftX4jcglPxgFCMJmZ2PLtSbJ2Peg6TmpJFTbe9GZYOQCDPdMYu/Tm0/bGZkw8paZnJY45J4K2PZrLYq8g== y18n@^5.0.5: version "5.0.5" From 6fd500deeaab49da4ee62e62851faaeb5da9de91 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Mon, 2 Oct 2023 11:42:15 +0200 Subject: [PATCH 293/337] Update turf dependencies (#828) --- package.json | 2 +- packages/api/package.json | 16 +-- yarn.lock | 248 ++++++++++++++++++++------------------ 3 files changed, 143 insertions(+), 123 deletions(-) diff --git a/package.json b/package.json index 3211d5a4..a060fdd2 100644 --- a/package.json +++ b/package.json @@ -20,7 +20,7 @@ }, "devDependencies": { "@sensebox/eslint-config-sensebox": "^1.1.0", - "@turf/invariant": "^6.1.2", + "@turf/invariant": "^6.5.0", "chai": "^4.3.4", "chai-http": "^4.3.0", "chakram": "^1.5.0", diff --git a/packages/api/package.json b/packages/api/package.json index 12bab079..8ac016d9 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -13,14 +13,14 @@ ], "dependencies": { "@sensebox/opensensemap-api-models": "3.1.0", - "@turf/area": "^6.3.0", - "@turf/bbox": "^6.3.0", - "@turf/centroid": "^6.3.0", - "@turf/distance": "^6.0.1", - "@turf/helpers": "^6.1.4", - "@turf/hex-grid": "^6.3.0", - "@turf/square-grid": "^6.3.0", - "@turf/triangle-grid": "^6.3.0", + "@turf/area": "^6.5.0", + "@turf/bbox": "^6.5.0", + "@turf/centroid": "^6.5.0", + "@turf/distance": "^6.5.0", + "@turf/helpers": "^6.5.0", + "@turf/hex-grid": "^6.5.0", + "@turf/square-grid": "^6.5.0", + "@turf/triangle-grid": "^6.5.0", "apicache": "^1.6.2", "config": "^3.3.6", "csv-stringify": "^6.2.3", diff --git a/yarn.lock b/yarn.lock index a2b49a00..cfd0ea7e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -199,15 +199,15 @@ dependencies: defer-to-connect "^2.0.0" -"@turf/area@^6.3.0": - version "6.3.0" - resolved "https://registry.yarnpkg.com/@turf/area/-/area-6.3.0.tgz#cdd02f8ca51da2889dfc90a3c9e8fef5d1e04dca" - integrity sha512-Y1cYyAQ2fk94npdgOeMF4msc2uabHY1m7A7ntixf1I8rkyDd6/iHh1IMy1QsM+VZXAEwDwsXhu+ZFYd3Jkeg4A== +"@turf/area@^6.5.0": + version "6.5.0" + resolved "https://registry.yarnpkg.com/@turf/area/-/area-6.5.0.tgz#1d0d7aee01d8a4a3d4c91663ed35cc615f36ad56" + integrity sha512-xCZdiuojokLbQ+29qR6qoMD89hv+JAgWjLrwSEWL+3JV8IXKeNFl6XkEJz9HGkVpnXvQKJoRz4/liT+8ZZ5Jyg== dependencies: - "@turf/helpers" "^6.3.0" - "@turf/meta" "^6.3.0" + "@turf/helpers" "^6.5.0" + "@turf/meta" "^6.5.0" -"@turf/bbox@*", "@turf/bbox@^6.3.0": +"@turf/bbox@*": version "6.3.0" resolved "https://registry.yarnpkg.com/@turf/bbox/-/bbox-6.3.0.tgz#0e1a9b59f32d6a2a40c806f54cbaa73575bead25" integrity sha512-N4ue5Xopu1qieSHP2MA/CJGWHPKaTrVXQJjzHRNcY1vtsO126xbSaJhWUrFc5x5vVkXp0dcucGryO0r5m4o/KA== @@ -215,100 +215,113 @@ "@turf/helpers" "^6.3.0" "@turf/meta" "^6.3.0" -"@turf/boolean-disjoint@^6.3.0": - version "6.3.0" - resolved "https://registry.yarnpkg.com/@turf/boolean-disjoint/-/boolean-disjoint-6.3.0.tgz#4b27fb3c3c9ff23f69fbcc8d2d03665e9f52c20e" - integrity sha512-bVAwAJF05QPH0tf+qjR3kUcCyqTgYcCbXSMgXl6LQF6mSGuOutzNq1gCyRLCOdOcZtw4Oh4dqeP3ykwv8kDibw== +"@turf/bbox@^6.5.0": + version "6.5.0" + resolved "https://registry.yarnpkg.com/@turf/bbox/-/bbox-6.5.0.tgz#bec30a744019eae420dac9ea46fb75caa44d8dc5" + integrity sha512-RBbLaao5hXTYyyg577iuMtDB8ehxMlUqHEJiMs8jT1GHkFhr6sYre3lmLsPeYEi/ZKj5TP5tt7fkzNdJ4GIVyw== dependencies: - "@turf/boolean-point-in-polygon" "^6.3.0" - "@turf/helpers" "^6.3.0" - "@turf/line-intersect" "^6.3.0" - "@turf/meta" "^6.3.0" - "@turf/polygon-to-line" "^6.3.0" + "@turf/helpers" "^6.5.0" + "@turf/meta" "^6.5.0" -"@turf/boolean-intersects@^6.3.0": - version "6.3.0" - resolved "https://registry.yarnpkg.com/@turf/boolean-intersects/-/boolean-intersects-6.3.0.tgz#aaa096e6e346e6da673984ad397d4a96cb97cb89" - integrity sha512-2pHOYqHSKDo0rzHTiqwdAaxa+tHLwr4NaTAjOpuN2hipv9bErzGtv3e5IYceJBnT0u4akK17NTn6qAr7/7g2aQ== +"@turf/boolean-disjoint@^6.5.0": + version "6.5.0" + resolved "https://registry.yarnpkg.com/@turf/boolean-disjoint/-/boolean-disjoint-6.5.0.tgz#e291d8f8f8cce7f7bb3c11e23059156a49afc5e4" + integrity sha512-rZ2ozlrRLIAGo2bjQ/ZUu4oZ/+ZjGvLkN5CKXSKBcu6xFO6k2bgqeM8a1836tAW+Pqp/ZFsTA5fZHsJZvP2D5g== dependencies: - "@turf/boolean-disjoint" "^6.3.0" - "@turf/helpers" "^6.3.0" - "@turf/meta" "^6.3.0" + "@turf/boolean-point-in-polygon" "^6.5.0" + "@turf/helpers" "^6.5.0" + "@turf/line-intersect" "^6.5.0" + "@turf/meta" "^6.5.0" + "@turf/polygon-to-line" "^6.5.0" -"@turf/boolean-point-in-polygon@^6.3.0": - version "6.3.0" - resolved "https://registry.yarnpkg.com/@turf/boolean-point-in-polygon/-/boolean-point-in-polygon-6.3.0.tgz#784952a36c64119e90fbe94650245da62ecd8fc2" - integrity sha512-NqFSsoE6OwhDK19IllDQRhEQEkF7UVEOlqH9vgS1fGg4T6NcyKvACJs05c9457tL7QSbV9ZS53f2qiLneFL+qg== +"@turf/boolean-intersects@^6.5.0": + version "6.5.0" + resolved "https://registry.yarnpkg.com/@turf/boolean-intersects/-/boolean-intersects-6.5.0.tgz#df2b831ea31a4574af6b2fefe391f097a926b9d6" + integrity sha512-nIxkizjRdjKCYFQMnml6cjPsDOBCThrt+nkqtSEcxkKMhAQj5OO7o2CecioNTaX8EayqwMGVKcsz27oP4mKPTw== dependencies: - "@turf/helpers" "^6.3.0" - "@turf/invariant" "^6.3.0" + "@turf/boolean-disjoint" "^6.5.0" + "@turf/helpers" "^6.5.0" + "@turf/meta" "^6.5.0" -"@turf/centroid@^6.3.0": - version "6.3.0" - resolved "https://registry.yarnpkg.com/@turf/centroid/-/centroid-6.3.0.tgz#e86611e1e171fb0a38ade30453351a00e04956a3" - integrity sha512-7KTyqhUEqXDoyR/nf/jAXiW8ZVszEnrp5XZkgYyrf2GWdSovSO0iCN1J3bE2jkJv7IWyeDmGYL61GGzuTSZS2Q== +"@turf/boolean-point-in-polygon@^6.5.0": + version "6.5.0" + resolved "https://registry.yarnpkg.com/@turf/boolean-point-in-polygon/-/boolean-point-in-polygon-6.5.0.tgz#6d2e9c89de4cd2e4365004c1e51490b7795a63cf" + integrity sha512-DtSuVFB26SI+hj0SjrvXowGTUCHlgevPAIsukssW6BG5MlNSBQAo70wpICBNJL6RjukXg8d2eXaAWuD/CqL00A== dependencies: - "@turf/helpers" "^6.3.0" - "@turf/meta" "^6.3.0" + "@turf/helpers" "^6.5.0" + "@turf/invariant" "^6.5.0" -"@turf/distance@^6.0.1", "@turf/distance@^6.3.0": - version "6.3.0" - resolved "https://registry.yarnpkg.com/@turf/distance/-/distance-6.3.0.tgz#4bd084af7fe369e921476e52b597a638dae4ed95" - integrity sha512-basi24ssNFnH3iXPFjp/aNUrukjObiFWoIyDRqKyBJxVwVOwAWvfk4d38QQyBj5nDo5IahYRq/Q+T47/5hSs9w== +"@turf/centroid@^6.5.0": + version "6.5.0" + resolved "https://registry.yarnpkg.com/@turf/centroid/-/centroid-6.5.0.tgz#ecaa365412e5a4d595bb448e7dcdacfb49eb0009" + integrity sha512-MwE1oq5E3isewPprEClbfU5pXljIK/GUOMbn22UM3IFPDJX0KeoyLNwghszkdmFp/qMGL/M13MMWvU+GNLXP/A== dependencies: - "@turf/helpers" "^6.3.0" - "@turf/invariant" "^6.3.0" - -"@turf/helpers@6.x", "@turf/helpers@^6.1.4", "@turf/helpers@^6.3.0": - version "6.3.0" - resolved "https://registry.yarnpkg.com/@turf/helpers/-/helpers-6.3.0.tgz#87f90f806c3f8ad6385ef8d2041d3662bf3c9fb1" - integrity sha512-kr6KuD4Z0GZ30tblTEvi90rvvVNlKieXuMC8CTzE/rVQb0/f/Cb29zCXxTD7giQTEQY/P2nRW23wEqqyNHulCg== + "@turf/helpers" "^6.5.0" + "@turf/meta" "^6.5.0" -"@turf/hex-grid@^6.3.0": - version "6.3.0" - resolved "https://registry.yarnpkg.com/@turf/hex-grid/-/hex-grid-6.3.0.tgz#61e51a37db04239aac78410c61f441b79dab7fa1" - integrity sha512-adqOgpBJB+87bjnm5EKVklDuWsYtCrETlLrXpOw4CVyaqYEE2/Mvid25se/0TeGDfvIcnvIQvrApYL5O/sDaMw== +"@turf/distance@^6.5.0": + version "6.5.0" + resolved "https://registry.yarnpkg.com/@turf/distance/-/distance-6.5.0.tgz#21f04d5f86e864d54e2abde16f35c15b4f36149a" + integrity sha512-xzykSLfoURec5qvQJcfifw/1mJa+5UwByZZ5TZ8iaqjGYN0vomhV9aiSLeYdUGtYRESZ+DYC/OzY+4RclZYgMg== dependencies: - "@turf/distance" "^6.3.0" - "@turf/helpers" "^6.3.0" - "@turf/intersect" "^6.3.0" - "@turf/invariant" "^6.3.0" + "@turf/helpers" "^6.5.0" + "@turf/invariant" "^6.5.0" -"@turf/intersect@^6.3.0": +"@turf/helpers@6.x", "@turf/helpers@^6.3.0": version "6.3.0" - resolved "https://registry.yarnpkg.com/@turf/intersect/-/intersect-6.3.0.tgz#b22b3e888e762ae4336e085eb6f21215d06652ea" - integrity sha512-1YCIkyKjuTlX7HaTjtyE7ZRxLCmcu0BYr6jqoVl7TjyF2NUiNpPm3m4X1ZrSF6MfjIt5NFSGYCdNMEPgREq19w== - dependencies: - "@turf/helpers" "^6.3.0" - "@turf/invariant" "^6.3.0" - polygon-clipping "^0.15.2" - -"@turf/invariant@^6.1.2", "@turf/invariant@^6.3.0": - version "6.3.0" - resolved "https://registry.yarnpkg.com/@turf/invariant/-/invariant-6.3.0.tgz#04a22b26c5503146c03fa6198176b72bd591eadf" - integrity sha512-2OFOi9p+QOrcIMySEnr+WlOiKaFZ1bY56jA98YyECewJHfhPFWUBZEhc4nWGRT0ahK08Vus9+gcuBX8QIpCIIw== - dependencies: - "@turf/helpers" "^6.3.0" + resolved "https://registry.yarnpkg.com/@turf/helpers/-/helpers-6.3.0.tgz#87f90f806c3f8ad6385ef8d2041d3662bf3c9fb1" + integrity sha512-kr6KuD4Z0GZ30tblTEvi90rvvVNlKieXuMC8CTzE/rVQb0/f/Cb29zCXxTD7giQTEQY/P2nRW23wEqqyNHulCg== -"@turf/line-intersect@^6.3.0": - version "6.3.0" - resolved "https://registry.yarnpkg.com/@turf/line-intersect/-/line-intersect-6.3.0.tgz#726a50edc66bb7b5e798b052b103fb0da4d1c4f4" - integrity sha512-3naxR7XpkPd2vst3Mw6DFry4C9m3o0/f2n/xu5UAyxb88Ie4m2k+1eqkhzMMx/0L+E6iThWpLx7DASM6q6o9ow== - dependencies: - "@turf/helpers" "^6.3.0" - "@turf/invariant" "^6.3.0" - "@turf/line-segment" "^6.3.0" - "@turf/meta" "^6.3.0" +"@turf/helpers@^6.5.0": + version "6.5.0" + resolved "https://registry.yarnpkg.com/@turf/helpers/-/helpers-6.5.0.tgz#f79af094bd6b8ce7ed2bd3e089a8493ee6cae82e" + integrity sha512-VbI1dV5bLFzohYYdgqwikdMVpe7pJ9X3E+dlr425wa2/sMJqYDhTO++ec38/pcPvPE6oD9WEEeU3Xu3gza+VPw== + +"@turf/hex-grid@^6.5.0": + version "6.5.0" + resolved "https://registry.yarnpkg.com/@turf/hex-grid/-/hex-grid-6.5.0.tgz#aa5ee46e291839d4405db74b7516c6da89ee56f7" + integrity sha512-Ln3tc2tgZT8etDOldgc6e741Smg1CsMKAz1/Mlel+MEL5Ynv2mhx3m0q4J9IB1F3a4MNjDeVvm8drAaf9SF33g== + dependencies: + "@turf/distance" "^6.5.0" + "@turf/helpers" "^6.5.0" + "@turf/intersect" "^6.5.0" + "@turf/invariant" "^6.5.0" + +"@turf/intersect@^6.5.0": + version "6.5.0" + resolved "https://registry.yarnpkg.com/@turf/intersect/-/intersect-6.5.0.tgz#a14e161ddd0264d0f07ac4e325553c70c421f9e6" + integrity sha512-2legGJeKrfFkzntcd4GouPugoqPUjexPZnOvfez+3SfIMrHvulw8qV8u7pfVyn2Yqs53yoVCEjS5sEpvQ5YRQg== + dependencies: + "@turf/helpers" "^6.5.0" + "@turf/invariant" "^6.5.0" + polygon-clipping "^0.15.3" + +"@turf/invariant@^6.5.0": + version "6.5.0" + resolved "https://registry.yarnpkg.com/@turf/invariant/-/invariant-6.5.0.tgz#970afc988023e39c7ccab2341bd06979ddc7463f" + integrity sha512-Wv8PRNCtPD31UVbdJE/KVAWKe7l6US+lJItRR/HOEW3eh+U/JwRCSUl/KZ7bmjM/C+zLNoreM2TU6OoLACs4eg== + dependencies: + "@turf/helpers" "^6.5.0" + +"@turf/line-intersect@^6.5.0": + version "6.5.0" + resolved "https://registry.yarnpkg.com/@turf/line-intersect/-/line-intersect-6.5.0.tgz#dea48348b30c093715d2195d2dd7524aee4cf020" + integrity sha512-CS6R1tZvVQD390G9Ea4pmpM6mJGPWoL82jD46y0q1KSor9s6HupMIo1kY4Ny+AEYQl9jd21V3Scz20eldpbTVA== + dependencies: + "@turf/helpers" "^6.5.0" + "@turf/invariant" "^6.5.0" + "@turf/line-segment" "^6.5.0" + "@turf/meta" "^6.5.0" geojson-rbush "3.x" -"@turf/line-segment@^6.3.0": - version "6.3.0" - resolved "https://registry.yarnpkg.com/@turf/line-segment/-/line-segment-6.3.0.tgz#b37d6877ee4425ebc12698860e7d355d1bf2ba9b" - integrity sha512-M+aDy83V+E7jYWNaf+b+A88yhnMrJhyg/lhAj6mU6UeB2PbruXB2qgSmmVDSE2dIknOvZZuIWNzEzUI07RO2kw== +"@turf/line-segment@^6.5.0": + version "6.5.0" + resolved "https://registry.yarnpkg.com/@turf/line-segment/-/line-segment-6.5.0.tgz#ee73f3ffcb7c956203b64ed966d96af380a4dd65" + integrity sha512-jI625Ho4jSuJESNq66Mmi290ZJ5pPZiQZruPVpmHkUw257Pew0alMmb6YrqYNnLUuiVVONxAAKXUVeeUGtycfw== dependencies: - "@turf/helpers" "^6.3.0" - "@turf/invariant" "^6.3.0" - "@turf/meta" "^6.3.0" + "@turf/helpers" "^6.5.0" + "@turf/invariant" "^6.5.0" + "@turf/meta" "^6.5.0" "@turf/meta@6.x", "@turf/meta@^6.3.0": version "6.3.0" @@ -317,39 +330,46 @@ dependencies: "@turf/helpers" "^6.3.0" -"@turf/polygon-to-line@^6.3.0": - version "6.3.0" - resolved "https://registry.yarnpkg.com/@turf/polygon-to-line/-/polygon-to-line-6.3.0.tgz#aa3e1a0ea074479e5cb6c5c111a924bb80ec553e" - integrity sha512-KFGlQlGOBayBvELz+tip1zCa3eB8xyZePZUZ3I3OnU7mk0FFzJzvLTmPUc7MupgqORT4LkNGmyKSVWaz38NTig== +"@turf/meta@^6.5.0": + version "6.5.0" + resolved "https://registry.yarnpkg.com/@turf/meta/-/meta-6.5.0.tgz#b725c3653c9f432133eaa04d3421f7e51e0418ca" + integrity sha512-RrArvtsV0vdsCBegoBtOalgdSOfkBrTJ07VkpiCnq/491W67hnMWmDu7e6Ztw0C3WldRYTXkg3SumfdzZxLBHA== dependencies: - "@turf/helpers" "^6.3.0" - "@turf/invariant" "^6.3.0" + "@turf/helpers" "^6.5.0" -"@turf/rectangle-grid@^6.3.0": - version "6.3.0" - resolved "https://registry.yarnpkg.com/@turf/rectangle-grid/-/rectangle-grid-6.3.0.tgz#d2ddae6b73ca97b30f9f59904227689d66427fa4" - integrity sha512-XQAjpprUhGA9aoVH8H6lqZb0Dk8SZ2djKAPD6dDplFgrufdmP1Fe1BfbsdBgjyfPrdR7hSffLyEAwC3bhfJo2w== +"@turf/polygon-to-line@^6.5.0": + version "6.5.0" + resolved "https://registry.yarnpkg.com/@turf/polygon-to-line/-/polygon-to-line-6.5.0.tgz#4dc86db66168b32bb83ce448cf966208a447d952" + integrity sha512-5p4n/ij97EIttAq+ewSnKt0ruvuM+LIDzuczSzuHTpq4oS7Oq8yqg5TQ4nzMVuK41r/tALCk7nAoBuw3Su4Gcw== dependencies: - "@turf/boolean-intersects" "^6.3.0" - "@turf/distance" "^6.3.0" - "@turf/helpers" "^6.3.0" + "@turf/helpers" "^6.5.0" + "@turf/invariant" "^6.5.0" -"@turf/square-grid@^6.3.0": - version "6.3.0" - resolved "https://registry.yarnpkg.com/@turf/square-grid/-/square-grid-6.3.0.tgz#db25e033a1ea3e833bdb09129abd689d0b19d87f" - integrity sha512-ZCgThI5hPLJNVErCB9zkJ3w3OpW6BbrOqyrxFbwlYGZrZ6uj52/j8PWQtwnmiqdv0k8+Cbxrap7E6//Oks4jIw== +"@turf/rectangle-grid@^6.5.0": + version "6.5.0" + resolved "https://registry.yarnpkg.com/@turf/rectangle-grid/-/rectangle-grid-6.5.0.tgz#c3ef38e8cfdb763012beb1f22e2b77288a37a5cf" + integrity sha512-yQZ/1vbW68O2KsSB3OZYK+72aWz/Adnf7m2CMKcC+aq6TwjxZjAvlbCOsNUnMAuldRUVN1ph6RXMG4e9KEvKvg== dependencies: - "@turf/helpers" "^6.3.0" - "@turf/rectangle-grid" "^6.3.0" + "@turf/boolean-intersects" "^6.5.0" + "@turf/distance" "^6.5.0" + "@turf/helpers" "^6.5.0" -"@turf/triangle-grid@^6.3.0": - version "6.3.0" - resolved "https://registry.yarnpkg.com/@turf/triangle-grid/-/triangle-grid-6.3.0.tgz#e26cdae235811c28fa1b02c7758c121df57d1960" - integrity sha512-2AExXl7pTvRKOyGowuvvUm0tTyLQl+xzvv+mgWgNyg84qQptGN3HFH/QS4quoQdEzOyHNLFHgloNn6cWFX9v4A== +"@turf/square-grid@^6.5.0": + version "6.5.0" + resolved "https://registry.yarnpkg.com/@turf/square-grid/-/square-grid-6.5.0.tgz#3a517301b42ed98aa62d727786dc5290998ddbae" + integrity sha512-mlR0ayUdA+L4c9h7p4k3pX6gPWHNGuZkt2c5II1TJRmhLkW2557d6b/Vjfd1z9OVaajb1HinIs1FMSAPXuuUrA== dependencies: - "@turf/distance" "^6.3.0" - "@turf/helpers" "^6.3.0" - "@turf/intersect" "^6.3.0" + "@turf/helpers" "^6.5.0" + "@turf/rectangle-grid" "^6.5.0" + +"@turf/triangle-grid@^6.5.0": + version "6.5.0" + resolved "https://registry.yarnpkg.com/@turf/triangle-grid/-/triangle-grid-6.5.0.tgz#75664e8b9d9c7ca4c845673134a1e0d82b5e6887" + integrity sha512-2jToUSAS1R1htq4TyLQYPTIsoy6wg3e3BQXjm2rANzw4wPQCXGOxrur1Fy9RtzwqwljlC7DF4tg0OnWr8RjmfA== + dependencies: + "@turf/distance" "^6.5.0" + "@turf/helpers" "^6.5.0" + "@turf/intersect" "^6.5.0" "@types/bson@*": version "4.2.0" @@ -2907,10 +2927,10 @@ pino@^8.8.0: sonic-boom "^3.1.0" thread-stream "^2.0.0" -polygon-clipping@^0.15.2: - version "0.15.2" - resolved "https://registry.yarnpkg.com/polygon-clipping/-/polygon-clipping-0.15.2.tgz#076199182bf23a4a6cf6c7003f3b81ecf30b2cb8" - integrity sha512-qsUFQSY4nA++1/b76dy0BJGwL0FZAk05Y4hZprctLIhAddE8KUUr3TxIF4sAxIQtjH9xvaBe3raaRQrcSI4wlA== +polygon-clipping@^0.15.3: + version "0.15.3" + resolved "https://registry.yarnpkg.com/polygon-clipping/-/polygon-clipping-0.15.3.tgz#0215840438470ba2e9e6593625e4ea5c1087b4b7" + integrity sha512-ho0Xx5DLkgxRx/+n4O74XyJ67DcyN3Tu9bGYKsnTukGAW6ssnuak6Mwcyb1wHy9MZc9xsUWqIoiazkZB5weECg== dependencies: splaytree "^3.1.0" From 6b283a9cd21f84c2d86cc92a1bdec6d3970165df Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 2 Oct 2023 11:48:37 +0200 Subject: [PATCH 294/337] Bump qs from 6.5.2 to 6.5.3 (#674) Bumps [qs](https://github.com/ljharb/qs) from 6.5.2 to 6.5.3. - [Release notes](https://github.com/ljharb/qs/releases) - [Changelog](https://github.com/ljharb/qs/blob/main/CHANGELOG.md) - [Commits](https://github.com/ljharb/qs/compare/v6.5.2...v6.5.3) --- updated-dependencies: - dependency-name: qs dependency-type: indirect ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Matthias Pfeil --- yarn.lock | 21 +++++++-------------- 1 file changed, 7 insertions(+), 14 deletions(-) diff --git a/yarn.lock b/yarn.lock index cfd0ea7e..9fd78736 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3010,24 +3010,17 @@ q@1.x.x: resolved "https://registry.yarnpkg.com/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7" integrity sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc= -qs@^6.5.1: - version "6.10.3" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.10.3.tgz#d6cde1b2ffca87b5aa57889816c5f81535e22e8e" - integrity sha512-wr7M2E0OFRfIfJZjKGieI8lBKb7fRCH4Fv5KNPEs7gJ8jadvotdsS08PzOKR7opXhZ/Xkjtt3WF9g38drmyRqQ== - dependencies: - side-channel "^1.0.4" - -qs@^6.7.0: - version "6.11.0" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.11.0.tgz#fd0d963446f7a65e1367e01abd85429453f0c37a" - integrity sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q== +qs@^6.5.1, qs@^6.7.0: + version "6.11.1" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.11.1.tgz#6c29dff97f0c0060765911ba65cbc9764186109f" + integrity sha512-0wsrzgTz/kAVIeuxSjnpGC56rzYtr6JT/2BwEvMaPhFIoYa1aGO8LbzuU1R0uUYQkLpWBTOj0l/CLAJB64J6nQ== dependencies: side-channel "^1.0.4" qs@~6.5.2: - version "6.5.2" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36" - integrity sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA== + version "6.5.3" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.3.tgz#3aeeffc91967ef6e35c0e488ef46fb296ab76aad" + integrity sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA== quick-format-unescaped@^4.0.3: version "4.0.4" From 3716ab19fe74de634fbd94c71d9dd089b080ce8c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 2 Oct 2023 11:53:19 +0200 Subject: [PATCH 295/337] Bump ansi-regex from 5.0.0 to 5.0.1 (#827) Bumps [ansi-regex](https://github.com/chalk/ansi-regex) from 5.0.0 to 5.0.1. - [Release notes](https://github.com/chalk/ansi-regex/releases) - [Commits](https://github.com/chalk/ansi-regex/compare/v5.0.0...v5.0.1) --- updated-dependencies: - dependency-name: ansi-regex dependency-type: indirect ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- yarn.lock | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/yarn.lock b/yarn.lock index 9fd78736..53331649 100644 --- a/yarn.lock +++ b/yarn.lock @@ -529,12 +529,7 @@ ansi-colors@4.1.1, ansi-colors@^4.1.1: resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.1.tgz#cbb9ae256bf750af1eab344f229aa27fe94ba348" integrity sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA== -ansi-regex@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.0.tgz#388539f55179bf39339c81af30a654d69f87cb75" - integrity sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg== - -ansi-regex@^5.0.1: +ansi-regex@^5.0.0, ansi-regex@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== From a313360e5c8b63f3cdd9d07c245f658264b3a2d8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 2 Oct 2023 11:57:45 +0200 Subject: [PATCH 296/337] Bump get-func-name from 2.0.0 to 2.0.2 (#817) Bumps [get-func-name](https://github.com/chaijs/get-func-name) from 2.0.0 to 2.0.2. - [Release notes](https://github.com/chaijs/get-func-name/releases) - [Commits](https://github.com/chaijs/get-func-name/commits/v2.0.2) --- updated-dependencies: - dependency-name: get-func-name dependency-type: indirect ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Matthias Pfeil --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 53331649..12e9ddcb 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1766,9 +1766,9 @@ get-caller-file@^2.0.5: integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== get-func-name@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/get-func-name/-/get-func-name-2.0.0.tgz#ead774abee72e20409433a066366023dd6887a41" - integrity sha1-6td0q+5y4gQJQzoGY2YCPdaIekE= + version "2.0.2" + resolved "https://registry.yarnpkg.com/get-func-name/-/get-func-name-2.0.2.tgz#0d7cf20cd13fda808669ffa88f4ffc7a3943fc41" + integrity sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ== get-intrinsic@^1.0.2: version "1.1.1" From c57955bdb5da3c8524033fbf240844eb39e3599a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 2 Oct 2023 12:02:25 +0200 Subject: [PATCH 297/337] Bump word-wrap from 1.2.3 to 1.2.4 (#776) Bumps [word-wrap](https://github.com/jonschlinkert/word-wrap) from 1.2.3 to 1.2.4. - [Release notes](https://github.com/jonschlinkert/word-wrap/releases) - [Commits](https://github.com/jonschlinkert/word-wrap/compare/1.2.3...1.2.4) --- updated-dependencies: - dependency-name: word-wrap dependency-type: indirect ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Matthias Pfeil --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 12e9ddcb..7a0f7bcf 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3857,9 +3857,9 @@ wide-align@^1.1.2: string-width "^1.0.2 || 2 || 3 || 4" word-wrap@^1.2.3, word-wrap@~1.2.3: - version "1.2.3" - resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c" - integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ== + version "1.2.4" + resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.4.tgz#cb4b50ec9aca570abd1f52f33cd45b6c61739a9f" + integrity sha512-2V81OA4ugVo5pRo46hAoD2ivUJx8jXmWXfUkY4KFNw0hEptvN0QfH3K4nHiwzGeKl5rFKedV48QVoqYavy4YpA== workerpool@6.2.1: version "6.2.1" From 40dbc6bcfdf479749f1583e3fe4a35e1321fc5af Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 2 Oct 2023 12:07:31 +0200 Subject: [PATCH 298/337] Bump cookiejar from 2.1.3 to 2.1.4 (#710) Bumps [cookiejar](https://github.com/bmeck/node-cookiejar) from 2.1.3 to 2.1.4. - [Release notes](https://github.com/bmeck/node-cookiejar/releases) - [Commits](https://github.com/bmeck/node-cookiejar/commits) --- updated-dependencies: - dependency-name: cookiejar dependency-type: indirect ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Matthias Pfeil --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 7a0f7bcf..616939e4 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1048,9 +1048,9 @@ console-control-strings@^1.0.0, console-control-strings@^1.1.0: integrity sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ== cookiejar@^2.1.0, cookiejar@^2.1.1: - version "2.1.3" - resolved "https://registry.yarnpkg.com/cookiejar/-/cookiejar-2.1.3.tgz#fc7a6216e408e74414b90230050842dacda75acc" - integrity sha512-JxbCBUdrfr6AQjOXrxoTvAMJO4HBTUIlBzslcJPAz+/KT8yk53fXun51u+RenNYvad/+Vc2DIz5o9UxlCDymFQ== + version "2.1.4" + resolved "https://registry.yarnpkg.com/cookiejar/-/cookiejar-2.1.4.tgz#ee669c1fea2cf42dc31585469d193fef0d65771b" + integrity sha512-LDx6oHrK+PhzLKJU9j5S7/Y3jM/mUHvD/DeI1WQmJn652iPC5Y4TBzC9l+5OMOXlyTTA+SmVUPm0HQUwpD5Jqw== core-util-is@1.0.2: version "1.0.2" From c274c5ec155c6bba760eca81769111f3398bdb20 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Mon, 2 Oct 2023 12:20:05 +0200 Subject: [PATCH 299/337] Update chai dependencies (#829) --- package.json | 4 +- yarn.lock | 184 +++++++++++++++++++++++++++++++++------------------ 2 files changed, 121 insertions(+), 67 deletions(-) diff --git a/package.json b/package.json index a060fdd2..ace762be 100644 --- a/package.json +++ b/package.json @@ -21,8 +21,8 @@ "devDependencies": { "@sensebox/eslint-config-sensebox": "^1.1.0", "@turf/invariant": "^6.5.0", - "chai": "^4.3.4", - "chai-http": "^4.3.0", + "chai": "^4.3.10", + "chai-http": "^4.4.0", "chakram": "^1.5.0", "cheerio": "^1.0.0-rc.6", "csv-parse": "^4.15.4", diff --git a/yarn.lock b/yarn.lock index 616939e4..1e2dc07e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -455,10 +455,10 @@ dependencies: "@types/node" "*" -"@types/superagent@^3.8.3": - version "3.8.7" - resolved "https://registry.yarnpkg.com/@types/superagent/-/superagent-3.8.7.tgz#1f1ed44634d5459b3a672eb7235a8e7cfd97704c" - integrity sha512-9KhCkyXv268A2nZ1Wvu7rQWM+BmdYUVkycFeNnYrUL5Zwu7o8wPQ3wBfW59dDP+wuoxw0ww8YKgTNv8j/cgscA== +"@types/superagent@4.1.13": + version "4.1.13" + resolved "https://registry.yarnpkg.com/@types/superagent/-/superagent-4.1.13.tgz#0aaa3f4ff9404b94932d1dcdfb7f3d39d23997a0" + integrity sha512-YIGelp3ZyMiH0/A09PMAORO0EBGlF5xIKfDpK74wdYvWUs2o96b5CItJcWPdH409b7SAXIIG6p8NdU/4U2Maww== dependencies: "@types/cookiejar" "*" "@types/node" "*" @@ -587,6 +587,11 @@ argparse@^2.0.1: resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== +asap@^2.0.0: + version "2.0.6" + resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46" + integrity sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA== + asn1@~0.2.3: version "0.2.4" resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.4.tgz#8d2475dfab553bb33e77b54e59e880bb8ce23136" @@ -806,18 +811,19 @@ chai-as-promised@5.x.x: resolved "https://registry.yarnpkg.com/chai-as-promised/-/chai-as-promised-5.3.0.tgz#09d7a402908aa70dfdbead53e5853fc79d3ef21c" integrity sha1-CdekApCKpw39vq1T5YU/x50+8hw= -chai-http@^4.3.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/chai-http/-/chai-http-4.3.0.tgz#3c37c675c1f4fe685185a307e345de7599337c1a" - integrity sha512-zFTxlN7HLMv+7+SPXZdkd5wUlK+KxH6Q7bIEMiEx0FK3zuuMqL7cwICAQ0V1+yYRozBburYuxN1qZstgHpFZQg== +chai-http@^4.4.0: + version "4.4.0" + resolved "https://registry.yarnpkg.com/chai-http/-/chai-http-4.4.0.tgz#bb8c346caa25b3c76118c68f7a7cecc0493669b8" + integrity sha512-uswN3rZpawlRaa5NiDUHcDZ3v2dw5QgLyAwnQ2tnVNuP7CwIsOFuYJ0xR1WiR7ymD4roBnJIzOUep7w9jQMFJA== dependencies: "@types/chai" "4" - "@types/superagent" "^3.8.3" - cookiejar "^2.1.1" + "@types/superagent" "4.1.13" + charset "^1.0.1" + cookiejar "^2.1.4" is-ip "^2.0.0" methods "^1.1.2" - qs "^6.5.1" - superagent "^3.7.0" + qs "^6.11.2" + superagent "^8.0.9" chai-subset@1.x.x: version "1.6.0" @@ -833,17 +839,18 @@ chai@3.x.x: deep-eql "^0.1.3" type-detect "^1.0.0" -chai@^4.3.4: - version "4.3.4" - resolved "https://registry.yarnpkg.com/chai/-/chai-4.3.4.tgz#b55e655b31e1eac7099be4c08c21964fce2e6c49" - integrity sha512-yS5H68VYOCtN1cjfwumDSuzn/9c+yza4f3reKXlE5rUg7SFcCEy90gJvydNgOYtblyf4Zi6jIWRnXOgErta0KA== +chai@^4.3.10: + version "4.3.10" + resolved "https://registry.yarnpkg.com/chai/-/chai-4.3.10.tgz#d784cec635e3b7e2ffb66446a63b4e33bd390384" + integrity sha512-0UXG04VuVbruMUYbJ6JctvH0YnC/4q3/AkT18q4NaITo91CUm0liMS9VqzT9vZhVQ/1eqPanMWjBM+Juhfb/9g== dependencies: assertion-error "^1.1.0" - check-error "^1.0.2" - deep-eql "^3.0.1" - get-func-name "^2.0.0" + check-error "^1.0.3" + deep-eql "^4.1.3" + get-func-name "^2.0.2" + loupe "^2.3.6" pathval "^1.1.1" - type-detect "^4.0.5" + type-detect "^4.0.8" chakram@^1.5.0: version "1.5.0" @@ -884,10 +891,17 @@ chalk@^4.1.0: ansi-styles "^4.1.0" supports-color "^7.1.0" -check-error@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/check-error/-/check-error-1.0.2.tgz#574d312edd88bb5dd8912e9286dd6c0aed4aac82" - integrity sha1-V00xLt2Iu13YkS6Sht1sCu1KrII= +charset@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/charset/-/charset-1.0.1.tgz#8d59546c355be61049a8fa9164747793319852bd" + integrity sha512-6dVyOOYjpfFcL1Y4qChrAoQLRHvj2ziyhcm0QJlhOcAhykL/k1kTUPbeo+87MNRTRdk2OIIsIXbuF3x2wi5EXg== + +check-error@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/check-error/-/check-error-1.0.3.tgz#a6502e4312a7ee969f646e83bb3ddd56281bd694" + integrity sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg== + dependencies: + get-func-name "^2.0.2" cheerio-select@^1.3.0: version "1.3.0" @@ -996,7 +1010,7 @@ color-support@^1.1.2: resolved "https://registry.yarnpkg.com/color-support/-/color-support-1.1.3.tgz#93834379a1cc9a0c61f82f52f0d04322251bd5a2" integrity sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg== -combined-stream@^1.0.6, combined-stream@~1.0.6: +combined-stream@^1.0.6, combined-stream@^1.0.8, combined-stream@~1.0.6: version "1.0.8" resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg== @@ -1008,7 +1022,7 @@ commist@^3.2.0: resolved "https://registry.yarnpkg.com/commist/-/commist-3.2.0.tgz#da9c8e5f245ac21510badc4b10c46b5bcc9b56cd" integrity sha512-4PIMoPniho+LqXmpS5d3NuGYncG6XWlkBSVGiWycL22dd42OYdUGil2CWuzklaJoNxyxUSpO4MKIBU94viWNAw== -component-emitter@^1.2.0: +component-emitter@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.3.0.tgz#16e4070fba8ae29b679f2215853ee181ab2eabc0" integrity sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg== @@ -1047,7 +1061,7 @@ console-control-strings@^1.0.0, console-control-strings@^1.1.0: resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" integrity sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ== -cookiejar@^2.1.0, cookiejar@^2.1.1: +cookiejar@^2.1.4: version "2.1.4" resolved "https://registry.yarnpkg.com/cookiejar/-/cookiejar-2.1.4.tgz#ee669c1fea2cf42dc31585469d193fef0d65771b" integrity sha512-LDx6oHrK+PhzLKJU9j5S7/Y3jM/mUHvD/DeI1WQmJn652iPC5Y4TBzC9l+5OMOXlyTTA+SmVUPm0HQUwpD5Jqw== @@ -1162,13 +1176,6 @@ debug@4, debug@4.3.4, debug@^4.1.0, debug@^4.3.1, debug@^4.3.4: dependencies: ms "2.1.2" -debug@^3.1.0: - version "3.2.7" - resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a" - integrity sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ== - dependencies: - ms "^2.1.1" - debug@^4.0.1, debug@^4.1.1: version "4.3.1" resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.1.tgz#f0d229c505e0c6d8c49ac553d1b13dc183f6b2ee" @@ -1200,10 +1207,10 @@ deep-eql@^0.1.3: dependencies: type-detect "0.1.1" -deep-eql@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/deep-eql/-/deep-eql-3.0.1.tgz#dfc9404400ad1c8fe023e7da1df1c147c4b444df" - integrity sha512-+QeIQyN5ZuO+3Uk5DYh6/1eKO0m0YmJFGNmFHGACpf1ClL1nmlV/p4gNgbl2pJGxgXb4faqo6UE+M5ACEMyVcw== +deep-eql@^4.1.3: + version "4.1.3" + resolved "https://registry.yarnpkg.com/deep-eql/-/deep-eql-4.1.3.tgz#7c7775513092f7df98d8df9996dd085eb668cc6d" + integrity sha512-WaEtAOpRA1MQ0eohqZjpGD8zdI0Ovsm8mmFhaDN8dvDZzyoUMcYDnf5Y6iu7HTXxf8JDS23qWa4a+hKCDyOPzw== dependencies: type-detect "^4.0.0" @@ -1264,6 +1271,14 @@ detect-node@^2.0.4: resolved "https://registry.yarnpkg.com/detect-node/-/detect-node-2.1.0.tgz#c9c70775a49c3d03bc2c06d9a73be550f978f8b1" integrity sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g== +dezalgo@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/dezalgo/-/dezalgo-1.0.4.tgz#751235260469084c132157dfa857f386d4c33d81" + integrity sha512-rXSP0bf+5n0Qonsb+SVVfNfIsimO4HEtmnIpPHY8Q1UCzKlQrDMfdobr8nJOOsRgWCyMRqeSBQzmWUMq7zvVig== + dependencies: + asap "^2.0.0" + wrappy "1" + diff@5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/diff/-/diff-5.0.0.tgz#7ed6ad76d859d030787ec35855f5b1daf31d852b" @@ -1574,7 +1589,7 @@ extend-object@1.x.x: resolved "https://registry.yarnpkg.com/extend-object/-/extend-object-1.0.0.tgz#42514f84015d1356caf5187969dfb2bc1bda0823" integrity sha1-QlFPhAFdE1bK9Rh5ad+yvBvaCCM= -extend@^3.0.0, extend@~3.0.2: +extend@~3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== @@ -1626,6 +1641,11 @@ fast-redact@^3.1.1: resolved "https://registry.yarnpkg.com/fast-redact/-/fast-redact-3.1.2.tgz#d58e69e9084ce9fa4c1a6fa98a3e1ecf5d7839aa" integrity sha512-+0em+Iya9fKGfEQGcd62Yv6onjBmmhV1uh86XVfOU8VwAe6kaFdQCWI9s0/Nnugx5Vd9tdbZ7e6gE2tR9dzXdw== +fast-safe-stringify@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz#c406a83b6e70d9e35ce3b30a81141df30aeba884" + integrity sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA== + file-entry-cache@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz#211b2dd9659cb0394b073e7323ac3c933d522027" @@ -1680,13 +1700,13 @@ forever-agent@~0.6.1: resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" integrity sha1-+8cfDEGt6zf5bFd60e1C2P2sypE= -form-data@^2.3.1: - version "2.5.1" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.5.1.tgz#f2cbec57b5e59e23716e128fe44d4e5dd23895f4" - integrity sha512-m21N3WOmEEURgk6B9GLOE4RuWOFf28Lhh9qGYeNlGq4VDXUlJy2th2slBNU8Gp8EzloYZOibZJ7t5ecIrFSjVA== +form-data@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.0.tgz#93919daeaf361ee529584b9b31664dc12c9fa452" + integrity sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww== dependencies: asynckit "^0.4.0" - combined-stream "^1.0.6" + combined-stream "^1.0.8" mime-types "^2.1.12" form-data@~2.3.2: @@ -1698,11 +1718,21 @@ form-data@~2.3.2: combined-stream "^1.0.6" mime-types "^2.1.12" -formidable@^1.2.0, formidable@^1.2.1: +formidable@^1.2.1: version "1.2.6" resolved "https://registry.yarnpkg.com/formidable/-/formidable-1.2.6.tgz#d2a51d60162bbc9b4a055d8457a7c75315d1a168" integrity sha512-KcpbcpuLNOwrEjnbpMC0gS+X8ciDoZE1kkqzat4a8vrprf+s9pKNQ/QIwWfbfs4ltgmFl3MD177SNTkve3BwGQ== +formidable@^2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/formidable/-/formidable-2.1.2.tgz#fa973a2bec150e4ce7cac15589d7a25fc30ebd89" + integrity sha512-CM3GuJ57US06mlpQ47YcunuUZ9jpm8Vx+P2CGt2j7HpgkKZO/DJYQ0Bobim8G6PFQmK5lOqOOdUXboU+h73A4g== + dependencies: + dezalgo "^1.0.4" + hexoid "^1.0.0" + once "^1.4.0" + qs "^6.11.0" + fresh@0.5.2: version "0.5.2" resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" @@ -1765,7 +1795,7 @@ get-caller-file@^2.0.5: resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== -get-func-name@^2.0.0: +get-func-name@^2.0.0, get-func-name@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/get-func-name/-/get-func-name-2.0.2.tgz#0d7cf20cd13fda808669ffa88f4ffc7a3943fc41" integrity sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ== @@ -1931,6 +1961,11 @@ help-me@^4.2.0: glob "^8.0.0" readable-stream "^3.6.0" +hexoid@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/hexoid/-/hexoid-1.0.0.tgz#ad10c6573fb907de23d9ec63a711267d9dc9bc18" + integrity sha512-QFLV0taWQOZtvIRIAdBChesmogZrtuXvVWsFHZTk2SU+anspqZ2vMnoLg7IE1+Uk16N19APic1BuF8bC8c2m5g== + honeybadger@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/honeybadger/-/honeybadger-1.4.0.tgz#3c74518b53c9bcb1c3327659d5ea4ead2d3adb43" @@ -2349,6 +2384,13 @@ long@^5.0.0: resolved "https://registry.yarnpkg.com/long/-/long-5.2.3.tgz#a3ba97f3877cf1d778eccbcb048525ebb77499e1" integrity sha512-lcHwpNoggQTObv5apGNCTdJrO69eHOZMi4BNC+rTLER8iHAqGrUVeLh/irVIM7zTw2bOXA8T6uNPeujwOLg/2Q== +loupe@^2.3.6: + version "2.3.6" + resolved "https://registry.yarnpkg.com/loupe/-/loupe-2.3.6.tgz#76e4af498103c532d1ecc9be102036a21f787b53" + integrity sha512-RaPMZKiMy8/JruncMU5Bt6na1eftNoo++R4Y+N2FrxkDVTrGvcyzFTsaGif4QTeKESheMGegbhw6iUAq+5A8zA== + dependencies: + get-func-name "^2.0.0" + lowercase-keys@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-2.0.0.tgz#2603e78b7b4b0006cbca2fbcc8a3202558ac9479" @@ -2383,7 +2425,7 @@ memory-pager@^1.0.2: resolved "https://registry.yarnpkg.com/memory-pager/-/memory-pager-1.5.0.tgz#d8751655d22d384682741c972f2c3d6dfa3e66b5" integrity sha512-ZS4Bp4r/Zoeq6+NLJpP+0Zzm0pR8whtGPf1XExKLJBAczGMnSi3It14OiNCStjQjM6NU1okjQGSxgEZN8eBYKg== -methods@^1.1.1, methods@^1.1.2: +methods@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" integrity sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4= @@ -2407,11 +2449,16 @@ mime-types@^2.1.12, mime-types@~2.1.19: dependencies: mime-db "1.44.0" -mime@1.6.0, mime@^1.4.1: +mime@1.6.0: version "1.6.0" resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== +mime@2.6.0: + version "2.6.0" + resolved "https://registry.yarnpkg.com/mime/-/mime-2.6.0.tgz#a2a682a95cd4d0cb1d6257e28f83da7e35800367" + integrity sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg== + mime@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/mime/-/mime-3.0.0.tgz#b374550dca3a0c18443b0c950a6a58f1931cf7a7" @@ -3005,7 +3052,14 @@ q@1.x.x: resolved "https://registry.yarnpkg.com/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7" integrity sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc= -qs@^6.5.1, qs@^6.7.0: +qs@^6.11.0, qs@^6.11.2: + version "6.11.2" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.11.2.tgz#64bea51f12c1f5da1bc01496f48ffcff7c69d7d9" + integrity sha512-tDNIz22aBzCDxLtVH++VnTfzxlfeK5CbqohpSqpJgj1Wg/cQbStNAz3NuqCs5vV+pjBsK4x4pN9HlVh7rcYRiA== + dependencies: + side-channel "^1.0.4" + +qs@^6.7.0: version "6.11.1" resolved "https://registry.yarnpkg.com/qs/-/qs-6.11.1.tgz#6c29dff97f0c0060765911ba65cbc9764186109f" integrity sha512-0wsrzgTz/kAVIeuxSjnpGC56rzYtr6JT/2BwEvMaPhFIoYa1aGO8LbzuU1R0uUYQkLpWBTOj0l/CLAJB64J6nQ== @@ -3607,21 +3661,21 @@ strip-json-comments@3.1.1, strip-json-comments@^3.1.0, strip-json-comments@^3.1. resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== -superagent@^3.7.0: - version "3.8.3" - resolved "https://registry.yarnpkg.com/superagent/-/superagent-3.8.3.tgz#460ea0dbdb7d5b11bc4f78deba565f86a178e128" - integrity sha512-GLQtLMCoEIK4eDv6OGtkOoSMt3D+oq0y3dsxMuYuDvaNUvuT8eFBuLmfR0iYYzHC1e8hpzC6ZsxbuP6DIalMFA== - dependencies: - component-emitter "^1.2.0" - cookiejar "^2.1.0" - debug "^3.1.0" - extend "^3.0.0" - form-data "^2.3.1" - formidable "^1.2.0" - methods "^1.1.1" - mime "^1.4.1" - qs "^6.5.1" - readable-stream "^2.3.5" +superagent@^8.0.9: + version "8.1.2" + resolved "https://registry.yarnpkg.com/superagent/-/superagent-8.1.2.tgz#03cb7da3ec8b32472c9d20f6c2a57c7f3765f30b" + integrity sha512-6WTxW1EB6yCxV5VFOIPQruWGHqc3yI7hEmZK6h+pyk69Lk/Ut7rLUY6W/ONF2MjBuGjvmMiIpsrVJ2vjrHlslA== + dependencies: + component-emitter "^1.3.0" + cookiejar "^2.1.4" + debug "^4.3.4" + fast-safe-stringify "^2.1.1" + form-data "^4.0.0" + formidable "^2.1.2" + methods "^1.1.2" + mime "2.6.0" + qs "^6.11.0" + semver "^7.3.8" supports-color@8.1.1: version "8.1.1" @@ -3749,7 +3803,7 @@ type-detect@^1.0.0: resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-1.0.0.tgz#762217cc06db258ec48908a1298e8b95121e8ea2" integrity sha1-diIXzAbbJY7EiQihKY6LlRIejqI= -type-detect@^4.0.0, type-detect@^4.0.5: +type-detect@^4.0.0, type-detect@^4.0.8: version "4.0.8" resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c" integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g== From 935c6be19515dbd5790971182dfa64bbd25753c3 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Wed, 11 Oct 2023 15:08:44 +0200 Subject: [PATCH 300/337] chore(luftdaten): add new sps30 templates (#837) --- packages/models/src/box/sensorLayouts/index.js | 4 ++++ .../src/box/sensorLayouts/luftdaten/sps30.bme280.js | 12 ++++++++++++ .../src/box/sensorLayouts/luftdaten/sps30.shtx3.js | 11 +++++++++++ .../src/box/sensorLayouts/sensorDefinitions/index.js | 8 ++++++-- .../sensorDefinitions/sht3x_humidity.js | 8 ++++++++ .../sensorDefinitions/sht3x_temperature.js | 8 ++++++++ 6 files changed, 49 insertions(+), 2 deletions(-) create mode 100644 packages/models/src/box/sensorLayouts/luftdaten/sps30.bme280.js create mode 100644 packages/models/src/box/sensorLayouts/luftdaten/sps30.shtx3.js create mode 100644 packages/models/src/box/sensorLayouts/sensorDefinitions/sht3x_humidity.js create mode 100644 packages/models/src/box/sensorLayouts/sensorDefinitions/sht3x_temperature.js diff --git a/packages/models/src/box/sensorLayouts/index.js b/packages/models/src/box/sensorLayouts/index.js index f5b2adab..c26b27cb 100644 --- a/packages/models/src/box/sensorLayouts/index.js +++ b/packages/models/src/box/sensorLayouts/index.js @@ -16,6 +16,8 @@ const senseboxhome = require('./sensebox.home'), luftdaten_pms5003_bme280 = require('./luftdaten/pms5003.bme280'), luftdaten_pms7003 = require('./luftdaten/pms7003'), luftdaten_pms7003_bme280 = require('./luftdaten/pms7003.bme280'), + luftdaten_sps30_bme280 = require('./luftdaten/sps30.bme280'), + luftdaten_sps30_sht3x = require('./luftdaten/sps30.shtx3'), hackair_home_v2 = require('./hackair/home.v2'), addonFeinstaub = require('./addons/feinstaubAddon'); @@ -52,6 +54,8 @@ const modelDefinitions = { 'luftdaten_pms5003_bme280': luftdaten_pms5003_bme280, 'luftdaten_pms7003': luftdaten_pms7003, 'luftdaten_pms7003_bme280': luftdaten_pms7003_bme280, + 'luftdaten_sps30_bme280': luftdaten_sps30_bme280, + 'luftdaten_sps30_sht3x': luftdaten_sps30_sht3x, 'hackair_home_v2': hackair_home_v2 }; diff --git a/packages/models/src/box/sensorLayouts/luftdaten/sps30.bme280.js b/packages/models/src/box/sensorLayouts/luftdaten/sps30.bme280.js new file mode 100644 index 00000000..45fefff6 --- /dev/null +++ b/packages/models/src/box/sensorLayouts/luftdaten/sps30.bme280.js @@ -0,0 +1,12 @@ +'use strict'; + +const { bme280_humidity, bme280_temperature, bme280_pressure_pa, sps30_pm1, sps30_pm10, sps30_pm25 } = require('../sensorDefinitions'); + +module.exports = [ + sps30_pm1, + sps30_pm25, + sps30_pm10, + bme280_temperature, + bme280_humidity, + bme280_pressure_pa +]; diff --git a/packages/models/src/box/sensorLayouts/luftdaten/sps30.shtx3.js b/packages/models/src/box/sensorLayouts/luftdaten/sps30.shtx3.js new file mode 100644 index 00000000..19c85458 --- /dev/null +++ b/packages/models/src/box/sensorLayouts/luftdaten/sps30.shtx3.js @@ -0,0 +1,11 @@ +'use strict'; + +const { sps30_pm10, sps30_pm25, sps30_pm1, sht3x_temperature, sht3x_humidity } = require('../sensorDefinitions'); + +module.exports = [ + sht3x_temperature, + sht3x_humidity, + sps30_pm1, + sps30_pm25, + sps30_pm10 +]; diff --git a/packages/models/src/box/sensorLayouts/sensorDefinitions/index.js b/packages/models/src/box/sensorLayouts/sensorDefinitions/index.js index 2fb2aba7..f3e669fb 100644 --- a/packages/models/src/box/sensorLayouts/sensorDefinitions/index.js +++ b/packages/models/src/box/sensorLayouts/sensorDefinitions/index.js @@ -47,7 +47,9 @@ const veml6070_uvintensity = require('./veml6070_uvintensity'), sps30_pm1 = require('./sps30_pm1'), sps30_pm25 = require('./sps30_pm25'), sps30_pm4 = require('./sps30_pm4'), - sps30_pm10 = require('./sps30_pm10'); + sps30_pm10 = require('./sps30_pm10'), + sht3x_temperature = require('./sht3x_temperature'), + sht3x_humidity = require('./sht3x_humidity'); module.exports = { hdc1008_temperature, hdc1080_temperature, @@ -95,5 +97,7 @@ module.exports = { sps30_pm1, sps30_pm25, sps30_pm4, - sps30_pm10 + sps30_pm10, + sht3x_temperature, + sht3x_humidity }; diff --git a/packages/models/src/box/sensorLayouts/sensorDefinitions/sht3x_humidity.js b/packages/models/src/box/sensorLayouts/sensorDefinitions/sht3x_humidity.js new file mode 100644 index 00000000..f8d8f842 --- /dev/null +++ b/packages/models/src/box/sensorLayouts/sensorDefinitions/sht3x_humidity.js @@ -0,0 +1,8 @@ +'use strict'; + +module.exports = { + title: 'rel. Luftfeuchte', + unit: '%', + sensorType: 'SHT3X', + icon: 'osem-humidity' +}; diff --git a/packages/models/src/box/sensorLayouts/sensorDefinitions/sht3x_temperature.js b/packages/models/src/box/sensorLayouts/sensorDefinitions/sht3x_temperature.js new file mode 100644 index 00000000..3063183e --- /dev/null +++ b/packages/models/src/box/sensorLayouts/sensorDefinitions/sht3x_temperature.js @@ -0,0 +1,8 @@ +'use strict'; + +module.exports = { + title: 'Temperatur', + unit: '°C', + sensorType: 'SHT3X', + icon: 'osem-thermometer' +}; From b206af6bd5954b3d03464ae44230719e35808bed Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 11 Oct 2023 15:37:04 +0200 Subject: [PATCH 301/337] Bump bullmq from 3.10.1 to 4.12.3 (#835) Bumps [bullmq](https://github.com/taskforcesh/bullmq) from 3.10.1 to 4.12.3. - [Release notes](https://github.com/taskforcesh/bullmq/releases) - [Commits](https://github.com/taskforcesh/bullmq/compare/v3.10.1...v4.12.3) --- updated-dependencies: - dependency-name: bullmq dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Matthias Pfeil --- packages/models/package.json | 2 +- yarn.lock | 34 ++++++++++++++++++++-------------- 2 files changed, 21 insertions(+), 15 deletions(-) diff --git a/packages/models/package.json b/packages/models/package.json index 937c32c6..b0b1ddbf 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -10,7 +10,7 @@ "@sensebox/osem-protos": "^1.1.0", "@sensebox/sketch-templater": "1.13.1", "bcrypt": "^5.1.0", - "bullmq": "^3.10.1", + "bullmq": "^4.12.3", "config": "^3.3.6", "got": "^11.8.2", "isemail": "^3.0.0", diff --git a/yarn.lock b/yarn.lock index 1e2dc07e..841bc0b2 100644 --- a/yarn.lock +++ b/yarn.lock @@ -751,17 +751,18 @@ buffer@^6.0.3: base64-js "^1.3.1" ieee754 "^1.2.1" -bullmq@^3.10.1: - version "3.10.1" - resolved "https://registry.yarnpkg.com/bullmq/-/bullmq-3.10.1.tgz#798ce661cdb9dd3acb9a5748c4e7e351a2b46edd" - integrity sha512-NHysIgywLRB0C1OXY1YQPXsDRnozBWBREPTyeX72ARolkHMkj0IXY+nG36N1pxc2OToPkMHyhSQxaY4jmaM0VQ== +bullmq@^4.12.3: + version "4.12.3" + resolved "https://registry.yarnpkg.com/bullmq/-/bullmq-4.12.3.tgz#0c649b9a5e48227519c526ee9edd96b982eee22d" + integrity sha512-4uPp4NQTALFF+eFK7g8VJM+rt0aiduQdzBomgiEO1OK4OE+TdgC6cjGXooKI/asuB8iDhSZ+pSnGYy5Xyr6qRA== dependencies: cron-parser "^4.6.0" glob "^8.0.3" - ioredis "^5.3.0" + ioredis "^5.3.2" lodash "^4.17.21" msgpackr "^1.6.2" - semver "^7.3.7" + node-abort-controller "^3.1.1" + semver "^7.5.4" tslib "^2.0.0" uuid "^9.0.0" @@ -2092,10 +2093,10 @@ inherits@2, inherits@2.0.4, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, i resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== -ioredis@^5.3.0: - version "5.3.1" - resolved "https://registry.yarnpkg.com/ioredis/-/ioredis-5.3.1.tgz#55d394a51258cee3af9e96c21c863b1a97bf951f" - integrity sha512-C+IBcMysM6v52pTLItYMeV4Hz7uriGtoJdz7SSBDX6u+zwSYGirLdQh3L7t/OItWITcw3gTFMjJReYUwS4zihg== +ioredis@^5.3.2: + version "5.3.2" + resolved "https://registry.yarnpkg.com/ioredis/-/ioredis-5.3.2.tgz#9139f596f62fc9c72d873353ac5395bcf05709f7" + integrity sha512-1DKMMzlIHM02eBBVOFQ1+AolGjs6+xEcM4PDL7NqOS6szq7H9jSaEkIUH6/a5Hl241LzW6JLSiAbNvTQjUupUA== dependencies: "@ioredis/commands" "^1.1.1" cluster-key-slot "^1.1.0" @@ -2713,6 +2714,11 @@ negotiator@^0.6.2: resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.3.tgz#58e323a72fedc0d6f9cd4d31fe49f51479590ccd" integrity sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg== +node-abort-controller@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/node-abort-controller/-/node-abort-controller-3.1.1.tgz#a94377e964a9a37ac3976d848cb5c765833b8548" + integrity sha512-AGK2yQKIjRuqnc6VkX2Xj5d+QW8xZ87pa1UK6yA6ouUyuxfHuMP6umE5QK7UmTeOAymo+Zx1Fxiuw9rVx8taHQ== + node-addon-api@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-5.0.0.tgz#7d7e6f9ef89043befdb20c1989c905ebde18c501" @@ -3376,10 +3382,10 @@ semver@^6.0.0: resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== -semver@^7.2.1, semver@^7.3.5, semver@^7.3.7, semver@^7.3.8: - version "7.3.8" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.8.tgz#07a78feafb3f7b32347d725e33de7e2a2df67798" - integrity sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A== +semver@^7.2.1, semver@^7.3.5, semver@^7.3.8, semver@^7.5.4: + version "7.5.4" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.4.tgz#483986ec4ed38e1c6c48c34894a9182dbff68a6e" + integrity sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA== dependencies: lru-cache "^6.0.0" From 108d4a691859e7218141f3c6105e80c57ddb461c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 11 Oct 2023 15:41:50 +0200 Subject: [PATCH 302/337] Bump semver from 6.3.0 to 6.3.1 (#838) Bumps [semver](https://github.com/npm/node-semver) from 6.3.0 to 6.3.1. - [Release notes](https://github.com/npm/node-semver/releases) - [Changelog](https://github.com/npm/node-semver/blob/v6.3.1/CHANGELOG.md) - [Commits](https://github.com/npm/node-semver/compare/v6.3.0...v6.3.1) --- updated-dependencies: - dependency-name: semver dependency-type: indirect ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 841bc0b2..80a8eee8 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3378,9 +3378,9 @@ select-hose@^2.0.0: integrity sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg== semver@^6.0.0: - version "6.3.0" - resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" - integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== + version "6.3.1" + resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" + integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== semver@^7.2.1, semver@^7.3.5, semver@^7.3.8, semver@^7.5.4: version "7.5.4" From 09f540e2ecf05c66bd3fc689896a8a0093f6e466 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 12 Oct 2023 14:51:35 +0200 Subject: [PATCH 303/337] Bump bcrypt from 5.1.0 to 5.1.1 (#839) Bumps [bcrypt](https://github.com/kelektiv/node.bcrypt.js) from 5.1.0 to 5.1.1. - [Release notes](https://github.com/kelektiv/node.bcrypt.js/releases) - [Changelog](https://github.com/kelektiv/node.bcrypt.js/blob/master/CHANGELOG.md) - [Commits](https://github.com/kelektiv/node.bcrypt.js/compare/v5.1.0...v5.1.1) --- updated-dependencies: - dependency-name: bcrypt dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- packages/models/package.json | 2 +- yarn.lock | 18 +++++++++--------- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/packages/models/package.json b/packages/models/package.json index b0b1ddbf..8136b7eb 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -9,7 +9,7 @@ "@grpc/proto-loader": "^0.7.10", "@sensebox/osem-protos": "^1.1.0", "@sensebox/sketch-templater": "1.13.1", - "bcrypt": "^5.1.0", + "bcrypt": "^5.1.1", "bullmq": "^4.12.3", "config": "^3.3.6", "got": "^11.8.2", diff --git a/yarn.lock b/yarn.lock index 80a8eee8..beaea053 100644 --- a/yarn.lock +++ b/yarn.lock @@ -61,10 +61,10 @@ resolved "https://registry.yarnpkg.com/@ioredis/commands/-/commands-1.2.0.tgz#6d61b3097470af1fdbbe622795b8921d42018e11" integrity sha512-Sx1pU8EM64o2BrqNpEO1CNLtKQwyhuXuqyfH7oGKCk+1a33d2r5saW8zNwm3j6BTExtjrv2BxTgzzkMwts6vGg== -"@mapbox/node-pre-gyp@^1.0.10": - version "1.0.10" - resolved "https://registry.yarnpkg.com/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.10.tgz#8e6735ccebbb1581e5a7e652244cadc8a844d03c" - integrity sha512-4ySo4CjzStuprMwk35H5pPbkymjv1SF3jGLj6rAHp/xT/RF7TL7bd9CTm1xDY49K2qF7jmR/g7k+SkLETP6opA== +"@mapbox/node-pre-gyp@^1.0.11": + version "1.0.11" + resolved "https://registry.yarnpkg.com/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.11.tgz#417db42b7f5323d79e93b34a6d7a2a12c0df43fa" + integrity sha512-Yhlar6v9WQgUp/He7BdgzOz8lqMQ8sU+jkCq7Wx8Myc5YFJLbEe7lgui/V7G1qB1DJykHSGwreceSaD60Y0PUQ== dependencies: detect-libc "^2.0.0" https-proxy-agent "^5.0.0" @@ -651,12 +651,12 @@ bcrypt-pbkdf@^1.0.0: dependencies: tweetnacl "^0.14.3" -bcrypt@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/bcrypt/-/bcrypt-5.1.0.tgz#bbb27665dbc400480a524d8991ac7434e8529e17" - integrity sha512-RHBS7HI5N5tEnGTmtR/pppX0mmDSBpQ4aCBsj7CEQfYXDcO74A8sIBYcJMuCsis2E81zDxeENYhv66oZwLiA+Q== +bcrypt@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/bcrypt/-/bcrypt-5.1.1.tgz#0f732c6dcb4e12e5b70a25e326a72965879ba6e2" + integrity sha512-AGBHOG5hPYZ5Xl9KXzU5iKq9516yEmvCKDg3ecP5kX2aB6UqTeXZxk2ELnDgDm6BQSMlLt9rDB4LoSMx0rYwww== dependencies: - "@mapbox/node-pre-gyp" "^1.0.10" + "@mapbox/node-pre-gyp" "^1.0.11" node-addon-api "^5.0.0" binary-extensions@^2.0.0: From e4f3c3e0a7606772dfe4bcb21eba89e776d3bbde Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Fri, 13 Oct 2023 17:22:12 +0200 Subject: [PATCH 304/337] Update actions and use correct node version (#841) --- .github/workflows/deploy-docs.yaml | 12 ++++++------ .github/workflows/registry-purge-pr.yaml | 4 ++-- .github/workflows/registry-purge.yaml | 6 +++--- .github/workflows/registry.yaml | 10 +++++----- .github/workflows/test.yaml | 20 ++++++++++---------- 5 files changed, 26 insertions(+), 26 deletions(-) diff --git a/.github/workflows/deploy-docs.yaml b/.github/workflows/deploy-docs.yaml index 0c94b298..7782dcd1 100644 --- a/.github/workflows/deploy-docs.yaml +++ b/.github/workflows/deploy-docs.yaml @@ -1,4 +1,4 @@ -name: Deploy docs +name: 🚀 Deploy docs on: release: @@ -12,12 +12,12 @@ on: jobs: test: - name: Deploy docs + name: 🚀 Deploy docs runs-on: ubuntu-20.04 steps: - uses: actions/checkout@v4 - - name: Gather branch information + - name: 📋 Gather branch information id: version_info continue-on-error: true run: | @@ -26,15 +26,15 @@ jobs: echo "We're running on version ${version}" - - name: Append the current version to the introduction document + - name: 🛠️ Append the current version to the introduction document run: | sed -i "1 s|$| ${{ steps.version_info.outputs.version }}|" apidoc/introduction.md - - name: Run apidoc + - name: 🏃🏼 Run apidoc run: | npx apidoc@0.17.6 -i . -f js -e node_modules - - name: Deploy apidocs for git tags + - name: 🚀 Deploy apidocs for git tags if: ${{ github.event_name == 'release' && github.event.action == 'published' }} run: | set -e diff --git a/.github/workflows/registry-purge-pr.yaml b/.github/workflows/registry-purge-pr.yaml index fbabdf0b..50259082 100644 --- a/.github/workflows/registry-purge-pr.yaml +++ b/.github/workflows/registry-purge-pr.yaml @@ -1,4 +1,4 @@ -name: Purge Pull Request Image +name: 🗑️ Purge Pull Request Image # https://docs.github.com/en/actions/reference/events-that-trigger-workflows#registry_package # Purge Pull Request Image @@ -10,7 +10,7 @@ jobs: purge_pr_image: runs-on: ubuntu-latest steps: - - name: Purge Pull Request Image + - name: 💣 Purge Pull Request Image uses: vlaurin/action-ghcr-prune@v0.5.0 with: token: ${{ secrets.GHCR_TOKEN}} diff --git a/.github/workflows/registry-purge.yaml b/.github/workflows/registry-purge.yaml index 153d0c7c..9d1fefef 100644 --- a/.github/workflows/registry-purge.yaml +++ b/.github/workflows/registry-purge.yaml @@ -1,4 +1,4 @@ -name: Purge untagged images +name: 🗑️ Purge untagged images # https://docs.github.com/en/actions/reference/events-that-trigger-workflows#registry_package # Run cleanup job if a new package was published or updated @@ -9,10 +9,10 @@ jobs: purge_untagged_images: runs-on: ubuntu-latest steps: - - name: clean packages + - name: 🧹 clean packages uses: vlaurin/action-ghcr-prune@v0.5.0 with: token: ${{ secrets.GHCR_TOKEN}} organization: ${{ github.repository_owner}} container: ${{ github.event.repository.name }} - untagged: true \ No newline at end of file + prune-untagged: true \ No newline at end of file diff --git a/.github/workflows/registry.yaml b/.github/workflows/registry.yaml index c517df02..dc5ffc28 100644 --- a/.github/workflows/registry.yaml +++ b/.github/workflows/registry.yaml @@ -1,4 +1,4 @@ -name: Build and publish to Github Container Registry +name: 🏗️ Build and publish to Github Container Registry on: push: @@ -20,17 +20,17 @@ jobs: packages: write steps: - - name: Checkout repository + - name: ⬇️ Checkout repository uses: actions/checkout@v4 - - name: Log in to the Container registry + - name: 🔑 Log in to the Container registry uses: docker/login-action@v3.0.0 with: registry: ${{ env.REGISTRY }} username: ${{ github.actor }} password: ${{ secrets.GHCR_TOKEN }} - - name: Extract metadata (tags, labels) for Docker + - name: 📋 Extract metadata (tags, labels) for Docker id: meta uses: docker/metadata-action@v5.0.0 with: @@ -40,7 +40,7 @@ jobs: prefix= suffix= - - name: Build and push Docker image + - name: 🐳 Build and push Docker image uses: docker/build-push-action@v5.0.0 with: context: . diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index cd3ca873..50e33f40 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -1,4 +1,4 @@ -name: Test and build +name: 👷🏼 Test and build on: push: @@ -10,22 +10,22 @@ on: jobs: lint: - name: Lint code + name: 🔬 Lint code runs-on: ubuntu-20.04 steps: - uses: actions/checkout@v4 - - name: Install Node.js 16 + - name: ⬣ Install Node.js uses: actions/setup-node@v3.8.1 with: - node-version: 16 + node-version: 18 - - name: Get yarn cache directory path + - name: 📁 Get yarn cache directory path id: yarn-cache-dir-path run: | echo "##[set-output name=dir;]$(yarn cache dir)" - - name: Restore yarn cache + - name: 🔧 Restore yarn cache uses: actions/cache@v3.3.2 id: yarn-cache with: @@ -34,20 +34,20 @@ jobs: restore-keys: | ${{ runner.os }}-yarn- - - name: Install project dependencies + - name: ⬇️ Install project dependencies run: | yarn --prefer-offline --pure-lockfile - - name: Run eslint + - name: 🔬 Run eslint run: | yarn run lint:ci test: - name: Run tests + name: ⚡ Run tests runs-on: ubuntu-20.04 steps: - uses: actions/checkout@v4 - - name: Execute tests + - name: ⚡ Execute tests run: | yarn test From 6b78c2adc16accffaead82160c7e660c641d33b3 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Fri, 20 Oct 2023 16:01:06 +0200 Subject: [PATCH 305/337] feat(user): add myBadges integration (#834) * Add myBadges integration * initial user integrations * grant badge only if user has mybadges integration enabled * check integrations before updating user * check integrations object before usage --- config/config.example.json | 12 +++++ config/default.js | 18 +++++-- .../api/lib/controllers/usersController.js | 40 +++++++------- packages/api/lib/helpers/badgrQuery.js | 52 +++++++++++++++++++ packages/api/lib/routes.js | 9 +++- packages/models/src/user/integrations.js | 38 ++++++++++++++ packages/models/src/user/user.js | 40 ++++++++++++-- 7 files changed, 181 insertions(+), 28 deletions(-) create mode 100644 packages/api/lib/helpers/badgrQuery.js create mode 100644 packages/models/src/user/integrations.js diff --git a/config/config.example.json b/config/config.example.json index 11692621..960251b1 100644 --- a/config/config.example.json +++ b/config/config.example.json @@ -84,6 +84,18 @@ // Default: 604800000 // 1 Week "validity_ms": 302400000 }, + "integrations": { + "mybadges": { + "queue": "", + "redis": { + "host": "", + "port": 6379, + "username": "", + "password": "", + "db": 0 + } + } + }, // Configuration for the @sensebox/opensensemap-api-models package "openSenseMap-API-models": { // Keys for configuring the mongo db connection diff --git a/config/default.js b/config/default.js index 70ba3f3a..5ae6434c 100644 --- a/config/default.js +++ b/config/default.js @@ -19,19 +19,31 @@ const defaults = { boxes: '/boxes', users: '/users', statistics: '/statistics', - management: '/management', + management: '/management' }, jwt: { secret: 'OH GOD THIS IS SO INSECURE PLS CHANGE ME', // should be at least 32 characters algorithm: 'HS256', validity_ms: 3600000, // 1 hour - issuer: '', // usually the base url of the api. generated if not set from api_protocol and api_base_domain. for example https://api.opensensemap.org + issuer: '' // usually the base url of the api. generated if not set from api_protocol and api_base_domain. for example https://api.opensensemap.org }, refresh_token: { secret: 'I ALSO WANT TO BE CHANGED', algorithm: 'sha256', - validity_ms: 604800000, // 1 week + validity_ms: 604800000 // 1 week }, + integrations: { + mybadges: { + queue: 'badgr', + redis: { + host: 'localhost', + port: 6379, + username: 'queue', + password: 'somepassword', + db: 0 + } + } + } }; // computed keys diff --git a/packages/api/lib/controllers/usersController.js b/packages/api/lib/controllers/usersController.js index effaf51c..635591d6 100644 --- a/packages/api/lib/controllers/usersController.js +++ b/packages/api/lib/controllers/usersController.js @@ -53,10 +53,10 @@ const { User } = require('@sensebox/opensensemap-api-models'), * @apiSuccess (Created 201) {Object} data `{ "user": {"name":"fullname","email":"test@test.de","role":"user","language":"en_US","boxes":[],"emailIsConfirmed":false} }` */ const registerUser = async function registerUser (req, res) { - const { email, password, language, name } = req._userParams; + const { email, password, language, name, integrations } = req._userParams; try { - const newUser = await new User({ name, email, password, language }).save(); + const newUser = await new User({ name, email, password, language, integrations }).save(); postToMattermost( `New User: ${newUser.name} (${redactEmail(newUser.email)})` ); @@ -402,51 +402,50 @@ module.exports = { { predef: 'password' }, { name: 'name', required: true, dataType: 'as-is' }, { name: 'language', defaultValue: 'en_US' }, + { name: 'integrations', dataType: 'object' } ]), - registerUser, + registerUser ], signIn: [ checkContentType, retrieveParameters([ { name: 'email', required: true }, - { predef: 'password' }, + { predef: 'password' } ]), - signIn, + signIn ], signOut, resetPassword: [ checkContentType, retrieveParameters([ { name: 'token', required: true }, - { predef: 'password' }, + { predef: 'password' } ]), - resetPassword, + resetPassword ], requestResetPassword: [ checkContentType, retrieveParameters([{ name: 'email', dataType: 'email', required: true }]), - requestResetPassword, + requestResetPassword ], confirmEmailAddress: [ checkContentType, retrieveParameters([ { name: 'token', required: true }, - { name: 'email', dataType: 'email', required: true }, + { name: 'email', dataType: 'email', required: true } ]), - confirmEmailAddress, + confirmEmailAddress ], requestEmailConfirmation, getUserBox: [ - retrieveParameters([ - { predef: 'boxId', required: true } - ]), - getUserBox, + retrieveParameters([{ predef: 'boxId', required: true }]), + getUserBox ], getUserBoxes: [ retrieveParameters([ - { name: 'page', dataType: 'Integer', defaultValue: 0, min: 0 }, + { name: 'page', dataType: 'Integer', defaultValue: 0, min: 0 } ]), - getUserBoxes, + getUserBoxes ], updateUser: [ checkContentType, @@ -456,18 +455,19 @@ module.exports = { { predef: 'password', name: 'newPassword', required: false }, { name: 'name', dataType: 'as-is' }, { name: 'language' }, + { name: 'integrations', dataType: 'object' } ]), - updateUser, + updateUser ], getUser, refreshJWT: [ checkContentType, retrieveParameters([{ name: 'token', required: true }]), - refreshJWT, + refreshJWT ], deleteUser: [ checkContentType, retrieveParameters([{ predef: 'password' }]), - deleteUser, - ], + deleteUser + ] }; diff --git a/packages/api/lib/helpers/badgrQuery.js b/packages/api/lib/helpers/badgrQuery.js new file mode 100644 index 00000000..6e0881e0 --- /dev/null +++ b/packages/api/lib/helpers/badgrQuery.js @@ -0,0 +1,52 @@ +'use strict'; + +const log = require('@sensebox/opensensemap-api-models/src/log'); +const { Queue } = require('bullmq'); +const config = require('config').get('integrations.mybadges'); + +let queue; + +const requestQueue = () => { + if (queue) { + return queue; + } + queue = new Queue(config.get('queue'), { + connection: { + host: config.get('redis.host'), + port: config.get('redis.port'), + username: config.get('redis.username'), + password: config.get('redis.password'), + db: config.get('redis.db'), + } + }); + + return queue; +}; + +const grantBadge = async function (req) { + + const integrationEnabled = req.user.get('integrations.mybadges.enabled'); + + if (!integrationEnabled) {return;} + + const payload = { + email: req.user.email, + route: req.route + }; + + return requestQueue() + .add('grant-badge', payload, { + removeOnComplete: true + }) + .then((response) => { + log.info({ + msg: 'Successfully added grant-badge to queue', + job_id: response.id, + template: response.name + }); + }); +}; + +module.exports = { + grantBadge: grantBadge +}; diff --git a/packages/api/lib/routes.js b/packages/api/lib/routes.js index dccd8f9e..a8a9e5c7 100644 --- a/packages/api/lib/routes.js +++ b/packages/api/lib/routes.js @@ -9,7 +9,8 @@ const { usersController, config = require('config'), { getVersion } = require('./helpers/apiUtils'), { verifyJwt } = require('./helpers/jwtHelpers'), - { initUserParams, checkPrivilege } = require('./helpers/userParamHelpers'); + { initUserParams, checkPrivilege } = require('./helpers/userParamHelpers'), + { grantBadge } = require('./helpers/badgrQuery'); const spaces = function spaces (num) { let str = ' '; @@ -140,7 +141,11 @@ const initRoutes = function initRoutes (server) { // The .use() method runs now for all routes // https://github.com/restify/node-restify/issues/1685 for (const route of routes.auth) { - server[route.method]({ path: route.path }, [verifyJwt, route.handler]); + server[route.method]({ path: route.path }, [ + verifyJwt, + route.handler, + grantBadge + ]); } // Attach verifyJwt and checkPrivilage routes (needs authorization through jwt) diff --git a/packages/models/src/user/integrations.js b/packages/models/src/user/integrations.js new file mode 100644 index 00000000..70bf03f2 --- /dev/null +++ b/packages/models/src/user/integrations.js @@ -0,0 +1,38 @@ +'use strict'; + +const { mongoose } = require('../db'); + +const myBadgesSchema = new mongoose.Schema( + { + enabled: { + type: Boolean, + default: false, + required: false + } + }, + { _id: false, usePushEach: true } +); + +const integrationSchema = new mongoose.Schema( + { + mybadges: { + type: myBadgesSchema, + required: false + } + }, + { _id: false, usePushEach: true } +); + +const addIntegrationsToSchema = function addIntegrationsToSchema (schema) { + schema.add({ + integrations: { + type: integrationSchema + } + }); +}; + +module.exports = { + schema: integrationSchema, + addToSchema: addIntegrationsToSchema, + // no model, because it is used as subdocument in userSchema +}; diff --git a/packages/models/src/user/user.js b/packages/models/src/user/user.js index ea20c648..4775ee68 100644 --- a/packages/models/src/user/user.js +++ b/packages/models/src/user/user.js @@ -1,5 +1,7 @@ 'use strict'; +const integrations = require('./integrations'); + /** * Interesting reads: * https://blogs.dropbox.com/tech/2016/09/how-dropbox-securely-stores-your-passwords/ @@ -11,6 +13,7 @@ const { mongoose } = require('../db'), bcrypt = require('bcrypt'), crypto = require('crypto'), + util = require('util'), { min_length: password_min_length, salt_factor: password_salt_factor } = require('config').get('openSenseMap-API-models.password'), { max_boxes: pagination_max_boxes } = require('config').get('openSenseMap-API-models.pagination'), { v4: uuidv4 } = require('uuid'), @@ -103,8 +106,22 @@ const userSchema = new mongoose.Schema({ }, { usePushEach: true }); userSchema.plugin(timestamp); -const toJSONProps = ['name', 'email', 'role', 'language', 'boxes', 'emailIsConfirmed'], - toJSONSecretProps = ['_id', 'unconfirmedEmail', 'lastUpdatedBy', 'createdAt', 'updatedAt']; +const toJSONProps = [ + 'name', + 'email', + 'role', + 'language', + 'boxes', + 'emailIsConfirmed', + 'integrations' + ], + toJSONSecretProps = [ + '_id', + 'unconfirmedEmail', + 'lastUpdatedBy', + 'createdAt', + 'updatedAt' + ]; // only send out names and email.. userSchema.set('toJSON', { @@ -469,7 +486,7 @@ userSchema.methods.resendEmailConfirmation = function resendEmailConfirmation () }); }; -userSchema.methods.updateUser = function updateUser ({ email, language, name, currentPassword, newPassword }) { +userSchema.methods.updateUser = function updateUser ({ email, language, name, currentPassword, newPassword, integrations }) { const user = this; // don't allow email and password change in one request @@ -531,6 +548,20 @@ userSchema.methods.updateUser = function updateUser ({ email, language, name, cu somethingsChanged = true; } + const existingUserIntegrations = user.get('integrations') ? user.get('integrations').toObject() : undefined; + if (integrations && !existingUserIntegrations) { + user.set('integrations', integrations); + somethingsChanged = true; + } else if (integrations && !util.isDeepStrictEqual(existingUserIntegrations, integrations)) { + const mergedProperties = { + ...existingUserIntegrations, + ...integrations + }; + user.set('integrations', mergedProperties); + + somethingsChanged = true; + } + if (somethingsChanged === false) { return { updated: false }; } @@ -680,6 +711,9 @@ userSchema.post('update', handleE11000); userSchema.post('findOneAndUpdate', handleE11000); userSchema.post('insertMany', handleE11000); +// add integrations schema as user.integrations +integrations.addToSchema(userSchema); + const userModel = mongoose.model('User', userSchema); module.exports = { From ec2c24f9359521733ee4ed4e7d6baf5182610ae3 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Mon, 30 Oct 2023 09:07:22 +0100 Subject: [PATCH 306/337] v3.2.0 --- packages/models/CHANGELOG.md | 10 ++++++++++ packages/models/package.json | 2 +- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/packages/models/CHANGELOG.md b/packages/models/CHANGELOG.md index b86604d1..aa151f16 100644 --- a/packages/models/CHANGELOG.md +++ b/packages/models/CHANGELOG.md @@ -2,6 +2,16 @@ ## Unreleased +## v3.2.0 + +- Add `user` integrations (myBadges) (#834) +- Add new Sensor.Community device templates (#837) +- Fix response if user was not updated (#820) +- Update `mongoose` dependency (#813) +- Update `bcrypt` dependency (#839) +- Update `bullmq` dependency (#835) +- Update `grpc` dependencies (#824) + ## v3.1.0 - Add `page` parameter to `getBoxes` method in user model diff --git a/packages/models/package.json b/packages/models/package.json index 8136b7eb..4b57346f 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -1,7 +1,7 @@ { "name": "@sensebox/opensensemap-api-models", "description": "openSenseMap data models and database connection", - "version": "3.1.0", + "version": "3.2.0", "main": "index.js", "license": "MIT", "dependencies": { From 2180748ae0ba2ab62025f61b4cc3d8f4d34f2550 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Mon, 30 Oct 2023 09:26:56 +0100 Subject: [PATCH 307/337] v11.2.0 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index ace762be..bc7ad789 100644 --- a/package.json +++ b/package.json @@ -32,5 +32,5 @@ "mqtt": "^5.0.5", "randomgeojson": "^1.0.0" }, - "version": "0.0.0" + "version": "11.2.0" } From fe374348777e9fcc52a1a20a047e490d57d3e4d9 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Mon, 30 Oct 2023 09:29:02 +0100 Subject: [PATCH 308/337] Update Changelog and release v11.2.0 --- CHANGELOG.md | 10 ++++++++++ packages/api/package.json | 2 +- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 3b2e28dc..a659e173 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,15 @@ # openSenseMap API Changelog +## v11.2.0 + +- Use @sensebox/opensensemap-api-models v3.2.0 +- Add `myBadges` integration (#834) +- Update `restify` dependency (#801) +- Update `mocha` dependency (#825) +- Update `chai` dependency (#829) +- Update `mqtt` dependency (#826) +- Update `turf` dependency (#828) + ## v11.1.0 - Use @sensebox/opensensemap-api-models v3.1.0 diff --git a/packages/api/package.json b/packages/api/package.json index 8ac016d9..9bd1ad48 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -12,7 +12,7 @@ "Felix Erdmann" ], "dependencies": { - "@sensebox/opensensemap-api-models": "3.1.0", + "@sensebox/opensensemap-api-models": "3.2.0", "@turf/area": "^6.5.0", "@turf/bbox": "^6.5.0", "@turf/centroid": "^6.5.0", From 3684ded23dcd0f22b7a3221a52ce392de465741b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 30 Oct 2023 10:28:34 +0100 Subject: [PATCH 309/337] Bump actions/setup-node from 3.8.1 to 4.0.0 (#847) Bumps [actions/setup-node](https://github.com/actions/setup-node) from 3.8.1 to 4.0.0. - [Release notes](https://github.com/actions/setup-node/releases) - [Commits](https://github.com/actions/setup-node/compare/v3.8.1...v4.0.0) --- updated-dependencies: - dependency-name: actions/setup-node dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Matthias Pfeil --- .github/workflows/test.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index 50e33f40..700eb550 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -16,7 +16,7 @@ jobs: - uses: actions/checkout@v4 - name: ⬣ Install Node.js - uses: actions/setup-node@v3.8.1 + uses: actions/setup-node@v4.0.0 with: node-version: 18 From ca4dfce572712d16432a818fc9f3d8f09de71c03 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 30 Oct 2023 10:36:00 +0100 Subject: [PATCH 310/337] Bump http-cache-semantics from 4.1.0 to 4.1.1 (#717) Bumps [http-cache-semantics](https://github.com/kornelski/http-cache-semantics) from 4.1.0 to 4.1.1. - [Release notes](https://github.com/kornelski/http-cache-semantics/releases) - [Commits](https://github.com/kornelski/http-cache-semantics/compare/v4.1.0...v4.1.1) --- updated-dependencies: - dependency-name: http-cache-semantics dependency-type: indirect ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Matthias Pfeil --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index beaea053..1f52f010 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1996,9 +1996,9 @@ htmlparser2@^6.1.0: entities "^2.0.0" http-cache-semantics@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz#49e91c5cbf36c9b94bcfcd71c23d5249ec74e390" - integrity sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ== + version "4.1.1" + resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz#abe02fcb2985460bf0323be664436ec3476a6d5a" + integrity sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ== http-deceiver@^1.2.7: version "1.2.7" From 11695a33cf0260a62aecbefd76c46735b690be62 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Mon, 30 Oct 2023 16:52:58 +0100 Subject: [PATCH 311/337] add missing enabled configuration for mybadges integration --- config/config.example.json | 1 + config/default.js | 1 + 2 files changed, 2 insertions(+) diff --git a/config/config.example.json b/config/config.example.json index 960251b1..d860f078 100644 --- a/config/config.example.json +++ b/config/config.example.json @@ -86,6 +86,7 @@ }, "integrations": { "mybadges": { + "enabled": false, "queue": "", "redis": { "host": "", diff --git a/config/default.js b/config/default.js index 5ae6434c..094ca8db 100644 --- a/config/default.js +++ b/config/default.js @@ -34,6 +34,7 @@ const defaults = { }, integrations: { mybadges: { + enabled: false, queue: 'badgr', redis: { host: 'localhost', From 0ffd012203f6b5a21c5eb2ff96a7598c7fb031ef Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 29 Jul 2024 17:42:13 +0200 Subject: [PATCH 312/337] Bump docker/build-push-action from 5.0.0 to 5.1.0 (#851) Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 5.0.0 to 5.1.0. - [Release notes](https://github.com/docker/build-push-action/releases) - [Commits](https://github.com/docker/build-push-action/compare/v5.0.0...v5.1.0) --- updated-dependencies: - dependency-name: docker/build-push-action dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/registry.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/registry.yaml b/.github/workflows/registry.yaml index dc5ffc28..80848863 100644 --- a/.github/workflows/registry.yaml +++ b/.github/workflows/registry.yaml @@ -41,7 +41,7 @@ jobs: suffix= - name: 🐳 Build and push Docker image - uses: docker/build-push-action@v5.0.0 + uses: docker/build-push-action@v5.1.0 with: context: . push: true From 7550431a3bb2bd612cf3bd3d13e2441efa5bc6ef Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 5 Aug 2024 15:09:51 +0200 Subject: [PATCH 313/337] Bump docker/login-action from 3.0.0 to 3.3.0 (#876) Bumps [docker/login-action](https://github.com/docker/login-action) from 3.0.0 to 3.3.0. - [Release notes](https://github.com/docker/login-action/releases) - [Commits](https://github.com/docker/login-action/compare/v3.0.0...v3.3.0) --- updated-dependencies: - dependency-name: docker/login-action dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/registry.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/registry.yaml b/.github/workflows/registry.yaml index 80848863..ba28d773 100644 --- a/.github/workflows/registry.yaml +++ b/.github/workflows/registry.yaml @@ -24,7 +24,7 @@ jobs: uses: actions/checkout@v4 - name: 🔑 Log in to the Container registry - uses: docker/login-action@v3.0.0 + uses: docker/login-action@v3.3.0 with: registry: ${{ env.REGISTRY }} username: ${{ github.actor }} From 331dbd288eedfc665e7c99b09fc27a674c5b2502 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 5 Aug 2024 15:11:37 +0200 Subject: [PATCH 314/337] Bump docker/metadata-action from 5.0.0 to 5.5.0 (#865) Bumps [docker/metadata-action](https://github.com/docker/metadata-action) from 5.0.0 to 5.5.0. - [Release notes](https://github.com/docker/metadata-action/releases) - [Commits](https://github.com/docker/metadata-action/compare/v5.0.0...v5.5.0) --- updated-dependencies: - dependency-name: docker/metadata-action dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Matthias Pfeil --- .github/workflows/registry.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/registry.yaml b/.github/workflows/registry.yaml index ba28d773..06ad94f5 100644 --- a/.github/workflows/registry.yaml +++ b/.github/workflows/registry.yaml @@ -32,7 +32,7 @@ jobs: - name: 📋 Extract metadata (tags, labels) for Docker id: meta - uses: docker/metadata-action@v5.0.0 + uses: docker/metadata-action@v5.5.0 with: images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} flavor: | From 39dc6d81015406a1fce75ebe7f4d289fe054b6ae Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 5 Aug 2024 15:14:07 +0200 Subject: [PATCH 315/337] Bump actions/cache from 3.3.2 to 4.0.2 (#878) Bumps [actions/cache](https://github.com/actions/cache) from 3.3.2 to 4.0.2. - [Release notes](https://github.com/actions/cache/releases) - [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md) - [Commits](https://github.com/actions/cache/compare/v3.3.2...v4.0.2) --- updated-dependencies: - dependency-name: actions/cache dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Matthias Pfeil --- .github/workflows/test.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index 700eb550..169e02c4 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -26,7 +26,7 @@ jobs: echo "##[set-output name=dir;]$(yarn cache dir)" - name: 🔧 Restore yarn cache - uses: actions/cache@v3.3.2 + uses: actions/cache@v4.0.2 id: yarn-cache with: path: ${{ steps.yarn-cache-dir-path.outputs.dir }} From 09246caa4d5d753e7e1836a01005496024c87a0b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 6 Aug 2024 11:38:04 +0200 Subject: [PATCH 316/337] Bump docker/metadata-action from 5.5.0 to 5.5.1 (#882) --- .github/workflows/registry.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/registry.yaml b/.github/workflows/registry.yaml index 06ad94f5..a4eb0c92 100644 --- a/.github/workflows/registry.yaml +++ b/.github/workflows/registry.yaml @@ -32,7 +32,7 @@ jobs: - name: 📋 Extract metadata (tags, labels) for Docker id: meta - uses: docker/metadata-action@v5.5.0 + uses: docker/metadata-action@v5.5.1 with: images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} flavor: | From 48694f3adcf6c14badc293b3231fba9d2cc8ec18 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Tue, 6 Aug 2024 13:11:02 +0200 Subject: [PATCH 317/337] feat: add DNMS sensor and handle it in luftdaten handler (#881) --- .scripts/run-tests.sh | 2 +- .../sensorDefinitions/dnms_la_eq.js | 8 + .../sensorDefinitions/dnms_la_max.js | 8 + .../sensorDefinitions/dnms_la_min.js | 8 + .../sensorLayouts/sensorDefinitions/index.js | 11 +- .../measurement/decoding/luftdatenHandler.js | 32 +- tests/tests/ZZZ-mail-test.js | 335 +++++++++++++----- 7 files changed, 301 insertions(+), 103 deletions(-) create mode 100644 packages/models/src/box/sensorLayouts/sensorDefinitions/dnms_la_eq.js create mode 100644 packages/models/src/box/sensorLayouts/sensorDefinitions/dnms_la_max.js create mode 100644 packages/models/src/box/sensorLayouts/sensorDefinitions/dnms_la_min.js diff --git a/.scripts/run-tests.sh b/.scripts/run-tests.sh index 33255464..1e92befe 100755 --- a/.scripts/run-tests.sh +++ b/.scripts/run-tests.sh @@ -22,7 +22,7 @@ only_models_tests=${only_models_tests:-} git_branch=$(git rev-parse --abbrev-ref HEAD) function runComposeCommand() { - docker-compose -p osemapitest -f ./tests/docker-compose.yml "$@" + docker compose -p osemapitest -f ./tests/docker-compose.yml "$@" } function cleanup() { diff --git a/packages/models/src/box/sensorLayouts/sensorDefinitions/dnms_la_eq.js b/packages/models/src/box/sensorLayouts/sensorDefinitions/dnms_la_eq.js new file mode 100644 index 00000000..01c74971 --- /dev/null +++ b/packages/models/src/box/sensorLayouts/sensorDefinitions/dnms_la_eq.js @@ -0,0 +1,8 @@ +'use strict'; + +module.exports = { + title: 'Schalldruckpegel', + unit: 'db (A)', + sensorType: 'DNMS', + icon: 'osem-volume-up', +}; diff --git a/packages/models/src/box/sensorLayouts/sensorDefinitions/dnms_la_max.js b/packages/models/src/box/sensorLayouts/sensorDefinitions/dnms_la_max.js new file mode 100644 index 00000000..f2b7f3eb --- /dev/null +++ b/packages/models/src/box/sensorLayouts/sensorDefinitions/dnms_la_max.js @@ -0,0 +1,8 @@ +'use strict'; + +module.exports = { + title: 'Schalldruckpegel (Max)', + unit: 'db (A)', + sensorType: 'DNMS', + icon: 'osem-volume-up', +}; diff --git a/packages/models/src/box/sensorLayouts/sensorDefinitions/dnms_la_min.js b/packages/models/src/box/sensorLayouts/sensorDefinitions/dnms_la_min.js new file mode 100644 index 00000000..b9ca4da2 --- /dev/null +++ b/packages/models/src/box/sensorLayouts/sensorDefinitions/dnms_la_min.js @@ -0,0 +1,8 @@ +'use strict'; + +module.exports = { + title: 'Schalldruckpegel (Min)', + unit: 'db (A)', + sensorType: 'DNMS', + icon: 'osem-volume-up', +}; diff --git a/packages/models/src/box/sensorLayouts/sensorDefinitions/index.js b/packages/models/src/box/sensorLayouts/sensorDefinitions/index.js index f3e669fb..94be21c0 100644 --- a/packages/models/src/box/sensorLayouts/sensorDefinitions/index.js +++ b/packages/models/src/box/sensorLayouts/sensorDefinitions/index.js @@ -1,6 +1,5 @@ 'use strict'; - const veml6070_uvintensity = require('./veml6070_uvintensity'), tsl45315_lightintensity = require('./tsl45315_lightintensity'), bmp280_pressure = require('./bmp280_pressure'), @@ -49,7 +48,10 @@ const veml6070_uvintensity = require('./veml6070_uvintensity'), sps30_pm4 = require('./sps30_pm4'), sps30_pm10 = require('./sps30_pm10'), sht3x_temperature = require('./sht3x_temperature'), - sht3x_humidity = require('./sht3x_humidity'); + sht3x_humidity = require('./sht3x_humidity'), + dnms_la_eq = require('./dnms_la_eq'), + dnms_la_min = require('./dnms_la_min'), + dnms_la_max = require('./dnms_la_max'); module.exports = { hdc1008_temperature, hdc1080_temperature, @@ -99,5 +101,8 @@ module.exports = { sps30_pm4, sps30_pm10, sht3x_temperature, - sht3x_humidity + sht3x_humidity, + dnms_la_eq, + dnms_la_min, + dnms_la_max, }; diff --git a/packages/models/src/measurement/decoding/luftdatenHandler.js b/packages/models/src/measurement/decoding/luftdatenHandler.js index e739fde7..4770b112 100644 --- a/packages/models/src/measurement/decoding/luftdatenHandler.js +++ b/packages/models/src/measurement/decoding/luftdatenHandler.js @@ -82,6 +82,7 @@ const matchings = { humidity: ['rel. luftfeuchte', 'luftfeuchtigkeit', 'luftfeuchte'], pressure: ['luftdruck', 'druck'], signal: ['stärke', 'signal'], + noise_laeq: ['schallpegel', 'geräuschpegel'], }; const findSensorId = function findSensorId (sensors, value_type) { @@ -89,9 +90,16 @@ const findSensorId = function findSensorId (sensors, value_type) { // are named either directly or with a prefix // separated by underscores. The last element // should be the the desired phenomenon - let [vt_sensortype, vt_phenomenon] = value_type - .toLowerCase() - .split('_'); + let [vt_sensortype, vt_phenomenon] = []; + const splitAtIndex = value_type.toLowerCase().indexOf('_'); + if (splitAtIndex > 0) { + [vt_sensortype, vt_phenomenon] = [ + value_type.toLowerCase().slice(0, splitAtIndex), + value_type.toLowerCase().slice(splitAtIndex + 1), + ]; + } else { + [vt_sensortype, vt_phenomenon] = value_type.toLowerCase().split('_'); + } // DHT11 and DHT22 sensors have no underscore prefix if (!vt_phenomenon && ['temperature', 'humidity'].includes(vt_sensortype)) { @@ -110,9 +118,10 @@ const findSensorId = function findSensorId (sensors, value_type) { const title = sensor.title.toLowerCase(); const type = sensor.sensorType.toLowerCase(); if ( - (title === vt_phenomenon || matchings[vt_phenomenon].includes(title) || matchings[vt_phenomenon].some(alias => title.includes(alias))) - && - (type.startsWith(vt_sensortype)) + (title === vt_phenomenon || + matchings[vt_phenomenon].includes(title) || + matchings[vt_phenomenon].some((alias) => title.includes(alias))) && + type.startsWith(vt_sensortype) ) { sensorId = sensor._id.toString(); break; @@ -137,7 +146,6 @@ const transformLuftdatenJson = function transformLuftdatenJson (json, sensors) { return outArray; }; - module.exports = { decodeMessage: function (message, { sensors } = {}) { if (!sensors) { @@ -159,7 +167,9 @@ module.exports = { } if (!json.sensordatavalues) { - return Promise.reject(new Error('Invalid luftdaten json. Missing `sensordatavalues`')); + return Promise.reject( + new Error('Invalid luftdaten json. Missing `sensordatavalues`') + ); } const transformedMeasurements = transformLuftdatenJson(json, sensors); @@ -170,6 +180,8 @@ module.exports = { return transformAndValidateMeasurements(transformedMeasurements); } - return Promise.reject(new Error('Cannot decode empty message (luftdaten decoder)')); - } + return Promise.reject( + new Error('Cannot decode empty message (luftdaten decoder)') + ); + }, }; diff --git a/tests/tests/ZZZ-mail-test.js b/tests/tests/ZZZ-mail-test.js index 835f8606..1cd096b8 100644 --- a/tests/tests/ZZZ-mail-test.js +++ b/tests/tests/ZZZ-mail-test.js @@ -1,4 +1,3 @@ - 'use strict'; /* global describe it */ @@ -12,12 +11,21 @@ const BASE_URL = process.env.OSEM_TEST_BASE_URL, valid_user = require('../data/valid_user'), mailhog_url = 'http://mailhog:8025/api/v2/search?limit=9999'; -const getMail = async function getMail (address, subject, opts = { parsed: true }) { - const mailResponse = await chakram.get(`${mailhog_url}&kind=containing&query=${subject}`); +const getMail = async function getMail ( + address, + subject, + opts = { parsed: true } +) { + const mailResponse = await chakram.get( + `${mailhog_url}&kind=containing&query=${subject}` + ); const mails = mailResponse.body.items; const mail = mails.reverse().find(function (item) { - return (item.Raw.To[0] === address && item.Content.Headers.Subject.includes(subject)); + return ( + item.Raw.To[0] === address && + item.Content.Headers.Subject.includes(subject) + ); }); if (opts.parsed) { @@ -28,20 +36,27 @@ const getMail = async function getMail (address, subject, opts = { parsed: true }; const getMails = async function getMails (address, subject) { - const mailsResponse = await chakram.get('http://mailhog:8025/api/v2/messages?limit=9999'); + const mailsResponse = await chakram.get( + 'http://mailhog:8025/api/v2/messages?limit=9999' + ); const mails = mailsResponse.body.items; - return mails.filter(function (item) { - return (item.Raw.To[0] === address && item.Content.Headers.Subject.includes(subject)); - }).map(function (mail) { - return $.load(mimelib.decodeQuotedPrintable(mail.Content.Body)); - }); + return mails + .filter(function (item) { + return ( + item.Raw.To[0] === address && + item.Content.Headers.Subject.includes(subject) + ); + }) + .map(function (mail) { + return $.load(mimelib.decodeQuotedPrintable(mail.Content.Body)); + }); }; describe('mails', function () { - it('should have sent mails', function () { - return chakram.get('http://mailhog:8025/api/v2/messages?limit=9999') + return chakram + .get('http://mailhog:8025/api/v2/messages?limit=9999') .then(function (response) { expect(response).to.have.status(200); expect(response).to.have.json('items', function (items) { @@ -56,7 +71,10 @@ describe('mails', function () { it('should allow to confirm email address', async function () { let token; - const mail = await getMail(valid_user.email, 'Your openSenseMap registration'); + const mail = await getMail( + valid_user.email, + 'Your openSenseMap registration' + ); expect(mail).to.exist; const links = mail('a'); links.each(function (_, link) { @@ -67,10 +85,17 @@ describe('mails', function () { }); expect(token).to.exist; - return chakram.post(`${BASE_URL}/users/confirm-email`, { token, email: valid_user.email }) + return chakram + .post(`${BASE_URL}/users/confirm-email`, { + token, + email: valid_user.email, + }) .then(function (response) { expect(response).to.have.status(200); - expect(response).to.have.json({ code: 'Ok', message: 'E-Mail successfully confirmed. Thank you' }); + expect(response).to.have.json({ + code: 'Ok', + message: 'E-Mail successfully confirmed. Thank you', + }); return chakram.post(`${BASE_URL}/users/sign-in`, valid_user); }) @@ -84,7 +109,10 @@ describe('mails', function () { it('should deny to confirm email address with used token', async function () { let token; - const mail = await getMail(valid_user.email, 'Your openSenseMap registration'); + const mail = await getMail( + valid_user.email, + 'Your openSenseMap registration' + ); expect(mail).to.exist; const links = mail('a'); links.each(function (_, link) { @@ -95,12 +123,16 @@ describe('mails', function () { }); expect(token).to.exist; - return chakram.post(`${BASE_URL}/users/confirm-email`, { token, email: valid_user.email }) + return chakram + .post(`${BASE_URL}/users/confirm-email`, { + token, + email: valid_user.email, + }) .then(function (response) { expect(response).to.have.status(403); expect(response).to.have.json({ code: 'Forbidden', - message: 'invalid email confirmation token' + message: 'invalid email confirmation token', }); return chakram.wait(); @@ -120,7 +152,12 @@ describe('mails', function () { }); expect(token).to.exist; - return chakram.post(`${BASE_URL}/users/password-reset`, { token, email: valid_user.email, password: 'short' }) + return chakram + .post(`${BASE_URL}/users/password-reset`, { + token, + email: valid_user.email, + password: 'short', + }) .then(function (response) { expect(response).to.have.status(422); valid_user.password = 'short'; @@ -148,10 +185,18 @@ describe('mails', function () { }); expect(token).to.exist; - return chakram.post(`${BASE_URL}/users/password-reset`, { token, password: 'newlongenoughpassword' }) + return chakram + .post(`${BASE_URL}/users/password-reset`, { + token, + password: 'newlongenoughpassword', + }) .then(function (response) { expect(response).to.have.status(200); - expect(response).to.have.json({ code: 'Ok', message: 'Password successfully changed. You can now login with your new password' }); + expect(response).to.have.json({ + code: 'Ok', + message: + 'Password successfully changed. You can now login with your new password', + }); valid_user.password = 'newlongenoughpassword'; // try to sign in with new password @@ -159,7 +204,10 @@ describe('mails', function () { }) .then(function (response) { expect(response).to.have.status(200); - expect(response).to.have.header('content-type', 'application/json; charset=utf-8'); + expect(response).to.have.header( + 'content-type', + 'application/json; charset=utf-8' + ); expect(response.body.token).to.exist; return chakram.wait(); @@ -168,7 +216,10 @@ describe('mails', function () { it('should let users change their password with token to password with leading and trailing spaces', async function () { let token; - const mail = await getMail('leading_spacesaddress@email.com', 'Your password reset'); + const mail = await getMail( + 'leading_spacesaddress@email.com', + 'Your password reset' + ); expect(mail).to.exist; const links = mail('a'); links.each(function (_, link) { @@ -179,17 +230,31 @@ describe('mails', function () { }); expect(token).to.exist; - return chakram.post(`${BASE_URL}/users/password-reset`, { token, password: ' newlongenoughpassword ' }) + return chakram + .post(`${BASE_URL}/users/password-reset`, { + token, + password: ' newlongenoughpassword ', + }) .then(function (response) { expect(response).to.have.status(200); - expect(response).to.have.json({ code: 'Ok', message: 'Password successfully changed. You can now login with your new password' }); + expect(response).to.have.json({ + code: 'Ok', + message: + 'Password successfully changed. You can now login with your new password', + }); // try to sign in with new password - return chakram.post(`${BASE_URL}/users/sign-in`, { email: 'leading_spacesaddress@email.com', password: ' newlongenoughpassword ' }); + return chakram.post(`${BASE_URL}/users/sign-in`, { + email: 'leading_spacesaddress@email.com', + password: ' newlongenoughpassword ', + }); }) .then(function (response) { expect(response).to.have.status(200); - expect(response).to.have.header('content-type', 'application/json; charset=utf-8'); + expect(response).to.have.header( + 'content-type', + 'application/json; charset=utf-8' + ); expect(response.body.token).to.exist; return chakram.wait(); @@ -209,12 +274,16 @@ describe('mails', function () { }); expect(token).to.exist; - return chakram.post(`${BASE_URL}/users/password-reset`, { token, password: 'newlongenoughpasswordNOT' }) + return chakram + .post(`${BASE_URL}/users/password-reset`, { + token, + password: 'newlongenoughpasswordNOT', + }) .then(function (response) { expect(response).to.have.status(403); expect(response).to.have.json({ code: 'Forbidden', - message: 'Password reset for this user not possible' + message: 'Password reset for this user not possible', }); valid_user.password = 'newlongenoughpasswordNOT'; @@ -229,12 +298,18 @@ describe('mails', function () { }); it('should have sent senseBox registration mail with the sketch as attachment', async function () { - const mail = await getMail('tester3@test.test', 'Your new senseBox on openSenseMap', { parse: false }); + const mail = await getMail( + 'tester3@test.test', + 'Your new senseBox on openSenseMap', + { parse: false } + ); expect(mail).to.exist; expect(mail.MIME.Parts).to.not.be.undefined; expect(mail.MIME.Parts[1].Body).to.not.be.undefined; const ino = mimelib.decodeBase64(mail.MIME.Parts[1].Body); - const mailbody = $.load(mimelib.decodeQuotedPrintable(mail.MIME.Parts[0].Body)); + const mailbody = $.load( + mimelib.decodeQuotedPrintable(mail.MIME.Parts[0].Body) + ); let boxId; const links = mailbody('a'); links.each(function (_, link) { @@ -247,15 +322,24 @@ describe('mails', function () { expect(boxId).to.exist; // sign in to get jwt - return chakram.post(`${BASE_URL}/users/sign-in`, { email: 'tester3@test.test', password: '12345678' }) + return chakram + .post(`${BASE_URL}/users/sign-in`, { + email: 'tester3@test.test', + password: '12345678', + }) .then(function (response) { expect(response).to.have.status(200); - expect(response).to.have.header('content-type', 'application/json; charset=utf-8'); + expect(response).to.have.header( + 'content-type', + 'application/json; charset=utf-8' + ); expect(response.body.token).to.exist; const jwt = response.body.token; - return chakram.get(`${BASE_URL}/boxes/${boxId}/script`, { headers: { 'Authorization': `Bearer ${jwt}` } }); + return chakram.get(`${BASE_URL}/boxes/${boxId}/script`, { + headers: { Authorization: `Bearer ${jwt}` }, + }); }) .then(function (response) { expect(response).to.have.status(200); @@ -267,12 +351,18 @@ describe('mails', function () { }); it('should have sent senseBox:home Feinstaub Addon registration mail with the sketch as attachment', async function () { - const mail = await getMail('feinstaubuser@email', 'Your new senseBox on openSenseMap', { parse: false }); + const mail = await getMail( + 'feinstaubuser@email', + 'Your new senseBox on openSenseMap', + { parse: false } + ); expect(mail).to.exist; expect(mail.MIME.Parts).to.not.be.undefined; expect(mail.MIME.Parts[1].Body).to.not.be.undefined; const ino = mimelib.decodeBase64(mail.MIME.Parts[1].Body); - const mailbody = $.load(mimelib.decodeQuotedPrintable(mail.MIME.Parts[0].Body)); + const mailbody = $.load( + mimelib.decodeQuotedPrintable(mail.MIME.Parts[0].Body) + ); let boxId; const links = mailbody('a'); links.each(function (_, link) { @@ -285,15 +375,24 @@ describe('mails', function () { expect(boxId).to.exist; // sign in to get jwt - return chakram.post(`${BASE_URL}/users/sign-in`, { email: 'feinstaubuser@email', password: '99987654321' }) + return chakram + .post(`${BASE_URL}/users/sign-in`, { + email: 'feinstaubuser@email', + password: '99987654321', + }) .then(function (response) { expect(response).to.have.status(200); - expect(response).to.have.header('content-type', 'application/json; charset=utf-8'); + expect(response).to.have.header( + 'content-type', + 'application/json; charset=utf-8' + ); expect(response.body.token).to.exist; const jwt = response.body.token; - return chakram.get(`${BASE_URL}/boxes/${boxId}/script`, { headers: { 'Authorization': `Bearer ${jwt}` } }); + return chakram.get(`${BASE_URL}/boxes/${boxId}/script`, { + headers: { Authorization: `Bearer ${jwt}` }, + }); }) .then(function (response) { expect(response).to.have.status(200); @@ -305,12 +404,18 @@ describe('mails', function () { }); it('should have sent senseBox:home Wifi Feinstaub Addon registration mail with the sketch as attachment', async function () { - const mail = await getMail('wififeinstaubuser@email', 'Your new senseBox on openSenseMap', { parse: false }); + const mail = await getMail( + 'wififeinstaubuser@email', + 'Your new senseBox on openSenseMap', + { parse: false } + ); expect(mail).to.exist; expect(mail.MIME.Parts).to.not.be.undefined; expect(mail.MIME.Parts[1].Body).to.not.be.undefined; const ino = mimelib.decodeBase64(mail.MIME.Parts[1].Body); - const mailbody = $.load(mimelib.decodeQuotedPrintable(mail.MIME.Parts[0].Body)); + const mailbody = $.load( + mimelib.decodeQuotedPrintable(mail.MIME.Parts[0].Body) + ); let boxId; const links = mailbody('a'); links.each(function (_, link) { @@ -323,15 +428,24 @@ describe('mails', function () { expect(boxId).to.exist; // sign in to get jwt - return chakram.post(`${BASE_URL}/users/sign-in`, { email: 'wififeinstaubuser@email', password: '99987654321' }) + return chakram + .post(`${BASE_URL}/users/sign-in`, { + email: 'wififeinstaubuser@email', + password: '99987654321', + }) .then(function (response) { expect(response).to.have.status(200); - expect(response).to.have.header('content-type', 'application/json; charset=utf-8'); + expect(response).to.have.header( + 'content-type', + 'application/json; charset=utf-8' + ); expect(response.body.token).to.exist; const jwt = response.body.token; - return chakram.get(`${BASE_URL}/boxes/${boxId}/script`, { headers: { 'Authorization': `Bearer ${jwt}` } }); + return chakram.get(`${BASE_URL}/boxes/${boxId}/script`, { + headers: { Authorization: `Bearer ${jwt}` }, + }); }) .then(function (response) { expect(response).to.have.status(200); @@ -344,7 +458,10 @@ describe('mails', function () { it('should allow to confirm a changed email address', async function () { let token; - const mail = await getMail('new-email@email.www', 'openSenseMap E-Mail address confirmation'); + const mail = await getMail( + 'new-email@email.www', + 'openSenseMap E-Mail address confirmation' + ); expect(mail).to.not.be.undefined; const links = mail('a'); links.each(function (_, link) { @@ -355,22 +472,35 @@ describe('mails', function () { }); expect(token).to.exist; - return chakram.post(`${BASE_URL}/users/confirm-email`, { token, email: 'new-email@email.www' }) + return chakram + .post(`${BASE_URL}/users/confirm-email`, { + token, + email: 'new-email@email.www', + }) .then(function (response) { expect(response).to.have.status(200); - expect(response).to.have.json({ code: 'Ok', message: 'E-Mail successfully confirmed. Thank you' }); + expect(response).to.have.json({ + code: 'Ok', + message: 'E-Mail successfully confirmed. Thank you', + }); return chakram.wait(); }); }); it('should have sent the new sketch after adding the feinstaub addon as attachment', async function () { - const mail = await getMail('feinstaubuser_put_addon@email', 'Your new Sketch', { parse: false }); + const mail = await getMail( + 'feinstaubuser_put_addon@email', + 'Your new Sketch', + { parse: false } + ); expect(mail).to.exist; expect(mail.MIME.Parts).to.not.be.undefined; expect(mail.MIME.Parts[1].Body).to.not.be.undefined; const ino = mimelib.decodeBase64(mail.MIME.Parts[1].Body); - const mailbody = $.load(mimelib.decodeQuotedPrintable(mail.MIME.Parts[0].Body)); + const mailbody = $.load( + mimelib.decodeQuotedPrintable(mail.MIME.Parts[0].Body) + ); let boxId; const paragraphs = mailbody('p'); paragraphs.each(function (_, p) { @@ -391,15 +521,24 @@ describe('mails', function () { expect(liTexts).to.include.members(['PM2.5 (SDS 011)', 'PM10 (SDS 011):']); // sign in to get jwt - return chakram.post(`${BASE_URL}/users/sign-in`, { email: 'feinstaubuser_put_addon@email', password: '99987654321' }) + return chakram + .post(`${BASE_URL}/users/sign-in`, { + email: 'feinstaubuser_put_addon@email', + password: '99987654321', + }) .then(function (response) { expect(response).to.have.status(200); - expect(response).to.have.header('content-type', 'application/json; charset=utf-8'); + expect(response).to.have.header( + 'content-type', + 'application/json; charset=utf-8' + ); expect(response.body.token).to.exist; const jwt = response.body.token; - return chakram.get(`${BASE_URL}/boxes/${boxId}/script`, { headers: { 'Authorization': `Bearer ${jwt}` } }); + return chakram.get(`${BASE_URL}/boxes/${boxId}/script`, { + headers: { Authorization: `Bearer ${jwt}` }, + }); }) .then(function (response) { expect(response).to.have.status(200); @@ -411,51 +550,63 @@ describe('mails', function () { }); it('should have sent special luftdaten info welcome mail', async function () { - const foundMails = await getMails('luftdaten@email', 'Your device on openSenseMap'); + const foundMails = await getMails( + 'luftdaten@email', + 'Your device on openSenseMap' + ); expect(foundMails).not.to.be.empty; - expect(foundMails.every(function (mail) { - expect(mail).to.exist; - const links = mail('a'); - let hasLink = false; - links.each(function (_, link) { - const href = $(link).attr('href'); - if (href.includes('opensensemap-luftdaten')) { - hasLink = true; - } - }); - expect(hasLink).to.be.true; + expect( + foundMails.every(function (mail) { + expect(mail).to.exist; + const links = mail('a'); + let hasLink = false; + links.each(function (_, link) { + const href = $(link).attr('href'); + if (href.includes('opensensemap-luftdaten')) { + hasLink = true; + } + }); + expect(hasLink).to.be.true; - return hasLink; - })).true; + return hasLink; + }) + ).true; }); it('should have sent a mail upon deletion of an user', async function () { - const mail = await getMail('luftdaten@email', 'Your openSenseMap account has been deleted', { parse: false }); + const mail = await getMail( + 'luftdaten@email', + 'Your openSenseMap account has been deleted', + { parse: false } + ); expect(mail).to.exist; }); - it('should have sent special hackAIR welcome mail', async function () { - const foundMails = await getMails('hackair@email', 'Your device on openSenseMap'); - expect(foundMails).not.to.be.empty; - expect(foundMails.every(function (mail) { - expect(mail).to.exist; - const links = mail('a'); - let hasLink = false; - links.each(function (_, link) { - const href = $(link).attr('href'); - if (href.includes('opensensemap-hackair')) { - hasLink = true; - } - }); - expect(hasLink).to.be.true; - - return hasLink; - })).true; - }); + // it('should have sent special hackAIR welcome mail', async function () { + // const foundMails = await getMails('hackair@email', 'Your device on openSenseMap'); + // expect(foundMails).not.to.be.empty; + // expect(foundMails.every(function (mail) { + // expect(mail).to.exist; + // const links = mail('a'); + // let hasLink = false; + // links.each(function (_, link) { + // const href = $(link).attr('href'); + // if (href.includes('opensensemap-hackair')) { + // hasLink = true; + // } + // }); + // expect(hasLink).to.be.true; + + // return hasLink; + // })).true; + // }); it('should allow to confirm a email address after requesting a resend of a confirmation token', async function () { let token; - const mail = await getMail('tester4@test.test', 'E-Mail address confirmation'); + const mail = await getMail( + 'tester4@test.test', + 'E-Mail address confirmation' + ); expect(mail).to.not.be.undefined; const links = mail('a'); links.each(function (_, link) { @@ -466,13 +617,19 @@ describe('mails', function () { }); expect(token).to.exist; - return chakram.post(`${BASE_URL}/users/confirm-email`, { token, email: 'tester4@test.test' }) + return chakram + .post(`${BASE_URL}/users/confirm-email`, { + token, + email: 'tester4@test.test', + }) .then(function (response) { expect(response).to.have.status(200); - expect(response).to.have.json({ code: 'Ok', message: 'E-Mail successfully confirmed. Thank you' }); + expect(response).to.have.json({ + code: 'Ok', + message: 'E-Mail successfully confirmed. Thank you', + }); return chakram.wait(); }); }); - }); From 0db84dade96b1152435d7c9a577430089720e8fe Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 6 Aug 2024 14:54:11 +0200 Subject: [PATCH 318/337] Bump actions/setup-node from 4.0.0 to 4.0.3 (#877) Bumps [actions/setup-node](https://github.com/actions/setup-node) from 4.0.0 to 4.0.3. - [Release notes](https://github.com/actions/setup-node/releases) - [Commits](https://github.com/actions/setup-node/compare/v4.0.0...v4.0.3) --- updated-dependencies: - dependency-name: actions/setup-node dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Matthias Pfeil --- .github/workflows/test.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index 169e02c4..438a717e 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -16,7 +16,7 @@ jobs: - uses: actions/checkout@v4 - name: ⬣ Install Node.js - uses: actions/setup-node@v4.0.0 + uses: actions/setup-node@v4.0.3 with: node-version: 18 From e4d351b14148b3873cd34588d156d130fb1554d0 Mon Sep 17 00:00:00 2001 From: konstantin Date: Tue, 6 Aug 2024 14:58:53 +0200 Subject: [PATCH 319/337] =?UTF-8?q?fix=20typo:=20`measruement`=20=E2=9E=A1?= =?UTF-8?q?=20`measurement`=20(#859)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Matthias Pfeil --- packages/api/lib/controllers/measurementsController.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/api/lib/controllers/measurementsController.js b/packages/api/lib/controllers/measurementsController.js index 3bda374c..c85a6f4b 100644 --- a/packages/api/lib/controllers/measurementsController.js +++ b/packages/api/lib/controllers/measurementsController.js @@ -22,7 +22,7 @@ const { /** * @apiDefine SensorLastMeasurement * - * @apiSuccess {Object} sensors.lastMeasurement Object representing the latest measruement + * @apiSuccess {Object} sensors.lastMeasurement Object representing the latest measurement * @apiSuccess {String} sensors.lastMeasurement.value the measured value of the sensor * @apiSuccess {RFC3339Date} sensor.lastMeasurement.createdAt the timestamp of the measurement */ From 32c303b06324512b4d0c5a25578c0f3b3310a2c5 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 6 Aug 2024 15:03:24 +0200 Subject: [PATCH 320/337] Bump csv-stringify from 6.2.3 to 6.5.1 (#879) Bumps [csv-stringify](https://github.com/adaltas/node-csv/tree/HEAD/packages/csv-stringify) from 6.2.3 to 6.5.1. - [Changelog](https://github.com/adaltas/node-csv/blob/master/packages/csv-stringify/CHANGELOG.md) - [Commits](https://github.com/adaltas/node-csv/commits/csv-stringify@6.5.1/packages/csv-stringify) --- updated-dependencies: - dependency-name: csv-stringify dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Matthias Pfeil --- packages/api/package.json | 2 +- yarn.lock | 13 ++++--------- 2 files changed, 5 insertions(+), 10 deletions(-) diff --git a/packages/api/package.json b/packages/api/package.json index 9bd1ad48..19a911b7 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -23,7 +23,7 @@ "@turf/triangle-grid": "^6.5.0", "apicache": "^1.6.2", "config": "^3.3.6", - "csv-stringify": "^6.2.3", + "csv-stringify": "^6.5.1", "dashify": "^2.0.0", "got": "^11.8.2", "honeybadger": "^1.4.0", diff --git a/yarn.lock b/yarn.lock index 1f52f010..e322b3f0 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1124,15 +1124,10 @@ csv-parse@^5.4.0: resolved "https://registry.yarnpkg.com/csv-parse/-/csv-parse-5.4.0.tgz#6793210a4a49a9a74b3fde3f9d00f3f52044fd89" integrity sha512-JiQosUWiOFgp4hQn0an+SBoV9IKdqzhROM0iiN4LB7UpfJBlsSJlWl9nq4zGgxgMAzHJ6V4t29VAVD+3+2NJAg== -csv-stringify@^6.2.3: - version "6.2.3" - resolved "https://registry.yarnpkg.com/csv-stringify/-/csv-stringify-6.2.3.tgz#fefd25e66fd48f8f42f43b85a66a4663a2c3e796" - integrity sha512-4qGjUMwnlaRc00gc2jrIYh2w/h1fo25B0mTuY9K8fBiIgtmCX3LcgUbrEGViL98Ci4Se/F5LFEtu8k+dItJVZQ== - -csv-stringify@^6.4.0: - version "6.4.0" - resolved "https://registry.yarnpkg.com/csv-stringify/-/csv-stringify-6.4.0.tgz#6d006dca9194700e44f9fbc541bee8bbbd4f459c" - integrity sha512-HQsw0QXiN5fdlO+R8/JzCZnR3Fqp8E87YVnhHlaPtNGJjt6ffbV0LpOkieIb1x6V1+xt878IYq77SpXHWAqKkA== +csv-stringify@^6.4.0, csv-stringify@^6.5.1: + version "6.5.1" + resolved "https://registry.yarnpkg.com/csv-stringify/-/csv-stringify-6.5.1.tgz#a31837dd35e34787e3c248159c982a21af964d94" + integrity sha512-+9lpZfwpLntpTIEpFbwQyWuW/hmI/eHuJZD1XzeZpfZTqkf1fyvBbBLXTJJMsBuuS11uTShMqPwzx4A6ffXgRQ== csv@^6.2.2: version "6.3.1" From 4f222f587b528ab9a288aba23b74fedae474af29 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 6 Aug 2024 15:06:34 +0200 Subject: [PATCH 321/337] Bump tar from 6.1.12 to 6.2.1 (#874) Bumps [tar](https://github.com/isaacs/node-tar) from 6.1.12 to 6.2.1. - [Release notes](https://github.com/isaacs/node-tar/releases) - [Changelog](https://github.com/isaacs/node-tar/blob/main/CHANGELOG.md) - [Commits](https://github.com/isaacs/node-tar/compare/v6.1.12...v6.2.1) --- updated-dependencies: - dependency-name: tar dependency-type: indirect ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Matthias Pfeil --- yarn.lock | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/yarn.lock b/yarn.lock index e322b3f0..bf4883bb 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2516,6 +2516,11 @@ minipass@^3.0.0: dependencies: yallist "^4.0.0" +minipass@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-5.0.0.tgz#3e9788ffb90b694a5d0ec94479a45b5d8738133d" + integrity sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ== + minizlib@^2.1.1: version "2.1.2" resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-2.1.2.tgz#e90d3466ba209b932451508a11ce3d3632145931" @@ -3710,13 +3715,13 @@ table@^6.0.4: string-width "^4.2.0" tar@^6.1.11: - version "6.1.12" - resolved "https://registry.yarnpkg.com/tar/-/tar-6.1.12.tgz#3b742fb05669b55671fb769ab67a7791ea1a62e6" - integrity sha512-jU4TdemS31uABHd+Lt5WEYJuzn+TJTCBLljvIAHZOz6M9Os5pJ4dD+vRFLxPa/n3T0iEFzpi+0x1UfuDZYbRMw== + version "6.2.1" + resolved "https://registry.yarnpkg.com/tar/-/tar-6.2.1.tgz#717549c541bc3c2af15751bea94b1dd068d4b03a" + integrity sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A== dependencies: chownr "^2.0.0" fs-minipass "^2.0.0" - minipass "^3.0.0" + minipass "^5.0.0" minizlib "^2.1.1" mkdirp "^1.0.3" yallist "^4.0.0" From 7e156562ef3be6d31f3e81be3d09bbb627112613 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 6 Aug 2024 15:10:05 +0200 Subject: [PATCH 322/337] Bump braces from 3.0.2 to 3.0.3 (#872) Bumps [braces](https://github.com/micromatch/braces) from 3.0.2 to 3.0.3. - [Changelog](https://github.com/micromatch/braces/blob/master/CHANGELOG.md) - [Commits](https://github.com/micromatch/braces/compare/3.0.2...3.0.3) --- updated-dependencies: - dependency-name: braces dependency-type: indirect ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Matthias Pfeil --- yarn.lock | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/yarn.lock b/yarn.lock index bf4883bb..05a81838 100644 --- a/yarn.lock +++ b/yarn.lock @@ -707,11 +707,11 @@ brace-expansion@^2.0.1: balanced-match "^1.0.0" braces@~3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" - integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== + version "3.0.3" + resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.3.tgz#490332f40919452272d55a8480adc0c441358789" + integrity sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA== dependencies: - fill-range "^7.0.1" + fill-range "^7.1.1" browser-stdout@1.3.1: version "1.3.1" @@ -1649,10 +1649,10 @@ file-entry-cache@^6.0.1: dependencies: flat-cache "^3.0.4" -fill-range@^7.0.1: - version "7.0.1" - resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" - integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ== +fill-range@^7.1.1: + version "7.1.1" + resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.1.1.tgz#44265d3cac07e3ea7dc247516380643754a05292" + integrity sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg== dependencies: to-regex-range "^5.0.1" From d6ddd2243859e4bc93058afb4275f1cc830b485f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 6 Aug 2024 16:02:43 +0200 Subject: [PATCH 323/337] Bump vlaurin/action-ghcr-prune from 0.5.0 to 0.6.0 (#869) Bumps [vlaurin/action-ghcr-prune](https://github.com/vlaurin/action-ghcr-prune) from 0.5.0 to 0.6.0. - [Release notes](https://github.com/vlaurin/action-ghcr-prune/releases) - [Commits](https://github.com/vlaurin/action-ghcr-prune/compare/v0.5.0...v0.6.0) --- updated-dependencies: - dependency-name: vlaurin/action-ghcr-prune dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Matthias Pfeil --- .github/workflows/registry-purge-pr.yaml | 2 +- .github/workflows/registry-purge.yaml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/registry-purge-pr.yaml b/.github/workflows/registry-purge-pr.yaml index 50259082..f9fa93c2 100644 --- a/.github/workflows/registry-purge-pr.yaml +++ b/.github/workflows/registry-purge-pr.yaml @@ -11,7 +11,7 @@ jobs: runs-on: ubuntu-latest steps: - name: 💣 Purge Pull Request Image - uses: vlaurin/action-ghcr-prune@v0.5.0 + uses: vlaurin/action-ghcr-prune@v0.6.0 with: token: ${{ secrets.GHCR_TOKEN}} organization: ${{ github.repository_owner}} diff --git a/.github/workflows/registry-purge.yaml b/.github/workflows/registry-purge.yaml index 9d1fefef..0648f8ad 100644 --- a/.github/workflows/registry-purge.yaml +++ b/.github/workflows/registry-purge.yaml @@ -10,7 +10,7 @@ jobs: runs-on: ubuntu-latest steps: - name: 🧹 clean packages - uses: vlaurin/action-ghcr-prune@v0.5.0 + uses: vlaurin/action-ghcr-prune@v0.6.0 with: token: ${{ secrets.GHCR_TOKEN}} organization: ${{ github.repository_owner}} From 227e12181ceac14ea8ab893910886bb35e345b46 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 6 Aug 2024 16:08:00 +0200 Subject: [PATCH 324/337] Bump millify from 5.0.1 to 6.1.0 (#849) Bumps [millify](https://github.com/izolate/millify) from 5.0.1 to 6.1.0. - [Release notes](https://github.com/izolate/millify/releases) - [Changelog](https://github.com/izolate/millify/blob/main/CHANGELOG.md) - [Commits](https://github.com/izolate/millify/compare/v5.0.1...v6.1.0) --- updated-dependencies: - dependency-name: millify dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Matthias Pfeil --- packages/api/package.json | 2 +- yarn.lock | 25 ++++++------------------- 2 files changed, 7 insertions(+), 20 deletions(-) diff --git a/packages/api/package.json b/packages/api/package.json index 19a911b7..37360f39 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -29,7 +29,7 @@ "honeybadger": "^1.4.0", "isemail": "^3.0.0", "jsonwebtoken": "^9.0.0", - "millify": "^5.0.1", + "millify": "^6.1.0", "moment": "^2.29.4", "ms": "^2.1.3", "pino": "^8.8.0", diff --git a/yarn.lock b/yarn.lock index 05a81838..261bcb36 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2426,10 +2426,10 @@ methods@^1.1.2: resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" integrity sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4= -millify@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/millify/-/millify-5.0.1.tgz#f3f2cebf4d3071e127c05942f827c49754a03754" - integrity sha512-1IacXjRDMbRevt2++mBnrI2iFxljWlQapMUT9Bs+uAF3o/TrYdE46Uf6CqlmoOWMX1JDAlMorXPv4/hM1eE/kw== +millify@^6.1.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/millify/-/millify-6.1.0.tgz#6919d09377c28923624f9e4f41493d9706b8aadf" + integrity sha512-H/E3J6t+DQs/F2YgfDhxUVZz/dF8JXPPKTLHL/yHCcLZLtCXJDUaqvhJXQwqOVBvbyNn4T0WjLpIHd7PAw7fBA== dependencies: yargs "^17.0.1" @@ -3965,7 +3965,7 @@ yargs-parser@^20.2.2: resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.6.tgz#69f920addf61aafc0b8b89002f5d66e28f2d8b20" integrity sha512-AP1+fQIWSM/sMiET8fyayjx/J+JmTPt2Mr0FkrgqB4todtfa53sOsrSAcIrJRD5XS20bKUwaDIuMkWKCEiQLKA== -yargs-parser@^21.0.0, yargs-parser@^21.1.1: +yargs-parser@^21.1.1: version "21.1.1" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.1.1.tgz#9096bceebf990d21bb31fa9516e0ede294a77d35" integrity sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw== @@ -3993,20 +3993,7 @@ yargs@16.2.0: y18n "^5.0.5" yargs-parser "^20.2.2" -yargs@^17.0.1: - version "17.5.1" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.5.1.tgz#e109900cab6fcb7fd44b1d8249166feb0b36e58e" - integrity sha512-t6YAJcxDkNX7NFYiVtKvWUz8l+PaKTLiL63mJYWR2GnHq2gjEWISzsLp9wg3aY36dY1j+gfIEL3pIF+XlJJfbA== - dependencies: - cliui "^7.0.2" - escalade "^3.1.1" - get-caller-file "^2.0.5" - require-directory "^2.1.1" - string-width "^4.2.3" - y18n "^5.0.5" - yargs-parser "^21.0.0" - -yargs@^17.7.2: +yargs@^17.0.1, yargs@^17.7.2: version "17.7.2" resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.7.2.tgz#991df39aca675a192b816e1e0363f9d75d2aa269" integrity sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w== From bf1442e9e1626af3c178029710e5a368acbb3a95 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 7 Aug 2024 10:01:27 +0200 Subject: [PATCH 325/337] Bump msgpackr from 1.8.5 to 1.10.1 (#864) Bumps [msgpackr](https://github.com/kriszyp/msgpackr) from 1.8.5 to 1.10.1. - [Release notes](https://github.com/kriszyp/msgpackr/releases) - [Commits](https://github.com/kriszyp/msgpackr/commits/v1.10.1) --- updated-dependencies: - dependency-name: msgpackr dependency-type: indirect ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Matthias Pfeil --- yarn.lock | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/yarn.lock b/yarn.lock index 261bcb36..88d1a9fe 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2673,7 +2673,7 @@ ms@2.1.3, ms@^2.1.1, ms@^2.1.3: resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== -msgpackr-extract@^3.0.1: +msgpackr-extract@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/msgpackr-extract/-/msgpackr-extract-3.0.2.tgz#e05ec1bb4453ddf020551bcd5daaf0092a2c279d" integrity sha512-SdzXp4kD/Qf8agZ9+iTu6eql0m3kWm1A2y1hkpTeVNENutaB0BwHlSvAIaMxwntmRUAUjon2V4L8Z/njd0Ct8A== @@ -2688,11 +2688,11 @@ msgpackr-extract@^3.0.1: "@msgpackr-extract/msgpackr-extract-win32-x64" "3.0.2" msgpackr@^1.6.2: - version "1.8.5" - resolved "https://registry.yarnpkg.com/msgpackr/-/msgpackr-1.8.5.tgz#8cadfb935357680648f33699d0e833c9179dbfeb" - integrity sha512-mpPs3qqTug6ahbblkThoUY2DQdNXcm4IapwOS3Vm/87vmpzLVelvp9h3It1y9l1VPpiFLV11vfOXnmeEwiIXwg== + version "1.10.1" + resolved "https://registry.yarnpkg.com/msgpackr/-/msgpackr-1.10.1.tgz#51953bb4ce4f3494f0c4af3f484f01cfbb306555" + integrity sha512-r5VRLv9qouXuLiIBrLpl2d5ZvPt8svdQTl5/vMvE4nzDMyEX4sgW5yWhuBBj5UmgwOTWj8CIdSXn5sAfsHAWIQ== optionalDependencies: - msgpackr-extract "^3.0.1" + msgpackr-extract "^3.0.2" nan@^2.14.0: version "2.14.1" From d39da28c7b12f19433d2e076cd97fde63d89e28b Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Fri, 9 Aug 2024 09:41:11 +0200 Subject: [PATCH 326/337] v3.3.0 --- packages/models/CHANGELOG.md | 4 ++++ packages/models/package.json | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/packages/models/CHANGELOG.md b/packages/models/CHANGELOG.md index aa151f16..a8a64a5a 100644 --- a/packages/models/CHANGELOG.md +++ b/packages/models/CHANGELOG.md @@ -2,6 +2,10 @@ ## Unreleased +## v3.3.0 + +- Add DNMS sensor template (#881) + ## v3.2.0 - Add `user` integrations (myBadges) (#834) diff --git a/packages/models/package.json b/packages/models/package.json index 4b57346f..461cbb8b 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -1,7 +1,7 @@ { "name": "@sensebox/opensensemap-api-models", "description": "openSenseMap data models and database connection", - "version": "3.2.0", + "version": "3.3.0", "main": "index.js", "license": "MIT", "dependencies": { From 342de4fee0b3aa77fb70222567bcf8e900d6dbeb Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Fri, 9 Aug 2024 10:14:45 +0200 Subject: [PATCH 327/337] Update opensensemap-api-models dependency --- packages/api/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/api/package.json b/packages/api/package.json index 37360f39..adf6a99a 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -12,7 +12,7 @@ "Felix Erdmann" ], "dependencies": { - "@sensebox/opensensemap-api-models": "3.2.0", + "@sensebox/opensensemap-api-models": "3.3.0", "@turf/area": "^6.5.0", "@turf/bbox": "^6.5.0", "@turf/centroid": "^6.5.0", From b50bc157de8d4dd6ad784a611e6a8835ca639e87 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Fri, 9 Aug 2024 10:15:15 +0200 Subject: [PATCH 328/337] Update Changelog --- CHANGELOG.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index a659e173..b2f8bd7d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,11 @@ # openSenseMap API Changelog +## v11.3.0 + +- Use @sensebox/opensensemap-api-models v3.3.0 +- Fix type: `measruement` ➡️ `measurement` (#859) +- Update dependencies + ## v11.2.0 - Use @sensebox/opensensemap-api-models v3.2.0 From 55baebaaa7eb07f4580135c531c731c5f4708ce1 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 12 Aug 2024 11:31:18 +0200 Subject: [PATCH 329/337] Bump docker/build-push-action from 5.1.0 to 6.6.1 (#885) Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 5.1.0 to 6.6.1. - [Release notes](https://github.com/docker/build-push-action/releases) - [Commits](https://github.com/docker/build-push-action/compare/v5.1.0...v6.6.1) --- updated-dependencies: - dependency-name: docker/build-push-action dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Matthias Pfeil --- .github/workflows/registry.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/registry.yaml b/.github/workflows/registry.yaml index a4eb0c92..145430bf 100644 --- a/.github/workflows/registry.yaml +++ b/.github/workflows/registry.yaml @@ -41,7 +41,7 @@ jobs: suffix= - name: 🐳 Build and push Docker image - uses: docker/build-push-action@v5.1.0 + uses: docker/build-push-action@v6.6.1 with: context: . push: true From 29b7acfcb2572a46235408525f88ee6f8ccd3aac Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 12 Aug 2024 11:39:12 +0200 Subject: [PATCH 330/337] Bump ws from 8.14.2 to 8.18.0 (#873) Bumps [ws](https://github.com/websockets/ws) from 8.14.2 to 8.18.0. - [Release notes](https://github.com/websockets/ws/releases) - [Commits](https://github.com/websockets/ws/compare/8.14.2...8.18.0) --- updated-dependencies: - dependency-name: ws dependency-type: indirect ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Matthias Pfeil --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 88d1a9fe..7cafabc3 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3941,9 +3941,9 @@ wrappy@1: integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== ws@^8.13.0: - version "8.14.2" - resolved "https://registry.yarnpkg.com/ws/-/ws-8.14.2.tgz#6c249a806eb2db7a20d26d51e7709eab7b2e6c7f" - integrity sha512-wEBG1ftX4jcglPxgFCMJmZ2PLtSbJ2Peg6TmpJFTbe9GZYOQCDPdMYu/Tm0/bGZkw8paZnJY45J4K2PZrLYq8g== + version "8.18.0" + resolved "https://registry.yarnpkg.com/ws/-/ws-8.18.0.tgz#0d7505a6eafe2b0e712d232b42279f53bc289bbc" + integrity sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw== y18n@^5.0.5: version "5.0.5" From f9dc662403f9bd54e96a127328cb4f2368373da0 Mon Sep 17 00:00:00 2001 From: Matthias Pfeil Date: Mon, 12 Aug 2024 13:07:36 +0200 Subject: [PATCH 331/337] chore: add logger for debugging purposes (#887) * update pinojs * dont return res.send * add logger for debugging purposes --- config/default.js | 1 + packages/api/app.js | 35 ++++++---- .../api/lib/controllers/usersController.js | 4 +- packages/api/logger.js | 21 ++++++ packages/api/package.json | 3 +- yarn.lock | 64 +++++++++++++++++++ 6 files changed, 112 insertions(+), 16 deletions(-) create mode 100644 packages/api/logger.js diff --git a/config/default.js b/config/default.js index 094ca8db..224c4ea5 100644 --- a/config/default.js +++ b/config/default.js @@ -15,6 +15,7 @@ const defaults = { slack_url: '', mattermost_url: '', management_role: 'admin', + logLevel: 'info', routes: { boxes: '/boxes', users: '/users', diff --git a/packages/api/app.js b/packages/api/app.js index 2ab35628..762e5580 100644 --- a/packages/api/app.js +++ b/packages/api/app.js @@ -10,21 +10,27 @@ 'use strict'; -const - { db } = require('@sensebox/opensensemap-api-models'), +const { db } = require('@sensebox/opensensemap-api-models'), restify = require('restify'), - { fullResponse, queryParser, jsonBodyParser, pre: { sanitizePath } } = restify.plugins, + { + fullResponse, + queryParser, + jsonBodyParser, + pre: { sanitizePath } + } = restify.plugins, config = require('config'), - { preRequest, preCors, Honeybadger, getVersion, postToMattermost } = require('./lib/helpers/apiUtils'), + { + preRequest, + preCors, + Honeybadger, + getVersion, + postToMattermost + } = require('./lib/helpers/apiUtils'), routes = require('./lib/routes'), - pino = require('pino'); - -// const log = bunyan.createLogger({ name: 'opensensemap-api', serializers: bunyan.stdSerializers }); -const log = pino({ name: 'opensensemap-api', sserializers: pino.stdSerializers }); + { stdLogger, debugLogger } = require('./logger'); const server = restify.createServer({ name: `opensensemap-api (${getVersion})`, - log, onceNext: true, strictNext: false, }); @@ -43,6 +49,10 @@ server.use(fullResponse()); server.use(queryParser()); server.use(jsonBodyParser()); +if (config.get('logLevel') === 'debug') { + server.use(debugLogger); +} + db.connect() .then(function () { // attach Routes @@ -50,13 +60,12 @@ db.connect() // start the server server.listen(Number(config.get('port')), function () { - log.info(`${server.name} listening at ${server.url}`); + stdLogger.logger.info(`${server.name} listening at ${server.url}`); postToMattermost(`openSenseMap API started. Version: ${getVersion}`); }); }) .catch(function (err) { - log.fatal(err, `Couldn't connect to MongoDB. - Exiting...`); + stdLogger.logger.fatal(err, 'Couldn\'t connect to MongoDB. Exiting...'); process.exit(1); }); @@ -75,7 +84,7 @@ server.on('InternalServer', function (req, res, err, callback) { query: req.query, _userParams: req._userParams }); - log.error(err); + stdLogger.logger.error(err); // and notify Honeybadger.notify(err); diff --git a/packages/api/lib/controllers/usersController.js b/packages/api/lib/controllers/usersController.js index 635591d6..4b8d77e1 100644 --- a/packages/api/lib/controllers/usersController.js +++ b/packages/api/lib/controllers/usersController.js @@ -64,7 +64,7 @@ const registerUser = async function registerUser (req, res) { try { const { token, refreshToken } = await createToken(newUser); - return res.send(201, { + res.send(201, { code: 'Created', message: 'Successfully registered new user', data: { user: newUser }, @@ -115,7 +115,7 @@ const signIn = async function signIn (req, res) { if (await user.checkPassword(password)) { const { token, refreshToken } = await createToken(user); - return res.send(200, { + res.send(200, { code: 'Authorized', message: 'Successfully signed in', data: { user }, diff --git a/packages/api/logger.js b/packages/api/logger.js new file mode 100644 index 00000000..39f68f20 --- /dev/null +++ b/packages/api/logger.js @@ -0,0 +1,21 @@ +'use strict'; + +const config = require('config'); +const pino = require('pino-http'); + + +module.exports = { + stdLogger: pino({ name: 'opensensemap-api' }), + debugLogger: pino({ + name: 'opensensemap-api-debug', + serializers: { + req (req) { + if (config.get('logLevel') === 'debug') { + req.body = req.raw.body; + } + + return req; + } + } + }) +}; diff --git a/packages/api/package.json b/packages/api/package.json index adf6a99a..e8f6d287 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -32,7 +32,8 @@ "millify": "^6.1.0", "moment": "^2.29.4", "ms": "^2.1.3", - "pino": "^8.8.0", + "pino": "^9.3.2", + "pino-http": "^10.2.0", "restify": "11.1.0", "restify-errors": "^8.0.2", "simple-statistics": "^7.7.0", diff --git a/yarn.lock b/yarn.lock index 7cafabc3..1dd7003a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2928,6 +2928,14 @@ pidusage@^3.0.2: dependencies: safe-buffer "^5.2.1" +pino-abstract-transport@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/pino-abstract-transport/-/pino-abstract-transport-1.2.0.tgz#97f9f2631931e242da531b5c66d3079c12c9d1b5" + integrity sha512-Guhh8EZfPCfH+PMXAb6rKOjGQEoy0xlAIn+irODG5kgfYV+BQ0rGYYWTIel3P5mmyXqkYkPmdIkywsn6QKUR1Q== + dependencies: + readable-stream "^4.0.0" + split2 "^4.0.0" + pino-abstract-transport@v1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/pino-abstract-transport/-/pino-abstract-transport-1.0.0.tgz#cc0d6955fffcadb91b7b49ef220a6cc111d48bb3" @@ -2936,11 +2944,26 @@ pino-abstract-transport@v1.0.0: readable-stream "^4.0.0" split2 "^4.0.0" +pino-http@^10.2.0: + version "10.2.0" + resolved "https://registry.yarnpkg.com/pino-http/-/pino-http-10.2.0.tgz#157b799e84ee4f6fe5a862fa3758f10d25376fed" + integrity sha512-am03BxnV3Ckx68OkbH0iZs3indsrH78wncQ6w1w51KroIbvJZNImBKX2X1wjdY8lSyaJ0UrX/dnO2DY3cTeCRw== + dependencies: + get-caller-file "^2.0.5" + pino "^9.0.0" + pino-std-serializers "^7.0.0" + process-warning "^3.0.0" + pino-std-serializers@^6.0.0: version "6.1.0" resolved "https://registry.yarnpkg.com/pino-std-serializers/-/pino-std-serializers-6.1.0.tgz#307490fd426eefc95e06067e85d8558603e8e844" integrity sha512-KO0m2f1HkrPe9S0ldjx7za9BJjeHqBku5Ch8JyxETxT8dEFGz1PwgrHaOQupVYitpzbFSYm7nnljxD8dik2c+g== +pino-std-serializers@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/pino-std-serializers/-/pino-std-serializers-7.0.0.tgz#7c625038b13718dbbd84ab446bd673dc52259e3b" + integrity sha512-e906FRY0+tV27iq4juKzSYPbUj2do2X2JX4EzSca1631EB2QJQUqGbDuERal7LCtOpxl6x3+nvo9NPZcmjkiFA== + pino@^8.7.0: version "8.15.0" resolved "https://registry.yarnpkg.com/pino/-/pino-8.15.0.tgz#67c61d5e397bf297e5a0433976a7f7b8aa6f876b" @@ -2975,6 +2998,23 @@ pino@^8.8.0: sonic-boom "^3.1.0" thread-stream "^2.0.0" +pino@^9.0.0, pino@^9.3.2: + version "9.3.2" + resolved "https://registry.yarnpkg.com/pino/-/pino-9.3.2.tgz#a530d6d28f1d954b6f54416a218cbb616f52f901" + integrity sha512-WtARBjgZ7LNEkrGWxMBN/jvlFiE17LTbBoH0konmBU684Kd0uIiDwBXlcTCW7iJnA6HfIKwUssS/2AC6cDEanw== + dependencies: + atomic-sleep "^1.0.0" + fast-redact "^3.1.1" + on-exit-leak-free "^2.1.0" + pino-abstract-transport "^1.2.0" + pino-std-serializers "^7.0.0" + process-warning "^4.0.0" + quick-format-unescaped "^4.0.3" + real-require "^0.2.0" + safe-stable-stringify "^2.3.1" + sonic-boom "^4.0.1" + thread-stream "^3.0.0" + polygon-clipping@^0.15.3: version "0.15.3" resolved "https://registry.yarnpkg.com/polygon-clipping/-/polygon-clipping-0.15.3.tgz#0215840438470ba2e9e6593625e4ea5c1087b4b7" @@ -3007,6 +3047,16 @@ process-warning@^2.0.0: resolved "https://registry.yarnpkg.com/process-warning/-/process-warning-2.1.0.tgz#1e60e3bfe8183033bbc1e702c2da74f099422d1a" integrity sha512-9C20RLxrZU/rFnxWncDkuF6O999NdIf3E1ws4B0ZeY3sRVPzWBMsYDE2lxjxhiXxg464cQTgKUGm8/i6y2YGXg== +process-warning@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/process-warning/-/process-warning-3.0.0.tgz#96e5b88884187a1dce6f5c3166d611132058710b" + integrity sha512-mqn0kFRl0EoqhnL0GQ0veqFHyIN1yig9RHh/InzORTUiZHFRAur+aMtRkELNwGs9aNwKS6tg/An4NYBPGwvtzQ== + +process-warning@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/process-warning/-/process-warning-4.0.0.tgz#581e3a7a1fb456c5f4fd239f76bce75897682d5a" + integrity sha512-/MyYDxttz7DfGMMHiysAsFE4qF+pQYAA8ziO/3NcRVrQ5fSk+Mns4QZA/oRPFzvcqNoVJXQNWNAsdwBXLUkQKw== + process@^0.11.10: version "0.11.10" resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182" @@ -3482,6 +3532,13 @@ sonic-boom@^3.1.0: dependencies: atomic-sleep "^1.0.0" +sonic-boom@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/sonic-boom/-/sonic-boom-4.0.1.tgz#515b7cef2c9290cb362c4536388ddeece07aed30" + integrity sha512-hTSD/6JMLyT4r9zeof6UtuBDpjJ9sO08/nmS5djaA9eozT9oOlNdpXSnzcgj4FTqpk3nkLrs61l4gip9r1HCrQ== + dependencies: + atomic-sleep "^1.0.0" + source-map@~0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" @@ -3738,6 +3795,13 @@ thread-stream@^2.0.0: dependencies: real-require "^0.2.0" +thread-stream@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/thread-stream/-/thread-stream-3.1.0.tgz#4b2ef252a7c215064507d4ef70c05a5e2d34c4f1" + integrity sha512-OqyPZ9u96VohAyMfJykzmivOrY2wfMSf3C5TtFJVgN+Hm6aj+voFhlK+kZEIv2FBh1X6Xp3DlnCOfEQ3B2J86A== + dependencies: + real-require "^0.2.0" + to-regex-range@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" From b2da8f208af13d5a5d01a000996eb8e27fa241d9 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 4 Sep 2024 20:06:42 +0200 Subject: [PATCH 332/337] Bump docker/build-push-action from 6.6.1 to 6.7.0 (#889) Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 6.6.1 to 6.7.0. - [Release notes](https://github.com/docker/build-push-action/releases) - [Commits](https://github.com/docker/build-push-action/compare/v6.6.1...v6.7.0) --- updated-dependencies: - dependency-name: docker/build-push-action dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/registry.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/registry.yaml b/.github/workflows/registry.yaml index 145430bf..74cf34a2 100644 --- a/.github/workflows/registry.yaml +++ b/.github/workflows/registry.yaml @@ -41,7 +41,7 @@ jobs: suffix= - name: 🐳 Build and push Docker image - uses: docker/build-push-action@v6.6.1 + uses: docker/build-push-action@v6.7.0 with: context: . push: true From 98e22513075d3376814d19c3729447375cccc5c2 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 19 Nov 2024 10:49:57 +0100 Subject: [PATCH 333/337] Bump docker/build-push-action from 6.7.0 to 6.9.0 (#896) Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 6.7.0 to 6.9.0. - [Release notes](https://github.com/docker/build-push-action/releases) - [Commits](https://github.com/docker/build-push-action/compare/v6.7.0...v6.9.0) --- updated-dependencies: - dependency-name: docker/build-push-action dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/registry.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/registry.yaml b/.github/workflows/registry.yaml index 74cf34a2..c0bd9d4b 100644 --- a/.github/workflows/registry.yaml +++ b/.github/workflows/registry.yaml @@ -41,7 +41,7 @@ jobs: suffix= - name: 🐳 Build and push Docker image - uses: docker/build-push-action@v6.7.0 + uses: docker/build-push-action@v6.9.0 with: context: . push: true From 4cf6aef112c61910d77caa21dc860d75b721e8f9 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 19 Nov 2024 10:56:15 +0100 Subject: [PATCH 334/337] Bump actions/setup-node from 4.0.3 to 4.1.0 (#901) Bumps [actions/setup-node](https://github.com/actions/setup-node) from 4.0.3 to 4.1.0. - [Release notes](https://github.com/actions/setup-node/releases) - [Commits](https://github.com/actions/setup-node/compare/v4.0.3...v4.1.0) --- updated-dependencies: - dependency-name: actions/setup-node dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Matthias Pfeil --- .github/workflows/test.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index 438a717e..4dc394b5 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -16,7 +16,7 @@ jobs: - uses: actions/checkout@v4 - name: ⬣ Install Node.js - uses: actions/setup-node@v4.0.3 + uses: actions/setup-node@v4.1.0 with: node-version: 18 From c70637d947c96ad996380c41c049776f3d9f3019 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 19 Nov 2024 11:15:03 +0100 Subject: [PATCH 335/337] Bump actions/cache from 4.0.2 to 4.1.2 (#900) Bumps [actions/cache](https://github.com/actions/cache) from 4.0.2 to 4.1.2. - [Release notes](https://github.com/actions/cache/releases) - [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md) - [Commits](https://github.com/actions/cache/compare/v4.0.2...v4.1.2) --- updated-dependencies: - dependency-name: actions/cache dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Matthias Pfeil --- .github/workflows/test.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index 4dc394b5..fdc25933 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -26,7 +26,7 @@ jobs: echo "##[set-output name=dir;]$(yarn cache dir)" - name: 🔧 Restore yarn cache - uses: actions/cache@v4.0.2 + uses: actions/cache@v4.1.2 id: yarn-cache with: path: ${{ steps.yarn-cache-dir-path.outputs.dir }} From 02c6cd78fa49038c9ab2b50bce90e2c223295770 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 10 Jan 2025 16:43:31 +0100 Subject: [PATCH 336/337] Bump actions/cache from 4.1.2 to 4.2.0 (#910) Bumps [actions/cache](https://github.com/actions/cache) from 4.1.2 to 4.2.0. - [Release notes](https://github.com/actions/cache/releases) - [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md) - [Commits](https://github.com/actions/cache/compare/v4.1.2...v4.2.0) --- updated-dependencies: - dependency-name: actions/cache dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/test.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index fdc25933..7436f28f 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -26,7 +26,7 @@ jobs: echo "##[set-output name=dir;]$(yarn cache dir)" - name: 🔧 Restore yarn cache - uses: actions/cache@v4.1.2 + uses: actions/cache@v4.2.0 id: yarn-cache with: path: ${{ steps.yarn-cache-dir-path.outputs.dir }} From 953c476b192bcb051823e67c2a3b3e9891eb7bea Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 10 Jan 2025 16:45:29 +0100 Subject: [PATCH 337/337] Bump docker/build-push-action from 6.9.0 to 6.11.0 (#917) Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 6.9.0 to 6.11.0. - [Release notes](https://github.com/docker/build-push-action/releases) - [Commits](https://github.com/docker/build-push-action/compare/v6.9.0...v6.11.0) --- updated-dependencies: - dependency-name: docker/build-push-action dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Matthias Pfeil --- .github/workflows/registry.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/registry.yaml b/.github/workflows/registry.yaml index c0bd9d4b..40ede7b9 100644 --- a/.github/workflows/registry.yaml +++ b/.github/workflows/registry.yaml @@ -41,7 +41,7 @@ jobs: suffix= - name: 🐳 Build and push Docker image - uses: docker/build-push-action@v6.9.0 + uses: docker/build-push-action@v6.11.0 with: context: . push: true