Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Running "rcs:css" (rcs) task — Fatal error: Cannot read property 'length' of null #2

Open
surjithctly opened this issue Jul 12, 2017 · 21 comments
Labels

Comments

@surjithctly
Copy link

Hello,

I'm trying to use this plugin, but its not working. Sometimes I get no error, sometime this one

Running "rcs:css" (rcs) task
Fatal error: Cannot read property 'length' of null

Here's the code I'm using

rcs: {
            options: {},
            css: {
                options: {
                    replaceCss: true
                },
                files: [{
                    expand: true,
                    cwd: './',
                    src: '**/*.css',
                    dest: './dist',
                }]
            },
            all: {
                files: [{
                    expand: true,
                    cwd: './',
                    src: ['**/*.js', '**/*.html'],
                    dest: './dist',
                }]
            }
        },

My Project Structure is

- HTML
 -- css
   --- one.css 
   --- two.css 
   --- three.css 
 -- js
   --- one.js 
   --- two.js 
   --- three.js 
- package.json
- Gruntfile.js
- index.html
- about.html
- contact.html

What I'm looking is, to modify all HTML files, CSS files ad JS files and put it in to /dist folder inside it.

PS:I'm new to Grunt & NPM stuff.. So please guide me what's wrong. I have no idea how this is searching for files using cwd and src.

Please help.

~Surjith

@JPeer264
Copy link
Owner

First of thanks for using this plugin.

It is very dangerous to have cwd: './' and src: '**/*', as it will also include all files in node_modules/ or other folders. So you might specify your cwd as follows (in the tasks css and all): cwd: './html'.

Secondly, can you try to run grunt in verbose mode? Just pass --verbose at the end of the command, e.g.: grunt rcs --verbose (This will output more information)

I will update the rcs-core, the base of this plugin, to the newest version in the couple of days, to assure that you won't experience already known bugs.

@surjithctly
Copy link
Author

Hello,

Thanks a lot for the quick response.

My Problem is, The node modules is already installed inside the /HTML folder. So the package & gruntfile is in the HTML folder. Then how can I reference HTML in cwd?

When I run in verbose mode: The error is:

...
...
Files: css/slick.css -> dist/slick.css
Files: css/style.css -> dist/style.css
Options: exclude="", replaceCss, config=undefined
Fatal error: Cannot read property 'length' of null

@JPeer264
Copy link
Owner

Ah, I misread your folderstructure. Then your config might look like this:

rcs: {
  css: {
    options: {
      replaceCss: true
    },
    files: [{
      expand: true,
      cwd: './',
      src: 'css/**/*.css',
      dest: './dist',
    }]
  },
  all: {
    files: [{
      expand: true,
      cwd: './',
      src: ['js/**/*.js', '*.html'],
      dest: './dist',
    }]
  }
},

Hm ok, I have to check where this error comes from. I will update the library as far I got time. Furthermore, are any files empty?

@surjithctly
Copy link
Author

surjithctly commented Jul 12, 2017

Yes. but same error.

After a detailed trial and error, I guess the minified files are making the problem. eg: bootstrap.min.css

Does your new update include this fix?

@JPeer264
Copy link
Owner

JPeer264 commented Jul 12, 2017

Yes you're right. The update will include this fix.

Thanks for figuring this out 👍

@JPeer264
Copy link
Owner

@surjithctly This should be fixed with v0.0.4. Please try it out and check if the bug still exists.

@surjithctly
Copy link
Author

@JPeer264 Thanks for the update. I just tried the new version.

This time no error. All CSS were compiled successfully, But for JS, it just compiled one file and nothing else found. Also, no HTML files complied.

Any Idea?

@JPeer264
Copy link
Owner

Thanks for the update. Are the other files just not compiled but still here (in the new directory)?

@JPeer264 JPeer264 reopened this Jul 17, 2017
@surjithctly
Copy link
Author

No files in the destination folder. All CSS files were there. only One JS file and No HTML.

@JPeer264
Copy link
Owner

Hm that is weird. Can you run grunt rcs --verbose again? Maybe you got a wrong config. Can you also provide your current config?

@surjithctly
Copy link
Author

surjithctly commented Jul 18, 2017

Hi,

Here's the verbose result

Click to open the code
grunt rcs --verbose
Initializing
Command-line options: --verbose

Reading "Gruntfile.js" Gruntfile...OK

Registering Gruntfile tasks.
Reading package.json...OK
Parsing package.json...OK
Initializing config...OK

Registering "grunt-contrib-uglify" local Npm module tasks.
Reading D:\...\Development
\HTML\node_modules\grunt-contrib-uglify\package.json...OK
Parsing D:\...\Development
\HTML\node_modules\grunt-contrib-uglify\package.json...OK
Loading "uglify.js" tasks...OK
+ uglify

Registering "grunt-rcs" local Npm module tasks.
Reading D:\...\Development
\HTML\node_modules\grunt-rcs\package.json...OK
Parsing D:\...\Development
\HTML\node_modules\grunt-rcs\package.json...OK
Loading "rcs.js" tasks...OK
+ rcs
Loading "Gruntfile.js" tasks...OK
+ default

Running tasks: rcs

Running "rcs" task

Running "rcs:css" (rcs) task
Verifying property rcs.css exists in config...OK
Files: css/bootstrap.min.css -> dist/css/bootstrap.min.css
Files: css/bootstrap.rtl.min.css -> dist/css/bootstrap.rtl.min.css
Files: css/flexslider.css -> dist/css/flexslider.css
Files: css/font-awesome.min.css -> dist/css/font-awesome.min.css
Files: css/fullcalendar.min.css -> dist/css/fullcalendar.min.css
Files: css/owl.carousel.min.css -> dist/css/owl.carousel.min.css
Files: css/rtl.css -> dist/css/rtl.css
Files: css/simple-line-icons.css -> dist/css/simple-line-icons.css
Files: css/slick-theme.css -> dist/css/slick-theme.css
Files: css/slick.css -> dist/css/slick.css
Files: css/style.css -> dist/css/style.css
Options: exclude="", replaceCss, config=undefined
Writing dist/css/flexslider.css...OK
File dist/css/flexslider.css created.
Writing dist/css/font-awesome.min.css...OK
File dist/css/font-awesome.min.css created.

Running "rcs:all" (rcs) task
Verifying property rcs.all exists in config...OK
Files: js/admission.js -> dist/js/admission.js
Files: js/bootstrap.min.js -> dist/js/bootstrap.min.js
Files: js/contact.js -> dist/js/contact.js
Files: js/counterup.min.js -> dist/js/counterup.min.js
Files: js/fullcalendar.min.js -> dist/js/fullcalendar.min.js
Files: js/gcal.min.js -> dist/js/gcal.min.js
Files: js/instafeed.min.js -> dist/js/instafeed.min.js
Files: js/jquery.flexslider-min.js -> dist/js/jquery.flexslider-min.js
Files: js/jquery.min.js -> dist/js/jquery.min.js
Files: js/moment.min.js -> dist/js/moment.min.js
Files: js/owl.carousel.min.js -> dist/js/owl.carousel.min.js
Files: js/script.js -> dist/js/script.js
Files: js/slick.min.js -> dist/js/slick.min.js
Files: js/subscribe.js -> dist/js/subscribe.js
Files: js/tether.min.js -> dist/js/tether.min.js
Files: js/tweetie.min.js -> dist/js/tweetie.min.js
Files: js/validate.js -> dist/js/validate.js
Files: js/waypoints.min.js -> dist/js/waypoints.min.js
Files: about.html -> dist/about.html
Files: academics.html -> dist/academics.html
Files: admission-form.html -> dist/admission-form.html
Files: blog-post.html -> dist/blog-post.html
Files: blog.html -> dist/blog.html
Files: campus-life.html -> dist/campus-life.html
Files: contact.html -> dist/contact.html
Files: course-detail.html -> dist/course-detail.html
Files: events.html -> dist/events.html
Files: index-rtl.html -> dist/index-rtl.html
Files: index.html -> dist/index.html
Files: research.html -> dist/research.html
Files: sample-page.html -> dist/sample-page.html
Files: shortcodes.html -> dist/shortcodes.html
Options: exclude="", replaceCss=false, config=undefined
Writing dist/css/bootstrap.min.css...OK
File dist/css/bootstrap.min.css created.
Writing dist/css/bootstrap.rtl.min.css...OK
File dist/css/bootstrap.rtl.min.css created.
Writing dist/css/rtl.css...OK
File dist/css/rtl.css created.
Writing dist/css/slick-theme.css...OK
File dist/css/slick-theme.css created.
Writing dist/css/slick.css...OK
File dist/css/slick.css created.
Writing dist/css/simple-line-icons.css...OK
File dist/css/simple-line-icons.css created.
Writing dist/css/style.css...OK
File dist/css/style.css created.
Writing dist/css/fullcalendar.min.css...OK
File dist/css/fullcalendar.min.css created.
Writing dist/css/owl.carousel.min.css...OK
File dist/css/owl.carousel.min.css created.
Writing dist/js/admission.js...OK
File dist/js/admission.js created.

Done.

My Config is same as you've given earlier.

module.exports = function(grunt) {
    grunt.initConfig({
        pkg: grunt.file.readJSON('package.json'),
        uglify: {
            options: {
                banner: '/*! <%= pkg.name %> <%= grunt.template.today("yyyy-mm-dd") %> */\n'
            },
            build: {
                src: 'js/**/*.js',
                dest: 'build/<%= pkg.name %>.min.js'
            }
        },
        rcs: {
            css: {
                options: {
                    replaceCss: true
                },
                files: [{
                    expand: true,
                    cwd: './',
                    src: 'css/**/*.css',
                    dest: './dist',
                }]
            },
            all: {
                files: [{
                    expand: true,
                    cwd: './',
                    src: ['js/**/*.js', '*.html'],
                    dest: './dist',
                }]
            }
        },
    });
    grunt.loadNpmTasks('grunt-contrib-uglify');
    grunt.loadNpmTasks('grunt-rcs');

    grunt.registerTask('default', ['uglify', 'rcs:css', 'rcs:all']);

};

##Package.json

{
  "name": "Unsico",
  "version": "0.1.0",
  "devDependencies": {
    "grunt": "^1.0.1",
    "grunt-contrib-jshint": "~0.10.0",
    "grunt-contrib-nodeunit": "~0.4.1",
    "grunt-contrib-uglify": "~0.5.0"
  },
  "dependencies": {
    "grunt-rcs": "0.0.4"
  }
}

Also, when I open node_modules folder, I see a lot of folders added when installing this plugin.
Eg: acorn, acorn-jsx, .. async, chalk, has-ansi, is-callable, lodash etc.. (Around 43 folders. Is that normal? )

@JPeer264
Copy link
Owner

JPeer264 commented Jul 18, 2017

Ok your config seems right, there must be another problem, I just saw, that I forgot to verbose log the error if one occurs. Can you update the library to 0.1.0. I added more verbose logs and there might be another bugfix. I am sorry for all those circumstances.

Yes those folders are normal since npm v3+. Since rcs-core (which is the core of grunt-rcs) needs some modules, whereover those modules also needs some. But the hierarchy in node_modules is since npm v3+ flattened, so thats why you see so many folders.

EDIT:
The config seems ok.

@surjithctly
Copy link
Author

Still no error on verbose. Its showing more details though.

I tried to reduce my JS & HTML files one by one to get a reduced test case and I found that when removing certain JS files and HTML files, It works. Otherwise, it stops and says "Done".

Files with problems are attached here test-case.zip

Please check whether you have the issue when using these files.

Thank you.

~Surjith

@JPeer264
Copy link
Owner

Alright, it is quite weird, but the files worked in my tests. Can you comment your vebose logs you got earlier?

@surjithctly
Copy link
Author

The log is basically outputting the contents of each file. My Command Prompt (I'm on Windows 8.1) automatically crops the older logs since it's too long. So here's the result I can see after it done.

I really need this to be working. Thanks a lot for your help 👍

ms-transform:translate3d(0,0,0)}.rsr .rsi{min-height:1px;float:left;-webkit-back
face-visibility:hidden;-webkit-touch-callout:none}.rsr .rsi img{display:block;wi
dth:100%}.rsr .rsa.he,.rsr .rsf.he{display:none}.txr .rsr,.rsr.rsl{display:block
}.rsr .rsc,.rsr .rsf .rsh,.rsr .rsf .rsp{cursor:pointer;cursor:hand;-webkit-user
-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;
user-select:none}.rsr.rsd{opacity:0;display:block}.rsr.rsv{opacity:0}.rsr.rsm .r
si{visibility:hidden}.rsr.rsg .rsi{-webkit-user-select:none;-moz-user-select:non
e;-ms-user-select:none;user-select:none}.rsr.rsy{cursor:move;cursor:grab}.rsr.rs
b{direction:rtl}.rsr.rsb .rsi{float:right}.rsr .rsw{animation-duration:1s;animat
ion-fill-mode:both}.rsr .rsx{z-index:0}.rsr .rsk{z-index:1}.rsr .rs_{animation-n
ame:fadeOut}@keyframes fadeOut{0%{opacity:1}100%{opacity:0}}.rsj{transition:heig
ht .5s ease-in-out}.rsr .rsi .rsq{opacity:0;transition:opacity .4s ease}.rsr .rs
i img.rsq{transform-style:preserve-3d}.rsr .rsz{position:relative;height:100%;ba
ckground:#000}.rsr .roe{position:absolute;height:80px;width:80px;left:50%;top:50
%;margin-left:-40px;margin-top:-40px;background:url(owl.video.play.png) no-repea
t;cursor:pointer;z-index:1;-webkit-backface-visibility:hidden;transition:transfo
rm .1s ease}.rsr .roe:hover{-ms-transform:scale(1.3,1.3);transform:scale(1.3,1.3
)}.rsr .rot .roe,.rsr .rot .ron{display:none}.rsr .ron{opacity:0;height:100%;bac
kground-position:center center;background-repeat:no-repeat;background-size:conta
in;transition:opacity .4s ease}.rsr .ror{position:relative;z-index:1;height:100%
;width:100%}Into following directory: dist/css/owl.carousel.min.cssWriting dist/
css/owl.carousel.min.css...OK
File dist/css/owl.carousel.min.css created.
Start writing /*

Script  : Admission Form
Version : 1.0
Author  : Surjith S M 

Copyright c All rights Reserved
Surjith S M / @surjithctly

/

$(function() {

    "use strict";


    / ================================================
   jQuery Validate - Reset Defaults
   ================================================ /

    $.validator.setDefaults({
        ignore: [],
        highlight: function(element) {
            $(element).closest('.cj').addClass('hh');
            $(element).addClass('hs');
        },
        unhighlight: function(element) {
            $(element).closest('.cj').removeClass('hh');
            $(element).removeClass('hs');
        },
        errorElement: 'div',
        errorClass: 'hi',
        errorPlacement: function(error, element) {
            if (element.parent('.hd').length || element.parent('label').length)
{
                error.insertAfter(element.parent());
            } else {
                error.insertAfter(element);
            }
        }
    });


    /
    VALIDATE
    -------- /

    $("#admissionform").submit(function(e) {
        e.preventDefault();
    }).validate({
        rules: {
            name: "required",
            email: {
                required: true,
                email: true
            },
            subject: "required"
        },
        messages: {
            first_name: "Your first name please",
            last_name: "Your last name please",
            email: "We need your email nk_",
            phone: "Please enter your phone number",
            message: "Please enter your message"
        },
        submitHandler: function(form) {

            $("#js-admission-btn").attr("he", true);

            /
            CHECK PAGE FOR REDIRECT (Thank you page)
            ---------------------------------------- /

            var redirect = $('#admissionform').data('redirect');
            var noredirect = false;
            if (redirect == 'none' || redirect == "" || redirect == null) {
                noredirect = true;
            }

            $("#js-admission-result").html('<p class="help-block">Please wait...
</p>');

            /
            FETCH SUCCESS / ERROR MSG FROM HTML DATA-ATTR
            --------------------------------------------- /

            var success_msg = $('#js-admission-result').data('success-msg');
            var error_msg = $('#js-admission-result').data('error-msg');

            var dataString = $(form).serialize();

            /
             AJAX POST
             --------- */

            $.ajax({
                type: "POST",
                data: dataString,
                url: "php/admission.php",
                cache: false,
                success: function(d) {
                    $(".cj").removeClass("ha");
                    if (d == 'success') {
                        if (noredirect) {
                            $('#js-admission-result').fadeIn('slow').html('<div
class="alert gu mt-3">' + success_msg + '</div>').delay(3000).fadeOut('slow');
                        } else {
                            window.location.href = redirect;
                        }
                    } else {
                        $('#js-admission-result').fadeIn('slow').html('<div clas
s="alert gl mt-3">' + error_msg + '</div>').delay(3000).fadeOut('slow');
                        if (window.console) {
                            console.log('PHP Error: ' + d);
                        }
                    }
                    $("#js-admission-btn").attr("he", false);
                },
                error: function(d) {
                    $('#js-admission-result').fadeIn('slow').html('<div class="a
lert gl mt-3"> Cannot access Server</div>').delay(3000).fadeOut('slow');
                    $("#js-admission-btn").attr("he", false);
                    if (window.console) {
                        console.log('JS Error: Please make sure you are running
on a PHP Server');
                    }
                }
            });
            return false;

        }
    });

})
Into following directory: dist/js/admission.jsWriting dist/js/admission.js...OK
File dist/js/admission.js created.
Start writing /*

Script  : Contact Form
Version : 1.0
Author  : Surjith S M 

Copyright c All rights Reserved
Surjith S M / @surjithctly

/

$(function() {

    "use strict";


    / ================================================
   jQuery Validate - Reset Defaults
   ================================================ /

    $.validator.setDefaults({
        ignore: [],
        highlight: function(element) {
            $(element).closest('.cj').addClass('hh');
            $(element).addClass('hs');
        },
        unhighlight: function(element) {
            $(element).closest('.cj').removeClass('hh');
            $(element).removeClass('hs');
        },
        errorElement: 'div',
        errorClass: 'hi',
        errorPlacement: function(error, element) {
            if (element.parent('.hd').length || element.parent('label').length)
{
                error.insertAfter(element.parent());
            } else {
                error.insertAfter(element);
            }
        }
    });

    /
    VALIDATE
    -------- /

    $("#phpcontactform").submit(function(e) {
        e.preventDefault();
    }).validate({
        rules: {
            name: "required",
            email: {
                required: true,
                email: true
            },
            phone: "required",
            message: "required",
        },
        messages: {
            name: "Your first name please",
            email: "We need your email nk_",
            phone: "Please enter your phone number",
            message: "Please enter your message",
        },
        submitHandler: function(form) {

            $("#js-contact-btn").attr("he", true);

            /
            CHECK PAGE FOR REDIRECT (Thank you page)
            ---------------------------------------- /

            var redirect = $('#phpcontactform').data('redirect');
            var noredirect = false;
            if (redirect == 'none' || redirect == "" || redirect == null) {
                noredirect = true;
            }

            $("#js-contact-result").html('<p class="help-block">Please wait...</
p>');

            /
            FETCH SUCCESS / ERROR MSG FROM HTML DATA-ATTR
            --------------------------------------------- /

            var success_msg = $('#js-contact-result').data('success-msg');
            var error_msg = $('#js-contact-result').data('error-msg');

            var dataString = $(form).serialize();

            /
             AJAX POST
             --------- */

            $.ajax({
                type: "POST",
                data: dataString,
                url: "php/contact.php",
                cache: false,
                success: function(d) {
                    $(".cj").removeClass("ha");
                    if (d == 'success') {
                        if (noredirect) {
                            $('#js-contact-result').fadeIn('slow').html('<div cl
ass="alert gu mt-3">' + success_msg + '</div>').delay(3000).fadeOut('slow');
                        } else {
                            window.location.href = redirect;
                        }
                    } else {
                        $('#js-contact-result').fadeIn('slow').html('<div class=
"alert gl mt-3">' + error_msg + '</div>').delay(3000).fadeOut('slow');
                        if (window.console) {
                            console.log('PHP Error: ' + d);
                        }
                    }
                    $("#js-contact-btn").attr("he", false);
                },
                error: function(d) {
                    $('#js-contact-result').fadeIn('slow').html('<div class="ale
rt gl mt-3"> Cannot access Server</div>').delay(3000).fadeOut('slow');
                    $("#js-contact-btn").attr("he", false);
                    if (window.console) {
                        console.log('JS Error: Please make sure you are running
on a PHP Server');
                    }
                }
            });
            return false;

        }
    });

})
Into following directory: dist/js/contact.jsWriting dist/js/contact.js...OK
File dist/js/contact.js created.

Done.

@JPeer264
Copy link
Owner

Alright, thanks for this update. I am currently working on the solution, but it is hard to find. Unfortunately I can't work over the weekend. But I also want to get this fixed asap. Please be patient.

@surjithctly
Copy link
Author

Sure. I can also arrange a Teamweaver session on your preferred time, so you can actually see what's happening.

@JPeer264
Copy link
Owner

JPeer264 commented Jul 26, 2017

Ok one last try. I had some time to debug. But I couldn't find any issue in the library. I added a new option: replaceJs (in v0.2.0), which was already implemented in rcs-core for some time. So for all your js files you should have now an own config:

js: {
  options: {
    replaceJs: true
  },
  files: [{
    expand: true,
    cwd: './',
    src: 'js/**/*.js',
    dest: './dist',
  }]
},

Please try it again one for time in verbose mode, and show me the logs. I accidentally output the file itself, which should be resolved now. If I still can't find a solution we can do a teamviewer session if you want.

@surjithctly
Copy link
Author

Hello,

Much better now.. All CSS files and JS files are now complied. But out of 14 HTML, only 11 were compiled. others skipped but no errors. See log below.

Also I just ran one comiled HTML in browser, and got this error for jquery

Uncaught TypeError: Cannot read property 'special' of undefined
    at String.<anonymous> (jquery.min.js:5)

Also when I check the HTML code. some classes are not minified. So it makes the layout broken.

Here's the log.

Verifying property rcs.css exists in config...OK
Files: css/bootstrap.min.css -> dist/css/bootstrap.min.css
Files: css/bootstrap.rtl.min.css -> dist/css/bootstrap.rtl.min.css
Files: css/flexslider.css -> dist/css/flexslider.css
Files: css/font-awesome.min.css -> dist/css/font-awesome.min.css
Files: css/fullcalendar.min.css -> dist/css/fullcalendar.min.css
Files: css/owl.carousel.min.css -> dist/css/owl.carousel.min.css
Files: css/rtl.css -> dist/css/rtl.css
Files: css/simple-line-icons.css -> dist/css/simple-line-icons.css
Files: css/slick-theme.css -> dist/css/slick-theme.css
Files: css/slick.css -> dist/css/slick.css
Files: css/style.css -> dist/css/style.css
Options: exclude="", replaceCss, config=undefined
File found: css/bootstrap.min.css
File found: css/bootstrap.rtl.min.css
File found: css/flexslider.css
File found: css/font-awesome.min.css
File found: css/fullcalendar.min.css
File found: css/owl.carousel.min.css
File found: css/rtl.css
File found: css/simple-line-icons.css
File found: css/slick-theme.css
File found: css/slick.css
File found: css/style.css
Start compiling css/bootstrap.rtl.min.css
Successfully compiled css/bootstrap.rtl.min.css
Start write into following directory: dist/css/bootstrap.rtl.min.css
Writing dist/css/bootstrap.rtl.min.css...OK
File dist/css/bootstrap.rtl.min.css created.
Start compiling css/font-awesome.min.css
Successfully compiled css/font-awesome.min.css
Start write into following directory: dist/css/font-awesome.min.css
Writing dist/css/font-awesome.min.css...OK
File dist/css/font-awesome.min.css created.
Start compiling css/bootstrap.min.css
Successfully compiled css/bootstrap.min.css
Start write into following directory: dist/css/bootstrap.min.css
Writing dist/css/bootstrap.min.css...OK
File dist/css/bootstrap.min.css created.
Start compiling css/flexslider.css
Successfully compiled css/flexslider.css
Start write into following directory: dist/css/flexslider.css
Writing dist/css/flexslider.css...OK
File dist/css/flexslider.css created.
Start compiling css/fullcalendar.min.css
Successfully compiled css/fullcalendar.min.css
Start write into following directory: dist/css/fullcalendar.min.css
Writing dist/css/fullcalendar.min.css...OK
File dist/css/fullcalendar.min.css created.
Start compiling css/rtl.css
Successfully compiled css/rtl.css
Start write into following directory: dist/css/rtl.css
Writing dist/css/rtl.css...OK
File dist/css/rtl.css created.
Start compiling css/simple-line-icons.css
Successfully compiled css/simple-line-icons.css
Start write into following directory: dist/css/simple-line-icons.css
Writing dist/css/simple-line-icons.css...OK
File dist/css/simple-line-icons.css created.
Start compiling css/slick-theme.css
Successfully compiled css/slick-theme.css
Start write into following directory: dist/css/slick-theme.css
Writing dist/css/slick-theme.css...OK
File dist/css/slick-theme.css created.

Running "rcs:js" (rcs) task
Verifying property rcs.js exists in config...OK
Files: js/admission.js -> dist/js/admission.js
Files: js/bootstrap.min.js -> dist/js/bootstrap.min.js
Files: js/contact.js -> dist/js/contact.js
Files: js/counterup.min.js -> dist/js/counterup.min.js
Files: js/fullcalendar.min.js -> dist/js/fullcalendar.min.js
Files: js/gcal.min.js -> dist/js/gcal.min.js
Files: js/instafeed.min.js -> dist/js/instafeed.min.js
Files: js/jquery.flexslider-min.js -> dist/js/jquery.flexslider-min.js
Files: js/jquery.min.js -> dist/js/jquery.min.js
Files: js/moment.min.js -> dist/js/moment.min.js
Files: js/owl.carousel.min.js -> dist/js/owl.carousel.min.js
Files: js/script.js -> dist/js/script.js
Files: js/slick.min.js -> dist/js/slick.min.js
Files: js/subscribe.js -> dist/js/subscribe.js
Files: js/tether.min.js -> dist/js/tether.min.js
Files: js/tweetie.min.js -> dist/js/tweetie.min.js
Files: js/validate.js -> dist/js/validate.js
Files: js/waypoints.min.js -> dist/js/waypoints.min.js
Options: exclude="", replaceCss=false, config=undefined, replaceJs
File found: js/admission.js
File found: js/bootstrap.min.js
File found: js/contact.js
File found: js/counterup.min.js
File found: js/fullcalendar.min.js
File found: js/gcal.min.js
File found: js/instafeed.min.js
File found: js/jquery.flexslider-min.js
File found: js/jquery.min.js
File found: js/moment.min.js
File found: js/owl.carousel.min.js
File found: js/script.js
File found: js/slick.min.js
File found: js/subscribe.js
File found: js/tether.min.js
File found: js/tweetie.min.js
File found: js/validate.js
File found: js/waypoints.min.js
Start compiling css/owl.carousel.min.css
Successfully compiled css/owl.carousel.min.css
Start write into following directory: dist/css/owl.carousel.min.css
Writing dist/css/owl.carousel.min.css...OK
File dist/css/owl.carousel.min.css created.
Start compiling css/slick.css
Successfully compiled css/slick.css
Start write into following directory: dist/css/slick.css
Writing dist/css/slick.css...OK
File dist/css/slick.css created.
Start compiling css/style.css
Successfully compiled css/style.css
Start write into following directory: dist/css/style.css
Writing dist/css/style.css...OK
File dist/css/style.css created.
Start compiling js/admission.js
Successfully compiled js/admission.js
Start write into following directory: dist/js/admission.js
Writing dist/js/admission.js...OK
File dist/js/admission.js created.

Running "rcs:all" (rcs) task
Verifying property rcs.all exists in config...OK
Files: about.html -> dist/about.html
Files: academics.html -> dist/academics.html
Files: admission-form.html -> dist/admission-form.html
Files: blog-post.html -> dist/blog-post.html
Files: blog.html -> dist/blog.html
Files: campus-life.html -> dist/campus-life.html
Files: contact.html -> dist/contact.html
Files: course-detail.html -> dist/course-detail.html
Files: events.html -> dist/events.html
Files: index-rtl.html -> dist/index-rtl.html
Files: index.html -> dist/index.html
Files: research.html -> dist/research.html
Files: sample-page.html -> dist/sample-page.html
Files: shortcodes.html -> dist/shortcodes.html
Options: exclude="", replaceCss=false, config=undefined
File found: about.html
File found: academics.html
File found: admission-form.html
File found: blog-post.html
File found: blog.html
File found: campus-life.html
File found: contact.html
File found: course-detail.html
File found: events.html
File found: index-rtl.html
File found: index.html
File found: research.html
File found: sample-page.html
File found: shortcodes.html
Start compiling js/contact.js
Successfully compiled js/contact.js
Start write into following directory: dist/js/contact.js
Writing dist/js/contact.js...OK
File dist/js/contact.js created.
Start compiling js/gcal.min.js
Successfully compiled js/gcal.min.js
Start write into following directory: dist/js/gcal.min.js
Writing dist/js/gcal.min.js...OK
File dist/js/gcal.min.js created.
Start compiling js/fullcalendar.min.js
Successfully compiled js/fullcalendar.min.js
Start write into following directory: dist/js/fullcalendar.min.js
Writing dist/js/fullcalendar.min.js...OK
File dist/js/fullcalendar.min.js created.
Start compiling js/bootstrap.min.js
Successfully compiled js/bootstrap.min.js
Start write into following directory: dist/js/bootstrap.min.js
Writing dist/js/bootstrap.min.js...OK
File dist/js/bootstrap.min.js created.
Start compiling js/instafeed.min.js
Successfully compiled js/instafeed.min.js
Start write into following directory: dist/js/instafeed.min.js
Writing dist/js/instafeed.min.js...OK
File dist/js/instafeed.min.js created.
Start compiling js/counterup.min.js
Successfully compiled js/counterup.min.js
Start write into following directory: dist/js/counterup.min.js
Writing dist/js/counterup.min.js...OK
File dist/js/counterup.min.js created.
Start compiling js/jquery.flexslider-min.js
Successfully compiled js/jquery.flexslider-min.js
Start write into following directory: dist/js/jquery.flexslider-min.js
Writing dist/js/jquery.flexslider-min.js...OK
File dist/js/jquery.flexslider-min.js created.
Start compiling js/moment.min.js
Successfully compiled js/moment.min.js
Start write into following directory: dist/js/moment.min.js
Writing dist/js/moment.min.js...OK
File dist/js/moment.min.js created.
Start compiling js/owl.carousel.min.js
Successfully compiled js/owl.carousel.min.js
Start write into following directory: dist/js/owl.carousel.min.js
Writing dist/js/owl.carousel.min.js...OK
File dist/js/owl.carousel.min.js created.
Start compiling js/slick.min.js
Successfully compiled js/slick.min.js
Start write into following directory: dist/js/slick.min.js
Writing dist/js/slick.min.js...OK
File dist/js/slick.min.js created.
Start compiling js/subscribe.js
Successfully compiled js/subscribe.js
Start write into following directory: dist/js/subscribe.js
Writing dist/js/subscribe.js...OK
File dist/js/subscribe.js created.
Start compiling js/tether.min.js
Successfully compiled js/tether.min.js
Start write into following directory: dist/js/tether.min.js
Writing dist/js/tether.min.js...OK
File dist/js/tether.min.js created.
Start compiling js/tweetie.min.js
Successfully compiled js/tweetie.min.js
Start write into following directory: dist/js/tweetie.min.js
Writing dist/js/tweetie.min.js...OK
File dist/js/tweetie.min.js created.
Start compiling js/script.js
Successfully compiled js/script.js
Start write into following directory: dist/js/script.js
Writing dist/js/script.js...OK
File dist/js/script.js created.
Start compiling js/waypoints.min.js
Successfully compiled js/waypoints.min.js
Start write into following directory: dist/js/waypoints.min.js
Writing dist/js/waypoints.min.js...OK
File dist/js/waypoints.min.js created.
Start compiling js/validate.js
Successfully compiled js/validate.js
Start write into following directory: dist/js/validate.js
Writing dist/js/validate.js...OK
File dist/js/validate.js created.
Start compiling js/jquery.min.js
Successfully compiled js/jquery.min.js
Start write into following directory: dist/js/jquery.min.js
Writing dist/js/jquery.min.js...OK
File dist/js/jquery.min.js created.
Start compiling admission-form.html
Successfully compiled admission-form.html
Start write into following directory: dist/admission-form.html
Writing dist/admission-form.html...OK
File dist/admission-form.html created.
Start compiling about.html
Successfully compiled about.html
Start write into following directory: dist/about.html
Writing dist/about.html...OK
File dist/about.html created.
Start compiling blog.html
Successfully compiled blog.html
Start write into following directory: dist/blog.html
Writing dist/blog.html...OK
File dist/blog.html created.
Start compiling blog-post.html
Successfully compiled blog-post.html
Start write into following directory: dist/blog-post.html
Writing dist/blog-post.html...OK
File dist/blog-post.html created.
Start compiling contact.html
Successfully compiled contact.html
Start write into following directory: dist/contact.html
Writing dist/contact.html...OK
File dist/contact.html created.
Start compiling events.html
Successfully compiled events.html
Start write into following directory: dist/events.html
Writing dist/events.html...OK
File dist/events.html created.
Start compiling course-detail.html
Successfully compiled course-detail.html
Start write into following directory: dist/course-detail.html
Writing dist/course-detail.html...OK
File dist/course-detail.html created.
Start compiling index-rtl.html
Successfully compiled index-rtl.html
Start write into following directory: dist/index-rtl.html
Writing dist/index-rtl.html...OK
File dist/index-rtl.html created.
Start compiling academics.html
Successfully compiled academics.html
Start write into following directory: dist/academics.html
Writing dist/academics.html...OK
File dist/academics.html created.
Start compiling campus-life.html
Successfully compiled campus-life.html
Start write into following directory: dist/campus-life.html
Writing dist/campus-life.html...OK
File dist/campus-life.html created.
Start compiling sample-page.html
Successfully compiled sample-page.html
Start write into following directory: dist/sample-page.html
Writing dist/sample-page.html...OK
File dist/sample-page.html created.

Done.

@JPeer264
Copy link
Owner

JPeer264 commented Aug 1, 2017

Much better now.. All CSS files and JS files are now complied. But out of 14 HTML, only 11 were compiled.

Alright, the logs look much better now. It seems it cannot read those 3 HTML files. Are there some special characters which are not encoded in 'utf8'?

Also I just ran one comiled HTML in browser, and got this error for jquery

Ok, the error what you got is already known. Currently I have no detection, wheter this string is important to the code or just a selector (I want to add a machine learning as soon as I have time). Somewhere in your CSS files, is a selector, which breaks your code (you have find it and exclude it in your config). To check which string this is you have to debug your code and see which string causes this error. Unfortunately this happens, if you use third-party libraries, where selectors are so basically named that those names could occur in javascript file. E.g. selectors which are often used in js files as well .click, .event, .hover, ... . This is actually a problem, which is very hard to solve, but I hope I can solve this via machine learning soon.

Also when I check the HTML code.

This seems like a bug in rcs-core. I will check if I can find it.

@surjithctly
Copy link
Author

Thank you.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants