question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

issue with symbolic link

See original GitHub issue

I am excited about this plugin as it allow me to specify the config src, and hence migrating from load-grunt-config plugin. so, my idea is to keep all the common grunt task conf in a shared folder and use whatever needed. But, met with an issue. I keep the conf in a folder and make a symbolic link to each project. But, that throws a long recursive error (I removed most of it). It works fine, if I copy these conf files into the project. so something wrong if it follows a symbolic link. The behavior and error is same if src is pointing to a folder without any file in it. Using latest version on a mac.

thanks again for this project. Also, your effort on the excellent documentation. bsr.

 grunt watch
Loading "Gruntfile.js" tasks...ERROR
>> Error: Cannot find module 'jshint-stylish'

Running "watch" task
Waiting...Verifying property watch exists in config...ERROR
>> Unable to process task.
Warning: Required config property "watch" missing.

Running "watch" task
Waiting...Verifying property watch exists in config...ERROR
>> Unable to process task.
Warning: Required config property "watch" missing.

Running "watch" task
Waiting...Verifying property watch exists in config...ERROR
>> Unable to process task.
Warning: Required config property "watch" missing.

Running "watch" task
Waiting...Verifying property watch exists in config...ERROR
>> Unable to process task.
Warning: Required config property "watch" missing.

Running "watch" task
Waiting...Verifying property watch exists in config...ERROR
>> Unable to process task.
Warning: Required config property "watch" missing.

......

Running "watch" task
Waiting...Verifying property watch exists in config...ERROR
>> Unable to process task.
Warning: Required config property "watch" missing.

(node) warning: Recursive process.nextTick detected. This will break in the next version of node. Please use setImmediate for recursive deferral.
(node) warning: Recursive process.nextTick detected. This will break in the next version of node. Please use setImmediate for recursive deferral.
(node) warning: Recursive process.nextTick detected. This will break in the next version of node. Please use setImmediate for recursive deferral.

.....

(node) warning: Recursive process.nextTick detected. This will break in the next version of node. Please use setImmediate for recursive deferral.
(node) warning: Recursive process.nextTick detected. This will break in the next version of node. Please use setImmediate for recursive deferral.

util.js:35
  var str = String(f).replace(formatRegExp, function(x) {
                      ^
RangeError: Maximum call stack size exceeded

Issue Analytics

  • State:closed
  • Created 10 years ago
  • Comments:6 (3 by maintainers)

github_iconTop GitHub Comments

1reaction
creynderscommented, Mar 9, 2014

The error is apparently caused by the requiring of jshint-stylish in the jshint.js config file. It can’t find the jshint-stylish module since it’s in a directory outside the project. Easiest solution would be to pass the reporter to the jshint config file:

//Gruntfile.js
var configs = require('load-grunt-configs')(grunt, { 
    'jshint-reporter': require('jshint-stylish')
});

//config/jshint.js
module.exports = function(grunt, opts){
    return {
        options : {
            jshintrc : '.jshintrc',
            reporter : opts[ 'jshint-reporter']
        }
    }
};
0reactions
luca-borrionecommented, Nov 7, 2016

@creynders: Thank you for pointing this out! Your suggestion helped me developing my own solution, as I have been unable to make yours working for me …

Below is how I solved the above mentioned error “Local Npm module ‘jshint-stylish’ not found. Is it installed?”

// gruntfile.js
grunt.initConfig({
    pkg: grunt.file.readJSON('package.json'),
    config: grunt.file.readJSON('grunt-config.json'),
    jshint_reporter: require('jshint-stylish')
});

// grunt-config.json
{
    "jsHintFiles" : [
        "**/modules/*.js"
    ]
}

// jshint.js
module.exports = function(grunt) {
    "use strict";

    grunt.config.merge({"jshint": {
        "default": {
            options: {
                reporter: "<%= jshint_reporter %>"
            },
            src: ["<%= config.jsHintFiles %>"]
        }
    }});
};

hope this of any help 😃

Read more comments on GitHub >

github_iconTop Results From Across the Web

The trouble with symbolic links - LWN.net
The problem starts when higher privileged accounts use user data to do tasks with higher privileges. I.e. when an admin is archiving (or ......
Read more >
Symbolic Links (Symlinks) Produce Errors - Oracle Help Center
Symbolic link targets that work on one client might be broken on another due to differences in file system layout or because clients...
Read more >
win 10 copy folder with symlinks - Super User
While I'm having trouble copying the folder (the progress simply freezes until explorer is killed/restarted), I found that there are symlinks ( ...
Read more >
Understanding and Exploiting Symbolic links in Windows
Symbolic link can be abused to cause elevation of privilege or arbitrary write/delete. In this article we are going to understand symlink ......
Read more >
The trouble with symbolic links | Hacker News
Symlinks introduce security problems but there are other sources as well. If you have a system where processes with different trust profiles share...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found