ember-cli: Can't build for environment production

When I was using ember-cli@0.1.2 everything was working fine, but now, using 0.1.7 I can’t build my application for production environment:

$ ember build --environment=production
version: 0.1.7
Building.(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.
# [XXX times same warning]
RangeError: Maximum call stack size exceeded
$

When using ember serve everything works. package.json:

{
  "name": "myAppName",
  "version": "0.0.0",
  "private": true,
  "directories": {
    "doc": "doc",
    "test": "tests"
  },
  "scripts": {
    "start": "ember server",
    "build": "ember build",
    "test": "ember test"
  },
  "repository": "https://github.com/ember-cli/ember-cli",
  "engines": {
    "node": ">= 0.10.0"
  },
  "author": "",
  "license": "MIT",
  "devDependencies": {
    "broccoli-asset-rev": "^2.0.0",
    "broccoli-ember-hbs-template-compiler": "^1.6.1",
    "broccoli-static-compiler": "^0.2.1",
    "ember-cli": "0.1.7",
    "ember-cli-6to5": "0.2.1",
    "ember-cli-coffeescript": "^0.6.0",
    "ember-cli-content-security-policy": "0.3.0",
    "ember-cli-datepicker": "^1.3.0",
    "ember-cli-dependency-checker": "0.0.7",
    "ember-cli-htmlbars": "^0.5.4",
    "ember-cli-ic-ajax": "0.1.1",
    "ember-cli-inject-live-reload": "^1.3.0",
    "ember-cli-qunit": "0.1.2",
    "ember-cli-sass": "3.0.3",
    "ember-data": "1.0.0-beta.14",
    "ember-export-application-global": "^1.0.0",
    "ember-validations": "^2.0.0-alpha.1",
    "express": "^4.8.5",
    "glob": "^4.0.5"
  },
  "dependencies": {
    "ember-cli-lightbox": "^0.1.9",
    "ember-droplet": "^0.9.1"
  }
}

bower.json:

{
  "name": "myAppName",
  "dependencies": {
    "handlebars": "2.0.0",
    "jquery": "^1.11.1",
    "ember": "1.9.1",
    "ember-data": "~1.0.0-beta.14.1",
    "ember-resolver": "~0.1.11",
    "loader.js": "ember-cli/loader.js#1.0.1",
    "ember-cli-shims": "ember-cli/ember-cli-shims#0.0.3",
    "ember-cli-test-loader": "rwjblue/ember-cli-test-loader#0.0.4",
    "ember-load-initializers": "ember-cli/ember-load-initializers#0.0.2",
    "ember-qunit": "0.1.8",
    "ember-qunit-notifications": "0.0.4",
    "qunit": "~1.15.0",
    "ember-forms": "~0.4.0",
    "jquery-cookie": "~1.4.1",
    "ember-droplet": "~0.8.7",
    "timeago": "~1.4.1",
    "jquery-autosize": "~1.18.17",
    "maphilight": "~1.3.0",
    "lightbox": "2.7.1",
    "fancybox": "~2.1.5",
    "bootstrap-sass-official": "~3.3.1",
    "font-awesome": "~4.2.0",
    "bootstrap-social": "~4.8.0",
    "jquery-ui": "~1.11.2",
    "pikaday": "~1.2.0",
    "moment": "~2.8.4"
  },
  "resolutions": {
    "handlebars": "2.0.0",
    "ember": "1.9.1"
  }
}

Brocfile.js(I tried with clean Brocfile.js and same thing happens):

/* global require, module */

var EmberApp = require('ember-cli/lib/broccoli/ember-app');
var pickFiles = require('broccoli-static-compiler');

var app = new EmberApp();
app.import('bower_components/ember-data/ember-data.js.map', { destDir: 'assets' }); 

app.import('bower_components/ember-forms/dist/globals/main.js');

var bootstrapFonts = pickFiles('bower_components/bootstrap-sass-official/assets/fonts/bootstrap', {
  srcDir: '/',
  destDir: '/fonts/bootstrap'
});

app.import('bower_components/bootstrap-sass-official/assets/javascripts/bootstrap/modal.js');

var fontAwesomeFonts = pickFiles('bower_components/font-awesome/fonts', {
  srcDir: '/',
  destDir: '/fonts'
});

app.import('bower_components/jquery-cookie/jquery.cookie.js');
app.import('bower_components/ember-droplet/dist/ember-droplet.min.js');

app.import('bower_components/timeago/jquery.timeago.js')
app.import('bower_components/timeago/locales/jquery.timeago.pl.js')

app.import('bower_components/jquery-autosize/jquery.autosize.min.js')

app.import('bower_components/maphilight/jquery.maphilight.min.js')

app.import('bower_components/fancybox/source/jquery.fancybox.css');
app.import('bower_components/fancybox/source/jquery.fancybox.pack.js')

var fancyFiles = pickFiles('bower_components/fancybox', {
    srcDir: '/source',
    files: ['**/*.png', '**/*.gif'],
    destDir: '/assets'
});

app.import('bower_components/jquery-ui/ui/core.js');
app.import('bower_components/jquery-ui/ui/widget.js');
app.import('bower_components/jquery-ui/ui/mouse.js');
app.import('bower_components/jquery-ui/ui/draggable.js');
app.import('bower_components/jquery-ui/ui/droppable.js');
app.import('bower_components/jquery-ui/ui/sortable.js');

app.import('vendor/microfiche.js');
app.import('vendor/pikaday-time.js');

var index = app.legacyFilesToAppend.indexOf('bower_components/handlebars/handlebars.runtime.js');
if(index) {
  app.legacyFilesToAppend[index] = 'bower_components/handlebars/handlebars.js';
}

// Use `app.import` to add additional libraries to the generated
// output files.
//
// If you need to use different assets in different
// environments, specify an object as the first parameter. That
// object's keys should be the environment name and the values
// should be the asset to use in that environment.
//
// If the library that you are including contains AMD or ES6
// modules that you would like to import into your application
// please specify an object with the list of modules as keys
// along with the exports of each module as its value.

module.exports = app.toTree([bootstrapFonts, fontAwesomeFonts, fancyFiles]);

About this issue

  • Original URL
  • State: closed
  • Created 9 years ago
  • Comments: 21 (16 by maintainers)

Most upvoted comments

@anpenava You will have generated source maps. I believe that unless you open Chrome Dev Tools you shouldn’t notice any performance regressions.