简体   繁体   中英

Update breaking Sass framework - Incompatible units: 'px' and 'em'

Something seems to have updated that is breaking compass or gumby. It was working perfectly until a few days ago until I updated my gems and gemfile. Now even when go back to the earlier gemfile it still gives me the error.

I opened a detailed issue on it with details in a comment of how to recreate it here

Does anyone know any better ways I can debug this problem? I literally can't move past it or do anything.

Suspected lines of code

From a full stack trace I can see that the error is coming from this line in compass which seems to get its variables from this line in Gumby

Minimum amount of code

The minimum amount of code needed to reproduce the error is an installation of Gumby, which is already installed in a project here and my gemfile which includes rails 4.0.

Gemfile:

source 'https://rubygems.org'

gem 'rails', '4.0.2'

gem 'jquery-rails'
gem 'jquery-ui-rails'
gem 'turbolinks'
gem 'sass-rails'
gem 'coffee-rails', '~> 4.0.0'
gem 'uglifier', '>= 1.3.0'
gem 'compass-rails'

gem 'modular-scale'
gem "slim-rails"

gem 'sqlite3'

gem "mini_magick"
gem 'carrierwave'

gem "fog", "~> 1.3.1"

gem "pg"

gem 'will_paginate', '~> 3.0.0'

gem 'resque', "~> 1.22.0", :require => "resque/server"

gem 'exception_notification'

gem 'httparty'

gem 'devise'

gem "active_model_serializers"

gem "rails_best_practices"

group :doc do
gem 'sdoc', require: false
end

gem 'bullet'

gem 'rails_12factor', group: :production

Full Stack Trace:

compass (0.12.2) frameworks/compass/stylesheets/compass/typography/_vertical_rhythm.scss:36
compass (0.12.2) frameworks/compass/stylesheets/compass/_typography.scss:4
compass (0.12.2) frameworks/compass/stylesheets/_compass.scss:2
app/assets/stylesheets/gumby/gumby.scss:28
app/assets/stylesheets/application.scss:1
sass (3.2.14) lib/sass/script/number.rb:394:in `coercion_factor'
sass (3.2.14) lib/sass/script/number.rb:325:in `coerce'
sass (3.2.14) lib/sass/script/number.rb:375:in `operate'
sass (3.2.14) lib/sass/script/number.rb:119:in `minus'
sass (3.2.14) lib/sass/script/operation.rb:89:in `_perform'
sass (3.2.14) lib/sass/script/node.rb:40:in `perform'
sass (3.2.14) lib/sass/script/operation.rb:73:in `_perform'
sass (3.2.14) lib/sass/script/node.rb:40:in `perform'
sass (3.2.14) lib/sass/script/operation.rb:73:in `_perform'
sass (3.2.14) lib/sass/script/node.rb:40:in `perform'
sass (3.2.14) lib/sass/tree/visitors/perform.rb:327:in `visit_variable'
sass (3.2.14) lib/sass/tree/visitors/base.rb:37:in `visit'
sass (3.2.14) lib/sass/tree/visitors/perform.rb:100:in `visit'
sass (3.2.14) lib/sass/tree/visitors/perform.rb:227:in `block in visit_import'
sass (3.2.14) lib/sass/tree/visitors/perform.rb:227:in `map'
sass (3.2.14) lib/sass/tree/visitors/perform.rb:227:in `visit_import'
sass (3.2.14) lib/sass/tree/visitors/base.rb:37:in `visit'
sass (3.2.14) lib/sass/tree/visitors/perform.rb:100:in `visit'
sass (3.2.14) lib/sass/tree/visitors/perform.rb:227:in `block in visit_import'
sass (3.2.14) lib/sass/tree/visitors/perform.rb:227:in `map'
sass (3.2.14) lib/sass/tree/visitors/perform.rb:227:in `visit_import'
sass (3.2.14) lib/sass/tree/visitors/base.rb:37:in `visit'
sass (3.2.14) lib/sass/tree/visitors/perform.rb:100:in `visit'
sass (3.2.14) lib/sass/tree/visitors/perform.rb:227:in `block in visit_import'
sass (3.2.14) lib/sass/tree/visitors/perform.rb:227:in `map'
sass (3.2.14) lib/sass/tree/visitors/perform.rb:227:in `visit_import'
sass (3.2.14) lib/sass/tree/visitors/base.rb:37:in `visit'
sass (3.2.14) lib/sass/tree/visitors/perform.rb:100:in `visit'
sass (3.2.14) lib/sass/tree/visitors/perform.rb:227:in `block in visit_import'
sass (3.2.14) lib/sass/tree/visitors/perform.rb:227:in `map'
sass (3.2.14) lib/sass/tree/visitors/perform.rb:227:in `visit_import'
sass (3.2.14) lib/sass/tree/visitors/base.rb:37:in `visit'
sass (3.2.14) lib/sass/tree/visitors/perform.rb:100:in `visit'
sass (3.2.14) lib/sass/tree/visitors/base.rb:53:in `block in visit_children'
sass (3.2.14) lib/sass/tree/visitors/base.rb:53:in `map'
sass (3.2.14) lib/sass/tree/visitors/base.rb:53:in `visit_children'
sass (3.2.14) lib/sass/tree/visitors/perform.rb:109:in `block in visit_children'
sass (3.2.14) lib/sass/tree/visitors/perform.rb:121:in `with_environment'
sass (3.2.14) lib/sass/tree/visitors/perform.rb:108:in `visit_children'
sass (3.2.14) lib/sass/tree/visitors/base.rb:37:in `block in visit'
sass (3.2.14) lib/sass/tree/visitors/perform.rb:128:in `visit_root'
sass (3.2.14) lib/sass/tree/visitors/base.rb:37:in `visit'
sass (3.2.14) lib/sass/tree/visitors/perform.rb:100:in `visit'
sass (3.2.14) lib/sass/tree/visitors/perform.rb:7:in `visit'
sass (3.2.14) lib/sass/tree/root_node.rb:20:in `render'
sass (3.2.14) lib/sass/engine.rb:315:in `_render'
sass (3.2.14) lib/sass/engine.rb:262:in `render'
compass-rails (1.1.3) lib/compass-rails/patches/sass_importer.rb:24:in `evaluate'
tilt (1.4.1) lib/tilt/template.rb:103:in `render'
sprockets (2.10.1) lib/sprockets/context.rb:197:in `block in evaluate'
sprockets (2.10.1) lib/sprockets/context.rb:194:in `each'
sprockets (2.10.1) lib/sprockets/context.rb:194:in `evaluate'
sprockets (2.10.1) lib/sprockets/processed_asset.rb:12:in `initialize'
sprockets (2.10.1) lib/sprockets/base.rb:374:in `new'
sprockets (2.10.1) lib/sprockets/base.rb:374:in `block in build_asset'
sprockets (2.10.1) lib/sprockets/base.rb:395:in `circular_call_protection'
sprockets (2.10.1) lib/sprockets/base.rb:373:in `build_asset'
sprockets (2.10.1) lib/sprockets/index.rb:94:in `block in build_asset'
sprockets (2.10.1) lib/sprockets/caching.rb:58:in `cache_asset'
sprockets (2.10.1) lib/sprockets/index.rb:93:in `build_asset'
sprockets (2.10.1) lib/sprockets/base.rb:287:in `find_asset'
sprockets (2.10.1) lib/sprockets/index.rb:61:in `find_asset'
sprockets (2.10.1) lib/sprockets/bundled_asset.rb:16:in `initialize'
sprockets (2.10.1) lib/sprockets/base.rb:377:in `new'
sprockets (2.10.1) lib/sprockets/base.rb:377:in `build_asset'
sprockets (2.10.1) lib/sprockets/index.rb:94:in `block in build_asset'
sprockets (2.10.1) lib/sprockets/caching.rb:58:in `cache_asset'
sprockets (2.10.1) lib/sprockets/index.rb:93:in `build_asset'
sprockets (2.10.1) lib/sprockets/base.rb:287:in `find_asset'
sprockets (2.10.1) lib/sprockets/index.rb:61:in `find_asset'
sprockets (2.10.1) lib/sprockets/environment.rb:75:in `find_asset'
sprockets (2.10.1) lib/sprockets/base.rb:295:in `[]'
sprockets-rails (2.0.1) lib/sprockets/rails/helper.rb:144:in `lookup_asset_for_path'
sprockets-rails (2.0.1) lib/sprockets/rails/helper.rb:113:in `block in stylesheet_link_tag'
sprockets-rails (2.0.1) lib/sprockets/rails/helper.rb:112:in `map'
sprockets-rails (2.0.1) lib/sprockets/rails/helper.rb:112:in `stylesheet_link_tag'
app/views/shared/_head.html.erb:36:in `_app_views_shared__head_html_erb__978649939795444344_70226324018400'
actionpack (4.0.2) lib/action_view/template.rb:143:in `block in render'
activesupport (4.0.2) lib/active_support/notifications.rb:161:in `instrument'
actionpack (4.0.2) lib/action_view/template.rb:141:in `render'
actionpack (4.0.2) lib/action_view/renderer/partial_renderer.rb:306:in `render_partial'
actionpack (4.0.2) lib/action_view/renderer/partial_renderer.rb:279:in `block in render'
actionpack (4.0.2) lib/action_view/renderer/abstract_renderer.rb:38:in `block in instrument'
activesupport (4.0.2) lib/active_support/notifications.rb:159:in `block in instrument'
activesupport (4.0.2) lib/active_support/notifications/instrumenter.rb:20:in `instrument'
activesupport (4.0.2) lib/active_support/notifications.rb:159:in `instrument'
actionpack (4.0.2) lib/action_view/renderer/abstract_renderer.rb:38:in `instrument'
actionpack (4.0.2) lib/action_view/renderer/partial_renderer.rb:278:in `render'
actionpack (4.0.2) lib/action_view/renderer/renderer.rb:47:in `render_partial'
actionpack (4.0.2) lib/action_view/renderer/renderer.rb:21:in `render'
actionpack (4.0.2) lib/action_view/helpers/rendering_helper.rb:24:in `render'
app/views/layouts/application.html.erb:1:in `_app_views_layouts_application_html_erb___3890227880739755082_70226314239480'
actionpack (4.0.2) lib/action_view/template.rb:143:in `block in render'
activesupport (4.0.2) lib/active_support/notifications.rb:161:in `instrument'
actionpack (4.0.2) lib/action_view/template.rb:141:in `render'
actionpack (4.0.2) lib/action_view/renderer/template_renderer.rb:61:in `render_with_layout'
actionpack (4.0.2) lib/action_view/renderer/template_renderer.rb:47:in `render_template'
actionpack (4.0.2) lib/action_view/renderer/template_renderer.rb:17:in `render'
actionpack (4.0.2) lib/action_view/renderer/renderer.rb:42:in `render_template'
actionpack (4.0.2) lib/action_view/renderer/renderer.rb:23:in `render'
actionpack (4.0.2) lib/abstract_controller/rendering.rb:127:in `_render_template'
actionpack (4.0.2) lib/action_controller/metal/streaming.rb:219:in `_render_template'
actionpack (4.0.2) lib/abstract_controller/rendering.rb:120:in `render_to_body'
actionpack (4.0.2) lib/action_controller/metal/rendering.rb:33:in `render_to_body'
actionpack (4.0.2) lib/action_controller/metal/renderers.rb:26:in `render_to_body'
actionpack (4.0.2) lib/abstract_controller/rendering.rb:97:in `render'
actionpack (4.0.2) lib/action_controller/metal/rendering.rb:16:in `render'
actionpack (4.0.2) lib/action_controller/metal/instrumentation.rb:41:in `block (2 levels) in render'
activesupport (4.0.2) lib/active_support/core_ext/benchmark.rb:12:in `block in ms'
/Users/alexdollery/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/2.0.0/benchmark.rb:296:in `realtime'
activesupport (4.0.2) lib/active_support/core_ext/benchmark.rb:12:in `ms'
actionpack (4.0.2) lib/action_controller/metal/instrumentation.rb:41:in `block in render'
actionpack (4.0.2) lib/action_controller/metal/instrumentation.rb:84:in `cleanup_view_runtime'
activerecord (4.0.2) lib/active_record/railties/controller_runtime.rb:25:in `cleanup_view_runtime'
actionpack (4.0.2) lib/action_controller/metal/instrumentation.rb:40:in `render'
actionpack (4.0.2) lib/action_controller/metal/implicit_render.rb:10:in `default_render'
actionpack (4.0.2) lib/action_controller/metal/implicit_render.rb:5:in `send_action'
actionpack (4.0.2) lib/abstract_controller/base.rb:189:in `process_action'
actionpack (4.0.2) lib/action_controller/metal/rendering.rb:10:in `process_action'
actionpack (4.0.2) lib/abstract_controller/callbacks.rb:18:in `block in process_action'
activesupport (4.0.2) lib/active_support/callbacks.rb:403:in `_run__4424863521699852683__process_action__callbacks'
activesupport (4.0.2) lib/active_support/callbacks.rb:80:in `run_callbacks'
actionpack (4.0.2) lib/abstract_controller/callbacks.rb:17:in `process_action'
actionpack (4.0.2) lib/action_controller/metal/rescue.rb:29:in `process_action'
actionpack (4.0.2) lib/action_controller/metal/instrumentation.rb:31:in `block in process_action'
activesupport (4.0.2) lib/active_support/notifications.rb:159:in `block in instrument'
activesupport (4.0.2) lib/active_support/notifications/instrumenter.rb:20:in `instrument'
activesupport (4.0.2) lib/active_support/notifications.rb:159:in `instrument'
actionpack (4.0.2) lib/action_controller/metal/instrumentation.rb:30:in `process_action'
actionpack (4.0.2) lib/action_controller/metal/params_wrapper.rb:245:in `process_action'
activerecord (4.0.2) lib/active_record/railties/controller_runtime.rb:18:in `process_action'
actionpack (4.0.2) lib/abstract_controller/base.rb:136:in `process'
actionpack (4.0.2) lib/abstract_controller/rendering.rb:44:in `process'
actionpack (4.0.2) lib/action_controller/metal.rb:195:in `dispatch'
actionpack (4.0.2) lib/action_controller/metal/rack_delegation.rb:13:in `dispatch'
actionpack (4.0.2) lib/action_controller/metal.rb:231:in `block in action'
actionpack (4.0.2) lib/action_dispatch/routing/route_set.rb:80:in `call'
actionpack (4.0.2) lib/action_dispatch/routing/route_set.rb:80:in `dispatch'
actionpack (4.0.2) lib/action_dispatch/routing/route_set.rb:48:in `call'
actionpack (4.0.2) lib/action_dispatch/journey/router.rb:71:in `block in call'
actionpack (4.0.2) lib/action_dispatch/journey/router.rb:59:in `each'
actionpack (4.0.2) lib/action_dispatch/journey/router.rb:59:in `call'
actionpack (4.0.2) lib/action_dispatch/routing/route_set.rb:680:in `call'
bullet (4.7.1) lib/bullet/rack.rb:10:in `call'
warden (1.2.3) lib/warden/manager.rb:35:in `block in call'
warden (1.2.3) lib/warden/manager.rb:34:in `catch'
warden (1.2.3) lib/warden/manager.rb:34:in `call'
rack (1.5.2) lib/rack/etag.rb:23:in `call'
rack (1.5.2) lib/rack/conditionalget.rb:25:in `call'
rack (1.5.2) lib/rack/head.rb:11:in `call'
actionpack (4.0.2) lib/action_dispatch/middleware/params_parser.rb:27:in `call'
actionpack (4.0.2) lib/action_dispatch/middleware/flash.rb:241:in `call'
rack (1.5.2) lib/rack/session/abstract/id.rb:225:in `context'
rack (1.5.2) lib/rack/session/abstract/id.rb:220:in `call'
actionpack (4.0.2) lib/action_dispatch/middleware/cookies.rb:486:in `call'
activerecord (4.0.2) lib/active_record/query_cache.rb:36:in `call'
activerecord (4.0.2) lib/active_record/connection_adapters/abstract/connection_pool.rb:626:in `call'
actionpack (4.0.2) lib/action_dispatch/middleware/callbacks.rb:29:in `block in call'
activesupport (4.0.2) lib/active_support/callbacks.rb:373:in `_run__2447209521754706498__call__callbacks'
activesupport (4.0.2) lib/active_support/callbacks.rb:80:in `run_callbacks'
actionpack (4.0.2) lib/action_dispatch/middleware/callbacks.rb:27:in `call'
actionpack (4.0.2) lib/action_dispatch/middleware/reloader.rb:64:in `call'
actionpack (4.0.2) lib/action_dispatch/middleware/remote_ip.rb:76:in `call'
actionpack (4.0.2) lib/action_dispatch/middleware/debug_exceptions.rb:17:in `call'
actionpack (4.0.2) lib/action_dispatch/middleware/show_exceptions.rb:30:in `call'
railties (4.0.2) lib/rails/rack/logger.rb:38:in `call_app'
railties (4.0.2) lib/rails/rack/logger.rb:20:in `block in call'
activesupport (4.0.2) lib/active_support/tagged_logging.rb:67:in `block in tagged'
activesupport (4.0.2) lib/active_support/tagged_logging.rb:25:in `tagged'
activesupport (4.0.2) lib/active_support/tagged_logging.rb:67:in `tagged'
railties (4.0.2) lib/rails/rack/logger.rb:20:in `call'
actionpack (4.0.2) lib/action_dispatch/middleware/request_id.rb:21:in `call'
rack (1.5.2) lib/rack/methodoverride.rb:21:in `call'
rack (1.5.2) lib/rack/runtime.rb:17:in `call'
activesupport (4.0.2) lib/active_support/cache/strategy/local_cache.rb:83:in `call'
rack (1.5.2) lib/rack/lock.rb:17:in `call'
actionpack (4.0.2) lib/action_dispatch/middleware/static.rb:64:in `call'
rack (1.5.2) lib/rack/sendfile.rb:112:in `call'
railties (4.0.2) lib/rails/engine.rb:511:in `call'
railties (4.0.2) lib/rails/application.rb:97:in `call'
rack (1.5.2) lib/rack/lock.rb:17:in `call'
rack (1.5.2) lib/rack/content_length.rb:14:in `call'
rack (1.5.2) lib/rack/handler/webrick.rb:60:in `service'
/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/2.0.0/webrick/httpserver.rb:138:in `service'
/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/2.0.0/webrick/httpserver.rb:94:in `run'
/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/2.0.0/webrick/server.rb:295:in `block in start_thread'

Both Gumby and Foundation rely on the modular-scale extension (that's where the ms() function comes from). Since both libraries are having the same problem, it is likely that they are depending on behavior from an older version of the extension (especially since there appears to have been a new release fairly recently).

Adjusting the dependency to an older version of modular-scale should do the trick until Gumby gets patched to work with the latest version.

I had the same issue after upgrading and instead of downgrading the version of compass or modular scale, I instead fixed the issue by following modular–scale's upgrading information :

  • Rename $base-size to $ms-base.
  • Rename $ratio to $ms-ratio.
  • Change ratios from function format golden(), to variable format $golden.
  • The ms-list-output() mixin and power() function have been removed.

They changed the variable names, which caused the issue for me.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM