2017-01-15 11 views
5

Od czasu Ruby w wersji 2.4.0 pojawiło się ostrzeżenie przed wycofaniem się z używania niektórych funkcji, które zostały wycofane. Na przykład: Bignum, Fixnum, TRUE i FALSE będą powodować wyświetlanie ostrzeżeń o przestojach. Podczas gdy naprawiam swój kod, jest sporo kodu, który chciałbym uciszyć, szczególnie w Railsach. Jak mogę to zrobić?Czy istnieje sposób, aby wyciszyć ostrzeżenie o przestarzałości Rubiego w 2.4.0?

+0

Możliwe duplikat [ostrzeżenia tłumiący amortyzacyjne w szynach 3] (http://stackoverflow.com/questions/2689377/silencing-deprecation-warnings-in-rails-3) – Anthony

+2

@Anthony to inaczej. Ostrzeżenia dotyczące wycofywania są teraz w Ruby w wersji 2.4.0, a nie tylko w Railsach. –

+1

Czy uruchomiłbyś swój kod z opcją '-W0'? –

Odpowiedz

3
module Kernel 
    def suppress_warnings 
    original_verbosity = $VERBOSE 
    $VERBOSE = nil 
    result = yield 
    $VERBOSE = original_verbosity 
    return result 
    end 
end 


>> X = :foo 
=> :foo 
>> X = :bar 
(irb):11: warning: already initialized constant X 
=> :bar 
>> suppress_warnings { X = :baz } 
=> :baz 
+2

To jest dobre dla kodu, który napisałem, ale czy istnieje sposób, aby uzyskać Ruby uruchamia cały ten kod w całości? –

Powiązane problemy