Commit c1b05b39 by Michael Mifsud Committed by GitHub

Merge pull request #1800 from sass/feat/libsass-3.4.0.1

Bump LibSass to 3.4.0
parents 1bb893f3 dd946fdb
{
"name": "node-sass",
"version": "3.13.1",
"libsass": "3.3.6",
"libsass": "3.4.0",
"description": "Wrapper around libsass",
"license": "MIT",
"bugs": "https://github.com/sass/node-sass/issues",
......@@ -62,6 +62,8 @@
"in-publish": "^2.0.0",
"lodash.assign": "^4.2.0",
"lodash.clonedeep": "^4.3.2",
"lodash.isarray": "^4.0.0",
"lodash.mergewith": "^4.6.0",
"meow": "^3.7.0",
"mkdirp": "^0.5.1",
"nan": "^2.3.2",
......@@ -79,6 +81,6 @@
"object-merge": "^2.5.1",
"read-yaml": "^1.0.0",
"rimraf": "^2.5.2",
"sass-spec": "^3.3.6-5"
"sass-spec": "^3.4.0"
}
}
Subproject commit 3ae9a2066152f9438aebaaacd12f39deaceaebc2
Subproject commit 5b92405db76df2acf620fbaf37e3d1c3662af720
......@@ -15,6 +15,7 @@
'libsass/src/base64vlq.cpp',
'libsass/src/bind.cpp',
'libsass/src/cencode.c',
'libsass/src/check_nesting.cpp',
'libsass/src/color_maps.cpp',
'libsass/src/constants.cpp',
'libsass/src/context.cpp',
......
......@@ -10,4 +10,4 @@
#navbar li a {
font-weight: bold; }
/*# sourceMappingURL=data:application/json;base64,ewoJInZlcnNpb24iOiAzLAoJImZpbGUiOiAiZml4dHVyZXMvc291cmNlLW1hcC1lbWJlZC9pbmRleC5jc3MiLAoJInNvdXJjZXMiOiBbCgkJImZpeHR1cmVzL3NvdXJjZS1tYXAtZW1iZWQvaW5kZXguc2NzcyIKCV0sCgkibWFwcGluZ3MiOiAiQUFBQSxBQUFBLE9BQU8sQ0FBQztFQUNOLEtBQUssRUFBRSxHQUFJO0VBQ1gsTUFBTSxFQUFFLElBQUssR0FDZDs7QUFFRCxBQUFRLE9BQUQsQ0FBQyxFQUFFLENBQUM7RUFDVCxlQUFlLEVBQUUsSUFBSyxHQUN2Qjs7QUFFRCxBQUFRLE9BQUQsQ0FBQyxFQUFFLENBQUM7RUFDVCxLQUFLLEVBQUUsSUFBSyxHQUtiO0VBTkQsQUFHRSxPQUhLLENBQUMsRUFBRSxDQUdSLENBQUMsQ0FBQztJQUNBLFdBQVcsRUFBRSxJQUFLLEdBQ25CIiwKCSJuYW1lcyI6IFtdCn0= */
/*# sourceMappingURL=data:application/json;base64,ewoJInZlcnNpb24iOiAzLAoJImZpbGUiOiAiZml4dHVyZXMvc291cmNlLW1hcC1lbWJlZC9pbmRleC5jc3MiLAoJInNvdXJjZXMiOiBbCgkJImZpeHR1cmVzL3NvdXJjZS1tYXAtZW1iZWQvaW5kZXguc2NzcyIKCV0sCgkibmFtZXMiOiBbXSwKCSJtYXBwaW5ncyI6ICJBQUFBLEFBQUEsT0FBTyxDQUFDO0VBQ04sS0FBSyxFQUFFLEdBQUc7RUFDVixNQUFNLEVBQUUsSUFBSSxHQUNiOztBQUVELEFBQUEsT0FBTyxDQUFDLEVBQUUsQ0FBQztFQUNULGVBQWUsRUFBRSxJQUFJLEdBQ3RCOztBQUVELEFBQUEsT0FBTyxDQUFDLEVBQUUsQ0FBQztFQUNULEtBQUssRUFBRSxJQUFJLEdBS1o7RUFORCxBQUdFLE9BSEssQ0FBQyxFQUFFLENBR1IsQ0FBQyxDQUFDO0lBQ0EsV0FBVyxFQUFFLElBQUksR0FDbEIiCn0= */
......@@ -4,6 +4,6 @@
"sources": [
"index.scss"
],
"mappings": "AAAA,AAAA,OAAO,CAAC;EACN,KAAK,EAAE,GAAI;EACX,MAAM,EAAE,IAAK,GACd;;AAED,AAAQ,OAAD,CAAC,EAAE,CAAC;EACT,eAAe,EAAE,IAAK,GACvB;;AAED,AAAQ,OAAD,CAAC,EAAE,CAAC;EACT,KAAK,EAAE,IAAK,GAKb;EAND,AAGE,OAHK,CAAC,EAAE,CAGR,CAAC,CAAC;IACA,WAAW,EAAE,IAAK,GACnB",
"names": []
"names": [],
"mappings": "AAAA,AAAA,OAAO,CAAC;EACN,KAAK,EAAE,GAAG;EACV,MAAM,EAAE,IAAI,GACb;;AAED,AAAA,OAAO,CAAC,EAAE,CAAC;EACT,eAAe,EAAE,IAAI,GACtB;;AAED,AAAA,OAAO,CAAC,EAAE,CAAC;EACT,KAAK,EAAE,IAAI,GAKZ;EAND,AAGE,OAHK,CAAC,EAAE,CAGR,CAAC,CAAC;IACA,WAAW,EAAE,IAAI,GAClB"
}
......@@ -7,7 +7,9 @@ var assert = require('assert'),
? require('../lib-cov')
: require('../lib'),
readYaml = require('read-yaml'),
objectMerge = require('object-merge'),
mergeWith = require('lodash.mergewith'),
assign = require('lodash.assign'),
isArray = require('lodash.isarray'),
glob = require('glob'),
specPath = require('sass-spec').dirname.replace(/\\/g, '/'),
impl = 'libsass',
......@@ -32,7 +34,7 @@ var initialize = function(inputCss, options) {
testCase.statusPath = join(folder, 'status');
testCase.optionsPath = join(folder, 'options.yml');
if (exists(testCase.optionsPath)) {
options = objectMerge(options, readYaml.sync(testCase.optionsPath));
options = mergeWith(assign({}, options), readYaml.sync(testCase.optionsPath), customizer);
}
testCase.includePaths = [
folder,
......@@ -41,6 +43,7 @@ var initialize = function(inputCss, options) {
testCase.precision = parseFloat(options[':precision']) || 5;
testCase.outputStyle = options[':output_style'] ? options[':output_style'].replace(':', '') : 'nested';
testCase.todo = options[':todo'] !== undefined && options[':todo'] !== null && options[':todo'].indexOf(impl) !== -1;
testCase.only = options[':only_on'] !== undefined && options[':only_on'] !== null && options[':only_on'];
testCase.warningTodo = options[':warning_todo'] !== undefined && options[':warning_todo'] !== null && options[':warning_todo'].indexOf(impl) !== -1;
testCase.startVersion = parseFloat(options[':start_version']) || 0;
testCase.endVersion = parseFloat(options[':end_version']) || 99;
......@@ -59,6 +62,8 @@ var runTest = function(inputCssPath, options) {
it(test.name, function(done) {
if (test.todo || test.warningTodo) {
this.skip('Test marked with TODO');
} else if (test.only && test.only.indexOf(impl) === -1) {
this.skip('Tests marked for only: ' + test.only.join(', '));
} else if (version < test.startVersion) {
this.skip('Tests marked for newer Sass versions only');
} else if (version > test.endVersion) {
......@@ -109,11 +114,18 @@ var specSuite = {
suites: [],
options: {}
};
function customizer(objValue, srcValue) {
if (isArray(objValue)) {
return objValue.concat(srcValue);
}
}
var executeSuite = function(suite, tests) {
var suiteFolderLength = suite.folder.split('/').length;
var optionsFile = join(suite.folder, 'options.yml');
if (exists(optionsFile)) {
suite.options = objectMerge(suite.options, readYaml.sync(optionsFile));
suite.options = mergeWith(assign({}, suite.options), readYaml.sync(optionsFile), customizer);
}
// Push tests in the current suite
......@@ -143,7 +155,7 @@ var executeSuite = function(suite, tests) {
folder: suite.folder + '/' + prevSuite,
tests: [],
suites: [],
options: suite.options
options: assign({}, suite.options),
},
tests.slice(prevSuiteStart, i)
)
......@@ -159,7 +171,7 @@ var executeSuite = function(suite, tests) {
folder: suite.folder + '/' + suiteName,
tests: [],
suites: [],
options: suite.options
options: assign({}, suite.options),
},
tests.slice(prevSuiteStart, tests.length)
)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment