Ruby 2.0.0-rc2 veröffentlicht

Der zweite Release Candidate von Ruby 2 ist veröffentlicht worden. Dies ist der letzte Release Candidate vor Ruby 2 und wir bitten darum, alle Probleme, die möglicherweise auftreten, zu melden.

Neue Features in Ruby 2

  • Benannte Argumente
  • Enumerable#lazy
  • Module#prepend
  • #to_h: Konvention zur Konvertierung in ein Hash
  • %i Literal zur Erstellung eines Arrays von Symbolen
  • Aktualisierte Engine für reguläre Ausdrücke: Onigmo (ein Fork von Oniguruma)
  • Enumerator#size und Range#size
  • DTrace-Support
  • TracePoint
  • Optimierte Performance für require (insbesondere auf Windows)
  • Support für NativeClient
  • Verbesserung der Dokumentation
  • Erweitertes asynchrones Interrupt-Handling
  • Startzeit-Parameter zum Tuning der Stackgröße
  • Refinements [experimentell]

…und viel mehr. Siehe NEWS für Details.

Hier noch einige Artikel Dritter zum Thema:

(Wenn Sie freiwillig Artikel schreiben möchten, können wir diese in der nächsten Ankündigung zitieren oder referenzieren)

Weiteres

Inkompatibilitäten

Es gibt drei größere uns bekannte Inkompatibilitäten:

  • Das Standardencoding für Ruby-Skripte ist nun UTF-8 [#6679]. Einige Leute berichten, dass dies existierende Programme betrifft, beispielsweise werden einige Benchmark-Programme sehr langsam [ruby-dev:46547]. Die Spec hierzu kann sich zum offiziellen Release noch ändern.
  • iconv wurde entfernt. Es war bereits in Ruby 1.9 bei der Einführung von M17n als deprecated markiert worden und ist damit durch String#encode obsolet. Nutzen Sie dieses stattdessen.
  • Es gibt binäre Inkompatibilitäten (ABI breakage, [ruby-core:489894]. Wir denken, dass normale Nutzer einfach ihre Extension-Libraries neu installieren können/sollten. SIE DÜRFEN KEINE .so- ODER .bundle-DATEIEN VON RUBY 1.9 KOPIEREN.

Daneben gibt es noch einige kleinere Inkompatibilitäten [ruby-core:49119]. Melden Sie alle weiteren Inkompatibilitäten, die Ihnen auffallen.

FYI: Wir arbeiten an Upgrade-Hinweisen, aber einige Teile sind bereits veraltet: https://bugs.ruby-lang.org/projects/ruby/wiki/200UpgradeNotesDraft

Zum Status von Refinements

2.0.0 wird Refinements als experimentelles Feature enthalten, weil wir uns nicht auf eine detaillierte Spec einigen konnten. Das bedeutet, dass sich ihr Verhalten in zukünftigen Versionen von Ruby ändern kann.

Spezielle Danksagungen

Ich danke allen, die die Preview und ersten Release Candidate ausprobiert haben. Darüber hinaus bin all den hart arbeitenden Contributors meinen Dank schuldig. Ich bin wirklich all den Leuten, die mir bei dieser Veröffentlichung geholfen haben, sehr dankbar.

Download

ruby-2.0.0-rc2.tar.bz2

MD5-Summe

e92420131bd7994513e0bf09a3e2a19b

SHA256

d55f897bb04283c5fa80223d96d990fe8ecb598508dd59443b356cbba1f66145

Größe

10.822.239 Byte

ruby-2.0.0-rc2.tar.gz

MD5-Summe

9d5e6f26db7c8c3ddefc81fdb19bd41a

SHA256

87072ab3e6d393d47f7402682364e4f24efe1c518969795cc01fcdeeb0e646f3

Größe

13.616.756 Byte

ruby-2.0.0-rc2.zip

MD5-Summe

1a2d33f1c50e32ca1532f8dea4790d53

SHA256

c28e9baf3aa00b41b8823c16df436ae143e8a63e43e7a53302f23119e13d0ebf

Größe

15.118.480 Byte