diff --git a/NEWS.md b/NEWS.md index f379d52f..75a203af 100644 --- a/NEWS.md +++ b/NEWS.md @@ -1,9 +1,13 @@ # Changelog -## 2.54.1 +## 2.55.0 Released 2016-mm-dd +Announcements: + - Uses new configuration for camshaft: analysis node has an associated user/owner. + - Upgrades camshaft to [0.25.0](https://github.com/CartoDB/camshaft/releases/tag/0.25.0). + ## 2.54.0 diff --git a/lib/cartodb/backends/dataview.js b/lib/cartodb/backends/dataview.js index 4481d8be..15a56e1d 100644 --- a/lib/cartodb/backends/dataview.js +++ b/lib/cartodb/backends/dataview.js @@ -56,6 +56,7 @@ DataviewBackend.prototype.getDataview = function (mapConfigProvider, user, param assert.ifError(err); var analysisConfiguration = { + user: user, db: { host: params.dbhost, port: params.dbport, @@ -201,6 +202,7 @@ DataviewBackend.prototype.search = function (mapConfigProvider, user, params, ca assert.ifError(err); var analysisConfiguration = { + user: user, db: { host: params.dbhost, port: params.dbport, diff --git a/lib/cartodb/controllers/map.js b/lib/cartodb/controllers/map.js index 8a3b09ea..9a9015da 100644 --- a/lib/cartodb/controllers/map.js +++ b/lib/cartodb/controllers/map.js @@ -135,6 +135,7 @@ MapController.prototype.create = function(req, res, prepareConfigFn) { function prepareAdapterMapConfig(err, requestMapConfig) { assert.ifError(err); context.analysisConfiguration = { + user: req.context.user, db: { host: req.params.dbhost, port: req.params.dbport, diff --git a/lib/cartodb/models/mapconfig/provider/named-map-provider.js b/lib/cartodb/models/mapconfig/provider/named-map-provider.js index 7c9c0dc5..2e3cb30d 100644 --- a/lib/cartodb/models/mapconfig/provider/named-map-provider.js +++ b/lib/cartodb/models/mapconfig/provider/named-map-provider.js @@ -95,6 +95,7 @@ NamedMapMapConfigProvider.prototype.getMapConfig = function(callback) { function prepareAdapterMapConfig(err, requestMapConfig) { assert.ifError(err); context.analysisConfiguration = { + user: self.owner, db: { host: rendererParams.dbhost, port: rendererParams.dbport, diff --git a/npm-shrinkwrap.json b/npm-shrinkwrap.json index 28e31001..0f55c22f 100644 --- a/npm-shrinkwrap.json +++ b/npm-shrinkwrap.json @@ -1,6 +1,6 @@ { "name": "windshaft-cartodb", - "version": "2.54.1", + "version": "2.55.0", "dependencies": { "body-parser": { "version": "1.14.2", @@ -105,9 +105,9 @@ } }, "camshaft": { - "version": "0.23.0", - "from": "camshaft@0.23.0", - "resolved": "https://registry.npmjs.org/camshaft/-/camshaft-0.23.0.tgz", + "version": "0.25.0", + "from": "camshaft@0.25.0", + "resolved": "https://registry.npmjs.org/camshaft/-/camshaft-0.25.0.tgz", "dependencies": { "async": { "version": "1.5.2", @@ -1029,7 +1029,7 @@ }, "mime-types": { "version": "2.1.11", - "from": "mime-types@>=2.1.2 <2.2.0", + "from": "mime-types@>=2.1.11 <2.2.0", "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.11.tgz", "dependencies": { "mime-db": { @@ -3031,16 +3031,16 @@ "from": "boom@>=2.0.0 <3.0.0", "resolved": "https://registry.npmjs.org/boom/-/boom-2.10.1.tgz" }, - "caseless": { - "version": "0.11.0", - "from": "caseless@>=0.11.0 <0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.11.0.tgz" - }, "brace-expansion": { "version": "1.1.4", "from": "brace-expansion@>=1.0.0 <2.0.0", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.4.tgz" }, + "caseless": { + "version": "0.11.0", + "from": "caseless@>=0.11.0 <0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.11.0.tgz" + }, "chalk": { "version": "1.1.3", "from": "chalk@>=1.1.1 <2.0.0", @@ -3306,16 +3306,16 @@ "from": "minimatch@>=2.0.0 <3.0.0||>=3.0.0 <4.0.0", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.0.tgz" }, - "mkdirp": { - "version": "0.5.1", - "from": "mkdirp@>=0.5.0 <0.6.0", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz" - }, "minimist": { "version": "0.0.8", "from": "minimist@0.0.8", "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz" }, + "mkdirp": { + "version": "0.5.1", + "from": "mkdirp@>=0.5.0 <0.6.0", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz" + }, "ms": { "version": "0.7.1", "from": "ms@0.7.1", @@ -3346,16 +3346,16 @@ "from": "once@>=1.3.0 <2.0.0", "resolved": "https://registry.npmjs.org/once/-/once-1.3.3.tgz" }, - "path-is-absolute": { - "version": "1.0.0", - "from": "path-is-absolute@>=1.0.0 <2.0.0", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.0.tgz" - }, "pinkie": { "version": "2.0.4", "from": "pinkie@>=2.0.0 <3.0.0", "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz" }, + "path-is-absolute": { + "version": "1.0.0", + "from": "path-is-absolute@>=1.0.0 <2.0.0", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.0.tgz" + }, "pinkie-promise": { "version": "2.0.1", "from": "pinkie-promise@>=2.0.0 <3.0.0", @@ -3451,16 +3451,16 @@ "from": "util-deprecate@>=1.0.1 <1.1.0", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz" }, - "wrappy": { - "version": "1.0.1", - "from": "wrappy@>=1.0.0 <2.0.0", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz" - }, "verror": { "version": "1.3.6", "from": "verror@1.3.6", "resolved": "https://registry.npmjs.org/verror/-/verror-1.3.6.tgz" }, + "wrappy": { + "version": "1.0.1", + "from": "wrappy@>=1.0.0 <2.0.0", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz" + }, "xtend": { "version": "4.0.1", "from": "xtend@>=4.0.0 <5.0.0", @@ -3514,18 +3514,6 @@ } } }, - "tar-pack": { - "version": "3.1.3", - "from": "tar-pack@>=3.1.0 <3.2.0", - "resolved": "https://registry.npmjs.org/tar-pack/-/tar-pack-3.1.3.tgz", - "dependencies": { - "readable-stream": { - "version": "2.0.6", - "from": "readable-stream@>=2.0.4 <2.1.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.0.6.tgz" - } - } - }, "sshpk": { "version": "1.8.3", "from": "sshpk@>=1.7.0 <2.0.0", @@ -3537,6 +3525,18 @@ "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz" } } + }, + "tar-pack": { + "version": "3.1.3", + "from": "tar-pack@>=3.1.0 <3.2.0", + "resolved": "https://registry.npmjs.org/tar-pack/-/tar-pack-3.1.3.tgz", + "dependencies": { + "readable-stream": { + "version": "2.0.6", + "from": "readable-stream@>=2.0.4 <2.1.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.0.6.tgz" + } + } } } }, diff --git a/package.json b/package.json index e9b92f7e..2c18e56f 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "private": true, "name": "windshaft-cartodb", - "version": "2.54.1", + "version": "2.55.0", "description": "A map tile server for CartoDB", "keywords": [ "cartodb" @@ -20,7 +20,7 @@ ], "dependencies": { "body-parser": "~1.14.0", - "camshaft": "0.23.0", + "camshaft": "0.25.0", "cartodb-psql": "~0.6.1", "cartodb-query-tables": "~0.1.0", "cartodb-redis": "~0.13.0", diff --git a/test/acceptance/analysis/regressions.js b/test/acceptance/analysis/regressions.js index fde97dc0..2db8d931 100644 --- a/test/acceptance/analysis/regressions.js +++ b/test/acceptance/analysis/regressions.js @@ -3,8 +3,8 @@ require('../../support/test_helper'); var assert = require('../../support/assert'); var TestClient = require('../../support/test-client'); -describe('analysis-layers error cases', function() { - it('should handle missing analysis nodes for layers', function(done) { +describe('analysis-layers regressions', function() { + it('should return a complete list of nodes from analysis', function(done) { var mapConfig = { "version": "1.5.0", "layers": [ @@ -98,7 +98,12 @@ describe('analysis-layers error cases', function() { var analyses = layergroupResult.metadata.analyses; assert.ok(analyses); assert.equal(analyses.length, 1); - assert.equal(Object.keys(analyses[0].nodes).length, 5); + + var expectedIds = ['customer_home_locations', 'b0', 'b1', 'a2', 'a3', 'a4']; + assert.equal(Object.keys(analyses[0].nodes).length, expectedIds.length, Object.keys(analyses[0].nodes)); + expectedIds.forEach(function(expectedId) { + analyses[0].nodes.hasOwnProperty(expectedId); + }); testClient.drain(done); });