drdk / grunt-dr-svg-sprites

Grunt plugin to create SVG sprites with PNG fallbacks at needed sizes
113 stars 19 forks source link

Warning: Cannot file module ./lib/sprite #18

Closed minorOffense closed 10 years ago

minorOffense commented 10 years ago

Running the sprite task I get the following error:

Running "svg-sprites:shapes" (svg-sprites) task
[D] Task source: /var/www/html/drupal/profiles/spotlight_profile/themes/spotlight_zen/node_modules/grunt-dr-svg-sprites/tasks/index.js
Building SVG sprites...
Warning: Cannot find module './lib/sprite' Use --force to continue.

I've tried various combinations of the configuration examples with no luck.

Here's as much debug information as I can give you right now

Here is my Gruntfile.js

module.exports = function(grunt) {

  grunt.initConfig({
    pkg: grunt.file.readJSON('package.json'),
    concurrent: {
      target1: ['jshint', 'compass'],
      target2: ['svg-sprites'],
      target3: ['uglify']
    },
    "svg-sprites": {
      options: {
          sizes: {
              large: 24,
              small: 16
          },
          refSize: "large",
          unit: 6
      },
      shapes: {
        options: {
          spriteElementPath: "images/shapes",
          spritePath: "images/sprites/shapes-sprite.svg",
          cssPath: "css/shapes-sprite.css"
//          prefix: "dr-shapes"
        },
      },
    },
    compass: {
      dist: {
        options: {
          config: 'config.rb'
        }
      }
    },
    uglify: {
      options: {
        banner: '/*! <%= pkg.name %> <%= grunt.template.today("dd-mm-yyyy") %> */\n'
      },
      dynamic_mappings: {
        // Grunt will search for "*.js" under "js/" when the "uglify" task
        // runs and build the appropriate src-dest file mappings then, so you
        // don't need to update the Gruntfile when files are added or removed.
        files: [
          {
            expand: true,     // Enable dynamic expansion.
            cwd: 'js/',      // Src matches are relative to this path.
            src: ['*.js'], // Actual pattern(s) to match.
            dest: 'js/',   // Destination path prefix.
            ext: '.min.js',   // Dest filepaths will have this extension.
            extDot: 'first'   // Extensions in filenames begin after the first dot
          },
          ],
      },
    },
    jshint: {
      beforeconcat: ['Gruntfile.js', 'js/*.js'],
      afterconcat: ['js/<%= pkg.name %>.js'],
      options: {
        ignores: ['js/*.min.js'],
        // options here to override JSHint defaults
        globals: {
          jQuery: true,
          console: true,
          module: true,
          document: true
        }
      }
    },
    watch: {
      options: {
        livereload: true
      },
      css: {
        files: ['**/*.scss'],
        tasks: ['compass:dist']
      },
      js: {
        files: ['<%= jshint.beforeconcat %>'],
        tasks: ['jshint']
      },
      img: {
        files: ['**/*.svg', '**/*.png'],
        tasks: ['svg-sprites']
      }
    }
  });

  grunt.loadNpmTasks('grunt-contrib-uglify');
  grunt.loadNpmTasks('grunt-contrib-jshint');
  grunt.loadNpmTasks('grunt-contrib-watch');
  grunt.loadNpmTasks('grunt-contrib-compass');
  grunt.loadNpmTasks('grunt-concurrent');
  grunt.loadNpmTasks('grunt-dr-svg-sprites');

  grunt.registerTask('test', ['jshint']);
  grunt.registerTask('default', ['concurrent:target1', 'concurrent:target2', 'concurrent:target3']);
};

And version information from npm

{ http_parser: '2.0',
  node: '0.10.26',
  v8: '3.14.5.10',
  ares: '1.9.1',
  uv: '0.10.25',
  zlib: '1.2.3',
  modules: '11',
  openssl: '1.0.1e-fips',
  npm: '1.3.6'}
grunt-cli v0.1.13
grunt v0.4.5
├─┬ grunt@0.4.5
│ ├── async@0.1.22
│ ├── coffee-script@1.3.3
│ ├── colors@0.6.2
│ ├── dateformat@1.0.2-1.2.3
│ ├── eventemitter2@0.4.13
│ ├── exit@0.1.2
│ ├─┬ findup-sync@0.1.3
│ │ ├─┬ glob@3.2.9
│ │ │ └── inherits@2.0.1
│ │ └── lodash@2.4.1
│ ├── getobject@0.1.0
│ ├─┬ glob@3.1.21
│ │ ├── graceful-fs@1.2.3
│ │ └── inherits@1.0.0
│ ├─┬ grunt-legacy-log@0.1.1
│ │ ├── lodash@2.4.1
│ │ └── underscore.string@2.3.3
│ ├── grunt-legacy-util@0.2.0
│ ├── hooker@0.2.3
│ ├── iconv-lite@0.2.11
│ ├─┬ js-yaml@2.0.5
│ │ ├─┬ argparse@0.1.15
│ │ │ ├── underscore@1.4.4
│ │ │ └── underscore.string@2.3.3
│ │ └── esprima@1.0.4
│ ├── lodash@0.9.2
│ ├─┬ minimatch@0.2.14
│ │ ├── lru-cache@2.5.0
│ │ └── sigmund@1.0.0
│ ├─┬ nopt@1.0.10
│ │ └── abbrev@1.0.5
│ ├── rimraf@2.2.8
│ ├── underscore.string@2.2.1
│ └── which@1.0.5
├─┬ grunt-concurrent@0.5.0
│ ├── async@0.2.10
│ └─┬ pad-stdio@0.1.1
│   └── lpad@0.2.1
├─┬ grunt-contrib-compass@0.7.2
│ ├── async@0.2.10
│ ├── dargs@0.1.0
│ └── tmp@0.0.23
├─┬ grunt-contrib-jshint@0.10.0
│ ├── hooker@0.2.3
│ └─┬ jshint@2.5.0
│   ├─┬ cli@0.4.5
│   │ └─┬ glob@3.2.9
│   │   └── inherits@2.0.1
│   ├── console-browserify@0.1.6
│   ├── exit@0.1.2
│   ├─┬ htmlparser2@3.3.0
│   │ ├── domelementtype@1.1.1
│   │ ├── domhandler@2.1.0
│   │ ├── domutils@1.1.6
│   │ └─┬ readable-stream@1.0.27-1
│   │   ├── core-util-is@1.0.1
│   │   ├── inherits@2.0.1
│   │   ├── isarray@0.0.1
│   │   └── string_decoder@0.10.25-1
│   ├─┬ minimatch@0.2.14
│   │ ├── lru-cache@2.5.0
│   │ └── sigmund@1.0.0
│   ├── shelljs@0.1.4
│   ├── strip-json-comments@0.1.2
│   └── underscore@1.4.4
├─┬ grunt-contrib-nodeunit@0.3.3
│ └─┬ nodeunit@0.8.8
│   └─┬ tap@0.4.9
│     ├── buffer-equal@0.0.0
│     ├── deep-equal@0.0.0
│     ├─┬ difflet@0.2.6
│     │ ├── charm@0.1.2
│     │ ├── deep-is@0.1.2
│     │ └── traverse@0.6.6
│     ├─┬ glob@3.2.9
│     │ ├── inherits@2.0.1
│     │ └─┬ minimatch@0.2.14
│     │   ├── lru-cache@2.5.0
│     │   └── sigmund@1.0.0
│     ├── inherits@2.0.1
│     ├── mkdirp@0.3.5
│     ├─┬ nopt@2.2.1
│     │ └── abbrev@1.0.5
│     ├─┬ runforcover@0.0.2
│     │ └─┬ bunker@0.1.2
│     │   └─┬ burrito@0.2.12
│     │     ├── traverse@0.5.2
│     │     └── uglify-js@1.1.1
│     ├── slide@1.1.5
│     └── yamlish@0.0.5
├─┬ grunt-contrib-uglify@0.4.0
│ ├─┬ chalk@0.4.0
│ │ ├── ansi-styles@1.0.0
│ │ ├── has-color@0.1.7
│ │ └── strip-ansi@0.1.1
│ ├─┬ maxmin@0.1.0
│ │ ├─┬ gzip-size@0.1.1
│ │ │ ├─┬ concat-stream@1.4.5
│ │ │ │ ├── inherits@2.0.1
│ │ │ │ ├─┬ readable-stream@1.1.13-1
│ │ │ │ │ ├── core-util-is@1.0.1
│ │ │ │ │ ├── isarray@0.0.1
│ │ │ │ │ └── string_decoder@0.10.25-1
│ │ │ │ └── typedarray@0.0.5
│ │ │ └─┬ zlib-browserify@0.0.3
│ │ │   └─┬ tape@0.2.2
│ │ │     ├── deep-equal@0.0.0
│ │ │     ├── defined@0.0.0
│ │ │     └── jsonify@0.0.0
│ │ └── pretty-bytes@0.1.1
│ └─┬ uglify-js@2.4.13
│   ├── async@0.2.10
│   ├─┬ optimist@0.3.7
│   │ └── wordwrap@0.0.2
│   ├─┬ source-map@0.1.33
│   │ └── amdefine@0.1.0
│   └── uglify-to-browserify@1.0.2
├─┬ grunt-contrib-watch@0.6.1
│ ├── async@0.2.10
│ ├─┬ gaze@0.5.1
│ │ └─┬ globule@0.1.0
│ │   ├─┬ glob@3.1.21
│ │   │ ├── graceful-fs@1.2.3
│ │   │ └── inherits@1.0.0
│ │   ├── lodash@1.0.1
│ │   └─┬ minimatch@0.2.14
│ │     ├── lru-cache@2.5.0
│ │     └── sigmund@1.0.0
│ ├── lodash@2.4.1
│ └─┬ tiny-lr-fork@0.0.5
│   ├── debug@0.7.4
│   ├── faye-websocket@0.4.4
│   ├─┬ noptify@0.0.3
│   │ └─┬ nopt@2.0.0
│   │   └── abbrev@1.0.5
│   └── qs@0.5.6
└─┬ grunt-dr-svg-sprites@0.9.1
  ├── async@0.8.0
  ├─┬ dr-svg-sprites@0.9.1
  │ ├── async@0.7.0
  │ ├── btoa@1.1.1
  │ ├── fishbone@1.0.1
  │ ├─┬ handlebars@2.0.0-alpha.2
  │ │ ├─┬ optimist@0.3.7
  │ │ │ └── wordwrap@0.0.2
  │ │ └─┬ uglify-js@2.3.6
  │ │   ├── async@0.2.10
  │ │   └─┬ source-map@0.1.33
  │ │     └── amdefine@0.1.0
  │ ├─┬ layout@2.0.0
  │ │ └── binpacking@0.0.1
  │ ├── lodash@1.3.1
  │ ├─┬ mkdirp@0.5.0
  │ │ └── minimist@0.0.8
  │ ├─┬ svg2png@1.0.1 (git://github.com/rasmusfl0e/svg2png.git#9a0a01d37a38cd4ad461f4ae32f598d402f7692e)
  │ │ └─┬ phantomjs@1.9.7-5
  │ │   ├── adm-zip@0.2.1
  │ │   ├── kew@0.1.7
  │ │   ├── mkdirp@0.3.5
  │ │   ├── ncp@0.4.2
  │ │   ├─┬ npmconf@0.0.24
  │ │   │ ├─┬ config-chain@1.1.8
  │ │   │ │ └── proto-list@1.2.2
  │ │   │ ├── inherits@1.0.0
  │ │   │ ├── ini@1.1.0
  │ │   │ ├─┬ nopt@2.2.1
  │ │   │ │ └── abbrev@1.0.5
  │ │   │ ├── once@1.1.1
  │ │   │ ├── osenv@0.0.3
  │ │   │ └── semver@1.1.4
  │ │   ├── rimraf@2.2.8
  │ │   └── which@1.0.5
  │ ├─┬ svgo@0.4.4
  │ │ ├─┬ coa@0.4.0
  │ │ │ └── q@0.9.7
  │ │ ├── colors@0.6.2
  │ │ ├─┬ js-yaml@2.1.3
  │ │ │ ├─┬ argparse@0.1.15
  │ │ │ │ ├── underscore@1.4.4
  │ │ │ │ └── underscore.string@2.3.3
  │ │ │ └── esprima@1.0.4
  │ │ ├── sax@0.6.0
  │ │ └── whet.extend@0.9.9
  │ ├─┬ through2@0.4.1
  │ │ ├─┬ readable-stream@1.0.27-1
  │ │ │ ├── core-util-is@1.0.1
  │ │ │ ├── inherits@2.0.1
  │ │ │ ├── isarray@0.0.1
  │ │ │ └── string_decoder@0.10.25-1
  │ │ └─┬ xtend@2.1.2
  │ │   └── object-keys@0.4.0
  │ └─┬ vinyl-fs@0.1.4
  │   ├─┬ glob-stream@3.1.9
  │   │ ├─┬ glob@3.2.9
  │   │ │ └── inherits@2.0.1
  │   │ ├── glob2base@0.0.8
  │   │ ├─┬ minimatch@0.2.14
  │   │ │ ├── lru-cache@2.5.0
  │   │ │ └── sigmund@1.0.0
  │   │ ├── ordered-read-streams@0.0.7
  │   │ ├── through@2.3.4
  │   │ └── unique-stream@0.0.4
  │   ├─┬ glob-watcher@0.0.6
  │   │ └─┬ gaze@0.5.1
  │   │   └─┬ globule@0.1.0
  │   │     ├─┬ glob@3.1.21
  │   │     │ ├── graceful-fs@1.2.3
  │   │     │ └── inherits@1.0.0
  │   │     ├── lodash@1.0.1
  │   │     └─┬ minimatch@0.2.14
  │   │       ├── lru-cache@2.5.0
  │   │       └── sigmund@1.0.0
  │   ├── graceful-fs@2.0.3
  │   ├── map-stream@0.1.0
  │   ├── mkdirp@0.3.5
  │   └─┬ vinyl@0.2.3
  │     └── clone-stats@0.0.1
  ├─┬ grunt-contrib-jshint@0.7.2
  │ └─┬ jshint@2.3.0
  │   ├─┬ cli@0.4.5
  │   │ └─┬ glob@3.2.9
  │   │   ├── inherits@2.0.1
  │   │   └─┬ minimatch@0.2.14
  │   │     ├── lru-cache@2.5.0
  │   │     └── sigmund@1.0.0
  │   ├── console-browserify@0.1.6
  │   ├─┬ minimatch@0.3.0
  │   │ ├── lru-cache@2.5.0
  │   │ └── sigmund@1.0.0
  │   ├── shelljs@0.1.4
  │   └── underscore@1.4.4
  └─┬ grunt-contrib-nodeunit@0.2.2
    └─┬ nodeunit@0.8.8
      └─┬ tap@0.4.9
        ├── buffer-equal@0.0.0
        ├── deep-equal@0.0.0
        ├─┬ difflet@0.2.6
        │ ├── charm@0.1.2
        │ ├── deep-is@0.1.2
        │ └── traverse@0.6.6
        ├─┬ glob@3.2.9
        │ ├── inherits@2.0.1
        │ └─┬ minimatch@0.2.14
        │   ├── lru-cache@2.5.0
        │   └── sigmund@1.0.0
        ├── inherits@2.0.1
        ├── mkdirp@0.3.5
        ├─┬ nopt@2.2.1
        │ └── abbrev@1.0.5
        ├─┬ runforcover@0.0.2
        │ └─┬ bunker@0.1.2
        │   └─┬ burrito@0.2.12
        │     ├── traverse@0.5.2
        │     └── uglify-js@1.1.1
        ├── slide@1.1.5
        └── yamlish@0.0.5
phloe commented 10 years ago

@minorOffense Wow - that's embarrasing.

Damn you, Windows! You case-insensitive clod!

I just pushed fixes to npm - v0.9.2 should be good.

minorOffense commented 10 years ago

Appears to be fixed. Thanks.