Ruby ile uyarıları göstermek için -w
işaretli ruby
numaralı telefonu arayabilirsiniz. Kütüphaneleri kullanırken Ruby, üzerinde çalıştığınız dosyalardan uyarıları bulmak zor olacak şekilde çok sayıda uyarı gösterebilir. Sadece bazı dosyalar için uyarı göstermek için ruby
söylemek mümkün mü?Uyarıların gösterileceği dosyaları nasıl seçebilirim?
Sorunu açıklayan bir örnek aşağıdadır. Aşağıdakiler çok sayıda uyarı üreten bir kütüphaneyi yükler ve aynı zamanda bir sabiti yeniden tanımlayarak kendi başına bir uyarı üretir.
Bu durumda/var/lib/gems/1.9.1/gems/rest-client-1.6.7/lib/restclient/exceptions.rb:157: warning: assigned but unused variable - message /var/lib/gems/1.9.1/gems/rest-client-1.6.7/lib/restclient/exceptions.rb:167: warning: assigned but unused variable - message /var/lib/gems/1.9.1/gems/rest-client-1.6.7/lib/restclient/response.rb:11: warning: method redefined; discarding old body /var/lib/gems/1.9.1/gems/rest-client-1.6.7/lib/restclient/payload.rb:47: warning: mismatched indentations at 'end' with 'case' at 40 /var/lib/gems/1.9.1/gems/macaddr-1.6.1/lib/macaddr.rb:63: warning: assigned but unused variable - status /var/lib/gems/1.9.1/gems/macaddr-1.6.1/lib/macaddr.rb:63: warning: assigned but unused variable - stderr /var/lib/gems/1.9.1/gems/macaddr-1.6.1/lib/macaddr.rb:56: warning: assigned but unused variable - re /var/lib/gems/1.9.1/gems/macaddr-1.6.1/lib/macaddr.rb:59: warning: assigned but unused variable - null /var/lib/gems/1.9.1/gems/systemu-2.5.2/lib/systemu.rb:126: warning: shadowing outer local variable - cid /var/lib/gems/1.9.1/gems/systemu-2.5.2/lib/systemu.rb:213: warning: shadowing outer local variable - buf /var/lib/gems/1.9.1/gems/systemu-2.5.2/lib/systemu.rb:215: warning: shadowing outer local variable - buf /var/lib/gems/1.9.1/gems/systemu-2.5.2/lib/systemu.rb:208: warning: assigned but unused variable - ignored /var/lib/gems/1.9.1/gems/systemu-2.5.2/lib/systemu.rb:252: warning: shadowing outer local variable - key /var/lib/gems/1.9.1/gems/systemu-2.5.2/lib/systemu.rb:249: warning: assigned but unused variable - ignored /var/lib/gems/1.9.1/gems/grooveshark-0.2.7/lib/grooveshark/user.rb:65: warning: method redefined; discarding old playlists /var/lib/gems/1.9.1/gems/grooveshark-0.2.7/lib/grooveshark/user.rb:93: warning: method redefined; discarding old favorites warning_test.rb:4: warning: already initialized constant CONSTANT
Ben sadece diğer uyarılar kütüphanelere nedeniyle bu yana sadece son uyarısını
warning_test.rb:4: warning: already initialized constant CONSTANT
görmek istiyorum şu şekildedir:
require 'grooveshark'
CONSTANT = 'foo'
CONSTANT = 'bar'
ruby -w warning_test.rb
çıkışı olan Onları ilginç olmadığı için uyarılar üzerinde doğrudan kontrol sahibi değilim. Ruby’ye, sadece bir proje için uyarılar göstermesini söyleyebilmeyi isterdim.
Akımın tanımlanmasının zor olabileceğini anlıyorum. Belki de sadece verilen dosya ve uyarıların gösterilmesi için require_relative
numaralı dosyalarda yer alır. Başka bir alternatif, dizin yapısına yakın olan dosyalar için verilen dosyaya uyarı göstermektir.
bahsediyorsun uyarı ne tür: İşte bir örnek? –
@AndrewMarshall: istisnalar, belki? –
@AndrewMarshall "ruby" ile kullandığınız zaman aldığınızlara atıfta bulunuyorum. –