問題タブ [deprecation-warning]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ruby-on-rails - 新しいRailsで検索を読み取り専用に置き換える方法は?
私のプロジェクトには、次のレガシー コードがありました。
どうやら、IDで検索し、読み取り専用ではないオブジェクトのみを検索しました。ただし、readonly はモデルの属性ではありません。これは、そのインスタンスが読み取り専用インスタンスであるかどうかを定義する実際の ActiveRecord プロパティをチェックする必要があります。それがこのコードが実際に行っていることかどうかはわかりません。おそらく :readonly => false は役に立たないでしょう。しかし、予想される警告が表示されます。
また、SQL属性ではないため、SQLで読み取り専用かどうかを確認できないため、whereに置き換えることはできません。
エラーは、スコープ内にある場合、find を引き続き使用できることを実際に明示的に示しています。しかし、次のようにスコープを作成しました。
ただし、同じ警告がスローされますが、コントローラーではなくモデルのスコープ宣言行で...
私はいくつかの他のテストを行いました:
それを where('id = ? AND readonly = false', id) に置き換えると、例外として、実際にはエラーが発生します- readonly はモデルの適切なものではありません。
読み取り専用ビットなしでコードを実行すると、読み取り専用レコードが返され、コードが後でそれらを更新しようとしてエラーが発生するため、テストが中断されます。
find(id, :readonly => false, :ldisfs32j9fmdf90sdfds => false) などの不正なオプションを検索ハッシュに追加すると、例外として不明なキー エラーが発生します。
したがって、この :readonly ビットは非常に重要ですが、単純な where に置き換えることはできません。新しいバージョンのレールでどうすればできますか?
c - ライブラリの関数を非推奨としてマークする
私は、既存のライブラリを拡張するC のプロジェクトに取り組んでいます(標準の s 経由include
)。ライブラリが開発されるにつれて、多くの関数が非推奨になります。ただし、これはドキュメントにのみ示されています。コードはこのステータスを決してマークしません。
これらの非推奨関数のいずれかを使用しようとするたびに、プロジェクトに警告してもらいたいと思います。特に、ライブラリが活発に開発されているため、非推奨になる前に何かを使用し、ステータスが変更されたときに気付かなかった可能性があります。ライブラリコード自体を変更する以外に、gccでこれを行う方法はありますか? (1 つには、頻繁に変更されるため、gcc 属性を使用してローカル バージョンを維持することは実際的ではありません。)
これは可能ですか?Visual Studioがこれを行うことができるようです
構文ですが、gcc はこれをサポートしていないと思います。
関数宣言自体。
c++ - Mac OSX 10.9、IDE での Glut の廃止: QT Creator
Macにインストールされたqtクリエーターで、osx 10.9を使用してopenglプログラムを構築しようとしていました。osx10.9 で廃止された glut 関数について、いくつかの警告が表示されました。エラー メッセージの例は次のとおりです。
'glutInit' は非推奨です: OS X 10.9 で最初に非推奨になりました [-Wdeprecated-declarations] glutInit(&argc, &argv); ^
osx10.9でGLUT.hが使えなくなったのかな?他のいくつかの投稿によると、「OS X Deployment Target」を OSX10.8 に戻せば動作すると言われています。qtcreatorでこれを行う方法は? ありがとうございました!
ruby - TestFirst.org Learn_ruby rake と減価償却の警告 :should および :expect 構文
Google で何度も検索した後、コミュニティから情報を得る準備が整いました。サンフランシスコの App Academy に申し込もうとしていますが、必要な事前作業の 1 つは TestFirst の Learn_ruby です。私はもともとこれを私のWindowsボックスのLinux VMで構成していました。とてもうまくいきました。rake を実行すると、一度に 1 つの問題がリストされました。テキストは便利な色でした。出力は非常に凝縮されていたので、読む必要のあるものしか得られませんでした。最近、システムをワイプしてデュアル ブート Xubuntu 14.04/Windows として構成しましたが、かつて持っていた VM はとうの昔になくなっています。VM で行ったのと同じように、Linux VM で Ruby をセットアップする作業を行いました。
私の問題はrake
、プロジェクトで実行すると、同じ減価償却の警告が表示されることです。
非推奨の警告:
should
構文を明示的に有効にせずにfrom rspec-expectations の古い:should
構文を使用することは非推奨です。新しい:expect
構文を使用するか、:should
代わりに明示的に有効にしてください。/home/kaji/Projects/learn_ruby/05_silly_blocks/silly_blocks_spec.rb:25:in `block (3 level) in ' から呼び出されます。
これを前後にグーグルで調べた後、エラーが私に伝えていることの大部分を理解しています。そして、それをなくすための解決策さえ見つけました。この投稿のおかげで: RSpec's New Expectation Syntax、警告を消すための構文を見つけることができました。(基本的にはファイル内に変更blah.should == #
する必要がありました。これにより、警告がうまくいくようです。ただし、別の問題があるという兆候がまだ見られます。expect(blah()).to eq(#)
*_spec.rb
出力は、VM を使用していたときほど「わかりやすい」ものではありません。カラーではありません。一度にすべてのエラーをダンプします。Learn_ruby について私が最も楽しんだのは、最小限の出力で一度に 1 つの目的を与えてくれることでした。今、私の問題が何であるかを確認するために、かなり上にスクロールする必要があります。
RVM とすべての gem を完全に削除し、再インストールして、これを解決できるかどうかを確認するのにうんざりしています。サイコロはありません。私はRuby Noobieなので、このすべてに少し圧倒されています. 基本の学習に戻りたいのですが、これで 1 週間以上悩んでいます。誰かがこの問題を抱えていましたか/例外を修正しましたか
rpsec ~<=2.0
また、Rakefile から を削除しようとしました。Rails 4.1.1を使用してruby -v 2.1.2
おり、RSpec 3.0.0、2.99.0、2.0.0 を使用しています。構文の変更に関するチュートリアルを見つけようとさえしましたが、私がまったく知らない Ruby の概念がたくさん紹介されていたので、本当に混乱しました。その時点で、私は頭がいっぱいで、欠けている単純なものがあるように感じます.
支援のために十分な情報を提供したことを願っています。
ruby-on-rails - Why do I get deprecation warnings about Rails 2.3-style plugins?
I had a vendor directory/ directgory with /javascript and /plugins but they were empty and so I also deleted them.
I did git add --all and pushed the deletion but I still get the warning messages:
python - Python/matplotlib : matplotlib.mpl 警告を取り除く
Python 3.4を使用してmatplotlibを使用しています。プログラムを起動すると、次の警告メッセージが表示されます。
C:\Python34-32bits\lib\site-packages\matplotlib\cbook.py:123: MatplotlibDeprecationWarning: matplotlib.mpl モジュールはバージョン 1.3 で廃止されました。
import matplotlib as mpl
代わりに使用してください。warnings.warn(メッセージ、mplDeprecation、stacklevel=1)
私が知る限り、私は mpl を使用しておらず、matplotlib に関するすべてのインポートは次のとおりです。
私がすべきことはありますか?
python - サードパーティのコードを変更せずに警告を抑制する
サードパーティのオープン ソース ツールを使用すると、次の警告が生成されます。
サードパーティのコードを変更せずにこの警告を抑制するにはどうすればよいですか?
使用方法は知っていますwarnings.filter()
が、使用できません。py.test
コマンド ラインから呼び出すため、警告が作成される前にコードのソース コード行が 1 行も実行されません。
コンソール スクリプトの周りにラッパーを作成することはできません。
ios - 「テキスト」は非推奨です
iOS 6 の iPhone アプリを iOS8 にアップデートする準備をしています。このコードの 2 行目は、エラー メッセージを生成します ("text" は非推奨です。iOS 3.0 で最初に非推奨になりました)。シンタックス エラーは何年もの間私のアプリにあり、問題を引き起こしていませんでしたが、iOS 8 バージョンを完成させる前にエラーを片付けようと思いました。