diff --git a/NEWS.md b/NEWS.md index 4b329ca0..a2dc60fc 100644 --- a/NEWS.md +++ b/NEWS.md @@ -1,11 +1,12 @@ # Changelog -## 2.33.2 +## 2.34.0 Released 2016-mm-dd Enhancements: - Adds support to return multiple errors in BaseController.sendError #423 + - Starts using turbo-carto dependency ## 2.33.1 diff --git a/lib/cartodb/cache/named_map_provider_cache.js b/lib/cartodb/cache/named_map_provider_cache.js index 301f21ce..a25850dc 100644 --- a/lib/cartodb/cache/named_map_provider_cache.js +++ b/lib/cartodb/cache/named_map_provider_cache.js @@ -9,7 +9,7 @@ var queue = require('queue-async'); var LruCache = require("lru-cache"); function NamedMapProviderCache(templateMaps, pgConnection, metadataBackend, userLimitsApi, overviewsAdapter, - turboCartocssAdapter) { + turboCartoAdapter) { this.templateMaps = templateMaps; this.pgConnection = pgConnection; this.metadataBackend = metadataBackend; @@ -18,7 +18,7 @@ function NamedMapProviderCache(templateMaps, pgConnection, metadataBackend, user this.namedLayersAdapter = new MapConfigNamedLayersAdapter(templateMaps); this.analysisMapConfigAdapter = new AnalysisMapConfigAdapter(); this.overviewsAdapter = overviewsAdapter; - this.turboCartocssAdapter = turboCartocssAdapter; + this.turboCartoAdapter = turboCartoAdapter; this.providerCache = new LruCache({ max: 2000 }); } @@ -38,7 +38,7 @@ NamedMapProviderCache.prototype.get = function(user, templateId, config, authTok this.userLimitsApi, this.namedLayersAdapter, this.overviewsAdapter, - this.turboCartocssAdapter, + this.turboCartoAdapter, this.analysisMapConfigAdapter, user, templateId, diff --git a/lib/cartodb/controllers/map.js b/lib/cartodb/controllers/map.js index 7f9d51d9..442079e0 100644 --- a/lib/cartodb/controllers/map.js +++ b/lib/cartodb/controllers/map.js @@ -30,13 +30,13 @@ var CreateLayergroupMapConfigProvider = require('../models/mapconfig/create_laye * @param {UserLimitsApi} userLimitsApi * @param {LayergroupAffectedTables} layergroupAffectedTables * @param {MapConfigOverviewsAdapter} overviewsAdapter - * @param {TurboCartocssAdapter} turboCartoCssAdapter + * @param {TurboCartoAdapter} turboCartoAdapter * @param {AnalysisBackend} analysisBackend * @constructor */ function MapController(authApi, pgConnection, templateMaps, mapBackend, metadataBackend, surrogateKeysCache, userLimitsApi, layergroupAffectedTables, - overviewsAdapter, turboCartoCssAdapter, analysisBackend) { + overviewsAdapter, turboCartoAdapter, analysisBackend) { BaseController.call(this, authApi, pgConnection); @@ -47,7 +47,7 @@ function MapController(authApi, pgConnection, templateMaps, mapBackend, metadata this.surrogateKeysCache = surrogateKeysCache; this.userLimitsApi = userLimitsApi; this.layergroupAffectedTables = layergroupAffectedTables; - this.turboCartoCssAdapter = turboCartoCssAdapter; + this.turboCartoAdapter = turboCartoAdapter; this.analysisMapConfigAdapter = new AnalysisMapConfigAdapter(analysisBackend); this.namedLayersAdapter = new MapConfigNamedLayersAdapter(templateMaps); @@ -197,11 +197,11 @@ MapController.prototype.create = function(req, res, prepareConfigFn) { return next(null, requestMapConfig, datasource); }); }, - function parseTurboCartoCss(err, requestMapConfig, datasource) { + function parseTurboCarto(err, requestMapConfig, datasource) { assert.ifError(err); var next = this; - self.turboCartoCssAdapter.getLayers(req.context.user, requestMapConfig.layers, function (err, layers) { + self.turboCartoAdapter.getLayers(req.context.user, requestMapConfig.layers, function (err, layers) { if (err) { return next(err); } @@ -263,7 +263,7 @@ MapController.prototype.instantiateTemplate = function(req, res, prepareParamsFn self.userLimitsApi, self.namedLayersAdapter, self.overviewsAdapter, - self.turboCartoCssAdapter, + self.turboCartoAdapter, self.analysisMapConfigAdapter, cdbuser, req.params.template_id, diff --git a/lib/cartodb/models/mapconfig/named_map_provider.js b/lib/cartodb/models/mapconfig/named_map_provider.js index 2c3c3b48..9c8c218d 100644 --- a/lib/cartodb/models/mapconfig/named_map_provider.js +++ b/lib/cartodb/models/mapconfig/named_map_provider.js @@ -12,14 +12,14 @@ var QueryTables = require('cartodb-query-tables'); * @type {NamedMapMapConfigProvider} */ function NamedMapMapConfigProvider(templateMaps, pgConnection, metadataBackend, userLimitsApi, - namedLayersAdapter, overviewsAdapter, turboCartoCssAdapter, analysisMapConfigAdapter, + namedLayersAdapter, overviewsAdapter, turboCartoAdapter, analysisMapConfigAdapter, owner, templateId, config, authToken, params) { this.templateMaps = templateMaps; this.pgConnection = pgConnection; this.metadataBackend = metadataBackend; this.userLimitsApi = userLimitsApi; this.namedLayersAdapter = namedLayersAdapter; - this.turboCartoCssAdapter = turboCartoCssAdapter; + this.turboCartoAdapter = turboCartoAdapter; this.analysisMapConfigAdapter = analysisMapConfigAdapter; this.overviewsAdapter = overviewsAdapter; @@ -154,11 +154,11 @@ NamedMapMapConfigProvider.prototype.getMapConfig = function(callback) { return next(null, _mapConfig, datasource); }); }, - function parseTurboCartoCss(err, _mapConfig, datasource) { + function parseTurboCarto(err, _mapConfig, datasource) { assert.ifError(err); var next = this; - self.turboCartoCssAdapter.getLayers(self.owner, _mapConfig.layers, function (err, layers) { + self.turboCartoAdapter.getLayers(self.owner, _mapConfig.layers, function (err, layers) { if (err) { return next(err); } diff --git a/lib/cartodb/server.js b/lib/cartodb/server.js index e727f4b2..7df6a69f 100644 --- a/lib/cartodb/server.js +++ b/lib/cartodb/server.js @@ -34,8 +34,8 @@ var timeoutErrorTile = require('fs').readFileSync(timeoutErrorTilePath, {encodin var MapConfigOverviewsAdapter = require('./models/mapconfig_overviews_adapter'); -var TurboCartocssParser = require('./utils/style/turbo-cartocss-parser'); -var TurboCartocssAdapter = require('./utils/style/turbo-cartocss-adapter'); +var TurboCartoParser = require('./utils/style/turbo-carto-parser'); +var TurboCartoAdapter = require('./utils/style/turbo-carto-adapter'); module.exports = function(serverOptions) { // Make stats client globally accessible @@ -149,8 +149,8 @@ module.exports = function(serverOptions) { var overviewsAdapter = new MapConfigOverviewsAdapter(overviewsMetadataApi); - var turboCartoCssParser = new TurboCartocssParser(pgQueryRunner); - var turboCartocssAdapter = new TurboCartocssAdapter(turboCartoCssParser); + var turboCartoParser = new TurboCartoParser(pgQueryRunner); + var turboCartoAdapter = new TurboCartoAdapter(turboCartoParser); var namedMapProviderCache = new NamedMapProviderCache( templateMaps, @@ -158,7 +158,7 @@ module.exports = function(serverOptions) { metadataBackend, userLimitsApi, overviewsAdapter, - turboCartocssAdapter + turboCartoAdapter ); ['update', 'delete'].forEach(function(eventType) { @@ -198,7 +198,7 @@ module.exports = function(serverOptions) { userLimitsApi, layergroupAffectedTablesCache, overviewsAdapter, - turboCartocssAdapter, + turboCartoAdapter, analysisBackend ).register(app); diff --git a/lib/cartodb/utils/style/turbo-cartocss-adapter.js b/lib/cartodb/utils/style/turbo-carto-adapter.js similarity index 53% rename from lib/cartodb/utils/style/turbo-cartocss-adapter.js rename to lib/cartodb/utils/style/turbo-carto-adapter.js index 7f181c4e..1c197ac7 100644 --- a/lib/cartodb/utils/style/turbo-cartocss-adapter.js +++ b/lib/cartodb/utils/style/turbo-carto-adapter.js @@ -2,26 +2,26 @@ var queue = require('queue-async'); -function TurboCartocssAdapter(turboCartocssParser) { - this.turboCartocssParser = turboCartocssParser; +function TurboCartoAdapter(turboCartoParser) { + this.turboCartoParser = turboCartoParser; } -module.exports = TurboCartocssAdapter; +module.exports = TurboCartoAdapter; -TurboCartocssAdapter.prototype.getLayers = function (username, layers, callback) { +TurboCartoAdapter.prototype.getLayers = function (username, layers, callback) { var self = this; if (!layers || layers.length === 0) { return callback(null, layers); } - var parseCartoCssQueue = queue(layers.length); + var parseCartoQueue = queue(layers.length); layers.forEach(function(layer) { - parseCartoCssQueue.defer(self._parseCartoCss.bind(self), username, layer); + parseCartoQueue.defer(self._parseCartoCss.bind(self), username, layer); }); - parseCartoCssQueue.awaitAll(function (err, layers) { + parseCartoQueue.awaitAll(function (err, layers) { if (err) { return callback(err); } @@ -30,15 +30,15 @@ TurboCartocssAdapter.prototype.getLayers = function (username, layers, callback) }); }; -TurboCartocssAdapter.prototype._parseCartoCss = function (username, layer, callback) { +TurboCartoAdapter.prototype._parseCartoCss = function (username, layer, callback) { if (isNotLayerToParseCartocss(layer)) { return process.nextTick(function () { callback(null, layer); }); } - this.turboCartocssParser.process(username, layer.options.cartocss, layer.options.sql, function (err, cartocss) { - // Ignore turbo-cartocss errors and continue + this.turboCartoParser.process(username, layer.options.cartocss, layer.options.sql, function (err, cartocss) { + // Ignore turbo-carto errors and continue if (!err && cartocss) { layer.options.cartocss = cartocss; } diff --git a/lib/cartodb/utils/style/turbo-carto-parser.js b/lib/cartodb/utils/style/turbo-carto-parser.js new file mode 100644 index 00000000..7cd977f1 --- /dev/null +++ b/lib/cartodb/utils/style/turbo-carto-parser.js @@ -0,0 +1,15 @@ +'use strict'; + +var turboCarto = require('turbo-carto'); +var PostgresDatasource = require('./postgres-datasource'); + +function TurboCartoParser (pgQueryRunner) { + this.pgQueryRunner = pgQueryRunner; +} + +module.exports = TurboCartoParser; + +TurboCartoParser.prototype.process = function (username, cartocss, sql, callback) { + var datasource = new PostgresDatasource(this.pgQueryRunner, username, sql); + turboCarto(cartocss, datasource, callback); +}; diff --git a/lib/cartodb/utils/style/turbo-cartocss-parser.js b/lib/cartodb/utils/style/turbo-cartocss-parser.js deleted file mode 100644 index 19a7f9c0..00000000 --- a/lib/cartodb/utils/style/turbo-cartocss-parser.js +++ /dev/null @@ -1,15 +0,0 @@ -'use strict'; - -var turboCartoCss = require('turbo-cartocss'); -var PostgresDatasource = require('./postgres-datasource'); - -function TurboCartocssParser (pgQueryRunner) { - this.pgQueryRunner = pgQueryRunner; -} - -module.exports = TurboCartocssParser; - -TurboCartocssParser.prototype.process = function (username, cartocss, sql, callback) { - var datasource = new PostgresDatasource(this.pgQueryRunner, username, sql); - turboCartoCss(cartocss, datasource, callback); -}; diff --git a/npm-shrinkwrap.json b/npm-shrinkwrap.json index 49312785..8ed28816 100644 --- a/npm-shrinkwrap.json +++ b/npm-shrinkwrap.json @@ -1,6 +1,6 @@ { "name": "windshaft-cartodb", - "version": "2.33.1", + "version": "2.34.0", "dependencies": { "body-parser": { "version": "1.14.2", @@ -34,7 +34,7 @@ }, "statuses": { "version": "1.2.1", - "from": "statuses@>=1.2.1 <1.3.0", + "from": "statuses@>=1.0.0 <2.0.0", "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.2.1.tgz" } } @@ -80,7 +80,7 @@ }, "type-is": { "version": "1.6.12", - "from": "type-is@>=1.6.6 <1.7.0", + "from": "type-is@>=1.6.10 <1.7.0", "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.12.tgz", "dependencies": { "media-typer": { @@ -90,7 +90,7 @@ }, "mime-types": { "version": "2.1.10", - "from": "mime-types@>=2.1.2 <2.2.0", + "from": "mime-types@>=2.1.10 <2.2.0", "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.10.tgz", "dependencies": { "mime-db": { @@ -111,7 +111,7 @@ "dependencies": { "async": { "version": "1.5.2", - "from": "async@>=1.5.2 <2.0.0", + "from": "async@>=1.0.0 <2.0.0", "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz" }, "request": { @@ -395,26 +395,29 @@ } }, "sshpk": { - "version": "1.7.4", + "version": "1.8.2", "from": "sshpk@>=1.7.0 <2.0.0", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.7.4.tgz", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.8.2.tgz", "dependencies": { "asn1": { "version": "0.2.3", "from": "asn1@>=0.2.3 <0.3.0", "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz" }, + "assert-plus": { + "version": "1.0.0", + "from": "assert-plus@>=1.0.0 <2.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz" + }, "dashdash": { - "version": "1.13.0", - "from": "dashdash@>=1.10.1 <2.0.0", - "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.13.0.tgz", - "dependencies": { - "assert-plus": { - "version": "1.0.0", - "from": "assert-plus@>=1.0.0 <2.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz" - } - } + "version": "1.13.1", + "from": "dashdash@>=1.12.0 <2.0.0", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.13.1.tgz" + }, + "getpass": { + "version": "0.1.5", + "from": "getpass@>=0.1.1 <0.2.0", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.5.tgz" }, "jsbn": { "version": "0.1.0", @@ -422,9 +425,9 @@ "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.0.tgz" }, "tweetnacl": { - "version": "0.14.3", - "from": "tweetnacl@>=0.13.0 <1.0.0", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.3.tgz" + "version": "0.13.3", + "from": "tweetnacl@>=0.13.0 <0.14.0", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.13.3.tgz" }, "jodid25519": { "version": "1.0.2", @@ -433,7 +436,7 @@ }, "ecc-jsbn": { "version": "0.1.1", - "from": "ecc-jsbn@>=0.0.1 <1.0.0", + "from": "ecc-jsbn@>=0.1.1 <0.2.0", "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz" } } @@ -664,7 +667,7 @@ "dependencies": { "unpipe": { "version": "1.0.0", - "from": "unpipe@1.0.0", + "from": "unpipe@>=1.0.0 <1.1.0", "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz" } } @@ -779,7 +782,7 @@ }, "type-is": { "version": "1.6.12", - "from": "type-is@>=1.6.6 <1.7.0", + "from": "type-is@>=1.6.10 <1.7.0", "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.12.tgz", "dependencies": { "media-typer": { @@ -1231,92 +1234,24 @@ "from": "step-profiler@>=0.2.1 <0.3.0", "resolved": "https://registry.npmjs.org/step-profiler/-/step-profiler-0.2.1.tgz" }, - "turbo-cartocss": { - "version": "0.4.0", - "from": "turbo-cartocss@0.4.0", - "resolved": "https://registry.npmjs.org/turbo-cartocss/-/turbo-cartocss-0.4.0.tgz", + "turbo-carto": { + "version": "0.6.0", + "from": "turbo-carto@0.6.0", + "resolved": "https://registry.npmjs.org/turbo-carto/-/turbo-carto-0.6.0.tgz", "dependencies": { - "browser-request": { - "version": "0.3.3", - "from": "browser-request@>=0.3.3 <0.4.0", - "resolved": "https://registry.npmjs.org/browser-request/-/browser-request-0.3.3.tgz" - }, "colorbrewer": { - "version": "0.0.2", - "from": "colorbrewer@0.0.2", - "resolved": "https://registry.npmjs.org/colorbrewer/-/colorbrewer-0.0.2.tgz" + "version": "1.0.0", + "from": "colorbrewer@1.0.0", + "resolved": "https://registry.npmjs.org/colorbrewer/-/colorbrewer-1.0.0.tgz" }, "es6-promise": { "version": "3.1.2", - "from": "es6-promise@>=3.0.2 <4.0.0", + "from": "es6-promise@3.1.2", "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-3.1.2.tgz" }, - "less": { - "version": "2.6.1", - "from": "less@>=2.5.3 <3.0.0", - "resolved": "https://registry.npmjs.org/less/-/less-2.6.1.tgz", - "dependencies": { - "errno": { - "version": "0.1.4", - "from": "errno@>=0.1.1 <0.2.0", - "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.4.tgz", - "dependencies": { - "prr": { - "version": "0.0.0", - "from": "prr@>=0.0.0 <0.1.0", - "resolved": "https://registry.npmjs.org/prr/-/prr-0.0.0.tgz" - } - } - }, - "graceful-fs": { - "version": "4.1.3", - "from": "graceful-fs@>=4.1.2 <5.0.0", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.3.tgz" - }, - "image-size": { - "version": "0.4.0", - "from": "image-size@>=0.4.0 <0.5.0", - "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.4.0.tgz" - }, - "mime": { - "version": "1.3.4", - "from": "mime@>=1.2.11 <2.0.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.3.4.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", - "dependencies": { - "minimist": { - "version": "0.0.8", - "from": "minimist@0.0.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz" - } - } - }, - "promise": { - "version": "7.1.1", - "from": "promise@>=7.1.1 <8.0.0", - "resolved": "https://registry.npmjs.org/promise/-/promise-7.1.1.tgz", - "dependencies": { - "asap": { - "version": "2.0.3", - "from": "asap@>=2.0.3 <2.1.0", - "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.3.tgz" - } - } - }, - "source-map": { - "version": "0.5.3", - "from": "source-map@>=0.5.3 <0.6.0", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.3.tgz" - } - } - }, "postcss": { "version": "5.0.19", - "from": "postcss@>=5.0.13 <6.0.0", + "from": "postcss@5.0.19", "resolved": "https://registry.npmjs.org/postcss/-/postcss-5.0.19.tgz", "dependencies": { "supports-color": { @@ -1332,9 +1267,9 @@ } }, "source-map": { - "version": "0.5.3", + "version": "0.5.5", "from": "source-map@>=0.5.1 <0.6.0", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.3.tgz" + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.5.tgz" }, "js-base64": { "version": "2.1.9", @@ -1345,405 +1280,8 @@ }, "postcss-value-parser": { "version": "3.3.0", - "from": "postcss-value-parser@>=3.2.3 <4.0.0", + "from": "postcss-value-parser@3.3.0", "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.0.tgz" - }, - "querystring": { - "version": "0.2.0", - "from": "querystring@>=0.2.0 <0.3.0", - "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz" - }, - "request": { - "version": "2.72.0", - "from": "request@>=2.67.0 <3.0.0", - "resolved": "https://registry.npmjs.org/request/-/request-2.72.0.tgz", - "dependencies": { - "aws-sign2": { - "version": "0.6.0", - "from": "aws-sign2@>=0.6.0 <0.7.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.6.0.tgz" - }, - "aws4": { - "version": "1.3.2", - "from": "aws4@>=1.2.1 <2.0.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.3.2.tgz", - "dependencies": { - "lru-cache": { - "version": "4.0.1", - "from": "lru-cache@>=4.0.0 <5.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.0.1.tgz", - "dependencies": { - "pseudomap": { - "version": "1.0.2", - "from": "pseudomap@>=1.0.1 <2.0.0", - "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz" - }, - "yallist": { - "version": "2.0.0", - "from": "yallist@>=2.0.0 <3.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.0.0.tgz" - } - } - } - } - }, - "bl": { - "version": "1.1.2", - "from": "bl@>=1.1.2 <1.2.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-1.1.2.tgz", - "dependencies": { - "readable-stream": { - "version": "2.0.6", - "from": "readable-stream@>=2.0.5 <2.1.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.0.6.tgz", - "dependencies": { - "core-util-is": { - "version": "1.0.2", - "from": "core-util-is@>=1.0.0 <1.1.0", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz" - }, - "inherits": { - "version": "2.0.1", - "from": "inherits@>=2.0.1 <2.1.0", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz" - }, - "isarray": { - "version": "1.0.0", - "from": "isarray@>=1.0.0 <1.1.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz" - }, - "process-nextick-args": { - "version": "1.0.6", - "from": "process-nextick-args@>=1.0.6 <1.1.0", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.6.tgz" - }, - "string_decoder": { - "version": "0.10.31", - "from": "string_decoder@>=0.10.0 <0.11.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz" - }, - "util-deprecate": { - "version": "1.0.2", - "from": "util-deprecate@>=1.0.1 <1.1.0", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.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" - }, - "combined-stream": { - "version": "1.0.5", - "from": "combined-stream@>=1.0.5 <1.1.0", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.5.tgz", - "dependencies": { - "delayed-stream": { - "version": "1.0.0", - "from": "delayed-stream@>=1.0.0 <1.1.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz" - } - } - }, - "extend": { - "version": "3.0.0", - "from": "extend@>=3.0.0 <3.1.0", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.0.tgz" - }, - "forever-agent": { - "version": "0.6.1", - "from": "forever-agent@>=0.6.1 <0.7.0", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz" - }, - "form-data": { - "version": "1.0.0-rc4", - "from": "form-data@>=1.0.0-rc3 <1.1.0", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-1.0.0-rc4.tgz", - "dependencies": { - "async": { - "version": "1.5.2", - "from": "async@>=1.5.2 <2.0.0", - "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz" - } - } - }, - "har-validator": { - "version": "2.0.6", - "from": "har-validator@>=2.0.6 <2.1.0", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-2.0.6.tgz", - "dependencies": { - "chalk": { - "version": "1.1.3", - "from": "chalk@>=1.1.1 <2.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "dependencies": { - "ansi-styles": { - "version": "2.2.1", - "from": "ansi-styles@>=2.2.1 <3.0.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz" - }, - "escape-string-regexp": { - "version": "1.0.5", - "from": "escape-string-regexp@>=1.0.2 <2.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz" - }, - "has-ansi": { - "version": "2.0.0", - "from": "has-ansi@>=2.0.0 <3.0.0", - "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "dependencies": { - "ansi-regex": { - "version": "2.0.0", - "from": "ansi-regex@>=2.0.0 <3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.0.0.tgz" - } - } - }, - "strip-ansi": { - "version": "3.0.1", - "from": "strip-ansi@>=3.0.0 <4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "dependencies": { - "ansi-regex": { - "version": "2.0.0", - "from": "ansi-regex@>=2.0.0 <3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.0.0.tgz" - } - } - }, - "supports-color": { - "version": "2.0.0", - "from": "supports-color@>=2.0.0 <3.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz" - } - } - }, - "commander": { - "version": "2.9.0", - "from": "commander@>=2.9.0 <3.0.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.9.0.tgz", - "dependencies": { - "graceful-readlink": { - "version": "1.0.1", - "from": "graceful-readlink@>=1.0.0", - "resolved": "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz" - } - } - }, - "is-my-json-valid": { - "version": "2.13.1", - "from": "is-my-json-valid@>=2.12.4 <3.0.0", - "resolved": "https://registry.npmjs.org/is-my-json-valid/-/is-my-json-valid-2.13.1.tgz", - "dependencies": { - "generate-function": { - "version": "2.0.0", - "from": "generate-function@>=2.0.0 <3.0.0", - "resolved": "https://registry.npmjs.org/generate-function/-/generate-function-2.0.0.tgz" - }, - "generate-object-property": { - "version": "1.2.0", - "from": "generate-object-property@>=1.1.0 <2.0.0", - "resolved": "https://registry.npmjs.org/generate-object-property/-/generate-object-property-1.2.0.tgz", - "dependencies": { - "is-property": { - "version": "1.0.2", - "from": "is-property@>=1.0.0 <2.0.0", - "resolved": "https://registry.npmjs.org/is-property/-/is-property-1.0.2.tgz" - } - } - }, - "jsonpointer": { - "version": "2.0.0", - "from": "jsonpointer@2.0.0", - "resolved": "https://registry.npmjs.org/jsonpointer/-/jsonpointer-2.0.0.tgz" - }, - "xtend": { - "version": "4.0.1", - "from": "xtend@>=4.0.0 <5.0.0", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz" - } - } - }, - "pinkie-promise": { - "version": "2.0.1", - "from": "pinkie-promise@>=2.0.0 <3.0.0", - "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", - "dependencies": { - "pinkie": { - "version": "2.0.4", - "from": "pinkie@>=2.0.0 <3.0.0", - "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz" - } - } - } - } - }, - "hawk": { - "version": "3.1.3", - "from": "hawk@>=3.1.3 <3.2.0", - "resolved": "https://registry.npmjs.org/hawk/-/hawk-3.1.3.tgz", - "dependencies": { - "hoek": { - "version": "2.16.3", - "from": "hoek@>=2.0.0 <3.0.0", - "resolved": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz" - }, - "boom": { - "version": "2.10.1", - "from": "boom@>=2.0.0 <3.0.0", - "resolved": "https://registry.npmjs.org/boom/-/boom-2.10.1.tgz" - }, - "cryptiles": { - "version": "2.0.5", - "from": "cryptiles@>=2.0.0 <3.0.0", - "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-2.0.5.tgz" - }, - "sntp": { - "version": "1.0.9", - "from": "sntp@>=1.0.0 <2.0.0", - "resolved": "https://registry.npmjs.org/sntp/-/sntp-1.0.9.tgz" - } - } - }, - "http-signature": { - "version": "1.1.1", - "from": "http-signature@>=1.1.0 <1.2.0", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.1.1.tgz", - "dependencies": { - "assert-plus": { - "version": "0.2.0", - "from": "assert-plus@>=0.2.0 <0.3.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-0.2.0.tgz" - }, - "jsprim": { - "version": "1.2.2", - "from": "jsprim@>=1.2.2 <2.0.0", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.2.2.tgz", - "dependencies": { - "extsprintf": { - "version": "1.0.2", - "from": "extsprintf@1.0.2", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.0.2.tgz" - }, - "json-schema": { - "version": "0.2.2", - "from": "json-schema@0.2.2", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.2.tgz" - }, - "verror": { - "version": "1.3.6", - "from": "verror@1.3.6", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.3.6.tgz" - } - } - }, - "sshpk": { - "version": "1.7.4", - "from": "sshpk@>=1.7.0 <2.0.0", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.7.4.tgz", - "dependencies": { - "asn1": { - "version": "0.2.3", - "from": "asn1@>=0.2.3 <0.3.0", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz" - }, - "dashdash": { - "version": "1.13.0", - "from": "dashdash@>=1.10.1 <2.0.0", - "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.13.0.tgz", - "dependencies": { - "assert-plus": { - "version": "1.0.0", - "from": "assert-plus@>=1.0.0 <2.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz" - } - } - }, - "jsbn": { - "version": "0.1.0", - "from": "jsbn@>=0.1.0 <0.2.0", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.0.tgz" - }, - "tweetnacl": { - "version": "0.14.3", - "from": "tweetnacl@>=0.13.0 <1.0.0", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.3.tgz" - }, - "jodid25519": { - "version": "1.0.2", - "from": "jodid25519@>=1.0.0 <2.0.0", - "resolved": "https://registry.npmjs.org/jodid25519/-/jodid25519-1.0.2.tgz" - }, - "ecc-jsbn": { - "version": "0.1.1", - "from": "ecc-jsbn@>=0.0.1 <1.0.0", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz" - } - } - } - } - }, - "is-typedarray": { - "version": "1.0.0", - "from": "is-typedarray@>=1.0.0 <1.1.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz" - }, - "isstream": { - "version": "0.1.2", - "from": "isstream@>=0.1.2 <0.2.0", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz" - }, - "json-stringify-safe": { - "version": "5.0.1", - "from": "json-stringify-safe@>=5.0.1 <5.1.0", - "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz" - }, - "mime-types": { - "version": "2.1.10", - "from": "mime-types@>=2.1.7 <2.2.0", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.10.tgz", - "dependencies": { - "mime-db": { - "version": "1.22.0", - "from": "mime-db@>=1.22.0 <1.23.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.22.0.tgz" - } - } - }, - "node-uuid": { - "version": "1.4.7", - "from": "node-uuid@>=1.4.7 <1.5.0", - "resolved": "https://registry.npmjs.org/node-uuid/-/node-uuid-1.4.7.tgz" - }, - "oauth-sign": { - "version": "0.8.1", - "from": "oauth-sign@>=0.8.1 <0.9.0", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.1.tgz" - }, - "qs": { - "version": "6.1.0", - "from": "qs@>=6.1.0 <6.2.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.1.0.tgz" - }, - "stringstream": { - "version": "0.0.5", - "from": "stringstream@>=0.0.4 <0.1.0", - "resolved": "https://registry.npmjs.org/stringstream/-/stringstream-0.0.5.tgz" - }, - "tough-cookie": { - "version": "2.2.2", - "from": "tough-cookie@>=2.2.0 <2.3.0", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.2.2.tgz" - }, - "tunnel-agent": { - "version": "0.4.2", - "from": "tunnel-agent@>=0.4.1 <0.5.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.4.2.tgz" - } - } } } }, @@ -4649,9 +4187,9 @@ } }, "source-map": { - "version": "0.5.3", + "version": "0.5.5", "from": "source-map@>=0.5.1 <0.6.0", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.3.tgz" + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.5.tgz" }, "js-base64": { "version": "2.1.9", diff --git a/package.json b/package.json index 0237eb8e..b1d9879f 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "private": true, "name": "windshaft-cartodb", - "version": "2.33.2", + "version": "2.34.0", "description": "A map tile server for CartoDB", "keywords": [ "cartodb" @@ -39,7 +39,7 @@ "lzma": "~1.3.7", "log4js": "https://github.com/CartoDB/log4js-node/tarball/cdb", "cartodb-query-tables": "~0.1.0", - "turbo-cartocss": "0.4.0" + "turbo-carto": "0.6.0" }, "devDependencies": { "istanbul": "~0.3.6", diff --git a/test/acceptance/turbo-cartocss-anonymous-maps.js b/test/acceptance/turbo-cartocss/anonymous-maps.js similarity index 87% rename from test/acceptance/turbo-cartocss-anonymous-maps.js rename to test/acceptance/turbo-cartocss/anonymous-maps.js index 32134d94..82801815 100644 --- a/test/acceptance/turbo-cartocss-anonymous-maps.js +++ b/test/acceptance/turbo-cartocss/anonymous-maps.js @@ -1,5 +1,5 @@ -var assert = require('../support/assert'); -var TestClient = require('../support/test-client'); +var assert = require('../../support/assert'); +var TestClient = require('../../support/test-client'); var IMAGE_TOLERANCE_PER_MIL = 20; @@ -38,7 +38,7 @@ function makeMapconfig(cartocss) { }; } -describe('turbo-cartocss for anonymous maps', function() { +describe('turbo-carto for anonymous maps', function() { describe('parsing ramp function with colorbrewer for greens and mapnik renderer', function () { beforeEach(function () { var turboCartocss = '#layer { marker-fill: ramp([price], colorbrewer(Greens)); }'; @@ -49,8 +49,8 @@ describe('turbo-cartocss for anonymous maps', function() { this.testClient.drain(done); }); - it('should get a tile with turbo-cartocss parsed properly', function (done) { - var fixturePath = 'test_turbo_cartocss_greens_13_4011_3088.png'; + it('should get a tile with turbo-carto parsed properly', function (done) { + var fixturePath = 'test_turbo_carto_greens_13_4011_3088.png'; this.testClient.getTile(13, 4011, 3088, imageCompareFn(fixturePath, done)); }); }); @@ -65,8 +65,8 @@ describe('turbo-cartocss for anonymous maps', function() { this.testClient.drain(done); }); - it('should get a tile with turbo-cartocss parsed properly', function (done) { - var fixtureFileName = 'test_turbo_cartocss_reds_13_4011_3088.png'; + it('should get a tile with turbo-carto parsed properly', function (done) { + var fixtureFileName = 'test_turbo_carto_reds_13_4011_3088.png'; this.testClient.getTile(13, 4011, 3088, imageCompareFn(fixtureFileName, done)); }); }); @@ -115,12 +115,12 @@ describe('turbo-cartocss for anonymous maps', function() { this.testClient.drain(done); }); - it('should get a tile with turbo-cartocss parsed properly', function (done) { + it('should get a tile with turbo-carto parsed properly', function (done) { var z = 2; var x = 2; var y = 1; - var pngFixture = 'torque/populated_places_simple_reduced-turbo-cartocss-' + [z, x, y].join('.') + '.png'; + var pngFixture = 'torque/populated_places_simple_reduced-turbo-carto-' + [z, x, y].join('.') + '.png'; this.testClient.getTile(z, x, y, { layers: 0, format: 'torque.png' }, imageCompareFn(pngFixture, done)); }); diff --git a/test/acceptance/turbo-cartocss-named-maps.js b/test/acceptance/turbo-cartocss/named-maps.js similarity index 91% rename from test/acceptance/turbo-cartocss-named-maps.js rename to test/acceptance/turbo-cartocss/named-maps.js index 3c90a973..9c88b6db 100644 --- a/test/acceptance/turbo-cartocss-named-maps.js +++ b/test/acceptance/turbo-cartocss/named-maps.js @@ -1,14 +1,14 @@ -var assert = require('../support/assert'); +var assert = require('../../support/assert'); var step = require('step'); -var LayergroupToken = require('../../lib/cartodb/models/layergroup_token'); -var testHelper = require(__dirname + '/../support/test_helper'); -var CartodbWindshaft = require(__dirname + '/../../lib/cartodb/server'); -var serverOptions = require(__dirname + '/../../lib/cartodb/server_options'); +var LayergroupToken = require('../../../lib/cartodb/models/layergroup_token'); +var testHelper = require('../../support/test_helper'); +var CartodbWindshaft = require('../../../lib/cartodb/server'); +var serverOptions = require('../../../lib/cartodb/server_options'); var server = new CartodbWindshaft(serverOptions); var mapnik = require('windshaft').mapnik; var IMAGE_TOLERANCE_PER_MIL = 10; -describe('turbo-cartocss for named maps', function() { +describe('turbo-carto for named maps', function() { var keysToDelete; @@ -20,7 +20,7 @@ describe('turbo-cartocss for named maps', function() { testHelper.deleteRedisKeys(keysToDelete, done); }); - var templateId = 'turbo-cartocss-template-1'; + var templateId = 'turbo-carto-template-1'; var template = { version: '0.0.1', @@ -65,7 +65,7 @@ describe('turbo-cartocss for named maps', function() { var templateParamsReds = { color: 'Reds' }; var templateParamsBlues = { color: 'Blues' }; - it('should create a template with turbo-cartocss parsed properly', function (done) { + it('should create a template with turbo-carto parsed properly', function (done) { step( function postTemplate() { var next = this; @@ -144,7 +144,7 @@ describe('turbo-cartocss for named maps', function() { assert.equal(res.statusCode, 200); assert.equal(res.headers['content-type'], 'image/png'); - var fixturePath = './test/fixtures/turbo-cartocss-named-maps-reds.png'; + var fixturePath = './test/fixtures/turbo-carto-named-maps-reds.png'; var image = mapnik.Image.fromBytes(new Buffer(res.body, 'binary')); assert.imageIsSimilarToFile(image, fixturePath, IMAGE_TOLERANCE_PER_MIL, next); @@ -203,7 +203,7 @@ describe('turbo-cartocss for named maps', function() { assert.equal(res.statusCode, 200); assert.equal(res.headers['content-type'], 'image/png'); - var fixturePath = './test/fixtures/turbo-cartocss-named-maps-blues.png'; + var fixturePath = './test/fixtures/turbo-carto-named-maps-blues.png'; var image = mapnik.Image.fromBytes(new Buffer(res.body, 'binary')); assert.imageIsSimilarToFile(image, fixturePath, IMAGE_TOLERANCE_PER_MIL, next); diff --git a/test/acceptance/turbo-cartocss-regressions.js b/test/acceptance/turbo-cartocss/regressions.js similarity index 91% rename from test/acceptance/turbo-cartocss-regressions.js rename to test/acceptance/turbo-cartocss/regressions.js index 52d55b35..c55009d5 100644 --- a/test/acceptance/turbo-cartocss-regressions.js +++ b/test/acceptance/turbo-cartocss/regressions.js @@ -1,7 +1,7 @@ -require('../support/test_helper'); +require('../../support/test_helper'); -var assert = require('../support/assert'); -var TestClient = require('../support/test-client'); +var assert = require('../../support/assert'); +var TestClient = require('../../support/test-client'); function makeMapconfig(cartocss) { return { @@ -31,7 +31,7 @@ function makeMapconfig(cartocss) { }; } -describe('turbo-cartocss regressions', function() { +describe('turbo-carto regressions', function() { var cartocss = [ "/** simple visualization */", diff --git a/test/fixtures/test_turbo_cartocss_greens_13_4011_3088.png b/test/fixtures/test_turbo_carto_greens_13_4011_3088.png similarity index 100% rename from test/fixtures/test_turbo_cartocss_greens_13_4011_3088.png rename to test/fixtures/test_turbo_carto_greens_13_4011_3088.png diff --git a/test/fixtures/test_turbo_cartocss_reds_13_4011_3088.png b/test/fixtures/test_turbo_carto_reds_13_4011_3088.png similarity index 100% rename from test/fixtures/test_turbo_cartocss_reds_13_4011_3088.png rename to test/fixtures/test_turbo_carto_reds_13_4011_3088.png diff --git a/test/fixtures/torque/populated_places_simple_reduced-turbo-cartocss-2.2.1.png b/test/fixtures/torque/populated_places_simple_reduced-turbo-carto-2.2.1.png similarity index 100% rename from test/fixtures/torque/populated_places_simple_reduced-turbo-cartocss-2.2.1.png rename to test/fixtures/torque/populated_places_simple_reduced-turbo-carto-2.2.1.png diff --git a/test/fixtures/turbo-cartocss-named-maps-blues.png b/test/fixtures/turbo-carto-named-maps-blues.png similarity index 100% rename from test/fixtures/turbo-cartocss-named-maps-blues.png rename to test/fixtures/turbo-carto-named-maps-blues.png diff --git a/test/fixtures/turbo-cartocss-named-maps-reds.png b/test/fixtures/turbo-carto-named-maps-reds.png similarity index 100% rename from test/fixtures/turbo-cartocss-named-maps-reds.png rename to test/fixtures/turbo-carto-named-maps-reds.png