Libsass: 機能リクエスト:: DEPRECATIONWARNSをオフにするフラグを追加します

作成日 2019年01月31日  ·  10コメント  ·  ソース: sass/libsass

node-sassのバージョン4.9以降、現在の警告は多くのプロジェクトで表示されています。 (ここで警告を消す方法を尋ねる未解決の問題が表示される場合があります

DEPRECATION WARNING: Passing a string to call() is deprecated and will be illegal
in Sass 4.0. Use call(get-function("variable-exists")) instead.

警告は大丈夫です。非推奨の関数呼び出しをすべて修正したいのですが、修正できません。主な理由は、どのライブラリが問題のあるライブラリかわからないことです...(私のコードではありません)i非推奨のものを更新するように全員に強制する必要があることを理解していますが、それは実現可能ではありません。 私はすべての開発者が自分のアプリケーションに責任があると思います、そして時代遅れになるリスクを冒すことは彼ら自身です、私は責任を受け入れます:)

そして...この機能リクエストは、 DEPRECATION WARNINGSオン/オフできるフラグをどこかに追加することです。

私はすでにnode-sassプロジェクトで環境変数を誤って追加しようとしましたが、 @ nschonniはPRはここでlibsass実行する必要があると言っていましたが、

  • フラグを追加するためのコードは、 node-sassプロジェクトからPR-2587ですでに利用可能ですが、それほど多くはありません。
  • また、この問題に関する未解決の問題は2334です(これもnode-sassプロジェクトからのものです)。

全てのコメント10件

私はもっ​​と標準的な解決策を持っていると思いますが、ログレベルの実装についてどう思いますか? (log4j、 winstonなど)。

これについてもっと同意するかどうか教えてください:)(このFRタイトルを変更します)

ロギングレベルを追加したり、非推奨の警告をサイレンシングしたりすることはありません。 これらの警告は、ユーザーコードが機能し続けるために非常に重要です。

ただし、非推奨の動作を使用してコードを見つけやすくするソリューションを検討します。

この@xzyferで私のすべての懸念に答えてくれてありがとう...ところで、私は問題のあるライブラリを見つけたので、修正が進行中です:+1:

そして...私は他のすべてのユースケースを推測しますそれはライブラリの所有者が彼らの非推奨のものを修正することを決定するまで待たなければならないでしょう(...)

この警告は、開発者としての作業を継続するために決定的に重要ではないことを覚えておいてください...そのような場合、警告の代わりにエラーがスローされます。

別のアプローチはhttps://github.com/sass/libsass/pull/2862 ...

これは本当に重要です。 現在、同じエラーが数十回発生しています。

DEPRECATION WARNING on line 29 of sass/elements/image.sass:
#{} interpolation near operators will be simplified in a future version of Sass.
To preserve the current behavior, use quotes:

  unquote("image_size_#{$size}")

このようなもので

+_(image_size_#{$size})

それがどの演算子を参照しているかさえわかりませんが、そのひどい見た目の代替を書くよりも、「簡略化されたバージョン」に変更したいと思います。

これらの警告は、ユーザーコードが機能し続けるために非常に重要です。

はい、 @ xzyferに同意し

現時点では、これをサポートする意図はありません。 非推奨の警告は、言語を進化させる上で非常に重要です。 非推奨の警告をミュートすることは、問題追跡システムが氾濫することになる重大な変更が導入されたときの苦痛を延期するだけです。 警告の導入より前のバージョンのLibsassへの警告のダウングレードを削除します。

警告は、初めて読んだときにのみ役立ちます。 誰かがそれらをオフにした場合、彼らはすでにそれらを読んでいて、それらにうんざりしていて、したがってそれらに気付いているので、それを再び表示してもゼロの違いはなく、将来、彼らはそれが壊れた理由を知るでしょう。
人々にこれらの警告を抑制させないことは誰をも助けません、それはただ迷惑です。

また、警告は、それがどのように単純化されるか、そしてそれがはるかに複雑にするためにそれが与える解決策についてです。
特にプロジェクト全体で使用する場合、誰かがその提案に従おうとしない理由がわかります。

@xzyferあなたはこれに良い点があります!! 仰るとおりです :)

非推奨の警告をミュートすることは、問題追跡システムが氾濫することになる重大な変更が導入されたときの痛みを延期するだけです。

しかし、私たちはまだ解決策を見つけることができると思います!! これについて不平を言うほとんどの開発者のために。 主な理由はこの部分です( @luaVolkが言ったように):

現在、同じエラーが数十回発生しています。

これらすべての警告を1つに減らすことについてどう思いますか? 私の場合、この機能リクエストを開いたとき、約10万件以上の警告が表示されていました。 「詳細な警告」をすべて削除して、次のように印刷できると思います。

Your libsass implementation is deprecated and will be illegal in Sass 4.0, for more details try '--libsass-verbose'.

そして多分追加:

The following errors were found:
> 12 errors found: #{} interpolation near operators will be simplified in a future version of Sass
> 4 errors found: Passing a string to call() is deprecated and will be illegal
in Sass 4.0. Use call(get-function("variable-exists")) instead.

またはそのような何か...私はあなたがアイデアを得ることを願っています、あなたは@xzyferをどう思いますか?

私の最後のコメントは、別の機能要求として管理する価値があると思います(?)

このページは役に立ちましたか?
0 / 5 - 0 評価