Sassの Deprecation Warning を潰した

いつからか以下のようなWarningが出るようになっていた。

[18:34:43] DEPRECATION WARNING on line 92 of /Users/****/.rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/compass-core-1.0.3/stylesheets/compass/css3/_deprecated-support.scss: #{} interpolation near operators will be simplified
in a future version of Sass. To preserve the current behavior, use quotes:

  unquote('"#{"$ie6-"}$legacy-support-for-ie6" "$ie7-"#{$legacy-support-for-ie7} "$ie8-"#{$legacy-support-for-ie8}')

You can use the sass-convert command to automatically fix most cases.

特に問題無くて放置してたけどそろそろウザく感じたので対処しました。

Warning文によると、どうにもCompassの中にある_deprecated-support.scss内の記述で注意されているので、実際そのファイルを開いて以下の箇所を修正します。

修正前

// A debug tool for checking browser support
@mixin debug-support-matrix($experimental: true, $ie: true) {
  @debug  #{'$moz-'}$experimental-support-for-mozilla
          #{'$webkit-'}$experimental-support-for-webkit
          #{'$opera-'}$experimental-support-for-opera
          #{'$microsoft-'}$experimental-support-for-microsoft
          #{'$khtml-'}$experimental-support-for-khtml;
  @debug  #{'$ie6-'}$legacy-support-for-ie6
          #{'$ie7-'}$legacy-support-for-ie7
          #{'$ie8-'}$legacy-support-for-ie8;
}

修正後

// A debug tool for checking browser support
@mixin debug-support-matrix($experimental: true, $ie: true) {
  @debug  '#{'$moz-'}$experimental-support-for-mozilla'
          '#{'$webkit-'}$experimental-support-for-webkit'
          '#{'$opera-'}$experimental-support-for-opera'
          '#{'$microsoft-'}$experimental-support-for-microsoft'
          '#{'$khtml-'}$experimental-support-for-khtml';
  @debug  '#{'$ie6-'}$legacy-support-for-ie6'
          '#{'$ie7-'}$legacy-support-for-ie7'
          '#{'$ie8-'}$legacy-support-for-ie8';
}

原因

#{'$hogehoge'}fugafuga;    //アカン
'#{'$hogehoge'}fugafuga';  //ええで

シングルクォートで挟めばいいようです。

以前も似たようなことあったのでSass/Compassはアプデの時は注意した方がいいですね。

参考:https://stackoverflow.com/questions/35949660/compass-sass-deprecation-warning