<?xml version="1.0" encoding="UTF-8"?>

<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Notizie su Ruby</title>
    <link>http://www.ruby-lang.org/it/feeds/news.rss</link>
    <language>it-IT</language>
    <ttl>40</ttl>
    <description>Le ultime notizie da ruby-lang.org.</description>
    
    <item>
      <title>Rilasciato Ruby 2.0.0-p0</title>
      <description>&lt;p&gt;Siamo lieti di annunciare l&#39;uscita di Ruby 2.0.0-p0.&lt;/p&gt;

&lt;p&gt;Ruby 2.0.0 è il primo rilascio stabile della serie Ruby 2.0, con molte
nuove funzionalità e miglioramenti in risposta alle crescenti e diverse
richieste per Ruby.&lt;/p&gt;

&lt;p&gt;Buon divertimento con Ruby 2.0.0!&lt;/p&gt;

&lt;h2&gt;Download&lt;/h2&gt;

&lt;ul&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;a href=&quot;ftp://ftp.ruby-lang.org/pub/ruby/2.0/ruby-2.0.0-p0.tar.bz2&quot;&gt;&amp;lt;URL:ftp://ftp.ruby-lang.org/pub/ruby/2.0/ruby-2.0.0-p0.tar.bz2&amp;gt;&lt;/a&gt;&lt;/p&gt;

    &lt;pre&gt;&lt;code&gt;SIZE:   10814890 bytes
MD5:    895c1c581f8d28e8b3bb02472b2ccf6a
SHA256: c680d392ccc4901c32067576f5b474ee186def2fcd3fcbfa485739168093295f
&lt;/code&gt;&lt;/pre&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;a href=&quot;ftp://ftp.ruby-lang.org/pub/ruby/2.0/ruby-2.0.0-p0.tar.gz&quot;&gt;&amp;lt;URL:ftp://ftp.ruby-lang.org/pub/ruby/2.0/ruby-2.0.0-p0.tar.gz&amp;gt;&lt;/a&gt;&lt;/p&gt;

    &lt;pre&gt;&lt;code&gt;SIZE:   13608925 bytes
MD5:    50d307c4dc9297ae59952527be4e755d
SHA256: aff85ba5ceb70303cb7fb616f5db8b95ec47a8820116198d1c866cc4fff151ed
&lt;/code&gt;&lt;/pre&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;a href=&quot;ftp://ftp.ruby-lang.org/pub/ruby/2.0/ruby-2.0.0-p0.zip&quot;&gt;&amp;lt;URL:ftp://ftp.ruby-lang.org/pub/ruby/2.0/ruby-2.0.0-p0.zip&amp;gt;&lt;/a&gt;&lt;/p&gt;

    &lt;pre&gt;&lt;code&gt;SIZE:   15037340 bytes
MD5:    db5af5d6034646ad194cbdf6e50f49ee
SHA256: 0d0af6a9c8788537efd8d7d2358ce9468e6e2b7703dacba9ebd064d8b7da5f99
&lt;/code&gt;&lt;/pre&gt;
  &lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;Cos&#39;è Ruby 2.0.0&lt;/h2&gt;

&lt;h3&gt;Nuove Funzionalità&lt;/h3&gt;

&lt;p&gt;In evidenza:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;Nuove funzionalità del linguaggio
    &lt;ul&gt;
      &lt;li&gt;Argomenti con parole chiave, che danno maggiore flessibilità al
design di API&lt;/li&gt;
      &lt;li&gt;Module#prepend, un nuovo modo per estendere una classe&lt;/li&gt;
      &lt;li&gt;L&#39;espressione letterale %i, che può essere usata per creare
facilmente un array di simboli&lt;/li&gt;
      &lt;li&gt;__dir__, che ritorna il nome della directory che contiene il
file che eseguito correntemente&lt;/li&gt;
      &lt;li&gt;L&#39;encoding UTF-8 è ora il default, quindi è ora possibile omettere
i &quot;commenti magici&quot; per configurare l&#39;encoding di un file
sorgente&lt;/li&gt;
    &lt;/ul&gt;
  &lt;/li&gt;
  &lt;li&gt;Librerie incluse
    &lt;ul&gt;
      &lt;li&gt;Enumerable#lazy e Enumerator::Lazy, per creare (anche infiniti) lazy
stream&lt;/li&gt;
      &lt;li&gt;Enumerator#size e Range#size, per ottenere una lazy size evaluation&lt;/li&gt;
      &lt;li&gt;#to_h, una nuova convenzione per la conversione a Hash&lt;/li&gt;
      &lt;li&gt;Onigmo, un nuovo motore per le espressioni regolari (un fork di
Oniguruma)&lt;/li&gt;
      &lt;li&gt;API per la gestione asincrona delle eccezioni&lt;/li&gt;
    &lt;/ul&gt;
  &lt;/li&gt;
  &lt;li&gt;Supporto per il debug
    &lt;ul&gt;
      &lt;li&gt;Supporto di DTrace, che permette la diagnosi a runtime in produzione&lt;/li&gt;
      &lt;li&gt;TracePoint, un&#39;api per la tracciabilità migliorata&lt;/li&gt;
    &lt;/ul&gt;
  &lt;/li&gt;
  &lt;li&gt;Miglioramenti di prestazioni
    &lt;ul&gt;
      &lt;li&gt;Ottimizzazione del Garbage Collector tramite bitmap marking&lt;/li&gt;
      &lt;li&gt;Ottimizzazione di Kernel#require che rende molto veloce lo startup
di Rails&lt;/li&gt;
      &lt;li&gt;Ottimizzazione della VM, per esempio sul dispatch dei metodi&lt;/li&gt;
      &lt;li&gt;Ottimizzazione delle operazioni con Float&lt;/li&gt;
    &lt;/ul&gt;
  &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;In aggiunta, sebbene sia una funzionalità sperimentale, la versione
2.0.0 include i Raffinamenti (Refinements), che aggiungono un nuovo
concetto alla modularità di Ruby.&lt;/p&gt;

&lt;h3&gt;Compatibilità&lt;/h3&gt;

&lt;p&gt;La versione 2.0.0 è stata progettata affinchè sia compatibile con la
versione 1.9. Sarà molto più facile migrare dalla 1.9 alla 2.0 di quanto
è stato migrare dalla versione 1.8 a 1.9. (Alcune incompatibilità degne
di nota sono descritte di seguito.)&lt;/p&gt;

&lt;p&gt;Infatti, grazie alla dedizione e al lavoro di terzi, alcune popolari
applicazioni quali Rails e tDiary sembrano funzionare già con la release
candidate di Ruby 2.0.0.&lt;/p&gt;

&lt;h3&gt;Documentazione&lt;/h3&gt;

&lt;p&gt;Abbiamo inoltre migliorato la documentazione, cosa che è stata richiesta
da molti utenti di Ruby. Abbiamo aggiunto tantissimo codice RDoc per
moduli e metodi. La versione 2.0.0 sarà documentata al 75%, mentre la
versione 1.9.3 era documentata circa al 60%. Inoltre, abbiamo anche
aggiunto una descrizione della sintassi di Ruby, come puoi vedere
eseguendo:&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;sh&quot;&gt;ri ruby:syntax
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;h3&gt;Stabilità&lt;/h3&gt;

&lt;p&gt;Nota che al contrario della versione 1.9.0, la versione 2.0.0 è una
versione stabile, sebbene l&#39;ultimo numero sia uno 0. Tutti gli autori
di librerie sono fortemente invitati a supportare la versione 2.0.0.
Come menzionato in precedenza, la migrazione da 1.9 a 2.0 sarà
comparativamente facile.&lt;/p&gt;

&lt;p&gt;Ruby 2.0.0 è pronto per essere utilizzato in produzione, e migliorerà
assolutamente il tuo modo di programmare in Ruby.&lt;/p&gt;

&lt;h2&gt;Note&lt;/h2&gt;

&lt;h3&gt;Articoli introduttivi&lt;/h3&gt;

&lt;p&gt;Questi sono alcuni articoli introduttivi scritti da terze parti sulle
nuove funzionalità di Ruby 2.0.0:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;http://blog.marc-andre.ca/2013/02/23/ruby-2-by-example&quot;&gt;&amp;lt;URL:http://blog.marc-andre.ca/2013/02/23/ruby-2-by-example&amp;gt;&lt;/a&gt;
(completo, raccomandato)&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://speakerdeck.com/shyouhei/whats-new-in-ruby-2-dot-0&quot;&gt;&amp;lt;URL:https://speakerdeck.com/shyouhei/whats-new-in-ruby-2-dot-0&amp;gt;&lt;/a&gt;
(completo, raccomandato)&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://el.jibun.atmarkit.co.jp/rails/2012/11/ruby-20-8256.html&quot;&gt;&amp;lt;URL:http://el.jibun.atmarkit.co.jp/rails/2012/11/ruby-20-8256.html&amp;gt;&lt;/a&gt;
(breve, in Giapponese)&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://speakerdeck.com/nagachika/rubyist-enumeratorlazy&quot;&gt;&amp;lt;URL:https://speakerdeck.com/nagachika/rubyist-enumeratorlazy&amp;gt;&lt;/a&gt;
(solo su Enumerator::Lazy, in Giapponese)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I seguenti articoli sono inoltre utili, ma non aggiornati in materia di
Raffinamenti:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;http://rubysource.com/a-look-at-ruby-2-0/&quot;&gt;&amp;lt;URL:http://rubysource.com/a-look-at-ruby-2-0/&amp;gt;&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://speakerdeck.com/a_matsuda/ruby-2-dot-0-on-rails&quot;&gt;&amp;lt;URL:https://speakerdeck.com/a_matsuda/ruby-2-dot-0-on-rails&amp;gt;&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://globaldev.co.uk/2012/11/ruby-2-0-0-preview-features/&quot;&gt;&amp;lt;URL:http://globaldev.co.uk/2012/11/ruby-2-0-0-preview-features/&amp;gt;&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://www.infoq.com/news/2012/11/ruby-20-preview1&quot;&gt;&amp;lt;URL:http://www.infoq.com/news/2012/11/ruby-20-preview1&amp;gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Inoltre, la recente edizione di &quot;Rubyist Magazine&quot; include alcuni
articoli che sono scritti dagli stessi autori delle nuove funzionalità,
per introdurre alcune nuove funzionalità rilasciate con Ruby 2.0.0.&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;http://jp.rubyist.net/magazine/?0041-200Special&quot;&gt;&amp;lt;URL:http://jp.rubyist.net/magazine/?0041-200Special&amp;gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Sebbene siano scritti in Giapponese, delle traduzioni in inglese saranno
disponibili in futuro.&lt;/p&gt;

&lt;h3&gt;Incompatibilità&lt;/h3&gt;

&lt;p&gt;Ci sono cinque incompatibilità degne di nota di cui siamo a conoscenza:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;L&#39;encoding di default per gli script Ruby è ora UTF-8 [#6679].
Alcune persone ci hanno notificato che questo ha impatto su programmi
esistenti; per esempio alcuni programmi di benchark sembrano diventare
più lenti [ruby-dev:46547].&lt;/li&gt;
  &lt;li&gt;Iconv è stato rimosso, dal momento che era già stato deprecato quando
M17N è stato introdotto in Ruby 1.9. Utilizza String#encode, ecc. al
suo posto.&lt;/li&gt;
  &lt;li&gt;Rottura di ABI (Application Binary Interface) [ruby-core:48984].
Normalmente, gli utenti dovrebbero solamente reinstallare le
estensioni. Ricordati di NON COPIARE file .so o .bundle dalla versione
1.9.&lt;/li&gt;
  &lt;li&gt;#lines, #chars, #codepoints, #bytes ora ritornano un Array invece di
un Enumerator [#6670]. Questo cambiamento permette di evitare il
comune idioma &quot;lines.to_a&quot;. Per ritornare un Enumerator, utilizza
#each_line, ecc.&lt;/li&gt;
  &lt;li&gt;Object#inspect ritorna sempre una stringa quale
#&amp;lt;ClassName:0x…&amp;gt; invece di delegare a #to_s. [#2152]&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Ci sono inoltre altre incompatibilità minori. [ruby-core:49119]&lt;/p&gt;

&lt;h3&gt;Stato dei Raffinamenti&lt;/h3&gt;

&lt;p&gt;La versione 2.0.0 includerà i raffinamenti (refinements) come una
&quot;funzionalità sperimentale&quot;, siccome non siamo ancora tutti d&#39;accordo
su alcuni dettagli riguardanti le specifiche. Il comportamento di questa
funzionalità potrà cambiare in future versioni di Ruby. Malgrado ciò,
vorremmo che incominciassi ad utilizzare questa funzionalità e che ci
facessi pervenire le tue impressioni. Il tuo feedback aiuterà a forgiare
questa interessante funzionalità.&lt;/p&gt;

&lt;h2&gt;Ringraziamenti&lt;/h2&gt;

&lt;p&gt;Moltissime persone hanno contribuito a Ruby 2.0.0.&lt;/p&gt;

&lt;p&gt;Anche una lista incompleta con solo alcune parti dei contributi è troppo
lunga per essere inserita in questo annuncio, quindi, ecco qui un link
alla pagina che contiene i ringraziamenti speciali:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;https://bugs.ruby-lang.org/projects/ruby/wiki/200SpecialThanks&quot;&gt;&amp;lt;URL:https://bugs.ruby-lang.org/projects/ruby/wiki/200SpecialThanks&amp;gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Grazie a tutti!&lt;/p&gt;

</description>
      <pubDate>Sun, 03 Mar 2013 15:10:16 +0000</pubDate>
      <guid>http://www.ruby-lang.org/it/news/2013/03/03/ruby-2-0-0-p0-is-released/</guid>
      <link>http://www.ruby-lang.org/it/news/2013/03/03/ruby-2-0-0-p0-is-released/</link>
    </item>
    
    <item>
      <title>Rilasciato Ruby 1.9.3-p392</title>
      <description>&lt;p&gt;RD syntax error: line 8: …((&amp;lt;&quot;Vulnerabilità DoS di espansione di entità in REXML (XML bomb)&quot;|http:/ / www.ruby-lang.org/it/news/2013/03/03/rexml-dos-2013-02-22/&amp;gt;)) … ^&lt;/p&gt;

&lt;h2&gt;Download&lt;/h2&gt;

&lt;p&gt;Puoi scaricare questa versione da:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;a href=&quot;ftp://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.3-p392.tar.bz2&quot;&gt;&amp;lt;URL:ftp://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.3-p392.tar.bz2&amp;gt;&lt;/a&gt;&lt;/p&gt;

    &lt;pre&gt;&lt;code&gt;SIZE:   10024221 bytes
MD5:    a810d64e2255179d2f334eb61fb8519c
SHA256: 5a7334dfdf62966879bf539b8a9f0b889df6f3b3824fb52a9303c3c3d3a58391
&lt;/code&gt;&lt;/pre&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;a href=&quot;ftp://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.3-p392.tar.gz&quot;&gt;&amp;lt;URL:ftp://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.3-p392.tar.gz&amp;gt;&lt;/a&gt;&lt;/p&gt;

    &lt;pre&gt;&lt;code&gt;SIZE:   12557294 bytes
MD5:    f689a7b61379f83cbbed3c7077d83859
SHA256: 8861ddadb2cd30fb30e42122741130d12f6543c3d62d05906cd41076db70975f
&lt;/code&gt;&lt;/pre&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;a href=&quot;ftp://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.3-p392.zip&quot;&gt;&amp;lt;URL:ftp://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.3-p392.zip&amp;gt;&lt;/a&gt;&lt;/p&gt;

    &lt;pre&gt;&lt;code&gt;SIZE:   13863402 bytes
MD5:    212fb3bc41257b41d1f8bfe0725916b7
SHA256: f200ce4a63ce57bea64028a507350717c2a16bdbba6d9538bc69e9e7c2177c8b
&lt;/code&gt;&lt;/pre&gt;
  &lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;Commento alla versione&lt;/h2&gt;

&lt;p&gt;L&#39;autore della versione ringrazia i molti collaboratori, testatori, e
utenti che hanno contribuito all&#39;uscita di questa versione notificando
bachi.&lt;/p&gt;

</description>
      <pubDate>Sun, 03 Mar 2013 14:42:03 +0000</pubDate>
      <guid>http://www.ruby-lang.org/it/news/2013/03/03/ruby-1-9-3-p392-is-released/</guid>
      <link>http://www.ruby-lang.org/it/news/2013/03/03/ruby-1-9-3-p392-is-released/</link>
    </item>
    
    <item>
      <title>Vulnerabilità DoS di espansione di entità in REXML (XML bomb)</title>
      <description>&lt;p&gt;Un&#39;incontrollata espansione di entità può provocare una vulnerabilità
DoS in REXML. (L&#39;identificativo CVE sarà asseggnato successivamente)
Raccomandiamo fortemente di aggiornare Ruby.&lt;/p&gt;

&lt;h2&gt;Dettagli&lt;/h2&gt;

&lt;p&gt;Durante la lettura di nodi testuali da un documento XML, il parser RAXML
può essere utilizzato per allocare degli oggetti string estremamente
grandi che possono consumare tutta la memoria su una macchina, causando
un Denial of Service.&lt;/p&gt;

&lt;p&gt;Il codice impattato è del tipo:&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;ruby&quot;&gt;&lt;span class=&quot;n&quot;&gt;document&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;ss&quot;&gt;REXML&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;ss&quot;&gt;:Document&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;new&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;some_xml_doc&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;document&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;root&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;text&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Quando il metodo `text` viene chiamato, le entità XML vengono espanse.
Un utente malintenzionato può utilizzare un documento XML relativamente
piccolo che, quando le entità vengono risolte, consumerà grandi quantità
di memoria nel sistema.&lt;/p&gt;

&lt;p&gt;Da notare che questo attacco è simile, ma differente, all&#39;attacco
&quot;Billion Laughs&quot;, che è correlato al CVE-2013-1664 di Python.&lt;/p&gt;

&lt;p&gt;Tutti gli utenti che utilizzano una versione soggetta a questa
vulnerabilità dovrebbero procedere all&#39;aggiornamento o utilizzare uno
dei workaround immediatamente.&lt;/p&gt;

&lt;h2&gt;Workaround&lt;/h2&gt;

&lt;p&gt;Se non puoi aggiornare Ruby, utilizza questa patch manuale come
workaround:&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;ruby&quot;&gt;&lt;span class=&quot;k&quot;&gt;class&lt;/span&gt; &lt;span class=&quot;nc&quot;&gt;REXML&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;::&lt;/span&gt;&lt;span class=&quot;no&quot;&gt;Document&lt;/span&gt;
  &lt;span class=&quot;vc&quot;&gt;@@entity_expansion_text_limit&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;10_240&lt;/span&gt;

  &lt;span class=&quot;k&quot;&gt;def&lt;/span&gt; &lt;span class=&quot;nc&quot;&gt;self&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nf&quot;&gt;entity_expansion_text_limit&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;val&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
    &lt;span class=&quot;vc&quot;&gt;@@entity_expansion_text_limit&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;val&lt;/span&gt;
  &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;

  &lt;span class=&quot;k&quot;&gt;def&lt;/span&gt; &lt;span class=&quot;nc&quot;&gt;self&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nf&quot;&gt;entity_expansion_text_limit&lt;/span&gt;
    &lt;span class=&quot;vc&quot;&gt;@@entity_expansion_text_limit&lt;/span&gt;
  &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;

&lt;span class=&quot;k&quot;&gt;class&lt;/span&gt; &lt;span class=&quot;nc&quot;&gt;REXML&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;::&lt;/span&gt;&lt;span class=&quot;no&quot;&gt;Text&lt;/span&gt;
  &lt;span class=&quot;k&quot;&gt;def&lt;/span&gt; &lt;span class=&quot;nc&quot;&gt;self&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nf&quot;&gt;unnormalize&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;string&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;doctype&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kp&quot;&gt;nil&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;filter&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kp&quot;&gt;nil&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;illegal&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kp&quot;&gt;nil&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
    &lt;span class=&quot;n&quot;&gt;sum&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;0&lt;/span&gt;
    &lt;span class=&quot;n&quot;&gt;string&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;gsub&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt; &lt;span class=&quot;sr&quot;&gt;/\r\n?/&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;&lt;/span&gt;&lt;span class=&quot;se&quot;&gt;\n&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;gsub&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt; &lt;span class=&quot;no&quot;&gt;REFERENCE&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;
      &lt;span class=&quot;n&quot;&gt;s&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;self&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;expand&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;vg&quot;&gt;$&amp;amp;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;doctype&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;filter&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
      &lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;sum&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;s&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;bytesize&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;gt;&lt;/span&gt; &lt;span class=&quot;ss&quot;&gt;REXML&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;ss&quot;&gt;:Document&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;entity_expansion_text_limit&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;raise&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;entity expansion has grown too large&amp;quot;&lt;/span&gt;
      &lt;span class=&quot;k&quot;&gt;else&lt;/span&gt;
        &lt;span class=&quot;n&quot;&gt;sum&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;s&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;bytesize&lt;/span&gt;
      &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
      &lt;span class=&quot;n&quot;&gt;s&lt;/span&gt;
    &lt;span class=&quot;p&quot;&gt;}&lt;/span&gt;
  &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;

  &lt;span class=&quot;k&quot;&gt;def&lt;/span&gt; &lt;span class=&quot;nc&quot;&gt;self&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nf&quot;&gt;expand&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;ref&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;doctype&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;filter&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;ref&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;]&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;==&lt;/span&gt; &lt;span class=&quot;sc&quot;&gt;?#&lt;/span&gt;
      &lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;ref&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;2&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;]&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;==&lt;/span&gt; &lt;span class=&quot;sc&quot;&gt;?x&lt;/span&gt;
        &lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;ref&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;3&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;].&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;to_i&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;16&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;].&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;pack&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&amp;#39;U*&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
      &lt;span class=&quot;k&quot;&gt;else&lt;/span&gt;
        &lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;ref&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;2&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;].&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;to_i&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;].&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;pack&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&amp;#39;U*&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
      &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;elsif&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;ref&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;==&lt;/span&gt; &lt;span class=&quot;s1&quot;&gt;&amp;#39;&amp;amp;amp;&amp;#39;&lt;/span&gt;
      &lt;span class=&quot;s1&quot;&gt;&amp;#39;&amp;amp;&amp;#39;&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;elsif&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;filter&lt;/span&gt; &lt;span class=&quot;ow&quot;&gt;and&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;filter&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;include?&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;ref&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;]&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
      &lt;span class=&quot;n&quot;&gt;ref&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;elsif&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;doctype&lt;/span&gt;
      &lt;span class=&quot;n&quot;&gt;doctype&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;entity&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;ref&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;]&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;ow&quot;&gt;or&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;ref&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;else&lt;/span&gt;
      &lt;span class=&quot;n&quot;&gt;entity_value&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;ss&quot;&gt;DocType&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;ss&quot;&gt;:DEFAULT_ENTITIES&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;ref&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;]&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;]&lt;/span&gt;
      &lt;span class=&quot;n&quot;&gt;entity_value&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;?&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;entity_value&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;value&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;ref&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
  &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Questa patch limiterà la grandezza della sostituzione delle entità a 10k
per nodo. REXML inoltre di default permette solamente 10000 sostituzioni
di entità per documento, quindi il massimo ammontare di testo che può
essere generato tramite sostituzione di entità sarà attorno ai 98MB.&lt;/p&gt;

&lt;h2&gt;Versioni soggette alla vulnerabilità&lt;/h2&gt;

&lt;ul&gt;
  &lt;li&gt;Tutte le versioni di Ruby 1.9 precedenti a 1.9.3 patchlevel 392&lt;/li&gt;
  &lt;li&gt;Tutte le versioni di Ruby 2.0 precedenti a 2.0.0 patchlevel 0&lt;/li&gt;
  &lt;li&gt;Tutte le versioni precedenti alla trunk revision 39384&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;Crediti&lt;/h2&gt;

&lt;p&gt;Grazie a Ben Murphy per averci notificato il problema.&lt;/p&gt;

&lt;h2&gt;Cronologia&lt;/h2&gt;

&lt;ul&gt;
  &lt;li&gt;Originariamente pubblicato il giorno 2013-02-22 alle ore 12:00:00
(UTC)&lt;/li&gt;
&lt;/ul&gt;

</description>
      <pubDate>Sun, 03 Mar 2013 14:34:58 +0000</pubDate>
      <guid>http://www.ruby-lang.org/it/news/2013/03/03/rexml-dos-2013-02-22/</guid>
      <link>http://www.ruby-lang.org/it/news/2013/03/03/rexml-dos-2013-02-22/</link>
    </item>
    
    <item>
      <title>Vulnerabilità  di Denial of Service e creazione insicura di oggetti in JSON (CVE-2013-0269)</title>
      <description>&lt;p&gt;&amp;amp;Egrave; stata rilevata una vulnerabilità di denial of service e
creazione insicura di oggetti nella versione di json inclusa in Ruby.
L&#39;identificativo CVE &quot;CVE-2013-0269&quot; è stato assegnato a questa
vulnerabilità. Raccomandiamo fortemente di aggiornare Ruby.&lt;/p&gt;

&lt;h2&gt;Dettagli&lt;/h2&gt;

&lt;p&gt;Durante il parsing di alcuni documenti JSON, la gemma JSON (inclusa in
Ruby) può essere utilizzata per creare dei simboli Ruby su un sistema.
Dal momento che i simboli in ruby non sono gestiti tramite garbage
collection, ciò può essere usato per provocare un attacco di Denial of
Service.&lt;/p&gt;

&lt;p&gt;La stessa tecnica può essere usata per creare oggetti in un sistema, in
modo che si comportino come oggetti interni. Tali oggetti possono essere
utilizzati per aggirare alcuni meccanismi di sicurezza, e come base per
attacchi di tipo SQL injection in Ruby on Rails.&lt;/p&gt;

&lt;p&gt;Il codice impattato è del tipo:&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;ruby&quot;&gt;&lt;span class=&quot;no&quot;&gt;JSON&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;parse&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;user_input&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Dove la variabile `user_input` contiene un documento JSON come
questo:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;{&quot;json_class&quot;:&quot;foo&quot;}
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;La gemma JSON proverà a cercare una costante chiamata &quot;foo&quot;. La
ricerca di questa costante creerà un simbolo.&lt;/p&gt;

&lt;p&gt;In JSON versione 1.7.x, oggetti con attributi arbitrari possono essere
creati utilizzando documenti JSON come questo:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;{&quot;json_class&quot;:&quot;JSON::GenericObject&quot;,&quot;foo&quot;:&quot;bar&quot;}
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Questo documento creerà un&#39;istanza di JSON::GenericObject, con
l&#39;attributo &quot;foo&quot; con il valore &quot;bar&quot;. Istanziare questi oggetti
risulterà in una creazione di simboli arbitrari, e in alcuni casi
potrebbe essere usata per aggirare misure di sicurezza.&lt;/p&gt;

&lt;p&gt;NOTA BENE: questo comportamento &lt;strong&gt;non cambia&lt;/strong&gt; quando viene usato
`JSON.load`. `JSON.load` non dovrebbe &lt;strong&gt;mai&lt;/strong&gt; essere usato per
processare input provenienti da sorgenti sconosciute. Se devi processare
del codice JSON proveniente da sorgenti sconosciute, usa sempre
`JSON.parse`.&lt;/p&gt;

&lt;p&gt;Tutti gli utenti che utilizzano una versione di Ruby soggetta a questa
vulnerabilità dovrebbero o aggiornare Ruby o la gemma JSON
immediatamente, oppure utilizzare uno dei workaround.&lt;/p&gt;

&lt;h2&gt;Workarounds&lt;/h2&gt;

&lt;p&gt;Per utenti che non possono aggiornare Ruby o la gemma JSON, cambiate il
codice da questo:&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;ruby&quot;&gt;&lt;span class=&quot;no&quot;&gt;JSON&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;parse&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;json&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;A questo:&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;ruby&quot;&gt;&lt;span class=&quot;no&quot;&gt;JSON&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;parse&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;json&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;ss&quot;&gt;:create_additions&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&amp;gt;&lt;/span&gt; &lt;span class=&quot;kp&quot;&gt;false&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Se non puoi cambiare l&#39;utilizzo di `JSON.parse` (per esempio se
utilizzi una gemma che dipende da `JSON.parse` come multi_json),
applica manualmente questa patch:&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;ruby&quot;&gt;&lt;span class=&quot;k&quot;&gt;module&lt;/span&gt; &lt;span class=&quot;nn&quot;&gt;JSON&lt;/span&gt;
  &lt;span class=&quot;k&quot;&gt;class&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;lt;&amp;lt;&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;self&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;alias&lt;/span&gt; &lt;span class=&quot;ss&quot;&gt;:old_parse&lt;/span&gt; &lt;span class=&quot;ss&quot;&gt;:parse&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;def&lt;/span&gt; &lt;span class=&quot;nf&quot;&gt;parse&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;json&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;args&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{})&lt;/span&gt;
      &lt;span class=&quot;n&quot;&gt;args&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;ss&quot;&gt;:create_additions&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;]&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;kp&quot;&gt;false&lt;/span&gt;
      &lt;span class=&quot;n&quot;&gt;old_parse&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;json&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;args&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
  &lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;h2&gt;Versioni soggette alla vulnerabilità&lt;/h2&gt;

&lt;ul&gt;
  &lt;li&gt;Tutte le versioni di Ruby 1.9 precedenti a 1.9.3 patchlevel 392&lt;/li&gt;
  &lt;li&gt;Tutte le versioni di Ruby 2.0 precedenti a 2.0.0 patchlevel 0&lt;/li&gt;
  &lt;li&gt;Tutte le versioni precedenti alla trunk revision 39208&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;Crediti&lt;/h2&gt;

&lt;p&gt;Un ringraziamento enorme va alle seguenti persone, per averci notificato
in maniera responsabile il problema, e per aver lavorato con il team di
Rails per correggerlo:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;Thomas Hollstegge of Zweitag (www.zweitag.de)&lt;/li&gt;
  &lt;li&gt;Ben Murphy&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;Cronologia&lt;/h2&gt;

&lt;ul&gt;
  &lt;li&gt;Originariamente pubblicato il giorno 2013-02-22 alle ore 12:00:00
(UTC)&lt;/li&gt;
&lt;/ul&gt;

</description>
      <pubDate>Sun, 03 Mar 2013 14:17:45 +0000</pubDate>
      <guid>http://www.ruby-lang.org/it/news/2013/03/03/json-dos-cve-2013-0269/</guid>
      <link>http://www.ruby-lang.org/it/news/2013/03/03/json-dos-cve-2013-0269/</link>
    </item>
    
    <item>
      <title>"Call for Papers" aperto per la Barcelona Ruby Conference</title>
      <description>&lt;p&gt;La &lt;strong&gt;&lt;a href=&quot;http://baruco.org&quot;&gt;Barcelona Ruby Conference&lt;/a&gt;&lt;/strong&gt; è una conferenza che ha sede nel
cuore della &lt;strong&gt;Catalogna, in Spagna&lt;/strong&gt; il 14 e il 15 settembre. Ci saranno
&lt;a href=&quot;http://baruco.org/speakers&quot;&gt;ospiti di fama mondiale&lt;/a&gt; come &lt;strong&gt;Aaron Patterson&lt;/strong&gt; (Rails e Ruby
Core), &lt;strong&gt;David Chelimsky&lt;/strong&gt; (autore de &lt;em&gt;The RSpec book&lt;/em&gt;, RSpec core
member), &lt;strong&gt;Charles Nutter&lt;/strong&gt; (sviluppatore di JRuby), &lt;strong&gt;Sandi Metz&lt;/strong&gt;
(autore di &lt;em&gt;Practical Object-Oriented Design in Ruby&lt;/em&gt;) o &lt;strong&gt;Yukihiro
Matz&lt;/strong&gt; (il creatore del linguaggio Ruby), tra gli altri.&lt;/p&gt;

&lt;p&gt;Il &lt;strong&gt;&lt;a href=&quot;http://baruco.org/call_for_papers&quot;&gt;call for papers&lt;/a&gt; è già aperto&lt;/strong&gt; e sono ammesse iscrizioni fino
al 10 di marzo - non perdere la possibilità di essere in questa lista!&lt;/p&gt;

&lt;p&gt;Abbiamo un totale di &lt;strong&gt;4 posti aperti&lt;/strong&gt;, e ciascuno dei &lt;strong&gt;4 relatori
selezionati&lt;/strong&gt; riceverà un &lt;strong&gt;ticket gratuito&lt;/strong&gt; per la conferenza, così
come il &lt;strong&gt;soggiorno pagato&lt;/strong&gt;. Puoi dare un&#39;occhiata alle condizioni del
Call for Papers e &lt;strong&gt;mandare la tua proposta attraverso &lt;a href=&quot;http://baruco.org/call_for_papers&quot;&gt;il sito
ufficiale&lt;/a&gt;&lt;/strong&gt;.&lt;/p&gt;

</description>
      <pubDate>Sun, 03 Mar 2013 14:00:51 +0000</pubDate>
      <guid>http://www.ruby-lang.org/it/news/2013/03/03/the-barcelona-ruby-conference-call-for-papers-is-open/</guid>
      <link>http://www.ruby-lang.org/it/news/2013/03/03/the-barcelona-ruby-conference-call-for-papers-is-open/</link>
    </item>
    
    <item>
      <title>Ruby Hero Awards 2013</title>
      <description>&lt;p&gt;I &lt;a href=&quot;http://rubyheroes.com&quot;&gt;Ruby Hero Awards&lt;/a&gt; accettano candidature, e abbiamo bisogno del tuo
aiuto per trovare persone nella nostra comunità che aiutano gli altri in
maniera incondizionata, e magari non ricevono tutta la riconoscenza che
si meritano. Per esempio qualcuno che ha contribuito ad un progetto open
source in Ruby nel corso dello scorso anno che ti è stato utile, o
magari un educatore, o magari qualcuno che ha aiutato ad organizzare
eventi inerenti a Ruby.&lt;/p&gt;

&lt;p&gt;Se hai un minuto, usalo per nominare qualcuno tramite il sito
&lt;a href=&quot;http://rubyheroes.com&quot;&gt;RubyHeroes.com&lt;/a&gt;, semplicemente inserendo lo username Github della
persona che vuoi nominare, e dandoci una ragione perchè secondo te
merita di vincere. Tra circa un mese, tutti i Ruby Hero degli anni
precedenti ci aiuteranno a decidere chi vincerà uno dei 6 premi che
saranno presentati agli &quot;eroi&quot; sul palco di Railsconf a fine Aprile.&lt;/p&gt;

</description>
      <pubDate>Sun, 03 Mar 2013 13:52:20 +0000</pubDate>
      <guid>http://www.ruby-lang.org/it/news/2013/03/03/the-2013-ruby-hero-awards/</guid>
      <link>http://www.ruby-lang.org/it/news/2013/03/03/the-2013-ruby-hero-awards/</link>
    </item>
    
    <item>
      <title>Rilasciato Ruby 2.0.0-rc2</title>
      <description>&lt;p&gt;Ruby 2.0.0-rc2 è stato rilasciato. Questa sarà l&#39;ultima release
candidate di Ruby 2.0.0.&lt;/p&gt;

&lt;p&gt;Provalo e notificaci in merito a qualsiasi problema.&lt;/p&gt;

&lt;h2&gt;Download&lt;/h2&gt;

&lt;ul&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;a href=&quot;ftp://ftp.ruby-lang.org/pub/ruby/2.0/ruby-2.0.0-rc2.tar.bz2&quot;&gt;&amp;lt;URL:ftp://ftp.ruby-lang.org/pub/ruby/2.0/ruby-2.0.0-rc2.tar.bz2&amp;gt;&lt;/a&gt;&lt;/p&gt;

    &lt;pre&gt;&lt;code&gt;SIZE:   10822239 bytes
MD5:    e92420131bd7994513e0bf09a3e2a19b
SHA256: d55f897bb04283c5fa80223d96d990fe8ecb598508dd59443b356cbba1f66145
&lt;/code&gt;&lt;/pre&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;a href=&quot;ftp://ftp.ruby-lang.org/pub/ruby/2.0/ruby-2.0.0-rc2.tar.gz&quot;&gt;&amp;lt;URL:ftp://ftp.ruby-lang.org/pub/ruby/2.0/ruby-2.0.0-rc2.tar.gz&amp;gt;&lt;/a&gt;&lt;/p&gt;

    &lt;pre&gt;&lt;code&gt;SIZE:   13616756 bytes
MD5:    9d5e6f26db7c8c3ddefc81fdb19bd41a
SHA256: 87072ab3e6d393d47f7402682364e4f24efe1c518969795cc01fcdeeb0e646f3
&lt;/code&gt;&lt;/pre&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;a href=&quot;ftp://ftp.ruby-lang.org/pub/ruby/2.0/ruby-2.0.0-rc2.zip&quot;&gt;&amp;lt;URL:ftp://ftp.ruby-lang.org/pub/ruby/2.0/ruby-2.0.0-rc2.zip&amp;gt;&lt;/a&gt;&lt;/p&gt;

    &lt;pre&gt;&lt;code&gt;SIZE:   15118480 bytes
MD5:    1a2d33f1c50e32ca1532f8dea4790d53
SHA256: c28e9baf3aa00b41b8823c16df436ae143e8a63e43e7a53302f23119e13d0ebf
&lt;/code&gt;&lt;/pre&gt;
  &lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;Nuove funzionalità della versione 2.0.0&lt;/h2&gt;

&lt;ul&gt;
  &lt;li&gt;Argomenti con parole chiave&lt;/li&gt;
  &lt;li&gt;Enumerable#lazy&lt;/li&gt;
  &lt;li&gt;Module#prepend&lt;/li&gt;
  &lt;li&gt;#to_h: Convenzione per convertire ad Hash&lt;/li&gt;
  &lt;li&gt;%i: un espressione letterale per un array di simboli&lt;/li&gt;
  &lt;li&gt;Aggiornato il motore delle espressioni regolari: Onigmo (un fork di
Oniguruma)&lt;/li&gt;
  &lt;li&gt;Introduzione di Enumerator#size e Range#size&lt;/li&gt;
  &lt;li&gt;Supporto DTrace&lt;/li&gt;
  &lt;li&gt;TracePoint&lt;/li&gt;
  &lt;li&gt;Ottimizzazione di require (specialmente su Windows)&lt;/li&gt;
  &lt;li&gt;Supporto NativeClient&lt;/li&gt;
  &lt;li&gt;Miglioramenti alla documentazione&lt;/li&gt;
  &lt;li&gt;Migliorata gestione degli interrupt asincroni&lt;/li&gt;
  &lt;li&gt;Tuning dei parametri di stack size a launch-time&lt;/li&gt;
  &lt;li&gt;Raffinamenti [sperimentale]&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;… e molti altri miglioramenti. Vedi le notizie per i dettagli.&lt;/p&gt;

&lt;p&gt;Qui ci sono alcuni articoli introduttivi scritti da terze parti:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;https://speakerdeck.com/a_matsuda/ruby-2-dot-0-on-rails&quot;&gt;&amp;lt;URL:https://speakerdeck.com/a_matsuda/ruby-2-dot-0-on-rails&amp;gt;&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://globaldev.co.uk/2012/11/ruby-2-0-0-preview-features/&quot;&gt;&amp;lt;URL:http://globaldev.co.uk/2012/11/ruby-2-0-0-preview-features/&amp;gt;&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://www.infoq.com/news/2012/11/ruby-20-preview1&quot;&gt;&amp;lt;URL:http://www.infoq.com/news/2012/11/ruby-20-preview1&amp;gt;&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://timelessrepo.com/refinements-in-ruby&quot;&gt;&amp;lt;URL:http://timelessrepo.com/refinements-in-ruby&amp;gt;&lt;/a&gt;
(Raffinamenti)&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://el.jibun.atmarkit.co.jp/rails/2012/11/ruby-20-8256.html&quot;&gt;&amp;lt;URL:http://el.jibun.atmarkit.co.jp/rails/2012/11/ruby-20-8256.html&amp;gt;&lt;/a&gt;
(in Giapponese)&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://speakerdeck.com/nagachika/rubyist-enumeratorlazy&quot;&gt;&amp;lt;URL:https://speakerdeck.com/nagachika/rubyist-enumeratorlazy&amp;gt;&lt;/a&gt;
(Enumerator::Lazy, in Giapponese)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;(Se vuoi fornirci altri articoli, li potremo citare o menzionare nel
prossimo annuncio)&lt;/p&gt;

&lt;h2&gt;Note&lt;/h2&gt;

&lt;h3&gt;Incompatibilità&lt;/h3&gt;

&lt;p&gt;Ci sono alcune incompatibilità degne di nota di cui siamo a conoscenza:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;L&#39;encoding di default per gli script Ruby è ora UTF-8
&lt;a href=&quot;https://bugs.ruby-lang.org/issues/6679&quot;&gt;[#6679]&lt;/a&gt;. Alcune persone riportano che questo può creare
qualche problema a programmi già esistenti, per esempio alcuni
programmi di benchmark potrebbero diventare più lenti
&lt;a href=&quot;http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-dev/46547&quot;&gt;[ruby-dev:46547]&lt;/a&gt;. Questa specifica potrebbe cambiare con la
versione ufficiale.&lt;/li&gt;
  &lt;li&gt;iconv è stato rimosso, dal momento che era già stato deprecato quando
M17N è stato introdotto in Ruby 1.9. Utilizza String#encode, ecc. al
suo posto.&lt;/li&gt;
  &lt;li&gt;Rottura di ABI (Application Binary Interface)
&lt;a href=&quot;http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-core/48984&quot;&gt;[ruby-core:48984]&lt;/a&gt;. Normalmente, gli utenti dovrebbero
solamente reinstallare le estensioni. Ricordati di NON COPIARE file
.so o .bundle dalla versione 1.9.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Altre incompatibilità minori. &lt;a href=&quot;http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-core/49119&quot;&gt;[ruby-core:49119]&lt;/a&gt; Se trovi altre
incompatibilità, per favore notificacele.&lt;/p&gt;

&lt;p&gt;Stiamo inoltre creando delle note per l&#39;aggiornamento, ma alcune parti
non sono più aggiornate.&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;https://bugs.ruby-lang.org/projects/ruby/wiki/200UpgradeNotesDraft&quot;&gt;&amp;lt;URL:https://bugs.ruby-lang.org/projects/ruby/wiki/200UpgradeNotesDraft&amp;gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;Stato dei Raffinamenti&lt;/h3&gt;

&lt;p&gt;La versione 2.0.0 includerà i raffinamenti (refinements) come una
&quot;funzionalità sperimentale&quot;, siccome non siamo ancora tutti d&#39;accordo
su alcuni dettagli riguardanti le specifiche. Il comportamento di questa
funzionalità potrà cambiare in future versioni di Ruby.&lt;/p&gt;

&lt;h3&gt;Ringraziamenti speciali&lt;/h3&gt;

&lt;p&gt;L&#39;autore ringrazia tutti coloro che hanno provato le versioni preview e
rc1!&lt;/p&gt;

&lt;p&gt;Grazie a tutti i collaboratori, che con il loro duro lavoro hanno
corretto molti bachi, e grazie a tutti le persone che hanno aiutato
l&#39;autore a preparare questa versione.&lt;/p&gt;

</description>
      <pubDate>Sun, 03 Mar 2013 13:45:00 +0000</pubDate>
      <guid>http://www.ruby-lang.org/it/news/2013/03/03/ruby-2-0-0-rc2-is-released/</guid>
      <link>http://www.ruby-lang.org/it/news/2013/03/03/ruby-2-0-0-rc2-is-released/</link>
    </item>
    
    <item>
      <title>Rilasciato Ruby 1.9.3-p385</title>
      <description>&lt;p&gt;Ruby 1.9.3-p385 è stato rilasciato.&lt;/p&gt;

&lt;p&gt;Questo rilascio include una correzione di sicurezza riguardante RDoc.
Vedi &lt;a href=&quot;http://www.ruby-lang.org/it/news/2013/03/03/xss-exploit-of-rdoc-documentation-generated-by-rdoc-cve-2013-0256/&quot;&gt;questa pagina&lt;/a&gt; per i dettagli.&lt;/p&gt;

&lt;p&gt;Inoltre, questo rilascio include anche alcune piccole correzioni di
bachi.&lt;/p&gt;

&lt;p&gt;Vedi i &lt;a href=&quot;https://bugs.ruby-lang.org/projects/ruby-193/issues?set_filter=1&amp;amp;status_id=5&quot;&gt;ticket&lt;/a&gt; e il &lt;a href=&quot;http://svn.ruby-lang.org/repos/ruby/tags/v1_9_3_385/ChangeLog&quot;&gt;ChangeLog&lt;/a&gt; per i dettagli.&lt;/p&gt;

&lt;h2&gt;Download&lt;/h2&gt;

&lt;p&gt;Puoi scaricare questa versione da:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;a href=&quot;ftp://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.3-p385.tar.bz2&quot;&gt;&amp;lt;URL:ftp://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.3-p385.tar.bz2&amp;gt;&lt;/a&gt;&lt;/p&gt;

    &lt;pre&gt;&lt;code&gt;SIZE:   10021486 bytes
MD5:    5ec9aff670f4912b0f6f0e11e855ef6c
SHA256: f991ee50414dc795696bad0fc5c7b0b94d93b9b38fed943326d20ce4e9dda42b
&lt;/code&gt;&lt;/pre&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;a href=&quot;ftp://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.3-p385.tar.gz&quot;&gt;&amp;lt;URL:ftp://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.3-p385.tar.gz&amp;gt;&lt;/a&gt;&lt;/p&gt;

    &lt;pre&gt;&lt;code&gt;SIZE:   12546003 bytes
MD5:    3e0d7f8512400c1a6732327728a56f1d
SHA256: 4b15df007f5935ec9696d427d8d6265b121d944d237a2342d5beeeba9b8309d0
&lt;/code&gt;&lt;/pre&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;a href=&quot;ftp://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.3-p385.zip&quot;&gt;&amp;lt;URL:ftp://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.3-p385.zip&amp;gt;&lt;/a&gt;&lt;/p&gt;

    &lt;pre&gt;&lt;code&gt;SIZE:   13862147 bytes
MD5:    044564fe519a2c8e278472c4272b3ff2
SHA256: 0cb389fcc1ac9fccf32f3db27497908b7365aa910b6dd1559389416e828addc5
&lt;/code&gt;&lt;/pre&gt;
  &lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;Commento alla versione&lt;/h2&gt;

&lt;p&gt;L&#39;autore della versione ringrazia i molti collaboratori, testatori, e
utenti che hanno contribuito all&#39;uscita di questa versione notificando
bachi.&lt;/p&gt;

&lt;p&gt;Buon Hacking!&lt;/p&gt;

</description>
      <pubDate>Sun, 03 Mar 2013 13:26:47 +0000</pubDate>
      <guid>http://www.ruby-lang.org/it/news/2013/03/03/ruby-1-9-3-p385-is-released/</guid>
      <link>http://www.ruby-lang.org/it/news/2013/03/03/ruby-1-9-3-p385-is-released/</link>
    </item>
    
    <item>
      <title>Vulnerabilità XSS della documentazione RDoc generata da rdoc (CVE-2013-0256)</title>
      <description>&lt;p&gt;La documentazione di RDoc generata dal rdoc incluso in Ruby è
vulnerabile ad attacchi XSS (cross-site scripting).&lt;/p&gt;

&lt;p&gt;Raccomandiamo a tutti gli utilizzatori di Ruby di aggiornare la propria
versione di Ruby alla nuova versione, che include una versione di RDoc
che corregge il problema.&lt;/p&gt;

&lt;p&gt;Se pubblichi documentazione RDoc generata tramite rdoc, ti raccomandiamo
di applicare una patch per la documentazione o di rigenerarla con la
nuova versione di RDoc.&lt;/p&gt;

&lt;h2&gt;Impatto&lt;/h2&gt;

&lt;p&gt;La documentazione di RDoc generata tramite rdoc (versioni da 2.3.0 a
3.12, e prerelease fino a rdoc 4.0.0.preview2.1) sono vulnerabili ad
attacchi XSS. La vulnerabilità può portare alla pubblicazione di cookie
a terze parti.&lt;/p&gt;

&lt;h2&gt;Details&lt;/h2&gt;

&lt;p&gt;La vulnerabilità è in darkfish.js, che è copiato dalla directory dove
RDoc è installato, alla directory dove viene generata la documentazione&lt;/p&gt;

&lt;p&gt;RDoc è uno strumento per la generazione di documentazione statica.
Applicare una patch alla libreria è insufficiente per correggere questa
vulnerabilità. Coloro che pubblicano documentazione devono applicare la
seguente patch.&lt;/p&gt;

&lt;h2&gt;Soluzione&lt;/h2&gt;

&lt;p&gt;Applica la patch seguente alla documentazione rdoc. Se applicata
ignorando gli spazi, la patch correggerà tutte le versioni interessate
dalla vulnerabilità:&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;diff&quot;&gt;&lt;span class=&quot;gh&quot;&gt;diff --git darkfish.js darkfish.js&lt;/span&gt;
&lt;span class=&quot;gh&quot;&gt;index 4be722f..f26fd45 100644&lt;/span&gt;
&lt;span class=&quot;gd&quot;&gt;--- darkfish.js&lt;/span&gt;
&lt;span class=&quot;gi&quot;&gt;+++ darkfish.js&lt;/span&gt;
&lt;span class=&quot;gu&quot;&gt;@@ -109,13 +109,15 @@ function hookSearch() {&lt;/span&gt;
 function highlightTarget( anchor ) {
   console.debug( &amp;quot;Highlighting target &amp;#39;%s&amp;#39;.&amp;quot;, anchor );

&lt;span class=&quot;gd&quot;&gt;-  $(&amp;quot;a[name=&amp;quot; + anchor + &amp;quot;]&amp;quot;).each( function() {&lt;/span&gt;
&lt;span class=&quot;gd&quot;&gt;-    if ( !$(this).parent().parent().hasClass(&amp;#39;target-section&amp;#39;) ) {&lt;/span&gt;
&lt;span class=&quot;gd&quot;&gt;-      console.debug( &amp;quot;Wrapping the target-section&amp;quot; );&lt;/span&gt;
&lt;span class=&quot;gd&quot;&gt;-      $(&amp;#39;div.method-detail&amp;#39;).unwrap( &amp;#39;div.target-section&amp;#39; );&lt;/span&gt;
&lt;span class=&quot;gd&quot;&gt;-      $(this).parent().wrap( &amp;#39;&amp;lt;div class=&amp;quot;target-section&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&amp;#39; );&lt;/span&gt;
&lt;span class=&quot;gd&quot;&gt;-    } else {&lt;/span&gt;
&lt;span class=&quot;gd&quot;&gt;-      console.debug( &amp;quot;Already wrapped.&amp;quot; );&lt;/span&gt;
&lt;span class=&quot;gi&quot;&gt;+  $(&amp;quot;a[name]&amp;quot;).each( function() {&lt;/span&gt;
&lt;span class=&quot;gi&quot;&gt;+    if ( $(this).attr(&amp;quot;name&amp;quot;) == anchor ) {&lt;/span&gt;
&lt;span class=&quot;gi&quot;&gt;+      if ( !$(this).parent().parent().hasClass(&amp;#39;target-section&amp;#39;) ) {&lt;/span&gt;
&lt;span class=&quot;gi&quot;&gt;+        console.debug( &amp;quot;Wrapping the target-section&amp;quot; );&lt;/span&gt;
&lt;span class=&quot;gi&quot;&gt;+        $(&amp;#39;div.method-detail&amp;#39;).unwrap( &amp;#39;div.target-section&amp;#39; );&lt;/span&gt;
&lt;span class=&quot;gi&quot;&gt;+        $(this).parent().wrap( &amp;#39;&amp;lt;div class=&amp;quot;target-section&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&amp;#39; );&lt;/span&gt;
&lt;span class=&quot;gi&quot;&gt;+      } else {&lt;/span&gt;
&lt;span class=&quot;gi&quot;&gt;+        console.debug( &amp;quot;Already wrapped.&amp;quot; );&lt;/span&gt;
&lt;span class=&quot;gi&quot;&gt;+      }&lt;/span&gt;
     }
   });
 };
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Inoltre, se usi Ruby 1.9, ti raccomandiamo di aggiornare a &lt;a href=&quot;http://www.ruby-lang.org/it/news/2013/03/03/ruby-1-9-3-p385-is-released/&quot;&gt;ruby-1.9.3
patchlevel 385&lt;/a&gt;. Se stai usando Ruby 2.0.0 rc1 o una versione
precedente del trunk di Ruby, per favore aggiorna a Ruby 2.0.0 rc2
revisione 39102 o successiva. Puoi anche aggiornare lo stesso RDoc
utilizzando RubyGems alla versione 3.12.1 o 4.0.0.rc.2&lt;/p&gt;

&lt;h2&gt;Versioni soggette alla vulnerabilità&lt;/h2&gt;

&lt;ul&gt;
  &lt;li&gt;Tutte le versioni di Ruby 1.9 precedenti alla versione 1.9.3
patchlevel 383&lt;/li&gt;
  &lt;li&gt;Tutte le versione di Ruby 2.0 precedenti alla versione 2.0.0 rc2 o
precedenti alla revisione 39102&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;Crediti&lt;/h2&gt;

&lt;p&gt;Questa vulnerabilità è stata scoperta da Evgeny Ermakov
&amp;lt;corwmh@gmail.com&amp;gt;.&lt;/p&gt;

&lt;p&gt;A questa vulnerabilità è stato assegnato l&#39;identificativo CVE
&quot;CVE-2013-0256&quot;.&lt;/p&gt;

&lt;h2&gt;Cronologia&lt;/h2&gt;

&lt;ul&gt;
  &lt;li&gt;Pubblicato per la prima volta il giorno 2013-02-06 alle ore 13:30:00
(UTC)&lt;/li&gt;
&lt;/ul&gt;

</description>
      <pubDate>Sun, 03 Mar 2013 13:20:49 +0000</pubDate>
      <guid>http://www.ruby-lang.org/it/news/2013/03/03/xss-exploit-of-rdoc-documentation-generated-by-rdoc-cve-2013-0256/</guid>
      <link>http://www.ruby-lang.org/it/news/2013/03/03/xss-exploit-of-rdoc-documentation-generated-by-rdoc-cve-2013-0256/</link>
    </item>
    
    <item>
      <title>ConFoo con Ruby a Montreal</title>
      <description>&lt;p&gt;Se non hai mai sentito parlare di ConFoo, è una delle più importanti
conferenze per sviluppatori. Il team include 100 speaker da ogni parte
del mondo pronti a condividere le loro personali esperienze con molte
tecnologie web. La cosa più bella è che è totalmente gestita dalla
comunità ed è non-profit!&lt;/p&gt;

&lt;p&gt;Le presentazioni, di un&#39;ora ciascuna, riguardano Ruby, PHP, JavaScript,
Python, .NET, Java, e-Commerce, Sicurezza, Mobile, UX, e altri
argomenti. Il &lt;a href=&quot;http://confoo.ca/en/2013/schedule&quot;&gt;programma&lt;/a&gt; è impressionante.&lt;/p&gt;

&lt;p&gt;Ci saranno anche corsi interattivi e una hackaton nei due giorni prima
dell&#39;evento.&lt;/p&gt;

&lt;iframe width=&quot;420&quot; height=&quot;236&quot; src=&quot;http://www.youtube.com/embed/86VcHcaurRQ&quot; frameborder=&quot;0&quot; allowfullscreen=&quot;&quot;&gt;&lt;/iframe&gt;

&lt;p&gt;Questo evento è all&#39;Hilton Bonaventure Montreal, dal 27 febbraio al 1
marzo. &lt;a href=&quot;http://confoo.ca/en/register&quot;&gt;I biglietti sono disponibili online&lt;/a&gt;.&lt;/p&gt;

</description>
      <pubDate>Sun, 27 Jan 2013 19:23:21 +0000</pubDate>
      <guid>http://www.ruby-lang.org/it/news/2013/01/27/confoo-with-ruby-in-montreal/</guid>
      <link>http://www.ruby-lang.org/it/news/2013/01/27/confoo-with-ruby-in-montreal/</link>
    </item>
    
  </channel>
</rss>
