Browse Source

It was all caused by using shallow extend!

pull/1785/head
jlukic 10 years ago
parent
commit
1c915c1210
5 changed files with 18 additions and 21 deletions
  1. 4
      package.json
  2. 2
      tasks/config/defaults.js
  3. 20
      tasks/config/project/config.js
  4. 11
      tasks/config/user.js
  5. 2
      tasks/install.js

4
package.json

@ -19,7 +19,7 @@
"peerDependencies": {
"better-console" : "0.x.x",
"del" : "1.x.x",
"node.extend" : "1.x.x",
"extend" : "2.x.x",
"gulp" : "3.x.x",
"gulp-autoprefixer" : "2.x.x",
"gulp-chmod" : "1.x.x",
@ -47,7 +47,7 @@
"dependencies": {
"better-console" : "0.x.x",
"del" : "1.x.x",
"node.extend" : "1.x.x",
"extend" : "2.x.x",
"gulp" : "3.x.x",
"gulp-autoprefixer" : "2.x.x",
"gulp-chmod" : "1.x.x",

2
tasks/config/defaults.js

@ -2,8 +2,6 @@
Default Paths
*******************************/
console.log('included defaults');
module.exports = {
// base path added to all other paths

20
tasks/config/project/config.js

@ -3,7 +3,7 @@
*******************************/
var
extend = require('node.extend'),
extend = require('extend'),
fs = require('fs'),
path = require('path'),
@ -61,27 +61,27 @@ module.exports = {
var
configPath = this.getPath(),
sourcePaths = {},
outputPaths = {},
folder
;
// resolve source paths
// resolve paths (config location + base + path)
for(folder in config.paths.source) {
if(config.paths.source.hasOwnProperty(folder)) {
// full path is (config location + base + path)
config.paths.source[folder] = path.resolve(path.join(configPath, config.base, config.paths.source[folder]));
sourcePaths[folder] = path.resolve(path.join(configPath, config.base, config.paths.source[folder]));
}
}
// resolve output paths
for(folder in config.paths.output) {
if(config.paths.output.hasOwnProperty(folder)) {
// full path is (config location + base + path)
console.log('start extend' , defaults.paths.output[folder]);
config.paths.output[folder] = path.resolve(path.join(configPath, config.base, config.paths.output[folder]));
console.log('end extend' , defaults.paths.output[folder]);
outputPaths[folder] = path.resolve(path.join(configPath, config.base, config.paths.output[folder]));
}
}
// set config paths to full paths
config.paths.source = sourcePaths;
config.paths.output = outputPaths;
// resolve "clean" command path
config.paths.clean = path.resolve( path.join(configPath, config.base, config.paths.clean) );

11
tasks/config/user.js

@ -4,7 +4,7 @@
var
// npm dependencies
extend = require('node.extend'),
extend = require('extend'),
fs = require('fs'),
path = require('path'),
requireDotFile = require('require-dot-file'),
@ -13,11 +13,12 @@ var
defaults = require('./defaults'),
config = require('./project/config'),
// Final config object
gulpConfig = {},
// semantic.json settings
userConfig,
userConfig
// final config object
gulpConfig
;
@ -37,7 +38,7 @@ catch(error) {
// extend user config with defaults
gulpConfig = (!userConfig)
? extend(false, {}, defaults)
? extend(true, {}, defaults)
: extend(false, {}, defaults, userConfig)
;

2
tasks/install.js

@ -56,8 +56,6 @@ var
// Export install task
module.exports = function () {
return;
var
currentConfig = requireDotFile('semantic.json'),
manager = install.getPackageManager(),

Loading…
Cancel
Save