2015-06-30 5 views
3

После обновления до Ember.js 1.13.2 от 1.10.beta4 мы больше не можем предварительно скомпилировать шаблоны Handlebars с предупреждениями о выпуске на производстве. Обратите внимание на ошибку и трассировку для рейк-активов: прекомпилируйте ниже. Как ни странно, мы не получаем никаких ошибок на Mac в производственной среде, но на нашем сервере сборки Linux он не работает (0)Rails не прекомпилирует с ember-template-компилятором

При исследовании выясняется, что ember-template-compiler.js генерирует предупреждения об устаревании во время прекомпиляции которые смешиваются с компилируемым выходом. В этом JS-файле есть комментарий: «Инструменты сборки Ember удаляют любые вызовы Ember.deprecate() при создании сборки». Но я не знаю, как это работает с цепочкой инструментов Sprockets. Я не могу переопределить Ember.deprecate, так как файл application.js не включается во время прекомпиляции. Если кто-то может сказать, как вызовы Ember.deprecate удаляются в Rails-активах, прекомпилировать их, это поможет отладить это дальше.

Нам нужно избавиться от стираний, но это может занять некоторое время! Спасибо за помощь в этом вопросе.

Информация о версии (мы не используем уголек-АОН):

  • Rails 4.2.0
  • Эмбер рельсах камень 0.16.1
  • цирюльник камень 0.9.0
  • ember- шаблон-compiler.js 1.13.2

сообщение об ошибке и след:

RAILS_ENV=production bundle exec rake assets:precompile 
... 
rake aborted! 
JSON::ParserError: 757: unexpected token at 'DEPRECATION: The `bind-attr` helper (L1:C7) is deprecated in favor of HTMLBars-style bound attributes. 
{anonymous}(/tmp/execjs20150630-36511-b2stmyjs:15523:15) 
Walker.visit (/tmp/execjs20150630-36511-b2stmyjs:22029:7) 
visitors.Program (/tmp/execjs20150630-36511-b2stmyjs:22039:16) 
Walker.children (/tmp/execjs20150630-36511-b2stmyjs:22062:7) 
Walker.visit (/tmp/execjs20150630-36511-b2stmyjs:22030:12) 
TransformBindAttrToAttributes_transform [as transform] (/tmp/execjs20150630-36511-b2stmyjs:15518:12) 
preprocess (/tmp/execjs20150630-36511-b2stmyjs:21637:27) 
compileSpec (/tmp/execjs20150630-36511-b2stmyjs:16640:52) 
["ok","(function() {\ ... 
... locals: [],\n templates: []\n };\n}())"]' 
(in  /var/lib/jenkins/jobs/ch_master_package/workspace/app/assets/javascripts/templates/_permanently_remove_post.hbs) 
/usr/local/rvm/gems/[email protected]_master_package/gems/json-1.8.2/lib/json/common.rb:155:in `parse' 
/usr/local/rvm/gems/[email protected]_master_package/gems/json-1.8.2/lib/json/common.rb:155:in `parse' 
/usr/local/rvm/gems/[email protected]_master_package/gems/execjs-2.5.2/lib/execjs/external_runtime.rb:68:in `extract_result' 
/usr/local/rvm/gems/[email protected]_master_package/gems/execjs-2.5.2/lib/execjs/external_runtime.rb:39:in `exec' 
/usr/local/rvm/gems/[email protected]_master_package/gems/execjs-2.5.2/lib/execjs/external_runtime.rb:21:in `eval' 
/usr/local/rvm/gems/[email protected]_master_package/gems/execjs-2.5.2/lib/execjs/external_runtime.rb:46:in `call' 
/usr/local/rvm/gems/[email protected]_master_package/gems/barber-0.9.0/lib/barber/precompiler.rb:23:in `compile' 
/usr/local/rvm/gems/[email protected]_master_package/gems/barber-0.9.0/lib/barber/precompiler.rb:8:in `compile' 
/usr/local/rvm/gems/[email protected]_master_package/gems/ember-rails-0.16.1/lib/ember/handlebars/template.rb:75:in `precompile_ember_handlebars' 
/usr/local/rvm/gems/[email protected]_master_package/gems/ember-rails-0.16.1/lib/ember/handlebars/template.rb:27:in `evaluate' 
/usr/local/rvm/gems/[email protected]_master_package/gems/tilt-1.4.1/lib/tilt/template.rb:103:in `render' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/sprockets/context.rb:197:in `block in evaluate' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/sprockets/context.rb:194:in `each' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/sprockets/context.rb:194:in `evaluate' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/sprockets/processed_asset.rb:12:in `initialize' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/sprockets/base.rb:374:in `new' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/sprockets/base.rb:374:in `block in build_asset' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/sprockets/base.rb:395:in `circular_call_protection' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/sprockets/base.rb:373:in `build_asset' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/sprockets/index.rb:94:in `block in build_asset' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/sprockets/caching.rb:58:in `cache_asset' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/sprockets/index.rb:93:in `build_asset' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/sprockets/base.rb:287:in `find_asset' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/sprockets/index.rb:61:in `find_asset' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/sprockets/processed_asset.rb:111:in `block in resolve_dependencies' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/sprockets/processed_asset.rb:105:in `each' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/sprockets/processed_asset.rb:105:in `resolve_dependencies' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/sprockets/processed_asset.rb:97:in `build_required_assets' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/sprockets/processed_asset.rb:16:in `initialize' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/sprockets/base.rb:374:in `new' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/sprockets/base.rb:374:in `block in build_asset' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/sprockets/base.rb:395:in `circular_call_protection' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/sprockets/base.rb:373:in `build_asset' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/sprockets/index.rb:94:in `block in build_asset' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/sprockets/caching.rb:58:in `cache_asset' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/sprockets/index.rb:93:in `build_asset' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/sprockets/base.rb:287:in `find_asset' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/sprockets/index.rb:61:in `find_asset' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/sprockets/processed_asset.rb:111:in `block in resolve_dependencies' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/sprockets/processed_asset.rb:105:in `each' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/sprockets/processed_asset.rb:105:in `resolve_dependencies' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/sprockets/processed_asset.rb:97:in `build_required_assets' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/sprockets/processed_asset.rb:16:in `initialize' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/sprockets/base.rb:374:in `new' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/sprockets/base.rb:374:in `block in build_asset' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/sprockets/base.rb:395:in `circular_call_protection' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/sprockets/base.rb:373:in `build_asset' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/sprockets/index.rb:94:in `block in build_asset' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/sprockets/caching.rb:58:in `cache_asset' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/sprockets/index.rb:93:in `build_asset' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/sprockets/base.rb:287:in `find_asset' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/sprockets/index.rb:61:in `find_asset' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/sprockets/bundled_asset.rb:16:in `initialize' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/sprockets/base.rb:377:in `new' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/sprockets/base.rb:377:in `build_asset' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/sprockets/index.rb:94:in `block in build_asset' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/sprockets/caching.rb:58:in `cache_asset' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/sprockets/index.rb:93:in `build_asset' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/sprockets/base.rb:287:in `find_asset' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/sprockets/index.rb:61:in `find_asset' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/sprockets/manifest.rb:211:in `block in find_asset' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/sprockets/manifest.rb:257:in `benchmark' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/sprockets/manifest.rb:210:in `find_asset' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/sprockets/manifest.rb:119:in `block in compile' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/sprockets/manifest.rb:118:in `each' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/sprockets/manifest.rb:118:in `compile' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-rails-2.2.4/lib/sprockets/rails/task.rb:70:in `block (3 levels) in define' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-2.12.3/lib/rake/sprocketstask.rb:146:in `with_logger' 
/usr/local/rvm/gems/[email protected]_master_package/gems/sprockets-rails-2.2.4/lib/sprockets/rails/task.rb:69:in `block (2 levels) in define' 
Tasks: TOP => assets:precompile 
(See full trace by running task with --trace) 

ответ

0

Да, у меня был такой же опыт с обновлением Ember 1.12, см. https://github.com/emberjs/rfcs/pull/65#issuecomment-114964973, но устаревания сломал сборку и заблокировал выпуск для моего проекта. Мне пришлось исправить задержки, которые были блокированы, отсроченный выпуск на день

Смежные вопросы