Ruby 2.4.0-preview3 veröffentlicht

Gepostet von naruse am 9. Nov 2016

Wir freuen uns, die Veröffentlichung von Ruby 2.4.0-preview3 bekannt zu geben.

Ruby 2.4.0-preview3 ist die dritte Vorschau von Ruby 2.4.0. Diese Preview3 wird veröffentlicht, um Feedback von der Community zu erhalten. Zögern Sie nicht, Feedback zu senden, da Sie die Funktionen noch beeinflussen können.

Einführung von Hash-Tabellen-Verbesserungen (von Vladimir Makarov)

Verbesserung der internen Struktur von Hash-Tabellen (st_table) durch Einführung von Open Addressing und einem Inclusion-Order-Array. Diese Verbesserung wurde mit vielen Leuten besprochen, insbesondere mit Yura Sokolov.

Binding#irb: Starten einer REPL-Sitzung ähnlich wie bei binding.pry

Beim Debuggen verwenden Sie möglicherweise oft p, um den Wert von Variablen anzuzeigen. Mit pry können Sie binding.pry in Ihrer Anwendung verwenden, um eine REPL zu starten und beliebigen Ruby-Code auszuführen. r56624 führt binding.irb ein, das sich wie dies mit irb verhält.

Vereinheitlichung von Fixnum und Bignum zu Integer

Obwohl ISO/IEC 30170:2012 keine Details zur Integer-Klasse spezifiziert, hatte Ruby zwei sichtbare Integer-Klassen: Fixnum und Bignum. Ruby 2.4 vereinheitlicht diese zu Integer. Alle C-Erweiterungen, die die Fixnum- oder Bignum-Klasse berühren, müssen angepasst werden.

Siehe auch das Ticket und akr’s Folien.

String unterstützt Unicode-Groß-/Kleinschreibungsumwandlungen

String/Symbol#upcase/downcase/swapcase/capitalize(!) behandeln jetzt Unicode-Groß-/Kleinschreibungsumwandlungen anstelle von nur ASCII-Groß-/Kleinschreibungsumwandlungen.

Leistungsverbesserungen

Ruby 2.4 enthält auch die folgenden Leistungsverbesserungen, einschließlich Sprachänderungen

Array#max, Array#min

[x, y].max und [x, y].min sind optimiert, um unter bestimmten Bedingungen kein temporäres Array zu erstellen.

Regexp#match?

Hinzugefügt: Regexp#match?, das einen Regexp-Match ausführt, ohne ein Backreference-Objekt zu erstellen und $~ zu ändern, um die Objektzuweisung zu reduzieren.

Weitere Leistungsverbesserungen

Debugging

Thread#report_on_exception und Thread.report_on_exception

Ruby ignoriert Ausnahmen in Threads, es sei denn, ein anderer Thread wartet explizit auf sie. Mit report_on_exception = true können Sie feststellen, ob ein Thread aufgrund einer unbehandelten Ausnahme gestorben ist.

Senden Sie uns Feedback, was der Standard für report_on_exception sein sollte und über report-on-GC, das einen Bericht anzeigt, wenn ein Thread ohne Join vom Garbage Collector bereinigt wird.

Thread-Deadlock-Erkennung zeigt nun Threads mit ihrer Backtrace und Abhängigkeit an

Ruby verfügt über eine Deadlock-Erkennung für wartende Threads, aber der Bericht enthält nicht genügend Informationen für das Debugging. Die Deadlock-Erkennung von Ruby 2.4 zeigt Threads mit ihrer Backtrace und abhängigen Threads.

Probieren Sie Ruby 2.4.0-preview3 aus und genießen Sie die Programmierung damit, und senden Sie uns Feedback!

Weitere bemerkenswerte Änderungen seit 2.3

  • Unterstützt OpenSSL 1.1.0
  • ext/tk wurde aus der Standardbibliothek entfernt Feature #8539
  • XMLRPC wurde aus der Standardbibliothek entfernt Feature #12160

Weitere Details finden Sie in NEWS und ChangeLog.

Mit diesen Änderungen wurden seit Ruby 2.3.0 2470 Dateien geändert, 283051 Einfügungen (+), 64902 Löschungen (-)!

Herunterladen

  • https://cache.ruby-lang.org/pub/ruby/2.4/ruby-2.4.0-preview3.tar.bz2

    SIZE:   12615328 bytes
    SHA1:   fefe49f6a7d5b642936c324f3b05aaac827355db
    SHA256: 305a2b2c627990e54965393f6eb1c442eeddfa149128ccdd9f4334e2e00a2a52
    SHA512: 6602c65a7b1e3bc680acc48217108f4335e84fdd74a9cf06f2e2f9ad00a2fccacf9fa035a912bc9d5cc3f0c7a5e21475971dfac37b0364311ef3645f25c7ddf9
    
  • https://cache.ruby-lang.org/pub/ruby/2.4/ruby-2.4.0-preview3.tar.gz

    SIZE:   15758023 bytes
    SHA1:   f6a6ec9f7fedad0bf4efee2e42801cc963f60dca
    SHA256: c35fe752ccfabf69bf48e6aab5111c25a05938b428936f780638e2111934c9dd
    SHA512: 68556d5252b6813b4c8eeba32733e940207f80694b5c5d20e69bf01eb52929ed2466496b05a895a5ad4831d430695e17624eb35b728b2d4d7cf02df756ac48b4
    
  • https://cache.ruby-lang.org/pub/ruby/2.4/ruby-2.4.0-preview3.tar.xz

    SIZE:   9957596 bytes
    SHA1:   66592b1a52f985638d639e7c3dd6bdda4e0569d0
    SHA256: b14be2b5c80bff0d6894ae2b37afdb17a968413e70236ec860f3e2d670b4c317
    SHA512: 5be20f0b2609745790c2b22f2228e69a840f63c34a117a1f95fd5436af211f0a6db2758d513d3e095a2d97c53c80793579cb2a1e00e70cf72c487a88c4a40d33
    
  • https://cache.ruby-lang.org/pub/ruby/2.4/ruby-2.4.0-preview3.zip

    SIZE:   17579012 bytes
    SHA1:   15d08cff952da3844ae54887b7f74b12d47c9ee2
    SHA256: b95a8f67fb7d6e852db77c5660c8878c14d68eb72c5501dac164a7e640ecb06e
    SHA512: fa15e1b7ab0cab56c9a580e1b1e2fee250ee0b9c59546079675a1931a36e37131bd37d64033c75e05d8e9d9fcc33ce7850254d3acaca2136cf3bd08b070244f0
    

Release-Kommentar

Siehe auch den Release-Zeitplan und weitere Informationen

ReleaseEngineering24

Aktuelle Nachrichten

Ruby 4.0.0 veröffentlicht

Wir freuen uns, die Veröffentlichung von Ruby 4.0.0 bekannt zu geben. Ruby 4.0 führt „Ruby Box“ und „ZJIT“ ein und bringt viele Verbesserungen mit sich.

Veröffentlicht von naruse am 25. Dez 2025

Ein neuer Look für Rubys Dokumentation

Nach dem Redesign von ruby-lang.org gibt es weitere Neuigkeiten zur Feier des 30-jährigen Jubiläums von Ruby: docs.ruby-lang.org hat ein komplett neues Erscheinungsbild mit Aliki – dem neuen Standard-Theme von RDoc.

Veröffentlicht von Stan Lo am 23. Dez 2025

Neues Website-Erscheinungsbild

Wir freuen uns, ein umfassendes Redesign unserer Website bekannt zu geben. Das Design für dieses Update wurde von Taeko Akatsuka erstellt.

Veröffentlicht von Hiroshi SHIBATA am 22. Dez 2025

Ruby 4.0.0 preview3 veröffentlicht

Wir freuen uns, die Veröffentlichung von Ruby 4.0.0-preview3 bekannt zu geben. Ruby 4.0 führt Ruby::Box und „ZJIT“ ein und bringt viele Verbesserungen mit sich.

Veröffentlicht von naruse am 18. Dez 2025

Weitere Neuigkeiten...